BERT 基礎教程:Transformer 大模型實戰

[印] 蘇達哈爾桑·拉維昌迪蘭(Sudharsan Ravichandiran)

  • 出版商: 人民郵電
  • 出版日期: 2023-02-01
  • 售價: $539
  • 貴賓價: 9.5$512
  • 語言: 簡體中文
  • 頁數: 266
  • ISBN: 7115603723
  • ISBN-13: 9787115603722
  • 相關分類: Text-mining
  • 立即出貨

  • BERT 基礎教程:Transformer 大模型實戰-preview-1
  • BERT 基礎教程:Transformer 大模型實戰-preview-2
BERT 基礎教程:Transformer 大模型實戰-preview-1

買這商品的人也買了...

商品描述

本書聚焦谷歌公司開發的BERT自然語言處理模型,由淺入深地介紹了BERT的工作原理、BERT的各種變體及其應用。本書呈現了大量示意圖、代碼和實例,詳細解析瞭如何訓練BERT模型、如何使用BERT模型執行自然語言推理任務、文本摘要任務、問答任務、命名實體識別任務等各種下游任務,以及如何將BERT模型應用於多種語言。通讀本書後,讀者不僅能夠全面瞭解有關BERT的各種概念、術語和原理,還能夠使用BERT模型及其變體執行各種自然語言處理任務。

作者簡介

【作者简介】

 

苏达哈尔桑·拉维昌迪兰(Sudharsan Ravichandiran)

 

热爱开源社区的数据科学家,研究方向为深度学习和强化学习的实际应用,在自然语言处理和计算机视觉等领域都颇有建树,另著有《Python强化学习实战》。

 

【译者简介】

 

周参

 

就职于谷歌,任软件工程师,研究方向为自然语言处理。工作之余的兴趣是研究人工智能领域机器学习方向以及新的模型算法,并将多种深度学习模型应用于实际问题中。

目錄大綱

第 一部分 開始使用BERT

第 1 章 Transformer 概覽 2

1.1 Transformer 簡介 2

1.2 理解編碼器 3

1.2.1 自註意力機制 5

1.2.2 多頭註意力層 14

1.2.3 通過位置編碼來學習位置 16

1.2.4 前饋網絡層 19

1.2.5 疊加和歸一組件 19

1.2.6 編碼器總覽 20

1.3 理解解碼器 21

1.3.1 帶掩碼的多頭註意力層 25

1.3.2 多頭註意力層 30

1.3.3 前饋網絡層 34

1.3.4 疊加和歸一組件 34

1.3.5 線性層和softmax 層 35

1.3.6 解碼器總覽 36

1.4 整合編碼器和解碼器 38

1.5 訓練Transformer 39

1.6 小結 39

1.7 習題 40

1.8 深入閱讀 40

第 2章 瞭解BERT 模型 41

2.1 BERT 的基本理念 41

2.2 BERT 的工作原理 43

2.3 BERT 的配置 45

2.3.1 BERT-base 46

2.3.2 BERT-large 46

2.3.3 BERT 的其他配置 47

2.4 BERT 模型預訓練 48

2.4.1 輸入數據 49

2.4.2 預訓練策略 53

2.4.3 預訓練過程 61

2.5 子詞詞元化算法 63

2.5.1 字節對編碼 64

2.5.2 字節級字節對編碼 69

2.5.3 WordPiece 69

2.6 小結 71

2.7 習題 72

2.8 深入閱讀 72

第3章 BERT實戰 73

3.1 預訓練的BERT模型 73

3.2 從預訓練的BERT模型中提取嵌入 74

3.2.1 Hugging Face的Transformers 庫 77

3.2.2 BERT 嵌入的生成 77

3.3 從BERT 的所有編碼器層中提取嵌入 81

3.4 針對下游任務進行微調 .85

3.4.1 文本分類任務 86

3.4.2 自然語言推理任務 91

3.4.3 問答任務 93

3.4.4 命名實體識別任務 97

3.5 小結 98

3.6 習題 99

3.7 深入閱讀 99

第二部分 探索BERT 變體

第4章 BERT 變體(上):ALBERT、RoBERTa、ELECTRA和SpanBERT 102

4.1 BERT 的精簡版ALBERT 103

4.1.1 跨層參數共享 103

4.1.2 嵌入層參數因子分解 104

4.1.3 訓練ALBERT 模型 105

4.1.4 對比ALBERT與BERT 106

4.2 從ALBERT 中提取嵌入 107

4.3 瞭解RoBERTa 108

4.3.1 使用動態掩碼而不是靜態掩碼 108

4.3.2 移除下句預測任務 110

4.3.3 用更多的數據集進行訓練 111

4.3.4 以大批量的方式進行訓練 111

4.3.5 使用字節級字節對編碼作為子詞詞元化算法 111

4.4 瞭解ELECTRA 114

4.4.1 瞭解替換標記檢測任務 114

4.4.2 ELECTRA 的生成器和判別器 117

4.4.3 訓練ELECTRA 模型 120

4.4.4 高效的訓練方法 121

4.5 用SpanBERT 預測文本段 122

4.5.1 瞭解SpanBERT 的架構 122

4.5.2 深入瞭解SpanBERT 124

4.5.3 將預訓練的SpanBERT用於問答任務 125

4.6 小結 126

4.7 習題 127

4.8 深入閱讀 127

第5章 BERT 變體(下):基於知識蒸餾 128

5.1 知識蒸餾簡介 129

5.2 DistilBERT 模型——BERT模型的知識蒸餾版本 134

5.2.1 教師 學生架構 134

5.2.2 訓練學生BERT 模型(DistilBERT 模型) 136

5.3 TinyBERT 模型簡介 138

5.3.1 教師 學生架構 139

5.3.2 TinyBERT 模型的蒸餾 140

5.3.3 最終損失函數 145

5.3.4 訓練學生BERT模型(TinyBERT 模型) 145

5.4 將知識從BERT 模型遷移到神經網絡中 149

5.4.1 教師 學生架構 149

5.4.2 訓練學生網絡 151

5.4.3 數據增強方法 151

5.5 小結 153

5.6 習題 153

5.7 深入閱讀 154

第三部分 BERT 模型的應用

第6章 用於文本摘要任務的BERTSUM 模型 156

6.1 文本摘要任務 156

6.1.1 提取式摘要任務 157

6.1.2 抽象式摘要任務 158

6.2 為文本摘要任務微調BERT模型 158

6.2.1 使用BERT模型執行提取式摘要任務 158

6.2.2 使用BERT 模型執行抽象式摘要任務 167

6.3 理解ROUGE 評估指標 169

6.3.1 理解ROUGE-N 指標 169

6.3.2 理解ROUGE-L 指標 171

6.4 BERTSUM 模型的性能 172

6.5 訓練BERTSUM 模型 172

6.6 小結 174

6.7 習題 174

6.8 深入閱讀 175

第7章 將BERT 模型應用於其他語言 176

7.1 理解多語言BERT 模型 177

7.2 M-BERT 模型的多語言表現 182

7.2.1 詞匯重疊的影響 182

7.2.2 跨文本書寫的通用性 183

7.2.3 跨類型特徵的通用性 184

7.2.4 語言相似性的影響 184

7.2.5 語碼混用和音譯的影響 185

7.3 跨語言模型 187

7.3.1 預訓練策略 188

7.3.2 預訓練XLM模型 190

7.3.3 對XLM模型的評估 191

7.4 理解XLM-R模型 192

7.5 特定語言的BERT模型 194

7.5.1 法語的FlauBERT模型 194

7.5.2 西班牙語的BETO模型 196

7.5.3 荷蘭語的BERTje模型 198

7.5.4 德語的BERT模型 199

7.5.5 漢語的BERT模型 200

7.5.6 日語的BERT模型 202

7.5.7 芬蘭語的FinBERT模型 202

7.5.8 意大利語的UmBERTo模型 203

7.5.9 葡萄牙語的BERTimbau模型 204

7.5.10 俄語的RuBERT 模型 204

7.6 小結 206

7.7 習題 206

7.8 深入閱讀 207

第8章 Sentence-BERT模型和特定領域的BERT 模型 208

8.1 用Sentence-BERT模型生成句子特徵 208

8.1.1 計算句子特徵 209

8.1.2 瞭解Sentence-BERT模型 211

8.2 sentence-transformers庫 217

8.2.1 使用Sentence-BERT計算句子特徵 217

8.2.2 計算句子的相似度 218

8.2.3 加載自定義模型 219

8.2.4 用Sentence-BERT模型尋找類似句子 220

8.3 通過知識蒸餾遷移多語言嵌入 221

8.3.1 教師 學生架構 223

8.3.2 使用多語言模型 224

8.4 特定領域的BERT模型:ClinicalBERT模型和BioBERT模型 225

8.4.1 ClinicalBERT模型 225

8.4.2 BioBERT模型 229

8.5 小結 232

8.6 習題 233

8.7 深入閱讀 233

第9 章 VideoBERT模型和BART模型 234

9.1 VideoBERT模型學習語言及視頻特徵 235

9.1.1 預訓練VideoBERT模型 235

9.1.2 數據源和預處理 239

9.1.3 VideoBERT模型的應用 240

9.2 瞭解BART模型 241

9.2.1 BART模型的架構 241

9.2.2 比較不同的預訓練目標 245

9.2.3 使用BART 模型執行文本摘要任務 245

9.3 探討BERT庫 246

9.3.1 ktrain庫 247

9.3.2 bert-as-service庫 255

9.4 小結 258

9.5 習題 259

9.6 深入閱讀 259

習題參考答案 260