動(dòng)機(jī)介紹
理解自然語言中與事件相交織的時(shí)間概念是理解事件演化的重要內(nèi)容。人可以具有對(duì)事件的典型發(fā)生時(shí)間、發(fā)生頻率、持續(xù)時(shí)間等時(shí)間屬性的感知能力,同時(shí),也能夠把握好在上下文中,時(shí)間概念之間相對(duì)大小,前后順序等依賴關(guān)系。對(duì)于機(jī)器而言,掌握這些時(shí)序常識(shí)知識(shí),獲取相應(yīng)的時(shí)序推理能力,也對(duì)進(jìn)行也對(duì)事件脈絡(luò)構(gòu)建,醫(yī)療事件時(shí)序分析,改進(jìn)對(duì)話系統(tǒng)中時(shí)間常識(shí)一致性等下游任務(wù)有著重要的意義。
為了讓模型能夠掌握相關(guān)的時(shí)序常識(shí)知識(shí)以提高其在下游自然語言理解任務(wù)上的性能,前人的典型做法是,首先基于弱監(jiān)督的方法(如模版匹配)從海量的自然語言文本中獲取顯式表達(dá)了時(shí)序常識(shí)的自然文本,然后基于富時(shí)序常識(shí)的自然文本來構(gòu)建以掩碼恢復(fù)為代表的自監(jiān)督目標(biāo)函數(shù),對(duì)預(yù)訓(xùn)練模型重新訓(xùn)練。然而, 這種基于傳統(tǒng)語言模型目標(biāo)函數(shù)的方法存在一定的局限性。如圖1(a)所示,為了在空白處填入正確的答案,模型首先要具備一定的全局推理能力,即能夠根據(jù)上下文歸納出正確答案對(duì)應(yīng)的時(shí)間概念與在文中所提到的“3點(diǎn)”之間的依賴關(guān)系(即早于)。除此之外,與傳統(tǒng)的同樣需要這種邏輯關(guān)系歸納能力的任務(wù)不同,這種推理過程存在著固有的模糊性。例如,在圖1(b)所示的閱讀理解型數(shù)值推理任務(wù)中,一旦模型可以正確歸納出正確的計(jì)算邏輯為對(duì)應(yīng)數(shù)值的減法,即可得到正確答案(2008-2007=1)。但是在圖1(b)的時(shí)序推理問題中,文中出現(xiàn)的“3點(diǎn)”是一個(gè)模糊的時(shí)間表述,模型需要理解其表示的是一天種的某個(gè)時(shí)間,而且最可能是下午的3點(diǎn)。因此正確答案的邏輯約束為早于("下午3點(diǎn)",?)決定。同時(shí),需要注意的是,最終的答案本身也并非一個(gè)確切的結(jié)果,在一定的模糊的時(shí)間區(qū)間內(nèi)的時(shí)刻均是合理的。然而當(dāng)前時(shí)序推理模型往往僅僅是隱式的對(duì)上下文進(jìn)行編碼,使其并不能夠具備這種模糊的時(shí)序歸納推理能力,而往往依賴于淺層的表面線索來實(shí)現(xiàn)這種復(fù)雜推理,這使得推理的結(jié)果不可解釋且并不可靠。
圖1: 精確推理與模糊推理
為此,在本文中,我們提出了一個(gè)基于自監(jiān)督邏輯歸納的模糊時(shí)序推理框架LECTER。其將時(shí)序推理過程結(jié)構(gòu)化為3個(gè)連續(xù)的步驟,即(1)歸納出文中的時(shí)間表達(dá)式間的邏輯約束關(guān)系(2)將文中的模糊時(shí)間概念進(jìn)行具體化(3)綜合利用前兩步的結(jié)果以及額外的上下文信息來驗(yàn)證候選時(shí)間概念的正確性。具體的,其包含有3個(gè)子模塊分別完成上述的3個(gè)子過程,分別是時(shí)間依賴邏輯歸納模塊,模糊時(shí)間概念具體化模塊和邏輯驗(yàn)證模塊。我們通過邏輯編程語言DeepProbLog來實(shí)現(xiàn)邏輯驗(yàn)證模塊。為了在對(duì)LECTER進(jìn)行自監(jiān)督的訓(xùn)練,我們引入了兩個(gè)自監(jiān)督的目標(biāo)函數(shù):(1)基于回歸的時(shí)間概念預(yù)測(cè)損失(2)模糊時(shí)序邏輯蘊(yùn)含損失。其充分考慮到了文中的模糊時(shí)間概念對(duì)推理過程帶來的影響,前者用于使得模型從數(shù)據(jù)中學(xué)習(xí)相關(guān)的時(shí)間常識(shí),后者則是使得模型能夠基于蘊(yùn)含來歸納出正確的時(shí)序邏輯。
背景介紹
問題定義
在文檔中包含有個(gè)句子,以及個(gè)時(shí)間表達(dá)式, 這里>.代表所含有的時(shí)間表達(dá)式的集合. 本章中的時(shí)序推理任務(wù)被定義為一個(gè)多項(xiàng)選擇任務(wù):將原文檔中的某一個(gè)時(shí)間表達(dá)式刪去獲得文檔,給定,該任務(wù)要求模型能夠從給定的候選時(shí)間表達(dá)式集中選取出所有的合適的時(shí)間表達(dá)式能夠填入中被刪去的時(shí)間表達(dá)式的位置,并且符合上下文語義。
例如,對(duì)于圖1 (a)中的空缺,2點(diǎn),下午兩點(diǎn)2:00 pm都是正確的答案,但是上午8點(diǎn)就不符合原文中的語義約束了。
邏輯編程語言框架DeepProbLog
概率邏輯編程[2]是一種依賴于正式邏輯(formal logic)的編程范式。由概率邏輯編程語言所編寫的程序包含有一組形如 的概率事實(shí)(probabilistic facts)和一組邏輯規(guī)則,其中代表概率代表原子式。例如,如下的程序定義了在扔硬幣中的概率過程
0.4 :: coin(x1,h).0.5 :: coin(x2,h).twoHeads(X,Y) :- coin(X, h), coin(Y, h).
這里,coin()代表事實(shí):硬幣正面朝上。
邏輯規(guī)則twoHeads() :- coin(, ), coin(, )則定義了“什么代表兩枚硬幣都時(shí)候正面朝上”,這里, :- 代表了邏輯蘊(yùn)含: 如果均為真,那么成立?;谶@種概率編程語言,可以輕易的計(jì)算目標(biāo)原子式的成立的概率。在本例中,針對(duì)查詢?cè)邮絫woHeads(), 程序可以自動(dòng)的計(jì)算兩枚硬幣均朝上的計(jì)算結(jié)果,即P(twoHeads())=0.2。
綜上所述,在概率邏輯中,形如的原子表達(dá)式的概率是。而在DeepProbLog中,其將“神經(jīng)網(wǎng)絡(luò)”組件的解釋為一個(gè)“神經(jīng)”謂詞,即在原子表達(dá)式上的概率是由神經(jīng)網(wǎng)絡(luò)來得到。而除此之外,其保留了ProbLog語言的包括語義,推理機(jī)制和實(shí)現(xiàn)在內(nèi)所有組成部分。
如下的DeepProbLog程序定義了扔硬幣的神經(jīng)化拓展:
nn(coin_nn, [X], S, [h,t]): coin(X,S)twoHeads(X,Y) :- coin(X, h), coin(Y, h).
(例如可以是扔硬幣結(jié)果的一張圖片)輸入到模型中,并映射為在上的分布 (朝上和朝下). 由神經(jīng)謂詞定義的事實(shí)的成立的概率由神經(jīng)網(wǎng)絡(luò)的softmax層給出。
為了對(duì)實(shí)現(xiàn)神經(jīng)謂詞的訓(xùn)練,DeepProbLog框架將基于神經(jīng)網(wǎng)絡(luò)的輸出層所產(chǎn)生的神經(jīng)謂詞引導(dǎo)的概率事實(shí),以及在邏輯程序中的其他概率事實(shí)和子句作為輸入,而由ProbLog編程語言計(jì)算查詢?cè)邮降某闪⒏怕?,這里代表神經(jīng)謂詞的可訓(xùn)練參數(shù),代表訓(xùn)練數(shù)據(jù),代表查詢的原子式。由于默認(rèn)查詢?cè)邮揭话銥檎妫谟?xùn)練時(shí)最大化即可,該損失稱之為邏輯蘊(yùn)含損失。
由于ProbLog的代數(shù)擴(kuò)展已經(jīng)可以支持自動(dòng)求導(dǎo),所以,其可以將梯度信息傳播到神經(jīng)謂詞的輸出處,故其可以直接基于優(yōu)化器以梯度下降的方式直接訓(xùn)練整個(gè)模型。
模型方法
在本文中我們提出了基于模糊邏輯歸納的事件時(shí)序常識(shí)推理方法LECTER,如圖2所示。其包含有3個(gè)部分:(i)上下文編碼器,用于對(duì)富時(shí)間表達(dá)式的上下文進(jìn)行編碼(ii)邏輯歸納模塊,由時(shí)序依賴歸納器和去模糊器構(gòu)成。其目標(biāo)是為了能夠預(yù)測(cè)上下文中的多個(gè)時(shí)間表達(dá)式之間的時(shí)序依賴關(guān)系,以及得到一個(gè)模糊時(shí)間概念的具體數(shù)值意義。(iii)邏輯驗(yàn)證器,其通過神經(jīng)概率邏輯編程語言來表示人對(duì)于不同的時(shí)間表達(dá)式間數(shù)值關(guān)系的先驗(yàn)知識(shí),來評(píng)估查詢時(shí)間表達(dá)式是否與神經(jīng)網(wǎng)絡(luò)的預(yù)測(cè)結(jié)果想一致。同時(shí)我們還提出了兩個(gè)自監(jiān)督損失以有效的訓(xùn)練LECTER模型,分別是“基于回歸的時(shí)間值恢復(fù)損失”和“時(shí)序邏輯蘊(yùn)含損失”。
圖2: LECTER模型架構(gòu)
上下文編碼器
我們基于預(yù)訓(xùn)練語言模型(如BERT/RoBERTa)來對(duì)上下文中的每個(gè)時(shí)間表達(dá)式進(jìn)行編碼。為構(gòu)建自監(jiān)督訓(xùn)練數(shù)據(jù),我們從給定的輸入數(shù)據(jù)中隨機(jī)選擇一個(gè)時(shí)間表達(dá)式,將其刪去并替換為2個(gè)[MASK]符.這兩個(gè)[MASK]分別代表在一個(gè)時(shí)間概念中的數(shù)值部分和單位部分。于是,對(duì)于每一條原始富時(shí)間表達(dá)式文本,我們都可以得到一個(gè)填空形式的輸入。在下文中,稱需要被恢復(fù)的時(shí)間表達(dá)式為“目標(biāo)時(shí)間表達(dá)式”,而文中剩余的時(shí)間表達(dá)式為“輔助時(shí)間表達(dá)式“?;谠摼幋a器對(duì)上下文進(jìn)行編碼后,可得到待恢復(fù)的時(shí)間表達(dá)式的表示為,而上下文中輔助時(shí)間表達(dá)式的表示為.
邏輯歸納模塊
時(shí)序依賴歸納器時(shí)序依賴歸納器用于生成上下文相關(guān)的目標(biāo)時(shí)間表達(dá)式與輔助時(shí)間表達(dá)式之間應(yīng)滿足的邏輯約束關(guān)系。在本文中,我們建模了潛在的二元依賴關(guān)系,形式上即為一種關(guān)系抽取任務(wù),我們考查了3種關(guān)系,分別是早于、晚于和同時(shí)。對(duì)于輸入的目標(biāo)和輔助時(shí)間表達(dá)式和,該歸納器輸出在標(biāo)簽集上的概率分布:
時(shí)間概念去模糊器這里我們定義在文本中,只給出其數(shù)值內(nèi)容,但是單位缺失的時(shí)間概念為模糊時(shí)間概念。例如,“I wake up at 6”中,“6”代表了一個(gè)時(shí)刻,然而其單位(上午/下午)未在文中顯式的給出。這使得并不能直接將基于時(shí)序依賴歸納器得到的概念間邏輯關(guān)系實(shí)例化以實(shí)現(xiàn)對(duì)答案數(shù)值區(qū)間的推理。為此,我們引入了時(shí)間概念去模糊器,其目標(biāo)是估計(jì)模糊時(shí)間概念具體化為每個(gè)特定可行解的概率。
具體的,每個(gè)時(shí)間表達(dá)式的上下文表示都會(huì)作為其對(duì)應(yīng)維度的時(shí)間單位分類器的輸入:
即在給定的維度的標(biāo)簽集上每個(gè)標(biāo)簽的分?jǐn)?shù),.
邏輯驗(yàn)證器
邏輯驗(yàn)證器用于計(jì)算目標(biāo)時(shí)間表達(dá)式滿足神經(jīng)網(wǎng)絡(luò)所歸納的邏輯約束的概率,在訓(xùn)練時(shí),該概率將會(huì)被最大化(即“蘊(yùn)含損失”)。這部分由神經(jīng)-符號(hào)系統(tǒng)DeepProbLog實(shí)現(xiàn)。一旦符號(hào)實(shí)例化的結(jié)構(gòu)給定,DeepProblog程序既可以使得我們能夠簡單的基于反向傳播的方式來完成訓(xùn)練。圖3展示了一個(gè)符號(hào)實(shí)例化之后,DeepProbLog框架進(jìn)行概率前向傳播的過程。
圖3: DeepProbLog框架進(jìn)行概率前向傳播的過程
訓(xùn)練
基于回歸的時(shí)間數(shù)值恢復(fù)損失本文中我們同樣以使得模型恢復(fù)文中被掩蓋住的時(shí)間表達(dá)式的一個(gè)損失函數(shù),該損失函數(shù)要求模型能夠跟據(jù)給定上下文,預(yù)測(cè)出缺失時(shí)間表達(dá)式的歸一化之后的數(shù)值。前人的工作[3]證明了在持續(xù)時(shí)間維度,基于回歸的方式構(gòu)建預(yù)訓(xùn)練損失能夠取得良好的效果,我們將其拓展到更廣泛的時(shí)序常識(shí)維度。
這里是模型預(yù)測(cè)得到的歸一化值,。其中,時(shí)間表達(dá)式歸一化方法為:將時(shí)刻統(tǒng)一以小數(shù)時(shí)間表示,將持續(xù)時(shí)間轉(zhuǎn)化為以秒為單位后的數(shù)值的對(duì)數(shù)(例如, 2 小時(shí) 7200 秒 ). 7:30 pm 19.5). )?;诰讲钫`差來優(yōu)化:
這里就代表時(shí)間表達(dá)式的歸一化后的值。
時(shí)序邏輯蘊(yùn)含損失仿照DeepProbLog[4], 我們也同樣使用了“蘊(yùn)含損失”函數(shù)。給定訓(xùn)練數(shù)據(jù)和查詢,模型調(diào)整其參數(shù)來最大化查詢?yōu)檎娴母怕? 可以描述為對(duì)于查詢的平均負(fù)對(duì)數(shù)損失:
綜上,LECTER的損失函數(shù)為:
在進(jìn)行推理時(shí),我們基于如下方式里選擇最正確的答案:
這里是答案集,代表被刪去一個(gè)時(shí)間表達(dá)式的輸入文檔。
實(shí)驗(yàn)
數(shù)據(jù)集及評(píng)估方式
我們?cè)谝粋€(gè)具有挑戰(zhàn)性的TIMEDIAL[4]數(shù)據(jù)集上評(píng)估LECTER的性能。TIMEDIAL是一個(gè)面向復(fù)雜上下文(對(duì)話)的時(shí)序常識(shí)推理數(shù)據(jù)集。給定一個(gè)多輪對(duì)話并掩住其含有的一個(gè)時(shí)間表示式,該任務(wù)需要模型能夠從4個(gè)選項(xiàng)中選擇出合理的候選時(shí)間表達(dá)式,在4個(gè)答案中有且僅有兩個(gè)答案是正確答案。只有模型能夠正確的理解上下文語義與目標(biāo)時(shí)間表達(dá)式的因果關(guān)系,其才有可能做出正確的預(yù)測(cè)。該數(shù)據(jù)集中總計(jì)有1.1k個(gè)數(shù)據(jù)實(shí)例,平均每段對(duì)話有11輪,包含有3個(gè)以上的時(shí)間表達(dá)式。我們使用2-best accuracy指標(biāo)來評(píng)估模型的性能。在實(shí)驗(yàn)中,我們基于收集了在TIMEDIAL域外分布的對(duì)話數(shù)據(jù)來以自監(jiān)督的方式訓(xùn)練LECTER模型。訓(xùn)練和驗(yàn)證集的數(shù)據(jù)量分別為97k和24k。
結(jié)果分析
表1: 主實(shí)驗(yàn)結(jié)果
表1展示了我們的方法與[1]中提出的基線方法相比的結(jié)果。我們可以得出如下結(jié)論:(1)通過時(shí)序增強(qiáng)的持續(xù)訓(xùn)練,預(yù)訓(xùn)練模型的表現(xiàn)可以得到很大提升,證明了通過弱監(jiān)督方式獲取時(shí)序知識(shí)信號(hào)對(duì)與時(shí)序推理任務(wù)的意義。(2)得益于對(duì)模糊時(shí)間概念的建模,LECTER模型可以大幅度的超過基線方法,取得了超過10%的提升。
消融實(shí)驗(yàn)
表2展示了消融實(shí)驗(yàn)的結(jié)果,我們證明了我們添加的兩個(gè)自監(jiān)督損失的有效性。如表2所示,基于回歸的時(shí)間概念恢復(fù)損失,提升了約9.0%。可能的原因在于,經(jīng)典的預(yù)訓(xùn)練的損失并不能夠很好的完全建模時(shí)間常識(shí)的模糊性,在給定的語義下,在一個(gè)模糊的連續(xù)區(qū)間內(nèi)的時(shí)間概念都可以是可行解。而這種連續(xù)性恰好可以很好的基于數(shù)值回歸的方式進(jìn)行建模。時(shí)序邏輯歸納損失也提升了2.1%,這是由于通過顯式的邏輯歸納,模型獲得了更強(qiáng)的依據(jù)潛在的邏輯關(guān)系進(jìn)行推理的能力,這比隱式的編碼上下文的方式往往更魯棒可靠。
表2: 消融實(shí)驗(yàn)結(jié)果
結(jié)論
在本文中,我們提出了基于模糊邏輯歸納的事件時(shí)序常識(shí)推理方法LECTER。我們將典型的時(shí)序常識(shí)推理過程建模為三個(gè)連續(xù)步驟:(1)歸納出文中的時(shí)間表達(dá)式間的邏輯約束關(guān)系(2)將文中的模糊時(shí)間概念進(jìn)行具體化(3)綜合利用前兩步的結(jié)果以及額外的上下文信息來驗(yàn)證候選時(shí)間概念的正確性。利用“基于回歸的時(shí)間值恢復(fù)損失”和“時(shí)序邏輯蘊(yùn)含損失”,模型可以在深度理解文中時(shí)間表達(dá)式之間全局依賴的同時(shí),有更好的針對(duì)模糊時(shí)間概念的推理能力。在TIMEDIAL數(shù)據(jù)集中,我們大幅度超越了基線方法。
-
框架
+關(guān)注
關(guān)注
0文章
404瀏覽量
17881 -
函數(shù)
+關(guān)注
關(guān)注
3文章
4379瀏覽量
64806 -
自然語言
+關(guān)注
關(guān)注
1文章
292瀏覽量
13654
原文標(biāo)題:AAAI 2023 | 基于自監(jiān)督邏輯歸納的可解釋模糊時(shí)序常識(shí)推理
文章出處:【微信號(hào):zenRRan,微信公眾號(hào):深度學(xué)習(xí)自然語言處理】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
MATLAB模糊邏輯工具箱函數(shù)介紹
通過LabVIEW與MATLAB設(shè)計(jì)模糊參數(shù)自整定PID
在MATLAB環(huán)境下的模糊參數(shù)自整定PID控制
基于Matlab FIS工具箱的模糊自整定PID控制系統(tǒng)的設(shè)
戰(zhàn)場(chǎng)目標(biāo)的模糊邏輯檢測(cè)與識(shí)別方法
同步時(shí)序邏輯電路
異步時(shí)序邏輯電路
基于條件熵的直覺模糊條件推理
基于直覺模糊推理的醫(yī)學(xué)圖像融合方法研究

時(shí)序邏輯電路分析有幾個(gè)步驟(同步時(shí)序邏輯電路的分析方法)

時(shí)序邏輯電路由什么組成_時(shí)序邏輯電路特點(diǎn)是什么

基于改進(jìn)模糊熵和證據(jù)推理的多屬性決策方法
深度學(xué)習(xí)框架區(qū)分訓(xùn)練還是推理嗎
一種利用幾何信息的自監(jiān)督單目深度估計(jì)框架

評(píng)論