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

首頁 > 編程 > Python > 正文

Python中一些自然語言工具的使用的入門教程

2020-02-23 00:41:46
字體:
來源:轉載
供稿:網友

NLTK 是使用 Python 教學以及實踐計算語言學的極好工具。此外,計算語言學與人工 智能、語言/專門語言識別、翻譯以及語法檢查等領域關系密切。
NLTK 包括什么

NLTK 會被自然地看作是具有棧結構的一系列層,這些層構建于彼此基礎之上。那些熟悉人工語言(比如 Python)的文法 和解析的讀者來說,理解自然語言模型中類似的 —— 但更深奧的 —— 層不會有太大困難。
術語表

全集(Corpora):相關文本的集合。例如,莎士比亞的作品可能被統稱為一個 文集(corpus); 而若干個作者的作品稱為 全集。

直方圖(Histogram):數據集中不同單詞、字母或其他條目的出現頻率的統計分布。

結構(Syntagmatic):對語段的研究;也就是全集中字母、單詞或短語連續出現的統計關系。

上下文無關語法(Context-free grammar): 由四類形式語法構成的 Noam Chomsky 層級中的第二類。參閱 參考資料 以獲得 詳盡描述。

盡管 NLTK 附帶了很多已經預處理(通常是手工地)到不同程度的全集,但是概念上每一層 都是依賴于相鄰的更低層次的處理。首先是斷詞;然后是為單詞加上 標簽;然后將成組 的單詞解析為語法元素,比如名詞短語或句子(取決于幾種技術中的某一種,每種技術都有其優缺點); 最后對最終語句或其他語法單元進行分類。通過這些步驟,NLTK 讓您可以生成關于不同元素出現情況 的統計,并畫出描述處理過程本身或統計合計結果的圖表。

在本文中,您將看到關于低層能力的一些相對完整的示例,而對大部分高層次能力將只是進行簡單抽象的描述。 現在讓我們來詳細分析文本處理的首要步驟。

斷詞(Tokenization)

您可以使用 NLTK 完成的很多工作,尤其是低層的工作,與使用 Python 的基本數據結構來完成相比,并 沒有 太 大的區別。不過,NLTK 提供了一組由更高的層所依賴和使用的系統化的接口,而不只是 簡單地提供實用的類來處理加過標志或加過標簽的文本。

具體講, nltk.tokenizer.Token 類被廣泛地用于存儲文本的有注解的片斷;這些 注解可以標記很多不同的特性,包括詞類(parts-of-speech)、子標志(subtoken)結構、一個標志(token) 在更大文本中的偏移位置、語形詞干 (morphological stems)、文法語句成分,等等。實際上,一個 Token 是一種 特別的字典 —— 并且以字典形式訪問 —— 所以它可以容納任何您希望的鍵。在 NLTK 中使用了一些專門的鍵, 不同的鍵由不同的子程序包所使用。

讓我們來簡要地分析一下如何創建一個標志并將其拆分為子標志:
清單 1. 初識 nltk.tokenizer.Token 類

>>> from nltk.tokenizer import *>>> t = Token(TEXT='This is my first test sentence')>>> WSTokenizer().tokenize(t, addlocs=True) # break on whitespace>>> print t['TEXT']This is my first test sentence>>> print t['SUBTOKENS'][<This>@[0:4c], <is>@[5:7c], <my>@[8:10c], <first>@[11:16c],<test>@[17:21c], <sentence>@[22:30c]]>>> t['foo'] = 'bar'>>> t<TEXT='This is my first test sentence', foo='bar',SUBTOKENS=[<This>@[0:4c], <is>@[5:7c], <my>@[8:10c], <first>@[11:16c],<test>@[17:21c], <sentence>@[22:30c]]>>>> print t['SUBTOKENS'][0]<This>@[0:4c]>>> print type(t['SUBTOKENS'][0])<class 'nltk.token.SafeToken'>            
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 日土县| 鹿邑县| 新安县| 垣曲县| 奉化市| 铅山县| 涟源市| 深州市| 桓仁| 彩票| 三江| 通城县| 望城县| 武城县| 富顺县| 湘乡市| 淮南市| 南岸区| 平陆县| 永兴县| 房山区| 邮箱| 肇州县| 大英县| 印江| 绵竹市| 上栗县| 宁波市| 司法| 西吉县| 周至县| 普安县| 岚皋县| 桐柏县| 含山县| 开平市| 东源县| 平原县| 昌图县| 朔州市| 腾冲县|