《文本機器學習》系統(tǒng)性地介紹了多個經典的和前沿的機器學習技術及其在文本域中的應用。首先,詳細介紹了面向文本數據的預處理技術和經典的機器學習技術(如矩陣分解與主題建模、聚類與分類/回歸等),并深入探討了模型的原理和內在聯系以及相應的性能評估;其次,詳細介紹了結合異構數據的文本學習技術(如知識共享與遷移學習等),以及面向信息檢索與排序的索引和評分等技術;末尾,詳細介紹了一些文本應用相關的重要技術,包括序列建模與深度學習、文本摘要與信息提取、意見挖掘與情感分析、文本分割與事件檢測等。本書從技術原理到實際應用,綜合梳理了文本機器學習的多個技術,深入分析了模型的優(yōu)缺點和內在聯系,并在每章結束時提供了詳細的參考資料、軟件資源和習題。
《文本機器學習》不僅可以作為工具書供具有相關背景的專業(yè)人士使用,也可以作為教材幫助具有線性代數和概率論基礎的初學者入門。
譯者序
原書前言
致謝
第1章 文本機器學習導論1
1.1導論1
1.1.1本章內容組織結構2
1.2文本學習有何特別之處3
1.3文本分析模型4
1.3.1文本預處理和相似度計算4
1.3.2降維與矩陣分解6
1.3.3文本聚類6
1.3.4文本分類與回歸建模8
1.3.5結合文本與異構數據的聯合分析10
1.3.6信息檢索與網頁搜索11
1.3.7序列語言建模與嵌入11
1.3.8文本摘要11
1.3.9信息提取11
1.3.10意見挖掘與情感分析12
1.3.11文本分割與事件檢測12
1.4本章小結12
1.5參考資料13
1.5.1軟件資源13
1.6習題13
第2章 文本預處理與相似度計算15
2.1導論15
2.1.1本章內容組織結構16
2.2原始文本提取與詞條化16
2.2.1文本提取中與網頁相關的問題18
2.3從詞條中提取詞項19
2.3.1停用詞移除19
2.3.2連字符19
2.3.3大小寫轉換20
2.3.4基于用法的合并20
2.3.5詞干提取21
2.4向量空間表示與歸一化21
2.5文本中的相似度計算23
2.5.1idf歸一化和詞干提取是否總是有用25
2.6本章小結26
2.7參考資料26
2.7.1軟件資源26
2.8習題27
第3章 矩陣分解與主題建模28
3.1導論28
3.1.1本章內容組織結構30
3.1.2將二分解歸一化為標準的三分解30
3.2奇異值分解(SVD)31
3.2.1SVD的例子33
3.2.2實現SVD的冪迭代法35
3.2.3SVD/LSA的應用35
3.2.4SVD/LSA的優(yōu)缺點36
3.3非負矩陣分解36
3.3.1非負矩陣分解的可解釋性38
3.3.2非負矩陣分解的例子39
3.3.3融入新文檔40
3.3.4非負矩陣分解的優(yōu)缺點41
3.4概率潛在語義分析(PLSA)41
3.4.1與非負矩陣分解的聯系44
3.4.2與SVD的比較44
3.4.3PLSA的例子45
3.4.4PLSA的優(yōu)缺點45
3.5隱含狄利克雷分布(LDA)概覽46
3.5.1簡化的LDA模型46
3.5.2平滑的LDA模型49
3.6非線性變換和特征工程50
3.6.1選擇一個相似度函數52
3.6.2Nystrom估計58
3.6.3相似度矩陣的部分可用性60
3.7本章小結61
3.8參考資料62
3.8.1軟件資源62
3.9習題63
第4章 文本聚類65
4.1導論65
4.1.1本章內容組織結構66
4.2特征選擇與特征工程66
4.2.1特征選擇67
4.2.2特征工程68
4.3主題建模和矩陣分解70
4.3.1混合隸屬度模型與重疊簇70
4.3.2非重疊簇與雙聚類:矩陣分解的角度70
4.4面向聚類的生成混合模型74
4.4.1伯努利模型75
4.4.2多項式模型76
4.4.3與混合隸屬度主題模型的比較77
4.4.4與樸素貝葉斯分類模型的聯系77
4.5k均值算法78
4.5.1收斂與初始化80
4.5.2計算復雜度80
4.5.3與概率模型的聯系81
4.6層次聚類算法81
4.6.1高效實現與計算復雜度83
4.6.2與k均值的自然聯姻84
4.7聚類集成85
4.7.1選擇集成分量86
4.7.2混合來自不同分量的結果86
4.8將文本當作序列來進行聚類87
4.8.1面向聚類的核方法87
4.8.2數據相關的核方法:譜聚類90
4.9聚類到有監(jiān)督學習的轉換91
4.9.1實際問題92
4.10聚類評估93
4.10.1內部有效性度量的缺陷93
4.10.2外部有效性度量93
4.11本章小結97
4.12參考資料97
4.12.1軟件資源98
4.13習題98
第5章 文本分類:基本模型100
5.1導論100
5.1.1標記的類型與回歸建模101
5.1.2訓練與測試102
5.1.3歸納、直推和演繹學習器102
5.1.4基本模型103
5.1.5分類器中與文本相關的挑戰(zhàn)103
5.2特征選擇與特征工程104
5.2.1基尼系數104
5.2.2條件熵105
5.2.3逐點互信息105
5.2.4緊密相關的度量方式106
5.2.5χ2-統(tǒng)計量106
5.2.6嵌入式特征選擇模型108
5.2.7特征工程技巧108
5.3樸素貝葉斯模型109
5.3.1伯努利模型109
5.3.2多項式模型111
5.3.3實際觀察113
5.3.4利用樸素貝葉斯對輸出進行排序113
5.3.5樸素貝葉斯的例子113
5.3.6半監(jiān)督樸素貝葉斯116
5.4最近鄰分類器118
5.4.11-最近鄰分類器的屬性119
5.4.2Rocchio與最近質心分類121
5.4.3加權最近鄰122
5.4.4自適應最近鄰:一系列有效的方法124
5.5決策樹與隨機森林126
5.5.1構造決策樹的基本步驟126
5.5.2分裂一個節(jié)點127
5.5.3多變量分裂128
5.5.4決策樹在文本分類中的問題129
5.5.5隨機森林129
5.5.6把隨機森林看作自適應最近鄰方法130
5.6基于規(guī)則的分類器131
5.6.1順序覆蓋算法131
5.6.2從決策樹中生成規(guī)則133
5.6.3關聯分類器134
5.6.4預測135
5.7本章小結135
5.8參考資料135
5.8.1軟件資源137
5.9習題137
第6章 面向文本的線性分類與回歸140
6.1導論140
6.1.1線性模型的幾何解釋141
6.1.2我們需要偏置變量嗎142
6.1.3使用正則化的線性模型的一般定義143
6.1.4將二值預測推廣到多類144
6.1.5面向文本的線性模型的特點145
6.2最小二乘回歸與分類145
6.2.1使用L2正則化的最小二乘回歸145
6.2.2LASSO:使用L1正則化的最小二乘回歸148
6.2.3Fisher線性判別與最小二乘分類器150
6.3支持向量機(SVM)156
6.3.1正則優(yōu)化解釋156
6.3.2最大間隔解釋157
6.3.3Pegasos:在原始空間中求解SVM 159
6.3.4對偶SVM優(yōu)化形式160
6.3.5對偶SVM的學習算法162
6.3.6對偶SVM的自適應最近鄰解釋163
6.4對數幾率回歸165
6.4.1正則優(yōu)化解釋165
6.4.2對數幾率回歸的訓練算法166
6.4.3對數幾率回歸的概率解釋167
6.4.4多元對數幾率回歸與其他推廣168
6.4.5關于對數幾率回歸性能的評述169
6.5線性模型的非線性推廣170
6.5.1基于顯式變換的核SVM171
6.5.2為什么傳統(tǒng)的核函數能夠提升線性可分性172
6.5.3不同核函數的優(yōu)缺點174
6.5.4核技巧175
6.5.5核技巧的系統(tǒng)性應用176
6.6本章小結179
6.7參考資料180
6.7.1軟件資源181
6.8習題181
第7章 分類器的性能與評估184
7.1導論184
7.1.1本章內容組織結構184
7.2偏置-方差權衡185
7.2.1一個形式化的觀點186
7.2.2偏置和方差的跡象189
7.3偏置-方差權衡在性能方面可能的影響189
7.3.1訓練數據規(guī)模的影響189
7.3.2數據維度的影響191
7.3.3文本中模型選擇可能的影響191
7.4利用集成方法系統(tǒng)性地提升性能192
7.4.1bagging與子采樣192
7.4.2boosting193
7.5分類器評估195
7.5.1分割為訓練部分和測試部分196
7.5.2絕對準確率度量197
7.5.3面向分類和信息檢索的排序度量199
7.6本章小結204
7.7參考資料205
7.7.1boosting與對數幾率回歸的聯系205
7.7.2分類器評估205
7.7.3軟件資源206
7.7.4用于評估的數據集206
7.8習題206
第8章 結合異構數據的聯合文本挖掘208
8.1導論208
8.1.1本章內容組織結構210
8.2共享矩陣分解的技巧210
8.2.1分解圖210
8.2.2應用:結合文本和網頁鏈接進行共享分解211
8.2.3應用:結合文本與無向社交網絡214
8.2.4應用:結合文本的圖像遷移學習215
8.2.5應用:結合評分和文本的推薦系統(tǒng)217
8.2.6應用:跨語言文本挖掘218
8.3分解機219
8.4聯合概率建模技術223
8.4.1面向聚類的聯合概率模型223
8.4.2樸素貝葉斯分類器224
8.5到圖挖掘技術的轉換224
8.6本章小結226
8.7參考資料227
8.7.1軟件資源227
8.8習題228
第9章 信息檢索與搜索引擎229
9.1導論229
9.1.1本章內容組織結構230
9.2索引和查詢處理230
9.2.1詞典數據結構231
9.2.2倒排索引233
9.2.3線性時間的索引構建234
9.2.4查詢處理236
9.2.5效率優(yōu)化244
9.3信息檢索模型的評分248
9.3.1基于tf-idf的向量空間模型248
9.3.2二值獨立模型249
9.3.3使用詞項頻率的BM25模型251
9.3.4信息檢索中的統(tǒng)計語言模型252
9.4網絡爬蟲與資源發(fā)現254
9.4.1一個基本的爬蟲算法255
9.4.2帶偏好的爬蟲256
9.4.3多線程257
9.4.4避開蜘蛛陷阱258
9.4.5用于近似重復檢測的Shingling方法258
9.5搜索引擎中的查詢處理259
9.5.1分布式索引構建259
9.5.2動態(tài)索引更新260
9.5.3查詢處理260
9.5.4信譽度的重要性261
9.6基于鏈接的排序算法262
9.6.1PageRank262
9.6.2HITS267
9.7本章小結269
9.8參考資料269
9.8.1軟件資源270
9.9習題270
第10章 文本序列建模與深度學習272
10.1導論272
10.1.1本章內容組織結構274
10.2統(tǒng)計語言模型274
10.2.1skip-gram模型277
10.2.2與嵌入的關系278
10.3核方法279
10.4單詞-上下文矩陣分解模型 280
10.4.1使用計數的矩陣分解280
10.4.2GloVe嵌入282
10.4.3PPMI矩陣分解283
10.4.4位移PPMI矩陣分解283
10.4.5融入句法和其他特征283
10.5單詞距離的圖形化表示284
10.6神經語言模型285
10.6.1神經網絡簡介285
10.6.2基于word2vec的神經嵌入295
10.6.3word2vec(SGNS)是對數幾率矩陣分解302
10.6.4除了單詞以外:基于doc2vec的段落嵌入304
10.7循環(huán)神經網絡(RNN)305
10.7.1實際問題307
10.7.2RNN的語言建模示例308
10.7.3圖像描述應用310
10.7.4序列到序列學習與機器翻譯311
10.7.5句子級分類應用314
10.7.6使用語言特征的詞條級分類315
10.7.7多層循環(huán)網絡316
10.8本章小結319
10.9參考資料319
10.9.1軟件資源320
10.10習題321
第11章 文本摘要323
11.1導論323
11.1.1提取式摘要與抽象式摘要324
11.1.2提取式摘要中的關鍵步驟324
11.1.3提取式摘要中的分割階段324
11.1.4本章內容組織結構325
11.2提取式摘要的主題詞方法325
11.2.1詞項概率325
11.2.2歸一化頻率權重326
11.2.3主題簽名327
11.2.4句子選擇方法329
11.3提取式摘要的潛在方法329
11.3.1潛在語義分析330
11.3.2詞匯鏈331
11.3.3基于圖的方法332
11.3.4質心摘要333
11.4面向提取式摘要的機器學習334
11.4.1特征提取334
11.4.2使用哪種分類器335
11.5多文檔摘要335
11.5.1基于質心的摘要335
11.5.2基于圖的方法336
11.6抽象式摘要337
11.6.1句子壓縮337
11.6.2信息融合338
11.6.3信息排列338
11.7本章小結338
11.8參考資料339
11.8.1軟件資源339
11.9習題340
第12章 信息提取341
12.1導論341
12.1.1歷史演變343
12.1.2自然語言處理的角色343
12.1.3本章內容組織結構345
12.2命名實體識別345
12.2.1基于規(guī)則的方法346
12.2.2轉化為詞條級分類任務349
12.2.3隱馬爾可夫模型350
12.2.4最大熵馬爾可夫模型354
12.2.5條件隨機場355
12.3關系提取357
12.3.1轉換為分類問題357
12.3.2利用顯式的特征工程進行關系預測358
12.3.3利用隱式的特征工程進行關系預測:核方法361
12.4本章小結365
12.5參考資料365
12.5.1弱監(jiān)督學習方法366
12.5.2無監(jiān)督與開放式信息提取 366
12.5.3軟件資源367
12.6習題367
第13章 意見挖掘與情感分析368
13.1導論368
13.1.1意見詞典370
13.1.2把意見挖掘看作槽填充和信息提取任務371
13.1.3本章內容組織結構372
13.2文檔級情感分析372
13.2.1面向分類的無監(jiān)督方法374
13.3短語級與句子級情感分類375
13.3.1句子級與短語級分析的應用376
13.3.2主觀性分類到最小割問題的歸約376
13.3.3句子級與短語級極性分析中的上下文377
13.4把基于方面的意見挖掘看作信息提取任務377
13.4.1Hu和Liu的無監(jiān)督方法378
13.4.2OPINE:一種無監(jiān)督方法379
13.4.3把有監(jiān)督意見提取看作詞條級分類任務380
13.5虛假意見381
13.5.1面向虛假評論檢測的有監(jiān)督方法382
13.5.2面向虛假評論制造者檢測的無監(jiān)督方法384
13.6意見摘要384
13.6.1評分總結384
13.6.2情感總結385
13.6.3基于短語與句子的情感總結385
13.6.4提取式與抽象式總結385
13.7本章小結385
13.8參考資料385
13.8.1軟件資源387
13.9習題387
第14章 文本分割與事件檢測388
14.1導論388
14.1.1與話題檢測和追蹤的關系388
14.1.2本章內容組織結構389
14.2文本分割389
14.2.1TextTiling390
14.2.2C99方法390
14.2.3基于現成的分類器的有監(jiān)督的分割392
14.2.4基于馬爾可夫模型的有監(jiān)督的分割393
14.3文本流挖掘395
14.3.1流式文本聚類395
14.3.2面向首次報道檢測的應用 396
14.4事件檢測397
14.4.1無監(jiān)督的事件檢測397
14.4.2把有監(jiān)督的事件檢測看作有監(jiān)督的分割任務399
14.4.3把事件檢測看作一個信息提取問題399
14.5本章小結402
14.6參考資料402
14.6.1軟件資源402
14.7習題403
參考文獻404