Press "Enter" to skip to content

如何在Jupyter Notebook中安装和使用NLTK

本站内容均来自兴趣收集,如不慎侵害的您的相关权益,请留言告知,我们将尽快删除.谢谢.

在最近分享的几篇范文中,研究者使用了点互信息PMI和依存句法分析方法,进行科技政策文本的分析研究:

 

1. 基于依存句法分析的科技政策领域主题词表无监督构建

 

2. 基于科技政策文本的程度词典构建研究

 

笔者查了有关这2种方法的资料和具体实现,发现可以基于python的nltk库来做实践。

 

但是,使用NLTK的所有特性会遇到安装的麻烦。此前,我们发布的Jupyter Notebook也没有遇到什幺问题,现在为什幺要专门讲解安装问题呢?因为以前只用到了mltk的几个功能函数,仅仅做计算,没有使用nltk-data。如果要做一些基于机器学习数据的计算,就会有麻烦,即便nltk首页上的示例代码都运行不了。

 

那幺,本文将手把手帮读者解决由于网络不同造成的安装nltk-data的问题。

 

什幺是NLTK?

 

NLTK,全称Natural Language Toolkit,自然语言处理工具包,是NLP研究领域常用的一个Python库,由宾夕法尼亚大学的Steven Bird和Edward Loper在Python的基础上开发的一个模块,至今已有超过十万行的代码。这是一个开源项目,包含数据集、Python模块、教程等;

 

笔者在安装和使用NLTK的过程中,碰到了一些问题,造成安装不成功(特别是nltk-data),后来终于找到能顺利安装成功的方法,在此记录下来,有需要研究和使用这个nltk库的同学可以参考。

 

NLTK库官网文档及模块列表,见: Natural Language Toolkit

 

1, 安装anaconda

 

如果已经安装anaconda, 这一步忽略。

 

如果要建设Jupyter Notebook的运行环境,建议安装Anaconda,好用,省事,尤其对于数据分析师来说,这个一键安装的软件包是最合适的。

 

Anaconda是一个开源的Python发行版本,其包含了conda、Python等180多个科学包及其依赖项,是整合了python和大量第3方库的一个集成环境,用户不用花时间去处理环境依赖。

 

安装过程见之前的一篇说明: 如何运行数据分析和可视化Jupyter Notebook模板

 

2,安装NLTK

 

2.1 打开一个运行python命令的窗口

 

点击windows左下角的开始菜单,找到Anaconda3下面的“Anaconda Powershell Prompt”,鼠标右键点击“以管理员身份运行” 。如果安装某些软件的时候,需要在电脑的非用户区域安装软件,就需要管理员身份,才有系统区写入的权限。

2.2 在命令窗口里安装nltk

 

在打开的python命令窗口里,输入如下安装nltk包的命令并回车:

 

conda install nltk

3,下载并安装NLTK的模块/语料库

 

注释:由于直接在python里运行 nltk.download() 总是失败,所以使用git先下载nltk-data, 再安装。

 

3.1 下载并安装git

 

Git下载地址:Git – Downloads

 

笔者选择下载windows版本。

3.2 安装git

 

双击下载到本地的安装文件:Git-2.33.0-64-bit.exe。这个软件有太多安装选项了,我采取一个策略:不改动设置,一路点击“下一步”,完成安装。

 

按提示完成安装。

3.3 使用git下载nltk-data

 

因为在内地环境直接从github下载会很慢, 所以从一个github的中转站去下载。

 

详情参考这篇知乎文章的第5和第6步: oliver:国内下载GITHUB库加速方法及快速安装NLTK

 

我们选择git clone的方法。打开一个git bash窗口,运行如下命令,开始下载:

 

git clone http://gitclone.com/github.com/nltk/nltk_data.git

3.4 修改nltk_data/index.xml文件

 

把所有网址: // raw.githubusercontent.com /nltk/nltk_data/gh-pages

 

替换成: // localhost:8000

 

在git bash窗口中输入以下两条命令:

 

cd nltk_data
sed -i 's;s://raw.githubusercontent.com/nltk/nltk_data/gh-pages;://localhost:8000;g' index.xml

3.5 启动一个本地web server

 

在git bash窗口里输入如下命令, 启动一个本地web server:

 

python -m http.server 8000

 

【注意】如果在git bash中遇到command not found的错误,那幺把这个窗口关掉,从开始菜单中找到git bash,重新运行起来,如果经过重启,一定要记得执行cd nltk_data,再输入上面的命令

3.6 运行python

 

在前面已经启动的“Anaconda Powershell Prompt”下,输入python

 

在python环境下,输入:

 

import nltk
nltk.download()

 

【注意】如果遇到莫名奇妙的退出,那幺关掉这个Anaconda Powershell Prompt窗口,从开始菜单上重新启动这个窗口,这一次不要用管理员身份启动

3.7 在打开的NLTK Downloader界面中完成nltk_data安装

按照下图标出来的顺序操作:首先要修改Server Index,不用管Download Directory

4,在Jupyter Notebook试运行nltk官网首页的一个示例

 

4.1 启动Jupyter Notebook

4.2 新建一个notebook做测试

 

运行NLTK官网示例代码,看看输出结果

 

4.2.1 英文分词和词性

 

import nltk
sentence = """At eight o'clock on Thursday morning... Arthur didn't feel very good."""
tokens = nltk.word_tokenize(sentence)
tokens
tagged = nltk.pos_tag(tokens)
print(tagged[0:6])

4.2.2 显示一棵解析树

 

from nltk.corpus import treebank
t = treebank.parsed_sents('wsj_0001.mrg')[0]
t.draw()

5,下一步

 

Nltk库的功能很强大,下一步会针对一些子库和自带的语料库,做一些自然语言处理方面的测试,同时会把一些测试过程和结果整理成Jupyter Notebook发布出来。

Be First to Comment

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注