本書介紹自然語言處理的原理和方法及其代碼實現(xiàn),是一本著眼于自然語言處理教學實踐的圖書。
本書分為3個部分。第一部分介紹基礎技術,包括文本規(guī)范化、文本表示、文本分類、文本聚類。第二部分介紹自然語言的序列建模,包括語言模型、序列到序列模型、預訓練語言模型、序列標注。第三部分介紹自然語言的結構建模,包括成分句法分析、依存句法分析、語義分析、篇章分析。本書將自然語言處理的理論與實踐相結合,提供所介紹方法的代碼示例,能夠幫助讀者掌握理論知識并進行動手實踐。
本書適合作為高校自然語言處理課程的教材,也可作為相關行業(yè)的研究人員和開發(fā)人員的參考資料。
·名家作品:上海交通大學ACM班創(chuàng)辦人俞勇教授、上?萍即髮W博士生導師屠可偉副教授等共同編寫
·多位業(yè)內大咖力薦:文繼榮|周明|邱錫鵬|李磊|楊笛一等學術及工業(yè)界大咖力薦
·配套資源豐富:配套源代碼+在線視頻課程+在線討論區(qū)+在線習題+教學課件,助你輕松入門并系統(tǒng)學習大模型背后的自然語言處理底層技術
屠可偉,上?萍即髮W信息科學與技術學院長聘副教授、研究員、博士生導師。研究方向包括自然語言處理、機器學習等,主要研究將符號、統(tǒng)計和神經方法相結合用于語言結構的表示、學習與利用。發(fā)表論文100余篇,主要發(fā)表在ACL、EMNLP、AAAI 等人工智能領域頂級會議。擔任多個頂級會議程序委員會委員和領域主席。曾獲ACL 2023杰出論文獎,以及SemEval 2022和SemEval 2023最佳系統(tǒng)論文獎。
王新宇,上?萍即髮W博士,長期從事自然語言處理研究工作,在ACL、EMNLP、NAACL等頂級會議上發(fā)表論文10余篇,擔任ACL、NAACL會議的領域主席以及ACL滾動審查(ACL Rolling Review)執(zhí)行編輯。曾獲得中國中文信息學會優(yōu)秀博士學位論文提名、SemEval 2022最佳系統(tǒng)論文獎等榮譽。
曲彥儒,伊利諾伊大學厄巴納-香檳分校博士生,長期從事自然語言處理研究工作,在ACL、NAACL、AAAI、ICLR等會議上發(fā)表了多篇論文。
俞勇,上海交通大學ACM班創(chuàng)辦人,國家級教學名師,上海交通大學特聘教授。2018年創(chuàng)辦伯禹人工智能學院,在上海交通大學ACM班人工智能專業(yè)課程體系的基礎上,對人工智能課程體系進行創(chuàng)新,致力于培養(yǎng)卓越的人工智能算法工程師和研究員。
第 1章 初探自然語言處理 1
1.1 自然語言處理是什么 1
1.2 自然語言處理的應用 2
1.3 自然語言處理的難點 3
1.4 自然語言處理的方法論 4
1.5 小結 5
第 一部分 基礎
第 2章 文本規(guī)范化 8
2.1 分詞 8
2.1.1 基于空格與標點符號的分詞 8
2.1.2 基于正則表達式的分詞 9
2.1.3 詞間不含空格的語言的分詞 12
2.1.4 基于子詞的分詞 13
2.2 詞規(guī)范化 17
2.2.1 大小寫折疊 17
2.2.2 詞目還原 18
2.2.3 詞干還原 19
2.3 分句 19
2.4 小結 20
第3章 文本表示 22
3.1 詞的表示 22
3.2 稀疏向量表示 24
3.3 稠密向量表示 25
3.3.1 word2vec 25
3.3.2 上下文相關詞嵌入 30
3.4 文檔表示 30
3.4.1 詞-文檔共現(xiàn)矩陣 31
3.4.2 TF-IDF加權 31
3.4.3 文檔的稠密向量表示 33
3.5 小結 33
第4章 文本分類 35
4.1 基于規(guī)則的文本分類 35
4.2 基于機器學習的文本分類 36
4.2.1 樸素貝葉斯 36
4.2.2 邏輯斯諦回歸 42
4.3 分類結果評價 45
4.4 小結 47
第5章 文本聚類 49
5.1 k均值聚類算法 49
5.2 基于高斯混合模型的最大期望值算法 53
5.2.1 高斯混合模型 53
5.2.2 最大期望值算法 53
5.3 無監(jiān)督樸素貝葉斯模型 57
5.4 主題模型 60
5.5 小結 61
第二部分 序列
第6章 語言模型 64
6.1 概述 64
6.2 n元語法模型 66
6.3 循環(huán)神經網絡 67
6.3.1 循環(huán)神經網絡 67
6.3.2 長短期記憶 73
6.3.3 多層雙向循環(huán)神經網絡 76
6.4 注意力機制 80
多頭注意力 83
6.5 Transformer模型 85
6.6 小結 91
第7章 序列到序列模型 93
7.1 基于神經網絡的序列到序列模型 93
7.1.1 循環(huán)神經網絡 94
7.1.2 注意力機制 96
7.1.3 Transformer 98
7.2 學習 101
7.3 解碼 106
7.3.1 貪心解碼 106
7.3.2 束搜索解碼 107
7.3.3 其他解碼問題與解決技巧 110
7.4 指針網絡 111
7.5 序列到序列任務的延伸 112
7.6 小結 113
第8章 預訓練語言模型 114
8.1 ELMo:基于語言模型的上下文相關詞嵌入 114
8.2 BERT:基于Transformer的雙向編碼器表示 115
8.2.1 掩碼語言模型 115
8.2.2 BERT模型 116
8.2.3 預訓練 116
8.2.4 微調與提示 117
8.2.5 BERT代碼演示 117
8.2.6 BERT模型擴展 121
8.3 GPT:基于Transformer的生成式預訓練語言模型 122
8.3.1 GPT模型的歷史 122
8.3.2 GPT-2訓練演示 123
8.3.3 GPT的使用 125
8.4 基于編碼器-解碼器的預訓練語言模型 128
8.5 基于HuggingFace的預訓練語言模型使用 129
8.5.1 文本分類 129
8.5.2 文本生成 130
8.5.3 問答 130
8.5.4 文本摘要 131
8.6 小結 131
第9章 序列標注 133
9.1 序列標注任務 133
9.1.1 詞性標注 133
9.1.2 中文分詞 134
9.1.3 命名實體識別 134
9.1.4 語義角色標注 135
9.2 隱馬爾可夫模型 135
9.2.1 模型 135
9.2.2 解碼 136
9.2.3 輸入序列的邊際概率 137
9.2.4 單個標簽的邊際概率 138
9.2.5 監(jiān)督學習 139
9.2.6 無監(jiān)督學習 139
9.2.7 部分代碼實現(xiàn) 141
9.3 條件隨機場 146
9.3.1 模型 146
9.3.2 解碼 147
9.3.3 監(jiān)督學習 148
9.3.4 無監(jiān)督學習 149
9.3.5 部分代碼實現(xiàn) 149
9.4 神經序列標注模型 154
9.4.1 神經softmax 154
9.4.2 神經條件隨機場 154
9.4.3 代碼實現(xiàn) 155
9.5 小結 156
第三部分 結構
第 10章 成分句法分析 160
10.1 成分結構 160
10.2 成分句法分析概述 161
10.2.1 歧義性與打分 161
10.2.2 解碼 162
10.2.3 學習 162
10.2.4 評價指標 163
10.3 基于跨度的成分句法分析 163
10.3.1 打分 164
10.3.2 解碼 165
10.3.3 學習 170
10.4 基于轉移的成分句法分析 173
10.4.1 狀態(tài)與轉移 173
10.4.2 轉移的打分 174
10.4.3 解碼 175
10.4.4 學習 176
10.5 基于上下文無關文法的成分句法分析 177
10.5.1 上下文無關文法 177
10.5.2 解碼和學習 178
10.6 小結 179
第 11章 依存句法分析 181
11.1 依存結構 181
11.1.1 投射性 182
11.1.2 與成分結構的關系 182
11.2 依存句法分析概述 184
11.2.1 打分、解碼和學習 184
11.2.2 評價指標 184
11.3 基于圖的依存句法分析 185
11.3.1 打分 185
11.3.2 解碼 186
11.3.3 Eisner算法 186
11.3.4 MST算法 191
11.3.5 高階方法 194
11.3.6 監(jiān)督學習 194
11.4 基于轉移的依存句法分析 195
11.4.1 狀態(tài)與轉移 196
11.4.2 打分、解碼與學習 196
11.5 小結 198
第 12章 語義分析 200
12.1 顯式和隱式的語義表示 200
12.2 詞義表示 201
12.2.1 WordNet 201
12.2.2 詞義消歧 203
12.3 語義表示 204
12.3.1 專用和通用的語義表示 204
12.3.2 一階邏輯 205
12.3.3 語義圖 205
12.4 語義分析 206
12.4.1 基于句法的語義分析 206
12.4.2 基于神經網絡的語義分析 207
12.4.3 弱監(jiān)督學習 209
12.5 語義角色標注 209
12.5.1 語義角色標注標準 209
12.5.2 語義角色標注方法 211
12.6 信息提取 211
12.7 小結 212
第 13章 篇章分析 213
13.1 篇章 213
13.1.1 連貫性關系 213
13.1.2 篇章結構 214
13.1.3 篇章分析 215
13.2 共指消解 215
13.2.1 提及檢測 216
13.2.2 提及聚類 216
13.3 小結 220
總結與展望 221
參考文獻 223
中英文術語對照表 228
附 錄 234