NLPIR http://www.nlpir.org/html
HanLP https://github.com/hankcsgit
Apache OpenNLP https://opennlp.apache.org/github
Apache UIMA http://uima.apache.org/web
LingPipe算法
LingPipe 是一個天然語言處理的Java開源工具包。LingPipe目前已有很豐富的功能,包括主題分類(Top Classification)、命名實體識別(Named Entity Recognition)、詞性標註(Part-of Speech Tagging)、句題檢測(Sentence Detection)、查詢拼寫檢查(Query Spell Checking)、興趣短語檢測(Interseting Phrase Detection)、聚類(Clustering)、字符語言建模(Character Language Modeling)、醫學文獻下載/解析/索引(MEDLINE Download, Parsing and Indexing)、數據庫文本挖掘(Database Text Mining)、中文分詞(Chinese Word Segmentation)、情感分析(Sentiment Analysis)、語言辨別(Language Identification)等API。 數據庫
下載連接:http://alias-i.com/lingpipe/web/download.htmlapache
The Stanford NLP Group https://nlp.stanford.edu/工具
Stanford NLP Group是斯坦福大學天然語言處理的團隊,開發了多個NLP工具,官網網址爲:http://nlp.stanford.edu/software/index.shtml。其開發的工具包括如下內容:學習
Stanford CoreNLPui
採用Java編寫的面向英文的處理工具,下載網址爲:http://nlp.stanford.edu/software/corenlp.shtml。主要功能包括分詞、詞性標註、命名實體識別、語法分析等。
我曾經採用它進行英語單詞的詞性還原,具體應用詳見文章《採用Stanford CoreNLP實現英文單詞詞形還原》。
Stanford Word Segmenter
採用CRF(條件隨機場)算法進行分詞,也是基於Java開發的,同時能夠支持中文和Arabic,官方要求Java版本1.6以上,推薦內存至少1G。下載地址爲http://nlp.stanford.edu/software/segmenter.shtml。
簡單的示例程序:
//設置分詞器屬性。
Properties props = new Properties();
//字典文件地址,能夠用絕對路徑,如d:/data
props.setProperty("sighanCorporaDict", "data");
//字典壓縮包地址,能夠用絕對路徑
props.setProperty("serDictionary","data/dict-chris6.ser.gz");
//輸入文字的編碼;
props.setProperty("inputEncoding", "UTF-8");
props.setProperty("sighanPostProcessing", "true");
//初始化分詞器,
CRFClassifier classifier = new CRFClassifier(props);
//從持久化文件中加載分詞器設置;
classifier.loadClassifierNoExceptions("data/ctb.gz", props);
// flags must be re-set after data is loaded
classifier.flags.setProperties(props);
//分詞
List words = classifier.segmentString("語句內容");
Stanford POS Tagger
採用Java編寫的面向英文、中文、法語、阿拉伯語、德語的命名實體識別工具,下載地址爲:http://nlp.stanford.edu/software/tagger.shtml。尚未接觸過,須要之後學習研究。
Stanford Named Entity Recognizer
採用條件隨機場模型的命名實體工具,下載地址爲:http://nlp.stanford.edu/software/CRF-NER.shtml。尚未接觸過,須要之後學習研究。
Stanford Parser
進行語法分析的工具,支持英文、中文、阿拉伯文和法語。下載地址爲:http://nlp.stanford.edu/software/lex-parser.shtml。具體的使用介紹見《採用Stanford Parser進行中文語法解析》。
Stanford Classifier
採用Java編寫的分類器,下載地址爲:http://nlp.stanford.edu/software/classifier.shtml。尚未接觸過,須要之後學習研究。
GATE https://gate.ac.uk/
NLTK http://www.nltk.org/
http://www.oschina.net/project/tag/305/nlp
學習資料
我愛天然語言處理 http://www.52nlp.cn
碼農場 http://www.hankcs.com/nlp/