自然语言处理工具 nltk 安装使用

简介: github 地址:https://github.com/nltk/nltk/ 官方地址:http://www.nltk.org/ 中文文档:http://download.csdn.net/detail/u013378306/9756747 安装及测试 Install NLTK: run sudo pip install -U nltkInstall Num

github 地址:https://github.com/nltk/nltk/

官方地址:http://www.nltk.org/

中文文档:http://download.csdn.net/detail/u013378306/9756747

安装及测试

  1. Install NLTK: run sudo pip install -U nltk
  2. Install Numpy (optional): run sudo pip install -U numpy
  3. Test installation: run python then type import nltk

Python NLTK库中包含着大量的语料库,但是大部分都是英文,不过有一个Sinica(中央研究院)提供的繁体中文语料库,值得我们注意。

在使用这个语料库之前,我们首先要检查一下是否已经安装了这个语料库。

下载数据文件

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


 

总的数据有300M左右,下载很慢,

提供下载地址:https://pan.baidu.com/s/1nvfR485

nltk 数据文件结构

nltk_data
├── chunkers
│   └── maxent_ne_chunker.zip
├── corpora
│   ├── abc.zip
│   ├── alpino.zip
│   ├── biocreative_ppi.zip
│   ├── brown_tei.zip
│   ├── brown.zip
│   ├── cess_cat.zip
│   ├── cess_esp.zip
│   ├── chat80.zip
│   ├── city_database.zip
│   ├── cmudict.zip
│   ├── comtrans.zip
│   ├── conll2000.zip
│   ├── conll2002.zip
│   ├── conll2007.zip
│   ├── dependency_treebank.zip
│   ├── europarl_raw.zip
│   ├── floresta.zip
│   ├── gazetteers.zip
│   ├── genesis.zip
│   ├── gutenberg.zip
│   ├── ieer.zip
│   ├── inaugural.zip
│   ├── indian.zip
│   ├── jeita.zip
│   ├── kimmo.zip
│   ├── knbc.zip
│   ├── langid.zip
│   ├── lin_thesaurus.zip
│   ├── machado.zip
│   ├── mac_morpho.zip
│   ├── movie_reviews.zip
│   ├── names.zip
│   ├── nombank.1.0.zip
│   ├── nps_chat.zip
│   ├── oanc_masc.zip
│   ├── paradigms.zip
│   ├── pil.zip
│   ├── pl196x.zip
│   ├── ppattach.zip
│   ├── problem_reports.zip
│   ├── propbank.zip
│   ├── ptb.zip
│   ├── qc.zip
│   ├── reuters.zip
│   ├── rte.zip
│   ├── semcor.zip
│   ├── senseval.zip
│   ├── shakespeare.zip
│   ├── sinica_treebank.zip
│   ├── smultron.zip
│   ├── state_union.zip
│   ├── stopwords.zip
│   ├── swadesh.zip
│   ├── switchboard.zip
│   ├── timit.zip
│   ├── toolbox.zip
│   ├── treebank.zip
│   ├── udhr2.zip
│   ├── udhr.zip
│   ├── unicode_samples.zip
│   ├── verbnet.zip
│   ├── webtext.zip
│   ├── wordnet_ic.zip
│   ├── wordnet.zip
│   ├── words.zip
│   └── ycoe.zip
├── grammars
│   ├── basque_grammars.zip
│   ├── book_grammars.zip
│   ├── large_grammars.zip
│   ├── sample_grammars.zip
│   └── spanish_grammars.zip
├── help
│   └── tagsets.zip
├── stemmers
│   └── rslp.zip
├── taggers
│   ├── averaged_perceptron_tagger.zip
│   ├── hmm_treebank_pos_tagger.zip
│   └── maxent_treebank_pos_tagger.zip
└── tokenizers
    └── punkt.zip

数据文件存放地址(linux下的搜索路径)

 - '/var/www/nltk_data'
    - '/usr/share/nltk_data'
    - '/usr/local/share/nltk_data'
    - '/usr/lib/nltk_data'
    - '/usr/local/lib/nltk_data'

主要功能



使用

import nltk
from nltk.corpus import sinica_treebank
 
print(sinica_treebank.words())


 结果:['一', '友情', '嘉珍', '和', '我', '住在', '同一條', '巷子', '我們', ...]

(1)来看一下NLTK中文语法树。

>>>sinica_treebank.parsed_sents()[33].draw()

 Python 万岁!!!

(2)搜索中文文本

1
2
3
4
5
import  nltk
from  nltk.corpus  import  sinica_treebank
 
sinica_text = nltk.Text(sinica_treebank.words())
print (sinica_text.concordance( '我' ))

 结果:

 我 住在 同一條 巷子 我們 是 鄰居 也 是 同班 同學 我們 常常 一起 上
居 也 是 同班 同學 我們 常常 一起 上學 一起 回家 有一天 上學 時 我 到 她 家 等候 按 了 門鈴 卻 沒有 任何 動靜 正當 我 想 離開 時
天 上學 時 我 到 她 家 等候 按 了 門鈴 卻 沒有 任何 動靜 正當 我 想 離開 時 門 內 突然 傳來 急促 的 腳步聲 嘉珍 打開 了 門 大聲
 突然 傳來 急促 的 腳步聲 嘉珍 打開 了 門 大聲 的 叫 著 快 點 我 媽媽 暈倒 了 嘉珍 抓起 我 的 手 急忙 往 屋 裡 跑 進入 房間 看
嘉珍 打開 了 門 大聲 的 叫 著 快 點 我 媽媽 暈倒 了 嘉珍 抓起 我 的 手 急忙 往 屋 裡 跑 進入 房間 看到 她 的 媽媽 趴 在 地 上
 她 的 媽媽 趴 在 地 上 臉色 蒼白 得 像 紙 一樣 這種 情景 把 我 嚇壞 了 怎麼辦 嘉珍 不停 的 哭泣 聲音 有些 顫抖 我 的 腦海 中 
這種 情景 把 我 嚇壞 了 怎麼辦 嘉珍 不停 的 哭泣 聲音 有些 顫抖 我 的 腦海 中 頓時 一片 空白 不 曉得 怎麼辦 才 好 過 了 一會兒 我
我 的 腦海 中 頓時 一片 空白 不 曉得 怎麼辦 才 好 過 了 一會兒 我 才 問 她 你 爸爸 呢 他 出差 了 嘉珍 擦 著 眼淚 我 握住 她 的
 了 一會兒 我 才 問 她 你 爸爸 呢 他 出差 了 嘉珍 擦 著 眼淚 我 握住 她 的 雙手 她 的 手 又 冰 又 冷 這時 有個 念頭 突然 閃過
握住 她 的 雙手 她 的 手 又 冰 又 冷 這時 有個 念頭 突然 閃過 我 的 眼前 我 幫 她 撥 了 一一九 請 救護車 來 而且 拍拍 她 的 背
雙手 她 的 手 又 冰 又 冷 這時 有個 念頭 突然 閃過 我 的 眼前 我 幫 她 撥 了 一一九 請 救護車 來 而且 拍拍 她 的 背 安慰 她 不
撥 了 一一九 請 救護車 來 而且 拍拍 她 的 背 安慰 她 不要 著急 我 會 陪 你 的 不久 救護車 停 在 她 家 門口 醫護 人員 很 快 的 
 醫護 人員 很 快 的 將 她 的 媽媽 抬上 救護車 嘉珍 上車 前 對 我 說 謝謝 你 的 幫忙 我 握 著 她 的 手 說 不用 謝 我 因為 我們
 她 的 媽媽 抬上 救護車 嘉珍 上車 前 對 我 說 謝謝 你 的 幫忙 我 握 著 她 的 手 說 不用 謝 我 因為 我們 是 好朋友 二 無私 的 
車 前 對 我 說 謝謝 你 的 幫忙 我 握 著 她 的 手 說 不用 謝 我 因為 我們 是 好朋友 二 無私 的 愛 愛 像 火紅 的 太陽 散發 光 
正 為了 缺乏 旅費 而 發愁 的 時候 員外 來 找 他 並且 對 他 說 我 看 你 悶悶不樂 是不是 進京 趕考 的 旅費 不 夠 這裡 有 一些 銀子
物 和 銀子 向 員外 道謝 時 員外 握 著 他 的 手 說 你 不用 還 我 了 我 只是 盡 一份 心力 而已 以後 有 機會 希望 你 也 能夠 幫助
銀子 向 員外 道謝 時 員外 握 著 他 的 手 說 你 不用 還 我 了 我 只是 盡 一份 心力 而已 以後 有 機會 希望 你 也 能夠 幫助 別人 
身 趕考 吧 書生 用 顫抖 的 手 接過 銀子 含 著 眼淚 說 謝謝 您 我 不 知道 要 怎麼 來 報答 您 江 巡撫 說 你 不必 謝 我 也 不必 
 謝謝 您 我 不 知道 要 怎麼 來 報答 您 江 巡撫 說 你 不必 謝 我 也 不必 回報 我 四 快樂 的 閱讀課 上 國語課 的 時候 老師 叫 我
知道 要 怎麼 來 報答 您 江 巡撫 說 你 不必 謝 我 也 不必 回報 我 四 快樂 的 閱讀課 上 國語課 的 時候 老師 叫 我們 這一組 做 讀書
 閱讀課 上 國語課 的 時候 老師 叫 我們 這一組 做 讀書 心得 報告 我 第一個 站起來 發言 我們 閱讀 的 好 書 是 小 王子 這 是 法國人 
 小 王子 告訴 他 在 星球 旅行 的 經過 兩 人 成為 知心 的 朋友 我 說完 之後 組長 站起來 補充 說 小 王子 是 一個 可愛 的 人 他 在
星 上 每天 照顧 會 說話 的 玫瑰花 、 清理 火山灰 而且 欣賞 落日 我 喜歡 這種 自由自在 的 生活 明珠 說 這本 書 最 精采 的 部分 遇到
 的 商人 等 小 王子 不 喜歡 自大 的 人 也 不 喜歡 虛偽 的 人 我 覺得 小 王子 很 正直 最後 阿平 說 這本 書 中 有 許多 值得 思考



目录
相关文章
|
19天前
|
缓存 自然语言处理 数据处理
Python自然语言处理面试:NLTK、SpaCy与Hugging Face库详解
【4月更文挑战第16天】本文介绍了Python NLP面试中NLTK、SpaCy和Hugging Face库的常见问题和易错点。通过示例代码展示了如何进行分词、词性标注、命名实体识别、相似度计算、依存关系分析、文本分类及预训练模型调用等任务。重点强调了理解库功能、预处理、模型选择、性能优化和模型解释性的重要性,帮助面试者提升NLP技术展示。
34 5
|
9月前
|
机器学习/深度学习 自然语言处理 算法
深入NLTK:Python自然语言处理库高级教程
在前面的初级和中级教程中,我们了解了NLTK库中的基本和进阶功能,如词干提取、词形还原、n-gram模型和词云的绘制等。在本篇高级教程中,我们将深入探索NLTK的更多高级功能,包括句法解析、命名实体识别、情感分析以及文本分类。
|
9月前
|
机器学习/深度学习 自然语言处理 数据可视化
nlp入门之spaCy工具的使用
本文作为nlp开山篇的第四篇,简要介绍了spaCy工具的用法
|
9月前
|
机器学习/深度学习 数据采集 自然语言处理
nlp入门之nltk工具的使用
本文作为nlp入门开山第三篇,简要的介绍了nltk工具的使用
|
9月前
|
自然语言处理 数据可视化 Python
掌握NLTK:Python自然语言处理库中级教程
在之前的初级教程中,我们已经了解了NLTK(Natural Language Toolkit)的基本用法,如进行文本分词、词性标注和停用词移除等。在本篇中级教程中,我们将进一步探索NLTK的更多功能,包括词干提取、词形还原、n-gram模型以及词云的绘制。
|
9月前
|
自然语言处理 Python
入门NLTK:Python自然语言处理库初级教程
NLTK(Natural Language Toolkit)是一个Python库,用于实现自然语言处理(NLP)的许多任务。NLTK包括一些有用的工具和资源,如文本语料库、词性标注器、语法分析器等。在这篇初级教程中,我们将了解NLTK的基础功能。
|
10月前
|
数据采集 人工智能 自然语言处理
用于提取数据的三个开源NLP工具
用于提取数据的三个开源NLP工具
170 0
|
11月前
|
自然语言处理 Python
【NLP Tool -- NLTK】NLTK进行英文情感分析、分词、分句、词性标注(附代码)
NLP自然语言处理之NLTK工具的使用,进行英文情感分析、分词、分句、词性标注(附代码)
509 0
BXA
|
12月前
|
机器学习/深度学习 数据采集 人工智能
Python自然语言处理:NLTK入门指南
自然语言处理(Natural Language Processing,NLP)是指计算机处理人类语言的领域。它是一门多学科交叉的学科,将计算机科学、人工智能、语言学等诸多学科的理论和方法融合在一起,将人类语言转化为计算机所能理解的形式,实现对人类语言的自动处理、理解和生成。NLP可以应用到很多方面,比如语音识别、机器翻译、情感分析、智能客服等
BXA
548 1
|
自然语言处理
自然语言处理工具Spacy使用笔记
自然语言处理工具Spacy使用笔记