易燃物匯聚 YouTube 有聲書與書評
自然語言處理與計算語言學 封面

自然語言處理與計算語言學

格夫·斯里尼瓦薩-德西坎

662人在讀
19.6萬字總字數
¥37.76定價

內容簡介

自然語言處理是一門融語言學、計算機科學、數學於一體的科學,研究人與計算機之間用自然語言進行有效通信的各種理論和方法。計算語言學是指通過建立形式化的數學模型來分析、處理自然語言,並在計算機上用程序來實現分析和處理的過程,旨在以機器來模擬人的部分或全部語言能力的目的。 《自然語言處理與計算語言學》作爲一本藉助於Python編程語言以及各種開源工具(如Gensim、spaCy等)來執行文本分析、自然語言處理和計算語言學算法的圖書,從應用層面介紹了相關的理論知識和所涉及的技術。《自然語言處理與計算語言學》共分爲15章,其內容涵蓋了文本分析的定義、使用Python進行文本分析的技巧、spaCy語言模型、Gensim工具、詞性標註及其應用、NER標註及其應用、依存分析、主題模型、高級主題建模、文本聚類和文本分類、查詢詞相似度計算和文本摘要、詞嵌入、使用深度學習處理文本、使用Keras和spaCy進行深度學習、情感分析與聊天機器人的原理介紹等。 《自然語言處理與計算語言學》適合對自然語言處理的實現細節感興趣的Python程序開發人員閱讀。如果讀者具備統計學的基本知識,對學習本書內容會大有裨益。

讀者書評

★★★★★

《自然語言處理與計算語言學》核心拆解 一句話概括 這是一本以Python、spaCy和Gensim爲主要工具的自然語言處理實戰入門書,沿着“清洗文本—分析語言結構—向量化表示—發現主題與類別—構建應用”的路線,幫助讀者把非結構化語言轉換成可計算、可建模的信息。 核心邏輯 全書的主線,是將人類語言逐層轉換爲機器能夠處理的表示。 第一步是獲取並整理文本。作者從文本分析的用途、數據蒐集和“垃圾進、垃圾出”原則講起,強調數據質量決定後續分析的上限,再介紹Python中的字符串、列表及基礎文本操作。 第二步是加入語言學結構。藉助spaCy完成分詞、詞性標註、命名實體識別、規則匹配和依存分析,把連續文本拆解成帶有語法和語義標籤的結構化對象。 第三步是把文本表示成向量。通過詞袋模型、TF-IDF、n-gram、Word2Vec和Doc2Vec等方法,將詞語和文檔映射到數值空間,使相似度計算、聚類、分類和檢索成爲可能。 第四步是從語料中發現模式。主題模型用於尋找文檔集合中的潛在主題,聚類在缺乏標籤時自動形成文本羣組,分類則利用已標註數據預測類別,摘要和相似度計算負責壓縮、匹配與檢索信息。 第五步是擴展到深度學習和實際應用。書末介紹Keras與spaCy的深度學習接口,並把前面的能力組合到情感分析、社交媒體數據挖掘、文本生成和聊天機器人之中。 核心內容 1. 文本分析的起點是數據,而不是算法 自然語言數據往往包含噪聲、拼寫變化、符號、停用詞和格式差異。採集範圍、樣本偏差和清洗規則會直接影響結論。“垃圾進、垃圾出”意味着,再複雜的模型也不能自動彌補錯誤或失真的語料。一個可靠項目應先定義問題、數據來源和評價方式,再選擇工具。 2. 預處理是語言與模型之間的接口 分詞把文本切分爲基本單位;詞形還原將不同變體映射到共同形式;停用詞過濾、大小寫統一和標點處理降低無關差異;n-gram保留連續詞組信息。預處理並非固定配方:情感分析中的否定詞、實體識別中的大小寫、作者風格分析中的標點,都可能是重要信號。 3. 語言學標註讓文本獲得結構 詞性標註回答一個詞在句中承擔什麼語法角色;命名實體識別人名、地點、機構、時間等現實對象;依存分析描述詞語之間的修飾和支配關係;規則匹配則把業務知識寫成可執行模式。這些能力既可以直接服務信息抽取,也可以爲分類、問答和知識組織提供特徵。 4. 向量化決定機器如何比較文本 詞袋模型只記錄詞語是否出現及出現次數,簡單但忽略詞序;TF-IDF降低高頻通用詞的權重,突出對某篇文檔更有區分度的詞;n-gram補充局部順序;Word2Vec、GloVe和FastText等詞嵌入,則根據上下文關係學習稠密向量,使語義接近的詞在空間中彼此靠近。Doc2Vec進一步嘗試表示整篇文檔。 5. 主題模型用於探索沒有標籤的大規模語料 LDA把每篇文檔看成多個主題的混合,並把每個主題表示爲一組詞的概率分佈;LSI通過降維提取潛在語義結構;HDP嘗試從數據中推斷主題數量;動態主題模型用於觀察主題隨時間變化。主題結果不應只憑詞表主觀命名,還需要結合主題一致性、穩定性、可視化和具體業務用途進行評估。 6. 聚類、分類、相似度和摘要解決不同問題 K-means和層次聚類適合在缺乏標籤時探索文檔分組;監督分類使用已有標籤預測新文本類別;餘弦相似度等距離指標衡量查詢與文檔或文檔之間的接近程度;抽取式摘要則從原文中挑選重要句子。它們共享向量表示,但目標、數據條件和評價標準並不相同。 7. 深度學習降低了人工特徵設計的依賴 傳統流程通常依賴手工選擇詞頻、詞性和句法特徵,神經網絡則能夠從序列和上下文中自動學習表示。書中通過Keras和spaCy介紹文本分類、文本生成等任務,並延伸到情感分析、社交媒體挖掘與聊天機器人,展示如何將預處理、表示學習和任務模型連接起來。 本書最值得關注的核心觀點 1. 自然語言處理本質上是一條多層轉換流水線 原始文本先被清洗和切分,再獲得詞性、實體和依存關係等結構,隨後變成向量,最後才進入統計模型或神經網絡。任何一層的信息損失或錯誤,都會向下遊傳播。理解整條流水線,比只會調用一個模型更重要。 2. 統計表示與語言學知識並不是互相排斥的路線 詞頻、TF-IDF和詞向量善於從數據中發現分佈規律,詞性、實體和依存關係則提供可解釋的語言結構。真實項目往往需要把二者結合起來:既利用語料統計,又通過規則或語言知識約束結果。 3. 無監督模型給出的是候選結構,不是最終答案 主題模型和聚類能夠幫助人發現語料中的模式,但“主題是什麼”“分組是否有意義”仍取決於領域背景、參數選擇和人工驗證。模型輸出應被視爲探索工具,而不是自動生成的客觀事實。 4. 工具能夠降低門檻,但不能代替問題定義和評估 spaCy、Gensim、scikit-learn和Keras讓複雜算法可以通過少量代碼運行,但項目成敗仍取決於數據是否代表現實、標籤是否一致、指標是否匹配業務目標,以及錯誤是否經過分析。 5. 閱讀本書需要區分長期原理與具體工具版本 本書的長期價值在於文本處理流水線、語言學標註、向量空間、主題建模和分類聚類等基本思想。書中部分spaCy、Gensim和Keras接口已具有時代性,且整體偏工具入門、算法推導較少;今天實踐時應查閱新版文檔,並補充Transformer、上下文嵌入和大語言模型相關知識。 一段話總結 《自然語言處理與計算語言學》以Python爲基礎,以spaCy、Gensim、scikit-learn和Keras等開源工具爲載體,系統展示瞭如何把自然語言從非結構化文本轉變爲能夠分析和建模的數據:先完成採集、清洗、分詞與預處理,再用詞性標註、命名實體識別、規則匹配和依存分析提取語言結構;隨後通過詞袋、TF-IDF、n-gram、Word2Vec和Doc2Vec建立數值表示,並將這些表示用於主題模型、文本聚類與分類、相似度計算、自動摘要、文本生成、情感分析和聊天機器人。全書最重要的啓示是,自然語言處理並不是調用某個算法就能完成的單一步驟,而是一條由數據質量、語言結構、文本表示、模型選擇和結果評估共同組成的流水線;工具可以降低實現門檻,卻不能替代清晰的問題定義、合理的數據處理和嚴格的效果驗證。雖然部分代碼接口和技術生態已經更新,書中關於“如何逐層把語言轉換爲可計算信息”的方法仍具有基礎價值。

★★★★★

挺不錯的NLP書籍,幫助我理清了很多概念。

★☆☆☆☆

剛看這本書時感覺寫的很通俗易懂,本以爲是本好書。 看到後面發現了幾處問題: 1.在4.6小節中的“列表的列表” 應翻譯爲 “二維列表”或者“嵌套列表” 2.在5.3小節中的sent_3句子是“Marie took out her rather suspicious and fishy cat to go fish for fish.”,而在後面的詞性標註結果中沒有“go”這個單詞。推測是sent_3中多了一個"go"。此外,在代碼結果中"fishy"被標註爲‘ADJ’。而作者卻在後文寫到“單詞fishy被標記爲副詞,第一個原因是因爲緊跟其後的單詞詞性是名詞”。代碼標註結果是“ADJ”,fishy這個詞也沒有副詞用法,怎麼能說“被標記爲副詞“呢? 3.在7.1小節中,說到“它的正式提出則歸功於Noam Chomsky,他被認爲是語言學之父。”這句話有問題。 語言學之父是索緒爾!Noam Chomsky被稱爲轉換生成語法之父還差不多。 看到這個錯誤後,後面的內容也沒有看下去的想法了。

★☆☆☆☆

全書通篇都是工具的入門使用 沒涉及算法原理 全書都在說spacy gensim的幾個簡單的使用[大兵]

書籍信息

作者格夫·斯里尼瓦薩-德西坎
譯者何煒
出版社人民郵電出版社
出版時間2020-08-01
ISBN9787115540249
分類計算機-軟件學習
格式EPUB
完結狀態連載中
章節數116