預(yù)訓(xùn)練語言模型屬于人工智能領(lǐng)域中自然語言處理領(lǐng)域的一個細(xì)分。 本書主要介紹預(yù)訓(xùn)練語言模型。預(yù)訓(xùn)練語言模型是自然語言處理領(lǐng)域的重要突破,得到了越來越廣泛的關(guān)注,相關(guān)研究者和從業(yè)人員在實際應(yīng)用的過程中,亟需一本理論翔實、代碼細(xì)節(jié)充分的參考書。本書詳細(xì)梳理了預(yù)訓(xùn)練語言模型的基本概念和理論基礎(chǔ),并通過實際代碼的講解, 闡述了具有代表性的預(yù)訓(xùn)練語言模型的實現(xiàn)細(xì)節(jié),非常適合需要快速、全面掌握預(yù)訓(xùn)練語言模型的從業(yè)者閱讀。
邵 浩日本國立九州大學(xué)工學(xué)博士,現(xiàn)就職于vivo。曾任狗尾草智能科技AI研究院院長,帶領(lǐng)團(tuán)隊打造了AI虛擬生命產(chǎn)品的交互引擎。曾是上海對外經(jīng)貿(mào)大學(xué)副教授,碩士生導(dǎo)師。是上海市靜安區(qū)首屆優(yōu)秀人才,上海市人才發(fā)展基金獲得者,杭州市高層次人才。任中國中文信息學(xué)會青年工作委員會委員,語言與知識計算專委會委員,中國計算機(jī)學(xué)會語音對話與聽覺專業(yè)組委員,中文信息技術(shù)專委會委員。發(fā)表論文50余篇,獲專利10余項,主持多項國家級及省部級課題,曾在聯(lián)合國、世界貿(mào)易組織、亞利桑那州立大學(xué)、香港城市大學(xué)等機(jī)構(gòu)任訪問學(xué)者。劉一烽全國中學(xué)生物理競賽保送生,清華大學(xué)電子系碩士,曾獲學(xué)習(xí)成績優(yōu)異獎學(xué)金,F(xiàn)任vivo人工智能研究院AI算法工程師,主要研究方向為強(qiáng)化學(xué)習(xí)、自然語言處理,主導(dǎo)游戲AI和機(jī)器翻譯核心算法研發(fā)工作。
第 1 章 預(yù)訓(xùn)練語言模型簡介 1
1.1自然語言處理研究進(jìn)展 1
1.2預(yù)訓(xùn)練語言模型:為什么要預(yù)訓(xùn)練 4
1.2.1預(yù)訓(xùn)練 4
1.2.2自然語言表示 5
1.2.3預(yù)訓(xùn)練語言模型發(fā)展史及分類 8
第 2 章 預(yù)訓(xùn)練語言模型基礎(chǔ)知識 13
2.1統(tǒng)計語言模型 14
2.2神經(jīng)網(wǎng)絡(luò)語言模型 17
2.3詞向量:解決相似單詞的距離問題 19
2.4RNN 和 LSTM 基礎(chǔ) 25
2.5基于 RNN 的語言模型 29
2.6ELMo:解決多義詞的表示問題 32
第 3 章 Transformer 與 Attention 37
3.1Transformer 的結(jié)構(gòu) 37
3.2Self-Attention:從全局中找到重點 43
3.3位置編碼:為什么有效 54
3.4單向掩碼:另一種掩碼機(jī)制 58
3.5代碼解讀:模型訓(xùn)練技巧 61
3.5.1訓(xùn)練技巧 1:歸一化層前置 62
3.5.2訓(xùn)練技巧 2:梯度累積 64
第 4 章 GPT 系列模型 69
4.1GPT 的結(jié)構(gòu):基于 Transformer Decoder 69
4.2GPT 任務(wù)改寫:如何在不同任務(wù)中使用 GPT 71
4.3GPT 核心代碼解讀 74
4.4GPT-2:Zero-shot Learning 的潛力 79
4.4.1N-shot Learning 79
4.4.2核心思想 80
4.4.3模型結(jié)構(gòu) 81
4.5GPT-3:Few-shot Learning 的優(yōu)秀表現(xiàn) 82
4.5.1看詞造句 84
4.5.2語法糾錯 84
4.5.3GPT-3 的爭議 85
第 5 章 BERT 模型 87
5.1BERT:公認(rèn)的里程碑 87
5.2BERT 的結(jié)構(gòu):強(qiáng)大的特征提取能力 88
5.3無監(jiān)督訓(xùn)練:掩碼語言模型和下句預(yù)測 91
5.3.1MLM 91
5.3.2NSP 93
5.3.3輸入表示 94
5.4微調(diào)訓(xùn)練:適應(yīng)下游任務(wù) 95
5.4.1句對分類 95
5.4.2單句分類 96
5.4.3文本問答 97
5.4.4單句標(biāo)注 99
5.5核心代碼解讀:預(yù)訓(xùn)練和微調(diào) 100
5.5.1BERT 預(yù)訓(xùn)練模型 101
5.5.2BERT 微調(diào)模型 110
5.6BERT 總結(jié) 117
第 6 章 后 BERT 時代的模型 119
6.1XLM:跨語言模型 119
6.1.1優(yōu)化方向 119
6.1.2算法細(xì)節(jié) 120
6.1.3 小結(jié) 121
6.2MT-DNN:多任務(wù)融合 121
6.2.1優(yōu)化方向 121
6.2.2算法細(xì)節(jié) 122
6.2.3 小結(jié) 124
6.3UniLM:獲得文本生成能力 124
6.3.1優(yōu)化方向 124
6.3.2算法細(xì)節(jié) 125
6.3.3 小結(jié) 127
6.4SpanBERT:擴(kuò)大掩碼范圍 127
6.4.1優(yōu)化方向 127
6.4.2算法細(xì)節(jié) 128
6.4.3 小結(jié) 129
6.5XLNet:置換自回歸 130
6.5.1優(yōu)化方向 130
6.5.2算法細(xì)節(jié) 130
6.5.3 小結(jié) 135
6.6ERNIE:知識圖譜 136
6.6.1優(yōu)化方向 136
6.6.2算法細(xì)節(jié) 136
6.6.3 小結(jié) 139
6.7VideoBERT:多模態(tài)融合 139
6.7.1優(yōu)化方向 139
6.7.2算法細(xì)節(jié) 140
6.7.3 小結(jié) 141
6.8ALBERT:參數(shù)共享 142
6.8.1優(yōu)化方向 142
6.8.2算法細(xì)節(jié) 143
6.8.3 小結(jié) 145
6.9RoBERTa:更大的模型 145
6.9.1優(yōu)化方向 145
6.9.2算法細(xì)節(jié) 146
6.9.3 小結(jié) 146
6.10BART:編解碼結(jié)構(gòu) 146
6.10.1優(yōu)化方向 146
6.10.2算法細(xì)節(jié) 147
6.10.3 小結(jié) 149
6.11T5:大一統(tǒng)模型 149
6.11.1優(yōu)化方向 149
6.11.2算法細(xì)節(jié) 150
6.11.3 小結(jié) 153
6.12 總結(jié) 154
第 7 章 評測和應(yīng)用 157
7.1評測任務(wù) 157
7.1.1通用評測任務(wù) 157
7.1.2領(lǐng)域評測任務(wù) 162
7.1.3其他評測任務(wù) 167
7.2模型應(yīng)用:Transformers 代碼實戰(zhàn) 168
7.2.1 安裝 168
7.2.2快速上手指南 170
7.2.3微調(diào)訓(xùn)練 172
7.2.4BERT 應(yīng)用 175
7.3模型壓縮:量化、剪枝和蒸餾 179
7.3.1BERT 模型分析 179
7.3.2 量化 181
7.3.3 剪枝 181
7.3.4 蒸餾 182
7.3.5 結(jié)構(gòu)無損壓縮 187
7.4模型擴(kuò)展:多模態(tài)預(yù)訓(xùn)練 188
7.4.1單流模型 189
7.4.2雙流模型 191
第 8 章 總結(jié)和展望 195
8.1預(yù)訓(xùn)練語言模型的發(fā)展現(xiàn)狀 195
8.2預(yù)訓(xùn)練語言模型的未來展望 199
參考文獻(xiàn) 203