【AI学习】Mamba学习(三):离散化SSM的矩阵计算

SSM离散化表示

除了连续的输入之外,还会通常碰到离散的输入(如文本序列)。所以SSM需要离散化形式,就是下面公式2和3。
在这里插入图片描述

SSM离散化过程

但是好奇这个离散化过程是如何进行的?
一文通透想颠覆Transformer的Mamba:从SSM、HiPPO、S4到Mamba》文章提到过程:
那模型如何处理离散化数据呢?可以利用零阶保持技术(Zero-order hold technique)
在这里插入图片描述
1、首先,每次收到离散信号时,我们都会保留其值,直到收到新的离散信号,如此操作导致的结果就是创建了 SSM 可以使用的连续信号。
2、保持该值的时间由一个新的可学习参数表示,称为步长(siz)—— 在这里插入图片描述
,它代表输入的阶段性保持(resolution)。
3、有了连续的输入信号后,便可以生成连续的输出,并且仅根据输入的时间步长对值进行采样。
在这里插入图片描述

这些采样值就是我们的离散输出,且可以针对A、B按如下方式做零阶保持(做了零阶保持的在对应变量上面加了个横杠)
在这里插入图片描述
最终使我们能够从连续 SSM 转变为离散SSM。

离散化SSM表示的矩阵计算

看了很多文章,还是不明白,离散化SSM的矩阵A和B(上面带横杠)是如何计算得来的。
忽然灵机一动,大学课本中不知道是否有相关内容,翻出三十年前的课本,还真的有相关的内容,就是下面两页:
在这里插入图片描述
在这里插入图片描述
然后又找来了文章《MPC-连续状态空间方程到离散》,摘录相关内容如下:

连续状态方程:(从上面的公式(11-108)很容易得到下面的公式)
在这里插入图片描述
转变为离散方程:
在这里插入图片描述
在tk<=t<tk+1时候,根据上面的零阶保持技术(Zero-order hold technique),u(t)恒等于uk,所以B*uk就是一个常数矩阵,根据矩阵积分原理,可以提到积分后面:
在这里插入图片描述
tk+1-tk就是步长(siz)——在这里插入图片描述
,这样矩阵A(上带横线)就获得了。
计算离散的矩阵B:
在这里插入图片描述
这样矩阵B(带上横线)就也得到了。

推导完毕!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值