nltk库和spacy库都是英文自然语言处理常用库,但是配置起来比较麻烦,今天就分享配置方法。

nltk配置

安装nltk库,命令行输入以下命令

pip3 install nltk

有些时候的nltk代码需要语料库才能运行,nltk语料库很庞大,这时候运行下面的python代码,就会下载语料库

import nltk	
nltk.download()

不过经常因为网络问题导致语料库无法下载下来,这时候需要我们手动下载并配置语料库

大邓已经将语料库资源放到百度网盘,链接: https://pan.baidu.com/s/1RMRfNAs2P8AxA6NISJKVjw 提取码: xbkj

下载并解压,得到nltkdata文件夹,现在我们要知道nltkdata文件夹应该放置的位置(路径), 运行下面代码即可得到nltk_data在本机中放置的位置

import nltk	
nltk.data.find(".")

Run

FileSystemPathPointer('/Users/thunderhit/nltk_data')

我们将nltkdata文件夹放到对应的路径(/Users/thunderhit/nltkdata),nltk配置完成~

spacy配置

安装spacy库,命令行输入以下命令

pip3 install spacy

通nltk类似,spacy很多的代码运行时候需要用到训练好的模型,模型列表https://spacy.io/models

  • English
  • German
  • French
  • Spanish
  • Portuguese
  • Italian
  • Dutch
  • Greek
  • Multi-language

可惜spacy目前还是中文没有模型,我们以英文为例。

spacy有4种英文模型 https://spacy.io/models/en ,本文使用encoreweb_sm模型作为案例进行安装

打开 https://github.com/explosion/spacy-models/releases//tag/encorewebsm-2.1.0 网页点击 encorewebsm-2.1.0.tar.gz 文件链接进行下载。

下载完成后将其移动至桌面,方面安装。

打开命令行,切换至桌面

cd desktop

命令行中安装模型

pip3 install en_core_web_sm-2.1.0.tar.gz

注意spacy使用时候需要声明使用的模型

import spacy	
nlp = spacy.load('en_core_web_sm')

之后就可以愉快的使用nltk和spacy