自然語言處理必讀:5本平衡理論與實踐的書籍
本文轉載自公眾號“讀芯術”(ID:AI_Discovery)。
當談到學習方法時,我們常常會提到教程、博客文章、在線課程等等,書本總是會被忽略掉。即使是在找一本關于某個主題的書,也會很快發現這樣的書太多了,無法快速判斷哪一本最適合自己。
為了幫助你解決問題,我幫你選擇5本關于自然語言處理的書,不像其他的書單,除了第一本之外,這些書都不是免費的,但事實證明它們是值得投資的,希望能對大家有所幫助。
1. 應用Python進行自然語言處理(Natural Language Processing with Python)
本書由Steven Bird, Ewan Klein 和 Edward Loper編寫,你可以從Python系統的角度學習自然語言處理的實用基礎知識,更適合初學者。它也稱為NLTK書籍,應用Python進行自然語言處理在整個過程中都很大程度上依賴于NLTK庫。以下摘自這本書的序言:
“本書對NLP領域介紹通俗易懂。它可以用于個人學習,也可以作為自然語言處理或計算語言學課程的教科書,或者作為人工智能、文本挖掘或語料庫語言學課程的補充。本書非常實用,包含數百個例子和分級練習。本書適合所有人,無論以前的編程經驗如何,只要你想學如何編程并分析書面語言,就可以讀它。”
如上所述,這本書絕對實用。雖然你肯定會在進行過程中得到概念解釋,但毫無疑問,這本書的確是為那些希望用Python實現NLP解決方案的人而設計的。
2. 使用PyTorch進行自然語言處理(NaturalLanguage Processing with PyTorch)
本書的作者是Delip Rao和Brian McMahan,其中并沒有介紹NLP領域的傳統技術,而是介紹了如今使用的神經網絡。這門學科的另一種實用方法是使用PyTorch進行自然語言處理,將神經網絡應用于NLP中。
從這本書的網站你可以直接看到一些主題,包括:
- 探索計算圖表和監督學習范式
- 掌握PyTorch優化張量操作庫的基礎知識
- 對傳統的NLP概念和方法進行概述
- 學習建立神經網絡的基本概念
- 使用嵌入來表示單詞、句子、文檔和其他特性
- 探索序列預測并生成Seq2seq模型
- 學習構建生產NLP系統的設計模式
從更傳統的(基于非神經網絡)NLP技術到當代NLP,NLP越來越依賴于深度學習。
3. 用神經網絡的方法進行自然語言處理(Neural Network Methods for Natural Language Processing)
這是Yoav Goldberg寫的關于NLP的神經網絡方法的書。本書針對NLP相關的概念進行了深入解釋,你可以學習如何輕松地用代碼實現它們。以下摘自本書網站:
“這本書著重于神經網絡模型在自然語言數據中的應用。本書第一部分和第二部分涵蓋了監督機器學習和前饋神經網絡的基礎知識,在語言數據上使用機器學習的基礎知識,以及使用基于向量而不是符號表征的單詞。”
“本書第三部分和第四部分介紹了更專業的神經網絡架構,包括一維卷積神經網絡、遞歸神經網絡、條件生成模型和基于注意力的模型。這些架構和技術是機器翻譯、句法分析和許多其他應用程序的最新算法背后的驅動力。”
在理論或解釋性領域,自然語言處理的神經網絡方法將大大加強你對基于現代神經網絡的NLP方法是如何工作的理解。
4. 自然語言處理的語言學基礎(LinguisticFundamentals for Natural Language Processing)
在使用NLP時,盲目學習語言基礎并不好一個好主意,而且在缺乏任何語言正式學習經歷的情況下,如果要從純計算的角度研究NLP或計算語言學時,你要注意的地方就有很多了。本書旨在幫助你彌合這一差距。
網站上這樣描述此書:
- 本書旨在提供一種簡潔易懂的信息,它關于形態和句法結構的人類語言,可以用于創造更復雜、更獨立的語言,因此是更成功的NLP系統。”
- 本書第一章的以下內容支撐這一點:關于語言結構的知識可以為NLP的機器學習方法提供特征設計的信息。更具體地說:語言結構的知識將導致機器學習呈現更好的特征。”
- 本書由100個為更好地理解形態和語法的要點組成,與要點組成相關主題的章節也包含在內。如果你沒有語言學背景,讀起來可能有些辛苦,但它將讓你更好地理解語言,并在NLP職業生涯中熟練使用。”
5. 自然語言處理實踐(NaturalLanguage Processing in Action)
Hobson Lane, Hannes Hapke 和Cole Howard合著的這本書將帶我們回到現實。本書涵蓋了傳統的和基于神經網絡的NLP方法,可以看作是書單中前兩本書的組合,其中涵蓋了使用現代工具,如TensorFlow和Keras的實際編碼解決方案。
摘自本書網站:
“《自然語言處理實際應用》是一本指南,幫助你建立可以閱讀和解釋人類語言的機器。你將使用現成的Python包來捕獲文本中的含義并做出反應。本書擴展了傳統的NLP方法,包括神經網絡、現代深度學習算法和生成技術,幫助你解決現實問題,如提取日期和名字,編寫文本,和回答自由形式的問題。”
圖源:unsplash
本書是目前市場上最新的、最全面和最實用的書。但你也可以根據想要進入的系統以及想要獲得的細節水平,并考慮其他一些因素,來選擇更適合自己的書籍。
這5本都是絕對值得一讀的好書,你要做的是弄清楚自己到底想學什么,再做出相應的選擇,接著讀下去,絕對會大有收獲。