Python天然語言處理(1):初識NLPhtml
天然語言處理(Natural Language Processing,NLP):計算機科學領域和人工智能領域中的一個重要方向。它研究實現人與計算機之間用天然語言進行有效通訊的各類理論和方法,涉及全部用計算機對天然語言進行的操做。python
NLP的技術應用日益普遍。例如:收集和手持電腦對輸入法聯想提示和手寫識別的支持;網絡搜索引擎可以搜索到非結構化文本中的信息;機器翻譯能把中文文本翻譯成西班牙文。經過提供更天然的人機界面和獲取存儲信息的高級手段,語言處理正在這個多語種的信息社會中扮演着更核心的角色。算法
Python的安裝網絡
以前介紹過安裝步驟,這裏先略過。詳情戳這裏:Python學習總結之一--基礎篇機器學習
NLTK的安裝函數
NLTK:Natural Language Toolkit(天然語言工具包)。咱們能夠從http://www.nltk.org上免費下載符合本身操做系統的版本。下載完成後,跟着步驟直接安裝 。工具
Python版本要求post
而後咱們在Python解釋器裏輸入代碼,下載咱們後面學習時須要的數據。學習
首先,咱們輸入import nltk成功時就說明咱們的nltk安裝成功。可是很遺憾,這TM是個問題啊,本身下午搞了好久,下載了好幾回都沒有成功,我也不知道是怎麼回事,網上查找到了一些資源,你們能夠在這個博客裏找到下載數據的地方。而後自行解壓corpora文件裏的壓縮文件便可。搜索引擎
當你輸入代碼能夠出現上圖所示的text1到text9內容的時候,說明你的nltk_data下載成功。
http://www.nltk.org/
https://pypi.python.org/pypi/setuptools
http://www.nltk.org/data.html
NLTK是Python很強大的第三方庫,能夠很方便的完成不少天然語言處理(NLP)的任務,包括分詞、詞性標註、命名實體識別(NER)及句法分析。
NLTK安裝教程:www.pythontip.com/blog/post/10011/
下面介紹如何利用NLTK快速完成NLP基本任務
1、NLTK進行分詞
用到的函數:
nltk.sent_tokenize(text) #對文本按照句子進行分割
nltk.word_tokenize(sent) #對句子進行分詞
2、NLTK進行詞性標註
用到的函數:
nltk.pos_tag(tokens)#tokens是句子分詞後的結果,一樣是句子級的標註
3、NLTK進行命名實體識別(NER)
用到的函數:
nltk.ne_chunk(tags)#tags是句子詞性標註後的結果,一樣是句子級
上例中,有兩個命名實體,一個是Xi,這個應該是PER,被錯誤識別爲GPE了; 另外一個事China,被正確識別爲GPE。
4、句法分析