本書基于Python編程語言,以實(shí)戰(zhàn)為導(dǎo)向,主要介紹自然語言處理的各種理論、方法及應(yīng)用案例。全書共14章:第1~3章側(cè)重介紹自然語言處理所必需的理論基礎(chǔ)知識(shí),包括自然語言處理基礎(chǔ)、Python基礎(chǔ)、語料庫基礎(chǔ)等內(nèi)容;第4~10章主要講解詞法分析、詞向量與關(guān)鍵詞提取、句法分析、語義分析、情感分析等自然語言處理核心技術(shù)的原理及實(shí)現(xiàn)方法,以及自然語言處理中常用的機(jī)器學(xué)習(xí)和深度學(xué)習(xí)技術(shù);第11~14章主要介紹自然語言處理比較典型的應(yīng)用場(chǎng)景,包括機(jī)器翻譯與寫作、智能問答與對(duì)話及個(gè)性化推薦,以及自然語言處理技術(shù)在醫(yī)療、司法和金融領(lǐng)域的應(yīng)用情況。本書設(shè)置較多示例,實(shí)操性較強(qiáng),建議讀者根據(jù)書內(nèi)講解動(dòng)手完成實(shí)驗(yàn),以便鞏固所學(xué)內(nèi)容。
劉鴻博,中國共產(chǎn)黨員。池州學(xué)院大數(shù)據(jù)與人工智能學(xué)院副院長(zhǎng),池州學(xué)院大數(shù)據(jù)與人工智能學(xué)院大數(shù)據(jù)應(yīng)用創(chuàng)新中心副主任。先后參與太原市公安局、蘇州工業(yè)園區(qū)公安局、湖北省公安廳大數(shù)據(jù)與人工智能平臺(tái)人像識(shí)別與生物特征識(shí)別的架構(gòu)設(shè)計(jì)與實(shí)施。在自然語言處理、數(shù)據(jù)分析等領(lǐng)域有多年的研究。
目 錄
第1章 自然語言處理基礎(chǔ) 1
1.1 什么是自然語言處理 1
1.1.1 自然語言處理的概念 1
1.1.2 自然語言處理的研究任務(wù) 3
1.2 自然語言處理的發(fā)展歷程 4
1.3 自然語言處理相關(guān)知識(shí)的構(gòu)成 6
1.3.1 基礎(chǔ)術(shù)語 6
1.3.2 知識(shí)結(jié)構(gòu) 7
1.4 探討自然語言處理的幾個(gè)層面 8
1.5 自然語言處理與人工智能 10
第2章 Python基礎(chǔ) 11
2.1 搭建Python開發(fā)環(huán)境 11
2.1.1 Python的科學(xué)計(jì)算發(fā)行版—Anaconda 11
2.1.2 Anaconda的下載與安裝 13
2.2 正則表達(dá)式在自然語言處理中的基本應(yīng)用 17
2.2.1 匹配字符串 18
2.2.2 使用轉(zhuǎn)義符 20
2.2.3 抽取文本中的數(shù)字 21
2.3 Numpy使用詳解 22
2.3.1 創(chuàng)建數(shù)組 22
2.3.2 獲取Numpy中數(shù)組的維度 24
2.3.3 獲取本地?cái)?shù)據(jù) 24
2.3.4 正確讀取數(shù)據(jù) 25
2.3.5 Numpy數(shù)組索引 25
2.3.6 Numpy數(shù)組切片 26
2.3.7 數(shù)組比較 26
2.3.8 替代值 27
2.3.9 數(shù)據(jù)類型的轉(zhuǎn)換 28
2.3.10 Numpy的統(tǒng)計(jì)計(jì)算方法 29
第3章 語料庫基礎(chǔ) 30
3.1 語料庫基礎(chǔ)概述 30
3.2 自然語言工具包NLTK 31
3.2.1 NLTK概述 31
3.2.2 安裝NLTK 32
3.2.3 使用NLTK 33
3.2.4 在Python NLTK下使用Stanford NLP 37
3.3 獲取語料庫 41
3.3.1 訪問網(wǎng)站 41
3.3.2 編寫程序 42
3.3.3 通過NLTK獲取 43
3.4 綜合案例:走進(jìn)《紅樓夢(mèng)》 46
3.4.1 數(shù)據(jù)采集和預(yù)處理 46
3.4.2 構(gòu)建本地語料庫 47
3.4.3 語料操作 47
第4章 詞法分析 51
4.1 中文分詞 51
4.1.1 中文分詞介紹 51
4.1.2 規(guī)則分詞 52
4.1.3 統(tǒng)計(jì)分詞 58
4.1.4 混合分詞 67
4.1.5 中文分詞工具—Jieba 67
4.2 詞性標(biāo)注 70
4.2.1 詞性標(biāo)注概述 70
4.2.2 詞性標(biāo)注規(guī)范 71
4.2.3 Jieba分詞中的詞性標(biāo)注 72
4.3 命名實(shí)體識(shí)別 73
4.3.1 命名實(shí)體識(shí)別概述 73
4.3.2 基于CRF的命名實(shí)體識(shí)別 75
4.3.3 日期識(shí)別實(shí)戰(zhàn) 77
4.3.4 地名識(shí)別實(shí)戰(zhàn) 81
第5章 詞向量與關(guān)鍵詞提取 90
5.1 詞向量算法word2vec 90
5.1.1 神經(jīng)網(wǎng)絡(luò)語言模型 91
5.1.2 C&W模型 92
5.1.3 CBOW模型和Skip-gram模型 93
5.2 關(guān)鍵詞提取技術(shù)概述 94
5.3 TF-IDF算法 95
5.4 TextRank算法 96
5.5 LSA/LSI/LDA算法 98
5.5.1 LSA/LSI算法 98
5.5.2 LDA算法 99
5.6 提取文本關(guān)鍵詞 100
第6章 句法分析 108
6.1 句法分析概述 108
6.1.1 句法分析的基本概念 108
6.1.2 句法分析的基本方法 109
6.2 句法分析的數(shù)據(jù)集與評(píng)測(cè)方法 109
6.2.1 句法分析的數(shù)據(jù)集 110
6.2.2 句法分析的評(píng)測(cè)方法 111
6.3 句法分析的常用方法 111
6.3.1 基于PCFG的句法分析 112
6.3.2 基于最大間隔馬爾可夫網(wǎng)絡(luò)的句法分析 113
6.3.3 基于CRF的句法分析 114
6.3.4 基于移進(jìn)-歸約的句法分析模型 114
6.4 使用Stanford Parser的PCFG算法進(jìn)行句法分析 115
6.4.1 Stanford Parser 115
6.4.2 基于PCFG的中文句法分析實(shí)戰(zhàn) 116
第7章 語義分析 119
7.1 詞義消歧 119
7.1.1 基于規(guī)則的詞義消歧 120
7.1.2 基于統(tǒng)計(jì)的詞義消歧 121
7.1.3 基于實(shí)例的詞義消歧 122
7.1.4 基于詞典的詞義消歧 122
7.2 語義角色標(biāo)注 124
7.2.1 格語法 124
7.2.2 基于統(tǒng)計(jì)機(jī)器學(xué)習(xí)技術(shù)的語義角色標(biāo)注 125
7.3 深層語義推理 126
7.3.1 命題邏輯和謂詞邏輯 126
7.3.2 語義網(wǎng)絡(luò) 127
7.3.3 概念依存理論 129
第8章 情感分析 130
8.1 情感分析的應(yīng)用領(lǐng)域 130
8.2 情感分析的基本方法 131
8.2.1 詞法分析 132
8.2.2 機(jī)器學(xué)習(xí)方法 132
8.2.3 混合分析 132
8.3 實(shí)戰(zhàn)—電影評(píng)論情感分析 133
8.3.1 模型選擇 134
8.3.2 載入數(shù)據(jù) 136
8.3.3 輔助函數(shù) 138
8.3.4 模型設(shè)置 138
8.3.5 調(diào)參配置 140
8.3.6 訓(xùn)練過程 140
第9章 機(jī)器學(xué)習(xí)與自然語言處理 141
9.1 幾種常用的機(jī)器學(xué)習(xí)方法 141
9.1.1 文本分類 141
9.1.2 特征提取 142
9.1.3 標(biāo)注 142
9.1.4 搜索與排序 143
9.1.5 推薦系統(tǒng) 144
9.1.6 序列學(xué)習(xí) 145
9.2 無監(jiān)督學(xué)習(xí)的文本聚類 146
9.3 文本分類實(shí)戰(zhàn):中文垃圾郵件分類 148
9.3.1 實(shí)現(xiàn)代碼 148
9.3.2 評(píng)價(jià)指標(biāo) 151
9.4 文本聚類實(shí)戰(zhàn):用k-means對(duì)豆瓣讀書數(shù)據(jù)聚類 153
第10章 深度學(xué)習(xí)與自然語言處理 157
10.1 詞嵌入算法 157
10.1.1 詞向量 157
10.1.2 word2vec 158
10.1.3 詞向量模型 159
10.1.4 CBOW和Skip-gram 161
10.2 訓(xùn)練詞向量實(shí)踐 161
10.3 RNN 166
10.3.1 簡(jiǎn)單RNN 166
10.3.2 LSTM網(wǎng)絡(luò) 168
10.3.3 Attention機(jī)制 172
10.4 seq2seq模型與實(shí)戰(zhàn) 173
10.4.1 seq2seq模型 173
10.4.2 實(shí)戰(zhàn)seq2seq問答機(jī)器人 174
第11章 機(jī)器翻譯與寫作 194
11.1 機(jī)器翻譯 194
11.1.1 機(jī)器翻譯的意義 194
11.1.2 經(jīng)典的神經(jīng)網(wǎng)絡(luò)機(jī)器翻譯模型 195
11.1.3 機(jī)器翻譯譯文質(zhì)量評(píng)價(jià) 200
11.1.4 機(jī)器翻譯面臨的挑戰(zhàn) 202
11.2 機(jī)器寫作 203
11.2.1 什么是機(jī)器寫作 203
11.2.2 藝術(shù)寫作 204
11.2.3 當(dāng)代寫作 207
第12章 智能問答與對(duì)話 212
12.1 智能問答 212
12.2 智能對(duì)話系統(tǒng) 212
12.2.1 對(duì)話系統(tǒng)的基本過程 213
12.2.2 對(duì)話系統(tǒng)的常見場(chǎng)景 213
12.3 問答系統(tǒng)的主要組成 214
12.4 不同類型的問答系統(tǒng) 215
12.4.1 文本問答系統(tǒng) 216
12.4.2 閱讀理解型文本問答系統(tǒng) 220
12.4.3 社區(qū)問答系統(tǒng) 223
12.4.4 IBM的“沃森”問答系統(tǒng) 225
12.5 前景與挑戰(zhàn) 226
第13章 個(gè)性化推薦 227
13.1 推薦系統(tǒng)是什么 227
13.2 個(gè)性化推薦的基本問題 227
13.2.1 推薦系統(tǒng)的輸入 228
13.2.2 推薦系統(tǒng)的輸出 228
13.2.3 推薦的基本形式 229
13.2.4 推薦系統(tǒng)的三大核心 230
13.3 推薦的可解釋性 230
13.4 前景與挑戰(zhàn) 232
13.4.1 推薦系統(tǒng)面臨的問題 232
13.4.2 推薦系統(tǒng)的新方向 233
第14章 行業(yè)應(yīng)用 235
14.1 智慧醫(yī)療 235
14.1.1 智慧醫(yī)療的產(chǎn)生與概念 235
14.1.2 智慧醫(yī)療中的人工智能 237
14.1.3 前景與挑戰(zhàn) 239
14.2 智慧司法 240
14.2.1 智慧司法是什么 240
14.2.2 研究與應(yīng)用方向 241
14.2.3 期望與挑戰(zhàn) 247
14.3 智能金融 248
14.3.1 了解智能金融 248
14.3.2 智能金融技術(shù)的應(yīng)用 252
14.3.3 智能金融的前景與挑戰(zhàn) 254