国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

Python編程使用NLTK進行自然語言處理詳解

2020-02-16 10:43:43
字體:
來源:轉載
供稿:網友

自然語言處理是計算機科學領域與人工智能領域中的一個重要方向。自然語言工具箱(NLTK,NaturalLanguageToolkit)是一個基于Python語言的類庫,它也是當前最為流行的自然語言編程與開發工具。在進行自然語言處理研究和應用時,恰當利用NLTK中提供的函數可以大幅度地提高效率。本文就將通過一些實例來向讀者介紹NLTK的使用。

NLTK

NaturalLanguageToolkit,自然語言處理工具包,在NLP領域中,最常使用的一個Python庫。

NLTK是一個開源的項目,包含:Python模塊,數據集和教程,用于NLP的研究和開發  。
NLTK由Steven Bird和Edward Loper在賓夕法尼亞大學計算機和信息科學系開發。
NLTK包括圖形演示和示例數據。其提供的教程解釋了工具包支持的語言處理任務背后的基本概念。

開發環境:我所使用的Python版本是最新的3.5.1,NLTK版本是3.2。Python的安裝不在本文的討論范圍內,我們略去不表。你可以從NLTK的官網上http://www.nltk.org/獲得最新版本的NLTK。Anyway,使用pip指令來完成NLTK包的下載和安裝無疑是最簡便的方法。

當然,當你完成這一步時,其實還不夠。因為NLTK是由許多許多的包來構成的,此時運行Python,并輸入下面的指令(當然,第一條指令還是要導入NLTK包)

>>> import nltk >>> nltk.download() 

然后,Python Launcher會彈出下面這個界面,建議你選擇安裝所有的Packages,以免去日后一而再、再而三的進行安裝,也為你的后續開發提供一個穩定的環境。某些包的Status顯示“out of date”,你可以不必理會,它基本不影響你的使用與開發。

既然你已經安裝成功,我們來小試牛刀一下。當然本文涉及的主要任務都是自然語言處理中最常用,最基礎的pre-processing過程,結合機器學習的高級應用我們會在后續文章中再進行介紹。

1、SentencesSegment(分句)

也就是說我們手頭有一段文本,我們希望把它分成一個一個的句子。此時可以使用NLTK中的punktsentencesegmenter。來看示例代碼

>>> sent_tokenizer = nltk.data.load('tokenizers/punkt/english.pickle') >>> paragraph = "The first time I heard that song was in Hawaii on radio.  ... I was just a kid, and loved it very much! What a fantastic song!" >>> sentences = sent_tokenizer.tokenize(paragraph) >>> sentences ['The first time I heard that song was in Hawaii on radio.',   'I was just a kid, and loved it very much!',   'What a fantastic song!'] 

由此,我們便把一段話成功分句了。

2、SentencesSegment(分詞)

接下來我們要把每個句話再切割成逐個單詞。最簡單的方法是使用NLTK包中的WordPuncttokenizer。來看示例代碼

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 杭锦旗| 安宁市| 鄂尔多斯市| 津市市| 射阳县| 阳泉市| 海伦市| 怀远县| 黄龙县| 揭西县| 黄陵县| 肇东市| 河津市| 龙川县| 靖宇县| 张家港市| 璧山县| 克山县| 年辖:市辖区| 揭阳市| 丰都县| 保山市| 彭泽县| 霍邱县| 阿瓦提县| 防城港市| 商丘市| 莱芜市| 磐石市| 苗栗县| 五大连池市| 克什克腾旗| 邮箱| 仁寿县| 高青县| 苗栗县| 宝清县| 曲松县| 东光县| 房产| 宿迁市|