当前位置:   article > 正文

spacy工具包如何使用?需要安装哪些包?

spacy工具包

目录

一、问题描述:

补充说明~

二、问题解决:

2.1 英文文本

2.2 中文文本


一、问题描述:

因任务需求,需要使用到一些特征信息,比如词性或依存解析结果。目前,存在很多的工具包可以实现对中文或英文句子进行解析,如spacy, nltk, stanford CoreNLP等。

补充说明~

Spacy,NLTK和Stanford CoreNLP都是自然语言处理(NLP)库。这些库都可以处理中文和英文文本。下面是它们各自的优缺点:

  • Spacy:速度快,内存占用少,易于使用,支持多语言,但是对于一些特殊任务可能不太适用。
  • NLTK:功能强大,支持多种语言,有大量的文档和教程,但是速度较慢。
  • Stanford CoreNLP:支持多种语言,功能强大,有很多可用的模型和工具,但是需要Java环境。

 根据实际需求,我选择了spacy工具包。

下面分别介绍如何使用spacy工具包,实现对中文和英文文本的解析。

二、问题解决:

2.1 英文文本

1. 首先,需要安装Spacy, 你可以使用以下命令在终端中安装Spacy:

pip install spacy

 2. 安装完成后,你需要下载一个预训练的模型。你可以使用以下命令下载英文模型:

python -m spacy download en_core_web_sm

 注意事项:

1)安装的en_core_web_sm包,要与spacy版本一致。 e.g.,  我使用的spacy 版本是2.2.1, 因此我的en_core_web_sm版本是2.3.0。

2)最简单的安装方式,是先下载对应的.tar.gz文件,官网下载地址,然后,直接使用安装命令安装。

特别的,高版本的下载地址(也可以直接更改url中的版本数字,直接切换到对应的版本下载地址):

zh_core_web_sm-3.3.0下载地址:

pip install en_core_web_sm-2.3.0.tar.gz 

 3. 安装完成后,可以实现自己想要的功能。如想要输出每个单词的文本,词性和依赖关系,可以采用下面的代码:

  1. import spacy
  2. nlp = spacy.load("en_core_web_sm")
  3. doc = nlp("This is an example sentence.")
  4. for token in doc:
  5. print(token.text, token.pos_, token.dep_)

 Tips:

如果想要可视化解析结果,可参考另一篇博客:Click Here

2.2 中文文本

若想对中文文本进行解析,方法同英文。区别仅在于需要针对不同的语种,安装不同的包。

若Spacy工具包,版本是2.2.1, 则需要下载的是 pip install zh_core_web_sm-2.3.0.tar.gz

 使用的时候,仅有如下一行代码不同,其余完全相同。

nlp = spacy.load("zh_core_web_sm")

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小丑西瓜9/article/detail/343422
推荐阅读
相关标签
  

闽ICP备14008679号