博客
关于我
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存储过程入门
查看>>
mysql存储过程批量建表
查看>>
MySQL存储过程的使用实现数据快速插入
查看>>
mysql存储过程详解
查看>>
Mysql存表情符号发生错误
查看>>
MySQL学习-group by和having
查看>>
MySQL学习-MySQL数据库事务
查看>>
MySQL学习-MySQL条件查询
查看>>
MySQL学习-SQL语句的分类与MySQL简单查询
查看>>
MySQL学习-子查询及limit分页
查看>>
MySQL学习-排序与分组函数
查看>>
MySQL学习-连接查询
查看>>
Mysql学习总结(10)——MySql触发器使用讲解
查看>>
Mysql学习总结(12)——21分钟Mysql入门教程
查看>>
Mysql学习总结(13)——使用JDBC处理MySQL大数据
查看>>
Mysql学习总结(15)——Mysql错误码大全
查看>>
Mysql学习总结(17)——MySQL数据库表设计优化
查看>>
Mysql学习总结(18)——Mysql主从架构的复制原理及配置详解
查看>>
Mysql学习总结(19)——Mysql无法创建外键的原因
查看>>
Mysql学习总结(20)——MySQL数据库优化的最佳实践
查看>>