《深入探索Mamba模型架构与应用》
本书内容
Mamba是一种新型的深度学习架构,在保持对序列长度近似线性扩展性的同时,提供了与Transformers相当的建模能力。《深入探索Mamba模型架构与应用》旨在帮助读者探索Mamba在不同领域实现卓越性能的潜力,并深入理解和应用这一新兴的模型架构。《深入探索Mamba模型架构与应用》配套示例源码、PPT课件、配图PDF文件与读者微信交流群服务。
《深入探索Mamba模型架构与应用》共分16章,内容包括Mamba概述、Mamba架构详解、Mamba组件详解、基于PyTorch的弹簧振子动力学Mamba实战、Mamba文本情感分类实战、Mamba的文本转换实战、VisionMamba图像分类实战、多方案的Mamba文本生成实战、让Mamba更强的模块、循环神经网络详解与切片时间序列预测、基于Jamba的天气预测实战、统一了注意力与Mamba架构的Mamba2模型、Mamba结合Diffusion的图像生成实战、知识图谱的构建与展示实战、基于特征词的语音唤醒实战、多模态视觉问答实战。
本书作者
王晓华,高校计算机专业讲师,研究方向为云计算、大数据与人工智能。其著作包括《深入探索Mamba模型架构与应用》《DeepSeek大模型高性能核心技术与多模态融合开发》《PyTorch深度学习与计算机视觉实践》《PyTorch语音识别实战》《ChatGLM3大模型本地化部署、应用开发与微调》《从零开始大模型开发与微调:基于PyTorch与ChatGLM》《PyTorch 2.0深度学习从零开始学》《Spark 3.0大数据分析与挖掘:基于机器学习》《TensorFlow深度学习应用实践》《OpenCV+TensorFlow深度学习与计算机视觉实战》《TensorFlow语音识别实战》《TensorFlow 2.0卷积神经网络实战》《深度学习的数学原理与实现》。
本书读者
《深入探索Mamba模型架构与应用》既适合Mamba架构初学者,以及人工智能、深度学习方向的从业人员阅读,也适合作为高等院校或高职高专院校相关专业学生的参考书。
本书目录
第1章 横空出世的Mamba1
1.1 深度学习的前世今生1
1.1.1 深度学习的发展历程2
1.1.2 深度学习与人工智能3
1.2 深度学习中的主要模型4
1.2.1 深度学习中的代表性模型和应用4
1.2.2 CNN、RNN与Transformer5
1.2.3 剑指王者的Mamba带来了新的突破7
1.3 本章小结8
第2章 挑战注意力机制地位的Mamba架构详解9
2.1 Mamba的优势10
2.1.1 Transformer模型存在的不足10
2.1.2 循环神经网络12
2.1.3 结合Transformer与RNN优点的SSM14
2.2 环境搭建1:安装Python15
2.2.1 Miniconda的下载与安装15
2.2.2 PyCharm的下载与安装17
2.3 环境搭建2:安装PyTorch 2.020
2.3.1 Nvidia 10/20/30/40系列显卡选择的GPU版本20
2.3.2 PyTorch 2.0 GPU Nvidia运行库的安装21
2.4 第一次使用Mamba24
2.4.1 Hello Mamba:使用预训练Mamba模型生成实战24
2.4.2 了解Mamba:构建Mamba的三大模块说明25
2.5 本章小结26
第3章 Mamba组件详解28
3.1 Mamba组件1:状态空间模型28
3.1.1 经典状态空间详解29
3.1.2 什么是状态空间31
3.1.3 状态空间模型影响模型的学习过程与Python实现33
3.2 Mamba组件2:连续信号转换成离散信号的方法38
3.2.1 将连续信号转换成离散信号详解与Python实现38
3.2.2 离散状态空间的Python实现41
3.2.3 离散状态空间的循环计算(类似于RNN的计算方法)44
3.3 Mamba组件3:HiPPO算法初始化的状态转移矩阵46
3.3.1 SSM中的状态转移矩阵47
3.3.2 HiPPO算法的Python实现与可视化讲解49
3.4 本章小结51
第4章 基于PyTorch的弹簧振子动力学Mamba实战52
4.1 从状态空间模型SSM到结构化状态空间模型S452
4.1.1 从状态空间模型SSM开始(PyTorch具体实现)53
4.1.2 连续信号转换为离散信号的PyTorch实现54
4.1.3 离散信号循环计算的PyTorch实现55
4.1.4 状态空间模型SSM的PyTorch实现55
4.1.5 HiPPO算法初始化状态矩阵57
4.1.6 基于S4架构的Mamba模型58
4.2 基于状态空间模型模拟弹簧振子动力学59
4.2.1 加速度的求解:详细讲解的经典弹簧-阻尼系统公式59
4.2.2 弹簧-阻尼微分方程的SSM分解与PyTorch实现61
4.2.3 使用空间状态方程模拟弹簧-阻尼方程63
4.2.4 阻尼微分方程参数的物理解释(选学)64
4.3 基于SSM的模拟弹簧振子输出的神经网络实战65
4.3.1 数据的准备66
4.3.2 对数空间中切分步数的准备67
4.3.3 基于SSM的模型构建68
4.3.4 SSM模型的训练实战73
4.3.5 使用HiPPO算法初始化状态转移矩阵74
4.4 本章小结78
第5章 Mamba文本情感分类实战80
5.1 有趣的词嵌入80
5.1.1 什么是词嵌入81
5.1.2 PyTorch中词嵌入处理函数详解82
5.2 基于进阶SSM架构的情感分类Mamba实战83
5.2.1 数据的准备84
5.2.2 SSM进阶的S6架构的设计与手把手实现84
5.2.3 Mamba堆叠Block的设计与完整实现88
5.2.4 完整Mamba的实现90
5.2.5 基于Mamba的情感分类实战94
5.3 本章小结98
第6章 Mamba文本转换实战99
6.1 基于Mamba的拼音汉字转换模型99
6.1.1 拼音汉字数据集详解与实战处理方法99
6.1.2 Mamba模型的设计详解101
6.1.3 模型的训练与预测102
6.2 PyTorch对数据集的封装与可视化训练步骤105
6.2.1 使用torch.utils.data. Dataset封装自定义数据集106
6.2.2 批量输出数据的DataLoader类详解108
6.3 本章小结111
第7章 含有位置表示的双向VisionMamba模型图像分类实战112
7.1 使用PyTorch自带的图像管理工具与图像增强技术112
7.1.1 PyTorch自带的图像管理工具113
7.1.2 图片数据增强115
7.2 基于双向VisionMamba的模块讲解119
7.2.1 数据的准备119
7.2.2 将图像转换为Mamba可用的Embedding处理方法120
7.2.3 能够双向计算的VisionMamba模型123
7.2.4 初始旋转位置编码RoPE126
7.3 VisionMamba图像分类实战129
7.3.1 VisionMamba模型的构建129
7.3.2 VisionMamba图像分类实战131
7.4 本章小结132
第8章 多方案的Mamba文本生成实战133
8.1 Mamba的经典文本生成实战133
8.1.1 数据的准备与错位输入方法134
8.1.2 基于经典Mamba的文本生成模型136
8.1.3 基于Mamba的文本生成模型的训练与推断138
8.1.4 生成函数中的注意事项:temperature与“模型尺寸”140
8.2 微调:在原有Mamba模型上进行重新训练142
8.2.1 什么是微调142
8.2.2 预训练的Mamba生成模型144
8.2.3 对预训练模型进行微调144
8.2.4 使用微调的预训练模型进行预测146
8.3 低硬件资源微调预训练Mamba模型的方法147
8.3.1 使用冻结模型参数的微调方法147
8.3.2 通过替换特定层的方式完成微调151
8.3.3 对模型参数进行部分保存和载入的方法153
8.4 本章小结154
第9章 能够让Mamba更强的模块155
9.1 What Kan I Do155
9.1.1 从多层感知机的数学原理开始156
9.1.2 KAN中的样条函数157
9.1.3 KAN的数学原理159
9.1.4 KAN的PyTorch实现163
9.1.5 结合KAN的Mamba文本生成实战168
9.2 xLSTM让老架构再现生机169
9.2.1 LSTM背景介绍169
9.2.2 LSTM实战演示170
9.2.3 xLSTM简介175
9.2.4 xLSTM的PyTorch实现177
9.2.5 基于xLSTM的文本生成实战188
9.3 本章小结192
第10章 循环神经网络详解与切片时间序列预测193
10.1 基于时间序列的温度预测实战193
10.1.1 时间序列一维数据的准备与切片194
10.1.2 基于GRU的时间序列模型设计197
10.1.3 时间序列模型的训练与预测198
10.1.4 时间序列常用的损失函数详解200
10.2 循环神经网络理论讲解201
10.2.1 什么是GRU201
10.2.2 单向不行,那就双向203
10.3 融合Mamba与KAN架构的时间序列预测模型实战204
10.3.1 适配2D时间序列的MambaBlock模型设计204
10.3.2 Mamba架构的时间序列模型训练与预测206
10.4 本章小结206
第11章 明天下雨吗:基于Jamba的天气预测实战207
11.1 注意力机制与模型详解208
11.1.1 注意力机制详解208
11.1.2 自注意力机制210
11.1.3 ticks和Layer Normalization216
11.1.4 多头自注意力217
11.2 注意力机制的应用实践:编码器Encoder220
11.2.1 编码器的总体架构220
11.2.2 回到输入层:初始词向量层和位置编码器层221
11.2.3 前馈层的实现224
11.2.4 将多层模块融合的TransformerBlock层226
11.2.5 编码器的实现227
11.3 给注意力添加相对位置编码RoPE233
11.3.1 给注意力添加相对位置编码RoPE233
11.3.2 添加旋转位置编码的注意力机制235
11.3.3 基于现有库包的旋转位置编码RoPE的使用236
11.4 明天下雨吗:基于Jamba的天气预测实战237
11.4.1 Jamba模型的基本架构237
11.4.2 Jamba架构的实现1:修正后的Transformer模块238
11.4.3 Jamba架构的实现2:Mamba模块242
11.4.4 Jamba架构的实现3:Jamba模型的实现245
11.4.5 基于Jamba的天气预测实战246
11.4.6 基于时间序列的天气预报任务253
11.5 本章小结254
第12章 统一了注意力与Mamba架构的Mamba2模型255
12.1 Mamba2模型的实现256
12.1.1 Mamba2核心组件SSD详解256
12.1.2 基于SSD的Mamba2模型259
12.2 基于Mamba2的文本生成实战263
12.2.1 文本生成Mamba2模型的完整实现263
12.2.2 基于Mamba2的文本生成264
12.3 本章小结265
第13章 Mamba结合Diffusion的图像生成实战266
13.1 Diffusion原理精讲以及经典实现267
13.1.1 Diffusion Model的传播流程267
13.1.2 直接运行的经典DDPM的模型训练实战269
13.1.3 DDPM模型的基本模块说明272
13.1.4 DDPM加噪与去噪详解:结合成功运行的Diffusion Model代码275
13.1.5 DDPM的损失函数:结合成功运行的Diffusion Model代码281
13.2 基于注意力的可控Diffusion实现281
13.2.1 Diffusion Model可控生成的基础:特征融合282
13.2.2 DiT中的可控特征融合282
13.2.3 DiT模型的设计285
13.2.4 图像的加噪与模型训练289
13.2.5 基于DiT模型的可控图像生成293
13.3 基于Mamba的可控Diffusion实现295
13.3.1 基于Mamba架构的模块生成296
13.3.2 基于Mamba的Dim模型的设计299
13.4 本章小结303
第14章 Mamba实战1:知识图谱的构建与展示305
14.1 什么是知识图谱305
14.1.1 知识图谱的应用306
14.1.2 知识图谱中的三元组307
14.2 知识图谱的可视化展示308
14.2.1 数据的准备与处理308
14.2.2 知识图谱的可视化展示309
14.3 分词与数据的编码与解码312
14.3.1 分词器Tokenizer的构建与使用312
14.3.2 数据的编码处理315
14.3.3 数据的解码处理319
14.4 基于Mamba的知识图谱模型构建321
14.4.1 基于Mamba的知识图谱模型构建321
14.4.2 基于Mamba的知识图谱模型训练与预测322
14.4.3 命名实体识别在预测时的补充说明325
14.5 本章小结326
第15章 Mamba实战2:基于特征词的语音唤醒327
15.1 音频特征工具Librosa包的基础使用327
15.1.1 基于Librosa的音频信号读取328
15.1.2 基于Librosa的音频多特征提取331
15.2 Mamba实战:基于特征词的语音唤醒333
15.2.1 数据的准备333
15.2.2 数据的处理334
15.2.3 模型的设计337
15.2.4 模型的数据输入方法338
15.2.5 模型训练338
15.2.6 模型结果展示340
15.3 本章小结340
第16章 Mamba实战3:多模态视觉问答341
16.1 视觉问答数据集的准备341
16.1.1 VQA数据集介绍342
16.1.2 VQA数据集的下载与预处理342
16.1.3 VQA数据集的准备346
16.2 Mamba架构的多模态视觉问答模型的训练与推断348
16.2.1 Mamba架构的多模态视觉问答模型的设计348
16.2.2 多模态视觉问答模型的训练与推断351
16.3 本章小结353
本书特色
(1)《深入探索Mamba模型架构与应用》旨在为读者提供一本全面、深入的Mamba深度学习架构实战指南。作者精心组织了全书的内容,从基础理论到实战应用,循序渐进地引导读者掌握Mamba架构的核心技术与应用实战技巧。
(2)《深入探索Mamba模型架构与应用》详细剖析了Mamba的核心组件和工作原理,让读者能够清晰把握其与传统深度学习架构的区别与优势。
(3)《深入探索Mamba模型架构与应用》结合丰富的案例和实战经验,展示了Mamba在文本生成、图像分类、天气预测、图像生成、知识图谱、语音唤醒、多模态视觉问答等多个领域的应用场景。
(4)配套示例源码、数据文件、PPT课件、配图PDF文件与读者微信交流群。
本文摘自《深入探索Mamba模型架构与应用》,获出版社和作者授权发布。
链接:深入探索Mamba模型架构与应用——jd