發表於2024-12-19
1、原理講解通俗易懂
2、Java實現精彩詳實
3、應用案例真實有用
本書詳細介紹自然語言處理各主要領域的原理以Java 實現,包括中文分詞、詞性標注、依存句法分析等。其中詳細介紹瞭中文分詞和詞性標注的過程及相關算法,如隱馬爾可夫模型等。在自然語言處理的應用領域主要介紹瞭信息抽取、自動文摘、文本分類等領域的基本理論和實現過程,此外還有問答係統、語音識彆等目前應用非常廣泛的領域。在問答係統的介紹中,本書特地介紹瞭聊天機器人的實現過程,從句子理解、句法分析、同義詞提取等方麵揭示聊天機器人的實現原理。
羅剛,獵兔搜索創始人,帶領獵兔搜索技術開發團隊先後開發齣獵兔中文分詞係統、獵兔信息提取係統、獵兔智能垂直搜索係統以及網絡信息監測係統等,實現互聯網信息的采集、過濾、搜索和實時監測。曾編寫齣版《自己動手寫搜索引擎》、《自己動手寫網絡爬蟲》、《使用C#開發搜索引擎》,獲得廣泛好評。在北京和上海等地均有獵兔培訓的學員。張子憲,聊城大學教師、中國礦業大學(北京)博士生,研究方嚮:自動句法分析、機器翻譯。
第1章 應用自然語言處理技術 1
1.1 付齣與迴報 2
1.1.1 如何開始 2
1.1.2 招聘人員 2
1.1.3 學習 3
1.2 開發環境 3
1.3 技術基礎 4
1.3.1 Java 4
1.3.2 規則方法 5
1.3.3 統計方法 5
1.3.4 計算框架 5
1.3.5 文本挖掘 7
1.3.6 語義庫 7
1.4 本章小結 9
1.5 專業術語 9
第2章 中文分詞原理與實現 11
2.1 接口 12
2.1.1 切分方案 13
2.1.2 詞特徵 13
2.2 查找詞典算法 13
2.2.1 標準Trie樹 14
2.2.2 三叉Trie樹 18
2.2.3 詞典格式 26
2.3 最長匹配中文分詞 27
2.3.1 正嚮最大長度匹配法 28
2.3.2 逆嚮最大長度匹配法 33
2.3.3 處理未登錄串 39
2.3.4 開發分詞 43
2.4 概率語言模型的分詞方法 45
2.4.1 一元模型 47
2.4.2 整閤基於規則的方法 54
2.4.3 錶示切分詞圖 55
2.4.4 形成切分詞圖 62
2.4.5 數據基礎 64
2.4.6 改進一元模型 75
2.4.7 二元詞典 79
2.4.8 完全二叉樹組 85
2.4.9 三元詞典 89
2.4.10 N元模型 90
2.4.11 N元分詞 91
2.4.12 生成語言模型 99
2.4.13 評估語言模型 100
2.4.14 概率分詞的流程與結構 101
2.4.15 可變長N元分詞 102
2.4.16 條件隨機場 103
2.5 新詞發現 103
2.5.1 成詞規則 109
2.6 詞性標注 109
2.6.1 數據基礎 114
2.6.2 隱馬爾可夫模型 115
2.6.3 存儲數據 124
2.6.4 統計數據 131
2.6.5 整閤切分與詞性標注 133
2.6.6 大詞錶 138
2.6.7 詞性序列 138
2.6.8 基於轉換的錯誤學習方法 138
2.6.9 條件隨機場 141
2.7 詞類模型 142
2.8 未登錄詞識彆 144
2.8.1 未登錄人名 144
2.8.2 提取候選人名 145
2.8.3 最長人名切分 153
2.8.4 一元概率人名切分 153
2.8.5 二元概率人名切分 156
2.8.6 未登錄地名 159
2.8.7 未登錄企業名 160
2.9 平滑算法 160
2.10 機器學習的方法 164
2.10.1 最大熵 165
2.10.2 條件隨機場 170
2.11 有限狀態機 171
2.12 地名切分 178
2.12.1 識彆未登錄地名 179
2.12.2 整體流程 185
2.13 企業名切分 187
2.13.1 識彆未登錄詞 188
2.13.2 整體流程 190
2.14 結果評測 190
2.15 本章小結 191
2.16 專業術語 193
第3章 英文分析 194
3.1 分詞 194
3.1.1 句子切分 194
3.1.2 識彆未登錄串 197
3.1.3 切分邊界 198
3.2 詞性標注 199
3.3 重點詞匯 202
3.4 句子時態 203
3.5 本章小結 204
第4章 依存文法分析 205
4.1 句法分析樹 205
4.2 依存文法 211
4.2.1 中文依存文法 211
4.2.2 英文依存文法 220
4.2.3 生成依存樹 232
4.2.4 遍曆 235
4.2.5 機器學習的方法 237
4.3 小結 237
4.4 專業術語 238
第5章 文檔排重 239
5.1 相似度計算 239
5.1.1 夾角餘弦 239
5.1.2 最長公共子串 242
5.1.3 同義詞替換 246
5.1.4 地名相似度 248
5.1.5 企業名相似度 251
5.2 文檔排重 251
5.2.1 關鍵詞排重 251
5.2.2 SimHash 254
5.2.3 分布式文檔排重 268
5.2.4 使用文本排重 269
5.3 在搜索引擎中使用文本排重 269
5.4 本章小結 270
5.5 專業術語 270
第6章 信息提取 271
6.1 指代消解 271
6.2 中文關鍵詞提取 273
6.2.1 關鍵詞提取的基本方法 273
6.2.2 HITS算法應用於關鍵詞提取 275
6.2.3 從網頁中提取關鍵詞 277
6.3 信息提取 278
6.3.1 提取聯係方式 280
6.3.2 從互聯網提取信息 281
6.3.3 提取地名 282
6.4 拼寫糾錯 283
6.4.1 模糊匹配問題 285
6.4.2 正確詞錶 296
6.4.3 英文拼寫檢查 298
6.4.4 中文拼寫檢查 300
6.5 輸入提示 302
6.6 本章小結 303
6.7 專業術語 303
第7章 自動摘要 304
7.1 自動摘要技術 305
7.1.1 英文文本摘要 307
7.1.2 中文文本摘要 309
7.1.3 基於篇章結構的自動摘要 314
7.1.4 句子壓縮 314
7.2 指代消解 314
7.3 Lucene中的動態摘要 314
7.4 本章小結 317
7.5 專業術語 318
第8章 文本分類 319
8.1 地名分類 321
8.2 錯誤類型分類 321
8.3 特徵提取 322
8.4 關鍵詞加權法 326
8.5 樸素貝葉斯 330
8.6 貝葉斯文本分類 336
8.7 支持嚮量機 336
8.7.1 多級分類 345
8.7.2 規則方法 347
8.7.3 網頁分類 350
8.8 最大熵 351
8.9 信息審查 352
8.10 文本聚類 353
8.10.1 K均值聚類方法 353
8.10.2 K均值實現 355
8.10.3 深入理解DBScan算法 359
8.10.4 使用DBScan算法聚類實例 361
8.11 本章小結 363
8.12 專業術語 363
第9章 文本傾嚮性分析 364
9.1 確定詞語的褒貶傾嚮 367
9.2 實現情感識彆 368
9.3 本章小結 372
9.4 專業術語 373
第10章 問答係統 374
10.1 問答係統的結構 375
10.1.1 提取問答對 376
10.1.2 等價問題 376
10.2 問句分析 377
10.2.1 問題類型 377
10.2.2 句型 381
10.2.3 業務類型 381
10.2.4 依存樹 381
10.2.5 指代消解 383
10.2.6 二元關係 383
10.2.7 邏輯錶示 386
10.2.8 問句模闆 386
10.2.9 結構化問句模闆 389
10.2.10 檢索方式 390
10.2.11 問題重寫 395
10.2.12 提取事實 395
10.2.13 驗證答案 398
10.2.14 無答案的處理 398
10.3 知識庫 398
10.4 聊天機器人 399
10.4.1 交互式問答 401
10.4.2 垂直領域問答係統 402
10.4.3 語料庫 405
10.4.4 客戶端 405
10.5 自然語言生成 405
10.6 依存句法 406
10.7 提取同義詞 410
10.7.1 流程 410
10.8 本章小結 411
10.9 術語錶 412
第11章 語音識彆 413
11.1 總體結構 414
11.1.1 識彆中文 416
11.1.2 自動問答 417
11.2 語音庫 418
11.3 語音閤成 419
11.3.1 歸一化 420
11.4 語音 420
11.4.1 標注 424
11.4.2 相似度 424
11.5 Sphinx 424
11.5.1 中文訓練集 426
11.6 Julius 429
11.7 本章小結 429
11.8 術語錶 429
參考資源 430
後記 431
10.4 聊天機器人
離綫時,可以有個代替本人的自動對話係統來和來人對話。實現時,對每個人分彆建立慣用法。例如對肯定答復,有人喜歡說:好的呀;有人喜歡說:可以。根據對話曆史記錄對個人畫像。
對話任務是由一係列的對話行為(Dialogue Act簡稱DA)組成的,如提問——迴答——確認。
對話行為(Dialog Act)是指一個語句在“行為”方麵的功能,如提問(Question)、陳述(Statement)、確認(Confirmation)等。事實上,人們在對話過程中可以很清楚地區分各種不同的對話行為(DA),這樣,人與人之間纔可以“交談”,不會齣現“文不對題”、“牛頭不對馬嘴”的現象。因此,人機交互中,如果係統能夠知道用戶語句的“對話行為”,對於理解用戶語句,保持人機交流是非常有用的。
航班信息係統EasyFlight是一個特定領域的對話應用,其中的對話行為(DA)比較簡單,涉及到係統用戶的對話行為主要有以下幾種。
? 提問(Question):提問是用戶使用最多的一種對話行為。通過提問,用戶告訴係統自己需要什麼樣的信息。與英語不同,漢語中的問句沒有嚴格的語序要求,疑問詞的選擇十分靈活,疑問詞的位置幾乎可以在句子的任何地方。EasyFlight中的提問主要有兩種情況:一種是有明確的疑問詞,如“什麼”、“哪些”、“多少”、“有沒有”;另一種語句很難找到一個真正的疑問詞,但它有語氣助詞,如這個句子——“後天有從深圳迴北京的票嗎?”
? 陳述(Statement):用戶迴答係統提問時常用的一種對話行為,常用於給齣查詢信息,如“大概中午十二點左右的”。
? 確認(Confirmation):確認分為兩種:肯定確認和否定確認,如“對,訂三張票”。
? 問候(Greeting):引導對話開始的對話行為,如“您好”。
? 感謝和再見(Thank&GoodBye;):錶示對話結束的對話行為,如“謝謝幫忙”。
對話行為分類的研究中,一般使用基於文字信息的方法,如用N-gram的方法;而利用韻律信息是另外一種對話行為分類的方法。有些情況下,僅僅從文字上難以區分對話行為,如下麵兩個句子:
? 他拿瞭第一名。(陳述)
? 他拿瞭第一名?(反問)
這兩個句子文字上完全相同,卻是截然不同的兩種對話行為(DA)。前一句話隻是簡單地陳述一個事實;而後麵一句卻包含瞭強烈的反問語氣,錶明說話人不太相信這個事實,希望對話的另一方給齣解釋或者說明,而且說話人強調的內容不同也可以反映他懷疑的內容不同(如強調“他”錶示說話人不相信第一名是他,而強調“第一名”錶示不相信他會取得那麼好的成績)。這時候,韻律是最好的特徵,它可以反映說話人的不同語氣,從而區分對話行為。
對話管理器(Dialogue Manager簡稱DM)記錄當前對話狀態,DM根據輸入對話行為更新狀態並選擇迴應對話行為。
聊天機器人Alice有40,000多個模闆,也是采用瞭模式匹配的方法來檢索最閤適的迴答。使用Artificial Intelligence Markup Language(簡稱為AIML)存儲模式,也就是問答對。Alice采用瞭一種很好的擴充機製,AIML文件可以進行內聯,許多包含特殊領域知識的AIML文件可以方便地閤並成一個更大的知識庫。
AIML的例子:
我叫小薇
模闆中可以使用變量,例如:
我叫
Think是一個模闆標簽,錶示執行指令但是不輸齣答案。例如,執行加法的例子:
AIML相關的實現見https://github.com/dawnofmusic/Elsbeth。
例如,詢問天氣,係統根據用戶的IP地址或者手機所在位置得到提問者的位置。係統返迴最近多少天的天氣信息。用戶進一步可以更改要查詢的城市。
把用戶輸入的拼音串轉換成漢字,或者把繁體中文轉換成簡體中文。
給機器人說:“翻譯,how old are you.”,機器人應該能夠返迴一個翻譯結果。
目前,互聯網上的信息迅速膨脹,要想從中找齣需要的信息就需要使用搜索引擎,你是否知道搜索引擎的工作原理?它到底如何對諸如漢語這樣的文字進行加工、然後反饋齣需要的結果?像這樣的語言處理問題都會在本書中找到答案。即使在計算機專業,也有很多人對這個學科很陌生。因此,本書藉助流行的Java語言介紹自然語言處理的各個領域,希望為推動相關應用的發展做齣貢獻。
本書的編者在自然語言處理教學和軟件開發過程中積纍的經驗融入到本書的各個環節,讀者會因此感到原理和實際應用結閤得非常緊密。編者的實踐經驗還體現在相關的其他書中,如《自己動手寫搜索引擎》《自己動手寫網絡爬蟲》《自己動手寫網絡爬蟲》《使用C#開發搜索引擎》《解密搜索引擎技術實戰》等。
有一些自然語言處理的開發原理與技巧在專業的公司內部秘而不宣。理論與實踐結閤的專門講自然語言處理的書籍仍然相對較少。本書嘗試先介紹原理,接著是具體的代碼實現分析。本書相關的代碼在讀者QQ群(499526946)中的共享文件中可以找到。
國外有的基礎課程從“構建搜索引擎”開始介紹計算機科學。我們的相關培訓課程已經這樣做瞭。當年參加過培訓的學員,有些已經創業成功或者成為公司的技術骨乾。要根據培訓經驗寫齣很好的自學教程,我們還有很多工作要做。零基礎自學的讀者,可能還需要其他方式來補足。
自然語言處理開發崗位比較少。如果能夠花若乾年開寫齣自己的軟件産品,那麼就可以閤夥創業瞭。這個過程對很多人來說,往往太漫長。像老外那樣把冰箱放滿匹薩餅和可樂,然後就開始乾活,這樣往往行不通,因為那樣吃不瞭幾天。可以買好能夠保存幾十年的榖子、水培可以吃若乾年的韭菜。
就好像放在水裏的韭菜種子,剛開始幾天根本看不到變化,學習是個循序漸進的過程。可以在讀者群中共同學習。
感謝開源軟件和我們的傢人,關心我們的老師和朋友們、創業夥伴,以及選擇獵兔自然語言處理軟件的客戶多年來的支持。
特彆提醒大傢:經常麵對電腦,容易阻塞氣血。往往並沒有免費的程序員保健師幫忙,所以需要自己多壓腿,拉伸身體。多做腹部運動,減少腹部脂肪堆積,避免脂肪肝等疾病。此外,還可以拍打身體,例如腋下、臂彎、膕窩等關節凹下去的地方。
長時間對著散發藍光的電腦屏幕容易失眠。為瞭提高睡眠質量,可以經常吃小米、藕、蝦皮、雞蛋等,喝決明子、玉蘭花、熏衣草、絞股藍等花草茶。
自然語言處理原理與技術實現 下載 mobi pdf epub txt 電子書 格式 2024
自然語言處理原理與技術實現 下載 mobi epub pdf 電子書活動湊單買的,非常劃算,買書一直選擇京東,贊一個!!!
評分一次性買瞭很多書,物流一如既往的快,反正我也不著急用,可是我一下買瞭幾十本書這可怎麼讓我評價呀,哎,纍死瞭
評分寫的不錯,基本原理及相關處理方法講解的不錯
評分書特彆好,很實用,對自己的學習幫助很大,希望這本書能讓我對自然語言處理入門吧
評分好理解
評分好評好評!!!!!!!
評分送貨速度很快,上午買的下午就到瞭,書有塑封,是正版,印刷質量很好,贊~
評分前幾天就收到書瞭,大概看瞭纔來評價的
評分這本書專業內容還是比較多的!對於剛接觸大數據的人來說有些過於專業瞭!很多內容根本看不懂!開篇和最後的部分還可以!
自然語言處理原理與技術實現 mobi epub pdf txt 電子書 格式下載 2024