基于依存句法分析的实体关系提取

2023-11-19

基于依存句法分析的实体关系提取

1.概述

概述
句法分析是自然语言处理中的关键技术之一,其基本任务是确定句子的句法结构或者句子中词汇之间的依存关系。 主要包括两方面的内容,一是确定语言的语法体系,即对语言中合法的句子的语法结构给与形式化的定义;另一方面是句法分析技术,即根据给定的语法体系,自动推导出句子的句法结构,分析句子所包含的句法单位和这些句法单位之间的关系。

原理
在基于依存句法分析的实体关系提取的实验中,首先,我们要通过依存句法分析分析出句子的依存关系,然后通过句子之间的依存关系根据中文之间的句子结构分析出句子之间具有的关系。
HanLP提供了最大熵依存句法分析器和CRF依存句法分析器进行句法分析。
在实验中我们采用了HanLP提供的最大熵依存句法分析器来实现对需要提取关系的句子进行依存句法分析。下面将介绍HanLP的安装和使用。

2.句法分析

HanLP简介
HanLP是一系列模型与算法组成的NLP工具包,由大快搜索主导并完全开源,目标是普及自然语言处理在生产环境中的应用。HanLP具备功能完善、性能高效、架构清晰、语料时新、可自定义的特点。
HanLP提供下列功能:中文分词、词性标注、命名实体识别、关键词提取、自动摘要、短语提取、拼音转换、简繁转换、文本推荐、依存句法分析、文本分类、word2vec、语料库工具。

HanLP组成
HanLP将数据与程序分离,给予用户自定义的自由。 HanLP由三部分组成:HanLP = .jar + data + .properties 。
其中data部分包括dictionary和model。 dictionary部分是词法分析必需的,model是语法分析必需的。HanLP支持用户添加自定义词典。
properties配置文件的作用是告诉HanLP词典的位置在哪里,以及添加用户自定义词典,只需要将添加词典的位置添加到properties文件中就可以。
Jar中包含了HanLP所有的文本处理的类和方法。

HanLP安装
如果是在java环境下运行,需要去官网下载jar、data、hanlp.properties文件。
如果是在python环境下运行,则只需要在命令行输入如下命令即可。

pip install pyhanlp

HanLP几乎所有的功能都可以通过工具类HanLP快捷调用,如果要调用方法时,只需键入HanLP.,IDE应当会给出提示,并展示HanLP完善的文档。

句法分析
HanLP的句法分析命令为parseDependency。

sentence = HanLP.parseDependency(“海洋由水组成")

通过上述语句,可以分析出句子之间的依存关系。

海洋	前置宾语	组成
由	状中结构	组成
水	介宾关系	由
组成	核心关系	##核心##

3.关系提取

关系提取
经过句法分析,可以得到句子之间的依存关系,但是并不能得到句子中哪些实体之间具有联系,因此我们需要对中文语法规则进行分析。下面举几个例子进行说明。

  1. 主谓宾关系:张三 喜欢 跑步
    通过这个句子,可以分析出三元组(张三,喜欢,跑步)。
  2. 动补结构:张三 洗 干净 了 衣服
    如果只考虑主谓宾关系,则可以提取出(张三,洗,衣服),但如果考虑动补结构,“干净”是“洗”的补语,因此可以提取出新的三元组(张三,洗干净了,衣服)。
  3. 并列关系:张三 和 李四 是 朋友
    如果只考虑主谓宾关系,则会得出(张三,是,朋友)的关系,但这是错误的,因此需要考虑“张三”和”李四“的并列关系,则可以得到三元组(张三,朋友,李四)。
  4. 介宾关系:张三 就职 于 学校
    这里“于”和“学校”是介宾关系,因此可以得到三元组(张三,就职于,学校)。

与之类似的还有前置宾语,右附加关系,定中关系,状中关系等关系,因此,只要分析出中文的语法规则,就可以对句子中的关系进行提取。

for i in range(len(word_array)):
	if (isexistSBV(i) and isexistVOB(i)):  # 判断是否有主谓和动宾关系
		print(entity1, relation, entity2)

如上所示,首先循环句子中的每个词,判断这个词是否具有主谓和动宾关系,如果有则可以形成一个三元组(e1,rel,e2).在“张三喜欢跑步”这个例子中,“喜欢”具有主谓结构和动宾关系,所以可以得到三元组(张三,跑步,喜欢)。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

基于依存句法分析的实体关系提取 的相关文章

随机推荐

  • Qt之QGraphicsView入门篇

    作者 billy 版权声明 著作权归作者所有 商业转载请联系作者获得授权 非商业转载请注明出处 简介 在Qt界面库中 对于图形的绘制 可以使用 QPainter 实现普通二维图形的绘制 该方法在 paintEvent 事件里编写绘图程序 其
  • 对人工智能芯片的一些看法

    人工智能芯片 2016年 随着阿尔法狗击败专业人类围棋棋手 已 深度学习 为基础的人工智能技术被大众所熟知 其实 深度学习 技术已经发展了有近30年的历史了 现在的 深度学习 的实现以神经网络技术为主 神经网络通过模拟大脑生物神经网络的连接
  • [OpenGL ES 06]使用VBO:顶点缓存

    OpenGL ES 06 使用VBO 顶点缓存 罗朝辉 http www cnblogs com kesalin 本文遵循 署名 非商业用途 保持一致 创作公用协议 这是 OpenGL ES 教程 的第六篇 前五篇请参考如下链接 OpenG
  • 数据库中连接(join)运算

    摘自 数据库原理与应用 第2版 宋金玉 陈萍 陈刚编著
  • Java学习前言—JDK、JRE、IntelliJ IDEA

    一 jdk java developer kit 与 jre java runtime environment 1 jdk是Java开发工具包 安装后可以编写Java程序 2 jre是Java运行环境 安装后可以运行Java程序 二 Ubu
  • Python爬虫工程师都需要掌握那些知识

    Python爬虫工程师都需要掌握那些知识 今天老师跟大家聊聊Python爬虫工程师需要掌握的知识 Python语言无论是在学术上还是就业上现在都非常受欢迎 很多都在学习Python 因为Python不仅能够做大数据分析 爬虫 云计算 还能做
  • SpringBoot 打 jar包和打war 包配置

    文章目录 1 前言 2 SpringBoot 打 jar 包 3 SpringBoot 打 war 包 4 小结 1 前言 目前我们熟知的SpringBoot 打包方式 一共分为两种 一种是打jar 包 内置tomcat 方式 yml 里的
  • 因果关系基本概念:后门标准

    阅读David Salazar的文章Causality To adjust or not to adjust后的笔记 文章目录 动机 实例 动机 在前面的文章中 我们知道就算控制再多的变量 也不一定能准确估计 采用后门标准 backdoor
  • 太阳神三国杀源代码 HOW TO BUILD

    HOW TO BUILD Tips stands for the folder where the repo is in VS2013 Windows Download the following packages 1 QT librari
  • 2016年1月15日(DEMO12-2ALPHA混合。)

    简而言之 alpha混合就是透明度 计算 Final src1 alpha src2 1 alpha 分解成RGB分量同样适用 其中 src1和src2为RGB格式 长16位 混合因子 0 255 长8位 创建alpha查找表 For 0到
  • Android插件:关闭WIFI下微信朋友圈视频自动播放插件开发过程详解

    本文将会详细介绍怎么开发一个屏蔽微信 7 0 5 朋友圈WIFI下自动播放视频插件 背景介绍 周五下班在地铁上刷微信时看到一个新闻 说是微信更新后在WIFI下自动播放视频还没法关闭 这个问题前几天我也遇到了 但是我记得设置里边有一个工作可以
  • 【代码随想录】回溯算法刷题

    代码随想录 回溯算法 组合 组合总和 III 电话号码的字母组合 组合总和 I 组合总和 II 分隔回文串 复原 IP 地址 子集 I 子集 II 递增子序列 全排列 I 全排列 II 重新安排行程 hard N 皇后 hard 解数独 h
  • js里map和reduce的用法

    map和reduce let arr 1 5 7 8 5 1 let arrNew arr map item gt item 2 console log map结果 arrNew 2 let arrNews for let i 0 i
  • 浅析Spring.NET(一):Spring.NET及简单使用

    浅析Spring NET 文章目录 浅析Spring NET 一 Spring NET 简单使用 1 什么是 Spring NET 2 快速创建第一个使用 Spring NET 的程序 注意事项 一 Spring NET 简单使用 最近用到
  • 数据库第七周【第五章作业存储过程】

    本章的作业题目来自第八章 T SQL建立存储过程的标准形式 Create procedure
  • Ubuntu16.04系统下安装osg3.7+osgearth3.3

    Ubuntu16 04系统下安装osg3 7 osgearth3 4 前言 安装背景 安装全过程 前置库的准备 更新CMake 升级gcc 升级gdal sqlite3安装 PROJ安装 Poppler安装 freetype安装 安装ope
  • 个人整理的数据集(手写中文数据、发票数据、快递单数据、车牌数据)

    本人在工作生活中收集了各个方面比较多的真实的数据集如下 一 手写中文数据集 1 档案类数据 此数据集为手写档案数据 数量较大 大约128G 图像均未标注 ex 2 手写作文数据 此数据集为手写作文数据 是大约800M左右 图像按行提供位置和
  • 1081 检查密码

    本题要求你帮助某网站的用户注册模块写一个密码合法性检查的小功能 该网站要求用户设置的密码必须由不少于6个字符组成 并且只能有英文字母 数字和小数点 还必须既有字母也有数字 输入格式 输入第一行给出一个正整数 N 100 随后 N 行 每行给
  • python判断一个数是奇数还是偶数_在python中检查一个数字是奇数还是偶数

    参见英文答案 gt python checking odd even numbers and changing outputs on number size 15个 我正在尝试制作一个程序 检查一个单词是否是一个回文并且我已经到目前为止它可
  • 基于依存句法分析的实体关系提取

    基于依存句法分析的实体关系提取 1 概述 概述 句法分析是自然语言处理中的关键技术之一 其基本任务是确定句子的句法结构或者句子中词汇之间的依存关系 主要包括两方面的内容 一是确定语言的语法体系 即对语言中合法的句子的语法结构给与形式化的定义