●第一部分理論基礎
第1章緒論1
1.1基本概念1
1.2自然語言處理的產生與發展2
1.3基本問題和主要困難3
1.3.1自然語言處理的基本問題3
1.3.2自然語言處理面對的主要困難4
1.4深度學習在自然語言處理中的應用5
1.4.1深度學習概述5
1.4.2面向自然語言處理的深度學習方法5
1.4.3目前深度學習應用存在的局限及展望6
1.5本章小結7
習題17
第2章數學基礎8
2.1概率論基礎8
2.1.1樣本空間和概率8
2.1.2隨機變量9
2.1.3條件概率公式、全概率公式和貝葉斯公式10
2.1.4期望和方差11
2.2信息論基礎11
2.2.1自信息和熵12
2.2.2聯合熵和條件熵13
2.2.3互信息、相對熵和交叉熵14
2.2.4困惑度14
2.2.5噪聲信道模型15
2.3深度學習的數學基礎16
2.3.1優選似然估計16
2.3.2梯度分析17
2.3.3梯度下降法19
2.3.4梯度消失和梯度爆炸19
2.4本章小結21
習題221
第3章語言模型22
3.1語言模型概念及基礎理論22
3.1語法模型22
3.1.2神經概率語言模型24
3.1.3預訓練語言模型24
3.2語言模型性能評價26
3.2.1基於信息熵的語言模型復雜度度量26
3.2.2基於困惑度的語言模型復雜度度量27
3.2.3基於語言模型的漢語信息熵估算28
3.3數據平滑28
3.3.1問題的提出28
3.3.2加法平滑方法29
3.3.3Good-Turing估計法29
3.3.4Katz平滑方法29
3.3.5Jelinek-Mercer平滑方法30
3.3.6Witten-Bell平滑方法31
3.3.7絕對減值法32
3.4神經網絡語言模型32
3.4.1基礎模型32
3.4.2CNN模型33
3.4.3RNN模型及其變體34
3.4.4Attention模型37
3.4.5Transformer模型40
3.5語言模型應用舉例44
3.5.1BERT模型44
3.5.2短文本表示46
3.5.3Softmax回歸模型46
3.6本章小結47
習題347
第4章隱馬爾可夫模型與條件隨機場49
4.1馬爾可夫模型49
4.1.1馬爾可夫過程49
4.1.2馬爾可夫性49
4.2隱馬爾可夫模型50
4.2.1隱馬爾可夫模型的基本理論50
4.2.2估計問題52
4.2.3序列問題54
4.2.4參數估計問題55
4.3HMM應用舉例57
4.3.1中文分詞57
4.3.2詞性標注58
4.4條件隨機場及其應用59
4.4.1條件隨機場概念59
4.4.2條件隨機場應用64
4.5本章小結67
習題467
第5章詞法分析與詞性標注68
5.1漢語自動分詞68
5.1.1分詞規範問題68
5.1.2歧義切分問題69
5.1.3未登錄詞問題69
5.1.4漢語自動分詞的原則70
5.1.5分詞與詞性標注結果評估方法71
5.2自動分詞基本算法72
5.2.1優選匹配法72
5.2.2最短路徑方法74
5.2.3基於HMM的分詞方法76
5.2.4基於Bi-LSTM-CRF的分詞方法80
5.3未登錄詞識別83
5.3.1概述83
5.3.2基於決策樹的未登錄詞識別方法85
5.3.3基於統計和規則的未登錄詞識別方法88
5.4詞性標注方法91
5.4.1概述91
5.4.2基於規則的詞性標注方法92
5.4.3基於統計的詞性標注方法93
5.4.4基於深度學習的詞性標注方法95
5.5本章小結97
習題597
第6章語義分析98
6.1語義網絡98
6.1.1基本概念98
6.1.2語義標注99
6.2概念依存100
6.3詞義消歧101
6.3.1基本內容101
6.3.2理論方法102
6.3.3案例分析104
6.4詞向量表示與詞嵌入106
6.4.1基本內容106
6.4.2理論方法107
6.4.3案例分析110
6.5語義分析在華為畢昇編譯器AI調優中的應用112
6.5.1基本內容112
6.5.2理論方法113
6.6本章小結114
習題6114
第二部分實踐應用
第7章機器翻譯115
7.1機器翻譯概述115
7.1.1機器翻譯方法概述115
7.1.2機器翻譯的研究現狀118
7.2統計機器翻譯119
7.2.1基於詞的機器翻譯119
7.2.2基於短語的機器翻譯129
7.2.3基於句子的機器翻譯135
7.3神經機器翻譯143
7.3.1神經機器翻譯概述143
7.3.2神經機器翻譯模型145
7.4實戰GRU翻譯模型147
7.4.1基礎知識與環境配置148
7.4.2代碼實現149
7.5本章小結153
習題7153
第8章文本分類、聚類和情感分析154
8.1文本分類154
8.1.1文本分類的定義154
8.1.2文本分類的發展155
8.1.3傳統文本分類的實現155
8.1.4基於深度學習的分類器設計161
8.2文本聚類164
8.2.1基於分層的文本聚類165
8.2.2基於劃分的文本聚類166
8.3情感分析167
8.3.1基於情感詞典的情感分析167
8.3.2基於深度學習的方面級情感分類算法169
8.3.3帶有Attention機制的LSTM網絡的方法173
8.3.4帶有Attention機制的雙向LSTM網絡的方法175
8.4本章小結178
習題8178
第9章信息抽取179
9.1實體識別與抽取179
9.1.1命名實體識別概述179
9.1.2有監督學習方法實現命名實體識別180
9.1.3基於深度學習的NER183
9.2實體消歧184
9.2.1實體消歧概述184
9.2.2基於上下文相似度的實體消歧185
9.2.3基於實體顯著性的實體消歧186
9.2.4基於實體關聯度的實體消歧187
9.3關繫抽取187
9.3.1基於模式匹配的關繫抽取187
9.3.2基於深度學習的關繫抽取方法188
9.3.3關繫抽取展望190
9.4事件抽取190
9.4.1事件抽取任務定義191
9.4.2基於模式匹配的事件抽取實現191
9.4.3基於深度學習的事件抽取實現192
9.5本章小結194
習題9194
第10章知識圖譜195
10.1知識圖譜發展歷史195
10.2知識圖譜基本概念198
10.2.1知識庫的概念及分類198
10.2.2知識庫的表示形式199
10.3知識圖譜的生命周期199
10.3.1知識建模200
10.3.2知識抽取204
10.3.3知識融合208
10.3.4知識存儲210
10.3.5知識計算213
10.3.6知識圖譜應用215
10.4知識圖譜的現有應用216
10.4.1語義搜索216
10.4.2智能問答繫統217
10.4.3輔助決策217
10.4.4個性化推薦218
10.4.5學科知識圖譜218
10.5本章小結219
習題10220
第11章問答繫統與人機對話繫統221
11.1問答繫統221
11.1.1繫統構成221
11.1.2基於信息檢索和答案選擇的混合式問答繫統223
11.2基於大規模知識庫的問答繫統227
11.2.1知識庫問答繫統任務228
11.2.2基於中文知識圖譜的問答繫統229
11.3閱讀理解式問答繫統234
11.4對話繫統236
11.4.1基於深度學習的多方對話繫統236
11.4.2對話繫統相關任務239
11.5醫學視覺問答240
11.5.1相關概念介紹240
11.5.2面向醫學數據特征優化的視覺問答繫統241
11.6問答繫統在MindSpore框架中的應用248
11.6.1華為昇思MindSpore框架248
11.6.2DAM模型250
11.6.3基於MindSpore框架的DAM模型分析252
11.6.4所用數據集`252
11.7本章小結252
習題11253
參考文獻254
自然語言處理是一門集語言學、計算機科學、數學於一體的科學,它包含很廣泛的內容,根據其應用目的不同,所采用的技術手段也不盡相同。本書從數理基礎到模型介紹,再到生活應用,從不同的層次,由淺入深、循序漸進地展示一個完整的自然語言處理學習體繫。本書分兩部分。第一部分為理論基礎,其中第1~4章對什麼是自然語言處理、當前主流的自然語言處理技術,以及目前自然語言處理遇到的困境進行介紹:第5、6章從數學基礎、語言模型,以及詞法分析、語義分析等方面介紹自然語言處理的底層邏輯和模型原理。第二部分為實踐應用,第7~11章介紹自然語言處理在生活中的應用。本書實用性強、案例貼近生活,每章配有習題及其答案,讀者可以掃描二維碼查看習題答案。本書可作為“自然語言處理"課程的本科生教材,也可作為“人工智能”“文本挖掘”“語料庫語言學”課程的輔導書,還可作為自然語言處理領域的入門書籍。