自然语言处理实战(一)|NLTK入门教程.md

本文主要介绍了NLTK语言工具包。

摘要:自然语言处理(NLP)是计算机科学领域与人工智能的一个重要方向。他研究实现人与计算机之间用自然语言进行有效的通信的各种领域和方法,涉及所有用计算机对自然语言处理进行的操作。以下例子是基于Python语言和一个名为NLTK的自然语言工具包的开源库实现的。

关键词:自然语言处理,NLP,NLTK

NLTK创建于2001年,最初是宾夕法尼亚州立大学计算机与信息科学系计算语言学课程的一部分。从那以后,在数十名贡献者的帮助下不断发展壮大,如今,它已被数十所大学的课程所采纳,并作为许多项目研究的基础。

第一章 语言处理与Python

提出问题:

  1. 通过将技术性较为简单的程序与大规模文本结合起来,我们能实现什么?
  2. 如何自动的提取处关键字和词组,用来总结文本的风格和内容?
  3. Python编程语言为上述工作提供了哪些工具和技术?
  4. 自然语言处理中有哪些有趣的挑战呢?

语言计算:文本和词汇

安装nltk

使用pip进行安装:

1
pip install nltk

输入以下命令来安装数据:

1
2
>>> import nltk
>>> nltk.download()

或者直接点击以下链接进行下载:点击下载

这里使用第二种方法。

下载完毕以后得到如图所示的压缩文件

解压并打开文件夹

打开packages,复制路径,添加NLTK_DATA到环境变量

测试是否安装成功

输入以下命令加载一些我们需要的文本:

1
from nltk.book import *

无论什么时候想要找到这些文本,只需要在Python提示符后面输入它的名字即可

搜索文本

除了简单地阅读文本之外,还有很多方法可以用来查看文本内容。词语索引视图可以显示指定单词地出现情况,同时可以显示一些上下文。

使用以下方法搜索text1文本中的monstrous单词。

1
text1.concordance('monstrous')

搜索结果

小试牛刀:

1
text2.concordance('lived')

关键词索引可以让我们看到上下文中的词,例如,可以看到monstrous出现在文章中,如the __ pictures 和 the __ size,还有那些词出现在相似地上下文中?可以通过以下函数查看。

1
text1.similar('monstrous')

使用以下函数研究共用两个或者两个以上的词汇的上下文,如monstrous 和 very. 使用方括号和圆括号讲这些词括起来,中间用逗号分割。

【在text2找到用法、意义与该单词集合相似的词 】

【用来识别2个关键词相似的词语。】

1
text2.common_contexts(["monstrous", "very"])