6月10日,“网信中国”微信公众号发布消息称:微博热搜榜、热门话题榜暂停更新一周,这使得很多热榜平台都受到波及,而在吃瓜之余,我们更进一步地思考热点榜单以及热点名称生成背后的技术,并发出两连问:
热点名称是否仅仅来源于用户搜索,还是源于对用户搜索内容的进一步提炼和精简?对于现在每天发布的大量资讯,如何将资讯中的热点提取出来,并为热点生成一个形式简短、表达通顺、语义完整的名称?
实际上,“热点名称”这一最终的输出结果,对于整个事件提取来说,是个实实在在的“门面技术”,热点名称是否一目了然,是否具有明显的代表性,是最为容易被感觉到的。此外,我们在进行事件挖掘的工作中,也愈来愈发现,寻找一种语义丰富、形式剪短、表达连续、语句通顺且用户友好的事件名称表示方法需求很大,这个在事件类图谱(事理图谱)中的节点表示上需求尤为强烈。
本期围绕“事件名称生成”这一主题,从事件名称生成的必要性以及现有事件名称生成的方法进行介绍。
一、 事件名称生成概述
我们将从非结构化文本中生成出一段语义丰富、形式剪短、表达连续、语句通顺且用户友好的事件名称的过程称为“事件名称生成”。这类似于微博热搜或百度热榜中的热点。
我们打开百度搜索引擎时,可以看到其提供的热榜服务,其中的热榜名称高度语义化,阅读起来十分通顺。但我们可以发现,与热榜中的某个热点相关的资讯中,其关联的标题并不严格匹配,如下图中的“北京累计采样229.7万人”下对应的资讯大多都是包含该热点名词的资讯。

图1-百度热榜中的事件与关联资讯
从实现上看,大概存在两种方式:
一种是人工整理的形式,即在资讯出现后,人为预先地将热点编辑好,随后利用文本聚类的方法将相关的资讯关联到这个热点名称上,以做热度的计量,这个属于人工的方法;
另一种是从已完成聚类的资讯文本中,利用机器提取的方式,将众多资讯标题进行聚合和提取,并生成有效的热点名称。例如,针对聚类好的文本集合,可以从中抽离出各个资讯对应的标题,并从标题集合中通过公共子串、高频连续子串(n-gram)或非连续子串评分的方式获取相应的事件名称。
以下展示了以“我国开采出五色透明原油”和“钟南山院士空降北京”为例,通过使用高频非连续公共子串评分方法抽取得到的结果:


图2-基于最大非连续公共子串的事件名称生成效果
然而,针对单个文本而言,缺少统计、计量信息和对比信息,就需要返回到篇章本身来进行抽取,这种场景在如事件类图谱(事理图谱)中的事件节点名称在内的事件抽取领域需求尤为强烈。在很多现有系统中,大致有三种方式来处理:
一类是基于主题词、关键词或论元序列的名称表示,其核心思想为利用关键信息提取技术提取出某篇文档或事件的核心词汇,并按照某种排序规则进行表示。例如,利用典型的LDA主题建模得到相关主题词,利用TFIDF算法提取关键词,并选择其中的名词性实体、名词性短语、动词或动词性短语进行排序组合。这种方式较为简单、粗暴、语义不连贯,十分不利于阅读。
另一种是将文本中所涉及的论元,按照形如[人物]在[时间词]做了[动作词]的组织规则进行组合,这与框架式(framenet、ACE)的事件表示思想类似,如图3中列举的金融领域事件,事件名称可从对应的事件要素和论元进行组合而来。不过,这种方法无法满足大量异构的事件类型,模板和规则常无法涵盖所有情况。


图3-金融领域典型框架类事件样例图
第二类是按照原文自身不做任何改变,挑选标题或核心句作为本文的事件表示,EventRegistry等大多数现有系统都采用了这一方法。标题的优势在于篇幅要比正文要短,概括了整篇文章的内容,但标题对于目前营销号等传媒手段的泛滥,许多文不对题等标题党大量出现带来了不小影响,为了将标题纠偏,常使用基于标题和核心句并举的方式。这种方法比基于词序列的方法看来更为友好,但往往篇幅过长,在显示和传播上带来一定的限制;
第三类是指介于主题词序列和原文标题之间的一种表示方法,即对已经提取好的标题或文章核心句,进行形式上的加工,使得在不损失原文意义的情况下,尽可能缩短原句,并保证阅读通顺和语序合法,这也是本文探讨的问题。目前此类方法大多以标题为输入,使用基于句法分析的主谓宾事件短语提取和基于语句压缩的事件描述提取作为提取过程来加以实现。
二、 基于句法分析的主谓宾事件名称生成
针对输入的标题或摘要,进一步形成更为剪短的事件描述,结构化三元组的主谓宾抽取是其中的一个重要形式。句法分析是目前基于规则方法的主谓宾提取必备环节,通过句法分析手段,对句子进行成分分析,可完成短语的提取。
对于如何描述语句的语法结构,目前有两种主流观点:
一是短语结构语法,用某种规则分解句子为短语和单词,作用是识别出句子中的短语结构以及短语之间的层次句法关系,如下图中的(a)所示。
二是依存句法,依存句法认为“谓语”中的动词是一个句子的中心,其他成分与动词直接或间接地产生联系,通过分析语言单位内成分之间的依存关系揭示其句法结构,如下图中(b)所示。

图4-句子成分分析(a)和依存句法分析(b)图
常见的句法分析工具包括加州大学伯克利分校自然语言处理实验室开发的基于概率上下文法(PCFG)的Berkeley Parser句法分析器,斯坦福大学研制的StandfordParser,同时支持句子成分分析和依存句法分析,国内的依存句法分析器包括LTP、HanNLP等都提供了这一句法分析的服务。例如,给定句子:
“以色列国防军20日对加沙地带实施轰炸,造成3名巴勒斯坦武装人员死亡。”

图5-依存句法分析示意图
通过依存句法分析,我们可以得到该句子各个成分(词语及其词性)以及成分之间的依存关系类型,如图5所示。其中,约定谓语为动词性的词语,这样即可完成步骤:
遍历整颗依存句法树,执行:
1) 选择词性为谓词性的词语,如动词v作为候选,如我们得到了[“实施”、“轰炸”、“造成”、“死亡”]4个候选谓语;
2) 根据每个候选词,查找该候选词是否存在“主谓”或“并列”关系和“动宾”或“并列”关系,有则保留,得到最终的候选谓语集合,即[“实施”];
3) 针对候选谓语集合中的每个谓语词,分别查找其动宾关系的连接成分作为宾语,查找其对应的主谓关系的连接成分作为主语。如可得到“实施”的主语为“以色列国防军”,“宾语”为“轰炸”;
4) 针对谓语进行扩展,若谓语对应的宾语成分存在并列连接,并满足连接成分存在动宾关系,那么该连接成分则继承原宾语成分的主语,扩展出一个新的谓语,针对该谓语重复步骤3),可进一步得到“造成”的主语为“以色列国防军”,宾语为“死亡”这一结果;
5) 针对形成的主谓宾三元组,分别将其对应的主语和宾语进行扩展,扩展方式可按照前置修饰成分规则执行;
按照此类方法,我们可针对多个输入句子进行主谓宾提取,得到以下结果:

图6-基于依存句法分析的主谓宾提取效果图
同样的,针对句子成分分析的方法,可根据生成语法的相关规则(如IP短语统辖NP和VP短语)进行提取。
不过,基于句法的主谓宾提取,一方面对句法分析的性能要求较高,在实际的使用过程中常会因为句法分析错误而导致提取错误,并存在召回率差等特点。此外,该方法对提取规则依赖也较高,需要有专业的人士进行大量的规则模板的总结,较为费时费力。该方法针对规范的短句效果较好,但在长句或超长句,主系表结构、主谓双宾结构的句子效果还有待提升。
2)基于深度学习的主谓宾提取
基于深度学习的主谓宾提取,与开放信息三元组抽任务十分类似,针对给定的文本,识别出其中的主语成分、谓词成分和宾语成分,最终组合输出正确的主谓宾即<S,P,O>三元组。
实际上,开放信息三元组抽取存在如一个S对应多个(P, O);多个S对应多个(P, O);多个S对应一个(P, O);同一对(S, O)可能对应多个P等在内的多个难题,目前在事实上还存在诸多挑战,从实现上看,学习型模型中主要包括两种方式,即串行方法和联合抽取的方法。
其中,串行方法是目前用的较多且较为基准的一种方法,思路大致为:先进行成分识别,然后对识别出的成分进行关系分类,但这种思路无法很好地处理同一组(S, O)对应多个P的情况,同时会存在采样效率的问题,在处理一个句子中存在多个主语成分、宾语成分或谓语成分时,会带来分类的爆炸问题。

图7-基于串行方式的主谓宾提取示意图
此外,将该任务当成一个整体的序列标注问题,即联合式抽取模型是另一种思路,但这种设计不能很好地处理同时有多个S、多个O的情况,在进行组合时,常常不可避免的使用简单粗暴的“就近原则”,即如果一个句子中包含两个或者更多相同关系类型的三元组,我们基于最近原则将两个实体组合为三元组,这在实际的长句处理中的性能常常会大打折扣。

图8-基于联合方式的实体关系抽取示意图
有趣的是,近期有使用“半指针-半标注”的方式来处理这一问题的思路。所谓“半指针、半网络”指的是去掉CRF,改为“0/1标注”来分开识别某一成分的开始和终止位置,这可以看成一种“半指针半标注”的结构。例如,针对给定的主语、谓语和宾语三个成分,使用BE标签来记录成分的起止位置,共可得到3*2共6个标签,针对输入的句子,通过计算sigmoid,可以预测出每个字符在6个标签中的状态“0”或“1”,这样即可得到每个成分在句中的位置信息,解决SPO位置重复的问题。

图9-基于半指针半网络的实体关系抽取示意图

三、 基于语句压缩方法的事件名称生成
从定义上看,语句压缩,又名Sentence Compression,指给定一个句子,生成对应的一个句子,生成的句子满足比源语句短、保留源语句的重要信息,符合语法规范三个条件。例如给定:
“据法新社报道,有目击者称,以军23日空袭加沙地带中部,目前尚无伤亡报告。”
得到缩写结果为:“目击者称以军空袭加沙地带中部”
语句压缩通过对句子进行冗余信息修剪,压缩为一个更剪短、符合文法且能表达原句核心内容的句子,常应用于自动文摘技术、信息抽取、问答系统、机器翻译和文本分类等领域。
例如,Vandeghinste&Pan在删除冗余和非重要信息的同时保留话题主要论点,从而生成对话标题。又如Grefenstette为了使盲人能够像正常人一样快速阅读文章,在阅读器里加入一个语句压缩模块,使得盲人通过手指控制压缩率从而调节阅读速度,从而取得与正常人一样的快速阅读。
语句压缩技术,从实现的方法来看,可分为基于模版规则的方法,基于统计的方法和基于深度学习的方法。
1) 基于句法模板规则的句子压缩方法
基于规则的句子压缩主要思想是首先识别一个句子中的不同成分,然后保留正在句子中最重要的成分,并删除在句子中处理非核心成分的内容,该方法的关键问题在于如何选取合适的压缩规则,即通过最小化语法错误比例或修剪句法树等得到压缩句子。

图10-句子压缩效果示意图
规则式语句压缩方法包括删除单词、插入单词、改变词序或替换单词等方法进行压缩,如Knight&Marcu(2002),Riezler等(2003)的工作。其中,词法分析和句法分析是其中两个重要环节,通过对句子进行词法分析和句法分析,生成句法树,然后根据规则删除句子中次要的单词或短语成分,如不必要的虚词成分、形容词性修饰成分,非否定性状态成分等。例如:
否定词(不、没有、没等)不能丢;能愿动词(要、应该、能够等)要保留;主谓宾语的并列成分不能丢;主谓短语作主谓语时只取其主干;主谓短语作宾语时全部保留;连动句要留下每个动词及其宾语;双宾语要留下每个宾语中心词等等,具体的取舍规则还需与具体的业务做相应更改。
2) 基于统计的句子压缩方法
基于统计学习的方法包括基于语料驱动的有监督学习和基于知识驱动的无监督学习。如Knight和Marcu提出了一种基于决策树的压缩方法,McDonald采用了最大边缘学习算法、Cohn和Lapata提出了基于STSG的语句压缩技术。

图11-基于SVM统计方法的句子压缩示意图
3) 基于深度学习的句子压缩方法
在各类深度学习范式中,句子压缩可以转化为典型的序列预测任务,即输入原句序列,预测输出压缩句序列。该类任务通常基于编码器—解码器框架解决,编码器将输入句子序列编码为稠密向量,此向量包含原句语义信息,解码器解码此向量生成原句中各词的保留或删除决策。

图12-序列标注方法下的句子压缩标签预测
Filippova等人首次将深度学习模型适用于句子压缩任务,其使用三层单向LSTM堆栈作为编码器—解码器组件,在大规模数据集上获得了优于传统压缩系统 的结果。Tran等人对Filippova等人的模型结构进行改进,提出一种基于注意力机制的双向LSTM 模型用于句子压缩。

图13-基于LSTM模型的句子压缩标签预测
不过,目前国内对语句压缩的研究还处于刚刚起步的阶段,一方面缺乏匹配该任务的发规模平行语料,常用的英文语料库包括Ziff-Davis Corpus,该语料库从4000多篇新闻报道中自动抽取了1067组“原语句-压缩句”句对。针对抽取带来的错误以及测试集过小的问题,Clarke和Lapata采用人工标注的方式构建了Clwritten和Clsopken两份英文语句压缩语料,数量也不过几千条。加上标注难度很大,其次缺乏行之有效的自动评价方法,目前大多的评价方法都是人工为主。
四、 总结
事件名称生成是事件抽取和情报挖掘中的重要技术,在热点挖掘、情报分析、舆情监控领域有很大的应用空间。本期围绕“事件名称生成”这一主题,从事件名称生成的必要性以及现有事件名称生成的方法进行了介绍。
针对聚类好的文本集合,可以从中抽离出各个资讯对应的标题,并从标题集合中通过公共子串、高频连续子串(n-gram)或非连续子串评分的方式从中获取相应的事件名称。本文经过尝试,验证了该方法的可靠性。
基于句法分析的主谓宾事件短语提取和基于语句压缩的事件描述提取和语句压缩方法的事件名称生成的两个重要方法。其中:
句法分析包括句子成分分析和依存句法分析两种,基于句法的主谓宾提取,一方面对句法分析的性能要求较高,在实际的使用过程中常会因为句法分析错误而导致提取错误,并存在召回率差等特点。该方法针对规范的短句效果较好,但在长句或超长句中,如主系表结构、主谓双宾结构的句子效果还有待提升。
语句压缩的方法通过对句子进行冗余信息修剪,压缩为一个更剪短、符合文法且能表达原句核心内容的句子,从实现的技术来看,可分为基于模版规则的方法,基于统计的方法和基于深度学习的方法。不过,在模板规则上,存在着与句法分析一样的不足,在深度学习方法上,需要大量的标注语料,整体技术仍处于初步阶段。
事件名称生成技术是事件抽取中的一项重要“门面技术”,现有的一些方案较多,但依旧存在着很大局限性,因此在实际的语句缩写中,还是以基于规则模板的句子压缩方法为主。而如何充分利用好文章、标题以及语句的语义,有针对性地给出一个高效的方案,也是我们在事件抽取方面着力解决的问题,欢迎各位关注我们的工作。

参考文献
[1]数据地平线.数地工场,https://nlp.datahorizon.cn
[2]数据地平线.学迹,https://xueji.datahorizon.cn
[3]周亮俊.基于语句压缩的中文语义依存分析[J].计算机应用,2017,37(S1)
[4]姜雪.中文语句压缩关键技术研究[D].东北大学,2014
[5]张永磊.语句压缩及其应用研究[D].苏州大学,2013
[6]张永磊.基于结构化学习的语句压缩研究[J].中文信息学报,2013,27(02)
[7]https://spaces.ac.cn/archives/6671
[8]https://hanlp.hankcs.com/

原文地址:https://blog.csdn.net/lhy2014/article/details/106923595

扩展阅读:
揭秘微信「看一看」如何精准挖掘你感兴趣的内容:https://cloud.tencent.com/developer/article/1607907

事件抽取中的“门面技术”:事件名称生成浅谈相关推荐

  1. 计算机网络入侵技术初探论文答辩,浅谈关于计算机网络入侵报警系统技术的研究.doc...

    浅谈关于计算机网络入侵报警系统技术的研究.doc 浅谈关于计算机网络入侵报警系统技术的研究 摘 要:计算机在虚拟世界中的合法性制约着它的前进的脚步,所以渐渐的虚拟警报的构造变得复杂,但是风险性也变得更 ...

  2. python中gil锁和线程锁_浅谈Python中的全局锁(GIL)问题

    CPU-bound(计算密集型) 和I/O bound(I/O密集型) 计算密集型任务(CPU-bound) 的特点是要进行大量的计算,占据着主要的任务,消耗CPU资源,一直处于满负荷状态.比如复杂的 ...

  3. JavaScript 事件——“事件类型”中“复合事件”和“变动事件”的注意要点

    复合事件 复合事件是DOM3级事件中心添加的一类事件,用于处理IME的输入序列. compositionstart.compositionupdate.compositionend 复合事件有以下三中 ...

  4. wpf 监听退出事件_WPF中常用的Window事件

    1. Activated获得焦点事件 和 Deactivated失去焦点的事件: Activated: 获得焦点 (首次打开软件时:由别的软件切换回当前软件时:点击当前软件在任务栏的按钮时) Deac ...

  5. 【技术博客】浅谈多任务与联邦学习

    多任务中一直很难避免数据隐私泄露的问题,引入联邦学习机制可以有效地避免隐私问题并且带来膜性能的提升.Federated Learning for Vision-and-Language Groundi ...

  6. 生活中人们通过计算机网络进行信息交流,浅谈网络计算机应用

    浅谈网络计算机应用 摘 要:网格计算作为信息产业的新热点,将是近期内解决数据量极大的科学工程计算问题最直接和最有效的途径.随着网格计算技术的进一步发展以及服务提供商的共同努力,网格计算将会应用于更广阔 ...

  7. 中职学校计算机专业的论文,浅谈中职计算机专业教学改革思考论文

    浅谈中职计算机专业教学改革思考论文 一.中职计算机专业教学改革的具体办法 (一)提升教师教学理念,转换教师教学角色 要想实现中职计算机教学的有效性,其最有效的学习方法就是要让学生亲自在体验和创造的过程 ...

  8. 中职学校计算机应用基础学什么,浅谈中职学校《计算机应用基础》课程改革的一点建议...

    <浅谈中职学校<计算机应用基础>课程改革的一点建议>由会员分享,可在线阅读,更多相关<浅谈中职学校<计算机应用基础>课程改革的一点建议(3页珍藏版)>请 ...

  9. 计算机网络技术专业环境评估,浅谈高职院校计算机网络技术专业教学环境建设...

    [摘 要] 高职院校计算机网络技术专业以培养具备"组网.管网.用网"能力的高素质技能性人才为目标,以计算机网络技术专业职业岗位的能力要求为依据,以岗位工作过程为导向,建设软硬结合. ...

最新文章

  1. 别在 Java 代码里乱打日志了,这才是正确的打日志姿势!
  2. html动态报警图片,报警记录.html
  3. 使用 python 一键搭建文件服务器
  4. How to correctly encode .mp4 files for streaming
  5. 1 第一次画PCB总结
  6. 《剑指offer》第一次只出现一次的字符
  7. Android Canvas的drawText()和文字居中方案
  8. 卖不动了,5G资费套餐再降价,网友:再等等再等等
  9. Linux 软件包管理常用命令 -- yum
  10. 2017 部门文化宣贯会议内容
  11. 黑苹果长期维护机型整理清单
  12. ThinkPad T450s笔记本禁用触摸板
  13. 一文了解SCI论文投稿全流程
  14. hiper – web_Web设计行业分析–专业人士与业余者[信息图]
  15. Grayscale一周增持9503个BTC,机构投资者“抢购”有望继续推高价格
  16. 工具赋能|Python环境搭建
  17. 北海道看雪(攻略及摄影)
  18. 进入Baxter仿真环境
  19. 【面试题】给你一个项目,你准备怎么开展ui自动化
  20. 如何通过API接口,获取淘宝商品详情数据

热门文章

  1. ZHO共享纸巾机为何能够引领潮流、深受大众欢迎?
  2. 系统架构师----笔记
  3. Java实验报告(6)
  4. 台湾云门舞集今年将赴北京、上海等地巡演
  5. project子项目之间任务关联_任务日历关联(Project)
  6. 基于simulink的无刷直流电动机性能仿真
  7. 地震见真情【汶川地震后巴基斯坦全国帐篷都给了中国】
  8. 第一章 python筑基
  9. 利用js写的见缝插针小游戏
  10. 利用代码制作电脑中毒假象