深入探索Mamba模型架構與應用

王曉華

  • 出版商: 清華大學
  • 出版日期: 2025-03-01
  • 定價: $714
  • 售價: 8.5$607
  • 語言: 簡體中文
  • ISBN: 7302681570
  • ISBN-13: 9787302681571
  • 下單後立即進貨 (約4週~6週)

  • 深入探索Mamba模型架構與應用-preview-1
  • 深入探索Mamba模型架構與應用-preview-2
  • 深入探索Mamba模型架構與應用-preview-3
深入探索Mamba模型架構與應用-preview-1

相關主題

商品描述

"Mamba是一種新型的深度學習架構,在保持對序列長度近似線性擴展性的同時,提供了與Transformers相當的建模能力。《深入探索Mamba模型架構與應用》旨在幫助讀者探索Mamba在不同領域實現卓越性能的潛力,並深入理解和應用這一新興的模型架構。本書配套示例源碼、PPT課件、配圖PDF文件與讀者微信交流群服務。 《深入探索Mamba模型架構與應用》共分16章,內容包括Mamba概述、Mamba架構詳解、Mamba組件詳解、基於PyTorch的彈簧振子動力學Mamba實戰、Mamba文本情感分類實戰、Mamba的文本轉換實戰、VisionMamba圖像分類實戰、多方案的Mamba文本生成實戰、讓Mamba更強的模塊、循環神經網絡詳解與切片時間序列預測、基於Jamba的天氣預測實戰、統一了註意力與Mamba架構的Mamba2模型、Mamba結合Diffusion的圖像生成實戰、知識圖譜的構建與展示實戰、基於特徵詞的語音喚醒實戰、多模態視覺問答實戰。 《深入探索Mamba模型架構與應用》既適合Mamba架構初學者,以及人工智能、深度學習方向的從業人員閱讀,也適合作為高等院校或高職高專院校相關專業學生的參考書。"

目錄大綱

目    錄

第1章  橫空出世的Mamba 1

1.1  深度學習的前世今生 1

1.1.1  深度學習的發展歷程 2

1.1.2  深度學習與人工智能 3

1.2  深度學習中的主要模型 4

1.2.1  深度學習中的代表性模型和應用 4

1.2.2  CNN、RNN與Transformer 5

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優點的SSM 14

2.2  環境搭建1:安裝Python 15

2.2.1  Miniconda的下載與安裝 15

2.2.2  PyCharm的下載與安裝 17

2.3  環境搭建2:安裝PyTorch 2.0 20

2.3.1  Nvidia 10/20/30/40系列顯卡選擇的GPU版本 20

2.3.2  PyTorch 2.0 GPU Nvidia運行庫的安裝 21

2.4  第一次使用Mamba 24

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到結構化狀態空間模型S4 52

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  初始旋轉位置編碼RoPE 126

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 Do 155

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  什麽是GRU 201

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 Normalization 216

11.1.4  多頭自註意力 217

11.2  註意力機制的應用實踐:編碼器Encoder 220

11.2.1  編碼器的總體架構 220

11.2.2  回到輸入層:初始詞向量層和位置編碼器層 221

11.2.3  前饋層的實現 224

11.2.4  將多層模塊融合的TransformerBlock層 226

11.2.5  編碼器的實現 227

11.3  給註意力添加相對位置編碼RoPE 233

11.3.1  給註意力添加相對位置編碼RoPE 233

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