博客
关于我
HanLP的依存分析
阅读量:356 次
发布时间:2019-03-04

本文共 2769 字,大约阅读时间需要 9 分钟。

# 前言

    HanLP2.1支持包括简繁中英日俄法德在内的104种语言上的10种联合任务:分词(粗分、细分2个标准,强制、合并、校正3种)、词性标注(PKU、863、CTB、UD四套词性规范)、命名实体识别(PKU、MSRA、OntoNotes三套规范)、依存句法分析(SD、UD规范)、成分句法分析语义依存分析(SemEval16、DM、PAS、PSD四套规范)、语义角色标注词干提取词法语法特征提取抽象意义表示(AMR)。

    HanLP提供RESTfulnative两种API,分别面向轻量级和海量级两种场景

 

  • 在线演示:
  • HanLP Doc:
  • HanLP 教学资源:
  • HanLP GitHub:

 

# 安装

  • Native

  1. 创建虚拟环境(非必要操作

conda create -n hanlp python=3.7

  2. 安装HanLP(当在线安装失败时,可选择离线安装 []

pip install hanlp-2.1.0a36.tar.gz
  • RESTful

pip install hanlp_restful

 

# HanLP的使用(以native为例

  1. 查询HanLP中所有的预训练模型

hanlp.pretrained.ALL
lang corpora model tok pos ner dep con srl sdp lem fea amr
fine coarse ctb pku 863 ud pku msra ontonotes SemEval16 DM PAS PSD
mul UD2.7
OntoNotes5
small 98.62 - - - - 93.23 - - 74.42 79.10 76.85 70.63 - 91.19 93.67 85.34 87.71 84.51 -
base 99.67 - - - - 96.51 - - 80.76 87.64 80.58 77.22 - 94.38 96.10 86.64 94.37 91.60 -
zh open small 97.25 - 96.66 - - - - - 95.00 84.57 87.62 73.40 84.57 - - - - - -
base 97.50 - 97.07 - - - - - 96.04 87.11 89.84 77.78 87.11 - - - - - -
close small 96.70 95.93 96.87 97.56 95.05 - 96.22 95.74 76.79 84.44 88.13 75.81 74.28 - - - - - -
base 97.52 96.44 96.99 97.59 95.29 - 96.48 95.72 77.77 85.29 88.57 76.52 73.76 - - - - - -

  2. 使用HanLP 

import hanlpHanLP = hanlp.load(hanlp.pretrained.mtl.CLOSE_TOK_POS_NER_SRL_DEP_SDP_CON_ELECTRA_SMALL_ZH)HanLP(['清华大学研究核能的教授有哪些'])
{	'tok/fine': [['清华大学', '研究', '核能', '的', '教授', '有', '哪些']], 	'tok/coarse': [['清华大学', '研究', '核能', '的', '教授', '有', '哪些']], 	'pos/ctb': [['NR', 'VV', 'NN', 'DEC', 'NN', 'VE', 'PN']], 	'pos/pku': [['nt', 'v', 'n', 'u', 'n', 'v', 'r']], 	'pos/863': [['ni', 'v', 'n', 'u', 'n', 'v', 'r']], 	'ner/msra': [[('清华大学', 'ORGANIZATION', 0, 1)]], 	'ner/pku': [[('清华大学', 'nt', 0, 1)]], 	'ner/ontonotes': [[('清华大学', 'ORG', 0, 1)]], 	'srl': [[[('研究', 'PRED', 1, 2), ('核能', 'ARG1', 2, 3), ('教授', 'ARG0', 4, 5)], [('清华大学研究核能的教授', 'ARG0', 0, 5), ('有', 'PRED', 5, 6), ('哪些', 'ARG1', 6, 7)]]], 	'dep': [[(5, 'nn'), (5, 'rcmod'), (2, 'dobj'), (2, 'cpm'), (6, 'top'), (0, 'root'), (6, 'dobj')]], 	'sdp': [[[(2, 'Agt')], [(5, 'rAgt')], [(2, 'Cont')], [(2, 'mAux')], [(6, 'Poss')], [(7, 'mVain')], [(0, 'Root'), (6, 'mTone')]]], 'con': [['TOP', [['IP', [['NP', [['NP', [['NR', ['清华大学']]]], ['CP', [['CP', [['IP', [['VP', [['VV', ['研究']], ['NP', [['NN', ['核能']]]]]]]], ['DEC', ['的']]]]]], ['NP', [['NN', ['教授']]]]]], ['VP', [['VE', ['有']], ['NP', [['PN', ['哪些']]]]]]]]]]]}

  3. 可以选择子任务功能

HanLP(['清华大学研究核能的教授有哪些'], tasks='tok')HanLP('清华大学研究核能的教授有哪些', tasks=['pos', 'dep'])HanLP('清华大学研究核能的教授有哪些', tasks=['pos/863', 'dep'])

  4. 可视化输出

HanLP(['清华大学研究核能的教授有哪些']).pretty_print()

 

# 工具学习系列

  词性标注集pos/tag 依存句法分析标注集dep 语义依存分析标注集sdp
LTP
SpaCy 基于扩展 采用了的依存分析标签 -
DDParser -
HanLP 、、、 、DM、PAS、PSD
stanford corenlp Penn Chinese Treebank Tag Set() 没找到说明采用的标注集 [] -
jieba 和 兼容的标记法 不支持 不支持

 

转载地址:http://jflh.baihongyu.com/

你可能感兴趣的文章
mysql union orderby 无效
查看>>
mysql where中如何判断不为空
查看>>
mysql workbench6.3.5_MySQL Workbench
查看>>
MySQL Workbench安装教程以及菜单汉化
查看>>
MySQL Xtrabackup 安装、备份、恢复
查看>>
mysql [Err] 1436 - Thread stack overrun: 129464 bytes used of a 286720 byte stack, and 160000 bytes
查看>>
MySQL _ MySQL常用操作
查看>>
MySQL – 导出数据成csv
查看>>
MySQL —— 在CentOS9下安装MySQL
查看>>
mysql 不区分大小写
查看>>
mysql 两列互转
查看>>
MySQL 中开启二进制日志(Binlog)
查看>>
MySQL 中文问题
查看>>
MySQL 中日志的面试题总结
查看>>
mysql 中的all,5分钟了解MySQL5.7中union all用法的黑科技
查看>>
Mysql 中的日期时间字符串查询
查看>>
MySQL 中锁的面试题总结
查看>>
MySQL 中随机抽样:order by rand limit 的替代方案
查看>>
MySQL 为什么需要两阶段提交?
查看>>
mysql 为某个字段的值加前缀、去掉前缀
查看>>