天然語言處理(NLP)入門學習資源清單

Melanie Tosik目前就任於旅遊搜索公司WayBlazer,她的工做內容是經過天然語言請求來生產個性化旅遊推薦路線。回顧她的學習歷程,她爲指望入門天然語言處理的初學者列出了一份學習資源清單。html

 

displaCy網站上的可視化依賴解析樹git

github

 

記得我曾經讀到過這樣一段話,若是你以爲有必要回答兩次一樣的問題,那就把答案發到博客上,這多是一個好主意。根據這一原則,也爲了節省回答問題的時間,我在這裏給出該問題的標準問法:「個人背景是研究**科學,我對學習NLP頗有興趣。應該從哪提及呢?」web

 

在您一頭扎進去閱讀本文以前,請注意,下面列表只是提供了很是通用的入門清單(有可能不完整)。 爲了幫助讀者更好地閱讀,我在括號內添加了簡短的描述並對難度作了估計。最好具有基本的編程技能(例如Python)。算法

 

在線課程編程

 

• Dan Jurafsky 和 Chris Manning:天然語言處理[很是棒的視頻介紹系列]網絡

架構

 

• 斯坦福CS224d:天然語言處理的深度學習[更高級的機器學習算法、深度學習和NLP的神經網絡架構]機器學習

分佈式

 

• Coursera:天然語言處理簡介[由密西根大學提供的NLP課程]

 

圖書館和開放資源

 

• spaCy(網站,博客)[Python; 新興的開放源碼庫並自帶炫酷的用法示例、API文檔和演示應用程序]

網站網址:

博客網址:

演示應用網址: 

 

• 天然語言工具包(NLTK)(網站,圖書)[Python; NLP實用編程介紹,主要用於教學目的]

網站網址:

圖書網址: 

 

• 斯坦福CoreNLP(網站)[由Java開發的高質量的天然語言分析工具包]

網站網址: 

 

活躍的博客

 

• 天然語言處理博客(HalDaumé)

博客網址:

 

• Google研究博客

博客網址:

 

• 語言日誌博客(Mark Liberman)

博客網址:

 

書籍

 

• 言語和語言處理(Daniel Jurafsky和James H. Martin)[經典的NLP教科書,涵蓋了全部NLP的基礎知識,第3版即將出版]

 

• 統計天然語言處理的基礎(Chris Manning和HinrichSchütze)[更高級的統計NLP方法]

 

• 信息檢索簡介(Chris Manning,Prabhakar Raghavan和HinrichSchütze)[關於排名/搜索的優秀參考書]

 

• 天然語言處理中的神經網絡方法(Yoav Goldberg)[深刻介紹NLP的NN方法,和相對應的入門書籍]

入門書籍: 

 

其它雜項

 

• 如何在TensorFlow中構建word2vec模型[學習指南]

 

• NLP深度學習的資源[按主題分類的關於深度學習的頂尖資源的概述]

 

• 最後一句話:計算語言學和深度學習——論天然語言處理的重要性。(Chris Manning)[文章]

 

• 對分佈式表徵的天然語言的理解(Kyunghyun Cho)[關於NLU的ML / NN方法的獨立講義]

 

• 帶淚水的貝葉斯推論(Kevin Knight)[教程工做簿]

 

• 國際計算語言學協會(ACL)[期刊選集]

 

• 果殼問答網站(Quora):我是如何學習天然語言處理的?

 

DIY項目和數據集

資料來源:

 

• Nicolas Iderhoff已經建立了一份公開的、詳盡的NLP數據集的列表。除了這些,這裏還有一些項目,能夠推薦給那些想要親自動手實踐的NLP新手們:

數據集:

 

• 基於隱馬爾可夫模型(HMM)實現詞性標註(POS tagging).

 

• 使用CYK算法執行上下文無關的語法解析

 

• 在文本集合中,計算給定兩個單詞之間的語義類似度,例如點互信息(PMI,Pointwise Mutual Information)

 

• 使用樸素貝葉斯分類器來過濾垃圾郵件

 

• 根據單詞之間的編輯距離執行拼寫檢查

 

• 實現一個馬爾科夫鏈文本生成器

 

• 使用LDA實現主題模型

 

• 使用word2vec從大型文本語料庫,例如維基百科,生成單詞嵌入。

 

NLP在社交媒體上

 

• Twitter:#nlproc,NLPers上的文章列表(由Jason Baldrige提供)

 

• Reddit 社交新聞站點:/r/LanguageTechnology

 

• Medium發佈平臺:Nlp

 

原文連接:

相關文章
相關標籤/搜索