spacy中文句法分析详解

桃扇骨 2023-10-05 13:59 129阅读 0赞

最近在做中文命名实体识别的研究,因此打算使用spacy来获取句法分析的结构信息,接下里大致说下spacy中所涉及到的一些方法和功能,目前仅仅介绍我使用到的,有不完善的地方请大家谅解。

一、首先是安装spacy的zh_core_web_trf或者zh_core_web_md,我这里使用的是zh_core_web_trf,具体的安装方法如下:
首先先确认你没有安装spacy,因为中文版本冲突问题,需要直接进行zh_core_web_trf的安装,它会将用到的依赖包一块安装上,包括spacy。(可能你们也有别的安装方法,可以解决冲突)
1>先去这个地址下载地址下载安装包,我这里选择的是transformer版本的中文包。

2> cd到下载目录,使用pip命令进行安装。

  1. pip install zh_core_web_trf-3.0.0a0.tar.gz

二、使用方法介绍

  1. import spacy
  2. parser = spacy.load('zh_core_web_trf')
  3. doc = parser('小明在上海虹口足球场观看足球比赛。')
  4. for token in doc[:17]:
  5. print("{0}\t{1}\t{2}\t{3}\t{4}\t{5}\t{6}\t{7}\t{8}\t{9}\t{10}\t{11}\n".format(
  6. token.text, # 文本
  7. token.idx, # 索引值(即在原文中的定位)
  8. token.lemma_, # 词元(lemma)
  9. token.head, # 当前Token的Parent Token,从语法关系上来看,每一个Token都只有一个Head。
  10. token.dep_, # 依存关系
  11. token.children, # 语法上的直接子节点
  12. token.ancestors, # 语法上的父节点
  13. token.is_punct, # 是否为标点符号
  14. token.is_space, # 是否为空格
  15. token.shape_, # 字个数用x表示,如:两个字就是xx
  16. token.pos_, # 词性
  17. token.tag_ # 标记
  18. ))

结果如下:
在这里插入图片描述
综上,是我用到的一些,如果有其他需求的可以查找官方文档进行了解。

发表评论

表情:
评论列表 (有 0 条评论,129人围观)

还没有评论,来说两句吧...

相关阅读

    相关 spacy中文句法分析详解

    最近在做中文命名实体识别的研究,因此打算使用spacy来获取句法分析的结构信息,接下里大致说下spacy中所涉及到的一些方法和功能,目前仅仅介绍我使用到的,有不完善的地方请大家

    相关 数学之美:条件随机场与句法分析

    句法分析就是为每个句子建立语法树。最初的句法分析,受形式语言的影响,使用的是规则方法,不断使用规则树从底向上的将树的末端节点向上合并,直到合并出根节点。当然也可以使用自顶向下的