【长文阅读】MAMBA作者博士论文<MODELING SEQUENCES WITH STRUCTURED STATE SPACES>-Chapter1
Gu A. Modeling Sequences with Structured State Spaces[D]. Stanford University, 2023.
本文是MAMBA作者的博士毕业论文,为了理清楚MAMBA专门花时间拜读这篇长达330页的博士论文,由于知识水平有限,只能尽自己所能概述记录,并适当补充一些相关数学背景,欢迎探讨与批评指正。内容多,分章节更新以免凌乱,等更新完毕补充目录跳转链接。
Abstract
这篇文档的摘要介绍了在机器学习领域的显著进步,特别是在序列模型方面,这些模型对深度学习在各种科学应用中的成功至关重要。尽管目前的方法取得了成功,但它们在处理复杂的序列数据(如涉及长期依赖性的数据)时存在限制,例如需要大量的特定任务专业化、计算效率低下等问题。为了解决这些问题,论文介绍了一种使用状态空间模型的新方法。这些模型灵活、理论基础扎实、计算效率高,并且在多种数据类型和应用中表现出色。它们扩展了标准深度序列模型(如循环神经网络和卷积神经网络)的功能。论文还开发了适用于现代硬件的新型结构化状态空间,适合长序列处理和其他场景,如自回归推理。此外,它还提出了一种用于逐步建模连续信号的新数学框架,通过这种框架,可以为状态空间模型提供原理上的状态表示,并改善其处理长期依赖性的能力。这种新方法为机器学习提供了有效且多功能的工具,特别是在处理大规模的一般序列数据方面。
1.Introduction
1.1 Deep Sequence Models
首先定义了序列模型,一张图就把CNN 、RNN、Transformer以及本文的模型概括进去。
在本文中,将序列模型定义为参数化序列到序列的转换,用作深度学习模型的组件。 (上)序列模型通常围绕简单的参数化转换构建。定义的状态空间序列模型是一维序列上的简单线性映射。 (右)深度序列模型是一种围绕核心序列变换(例如卷积、注意力或 S4)构建的神经网络架构,并包含附加的位置神经网络组件,例如归一化层、线性层和残差连接。盒装架构块通常被重复组成深度神经网络。输入通常具有额外的通道或特征维度,并且是批量处理的。
深度学习模型用于序列数据的处理被描述为基于简单机制(如递归、卷积或注意力机制)的序列到序列的转换。这些基本元素被整合进标准的深度神经网络架构,形成了主要的深度序列模型家族:循环神经网络(RNNs)、卷积神经网络(CNNs)和Transformers。这些模型通过标准深度学习技术(如梯度下降的反向传播)实现了强大的参数化转换。
每种模型家族都在机器学习领域取得了巨大成功,例如RNNs在机器翻译中的应用、CNNs成为首个神经音频生成模型,以及Transformers在自然语言处理领域的革命性影响。然而,这些模型也有其固有的权衡。例如,
- RNNs是一种自然的、状态驱动的序列数据模型,它们在训练过程中较慢,并且存在优化困难(如“梯度消失问题”),限制了它们处理长序列的能力。
- CNNs擅长处理本地上下文和编码属性(如平移等变性),训练速度快,但在序列推理上成本较高,且存在上下文长度的固有限制。
- Transformers凭借处理长程依赖性和并行化的能力取得了巨大成功,但它们在序列长度上的处理呈二次方规模增长。
- 神经微分方程(NDEs),这是一种原理性的数学模型,理论上可以处理连续时间问题和长期依赖关系,但效率非常低。
这些权衡指出了深度序列模型面临的三个广泛挑战:
- 通用性能力:深度学习的一个广泛目标是开发可以广泛应用于各种问题的通用构建模块。序列模型为解决许多问题提供了一个通用框架,减少了专门化的需求,因为它们可以应用于任何可以被视为序列的设置。
- 计算效率:实际应用深度序列模型需要计算它们定义的函数(即参数化的序列到序列的映射),这可能在训练和推理时面临挑战。
- 长程依赖性:实际世界的序列数据可能需要对成千上万的时间步进行推理。除了处理长输入所需的计算问题外,还需要能够模拟这种长程依赖性中的复杂交互。
尽管为长程依赖性设计的解决方案,但在像Long Range Arena这样的挑战性基准测试中,这些解决方案仍然表现不佳。
1.2 State Space Sequence Models
本文介绍了一系列基于线性状态空间模型(SSM)的新的深度序列模型。将这个 SSM 定义为一个简单的序列模型,它通过隐式潜在状态 x ( t ) ∈ R N x(t) \in \mathbb{R}^{N} x(t)∈RN映射一维函数或序列 u ( t ) ∈ R ↦ y ( t ) ∈ R u(t) \in \mathbb{R} \mapsto y(t) \in \mathbb{R} u(t)∈R↦y(t)∈R
x ′ ( t ) = A x ( t ) + B u ( t ) y ( t ) = C x ( t ) + D u ( t ) \begin{aligned} x^{\prime}(t) & =\boldsymbol{A} x(t)+\boldsymbol{B} u(t) \\ y(t) & =\boldsymbol{C} x(t)+\boldsymbol{D} u(t) \end{aligned} x′(t)y(t)=Ax(t)+Bu(t)=Cx(t)+Du(t)
这些模型将一维函数或序列通过隐含的潜在状态映射到另一个序列,形成了一种简单的序列模型。SSMs在控制理论、计算神经科学、信号处理等领域都是基础性的科学模型,它们模拟了潜变量在状态空间中的演变,并且通常定义了这些动态的概率模型。
状态空间模型与如NDEs、RNNs和CNNs等其他模型家族有紧密关联,可以以多种形式表达,以获得通常需要专门模型的不同能力。SSMs具有以下特性:
- SSMs是连续的:它们本身是微分方程,可以模拟连续时间模型的独特应用,如模拟连续过程、处理缺失数据和适应不同的采样率。
- SSMs是递归的:它们可以被离散化成线性递归,用标准技术模拟推理时的状态驱动递归模型,每个时间步骤具有恒定的内存和计算量。
- SSMs是卷积的:它们是线性时不变系统,已知可以显式表示为连续卷积。此外,离散时间版本可以在训练期间使用离散卷积进行并行化,从而提高训练效率。
然而,SSMs的通用性也带来了一些权衡。简单的SSMs仍然面临其他挑战,如速度远慢于同等大小的RNNs和CNNs,以及难以记住长期依赖性,例如继承了RNNs的梯度消失问题。
为了解决这些挑战,引入了具有结构化状态空间(S4)的新算法和理论。这些算法通过在状态矩阵A上施加结构,以适应高效的算法。S4模型的第一个结构使用状态矩阵的对角线参数化,非常简单且足以表示几乎所有SSMs。然后,通过允许低秩修正项,可以表示一类特殊的SSMs。综合了多种技术思想,如生成函数、线性代数变换和结构化矩阵乘法的结果,开发了这些结构的算法,时间复杂度和空间复杂度均为O˜(N + L),这对于序列模型来说是非常紧凑的。
此外,SSMs在处理长期依赖性方面表现不佳,这是由于线性一阶常微分方程解决为指数函数,可能导致序列长度中梯度指数级缩放。为了解决这个问题,开发了一个称为HIPPO的数学框架,用于在线函数逼近(或记忆)。HIPPO产生的方法旨在通过维护其历史的压缩来增量记忆连续函数。这些方法实际上是SSMs的特定形式,尽管它们是完全独立地激发出来的。
相关文章:

【长文阅读】MAMBA作者博士论文<MODELING SEQUENCES WITH STRUCTURED STATE SPACES>-Chapter1
Gu A. Modeling Sequences with Structured State Spaces[D]. Stanford University, 2023. 本文是MAMBA作者的博士毕业论文,为了理清楚MAMBA专门花时间拜读这篇长达330页的博士论文,由于知识水平有限,只能尽自己所能概述记录,并适…...

Unity3D学习之UI系统——GUI
文章目录 1. 前言2. 工作原理和主要作用3. 基础控件3.1 重要参数及文本和按钮3.1.1 GUI 共同点3.1.2 文本控件3.1.3 按钮控件 3.2 多选框和单选框3.2.1 多选框3.2.2 单选框3.2.3 输入框3.2.4 拖动条 3.3 图片绘制和框3.3.1 图片3.3.2 框绘制 4 工具栏和选择网格4.1 工具栏4.2 选…...
用户ssh正确密码登陆均报错Permission denied, please try again.处理方法
我的一台虚拟机IP是:192.168.59.133任何服务器使用任何用户ssh均报错,甚至连自己都不能ssh自己。 不能使用任何工具连接上该服务器 使用ssh连接自己的127.0.0.1和localhost都权限拒绝错误 ssh报错如下 任何服务器ssh报错内容均一样:报错内…...

IO、NIO、IO多路复用
IO是什么? IO分为两类,它们之间是有区别的,而且有很大的区别;1. 文件系统的IO 也叫本地io,就是和磁盘或者外围存储设备进行读写操作,外围设备有USB、移动硬盘等等;2. 网络的IO 将数据发送给对方…...

探索FTP:原理、实践与安全优化
引言 在正式开始讲解之前,首先来了解一下文件存储的类型有哪些。 DAS、SAN和NAS是三种不同的存储架构,分别用于解决不同场景下的数据存储需求。 DAS (Direct Attached Storage 直接附加存储):DAS 是指将存储设备(如硬盘&#x…...

git中的语法和术语含义
目录 第一章、git常用术语1.1)文件状态1.2)git常用术语的含义 第二章、git文件状态解析2.1)从git init开始:Untracked(未跟踪)2.2)git add fileName后:Staged(已暂存&…...

java SECS管理系统 将逐步推出 SECS 客户端(Passive) 管理系统 SECS快速开发平台 springboot secs开发平台
SECS管理系统 这是一套SECS客户端(Passive),可以直接连接PLC设备,支持Modbus、三菱MC、欧姆龙Fine、OPC-UA、西门子S7设备等通信。 企业已经有了EAP软件,但是设备没有SECS通信功能,这时候可以使用这套框架,直接连接设备ÿ…...

使 a === 1 a === 2 a === 3 为 true 的几种“下毒“方法
前言 这算得上是近些年的前端网红题了,曾经对这种网红题非常抵触,认为非常没有意义。 看到了不少人有做分享,有各种各样的方案,有涉及到 JS 非常基础的知识点,也不得不感叹解题者的脑洞之大。 但是,拿来…...

Canny边缘检测 双阈值检测理解
问题引入 我们用一个实际例子来引入问题 import cv2 import numpy as npimgcv2.imread("test.png",cv2.IMREAD_GRAYSCALE) # 修改图像大小 show cv2.resize(img,(500,500))v1cv2.Canny(show,120,250) v2cv2.Canny(show,50,100)# 连接图像 res np.hstack((v1,v2)…...

自动化测试:5分钟了解Selenium以及如何提升自动化测试的效果
在快节奏的技术世界里,自动化测试已经成为确保 Web 应用程序质量和性能的重要手段。自动化测试不仅加快了测试过程,还提高了测试的重复性和准确性。Selenium,作为领先的自动化测试工具之一,为测试人员提供了强大的功能来模拟用户在…...

【MySQL】——关系数据库标准语言SQL(大纲)
🎃个人专栏: 🐬 算法设计与分析:算法设计与分析_IT闫的博客-CSDN博客 🐳Java基础:Java基础_IT闫的博客-CSDN博客 🐋c语言:c语言_IT闫的博客-CSDN博客 🐟MySQL:…...

力扣hot100 最长有效括号 动态规划
Problem: 32. 最长有效括号 文章目录 思路Code 思路 👨🏫 参考题解 Code ⏰ 时间复杂度: O ( n ) O(n) O(n) 🌎 空间复杂度: O ( n ) O(n) O(n) class Solution {public int longestValidParentheses(String s){int n s.length();…...
@RequestBody注解基础
RequestBody RequestBody注解一般与post方法使用。 一个请求中只能存在一个RequestBody注解。 RequestBody 用于接收前端传递给后端的json字符串中的数据。(处理json格式的数据) 语法格式: (RequestBody Map map) (RequestBody Object obje…...

前端基础面试题大全
一、Vue 文章目录 一、Vue1、vue 修改数据页面不重新渲染**数组/对象的响应式 ,vue 里面是怎么处理的?** 2、生命周期Vue 生命周期都有哪些?父子组件生命周期执行顺序 3、watch 和 computed 的区别4、组件通信(组件间传值…...

第一讲_HarmonyOS应用开发环境准备
HarmonyOS应用开发环境准备 1. 知识储备2. 环境搭建2.1 安装node.js2.2 配置node.js2.3 安装命令行工具2.4 安装DevEco Studio2.5 配置DevEco Studio 1. 知识储备 HarmonyOS提供了一套UI开发框架,即方舟开发框架(ArkUI框架)。方舟开发框架可…...
一、可行性研究报告模板(软件工程)
一、可行性研究报告 1.引言 1.1编写目的 1.2项目背景 1.3定义 1.4参考资料 2.可行性研究的前提 2.1要求 2.2目标 2.3条件、假定和限制 2.4可行性研究方法 2.5决定可行性的主要因素 3.对现有系统的分析 3.1处理流程…...

DBA技术栈MongoDB:简介
1.1 什么是MongoDB? MongoDB是一个可扩展、开源、表结构自由、用C语言编写且面向文档的数据库,旨在为Web应用程序提供高性能、高可用性且易扩展的数据存储解决方案。 MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当…...

贪心算法 ——硬币兑换、区间调度、
硬币兑换: from book:挑战程序设计竞赛 思路:优先使用大面额兑换即可 package mainimport "fmt"func main() {results : []int{}//记录每一种数额的张数A : 620B : A//备份cnts : 0 //记录至少需要多少张nums : []int{1, 5, 10, 5…...

【已解决】namespace “Ui“没有成员 xxx
先说笔者遇到的问题,我创建一个QWidget ui文件,然后编辑的七七八八后,想要用.h与.cpp调用其,编译通过,结果报了这个错误,本方法不是普适性,但是确实解决了这个鸟问题。 问题来源 搭建ui后&…...

Spring Bean 生命周期的执行流程?
一、问题解析 Spring 生命周期全过程大致分为五个阶段:创建前准备阶段、创建实例阶段、依赖注入阶段、容器缓存阶段和销毁实例阶段。 这张是 Spring Bean 生命周期完整流程图,其中对每个阶段的具体操作做了详细介绍: (把这张图按…...

UE5 学习系列(二)用户操作界面及介绍
这篇博客是 UE5 学习系列博客的第二篇,在第一篇的基础上展开这篇内容。博客参考的 B 站视频资料和第一篇的链接如下: 【Note】:如果你已经完成安装等操作,可以只执行第一篇博客中 2. 新建一个空白游戏项目 章节操作,重…...
线程与协程
1. 线程与协程 1.1. “函数调用级别”的切换、上下文切换 1. 函数调用级别的切换 “函数调用级别的切换”是指:像函数调用/返回一样轻量地完成任务切换。 举例说明: 当你在程序中写一个函数调用: funcA() 然后 funcA 执行完后返回&…...

什么是库存周转?如何用进销存系统提高库存周转率?
你可能听说过这样一句话: “利润不是赚出来的,是管出来的。” 尤其是在制造业、批发零售、电商这类“货堆成山”的行业,很多企业看着销售不错,账上却没钱、利润也不见了,一翻库存才发现: 一堆卖不动的旧货…...
GitHub 趋势日报 (2025年06月08日)
📊 由 TrendForge 系统生成 | 🌐 https://trendforge.devlive.org/ 🌐 本日报中的项目描述已自动翻译为中文 📈 今日获星趋势图 今日获星趋势图 884 cognee 566 dify 414 HumanSystemOptimization 414 omni-tools 321 note-gen …...

ABAP设计模式之---“简单设计原则(Simple Design)”
“Simple Design”(简单设计)是软件开发中的一个重要理念,倡导以最简单的方式实现软件功能,以确保代码清晰易懂、易维护,并在项目需求变化时能够快速适应。 其核心目标是避免复杂和过度设计,遵循“让事情保…...

算法岗面试经验分享-大模型篇
文章目录 A 基础语言模型A.1 TransformerA.2 Bert B 大语言模型结构B.1 GPTB.2 LLamaB.3 ChatGLMB.4 Qwen C 大语言模型微调C.1 Fine-tuningC.2 Adapter-tuningC.3 Prefix-tuningC.4 P-tuningC.5 LoRA A 基础语言模型 A.1 Transformer (1)资源 论文&a…...

Linux 内存管理实战精讲:核心原理与面试常考点全解析
Linux 内存管理实战精讲:核心原理与面试常考点全解析 Linux 内核内存管理是系统设计中最复杂但也最核心的模块之一。它不仅支撑着虚拟内存机制、物理内存分配、进程隔离与资源复用,还直接决定系统运行的性能与稳定性。无论你是嵌入式开发者、内核调试工…...

Linux 中如何提取压缩文件 ?
Linux 是一种流行的开源操作系统,它提供了许多工具来管理、压缩和解压缩文件。压缩文件有助于节省存储空间,使数据传输更快。本指南将向您展示如何在 Linux 中提取不同类型的压缩文件。 1. Unpacking ZIP Files ZIP 文件是非常常见的,要在 …...

解读《网络安全法》最新修订,把握网络安全新趋势
《网络安全法》自2017年施行以来,在维护网络空间安全方面发挥了重要作用。但随着网络环境的日益复杂,网络攻击、数据泄露等事件频发,现行法律已难以完全适应新的风险挑战。 2025年3月28日,国家网信办会同相关部门起草了《网络安全…...

Web后端基础(基础知识)
BS架构:Browser/Server,浏览器/服务器架构模式。客户端只需要浏览器,应用程序的逻辑和数据都存储在服务端。 优点:维护方便缺点:体验一般 CS架构:Client/Server,客户端/服务器架构模式。需要单独…...