Python與自然語言處理(一)搭建環境 -开发者知识库

Python與自然語言處理(一)搭建環境 -开发者知识库,第1张

參考書籍《Python自然語言處理》,書籍中的版本是Python2和NLTK2,我使用的版本是Python3和NLTK3

實驗環境Windows8.1,已有Python3.4,並安裝了NumPy, Matplotlib,參考:http://blog.csdn.net/monkey131499/article/details/50734183

安裝NLTK3,Natural Language Toolkit,自然語言工具包,地址:http://www.nltk.org/

安裝命令:pip install nltk

Python與自然語言處理(一)搭建環境 -开发者知识库,第2张

安裝完成后測試:import nltk

Python與自然語言處理(一)搭建環境 -开发者知识库,第3张

沒有報錯即表明安裝成功。

NLTK包含大量的軟件、數據和文檔,可以進行文本分析和語言結構分析等。數據資源可以自行下載使用。地址:http://www.nltk.org/data.html,數據列表:http://www.nltk.org/nltk_data/

下載NLTK-Data,在Python中輸入命令:

>>>import nltk

>>>nltk.download()

彈出新的窗口,用於選擇下載的資源

Python與自然語言處理(一)搭建環境 -开发者知识库,第4张

點擊File可以更改下載安裝的路徑。all表示全部數據集合,all-corpora表示只有語料庫和沒有語法或訓練的模型,book表示只有書籍中例子或練習的數據。需要注意一點,就是數據的保存路徑,要么在C盤中,要么在Python的根目錄下,否則后面程序調用數據的時候會因為找不到而報錯。

【注意:軟件安裝需求:Python、NLTK、NLTK-Data必須安裝,NumPy和Matplotlin推薦安裝,NetworkX和Prover9可選安裝】

簡單測試NLTK分詞功能:

Python與自然語言處理(一)搭建環境 -开发者知识库,第5张

但是在詞性標注上就出現問題了,百度也沒有明確的解決辦法,若有大神知道是什么原因請不吝賜教!

Python與自然語言處理(一)搭建環境 -开发者知识库,第6张

詞性標注功能就先暫且放一放。

下面看一下NLTK數據的幾種方法:

1.加載數據

from nltk.book import *
Python與自然語言處理(一)搭建環境 -开发者知识库,第7张
2.搜索文本

print(text1.concordance('monstrous'))
Python與自然語言處理(一)搭建環境 -开发者知识库,第8张
3.相似文本

print(text1.similar('monstrous'))
Python與自然語言處理(一)搭建環境 -开发者知识库,第9张
4.共用詞匯的上下文

print(text2.common_contexts(['monstrous','very']))
Python與自然語言處理(一)搭建環境 -开发者知识库,第10张
5.詞匯分布圖

text4.dispersion_plot(['citizens','democracy','freedom','duties','America'])
Python與自然語言處理(一)搭建環境 -开发者知识库,第11张

6.詞匯統計

#encoding=utf-8
import nltk
from nltk.book import *

print('~~~~~~~~~~~~~~~~~~~~~~~~~')
print('文檔text3的長度:',len(text3))
print('文檔text3詞匯和標識符排序:',sorted(set(text3)))
print('文檔text3詞匯和標識符總數:',len(set(text3)))
print('單個詞匯平均使用次數:',len(text3)*1.0/len(set(text3)))
print('單詞 Abram在text3中使用次數:',text3.count('Abram'))
print('單詞Abram在text3中使用百分率:',text3.count('Abram')*100/len(text3))
Python與自然語言處理(一)搭建環境 -开发者知识库,第12张

暫時先練習到這里,基本上對NLTK-Data有了一定的了解,以及學會了其基本使用方法。








最佳答案:

本文经用户投稿或网站收集转载,如有侵权请联系本站。

发表评论

0条回复