乾貨 | 陪伴我學習NLP、知識圖譜的那些資源(教程+書籍+網站+工具+論文...可以說很全面了)

人工智能頭條2018-07-21 20:15:51

作者 | antkillerfarm

來源 | antkillerfarm的CSDN博客


【人工智能頭條導讀】作者一年前整理了這份關於 NLP 與的參考資源,涵蓋內容與形式也是非常豐富,接下來人工智能頭條還會繼續努力,分享更多更好的新資源給大家,也期待能與大家多多交流,一起成長。



NLP參考資源


(Natural Language Processing)是的主要應用領域之一。


教程


  • CS224d: Deep Learning for Natural Language Processing

    http://cs224d.stanford.edu/


  • CS224d課程的課件

    http://web.stanford.edu/class/cs224n/syllabus.html


  • CMU的NLP教程。該網頁下方還有美國其他高校的NLP課程的鏈接。

    http://demo.clab.cs.cmu.edu/NLP/


  • 北京大學的NLP教程,特色:中文處理。缺點:傳統方法居多,深度學習未涉及。

    http://ccl.pku.edu.cn/alcourse/nlp/


  • COMS W4705: Natural Language Processing

    http://www.cs.columbia.edu/~cs4705/


  • 初學者如何查閱自然語言處理(NLP)領域學術資料

    https://mp.weixin.qq.com/s/TSc4E8lKwgc-EvzP8OlJeg


  • 揭開知識庫問答KB-QA的面紗(知識圖譜方面的系列專欄)

    https://zhuanlan.zhihu.com/kb-qa


  • 《語音與語言處理》第三版,NLP和語音合成方面的專著

    http://web.stanford.edu/~jurafsky/slp3/ed3book.pdf


  • CIPS ATT 2017 文本分析和自然語言課程PPT

    https://mp.weixin.qq.com/s/5KhTWdOk-b84DXmoVr68-A


  • CMU NN for NLP

    http://phontron.com/class/nn4nlp2017/assets/slides/


  • CMU Machine Translation and Sequence to Sequence Models

    http://phontron.com/class/mtandseq2seq2017/


  • Oxford Deep NLP 2017 course

    https://github.com/oxford-cs-deepnlp-2017/lectures


書籍


  • 《Natural Language Processing with Python》,Steven Bird、Ewan Klein、Edward Loper著。這本書的作者們創建了著名的NLTK工具庫。

    http://ccl.pku.edu.cn/alcourse/nlp/LectureNotes/Natural%20Language%20Processing%20with%20Python.pdf


注:Steven Bird,愛丁堡大學博士,墨爾本大學副教授。 
http://www.stevenbird.net/about.html


Ewan Klein,蘇格蘭人,哥倫比亞大學博士(1978年),愛丁堡大學教授。


Edward Loper,賓夕法尼亞大學博士。


  • 推薦5本經典自然語言處理書籍

    https://mp.weixin.qq.com/s/0HmsMytif3INqAX1Si5ukA


網站


  • 一個自然語言處理愛好者的群體博客。包括52nlp、rickjin、liwei等國內外華人大牛.

    http://www.52nlp.cn/


  • 實戰課程:自己動手做聊天機器人

    http://www.shareditor.com/bloglistbytag/?tagname=%E8%87%AA%E5%B7%B1%E5%8A%A8%E6%89%8B%E5%81%9A%E8%81%8A%E5%A4%A9%E6%9C%BA%E5%99%A8%E4%BA%BA


  • 北京大學計算機科學技術研究所語言計算與互聯網挖掘研究

    http://www.icst.pku.edu.cn/lcwm/


  • NLP深度學習方面的代碼庫

    https://github.com/rockingdingo/deepnlp


  • NLP專家李維的blog

    https://liweinlp.com/


  • 一個NLP方面的blog

    http://www.shuang0420.com/


  • 一個DL+ML+NLP的blog

    http://www.cnblogs.com/Determined22/


  • 一個NLP方面的blog

    http://www.cnblogs.com/robert-dlut/


  • 一個NLP方面的blog

    https://blog.csdn.net/wangxinginnlp


工具


  • Natural Language Toolkit(NLTK)

    官網:http://www.nltk.org/

    可使用nltk.download()下載相關nltk官方提供的各種資源。


參考:

http://www.cnblogs.com/baiboy/p/nltk3.html


  • OpenNLP

    http://opennlp.apache.org/


  • FudanNLP

    https://github.com/FudanNLP/fnlp


  • Stanford CoreNLP

    http://stanfordnlp.github.io/CoreNLP/


  • THUCTC

    THUCTC(THU Chinese Text Classification)是由清華大學自然語言處理實驗室推出的中文文本分類工具包。

    http://thuctc.thunlp.org/


  • gensim

    gensim是Python語言的計算文本相似度的程序包。

    http://radimrehurek.com/gensim/index.html


pip install --upgrade gensim

GitHub 地址:

https://github.com/RaRe-Technologies/gensim


參考學習:

情感分析的新方法——基於Word2Vec/Doc2Vec/Python

http://www.open-open.com/lib/view/open1444351655682.html


Gensim Word2vec使用教程

http://blog.csdn.net/Star_Bob/article/details/47808499


  • GloVe

    GloVe:Global Vectors for Word Representation

    https://nlp.stanford.edu/projects/glove/


  • textsum

    textsum是一個基於深度學習的文本自動摘要工具。


代碼:

https://github.com/tensorflow/models/tree/master/textsum


參考:

http://www.jiqizhixin.com/article/1449


谷歌開源新的TensorFlow文本自動摘要代碼:TensorFlow文本摘要生成 - 基於注意力的序列到序列模型

http://blog.csdn.net/tensorflowshizhan/article/details/69230070


  • jieba

    https://github.com/fxsjy/jieba


  • NLPIR

    NLPIR漢語分詞系統(又名ICTCLAS2013),是中科院張華平博士的作品。

    http://ictclas.nlpir.org/


參考:

這個網頁對於NLP的大多數功能進行了可視化的展示。NLP入門必看。

http://ictclas.nlpir.org/nlpir/


  • snownlp

    https://github.com/isnowfy/snownlp


  • HanLP

    HanLP是一個目前留學日本的中國學生的作品。

    http://hanlp.linrunsoft.com/


作者blog:

http://www.hankcs.com/


Github:

https://github.com/hankcs/HanLP/


從作者的名氣來說,HanLP無疑是最低的,性能也不見得有多好。然而對於初學者來說,這卻是最適合的工具。這主要體現在以下幾個方面:


1.中文處理能力。NLTK和OpenNLP對中文支持非常差,這裡不光是的問題,有些NLP算法需要一定的語言模型數據,但瀏覽NLTK官方的模型庫,基本找不到中文模型數據。


2.jieba、IK之類的功能太單一,多數侷限在中文分詞方面領域。gensim、THUCTC專注於NLP的某一方面,也不是通用工具。


3.NLPIR和Stanford CoreNLP算是功能最強的工具包了。前者的問題在於收費不開源,後者的問題在於缺少中文文檔。FudanNLP的相關文檔較少,文檔友好度不如HanLP。


4.HanLP在主頁上提供了相關算法的blog,便於初學者快速掌握相關概念。其詞典是明文發佈,便於用戶修改。HanLP執行時,會將明文詞典以特定結構緩存,以提高執行效率。

注:不要以為中文有分詞問題,就比別的語言複雜,英文還有詞根問題呢。。。每種語言都不簡單。


  • AllenNLP

    AllenNLP是 Allen AI實驗室的作品,採用深度學習技術,基於PyTorch開發。

    http://allennlp.org/


Allen AI實驗室由微軟聯合創始人Paul G. Allen投資創立。

http://allenai.org/


  • 其他


python版的漢字轉拼音軟件

https://github.com/mozillazg/python-pinyin


Java分佈式中文分詞組件-word分詞

https://github.com/ysc/word


jena是一個語義網絡、知識圖譜相關的軟件。

http://jena.apache.org/


  • NLPchina

    NLPchina(中國自然語言處理開源組織)旗下有許多好用的工具。

    http://www.nlpcn.org/


Github:

https://github.com/NLPchina


  • Ansj

    Ansj是一個NLPchina旗下的開源的Java中文分詞工具,基於中科院的ictclas中文分詞算法,比其他常用的開源分詞工具(如mmseg4j)的分詞準確率更高。

    https://github.com/NLPchina/ansj_seg


  • Word2VEC_java

    word2vec java版本的一個實現。

    https://github.com/NLPchina/Word2VEC_java

    doc2vec java版本的一個實現,基於Word2VEC_java。

    https://github.com/yao8839836/doc2vec_java


  • ansj_fast_lda

    LDA算法的Java包。

    https://github.com/NLPchina/ansj_fast_lda


  • nlp-lang

    這個項目是一個基本包.封裝了大多數nlp項目中常用工具

    https://github.com/NLPchina/nlp-lang


  • 詞性標註

    ICTPOS3.0漢語詞性標記集

    http://jacoxu.com/ictpos3-0%E6%B1%89%E8%AF%AD%E8%AF%8D%E6%80%A7%E6%A0%87%E8%AE%B0%E9%9B%86/


  • Word Hashing

    Word Hashing是非常重要的一個trick,以英文單詞來說,比如good,他可以寫成#good#,然後按tri-grams來進行分解為#go goo ood od#,再將這個tri-grams灌入到bag-of-word中,這種方式可以非常有效的解決vocabulary太大的問題(因為在真實的web search中vocabulary就是異常的大),另外也不會出現oov問題,因此英文單詞才26個,3個字母的組合都是有限的,很容易枚舉光。


那麼問題就來了,這樣兩個不同的單詞會不會產出相同的tri-grams,paper裡面做了統計,說了這個衝突的概率非常的低,500K個word可以降到30k維,衝突的概率為0.0044%。


但是在中文場景下,這個Word Hashing估計沒有這麼有效了。


  • 詞彙共現

    http://sewm.pku.edu.cn/TianwangLiterature/SEWM/2005(5)/%5b%b3%c2%c1%88,%20et%20al.,2005%5d/050929.pdf


詞彙共現是指詞彙在文檔集中共同出現。以一個詞為中心,可以找到一組經常與之搭配出現的詞,作為它的共現詞彙集。


詞彙共現的其中一種用例:


有若干關鍵詞,比如:水果、天氣、風,有若干描述詞,比如,很甜、晴朗、很大,然後現在要找出他們之間的搭配,在這個例子裡,我們最終要找到:水果很甜、天氣晴朗、風很大


  • 關鍵詞提取

    主要三種方法:1.基於統計特徵,如TF-IDF;2.基於詞圖模型,如TextRank;3.基於主題模型,如LDA。


  • 自然語言理解

    Natural language understanding(NLU)屬於NLP的一個分支,屬於人工智能的一個部分,用來解決機器理解人類語言的問題,屬於人工智能的核心難題。

    http://www.shuang0420.com/2017/04/27/NLP%E7%AC%94%E8%AE%B0%20-%20NLU%E4%B9%8B%E6%84%8F%E5%9B%BE%E5%88%86%E7%B1%BB/


  • 論文

    《Distant Supervision for relation extraction without labeled data》

    《Using Recurrent Neural Networks for Slot Filling in Spoken Language Understanding》

    《Convolutional Neural Networks for Sentence Classification》:TextCNN的開山之作



知識圖譜參考資源


  • 知識圖譜構建技術綜述

    https://wenku.baidu.com/view/38ad3ef7e109581b6bd97f19227916888586b959.html


  • 知識圖譜技術綜述

    https://wenku.baidu.com/view/e69a3619fe00bed5b9f3f90f76c66137ee064f15.html


  • 知識圖譜技術原理介紹

    https://wenku.baidu.com/view/b3858227c5da50e2534d7f08.html


  • 基於知識圖譜的問答系統關鍵技術研究

    https://mp.weixin.qq.com/s/JLYegFP7kEg6n34crgP09g


  • 什麼是知識圖譜?

    https://mp.weixin.qq.com/s/XgKvh63wgEe-CR9bchp03Q


  • 當知識圖譜遇上聊天機器人

    https://mp.weixin.qq.com/s/iqFXvhvYfOejaeNAhXxJEg


  • 知識圖譜前沿技術課程實錄

    https://mp.weixin.qq.com/s/U-dlYhnaR8OQw2UKYKUWKQ


  • 阿里知識圖譜首次曝光:每天千萬級攔截量,億級別全量智能審核

    https://mp.weixin.qq.com/s/MZE_SXsNg6Yt4dz2fmB1sA


  • 東南大學漆桂林:知識圖譜的應用

    https://mp.weixin.qq.com/s/WIro7pk7kboMvdwpZOSdQA


  • 東南大學高桓:知識圖譜表示學習

    https://mp.weixin.qq.com/s/z1hhG4GaBQXPHHt9UGZPnA


  • 復旦肖仰華:基於知識圖譜的問答系統

    https://mp.weixin.qq.com/s/JZYH_m1eS93KRjkWA82GoA


  • 多源信息表示學習在知識圖譜中的應用

    https://mp.weixin.qq.com/s/cEmtOAtfP2gSBlaPfGXb3w


  • 如何構建知識圖譜

    https://mp.weixin.qq.com/s/cL1aKdu8ig8-ocOPirXk2w


  • 中文通用百科知識圖譜(CN-DBpedia)

    https://mp.weixin.qq.com/s/Nh7XJOLNBDdpibopVG4MrQ


原文鏈接:

https://blog.csdn.net/antkillerfarm/article/details/78082564



——【完】——


在線公開課NLP專場

精彩繼續


時間:7月26日 20:00-21:00

掃描海報二維碼,免費報名

添加微信csdnai,備註:公開課,加入課程交流群

閱讀原文

TAGS:



http://seo.vxiaotou.com