當(dāng)我們環(huán)顧身邊的世界,是不是會(huì)發(fā)現(xiàn)現(xiàn)實(shí)世界其實(shí)是由無數(shù)個(gè)相互關(guān)聯(lián)的事件(Event)所構(gòu)成的呢?而從古至今,人們也都希望自己擁有未卜先知、預(yù)測(cè)未來的能力。今天,就帶大家了解一個(gè)關(guān)于事件預(yù)測(cè)的任務(wù),一起成為小諸葛(doge.jpg)
今天帶大家了解的任務(wù)叫做腳本事件預(yù)測(cè)(Script Event Prediction) 。何為腳本呢?腳本就是描述了特定人物一系列行為的一個(gè)事件序列 ^[1]^ 。如下圖所示,該事件序列就是一個(gè)關(guān)于鮑勃(假定X就是鮑勃)去餐廳用餐的腳本。而腳本事件預(yù)測(cè),就是需要大家根據(jù)已給出的事件序列,從候選的若干的事件里面,預(yù)測(cè)接下來會(huì)發(fā)生什么事件。
腳本事件預(yù)測(cè)圖例[2]
然而,腳本事件序列任務(wù)并不僅僅是為了預(yù)測(cè)鮑勃飯后去做什么,作為一項(xiàng)重要的事件推理任務(wù),它能夠?yàn)閷?duì)話系統(tǒng)、推薦系統(tǒng)等重要引用提供基礎(chǔ),更能夠?qū)θ藗兊男袨槔斫夂蜕鐣?huì)發(fā)展起到重要作用。
在腳本中,每個(gè)事件通過一個(gè)由主語、謂語、賓語和間接賓語構(gòu)成的四元組來表示。例如 serve(Waiter, Bob, food),表示 "The waiter serves Bot food (服務(wù)生送給鮑勃食物)"。多年以來,關(guān)于腳本事件預(yù)測(cè)已經(jīng)誕生了不少的研究工作。今天,本文將現(xiàn)有工作劃分為兩大類(當(dāng)然,這樣的劃分并不絕對(duì),僅作參考)。這樣的劃分依據(jù)來源于,當(dāng)我們把自己想象為要預(yù)測(cè)事件的小諸葛,我們的預(yù)測(cè)應(yīng)該會(huì)總兩方面出發(fā)。一方面,我們會(huì)認(rèn)真挖掘已給定的事件序列, 通過對(duì)當(dāng)前事件序列不同層面上的語義挖掘與線索發(fā)現(xiàn),來預(yù)測(cè)接下來發(fā)生什么 。另一方面,當(dāng)?shù)谝环N方法仍不能帶給我們很好的效果時(shí),我們不得不尋找一些外掛,即 借助外部的知識(shí)來輔助我們的預(yù)測(cè) 。今天,我們將對(duì)這兩大類工作進(jìn)行梳理,并對(duì)其中的代表性工作進(jìn)行簡(jiǎn)要介紹。對(duì)具體實(shí)現(xiàn)感興趣的朋友,歡迎戳相關(guān)原論文進(jìn)行查閱。
基于事件序列本身的事件預(yù)測(cè)
當(dāng)我們拿到一個(gè)事件序列,我們想必會(huì)對(duì)它進(jìn)行由淺入深的分析。最基本地,我們會(huì)分別考慮事件序列中的每個(gè)事件與候選事件之間的關(guān)系,即通過事件對(duì)之間的關(guān)聯(lián)預(yù)測(cè)事件。
基于事件對(duì)關(guān)聯(lián)建模的事件預(yù)測(cè)
基于事件對(duì)的預(yù)測(cè)方法,首先是將事件序列中的事件與候選事件形成事件對(duì)。在構(gòu)成事件對(duì)后,早先的研究工作會(huì)通過概率與統(tǒng)計(jì)的相關(guān)算法(例如 PMI 算法 ^[3]^ )計(jì)算事件對(duì)的共現(xiàn)概率,再通過整個(gè)事件序列中事件對(duì)的概率綜合來選擇候選事件。
隨著深度學(xué)習(xí)的發(fā)展,研究人員通過深度學(xué)習(xí)方法進(jìn)行事件表示,并通過全連接網(wǎng)絡(luò)計(jì)算事件間的相關(guān)性程度。例如,Granroth-Wilding等 ^[4]^ 在AAAI2016通過 What Happens Next? Event Prediction Using a Compositional Neural Network Model ^[5]^ 一文年提出了基于事件對(duì)的EventComp方法。該文作者通過詞嵌入方法進(jìn)行事件元素的表示,使用全連接網(wǎng)絡(luò)對(duì)事件對(duì)是否滿足順承關(guān)系進(jìn)行分類。在訓(xùn)練過程中,作者通過隨機(jī)采樣構(gòu)建滿足順承關(guān)系的正樣本事件對(duì)和不滿足順承關(guān)系負(fù)樣本事件對(duì),通過交叉熵?fù)p失進(jìn)行模型優(yōu)化。
EventComp圖示
基于事件序列建模的事件預(yù)測(cè)
然而,基于事件對(duì)的方法聚焦于兩兩單獨(dú)事件之間的關(guān)聯(lián)性, 忽略了整個(gè)事件序列中的語義交互 。因此,基于事件序列建模的預(yù)測(cè)方法被廣泛提出。
事件序列級(jí)別的建模:SAM-Net: Integrating Event-Level and Chain-Level Attentions to Predict What Happens Next
對(duì)于一個(gè)事件序列來說,雖然它由若干個(gè)單獨(dú)的事件構(gòu)成。但單獨(dú)的"事件"并不能完備地表述一件事情的發(fā)生。例如,“X讀了菜單、XX下單了菜品、XX完成了付款”,這三個(gè)事件合起來構(gòu)成的事件序列片段表述了一個(gè)語義更加完整的"事件"。因此,呂尚文博士于 AAAI2019提出了事件序列片段 (event segment) 的概念,即 由事件序列中若干個(gè)語義關(guān)聯(lián)較強(qiáng)的事件構(gòu)成的事件子序列 。事件序列片段可以是 連續(xù)的若干個(gè)事件 ,例如圖(a)中的“X讀了菜單、XX下單了菜品、XX完成了付款”, 也可以是 不連續(xù)的若干事件 ,例如圖(b)中的“XX下單菜品”與"XX打包了食物、XX吃掉食物"。
事件片段示例
然而,事件序列中的事件片段并非天然標(biāo)注出來的,因此這篇論文的關(guān)鍵問題就在于 如何從事件序列中找到事件片段,以及如何通過事件片段的語義來進(jìn)行事件預(yù)測(cè) 。要解決這一關(guān)鍵問題,主要存在兩項(xiàng)挑戰(zhàn):一是如何對(duì)事件進(jìn)行有效的語義表示從而獲取事件片段;二是融合事件序列中單獨(dú)事件與事件片段的語義進(jìn)行事件預(yù)測(cè)。
SAM-Net模型圖示
關(guān)于第一項(xiàng)挑戰(zhàn),作者設(shè)計(jì)自注意力機(jī)制建模事件間的語義關(guān)聯(lián)性,將關(guān)聯(lián)性強(qiáng)的事件劃分為一個(gè)事件序列,并通過DenseNet模型進(jìn)行事件片段的特征提取。關(guān)于第二項(xiàng)挑戰(zhàn),作者通過事件層面和事件序列層面的注意力機(jī)制分別來衡量單個(gè)事件和事件片段對(duì)事件預(yù)測(cè)的影響,并在二者的結(jié)合下進(jìn)行最終的事件候選事件預(yù)測(cè)。
論元級(jí)別的建模:WWW2021: Multi-level Connection Enhanced Representation Learning for Script Event Prediction
盡管基于事件對(duì)、事件片段的建模方法取得了良好的實(shí)驗(yàn)效果,但上述方法都停留在粗粒度的事件級(jí)別的建模,而忽略了事件要素所呈現(xiàn)的復(fù)雜語義特征?;诖耍谰畚⒉┦坑赪WW2021提出,通過同時(shí)建模 事件要素級(jí)別 、事件級(jí)別和事件序列級(jí)別的多粒度特征來進(jìn)行事件預(yù)測(cè)。
在具體的實(shí)現(xiàn)中,主要包括兩個(gè)模塊。一是 事件要素表示模塊 ,該模塊以整個(gè)事件序列為輸入,通過帶掩碼的多頭自注意力機(jī)制學(xué)習(xí)事件要素間的隱式關(guān)聯(lián),得到細(xì)粒度的事件要素級(jí)別的表示;然后,作者將事件要素向量拼接,通過全連接層和激活函數(shù)的特征變換輸出事件級(jí)的特征表示。得到初始的事件表示后,作者設(shè)計(jì) 事件特征抽取模塊 ,借鑒Li et al.^[6]^ 于IJCAI2018提出的基于圖結(jié)構(gòu)建模事件間演化關(guān)系的思想,將事件序列轉(zhuǎn)化到圖結(jié)構(gòu)上,通過圖神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)事件序列層面上的事件的特征表示,再進(jìn)行預(yù)測(cè)。
多粒度級(jí)別建模:IJIS2022: What happens next? Combining enhancedmultilevel script learning and dual fusionstrategies for script event prediction
上一篇WWW2021的工作融合的是要素級(jí)別和事件級(jí)別兩個(gè)層面的語義信息,而這一篇發(fā)表于International Journal of Intelligent Systems的工作則通過同時(shí)建模事件級(jí)別、事件序列級(jí)別和事件片段級(jí)別三種粒度的語義來實(shí)現(xiàn)事件預(yù)測(cè),取得了優(yōu)異的實(shí)驗(yàn)性能。
基于圖結(jié)構(gòu)建模的事件預(yù)測(cè)
IJCAI2018-Constructing Narrative Event Evolutionary Graph for Script Event Prediction
盡管上述基于事件序列的建模方法卓有成效,但仍舊存在難以處理的情況。如下圖所示,圖中包括A,B,C,D,E五個(gè)事件,圖(a)要求預(yù)測(cè)事件C的后續(xù)事件為D。然而,根據(jù)圖(b)的訓(xùn)練數(shù)據(jù),事件C 的后續(xù)事件是E的概率大于為D的概率,這可能導(dǎo)致圖(a)中做出錯(cuò)誤的預(yù)測(cè)。然而,如果我們以圖結(jié)構(gòu)來組織數(shù)據(jù),就可以發(fā)現(xiàn)事件B、C和D往往同時(shí)出現(xiàn),也就是說,圖結(jié)構(gòu)能夠刻畫一種 更加復(fù)雜的事件間演化關(guān)系 ,這為圖(a)中的事件預(yù)測(cè)提供了重要線索。
從上述思想出發(fā),哈工大李忠陽博士構(gòu)建了敘事事件演化圖(Narrative Event Evolutionary Graph, NEEG) , 如下圖所示 。該圖中的 節(jié)點(diǎn)為具體的事件 , 有向邊表示事件間的演化關(guān)系 , 邊上的權(quán)重表示該演化關(guān)系出現(xiàn)的頻率 。
敘事事件演化圖示例
在完成演化圖構(gòu)建后,作者對(duì)門控圖神經(jīng)網(wǎng)絡(luò)(Gated Graph Neural Networks, GGNN)進(jìn)行拓展,實(shí)現(xiàn)了可以適應(yīng)于小規(guī)模子圖結(jié)構(gòu)的Scaled Graph Neural Network (SGNN)在圖結(jié)構(gòu)上進(jìn)行事件表示的學(xué)習(xí),再進(jìn)行事件的預(yù)測(cè)。
在后來的研究中,基于圖結(jié)構(gòu)進(jìn)行事件預(yù)測(cè)的工作仍在繼續(xù)。在COLING2020中,來自國(guó)防科大的學(xué)者通過 Heterogeneous Graph Neural Networks to Predict What Happen Next^[7]^ 一文提出基于異質(zhì)圖建模的事件預(yù)測(cè);在ACL2022中,來自哈工大的杜理博士將圖結(jié)構(gòu)(Graph)與BERT模型結(jié)合,在 A Graph Enhanced BERT Model for Event Prediction^[8]^ 一文提出了能夠自動(dòng)預(yù)測(cè)事件圖結(jié)構(gòu)信息的方法GraphBERT,避免了測(cè)試事件不被事件圖覆蓋的問題。
基于外部知識(shí)增強(qiáng)的事件預(yù)測(cè)
因?yàn)槟_本中的事件是通過元組表示的,這導(dǎo)致它吧 在腳本中,每個(gè)事件都由四個(gè)單詞/詞組構(gòu)成的元組表示,這導(dǎo)致較之傳統(tǒng)的自然語言文本,由事件元組構(gòu)成的事件序列所能提供的語義信息非常有限。因此,研究人員開始考慮從外部資源庫中 提取知識(shí)來增強(qiáng)事件表示。根據(jù)引入知識(shí)的不同,基于外部知識(shí)增強(qiáng)的事件預(yù)測(cè)工作大體可分為三類。
話語關(guān)系增強(qiáng)的事件預(yù)測(cè)
ACL2019-Multi-Relational Script Learning for Discourse Relations
第一類是基于話語關(guān)系建模事件間關(guān)系的事件預(yù)測(cè)。為什么需要事件間的關(guān)系來推理后續(xù)事件的發(fā)生呢?
如下圖所示,對(duì)于Step1的事件“Jenny went to her favorite restaurant”,若基于傳統(tǒng)的事件共現(xiàn)性建模,Step2中的事件“She was very hungry”和“It was raining outside”都可能是Step1的后續(xù)事件。然而,如果給定了Step2的事件是Step1事件的原因(即因果關(guān)系) ,則可以推出Step2中被選定的事件為“She was very hungry”。因此,如果能挖掘事件之間的關(guān)系(例如,原因、時(shí)序、轉(zhuǎn)折等),則能為事件預(yù)測(cè)提供強(qiáng)有力的線索。
基于上述思想,來自普渡大學(xué)的學(xué)者 I-Ta Lee 在ACL2019引入了話語數(shù)據(jù)庫PDTB中的話語關(guān)系,設(shè)計(jì)了一種基于 細(xì)粒度多關(guān)系建模的事件表示方法 。具體地,作者合計(jì)引入了 三大類共11種關(guān)系 :1)COREF_NEXT,指是同一指代鏈上的事件序列關(guān)系;2)NEXT,指特定大小上下文窗口之間同時(shí)發(fā)生的事件;3)Discourse Relations(話語關(guān)系),包括原因、結(jié)果和條件等如下表所示的合計(jì)9種話語關(guān)系?;谑录g的關(guān)系類型,分別通過TransE和TransR策略進(jìn)行事件表示學(xué)習(xí),從而進(jìn)行相關(guān)任務(wù)的預(yù)測(cè)。
后續(xù),I-Ta Lee 在其發(fā)表于EMNLP2020 的 Weakly-Supervised Modeling of Contextualized Event Embedding for Discourse Relations ^[9]^ 一文中再次通過引入話語關(guān)系建模事件間關(guān)系進(jìn)行任務(wù)預(yù)測(cè),取得了良好的效果。
知識(shí)庫增強(qiáng)的事件預(yù)測(cè)
基于事件知識(shí)庫的語義增強(qiáng):COLING2020-Integrating External Event Knowledge for Script Learning
較之話語關(guān)系,事件知識(shí)圖譜則更直觀表達(dá)了事件間語義關(guān)系的信息。例如圖所示,通過的事件三元組可以非常明確地作為事件"Jack felt hungry"的后續(xù)事件是"He had lunch"。同理,當(dāng)我們預(yù)測(cè)整個(gè)事件序列的后續(xù)事件時(shí),根據(jù)知識(shí)庫中的三元組,便可以判斷當(dāng)前腳本的后續(xù)事件是"He left home"。
基于上述思想,COLING這篇論文的關(guān)鍵問題就在于 融合外部的事件知識(shí)來幫助解決腳本事件預(yù)測(cè)問題 ,具體包括兩個(gè)核心的階段:知識(shí)抽取階段以及 知識(shí)融合階段 。在知識(shí)抽取的階段,作者以腳本序列中的事件作為查詢,在事件知識(shí)庫中檢索對(duì)應(yīng)的事件及其對(duì)應(yīng)的 事件三元組 ;在知識(shí)融合階段,作者設(shè)計(jì)了融入尾實(shí)體 (Tail only) 、事件模板轉(zhuǎn)換 (Event Template) 和 關(guān)系嵌入表示 (Relation Embedding) 三種知識(shí)融合方法獲取外部知識(shí)感知的事件表示。最后,基于事件表示進(jìn)行相應(yīng)的任務(wù)預(yù)測(cè)。
基于常識(shí)知識(shí)庫的語義增強(qiáng) EMNLP2019: Event Representation Learning Enhanced with External Commonsense Knowledge
除了事件知識(shí)圖譜,常識(shí)知識(shí)庫也能為事件預(yù)測(cè)提供有效的線索。哈工大丁效老師于EMNLP2019的論文指出:客觀事件的發(fā)生會(huì)被人類的主觀情感所影響,而不同的事件背后所體現(xiàn)的意圖和情感也互不相同,因此通過EventMind ^[10]^ 和 ATOMIC ^[11]^ 兩個(gè)常識(shí)知識(shí)庫引入情感和意圖知識(shí)來增強(qiáng)事件表示的語義信息,從而辨別易混淆的事件。
原文本增強(qiáng)的事件預(yù)測(cè)
第三類被引入的外部知識(shí)是 腳本事件本身的原始文本 。正如前文分析,導(dǎo)致腳本事件語義稀疏的重要原因之一就是事件脫離了其本身的上下文,那么,最直觀可以用來增強(qiáng)語義的外部知識(shí)就是腳本事件本身的原始文本。
原始文本增強(qiáng)的事件預(yù)測(cè) AAAI2023: Rich Event Modeling for Script Event Prediction
在AAAI2023, 中科院計(jì)算所的白龍博士指出,腳本事件預(yù)測(cè)任務(wù)的挑戰(zhàn)主要體現(xiàn)在兩方面:一是事件描述,這體現(xiàn)了事件應(yīng)當(dāng)包含了怎樣的信息;二是事件編碼,這體現(xiàn)在如何將事件編碼為機(jī)器可計(jì)算的有效表示。關(guān)于 事件描述 ,現(xiàn)有工作中的事件都通過一個(gè)由主語、謂語動(dòng)詞、賓語和間接賓語構(gòu)成的四元組來表示。由于缺失事件所處的上下文,可能導(dǎo)致謂語動(dòng)詞的語義模糊(例如,動(dòng)詞 fall 可能表達(dá)"被擊敗"或"落下"的語義),且主語、賓語和間接賓語無法準(zhǔn)確描述事件內(nèi)涵的問題;關(guān)于 事件編碼 ,現(xiàn)有的編碼器僅局限于對(duì)固定數(shù)量論元的事件進(jìn)行編碼,導(dǎo)致無法處理論元數(shù)量不等以及論元間靈活交互的問題。
為了解決上述問題,作者設(shè)計(jì)了名為 Rich Event Prediction 的方案:通過 Abstract Meaning Representation (AMR) 對(duì)事件原屬文本進(jìn)行解析,從而獲取 rich event prediction,并通過Transformer編碼器來捕捉事件論元間的關(guān)聯(lián)關(guān)系,取得了良好的實(shí)驗(yàn)效果。
總結(jié)
上文從兩個(gè)方面梳理了現(xiàn)有的腳本事件預(yù)測(cè)的相關(guān)工作,并介紹了代表性的相關(guān)工作。其實(shí),除了上文介紹的論文,還有許多非常精彩關(guān)于事件預(yù)測(cè)的工作,感興趣的小伙伴可以盡情挖掘,大家一起成為未卜先知的小諸葛(doge.jpg)
-
PMI
+關(guān)注
關(guān)注
0文章
14瀏覽量
9161 -
腳本
+關(guān)注
關(guān)注
1文章
382瀏覽量
14761 -
深度學(xué)習(xí)
+關(guān)注
關(guān)注
73文章
5422瀏覽量
120595
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論