1.NLTK
NLTK 在使用 Python 處理自然語言的工具中處於領先的地位。它提供了 WordNet 這種方便處理詞彙資源的介面,以及分類、分詞、詞幹提取、標註、語法分析、語義推理等類庫。
網站
安裝
安裝 NLTK: sudo pip install -U nltk
安裝 Numpy (可選): sudo pip install -U numpy
安裝測試: python then type import nltk
2.Pattern
Pattern 擁有一系列的自然語言處理工具,比如說詞性標註工具(Part-Of-Speech Tagger),N元搜尋(n-gram search),情感分析(sentiment analysis),WordNet。它也支援機器學習的向量空間模型,聚類,向量機。
網站:
https://github.com/clips/pattern
安裝:
pip install pattern
3.TextBlob
TextBlob 是一個處理文字資料的 Python 庫。它提供了一個簡單的 api 來解決一些常見的自然語言處理任務,例如詞性標註、名詞短語抽取、情感分析、分類、翻譯等等。
網站:
http://textblob.readthedocs.org/en/dev/
安裝:
pip install -U textblob
4.Gensim
Gensim 是一個 Python 庫,用於對大型語料庫進行主題建模、檔案索引、相似度檢索等。它可以處理大於記憶體的輸入資料。作者說它是“純文字上無監督的語義建模最健壯、高效、易用的軟體。”
網站:
https://github.com/piskvorky/gensim
安裝:
pip install -U gensim
5.PyNLPI
它的全稱是:Python 自然語言處理庫(Python Natural Language Processing Library,音發作: pineapple) 是一個用於自然語言處理任務庫。它集合了各種獨立或鬆散互相關的,那些常見的、不常見的、對NLP 任務有用的模組。PyNLPI 可以用來處理 N 元搜尋,計算頻率表和分佈,建立語言模型。它還可以處理向優先佇列這種更加複雜的資料結構,或者像 Beam 搜尋這種更加複雜的演算法。
安裝:
LInux:sudo apt-get install pymol
Fedora:yum install pymol
6.spaCy
這是一個商業的開源軟體。結合了Python 和Cython 優異的 NLP 工具。是快速的,最先進的自然語言處理工具。
網站:
https://github.com/proycon/pynlpl
安裝:
pip install spacy
7.Polyglot
Polyglot 支援大規模多語言應用程式的處理。它支援165種語言的分詞,196中語言的辨識,40種語言的專有名詞識別,16種語言的詞性標註,136種語言的情感分析,137種語言的嵌入,135種語言的形態分析,以及69種語言的翻譯。
網站:
https://pypi.python.org/pypi/polyglot
安裝
pip install polyglot
8.MontyLingua
MontyLingua 是一個免費的、功能強大的、端到端的英文處理工具。在 MontyLingua 輸入原始英文文字 ,輸出就會得到這段文字的語義解釋。它適用於資訊檢索和提取,請求處理,問答系統。從英文文字中,它能提取出主動賓元組,形容詞、名詞和動詞短語,人名、地名、事件,日期和時間等語義資訊。
網站:
http://web.media.mit.edu/~hugo/montylingua/
9.BLLIP Parser
BLLIP Parser(也叫做 Charniak-Johnson parser)是一個整合了生成成分分析器和最大熵排序的統計自然語言分析器。它包括命令列和python介面。
10.Quepy
Quepy 是一個 Python 框架,提供了將自然語言問題轉換成為資料庫查詢語言中的查詢。它可以方便地自定義自然語言中不同型別的問題和資料庫查詢。所以,通過 Quepy,僅僅修改幾行程式碼,就可以構建你自己的自然語言查詢資料庫系統。
網站
https://github.com/machinalis/quepy
http://quepy.machinalis.com/