出版時(shí)間:2011-5-13 出版社:電子工業(yè)出版社 作者:羅剛
Tag標(biāo)簽:無
內(nèi)容概要
本書是獵兔搜索開發(fā)團(tuán)隊(duì)的軟件研發(fā)和教學(xué)實(shí)踐的經(jīng)驗(yàn)匯總。
本書總結(jié)搜索引擎相關(guān)理論與實(shí)際解決方案,并給出了Java實(shí)現(xiàn),其中利用了流行的開源項(xiàng)目Lucene和Solr,而且還包括原創(chuàng)的實(shí)現(xiàn)。
主要包括總體介紹部分、爬蟲部分、自然語(yǔ)言處理部分、全文檢索部分以及相關(guān)案例分析。
爬蟲部分介紹了網(wǎng)頁(yè)遍歷方法和如何實(shí)現(xiàn)增量抓取。并介紹了從網(wǎng)頁(yè)等各種格式的文檔中提取主要內(nèi)容的方法。
自然語(yǔ)言處理部分從統(tǒng)計(jì)機(jī)器學(xué)習(xí)的原理出發(fā),包括了中文分詞與詞性標(biāo)注的理論與實(shí)現(xiàn)以及在搜索引擎中的實(shí)用等細(xì)節(jié)。
同時(shí)對(duì)文檔排重、文本分類、自動(dòng)聚類、句法分析樹、拼寫檢查等自然語(yǔ)言處理領(lǐng)域的經(jīng)典問題做出了深入淺出的介紹并總結(jié)了實(shí)現(xiàn)方法。
在全文檢索部分,結(jié)合Lucene3.0介紹了搜索引擎的原理與進(jìn)展。用簡(jiǎn)單的例子介紹了Lucene的最新應(yīng)用方法。包括完整的搜索實(shí)現(xiàn)過程:從完成索引到搜索用戶界面的實(shí)現(xiàn)。本書還進(jìn)一步介紹了實(shí)現(xiàn)準(zhǔn)實(shí)時(shí)搜索的方法。
展示了Solr1.4版本的用法以及實(shí)現(xiàn)分布式搜索服務(wù)集群的方法。
最后介紹了在地理信息系統(tǒng)領(lǐng)域和戶外活動(dòng)搜索領(lǐng)域的應(yīng)用。
作者簡(jiǎn)介
獵兔搜索(http://www.lietu.com)創(chuàng)始人,當(dāng)前獵兔搜索在北京和上海均設(shè)有研發(fā)部。帶領(lǐng)獵兔搜索技術(shù)開發(fā)團(tuán)隊(duì)先后開發(fā)出獵兔中文分詞系統(tǒng)、獵兔信息提取系統(tǒng)、獵兔智能垂直搜索系統(tǒng)以及網(wǎng)絡(luò)信息監(jiān)測(cè)系統(tǒng)等,實(shí)現(xiàn)互聯(lián)網(wǎng)信息的采集、過濾、搜索和實(shí)時(shí)監(jiān)測(cè)。
書籍目錄
第1章 搜索引擎總體結(jié)構(gòu) 1
1.1 搜索引擎基本模塊 2
1.2 開發(fā)環(huán)境 3
1.3 搜索引擎工作原理 4
1.3.1 網(wǎng)絡(luò)爬蟲 5
1.3.2 全文索引結(jié)構(gòu)與Lucene實(shí)現(xiàn) 5
1.3.3 搜索用戶界面 10
1.3.4 計(jì)算框架 10
1.3.5 文本挖掘 11
1.4 本章小結(jié) 12
第2章 網(wǎng)絡(luò)爬蟲的原理與應(yīng)用 13
2.1 爬蟲的基本原理 13
2.2 爬蟲架構(gòu) 16
2.2.1 基本架構(gòu) 16
2.2.2 分布式爬蟲架構(gòu) 19
2.2.3 垂直爬蟲架構(gòu) 20
2.3 抓取網(wǎng)頁(yè) 20
2.3.1 下載網(wǎng)頁(yè)的基本方法 21
2.3.2 網(wǎng)頁(yè)更新 25
2.3.3 抓取限制應(yīng)對(duì)方法 27
2.3.4 URL地址提取 29
2.3.5 抓取JavaScript動(dòng)態(tài)頁(yè)面 29
2.3.6 抓取即時(shí)信息 32
2.3.7 抓取暗網(wǎng) 33
2.3.8 信息過濾 34
2.3.9 最好優(yōu)先遍歷 41
2.4 存儲(chǔ)URL地址 42
2.4.1 BerkeleyDB 43
2.4.2 布隆過濾器 45
2.5 并行抓取 47
2.5.1 多線程爬蟲 48
2.5.2 垂直搜索的多線程爬蟲 50
2.5.3 異步IO 52
2.6 RSS抓取 56
2.7 抓取FTP 58
2.8 下載圖片 59
2.9 圖像的OCR識(shí)別 59
2.9.1 圖像二值化 60
2.9.2 切分圖像 63
2.9.3 SVM分類 67
2.10 Web結(jié)構(gòu)挖掘 71
2.10.1 存儲(chǔ)Web圖 72
2.10.2 PageRank算法 76
2.10.3 HITs算法 84
2.10.4 主題相關(guān)的PageRank 88
2.11 部署爬蟲 90
2.12 本章小結(jié) 90
第3章 索引內(nèi)容提取 93
3.1 從HTML文件中提取文本 93
3.1.1 字符集編碼 93
3.1.2 識(shí)別網(wǎng)頁(yè)的編碼 96
3.1.3 網(wǎng)頁(yè)編碼轉(zhuǎn)換為字符串編碼 98
3.1.4 使用HTMLParser實(shí)現(xiàn)定向抓取 99
3.1.5 使用正則表達(dá)式提取數(shù)據(jù) 104
3.1.6 結(jié)構(gòu)化信息提取 106
3.1.7 網(wǎng)頁(yè)的DOM結(jié)構(gòu) 109
3.1.8 使用NekoHTML提取信息 111
3.1.9 網(wǎng)頁(yè)去噪 117
3.1.10 網(wǎng)頁(yè)結(jié)構(gòu)相似度計(jì)算 122
3.1.11 提取標(biāo)題 124
3.1.12 提取日期 126
3.2 從非HTML文件中提取文本 126
3.2.1 提取標(biāo)題的一般方法 127
3.2.2 PDF文件 132
3.2.3 Word文件 135
3.2.4 Rtf文件 137
3.2.5 Excel文件 149
3.2.6 PowerPoint文件 152
3.3 提取垂直行業(yè)信息 153
3.3.1 醫(yī)療行業(yè) 153
3.3.2 旅游行業(yè) 153
3.4 流媒體內(nèi)容提取 154
3.4.1 音頻流內(nèi)容提取 154
3.4.2 視頻流內(nèi)容提取 158
3.5 存儲(chǔ)提取內(nèi)容 159
3.6 本章小結(jié) 160
第4章 中文分詞原理與實(shí)現(xiàn) 162
4.1 Lucene中的中文分詞 162
4.1.1 Lucene切分原理 162
4.1.2 Lucene中的Analyzer 164
4.1.3 自己寫Analyzer 167
4.1.4 Lietu中文分詞 170
4.2 查找詞典算法 170
4.2.1 標(biāo)準(zhǔn)Trie樹 171
4.2.2 三叉Trie樹 174
4.3 中文分詞的原理 179
4.4 中文分詞流程與結(jié)構(gòu) 183
4.5 形成切分詞圖 184
4.6 概率語(yǔ)言模型的分詞方法 191
4.7 N元分詞方法 195
4.8 新詞發(fā)現(xiàn) 198
4.9 未登錄詞識(shí)別 199
4.10 詞性標(biāo)注 200
4.10.1 隱馬爾可夫模型 204
4.10.2 基于轉(zhuǎn)換的錯(cuò)誤學(xué)習(xí)方法 214
4.11 平滑算法 216
4.12 機(jī)器學(xué)習(xí)的方法 220
4.12.1 最大熵 221
4.12.2 條件隨機(jī)場(chǎng) 224
4.13 有限狀態(tài)機(jī) 224
4.14 本章小結(jié) 232
第5章 讓搜索引擎理解自然語(yǔ)言 233
5.1 停用詞表 233
5.2 句法分析樹 235
5.3 相似度計(jì)算 240
5.4 文檔排重 244
5.4.1 語(yǔ)義指紋 245
5.4.2 SimHash 248
5.4.3 分布式文檔排重 259
5.5 中文關(guān)鍵詞提取 260
5.5.1 關(guān)鍵詞提取的基本方法 260
5.5.2 HITS算法應(yīng)用于關(guān)鍵詞提取 262
5.5.3 從網(wǎng)頁(yè)中提取關(guān)鍵詞 265
5.6 相關(guān)搜索詞 265
5.6.1 挖掘相關(guān)搜索詞 265
5.6.2 使用多線程計(jì)算相關(guān)搜索詞 268
5.7 信息提取 269
5.8 拼寫檢查與建議 274
5.8.1 模糊匹配問題 276
5.8.2 英文拼寫檢查 279
5.8.3 中文拼寫檢查 281
5.9 自動(dòng)摘要 284
5.9.1 自動(dòng)摘要技術(shù) 284
5.9.2 自動(dòng)摘要的設(shè)計(jì) 285
5.9.3 基于篇章結(jié)構(gòu)的自動(dòng)摘要 291
5.9.4 Lucene中的動(dòng)態(tài)摘要 291
5.10 文本分類 295
5.10.1 特征提取 297
5.10.2 中心向量法 300
5.10.3 樸素貝葉斯 303
5.10.4 支持向量機(jī) 313
5.10.5 多級(jí)分類 322
5.10.6 規(guī)則方法 324
5.10.7 網(wǎng)頁(yè)分類 327
5.11 自動(dòng)聚類 327
5.11.1 聚類的定義 327
5.11.2 K均值聚類方法 327
5.11.3 K均值實(shí)現(xiàn) 329
5.11.4 深入理解DBScan算法 335
5.11.5 使用DBScan算法聚類實(shí)例 336
5.12 拼音轉(zhuǎn)換 338
5.13 概念搜索 339
5.14 多語(yǔ)言搜索 348
5.15 跨語(yǔ)言搜索 349
5.16 情感識(shí)別 350
5.16.1 確定詞語(yǔ)的褒貶傾向 353
5.16.2 實(shí)現(xiàn)情感識(shí)別 355
5.16.3 用戶協(xié)同過濾 356
5.17 本章小結(jié) 358
第6章 Lucene原理與應(yīng)用 359
6.1 Lucene深入介紹 359
6.1.1 常用查詢 359
6.1.2 查詢語(yǔ)法與解析 361
6.1.3 查詢?cè)?365
6.1.4 使用Filter篩選搜索結(jié)果 366
6.1.5 索引庫(kù)中的高頻成分 367
6.1.6 索引數(shù)值列 367
6.2 Lucene中的壓縮算法 370
6.2.1 變長(zhǎng)壓縮 370
6.2.2 PForDelta 372
6.2.3 前綴壓縮 375
6.2.4 差分編碼 376
6.2.5 設(shè)計(jì)索引庫(kù)結(jié)構(gòu) 379
6.3 創(chuàng)建和維護(hù)索引庫(kù) 380
6.3.1 創(chuàng)建索引庫(kù) 380
6.3.2 向索引庫(kù)中添加索引文檔 380
6.3.3 刪除索引庫(kù)中的索引文檔 384
6.3.4 更新索引庫(kù)中的索引文檔 384
6.3.5 索引的合并 385
6.3.6 索引文件格式 386
6.3.7 分發(fā)索引 388
6.3.8 修復(fù)索引 391
6.4 查找索引庫(kù) 391
6.4.1 排序 392
6.5 讀寫并發(fā)控制 392
6.6 優(yōu)化使用Lucene 393
6.6.1 索引優(yōu)化 393
6.6.2 查詢優(yōu)化 394
6.6.3 實(shí)現(xiàn)時(shí)間加權(quán)排序 397
6.6.4 實(shí)現(xiàn)字詞混合索引 400
6.6.5 重用Tokenizer 405
6.6.6 定制Tokenizer 405
6.7 檢索模型 407
6.7.1 向量空間模型 408
6.7.2 BM25概率模型 412
6.7.3 統(tǒng)計(jì)語(yǔ)言模型 418
6.8 查詢大容量索引 419
6.9 實(shí)時(shí)搜索 420
6.10 本章小結(jié) 421
第7章 搜索引擎用戶界面 422
7.1 實(shí)現(xiàn)Lucene搜索 422
7.2 搜索頁(yè)面設(shè)計(jì) 423
7.2.1 Struts2實(shí)現(xiàn)的搜索界面 424
7.2.2 翻頁(yè)組件 424
7.3 實(shí)現(xiàn)搜索接口 425
7.3.1 編碼識(shí)別 425
7.3.2 布爾搜索 429
7.3.3 指定范圍搜索 429
7.3.4 搜索結(jié)果排序 430
7.3.5 搜索頁(yè)面的索引緩存與更新 431
7.4 歷史搜索詞記錄 432
7.5 實(shí)現(xiàn)關(guān)鍵詞高亮顯示 433
7.6 實(shí)現(xiàn)分類統(tǒng)計(jì)視圖 435
7.7 實(shí)現(xiàn)相似文檔搜索 441
7.8 實(shí)現(xiàn)AJAX搜索聯(lián)想詞 443
7.8.1 估計(jì)查詢?cè)~的文檔頻率 443
7.8.2 搜索聯(lián)想詞總體結(jié)構(gòu) 444
7.8.3 服務(wù)器端處理 444
7.8.4 瀏覽器端處理 446
7.8.5 服務(wù)器端改進(jìn) 451
7.8.6 拼音提示 454
7.8.7 部署總結(jié) 455
7.9 集成其他功能 455
7.9.1 拼寫檢查 455
7.9.2 分類統(tǒng)計(jì) 456
7.9.3 相關(guān)搜索 458
7.9.4 再次查找 462
7.9.5 搜索日志 462
7.10 搜索日志分析 464
7.10.1 日志信息過濾 464
7.10.2 信息統(tǒng)計(jì) 465
7.10.3 挖掘日志信息 468
7.11 本章小結(jié) 469
第8章 使用Solr實(shí)現(xiàn)企業(yè)搜索 470
8.1 Solr簡(jiǎn)介 470
8.2 Solr基本用法 471
8.2.1 Solr服務(wù)器端的配置與中文支持 472
8.2.2 把數(shù)據(jù)放進(jìn)Solr 477
8.2.3 刪除數(shù)據(jù) 479
8.2.4 Solr客戶端與搜索界面 480
8.2.5 Solr索引庫(kù)的查找 482
8.2.6 索引分發(fā) 486
8.2.7 Solr搜索優(yōu)化 489
8.3 從FAST Search移植到Solr 492
8.4 Solr擴(kuò)展與定制 493
8.4.1 Solr中字詞混合索引 493
8.4.2 相關(guān)檢索 496
8.4.3 搜索結(jié)果去重 498
8.4.4 定制輸入輸出 501
8.4.5 分布式搜索 506
8.4.6 SolrJ查詢分析器 508
8.4.7 擴(kuò)展SolrJ 517
8.4.8 擴(kuò)展Solr 518
8.4.9 查詢Web圖 522
8.5 Solr的.net客戶端 525
8.6 Solr的PHP客戶端 527
8.7 本章小結(jié) 530
第9章 地理信息系統(tǒng)案例分析 531
9.1 新聞提取 531
9.2 POI信息提取 536
9.2.1 提取主體 537
9.2.2 提取地區(qū) 538
9.2.3 指代消解 540
9.3 本章小結(jié) 542
第10章 戶外活動(dòng)搜索案例分析 543
10.1 爬蟲 543
10.2 信息提取 544
10.3 搜索 547
10.4 本章小結(jié) 547
參考資源 548
書籍 548
網(wǎng)址 548
圖書封面
圖書標(biāo)簽Tags
無
評(píng)論、評(píng)分、閱讀與下載
解密搜索引擎技術(shù)實(shí)戰(zhàn) PDF格式下載