日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python自然语言处理库_Python 自然语言处理(NLP)工具库汇总

發布時間:2025/3/12 python 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python自然语言处理库_Python 自然语言处理(NLP)工具库汇总 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

最近正在用nltk 對中文網絡商品評論進行褒貶情感分類,計算評論的信息熵(entropy)、互信息(point mutual information)和困惑值(perplexity)等(不過這些概念我其實也還理解不深...只是nltk提供了相應方法)。

我感覺用nltk 處理中文是完全可用的。其重點在于中文分詞和文本表達的形式。

中文和英文主要的不同之處是中文需要分詞。因為nltk 的處理粒度一般是詞,所以必須要先對文本進行分詞然后再用nltk來處理(不需要用nltk來做分詞,直接用分詞包就可以了。嚴重推薦結巴分詞,非常好用)。

中文分詞之后,文本就是一個由每個詞組成的長數組:[word1, word2, word3…… wordn]。之后就可以使用nltk里面的各種方法來處理這個文本了。比如用FreqDist統計文本詞頻,用bigrams把文本變成雙詞組的形式:[(word1, word2), (word2, word3), (word3, word4)……(wordn-1, wordn)]。

再之后就可以用這些來計算文本詞語的信息熵、互信息等。

再之后可以用這些來選擇機器學習的特征,構建分類器,對文本進行分類(商品評論是由多個獨立評論組成的多維數組,網上有很多情感分類的實現例子用的就是nltk 中的商品評論語料庫,不過是英文的。但整個思想是可以一致的)。

另外還有一個困擾很多人的Python 中文編碼問題。多次失敗后我總結出一些經驗。

Python 解決中文編碼問題基本可以用以下邏輯:

utf8(輸入)——> unicode(處理)——>(輸出)utf8

Python 里面處理的字符都是都是unicode編碼,因此解決編碼問題的方法是把輸入的文本(無論是什么編碼)解碼為(decode)unicode編碼,然后輸出時再編碼(encode)成所需編碼。

由于處理的一般為txt 文檔,所以最簡單的方法,是把txt文檔另存為utf-8編碼,然后使用Python處理的時候解碼為unicode(sometexts.decode('utf8')),輸出結果回txt的時候再編碼成utf8(直接用str()函數就可以了)。

另外這篇文章也有很詳細的講到nltk 的中文應用,很值得參考:http://blog.csdn.net/huyoo/article/details/12188573

1.NLTK

NLTK 在使用Python處理自然語言的工具中處于領先的地位。它提供了WordNet這種方便處理詞匯資源的接口,以及分類、分詞、詞干提取、標注、語法分析、語義推理等類庫。

網站

http://www.nltk.org/

安裝 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(可以做印尼分詞,不過需要安裝包,基于Linux系統)

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/

總結

以上是生活随笔為你收集整理的python自然语言处理库_Python 自然语言处理(NLP)工具库汇总的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。