NLP+语篇分析(五)︱中文语篇分析研究现状(CIPS2016)
摘录自:CIPS2016 中文信息处理报告《第三章 语篇分析研究进展、现状及趋势》P21 CIPS2016
中文信息处理报告下载链接:http://cips-upload.bj.bcebos.com/cips2016.pdf
NLP词法、句法、语义、语篇综合系列:
NLP+词法系列(一)︱中文分词技术小结、几大分词引擎的介绍与比较
NLP+词法系列(二)︱中文分词技术及词性标注研究现状(CIPS2016)
NLP+句法结构(三)︱中文句法结构研究现状(CIPS2016)
NLP+语义分析(四)︱中文语义分析研究现状(CIPS2016)
NLP+语篇分析(五)︱中文语篇分析研究现状(CIPS2016)
语篇分析又称话语分析或篇章分析,是对“ 语篇” 整体进行的分析,包括语篇基本单元之间的关系,不同语篇单元的成份间关联以及语篇所含的信息等等。
语篇是由一个以上的句子( sentence)或语段( utterance)构成的。一篇文章、一段会话等都可以看成语篇。构成语篇的句子(或语段)彼此之间在形式上相互衔接,在意义上前后连贯。
语篇分析也可以为词、短语和句子的分析提供更多有用的信息。
例如,句子“你能穿多少就穿多少”,如果独立理解,至少有二种意思:一种是表示尽量少穿,另一种则是尽量多穿。这二种相反的意思对应着二种不同的分词结果:“你/ 能/ 穿/ 多/ 少/就/ 穿/ 多/ 少”和“你/ 能/ 穿/ 多少/ 就/ 穿/ 多少”。若不利用上下文信息,很难判断哪一种是合适的
.
.
一、结构分析
语篇结构自动分析的发展很大程度上得益于两个有代表性的语篇关系库:宾州语篇树库( Penn Discourse Treebank, PDTB)和 RST 树库( Rhetorical Structure Theory-Discourse
Treebank, RST-DT)。
.
.
1、RST 树结构分析
在 RST 树结构的分析过程中,关联性强的单元先通过修辞关系进行组合,形成大的语篇单元,大的语篇单元再形成更大的语篇单元,直至形成一棵覆盖语篇所有单元的树。一般来说,在同一段落内的语篇单元关系要强于不同段落之间的语篇单元。
因此,通常是先进行段内的语篇单元关系分析,之后再分析段落之间的关系。 RST 树的构成过程,类似于短语结构树的分析过程,语篇单元(通常是小句)类似句法中的词,这就可以借鉴语法分析中的很多算法,例如移进归约算法、 CYK 算法等。
.
.
2、依存结构树分析
依存分析结果也是一颗树,但和 RST 树不同,句子之间直接建立依存关系,不再含有中间节点。语篇依存结构的单元之间以非对称的二元依存关系连接。
其中,称依靠单元为“从属单元”( bordinate),称被依靠的单元为“中心单元”( head)。
利用语篇依存树表示依存结构时,需要在依存树起始位置插入一个人工单元,称之为 e0,并视之为该语篇的根( Root),以此简化定义与计算过程
3、隐含语篇关系分析
在进行语篇关系的确定时,由于隐含语篇关系缺乏可直接作为特征的显式连接词,相对于含连接词的显式关系分析更具挑战性。
对于隐式关系的识别,研究者们一般采用有监督学习的思路,将其作为一个分类问题进行处理。包括设计各类特征训练分类器,尝试使用机器学习的各类方法来提升分类器的效果。
近年来,也开始有研究者尝试使用深度神经网络的方法,基本思想是,首先对句子对进行建模,学习其语义表示,之后再对两个表示进行组合,最终将组合后的特征向量输入,预测得到隐式语篇关系的分布。
由于标注语料的不足,半监督的方法也开始用于隐式关系的识别。这一类方法通过同时使用标注和无标注的语料,从大规模的无标注语料中学习语篇特征,并能够较大幅度的提高对一些出现频率较少的关系的识别效果。有研究者首先在无标注的语料上训练可以预测句子间连接词的模型,再将这个模型得到的预测结果,作为隐式关系识别的一个特征。这种方法利用了显式连接词与隐式关系之间的联系,巧妙地从无标注的数据中获得了有助于识别隐式关系的信息。
.
.
二、指代消解技术
语篇的衔接性分析是指从词汇层面分析语篇内的概念关系,主要包括指代关系、省略关系、替换关系和词汇衔接性。词汇衔接又表现为词汇重复、同义或近义、反义、上下位义、整体与部分以及搭配六种。具有衔接关系的词可以通过一个链表示,称为词汇链。
指代或同指关系是构建词汇链的一个重要内容。如果两个词或短语具有同指关系,那么它们应该属于同一词汇链。
所谓同指,是指两个名词之间,或者名词与代词之间具有相同的指称语义( referent)。
同指关系是等价关系。指代是指由一个代词来表示上下文中某个名词或名词短语所指示的实体或实体的某个部分。语篇中第一次指示实体的名词或名词短语称为先行语( antecedent)。
先行语通常会先于代词出现,此时的指代关系也称为回指( anaphora);在有些情况下,也可能先出现代词,后出现先行语,此时的指代关系则称为预指( cataphoric reference)。
同指消解有很多方法,机器学习方法仍然是主流。
基本思想是将每个指称语表示为特征(组合),再根据特征组合判断指称语之间是否具有同指(或等价)关系。这可以看成分类问题,按二分类情况判断为同指或不同指;也可以看成为排序问题,计算当前指称语与其它指称语之间的排序关系,将排序最后的作为同指关系;还可以看成聚类问题,即,对所有指称语进行聚类,形成若干聚类子集,位于同一子集的看成同指关系。
.
.
三、中文语篇分析
具体对汉语而言,还有一个更基本的问题是语篇基本单元的界定。目前,有两种最具代25表性的观点:
( a)以小句为基本单元;
( b)以标点句(逗号,分号,句号等表示的词序列)为基本单元。
对于( a)而言,在语篇分析之前必须给出小句的判断方法。一种最直接的方法就是句法分析,但句法分析本身又是很难的问题。
对( b)而言,仍然面临( a)的问题,汉语中标点句可能只是一个短语,如例 1 中的①,而语篇关系应该在句法之上,否则,就意味着还需要分析句法结构。汉语的语篇分析需要破解这一怪圈。
汉语还有一个非常突出的问题是 0-指代问题。
相比西方语系讲究句子结构的完整性,汉语则更加追求经济性或简洁性,即能省则省,其结果会导致大量的 0-形式:
①我自来是如是,②从会吃饮食时便吃药,③到今未断。④请了多少名医,⑤修方配药,⑥皆不见效。
其中的③,既缺失了主语,也缺失了宾语;对于⑤而言,缺失的主语由④的宾语表示,目前的指代消解方法不容易正确判断。如果用中心理论,⑤缺失的主语优先和④的主语一致,这就会出现错误。此外,例 1 中翻译的很多错误也是 0-形式导致的。
由于汉语存在上述明显的特点,汉语的语篇分析需要为此开展专门的研究
NLP+语篇分析(五)︱中文语篇分析研究现状(CIPS2016)的更多相关文章
- 从零开始的程序逆向之路基础篇 第二章——用OllyDbg(OD)分析一个简单的软件
作者:Crazyman_Army 原文来自:https://bbs.ichunqiu.com/thread-43469-1-1.html 0x00知识回顾 (由于笔者省事,没开XP虚拟机,而且没关闭A ...
- 对C语言中sizeof细节的三点分析
转自对C语言中sizeof细节的三点分析 1.sizeof是运算符,跟加减乘除的性质其实是一样的,在编译的时候进行执行,而不是在运行时才执行. 那么如果编程中验证这一点呢?ps:这是前两天朋友淘宝面试 ...
- Java Learning Path(五)资源篇
Java Learning Path(五)资源篇 1. http://java.sun.com/ (英文) Sun的Java网站,是一个应该经常去看的地方.不用多说. 2.http://www-900 ...
- 鸿蒙内核源码分析(汇编传参篇) | 如何传递复杂的参数 | 百篇博客分析OpenHarmony源码 | v23.02
百篇博客系列篇.本篇为: v23.xx 鸿蒙内核源码分析(汇编传参篇) | 如何传递复杂的参数 | 51.c.h .o 硬件架构相关篇为: v22.xx 鸿蒙内核源码分析(汇编基础篇) | CPU在哪 ...
- MyBatis源码分析之环境准备篇
前言 之前一段时间写了[Spring源码分析]系列的文章,感觉对Spring的原理及使用各方面都掌握了不少,趁热打铁,开始下一个系列的文章[MyBatis源码分析],在[MyBatis源码分析]文章的 ...
- Spring Cloud 入门 之 Zuul 篇(五)
原文地址:Spring Cloud 入门 之 Zuul 篇(五) 博客地址:http://www.extlight.com 一.前言 随着业务的扩展,微服务会不对增加,相应的其对外开放的 API 接口 ...
- SpringBoot + Vue + ElementUI 实现后台管理系统模板 -- 后端篇(五): 数据表设计、使用 jwt、redis、sms 工具类完善注册登录逻辑
(1) 相关博文地址: SpringBoot + Vue + ElementUI 实现后台管理系统模板 -- 前端篇(一):搭建基本环境:https://www.cnblogs.com/l-y-h/p ...
- 鸿蒙内核源码分析(忍者ninja篇) | 都忍者了能不快吗 | 百篇博客分析OpenHarmony源码 | v61.02
百篇博客系列篇.本篇为: v61.xx 鸿蒙内核源码分析(忍者ninja篇) | 都忍者了能不快吗 | 51.c.h.o 编译构建相关篇为: v50.xx 鸿蒙内核源码分析(编译环境篇) | 编译鸿蒙 ...
- 鸿蒙内核源码分析(编译环境篇) | 编译鸿蒙看这篇或许真的够了 | 百篇博客分析OpenHarmony源码 | v50.06
百篇博客系列篇.本篇为: v50.xx 鸿蒙内核源码分析(编译环境篇) | 编译鸿蒙防掉坑指南 | 51.c.h.o 编译构建相关篇为: v50.xx 鸿蒙内核源码分析(编译环境篇) | 编译鸿蒙防掉 ...
随机推荐
- 如何使用 highlight.js 高亮代码
highlight 是一款简单易用的 web 代码高亮插件,可以自动检测编程语言并高亮,兼容各种框架,可以说是十分强大了.下面就简单介绍一下如何使用这款插件. 两种使用方式: 1. 手动选择主题,官网 ...
- flask----flask-session
一.flask-session flask-session是flask框架的session组件,由于原来flask内置session使用签名cookie保存,该组件则将支持session保存到多个地方 ...
- 覆盖equals()时总要覆盖hashCode()
覆写如下: public class User{ private Integer id; private String userName; private String passWord; publi ...
- 浅谈WPF依赖项属性
浅谈WPF依赖项属性 0. 引言 依赖项属性虽然在使用上和CLR属性一样,但是它是WPF特有的,不同于CLR属性.只是封装为我们常用CLR的属性,在语法使用上和CLR属性一样.WPF中一些功能:动画, ...
- python3操作redis
redis也被称为缓存 1.redis是一个key-value存储系统,没有ForeignKey和ManyToMany的字段. 2.在redis中创建的数据彼此之间是没有关系的,所以也被称为是非关系型 ...
- Mybatis异常There is no getter for property named 'XXX' in 'class com.xxx.xxx.UserAccountDTO
mybatis报错异常信息如下: 解决: 在接口中加上注解:@Param("userAccountDTO"),如图
- Redis进阶实践之十 Redis哨兵集群模式
一.引言 上一篇文章我们详细的讲解了Redis的主从集群模式,其实这个集群模式配置很简单,只需要在Slave的节点上进行配置,Master主节点的配置不需要做任何更改,但是有一 ...
- R语言dplyr包初探
昨天学了一下R语言dplyr包,处理数据框还是很好用的.记录一下免得我忘记了... 先写一篇入门的,以后有空再写一篇详细的用法. #dplyr learning library(dplyr) #fil ...
- ThinkPHP删除栏目(多)
前段时间发表了一个删除栏目的随笔,当时实现的功能是删除一条信息,这次来实现一下批量删除栏目. 我们需要达到的是这样一个效果: 选中批量删除按钮后可以选中所有该页面的栏目,这个是前端页面的实现,在这里就 ...
- 802.1X和NAP整合实验手册
实验描述 公司内部有多个部门,创建了域的架构,并搭建了DHCP服务器和Radius服务器,要求每个部门都独享一个网段,实现每位用户插上网线后,跳出窗体进行身份验证,如果用户通过验证,根据用户所在的部门 ...