Mamba系列论文,读起来费劲,一个方面是数学推导多,还有一个方面有些叙述的前后不一致,让人糊涂。
比如说,离散化SSM的矩阵表示,前面文章《Mamba学习(三):离散化SSM的矩阵计算》进行了描述,然而,在HiPPO论文中,关于离散化SSM的矩阵表示,还有其他几种形式。疑惑的是,为什么需要这些不同的形式,这些形式都有什么区别?
HiPPO论文中的ODE 离散化
HiPPO论文提到,HiPPO的离散化,可以采用如欧拉方法、双线性方法和零阶保持(ZOH)等方法。
《HiPPO: Recurrent Memory with Optimal Polynomial Projections》的具体描述:
我的两个疑惑:
1、这几种方法的结果是如何推导出来?
2、既然ZOH方法有解析解,为什么还需要欧拉方法、双线性方法等近似方法?
HiPPO ODE 离散化推导
好在,苏神在《重温被Mamba带火的SSM:HiPPO的一些遗留问题》一文中给出了ODE的离散化推导。
我只摘录LegT版本的推导,已经足够理解推导过程。其他更详细的内容,可以参考苏神的文章全文。
推导过程有了。那既然ZOH方法有解析解,为什么还需要欧拉方法、双线性方法等近似方法?
苏神也做了解释,主要是计算复杂度,公式9的这个形式,指数矩阵计算起来不够友好。“Mamba作者后面的作品包括 Mamba 都是用这个格式(公式9的格式),此时一般都要假设A为对角矩阵,因为对于矩阵A ,矩阵指数算起来并不友好”。