博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
论文笔记:Constructing Narrative Event Evolutionary Graph for Script Event Prediction
阅读量:4289 次
发布时间:2019-05-27

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

作者:崔金满

单位:燕山大学


目录

 


Abstract

脚本事件预测需要模型预测给定现有事件上下文的后续事件,现有的方法大都是基于事件链或事件对的模型,不能充分利用事件间的紧密联系,从而限制预测能力,针对这一问题,本文构建一个事件图来更好地利用事件的网络信息进行脚本事件预测。首先从大量新事件中提取叙事事件链,并基于提取的事件链来构建事件演化图(NEEG)。其中,NEEG可以看做是一个描述事件演化原理和模式的知识库。为在NEEG上解决推理问题,本文提出一种比例图神经网络(SGNN)来模拟事件交互,更好地学习事件表示。SGNN每次只处理已知事件相关节点,而不是整个图,然后通过比较输入上下文事件和候选事件之间的语义相似性,选择正确的后续事件。

Introduction

脚本事件预测定义:给定一个现有事件上下文,从后续事件列表中选择最合理的后续事件。

先前的研究方法都是基于事件对或事件链进行事件预测的,但是这些方法并没有充分的探索事件之间的丰富联系。因此本文提出基于图结构的脚本事件预测方法。

如上图(a)所示,给定已知事件A,B,C,从候选事件D、E中选择正确的后续事件。其中D为正确的候选事件,E为随机选择的在各个场景中频繁出现的事件。基于事件链的模型很可能选择错误的后续事件E,因为事件链数据集(图b)上可以看出事件C和事件E之间具有很强的关联,但是从事件图(c)可以看出事件B、C和D之间构成强关联,从而选择正确的后续事件D。

EEG是一个有向循环图,节点表示事件,边表示事件之间的关系。

贡献

  1. 首次使用事件图谱来代替事件链/对进行事件预测;
  2. 提出SGNN模型,该模型可以在大规模有向图上模拟事件交互,更好的学习事件表示实现预测。

Model

叙事事件图谱构建

事件链集合S=\left \{ s_1,s_2,...,s_N \right \}s_i=\left \{ T,e_1,e_2,...,e_m \right \}T表示整个事件链s_i中所有事件共享的主语,事件e_i=\left \{ p(a_0,a_1,a_2)\right \},其中p表示动词,a_0,a_1,a_2分别表示主语、宾语、间接宾语。

 

 如图3(a)所示,NEEG可以定义为G=\left \{ V,E \right \},其中,节点集合V=\left \{ v_1,v_2,...,v_p \right \},边集合E=\left \{ l_1,l_2,...,l_Q \right \},边的权重计算方式为:

与事件链或事件对不同,事件图谱在事件之间具有紧密的联系,并且包含了更加丰富的事件交互信息。

比例图神经网络

  • 学习初始事件表示

给定一个事件e_i=\left \{ p(a_0,a_1,a_2) \right \},以及对应的词嵌入向量,通过映射函数来表示事件的语义信息。(其中包括求平均值,非线性变换和拼接等方式。)

  • 基于GGNN的事件表示更新

GGNN的输入是包含初始上下文事件和后续候选事件向量h^{(0)}和对应的子图邻接矩阵AA表示了子图中节点之间的相互作用),GGNN更新事件表示过程如下:

 

  • 选择正确的候选事件

通过计算候选事件和上下文事件之间的相关性分数来选择正确的后续事件。方法有如下几种:

从后续的实验结果可以发现,最后一种相关度计算方法的性能最好。

  • 注意力机制

由于不同的上下文事件在选择正确的后续事件时可能有不同的权重,所以可以增加注意力来为给定的上下文事件加权来帮助选择后续事件。

Experiment 

从实验结果来看,基于图的模型比基于事件对/链的模型具有更好的性能,说明基于图的事件表示可以更好的提供事件的交互信息。

消融实验:

 

 从表3可以发现,在进行事件表示时,将事件触发词和事件元素拼接取得更好的模型性能,主要是因为很多事件并没有元素a_2,所以如果对触发词和元素嵌入向量取平均来表示事件的话容易丢失语义信息,导致性能较差。

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

你可能感兴趣的文章
常用排序方法介绍
查看>>
Java异常分类和统一处理
查看>>
原 荐 cache线程池对数据库操作的饥饿问题
查看>>
使用Eclipse把java文件打包成jar 含有第三方jar库的jar包
查看>>
3种web会话管理的方式
查看>>
SSM(框架)-异常1:面向接口式编程异常
查看>>
Android蓝牙4.0之玩爆智能穿戴、家具(二)
查看>>
使用Condition实现多线程之间调用
查看>>
javaAPI之String
查看>>
JQ 新窗口打开链接并设置参数
查看>>
JQuery实现列表中复选框全选反选功能封装
查看>>
JAVA GC 简单总结
查看>>
JS中常遇到的浏览器兼容问题和解决方法
查看>>
JAVA学习笔记之-servlet知识点
查看>>
apache 配置不同的端口访问不同的站点
查看>>
2017年3月Java9带来的革新!
查看>>
Log4j容器深入探究
查看>>
记glide框架使用中所遇到的问题
查看>>
学习AOP之透过Spring的Ioc理解Advisor
查看>>
Jquery一个简单的注册验证
查看>>