nltknltk入门


备注

NLTK是构建Python程序以使用人类语言数据的领先平台。它为50多种语料库和词汇资源 (如WordNet)提供了易于使用的界面,还提供了一套用于分类,标记化,词干化,标记,解析和语义推理的文本处理库,用于工业级NLP库的包装器,和积极的讨论论坛

这本书

Python的自然语言处理提供了语言处理编程的实用介绍。它由NLTK的创建者撰写,引导读者了解编写Python程序,处理语料库,分类文本,分析语言结构等的基础知识。本书正在针对Python 3和NLTK 3进行更新。(最初的Python 2版本仍然可以在http://nltk.org/book_1ed上找到 。)

版本

NLTK版本历史

发布日期
3.2.4( 最新 2017年5月21日
3.2 2016年3月3日
3.1 二零一五年十月十五日

基本条款

文集

文本正文,单数。 Corpora是其中的复数。示例:医学期刊的集合。

词汇

单词及其含义。示例:英语词典。但是,请考虑各个字段将具有不同的词典。例如:对于金融投资者而言,“公牛”这个词的第一个含义是对市场充满信心的人,与普通的英语词典相比,“公牛”这个词的第一个含义是动物。因此,金融投资者,医生,儿童,机械师等都有一个特殊的词汇。

代币

作为任何一部分的每个“实体”都是基于规则分开的。例如,当句子被“标记化”为单词时,每个单词都是一个标记。如果您将句子标记为段落,则每个句子也可以是一个标记。

安装或设置

NLTK需要Python 版本2.73.4+

这些说明考虑了python 版本 - 3.5


  • Mac / Unix:

    1. 安装NLTK:运行sudo pip install -U nltk
    2. 安装Numpy(可选):运行sudo pip install -U numpy
    3. 测试安装:运行python 然后输入import nltk

    注意:对于旧版本的Python,可能需要安装setuptools(请参阅http://pypi.python.org/pypi/setuptools)并安装pip(sudo easy_install pip)。




参考: http //www.nltk.org/install.html

用Conda安装NLTK。

用Continuum的anaconda / conda 安装NLTK。

如果您使用的是Anaconda,很可能nltk已经下载到根目录中(尽管您可能仍需要手动下载各种包)。

使用conda

conda install nltk 
 

要升级nltk 使用conda

conda update nltk
 

随着anaconda

如果您在anaconda中使用多个python环境,请首先激活要安装nltk的环境。您可以使用该命令检查活动环境

conda info --envs
 

在目录路径之前带有*符号的环境是活动的。改变活跃的环境使用

activate <python_version>
for eg. activate python3.5
 

现在使用commnad检查此环境中安装的软件包列表

conda list
 

如果您在列表中找不到'nltk',请使用

conda install -c anaconda nltk=3.2.1
 

有关详细信息,请参阅https://anaconda.org/anaconda/nltk


要安装mini-conda aka condahttp//conda.pydata.org/docs/install/quick.html

安装anacondahttps//docs.continuum.io/anaconda/install

NLTK的下载功能

你可以在pip 安装NLTK( pip install nltk )。安装完成后,很多组件都不会出现,你将无法使用NLTK的一些功能。

在Python shell中,运行函数ntlk.download() 以选择要使用UI安装的其他软件包。或者,您可以使用python -m nltk.downloader [package_name]


  • 下载所有可用的软件包。
nltk.download('all')
 

  • 下载特定包。
nltk.download('package-name')
 

  • 下载特定文件夹的所有包。
import nltk

dwlr = nltk.downloader.Downloader()

# chunkers, corpora, grammars, help, misc, 
# models, sentiment, stemmers, taggers, tokenizers
for pkg in dwlr.packages():
    if pkg.subdir== 'taggers':
        dwlr.download(pkg.id)
 

  • 下载Corpora文件夹以外的所有软件包。
import nltk

dwlr = nltk.downloader.Downloader()

for pkg in dwlr.corpora():
    dwlr._status_cache[pkg.id] = 'installed'

dwlr.download('all')
 

随着NLTK

您可以使用NLTK(尤其是nltk.tokenize 包)来执行句子边界检测:

import nltk
text = "This is a test. Let's try this sentence boundary detector."
text_output = nltk.tokenize.sent_tokenize(text)
print('text_output: {0}'.format(text_output))
 

输出:

text_output: ['This is a test.', "Let's try this sentence boundary detector."]