国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

UTMCQA:融合多任務(wù)的復(fù)雜問(wèn)答模型

2021-08-24 03:06周高峰高盛祥余正濤寇夢(mèng)珂
關(guān)鍵詞:知識(shí)庫(kù)隊(duì)列語(yǔ)義

周高峰,高盛祥,余正濤,宋 燃,寇夢(mèng)珂

1(昆明理工大學(xué) 信息工程與自動(dòng)化學(xué)院,昆明 650500) 2(昆明理工大學(xué) 云南省人工智能重點(diǎn)實(shí)驗(yàn)室,昆明 650500)

1 引 言

當(dāng)前大部分問(wèn)答系統(tǒng)可以較好地回答簡(jiǎn)單(單跳)事實(shí)型問(wèn)題[1],例如:“誰(shuí)是電影《泰坦尼克號(hào)》的導(dǎo)演?”,此類(lèi)問(wèn)題僅包含單一事實(shí),可以通過(guò)查詢(xún)知識(shí)庫(kù)中的單個(gè)關(guān)系(或路徑)或檢索某個(gè)文本段落來(lái)解決.但是,真實(shí)應(yīng)用中的問(wèn)題往往涉及多個(gè)實(shí)體和關(guān)系,同時(shí)它們之間具有復(fù)雜的約束限制和推理模式,這類(lèi)問(wèn)題常稱(chēng)為復(fù)雜問(wèn)題[2,3],如:“What is the currency used in the region that has time zone Central Western Time Zone?”,該問(wèn)題中涉及“currency”、“region”、“Central Western Time Zone”等實(shí)體以及“Entity-is”、“Entity-use”、“Entity-have”等實(shí)體間關(guān)系和“time zone”等約束情況,此類(lèi)復(fù)雜問(wèn)題需要綜合利用多個(gè)支撐線索才能回答,因此處理復(fù)雜問(wèn)題中的多個(gè)語(yǔ)義單元及它們之間的復(fù)雜關(guān)系至關(guān)重要.

知識(shí)庫(kù)是處理復(fù)雜問(wèn)題的一個(gè)重要信息源,目前利用知識(shí)庫(kù)處理復(fù)雜問(wèn)題的主流方法可以分為基于模板、語(yǔ)義解析和問(wèn)題分解3類(lèi).其中,基于模板的方法[4,5]通常將自然語(yǔ)言問(wèn)題映射到基于知識(shí)庫(kù)的預(yù)先定義好的模板庫(kù),再使用對(duì)應(yīng)的模板進(jìn)行查詢(xún).語(yǔ)義解析技術(shù)[6-9]旨在為自然語(yǔ)言問(wèn)題構(gòu)造語(yǔ)義分析樹(shù)或等價(jià)查詢(xún)結(jié)構(gòu),把問(wèn)題轉(zhuǎn)換為對(duì)應(yīng)知識(shí)庫(kù)的查詢(xún)語(yǔ)句進(jìn)而通過(guò)檢索獲取答案.問(wèn)題分解技術(shù)[2,9,10]將復(fù)雜的問(wèn)題分解成多個(gè)相關(guān)但更簡(jiǎn)單的子問(wèn)題,并以子問(wèn)題的答案作為證據(jù)支撐得出最終答案.但此種方法的缺點(diǎn)在于系統(tǒng)的性能往往受到知識(shí)庫(kù)不完整性的影響.相反,文本庫(kù)往往包含了知識(shí)庫(kù)中不存在的實(shí)體信息,其豐富的信息可以彌補(bǔ)知識(shí)庫(kù)不完整的缺陷.最近的方法[11-13]通過(guò)融合結(jié)構(gòu)化知識(shí)庫(kù)和非結(jié)構(gòu)化文本兩個(gè)信息源,構(gòu)建問(wèn)題的相關(guān)子圖并利用圖表示學(xué)習(xí)的方法進(jìn)行問(wèn)答,在問(wèn)答領(lǐng)域顯示出巨大潛力.

雖然目前對(duì)復(fù)雜問(wèn)題(多跳問(wèn)題)的研究日益火熱,但仍有很多挑戰(zhàn),主要包括:1)大多數(shù)問(wèn)答系統(tǒng)沒(méi)有關(guān)注到復(fù)雜問(wèn)題中豐富的語(yǔ)義信息,大部分模型以流水線形式進(jìn)行,實(shí)體鏈接、關(guān)系檢測(cè)等各模塊獨(dú)立學(xué)習(xí),各個(gè)模塊不能通過(guò)相互作用彌補(bǔ)不足;2)雖然融合知識(shí)庫(kù)和文本庫(kù)的方法[12,13]在處理復(fù)雜問(wèn)題上的效果顯著,但是大多數(shù)系統(tǒng)的語(yǔ)義空間不統(tǒng)一.自然語(yǔ)言問(wèn)題嵌入之后,轉(zhuǎn)而用其他方法例如IDF相似度尋找實(shí)體信息,這樣可能會(huì)造成語(yǔ)義歧義和語(yǔ)義融合困難.

為了解決上述問(wèn)題,我們提出了一種稱(chēng)為UTMCQA(Uniform Multi-task Trainable framework for Complex Question Answering)的新框架.我們不假定信息在知識(shí)庫(kù)或文檔中,而是復(fù)合的,并且假設(shè)一個(gè)子圖對(duì)應(yīng)于一個(gè)問(wèn)題.圖1給出了UTMCQA框架概述.針對(duì)挑戰(zhàn)1,我們使用預(yù)訓(xùn)練模型Albert[14]統(tǒng)一訓(xùn)練命名實(shí)體識(shí)別,句法分析,關(guān)系分類(lèi)等主要任務(wù),使各個(gè)模塊中的信息相互作用,從而學(xué)習(xí)到復(fù)雜問(wèn)句中的豐富語(yǔ)義信息;針對(duì)挑戰(zhàn)2,我們?cè)贕raphNet[12]的基礎(chǔ)上,采用BERT模型分析問(wèn)題,結(jié)合語(yǔ)義相似從知識(shí)庫(kù)和文本庫(kù)獲取問(wèn)題相關(guān)的實(shí)體或句子,并根據(jù)其關(guān)聯(lián)關(guān)系構(gòu)建并迭代更新問(wèn)題的圖模型;最后根據(jù)構(gòu)建的子圖在一定范圍內(nèi)選擇問(wèn)題的最終答案.

本文在公開(kāi)的大規(guī)模復(fù)雜問(wèn)題數(shù)據(jù)集ComplexWebQuestion[15]上測(cè)試UTMCQA框架.實(shí)驗(yàn)表明,相較于其他模型,本文提出的問(wèn)答框架UTMCQA在多個(gè)場(chǎng)景設(shè)置下均取得了最好的效果,并且驗(yàn)證了命名實(shí)體識(shí)別,句法分析,關(guān)系抽取等自然語(yǔ)言任務(wù)對(duì)框架的提升作用.本文的主要貢獻(xiàn)包括:1)使用預(yù)訓(xùn)練語(yǔ)言模型(ALBERT)在同一語(yǔ)義空間統(tǒng)一訓(xùn)練命名實(shí)體識(shí)別,句法分析,關(guān)系抽取等任務(wù);2)結(jié)合語(yǔ)義相似獲取知識(shí)庫(kù)和文本中的相關(guān)實(shí)體信息;3)在統(tǒng)一的語(yǔ)義空間進(jìn)行子圖更新和擴(kuò)展;4)在大規(guī)模公開(kāi)復(fù)雜問(wèn)題數(shù)據(jù)集ComplexWebQuestion上的不同場(chǎng)景下的實(shí)驗(yàn)效果均有較好提升.

2 相關(guān)工作

問(wèn)答系統(tǒng)的關(guān)注熱點(diǎn)由簡(jiǎn)單單跳問(wèn)題轉(zhuǎn)移到了復(fù)雜的多跳問(wèn)題.基于模板的方法[4,5,16]查詢(xún)速度快,有良好的可解釋性,但是復(fù)雜問(wèn)題往往有多種表達(dá)形式,需要建立龐大的模板庫(kù),這個(gè)過(guò)程人工開(kāi)銷(xiāo)很大.語(yǔ)義解析技術(shù)為復(fù)雜問(wèn)題構(gòu)造語(yǔ)義分析樹(shù)或等價(jià)查詢(xún)結(jié)構(gòu).Hu[7]通過(guò)狀態(tài)轉(zhuǎn)移的方法把一個(gè)復(fù)雜問(wèn)題轉(zhuǎn)化為一個(gè)查詢(xún)圖,通過(guò)匹配潛在的知識(shí)圖譜獲得問(wèn)題的答案.Luo[8]使用神經(jīng)網(wǎng)絡(luò)對(duì)復(fù)雜查詢(xún)圖的完整語(yǔ)義進(jìn)行顯式編碼來(lái)處理復(fù)雜問(wèn)題任務(wù).Sun[17]用骨架語(yǔ)法來(lái)表達(dá)復(fù)雜問(wèn)題的宏觀結(jié)構(gòu),從而生成更精確的依賴(lài)關(guān)系來(lái)提高下游的語(yǔ)義解析任務(wù).但語(yǔ)義解析的方法通常依賴(lài)于句法類(lèi)似的依賴(lài)關(guān)系.分割階段和語(yǔ)義分析階段都存在錯(cuò)誤積累.問(wèn)題分解技術(shù)是應(yīng)對(duì)復(fù)雜問(wèn)題更為直觀的策略.Talmor[2]和Min[18]等人將原始問(wèn)題構(gòu)建為多個(gè)跨距并利用端到端的深度神經(jīng)網(wǎng)絡(luò)模型訓(xùn)練.這些工作通常通過(guò)人類(lèi)注釋的監(jiān)督學(xué)習(xí)或者啟發(fā)式算法生成子問(wèn)題,但收集分解標(biāo)記并不容易,Perez[10]探索了無(wú)監(jiān)督的方法來(lái)生成子問(wèn)題.關(guān)注到子問(wèn)題回答順序的隨意性會(huì)導(dǎo)致搜索空間大,漏掉答案的風(fēng)險(xiǎn)高,Zhang[19]通過(guò)優(yōu)化這些順序進(jìn)一步改善了問(wèn)答的性能.Zhang[9]在嵌入空間拆分問(wèn)題,然后通過(guò)語(yǔ)義解析分裂問(wèn)題轉(zhuǎn)化為結(jié)構(gòu)化SPARQL查詢(xún).而目前大部分系統(tǒng)并沒(méi)有關(guān)注問(wèn)題中豐富的語(yǔ)義信息,我們利用預(yù)訓(xùn)練模型Albert統(tǒng)一訓(xùn)練命名實(shí)體識(shí)別,句法分析,關(guān)系檢測(cè)等多個(gè)任務(wù),在一定程度上解決了單個(gè)任務(wù)出錯(cuò)引起的錯(cuò)誤傳遞問(wèn)題,并將學(xué)習(xí)到的復(fù)雜問(wèn)題中的豐富語(yǔ)義信息應(yīng)用到下游子圖構(gòu)建任務(wù).

聯(lián)合知識(shí)庫(kù)和文本庫(kù)是提升復(fù)雜問(wèn)答推理的有效形式Das[11]將Universal Schema[20]擴(kuò)展到QA的應(yīng)用當(dāng)中,將兩個(gè)不同來(lái)源的信息分別編碼放入Memory Networks[21]中,以處理文本與知識(shí)庫(kù)組合中的大量事實(shí).GRAFT-Net[12]將知識(shí)庫(kù)實(shí)體和文本放入同一個(gè)子圖,利用圖表示學(xué)習(xí)網(wǎng)絡(luò),訓(xùn)練單個(gè)基于Graph-CNN的模型以從子圖中提取答案.PullNet[13]類(lèi)似于GRAFT-Net,使用一個(gè)迭代過(guò)程來(lái)構(gòu)造一個(gè)包含問(wèn)題相關(guān)信息的特定于問(wèn)題的子圖,之后使用另一個(gè)圖CNN從子圖中提取答案.然而對(duì)于知識(shí)庫(kù)或文本庫(kù)中相關(guān)的句子或事實(shí),現(xiàn)有算法大都是通過(guò)基于詞頻的方式發(fā)現(xiàn),并不能應(yīng)對(duì)復(fù)雜問(wèn)答存在的復(fù)雜語(yǔ)義和復(fù)雜關(guān)系.我們利用語(yǔ)義相似作為啟發(fā)信息,在統(tǒng)一的語(yǔ)義空間中進(jìn)行分析和計(jì)算,并通過(guò)隊(duì)列算法動(dòng)態(tài)地結(jié)合上游任務(wù)的語(yǔ)義信息進(jìn)行子圖擴(kuò)展,最后在圖的廣度范圍進(jìn)行答案選擇,解決了不同訓(xùn)練過(guò)程帶來(lái)的語(yǔ)義融合困難的問(wèn)題.

3 模 型

3.1 任務(wù)定義

我們的目標(biāo)是學(xué)習(xí)一個(gè)模型,對(duì)于給定的一個(gè)復(fù)雜問(wèn)題q=(w1,…,w|q|),其中wi(1≤i≤|q|)表示復(fù)雜問(wèn)題中的單詞;從知識(shí)庫(kù)K=(V,E,R)和文本庫(kù)D={d1,…,d|D|}獲取答案{a}q.其中V,E,R分別表示實(shí)體、關(guān)聯(lián)、關(guān)系集合,di=(w1,…,w|di|)表示包含v∈V的句子;關(guān)聯(lián)e∈E,表示為(vs,r,vo)三元組,其中vs,vo∈V,r∈R.

本文中為了獲取答案:1)基于BERT模型學(xué)習(xí)問(wèn)題q及其相關(guān)句子的語(yǔ)義特征,主要任務(wù)包括命名實(shí)體識(shí)別、句法分析、關(guān)系抽取等.給定問(wèn)題q=(w1,…,w|q|),以及查找到的與問(wèn)題q相關(guān)的候選實(shí)體集合Vq=(v1,…,v|v|)和候選句子集合Dq=(d1,…,d|q|),構(gòu)造輸入模型的數(shù)據(jù)格式為:[CLS]w1…w|q|[SEP]v1[#]…[#]v|v|[SEP]d1[&]…[&]d|q|,其中Vq包含的實(shí)體之間使用token“[#]”作為分割符,Dq包含的句子之間使用token“[&]”作為分隔符.同時(shí)在訓(xùn)練時(shí),用與答案等長(zhǎng)的“[mask]”串對(duì)問(wèn)題q=(w1,…,w|q|)中的疑問(wèn)詞進(jìn)行替代填充;2)根據(jù)問(wèn)題q的語(yǔ)義特征從知識(shí)庫(kù)K=(V,E,R)和文本庫(kù)D={d1,…,d|D|}中獲取相關(guān)實(shí)體或句子,并根據(jù)其關(guān)聯(lián)關(guān)系構(gòu)建并更新問(wèn)題q的圖模型Gq=([Kq,Dq,vq],Eq);3)根據(jù)Gq選擇最終答案.整個(gè)過(guò)程均由可以訓(xùn)練的模型組成,具體如圖1 UTMCQA模型所示.為此,我們將分3部分介紹UTMCQA模型:語(yǔ)義分析部分、圖模型構(gòu)建部分、答案選擇部分.

注:NER、POS、SR、RE分別表示命名實(shí)體識(shí)別、詞性標(biāo)注、句法分析、關(guān)系抽取,多個(gè)任務(wù)共享底層Bert;最右邊表示迭代地從問(wèn)題、知識(shí)庫(kù)和文本庫(kù)中獲取實(shí)體、事實(shí)和句子以更新問(wèn)題子圖,并從子圖中選擇問(wèn)題的最終答案.

3.2 語(yǔ)義分析

將復(fù)雜問(wèn)題中多重或隱含的信息識(shí)別出來(lái)并不容易,為此我們采用預(yù)訓(xùn)練模型BERT作為基礎(chǔ)編碼器,并在其上構(gòu)建可訓(xùn)練的多任務(wù)模型(多個(gè)任務(wù)共享底層BERT,并各自有自己的上層網(wǎng)絡(luò)和損失函數(shù))以更好地學(xué)習(xí)復(fù)雜問(wèn)題所包含的豐富語(yǔ)法及語(yǔ)義信息,為構(gòu)建和擴(kuò)展面向復(fù)雜問(wèn)題的圖模型提供啟發(fā)信息.具體請(qǐng)參考模型結(jié)構(gòu)圖2 “What is the currency used in the region that has time zone Central Western Time Zone?”的語(yǔ)義分析構(gòu)圖.下面,我們按照問(wèn)題q的語(yǔ)義特征提取流程分別介紹相關(guān)處理.

注:ner表示實(shí)體,pos表示實(shí)體詞性;實(shí)體間關(guān)系、實(shí)體間句法依賴(lài)、實(shí)體間成分依賴(lài)分別用實(shí)線箭頭、虛線箭頭、方形標(biāo)示出.

3.2.1 命名實(shí)體識(shí)別+詞性標(biāo)注

在復(fù)雜問(wèn)答中,命名實(shí)體識(shí)別(Named Entity Recognition,NER)和詞性標(biāo)注(Part of Speech,POS)均扮演著重要角色,很多問(wèn)答出現(xiàn)錯(cuò)誤都與該任務(wù)密切相關(guān),一旦NER或POS發(fā)生錯(cuò)誤,后續(xù)的處理也會(huì)隨之產(chǎn)生級(jí)聯(lián)誤差;然而,目前的復(fù)雜問(wèn)答算法并沒(méi)有專(zhuān)門(mén)將以上兩個(gè)任務(wù)作為必備的訓(xùn)練任務(wù),而是利用外部系統(tǒng)(如Stanford NER,NLTK)進(jìn)行識(shí)別,通常情況下此類(lèi)通用的外部系統(tǒng)得到的識(shí)別結(jié)果中存在不少錯(cuò)誤,其會(huì)大大降低復(fù)雜問(wèn)答系統(tǒng)的性能.鑒于此,我們?cè)诳蚣苤腥诤狭嗣麑?shí)體識(shí)別和詞性標(biāo)注任務(wù):

Oner/pos=CRF(BiLSTM(tanh(H[1],…,H[|q|]))

(1)

其中,H[1],…,H[|q|]表示問(wèn)題q中所有單詞的BERT輸出,tanh,BiLSTM,CRF分別表示tanh函數(shù),雙向LSTM(Bidirectional LSTM),條件隨機(jī)場(chǎng).我們將這兩個(gè)任務(wù)和后續(xù)的問(wèn)答任務(wù)一起訓(xùn)練,此任務(wù)需要預(yù)先人工標(biāo)注出句子中的命名實(shí)體和詞性以提供監(jiān)督信息,損失函數(shù)采用交叉熵?fù)p失函數(shù).

3.2.2 句法分析

在復(fù)雜問(wèn)答中,句法分析對(duì)于判斷問(wèn)題的復(fù)雜邏輯關(guān)系,有著重要的啟發(fā)作用,其中依賴(lài)樹(shù)(Dependency tree)和成分樹(shù)(Constituency tree)尤為重要,因此讓模型學(xué)習(xí)到句子中詞與詞之間的句法依賴(lài)關(guān)系以及不同詞扮演的不同成分對(duì)正確回答問(wèn)題有很大幫助.在這里,我們按照 HPSG[22]的做法將兩者以Joint Span的形式定義span scores和dependence scores作為學(xué)習(xí)目標(biāo),句子中的詞經(jīng)過(guò)BERT模型的輸出作為句法分析網(wǎng)絡(luò)的輸入,并用現(xiàn)有句法解析工具的結(jié)果作為監(jiān)督信號(hào)(現(xiàn)有的句法解析工具可以標(biāo)示出詞之間的關(guān)系以及每個(gè)詞的成分),具體計(jì)算過(guò)程如下:

relss=tanh(concat([H[i]-H[j],H[i]+H[j]]))

(2)

s(i,j)ss=sigmoid(linearss(relss))

(3)

s(i,j,l)ss=[s(i,j)ss]l

(4)

(5)

relds=concat([tanh(H[i]),tanh(H[j]),tanh(H[i]WH[j])])

(6)

s(i,j)ds=sigmoid(lineards(relds))

(7)

s(i,j,l)ds=[s(i,j)ds]l

(8)

其中ss為span-score的簡(jiǎn)寫(xiě),ds為dependence-score的簡(jiǎn)寫(xiě),s(i,j)span-score,s(i,j,l)span-score,s(T)span-score分別表示BERT輸出H[i],H[j]之間,標(biāo)注為l及其整個(gè)樹(shù)T的跨度分?jǐn)?shù);同樣的,s(i,j)dependence-score,s(i,j,l)dependence-score分別表示H[i],H[j]之間及標(biāo)注為l的依賴(lài)性得分,linearss和lineards表示線性函數(shù).對(duì)于句法關(guān)系訓(xùn)練的loss函數(shù)有如下定義:

(9)

loss(θ)ds=-(logPθ(H[parent]|H[child])+logPθ(l|H[parent],H[child]))

(10)

loss(θ)syntactic=loss(θ)ss+loss(θ)ds

(11)

3.2.3 關(guān)系抽取

在復(fù)雜問(wèn)答中,一個(gè)問(wèn)題往往包含實(shí)體之間多重或者隱含的關(guān)系,而這些關(guān)系可以深刻揭示問(wèn)題的答案線索或答案本身.為此,我們以關(guān)系抽取作為復(fù)雜問(wèn)答的重要線索,讓網(wǎng)絡(luò)能夠?qū)W習(xí)到實(shí)體間豐富的關(guān)系,此任務(wù)也需要人工預(yù)先標(biāo)注出句子中實(shí)體詞之間的關(guān)系作為監(jiān)督信息,類(lèi)似的,此任務(wù)也以BERT模型的輸出作為關(guān)系抽取網(wǎng)絡(luò)的輸入,具體的計(jì)算過(guò)程如下:

relre=concat([Maxpool(H[1],…,H[|ve1|]),

Maxpool(H[1],…,H[|ve2|]))

(12)

H[ve1,ve2]=linearre1(tanh(relre)

(13)

(14)

(15)

3.2.4 語(yǔ)義相似

對(duì)于知識(shí)庫(kù)K或文本庫(kù)D中與問(wèn)題q相關(guān)的句子或事實(shí)fact,現(xiàn)有算法大都通過(guò)實(shí)體鏈接系統(tǒng)發(fā)現(xiàn),并按照IDF相似度將之排序并獲取TOP N的數(shù)據(jù)[13].但這種基于詞頻的算法缺乏對(duì)句子的深度理解,不足以處理復(fù)雜問(wèn)答中所存在的不同語(yǔ)義和復(fù)雜關(guān)系的問(wèn)題.為此,我們?cè)黾佣x了可訓(xùn)練的語(yǔ)義相似作為IDF的啟發(fā)信息,通過(guò)網(wǎng)絡(luò)來(lái)自適應(yīng)地計(jì)算問(wèn)題和事實(shí)之間的相似度:

simq=linearsim(tanh(H[q]))

(16)

simfact=linearsim(tanh(H[fact]))

(17)

(18)

其中,H[q],H[fact]分別是問(wèn)題q和相關(guān)句子或事實(shí)fact的通過(guò)BERT編碼之后的句首輸出,cos是余弦相似度函數(shù),損失函數(shù)采用均方誤差函數(shù).

3.2.5 問(wèn)答鏈接

復(fù)雜問(wèn)答最終是對(duì)各種實(shí)體選擇問(wèn)題的答案進(jìn)行排序,本文引入問(wèn)答鏈接來(lái)表征問(wèn)題q與備選實(shí)體v之間的距離或相似度,并以語(yǔ)義相似作為啟發(fā)信息,具體定義如下:

linkqm=relu(linearlink(H[qm]))

(19)

linkv=relu(linearlink(H[v]))

(20)

(21)

3.3 圖模型構(gòu)建

以問(wèn)題q為中心,將知識(shí)庫(kù)K和文本庫(kù)D中與問(wèn)題q相關(guān)的事實(shí)或句子,按照相互關(guān)聯(lián)關(guān)系,構(gòu)建成問(wèn)題q的圖模型Gq=([Kq,Dq,vq],Eq),其中圖模型的節(jié)點(diǎn)Kq,Dq,vq分別表示知識(shí)庫(kù)K,文本庫(kù)D及問(wèn)題q中的事實(shí)、句子和實(shí)體,邊Eq則是它們之間的語(yǔ)義相似,問(wèn)答鏈接或關(guān)系等產(chǎn)生的高相關(guān)度的關(guān)聯(lián).

一般地,圖模型主要按照如下流程建立[12,23]:

2)按照?qǐng)D相鄰關(guān)系,更新節(jié)點(diǎn)表示:

(22)

其中,Nr(v)表示實(shí)體v的入度節(jié)點(diǎn),φ表示轉(zhuǎn)換函數(shù),一般為神經(jīng)網(wǎng)絡(luò)模型,每一次根據(jù)當(dāng)前節(jié)點(diǎn)上一次的表示以及鄰居節(jié)點(diǎn)的表示來(lái)更新當(dāng)前節(jié)點(diǎn)的表示,本文在此基礎(chǔ)上進(jìn)行改進(jìn).

3.3.1 節(jié)點(diǎn)初始化

在復(fù)雜問(wèn)答場(chǎng)景中主要涉及到3類(lèi)節(jié)點(diǎn)(實(shí)體,句子,事實(shí)),本文均使用BERT模型的輸出作為節(jié)點(diǎn)的初始化表示:

其中,H[q]表示問(wèn)題q,H[v]表示相關(guān)實(shí)體,H[fact]表示相關(guān)句子或事實(shí);H[q]是問(wèn)題經(jīng)過(guò)BERT編碼后的句首輸出,H[v]是實(shí)體的BERT輸出經(jīng)過(guò)Maxpool池化后得到的表示,H[fact]則是句子或事實(shí)的BERT的句首輸出,OX表示問(wèn)題q經(jīng)過(guò)語(yǔ)義分析后得到的啟發(fā)信息,例如關(guān)系抽取,句法分析等內(nèi)容,具體的,這里將語(yǔ)義分析得到的輸出序列做Maxpool作為Ox.

3.3.2 節(jié)點(diǎn)更新

節(jié)點(diǎn)更新分為兩種類(lèi)型:一種是實(shí)體更新,一種為句子更新,我們參考Graftnet[12]更新方式.但是,不同于Gq的鄰接矩陣,本文將各種語(yǔ)義分析的啟發(fā)信息合并到節(jié)點(diǎn)更新的過(guò)程中.

3.3.3 節(jié)點(diǎn)擴(kuò)展

節(jié)點(diǎn)擴(kuò)展即根據(jù)圖模型中的現(xiàn)有節(jié)點(diǎn)通過(guò)知識(shí)庫(kù)K和文本庫(kù)D中相關(guān)的事實(shí)或句子擴(kuò)充圖模型的過(guò)程.假設(shè)Hexp是待擴(kuò)展實(shí)體[exp]的Bert輸出,H[q]和H[fact]分別代表問(wèn)題q和相關(guān)的句子或事實(shí)fact的BERT句首輸出:

1)獲取知識(shí)庫(kù)K中事實(shí)和文本庫(kù)D中句子fact:

(23)

Okb-ranking=affine(BiLSTM(Okb-scores))

(24)

而排名結(jié)果Okb-ranking則是將Okb-scores通過(guò)BiLSTM(Bidirectional-LSTM)和affine仿射函數(shù)映射到排名列表中得到.同時(shí),我們定義了可微分的Triple Loss函數(shù)來(lái)學(xué)習(xí)排名:

(25)

(26)

2)選擇擴(kuò)展節(jié)點(diǎn):

算法.節(jié)點(diǎn)擴(kuò)展(包含節(jié)點(diǎn)擴(kuò)展中1)和2))

a) 經(jīng)過(guò)如上步驟1)之后,首先對(duì)獲得的事實(shí)和句子進(jìn)行NER,POS,RE,SR分析;

b) 建立隊(duì)列并更新:

對(duì)象隊(duì)列Oqueue:按照問(wèn)題q中包含命名實(shí)體(包括普通實(shí)體)、名詞、動(dòng)詞、疑問(wèn)詞、形容詞(一般級(jí),比較級(jí),最高級(jí))的基本順序分別建立隊(duì)列;將a)步驟中通過(guò)NER,POS分析出的命名實(shí)體、名詞、動(dòng)詞、疑問(wèn)詞、形容詞分別插入到它們相應(yīng)的隊(duì)列中;

關(guān)系隊(duì)列Rqueue:遍歷問(wèn)題q和a)步驟后獲得的句子經(jīng)過(guò)RE分析后所得到的關(guān)系集合,按照每個(gè)關(guān)系中涉及的兩個(gè)實(shí)體索引以上對(duì)象隊(duì)列,并根據(jù)關(guān)系的方向性加入到每個(gè)實(shí)體對(duì)應(yīng)的鏈表中:如,“Central Western Time Zone”與“Region”存在“Entity-Have”關(guān)系,則對(duì)象隊(duì)列中“Region”增加指向“Central Western Time Zone”的鏈表項(xiàng);

句法隊(duì)列Squeue:將問(wèn)題q和a)步驟后獲得的句子進(jìn)行SR分析得到的依賴(lài)和成分關(guān)系添加到對(duì)象隊(duì)列中:其中依賴(lài)關(guān)系按照有向關(guān)系處理,參考關(guān)系隊(duì)列方式;而成分關(guān)系是無(wú)向關(guān)系,則對(duì)相應(yīng)對(duì)象都添加鏈表項(xiàng);

如隊(duì)列初次建立,則以上所有隊(duì)列和鏈表項(xiàng)都包含一個(gè)visited_time數(shù)據(jù),初始值為0;

選擇擴(kuò)展節(jié)點(diǎn):

引入:?jiǎn)栴}q的覆蓋度是對(duì)象隊(duì)列,關(guān)系隊(duì)列,句法隊(duì)列中涉及問(wèn)題q的隊(duì)列和鏈表項(xiàng)目中visited_time非零的項(xiàng)目個(gè)數(shù)的加權(quán)累加,wo、wr、ws是加權(quán)系數(shù),counter計(jì)算隊(duì)列非零項(xiàng)目的個(gè)數(shù):

Cover(Gq)=wocounter(Oqueue)+wrcounter(Rqueue)+wscounter(Squeue)

而Cover(Gq,v)表示增加訪問(wèn)實(shí)體v后,問(wèn)題q的最大可能的覆蓋度.

定義(覆蓋增益):

Gaincover(Gq,v)=Cover(Gq,v)-Cover(Gq)

表示由于增加了增加訪問(wèn)實(shí)體v后,比原來(lái)覆蓋度增加的數(shù)量.

ⅰ.將待擴(kuò)展實(shí)體按照覆蓋增益排序,選出Top N個(gè)實(shí)體,按照順序并根據(jù)隨機(jī)概率α=0.15選擇實(shí)體,選擇后實(shí)體所對(duì)應(yīng)的Oqueue、Rqueue、Squeue相應(yīng)的項(xiàng)目或鏈表visited_time 加1;

ⅱ.如果覆蓋增益小于一定閾值ξ或者Oqueue隊(duì)列長(zhǎng)度大于一定閾值ζ時(shí),則進(jìn)行答案選擇;

ⅲ.否則,進(jìn)行步驟1).

3.4 答案選擇

答案選擇是在一定范圍內(nèi),即圖模型Gq廣度范圍內(nèi),選擇實(shí)體集合中最優(yōu)的實(shí)體,作為問(wèn)題q的最終答案.對(duì)圖模型Gq中涉及的實(shí)體集合進(jìn)行排序與上節(jié)中語(yǔ)義分析中的問(wèn)答鏈接相同,此處不再贅述.

4 實(shí)驗(yàn)及結(jié)果分析

4.1 實(shí)驗(yàn)數(shù)據(jù)

為了防止訓(xùn)練集到測(cè)試集的數(shù)據(jù)泄漏問(wèn)題,我們?cè)诟倪M(jìn)的數(shù)據(jù)集ComplexWebQuestion version 1.1[15]上驗(yàn)證我們的想法,其中包含34689個(gè)示例,數(shù)據(jù)集按比例(8∶1∶1)劃分為27734個(gè)訓(xùn)練樣本/ 3480個(gè)驗(yàn)證樣本/ 3475個(gè)測(cè)試樣本,每個(gè)樣本中包含了問(wèn)題、答案,Web片段和SPARQL查詢(xún).該數(shù)據(jù)集包含4種類(lèi)型的復(fù)雜問(wèn)題:組合型(46.7%)、合并型(42.4%)、最高級(jí)類(lèi)型(5.3%)和比較級(jí)類(lèi)型(5.6%).每一個(gè)問(wèn)題要么是兩個(gè)簡(jiǎn)單問(wèn)題的組合,要么是一個(gè)簡(jiǎn)單問(wèn)題的延伸.

4.2 評(píng)測(cè)標(biāo)準(zhǔn)

我們使用Precision@1(P@1)作為評(píng)估指標(biāo)來(lái)測(cè)試我們的框架處理復(fù)雜問(wèn)題的性能.即返回的最高得分的答案是否與正確答案之一匹配.

4.3 實(shí)驗(yàn)設(shè)置

本文在涉及到多跳的數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn),并使用知識(shí)庫(kù)Freebase(version 2015-08-02)和文本庫(kù)(來(lái)自數(shù)據(jù)集Web Snippet)結(jié)合的基礎(chǔ)信息一起完成推理.為了加快訓(xùn)練速度,對(duì)Freebase進(jìn)行預(yù)處理,過(guò)濾掉所有不包含ComplexWebQuestion中實(shí)體或關(guān)系的三元組.我們的模型使用Adam算法[24]進(jìn)行參數(shù)更新,學(xué)習(xí)率設(shè)置為0.0001,dropout設(shè)置為0.2,batchsize設(shè)置為{10,30,50},本文選擇Albert-base[14],輸出維度768.BilSTM設(shè)置為1層,linearss是1536×1的全連接網(wǎng)絡(luò),lineards是2304×1的全連接網(wǎng)絡(luò).關(guān)系抽取中Maxpool選擇128個(gè)768×3的kernel,linearre1和linearre2分別是128×64和64×1的全連接網(wǎng)絡(luò),linearsim和linearlink均為768×384的全連接網(wǎng)絡(luò).

4.4 實(shí)驗(yàn)場(chǎng)景及基準(zhǔn)模型設(shè)置

為了提高算法的泛化能力,貼近現(xiàn)實(shí)場(chǎng)景,我們參考PullNet[13]將實(shí)驗(yàn)分為3種測(cè)試場(chǎng)景:知識(shí)庫(kù)K測(cè)試場(chǎng)景,文本庫(kù)D測(cè)試場(chǎng)景,知識(shí)庫(kù)K和文本庫(kù)D混合測(cè)試場(chǎng)景.考慮到知識(shí)庫(kù)的規(guī)模和實(shí)驗(yàn)速度,本文在知識(shí)庫(kù)和文本庫(kù)混合場(chǎng)景下,只使用了50%的KB.

我們選擇KV-Mem(記憶網(wǎng)絡(luò),Key-Value Memory Networks[25]),GRAFT-Net[12],PullNet[13]等作為基線測(cè)試模型,所有模型都支持如上3種測(cè)試場(chǎng)景:KV-Mem將句子或事實(shí)編碼后,形成Key-Value結(jié)構(gòu);Graft-Net 和PullNet以IDF 相似度獲取文本庫(kù)中的句子,使用PageRank-nibble算法[26]獲取知識(shí)庫(kù)中的事實(shí);而我們的UTMCQA模型則是結(jié)合語(yǔ)義相似來(lái)動(dòng)態(tài)獲取相關(guān)實(shí)體和句子信息.

4.5 實(shí)驗(yàn)結(jié)果分析

本文的實(shí)驗(yàn)主要基于ComplexWebQuestion數(shù)據(jù)集進(jìn)行模型的測(cè)試,并選擇了KV-Mem,GraftNet,PullNet這3個(gè)基準(zhǔn)模型進(jìn)行對(duì)比.其中KV-Mem,GraftNet這兩種模型能夠放入內(nèi)存的事實(shí)和文本的數(shù)量上都是有限的,通過(guò)表1注意到KV-Mem較其他模型表現(xiàn)較差,我們認(rèn)為KV-Mem可以很方便的對(duì)先驗(yàn)知識(shí)進(jìn)行編碼,對(duì)鍵值的關(guān)注是在記憶上規(guī)范化的,這些記憶是KB事實(shí)(或文本句子),因此模型無(wú)法在同一時(shí)間為多個(gè)事實(shí)分配高的概率,從而在復(fù)雜問(wèn)題上表現(xiàn)較差.而UTMCQA和PullNet類(lèi)似,均能擴(kuò)展子圖模型,從而包含更多的信息進(jìn)行答案選擇.表1實(shí)驗(yàn)結(jié)果表明:在不同知識(shí)庫(kù)和文檔成分的數(shù)據(jù)上的實(shí)驗(yàn),本文提出的方法相比于其他模型取得了更好的結(jié)果.

通過(guò)對(duì)比兩種信息來(lái)源的區(qū)別得出,知識(shí)庫(kù)是高度規(guī)則化結(jié)構(gòu)化的知識(shí),模型比較容易學(xué)習(xí),而文本庫(kù)雖然蘊(yùn)含豐富信息但是由于自然語(yǔ)言表達(dá)的復(fù)雜多樣性,其中的知識(shí)模型不易學(xué)習(xí)到,因此,單純使用知識(shí)庫(kù)(表1第1列)是要比單純使用文本庫(kù)(表1第2列)效果要好;但是也能看到,在50%的知識(shí)庫(kù)上添加文本庫(kù),模型的效果得到了提升,這說(shuō)明文本庫(kù)也可以作為知識(shí)庫(kù)的補(bǔ)充,以進(jìn)一步提升模型性能,符合我們的預(yù)期;另外,只使用50%的知識(shí)庫(kù)(表1第3列)時(shí),模型的效果并沒(méi)有降低50%,這可能是因?yàn)橹R(shí)庫(kù)涵蓋的知識(shí)范圍太大,而其中大部分知識(shí)可能與問(wèn)題無(wú)關(guān),因此下一步可以考慮針對(duì)具體任務(wù)和問(wèn)題對(duì)知識(shí)庫(kù)中的知識(shí)進(jìn)行過(guò)濾.

其次,通過(guò)對(duì)比其他模型,UTMCQA加入命名實(shí)體識(shí)別、句法分析、關(guān)系抽取任務(wù)后,模型在兩個(gè)信息源上的效果均得到提升,這說(shuō)明本文選取的輔助任務(wù)確實(shí)可以普適性地提升模型對(duì)文本的深層次理解,有助于模型在后續(xù)階段正確地回答問(wèn)題.

為了更好地判斷各個(gè)模塊對(duì)模型的影響,我們?cè)贐ERT輸出的基礎(chǔ)上把UTMCQA框架中涉及語(yǔ)義分析的任務(wù)做了統(tǒng)一的消融實(shí)驗(yàn),分別設(shè)置如下實(shí)驗(yàn):僅進(jìn)行命名實(shí)體識(shí)別任務(wù)(表2第1行),進(jìn)行命名實(shí)體識(shí)別和句法分析任務(wù)(表2第2行),進(jìn)行命名實(shí)體識(shí)別、句法分析和關(guān)系抽取任務(wù)(表2第3行),任務(wù)全部涉及(表2第4行).數(shù)據(jù)表明,命名實(shí)體識(shí)別,句法分析,關(guān)系抽取等對(duì)模型提升都是有貢獻(xiàn)的,各模塊完全整合的模型比缺失模塊的模型性能更好.通過(guò)進(jìn)一步的分析,我們得出以下結(jié)論:1)知識(shí)庫(kù)越完備,模型的效果提升越高,說(shuō)明引入外部的結(jié)構(gòu)化知識(shí)庫(kù)有助于回答復(fù)雜問(wèn)題;2)加入句法分析和關(guān)系抽取后的模型性能有提升,這也表明了復(fù)雜問(wèn)句中的深層語(yǔ)義信息對(duì)于推理出復(fù)雜問(wèn)題的答案有很大幫助.

表2 基于BERT模型上的多任務(wù)消融實(shí)驗(yàn)結(jié)果

4.6 錯(cuò)誤分析

我們隨機(jī)挑選了100個(gè)UTMCQA框架在ComplexWebQuestion數(shù)據(jù)及上測(cè)評(píng)時(shí)P@1=0的問(wèn)題.發(fā)現(xiàn)并總結(jié)出如下幾類(lèi)難以處理的問(wèn)題類(lèi)型:窮舉類(lèi)問(wèn)題(54%):如“what countries fall in Eastern Europe and the country calling code is smallest?”其需要先列舉出東歐地區(qū)的城市再進(jìn)行相關(guān)計(jì)算,而本系統(tǒng)傾向于少量手工,缺少一些預(yù)定義規(guī)則來(lái)學(xué)習(xí)此類(lèi)問(wèn)題.否定類(lèi)問(wèn)題(12%):如“What music genre was don′t by the singer who wrote the song Whatever Gets You Through the Night sing?”此類(lèi)問(wèn)題的答案往往傾向于肯定回答而非否定.其他(32%):無(wú)約束類(lèi)型,如“Which country with a population of 10,005,000 speaks Portuguese ? ”;少部分問(wèn)題沒(méi)有檢測(cè)到實(shí)體,以及一部分聚合問(wèn)題;編碼錯(cuò)誤等.

5 總 結(jié)

本文通過(guò)預(yù)訓(xùn)練模型BERT統(tǒng)一訓(xùn)練了命名實(shí)體識(shí)別,句法分析,關(guān)系抽取等任務(wù),并將語(yǔ)義相似作為啟發(fā)信息尋找知識(shí)庫(kù)和文本庫(kù)的相關(guān)實(shí)體,通過(guò)隊(duì)列算法動(dòng)態(tài)擴(kuò)展子圖,最后在子圖的廣度范圍內(nèi),選擇實(shí)體集合中最優(yōu)的實(shí)體,作為最終答案.實(shí)驗(yàn)結(jié)果表明,與現(xiàn)有的解決方案相比,本文的UTMCQA框架具有更強(qiáng)的表達(dá)能力,在精度上優(yōu)于最新的競(jìng)爭(zhēng)對(duì)手.未來(lái)我們將針對(duì)錯(cuò)誤分析中的錯(cuò)誤類(lèi)型,設(shè)計(jì)更多的啟發(fā)式算法,改進(jìn)模型的性能.

猜你喜歡
知識(shí)庫(kù)隊(duì)列語(yǔ)義
真實(shí)場(chǎng)景水下語(yǔ)義分割方法及數(shù)據(jù)集
智能網(wǎng)聯(lián)車(chē)輛隊(duì)列緊急工況控制策略設(shè)計(jì)*
漢語(yǔ)近義詞辨析知識(shí)庫(kù)構(gòu)建研究
隊(duì)列隊(duì)形體育教案
青春的頭屑
漢語(yǔ)依憑介詞的語(yǔ)義范疇
我國(guó)聯(lián)合虛擬參考咨詢(xún)系統(tǒng)知識(shí)庫(kù)現(xiàn)狀研究*
——基于與QuestionPoint的對(duì)比
位置與方向測(cè)試題
隊(duì)列操練
宝鸡市| 黎城县| 上饶县| 长白| 巩留县| 安康市| 湖南省| 桦南县| 平泉县| 营山县| 南陵县| 广宗县| 永福县| 左云县| 民权县| 澄江县| 房山区| 霍州市| 章丘市| 申扎县| 深州市| 蚌埠市| 林口县| 阿鲁科尔沁旗| 马龙县| 寻甸| 平利县| 永川市| 郁南县| 中山市| 柳江县| 平和县| 交口县| 安化县| 邢台市| 大足县| 酉阳| 奉贤区| 安丘市| 南澳县| 阿尔山市|