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

?

RDF問答系統(tǒng)中一種基于N-gram的消歧方法

2022-05-10 08:45:36江偉豪屠要峰周祥生李忠良
關(guān)鍵詞:概率模型三元組意圖

江偉豪,嚴(yán) 麗,屠要峰,周祥生,李忠良,

1(南京航空航天大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院/人工智能學(xué)院,南京 211106)

2(中興通訊股份有限公司,南京 210000)

1 引 言

RDF(1)https://www.w3.org/TR/rdf-primer/(Resource Description Framework)資源描述框架,被廣泛應(yīng)用于表達(dá)互聯(lián)網(wǎng)中的資源以及資源之間的語(yǔ)義關(guān)系[1].RDF的基本結(jié)構(gòu)為主語(yǔ)、謂語(yǔ)、賓語(yǔ)所構(gòu)成的三元組,可以記作,描述了以主語(yǔ)和賓語(yǔ)所代表資源之間具有謂語(yǔ)所代表的關(guān)系.各應(yīng)用在存儲(chǔ)RDF數(shù)據(jù)時(shí)遵守了同一協(xié)議,所以在交換RDF數(shù)據(jù)的過(guò)程中不會(huì)發(fā)生語(yǔ)義丟失的問題.因此,RDF被廣泛應(yīng)用于數(shù)據(jù)可視化、查詢、交換、融合以及知識(shí)網(wǎng)絡(luò)的構(gòu)建中.

對(duì)于RDF數(shù)據(jù)的查詢,具有語(yǔ)義知識(shí)背景的專業(yè)人員可以通過(guò)構(gòu)建結(jié)構(gòu)化查詢語(yǔ)言SPARQL[2]來(lái)對(duì)RDF數(shù)據(jù)進(jìn)行查詢.雖然結(jié)構(gòu)化語(yǔ)言具有很強(qiáng)的表達(dá)能力,但由于該語(yǔ)言復(fù)雜的語(yǔ)法以及RDF數(shù)據(jù)概要的約束,使用SPARQL對(duì)RDF數(shù)據(jù)進(jìn)行查詢對(duì)于普通用戶而言需要很高的學(xué)習(xí)成本.而通過(guò)關(guān)鍵詞搜索[3]的形式對(duì)相關(guān)RDF資源進(jìn)行查詢的方式雖然操作簡(jiǎn)單,但關(guān)鍵詞的表達(dá)能力有限,僅通過(guò)幾個(gè)關(guān)鍵詞難以明確表達(dá)用戶的查詢意圖.同樣,使用受限的自然語(yǔ)言[4]來(lái)表達(dá)用戶的查詢意圖,所提供的輸入模板無(wú)法滿足用戶查詢需求的多樣性.對(duì)于基于自然語(yǔ)言處理的RDF問答系統(tǒng),其中需要彌補(bǔ)自然語(yǔ)言與結(jié)構(gòu)化查詢語(yǔ)言之間的差異,而在具體轉(zhuǎn)化過(guò)程中往往要解決由自然語(yǔ)言的語(yǔ)義多樣性所造成的歧義,有研究人員依賴于提供用戶交互操作[5]來(lái)解決其中的歧義問題,然而交互的次數(shù)不穩(wěn)定會(huì)影響用戶的查詢效率.所以,解決轉(zhuǎn)化過(guò)程中所產(chǎn)生的歧義問題成為了設(shè)計(jì)RDF問答系統(tǒng)的關(guān)鍵.

基于自然語(yǔ)言處理的RDF問答系統(tǒng)主要包含以下兩個(gè)處理階段:用戶意圖理解和查詢驗(yàn)證.用戶意圖理解的主要工作是彌補(bǔ)非結(jié)構(gòu)化的自然語(yǔ)言與結(jié)構(gòu)化的查詢語(yǔ)言之間的差異,在本文中的體現(xiàn)則是識(shí)別用戶自然語(yǔ)言輸入的查詢意圖,以及將查詢意圖轉(zhuǎn)化成相應(yīng)的SPARQL查詢語(yǔ)句的過(guò)程.而查詢驗(yàn)證階段則是根據(jù)構(gòu)造好的查詢語(yǔ)句匹配出與問句相關(guān)的答案并進(jìn)行驗(yàn)證的過(guò)程.其中,本文的工作更注重于用戶意圖理解的階段.由于用戶表達(dá)的歧義性以及自然語(yǔ)言的多樣性,在該過(guò)程中往往會(huì)存在歧義問題,從而導(dǎo)致所構(gòu)造的查詢語(yǔ)言有多種組合.在用戶意圖理解階段識(shí)別出與用戶查詢意圖最匹配以及最有可能執(zhí)行成功的top-k組合,相比窮舉驗(yàn)證的效率要高.

以下,將結(jié)合例子介紹本文的研究動(dòng)機(jī).由于所提方法是針對(duì)英文語(yǔ)言的輸入,所以本章后續(xù)的所有例子當(dāng)中都以英文自然語(yǔ)言問句作為用戶輸入進(jìn)行討論.以自然語(yǔ)言問句:“What is the name of the film that directed by Steven Spiel-berg?”為例,該問句所對(duì)應(yīng)的SPARQL查詢語(yǔ)句組合如圖1所示.表1中展示了示例的RDF片段,其中RDF數(shù)據(jù)由三元組表示,以主語(yǔ)、謂語(yǔ)、賓語(yǔ)的形式組成,主語(yǔ)為實(shí)體資源,謂語(yǔ)代表關(guān)系資源,而賓語(yǔ)可以表示為資源也可以表示為字面量.從自然語(yǔ)言問句轉(zhuǎn)化為SPARQL查詢語(yǔ)句的過(guò)程中分為三個(gè)處理階段:意圖提取,資源映射,語(yǔ)句轉(zhuǎn)化.

圖1 SPARQL語(yǔ)句方案

表1 RDF片段示例

以例句當(dāng)中的關(guān)鍵詞所組成的用戶查詢意圖可表示為:.如表2資源映射表所示,關(guān)鍵詞“Steven Spielberg”可映射為兩個(gè)不同的資源,分別為,前者為導(dǎo)演,后者則為同名演員.由于用戶輸入歧義以及資源映射的多樣性所引起的問題,稱為映射歧義問題.而圖1則展示了以上關(guān)鍵詞所能構(gòu)成的查詢語(yǔ)句有4種可能組合,由于自然語(yǔ)言表達(dá)的多樣性所引起的歧義問題,稱為結(jié)構(gòu)歧義問題.

表2 資源映射表示例

對(duì)于映射歧義問題,關(guān)鍵詞“Steven Spielberg”所映射的資源,前者的類型為,而后者的類型為.然而,當(dāng)已知所查詢數(shù)據(jù)集的資源搭配的可能性要比與搭配的要更高的前提下,我們可以得出相匹配所能得出正確答案的概率要高.而對(duì)于結(jié)構(gòu)歧義問題,比如是映射為<,>還是<,>.對(duì)于機(jī)器是難以分清以上兩種組合,但如果知道前者所出現(xiàn)的可能性要比后者出現(xiàn)的要高時(shí),此時(shí)應(yīng)該選擇組合<,>來(lái)構(gòu)造我們的查詢語(yǔ)句.以上所說(shuō)的可能性則是文章后續(xù)所述的聯(lián)合概率的計(jì)算與比較問題.

文章基于N-gram模型的原理,利用所查詢數(shù)據(jù)當(dāng)中三元組所映射的關(guān)鍵詞組合來(lái)充當(dāng)語(yǔ)料庫(kù)建立語(yǔ)義概率模型.在用戶查詢意圖理解的過(guò)程中,通過(guò)語(yǔ)義概率模型計(jì)算用戶查詢意圖中關(guān)鍵詞組合的聯(lián)合概率,再通過(guò)比較相應(yīng)組合的聯(lián)合概率,消除其中的映射歧義.然后篩選出概率最高的top-k查詢語(yǔ)句,執(zhí)行查詢語(yǔ)句查找相應(yīng)的結(jié)果.通過(guò)基準(zhǔn)數(shù)據(jù)集與現(xiàn)存的方法進(jìn)行比較,本文所提出的方法在精確度和召回率方面表現(xiàn)優(yōu)異,特別是在處理隱式關(guān)系問題方面要優(yōu)于其他方法,而且本方法執(zhí)行的是最能表達(dá)用戶查詢意圖的top-k查詢語(yǔ)言,節(jié)省了無(wú)效查詢語(yǔ)句的運(yùn)行時(shí)間.

2 背景知識(shí)

2.1 RDF

RDF是用來(lái)描述互聯(lián)網(wǎng)上資源以及資源之間相關(guān)關(guān)系的數(shù)據(jù)模型.這個(gè)資源可以是互聯(lián)網(wǎng)中物理上的物體或者是概念的表述,比如一個(gè)人物、一個(gè)網(wǎng)站或者一個(gè)地址.而且資源一般使用IRI(國(guó)際資源標(biāo)識(shí)符,International Resource Identifier)作為唯一的標(biāo)識(shí),例如表示物理學(xué)家阿爾伯特·愛因斯坦.RDF數(shù)據(jù)模型是以三元組為基本單位表示資源之間存在的相關(guān)關(guān)系,多個(gè)三元組所組成的數(shù)據(jù)集構(gòu)造出表達(dá)資源相關(guān)關(guān)系的RDF圖.在三元組當(dāng)中,subject也稱為主語(yǔ)是以上使用IRI作為唯一標(biāo)識(shí)的資源或者空白節(jié)點(diǎn)(Blank Node,具有隨機(jī)序列號(hào)作為唯一標(biāo)識(shí),所表述的是復(fù)合的資源),賓語(yǔ)object則可以為資源、空白節(jié)點(diǎn)或字面量(可以是數(shù)字、字符串或者日期等不同的數(shù)據(jù)類型的值,數(shù)據(jù)類型可以用描述單位的IRI進(jìn)行標(biāo)識(shí)),而謂語(yǔ)predicate則是表述主語(yǔ)與賓語(yǔ)之間相關(guān)關(guān)系的IRI.例如,三元組表示“Albert Einstein′s doctoral advisor is Alfred Kleiner.”所表達(dá)的意思,其中db為“http://dbpedia.org/ontology/”的前綴縮寫.對(duì)于RDF模型,我們給出以下簡(jiǎn)單定義:

定義1.設(shè)G為表示RDF數(shù)據(jù)所代表的RDF圖,則該RDF圖是由三元組所構(gòu)成的,三元組表示為∈G,s,p,o分別表示主語(yǔ)、謂語(yǔ)和賓語(yǔ).其中s∈(I∪B),I表示所有以IRI為標(biāo)識(shí)的資源的集合,而B則是所有空白節(jié)點(diǎn)的集合,且I∩B=?.而p∈I,只有能夠描述資源之間關(guān)系的IRI才能充當(dāng)謂語(yǔ).最后o∈(I∪B∪L),L則是所有字面量的集合.根據(jù)以上描述,可以得出RDF圖G=(I∪B)×I×(I∪B∪L).

2.2 用戶查詢意圖

由于非結(jié)構(gòu)化的自然語(yǔ)言與結(jié)構(gòu)化SPARQL查詢語(yǔ)言之間存在差異,如何從自然語(yǔ)言問句當(dāng)中識(shí)別出用戶的查詢意圖并將其翻譯為SPARQL查詢語(yǔ)言是構(gòu)建RDF問答系統(tǒng)的關(guān)鍵.通過(guò)借助斯坦福自然語(yǔ)言分析工具(Stanford Parser(2)https://nlp.stanford.edu/software/lex-parser.shtml)對(duì)自然語(yǔ)言進(jìn)行解析,解析后可獲得包含自然語(yǔ)言問句語(yǔ)法特征的類型依賴關(guān)系樹(Typed Dependencies Tree)[1].如圖2所示,為例句“What is the name of the film that directed by Steven Spielberg?”所對(duì)應(yīng)的類型依賴關(guān)系樹.每一個(gè)單詞代表一個(gè)節(jié)點(diǎn),節(jié)點(diǎn)中使用詞性標(biāo)注(Part of Speech tagging,POS)[7]對(duì)該單詞的詞性就行標(biāo)識(shí),節(jié)點(diǎn)之間存在的關(guān)系(邊)則為類型依賴關(guān)系(Typed Dependencies),標(biāo)識(shí)兩個(gè)單詞在句子中的語(yǔ)法依賴關(guān)系.本方法將從以上類型依賴關(guān)系樹當(dāng)中根據(jù)語(yǔ)法規(guī)則抽取描述用戶查詢意圖的關(guān)鍵詞組合,我們把每個(gè)查詢意圖組合定義為語(yǔ)義關(guān)系來(lái)表示,以下定義2中為語(yǔ)義關(guān)系的描述.通過(guò)識(shí)別所有可能描述同一實(shí)體的詞性標(biāo)注進(jìn)行實(shí)體關(guān)鍵詞的抽取作為參數(shù)保存到語(yǔ)義關(guān)系中,通過(guò)描述關(guān)系的詞性標(biāo)注進(jìn)行關(guān)系關(guān)鍵詞的抽取作為關(guān)系保存到語(yǔ)義關(guān)系中.并且利用類型依賴關(guān)系對(duì)描述實(shí)體以及關(guān)系之間的關(guān)鍵詞集合進(jìn)行連接,解決句法倒裝和指代消解(Coreference Resolution)等問題,最終組成相應(yīng)的語(yǔ)義關(guān)系集合.由于用戶意圖抽取的研究不是本文所提出的貢獻(xiàn),而且對(duì)該項(xiàng)工作的研究和定義的規(guī)則也有很多,詳情可以參考[8].從例句中抽取的表達(dá)用戶查詢意圖的語(yǔ)義關(guān)系為.

圖2 類型依賴關(guān)系樹示例

定義2.語(yǔ)義關(guān)系由描述兩個(gè)實(shí)體的關(guān)鍵詞集合arg1與arg2構(gòu)成,這兩個(gè)實(shí)體之間由描述關(guān)系的關(guān)鍵詞集合rel進(jìn)行聯(lián)系.

2.3 N-gram模型

N-gram模型是一種語(yǔ)言模型(Language Model,LM),該語(yǔ)言模型是一個(gè)基于概率的判別模型[9].該模型描述的是,在一個(gè)自然語(yǔ)言句子當(dāng)中,第i個(gè)單詞出現(xiàn)的概率只與前i-1個(gè)單詞相關(guān),而與其他的單詞無(wú)關(guān),其中組成整個(gè)句子的概率則等于每個(gè)詞出現(xiàn)的概率的乘積,即:

P(w1,w2,…,wm)=P(w1)*P(w2|w1)…P(wm|w1,w2,…,wm-1)

基于馬爾科夫鏈的假設(shè),當(dāng)前第i個(gè)單詞僅與其前n個(gè)詞相關(guān),則以上概率計(jì)算可以簡(jiǎn)化為:

其中每一項(xiàng)的條件概率將使用詞語(yǔ)組合出現(xiàn)的頻數(shù)C根據(jù)極大似然估計(jì)法(Maximum Likelihood Estimation,MLE)來(lái)計(jì)算:

在現(xiàn)實(shí)應(yīng)用中N的值一般取2和3,其對(duì)應(yīng)的是BiGram和TriGram模型.N-gram一般應(yīng)用于詞性標(biāo)注、詞匯分類、機(jī)器翻譯以及語(yǔ)音識(shí)別等工作當(dāng)中.

3 處理流程

本文所提出的基于自然語(yǔ)言處理的RDF問答系統(tǒng)的處理流程如圖3所示,主要包括以下流程:1)利用斯坦福自然語(yǔ)言分析工具解析自然語(yǔ)言獲取相應(yīng)的類型依賴關(guān)系樹;2)從類型依賴關(guān)系樹當(dāng)中提取與用戶查詢意圖相關(guān)的語(yǔ)義關(guān)系;3)利用所建立的語(yǔ)義概率模型對(duì)語(yǔ)義關(guān)系進(jìn)行消歧與組合,得到聯(lián)合概率top-k的語(yǔ)義關(guān)系組合;4)基于top-k的語(yǔ)義關(guān)系組合構(gòu)建相應(yīng)的SPARQL查詢語(yǔ)句,在SPARQL端口上進(jìn)行查詢.由于本文的貢獻(xiàn)在于語(yǔ)義概率模型的建立以及如何利用語(yǔ)義概率模型進(jìn)行消歧,其他流程均使用較為成熟的方法來(lái)實(shí)現(xiàn),因此以下將按照語(yǔ)義概率模型的建立以及查詢語(yǔ)言的消歧過(guò)程進(jìn)行討論.

圖3 處理流程圖

3.1 語(yǔ)義概率模型的建立

由于所建立的語(yǔ)義概率模型需要反映所查詢數(shù)據(jù)的特征,而本文所查詢的數(shù)據(jù)集來(lái)源于DBpedia(2015),所以我們使用該數(shù)據(jù)集所映射的關(guān)鍵詞集合來(lái)建立語(yǔ)義概率模型.對(duì)于數(shù)據(jù)源當(dāng)中的每一個(gè)實(shí)體資源,首先需要知道實(shí)體與描述該實(shí)體的關(guān)鍵字之間的對(duì)應(yīng)關(guān)系,形如表3中的關(guān)鍵詞與實(shí)體資源的映射詞典DE.DBpedia的實(shí)體資源映射表一般建立的方法是以Wikipedia中的鏈接為錨點(diǎn)鏈接(Anchor Link)[10],從該鏈接中的文章抽取關(guān)鍵詞建立相應(yīng)的映射關(guān)系,如CrossWikis[11]所實(shí)現(xiàn)的實(shí)體映射詞典.而本方法則是直接從DBpedia-lookup(3)http://lookup.dbpedia.org/中的關(guān)鍵詞與實(shí)體資源的映射索引中抽取映射關(guān)系實(shí)現(xiàn)我們的映射詞典.

表3 關(guān)鍵詞實(shí)體資源映射詞典

除了關(guān)鍵詞實(shí)體映射詞典外,仍需要關(guān)鍵詞與關(guān)系之間的映射詞典DR,如表4所示,而關(guān)系則相當(dāng)于連接兩個(gè)實(shí)體的關(guān)系路徑,如之前表達(dá)“directed by”的關(guān)系.而關(guān)系與關(guān)鍵詞的映射存在關(guān)系連接的問題,如關(guān)系則需要表示為的連接.而關(guān)系映射仍然不是本文研究的重點(diǎn),我們將使用Patty[12]中依靠依存關(guān)系基于規(guī)則去構(gòu)建關(guān)鍵詞與關(guān)系之間的映射詞典.

表4 關(guān)鍵詞關(guān)系映射詞典

具備上述的關(guān)鍵詞實(shí)體資源映射詞典DE和關(guān)鍵詞關(guān)系映射詞典DR,對(duì)于數(shù)據(jù)集當(dāng)中的三元組,從DE中可以獲取描述subject與object所代表實(shí)體的關(guān)鍵詞集合DE(subject)→K(s)=(a1,a2,…,ai)和DE(object)→K(o)=(b1,b2,…,bj),ai、bj分別對(duì)應(yīng)描述實(shí)體subject與object的關(guān)鍵詞.其中,當(dāng)object為字面量的情況下,以該字面量的類型來(lái)充當(dāng)關(guān)鍵詞(如int整型,則以val_int充當(dāng)相應(yīng)的關(guān)鍵詞).而從DR中可以獲取描述predicate所代表關(guān)系的關(guān)鍵詞集合DR(predicate)→K(p)=(c1,c2,…,ck),ck為描述關(guān)系predicate的關(guān)鍵詞.據(jù)此得到描述整個(gè)三元組的關(guān)鍵詞組合(K(s),K(p),K(o)),根據(jù)該組合建立語(yǔ)義概率模型有如下定義:

定義3.描述三元組的關(guān)鍵詞組合為(K(s),K(p),K(o))=((a1,a2,…,ai),(c1,c2,…,ck),(b1,b2,…,bj)),而為了區(qū)分該關(guān)鍵詞所代表的資源是充當(dāng)主語(yǔ)還是賓語(yǔ),將以上關(guān)鍵詞組合擴(kuò)展為(,(a1,a2,…,ai),(c1,c2,…,ck),(b1,b2,…,bj),).根據(jù)N-gram模型中當(dāng)N=2時(shí)的BiGram定義,組合(,ai,ck,bj,)所出現(xiàn)的概率為:

P(ai,ck,bj)=P(ai|)P(ck|ai)P(bj|ck)P(|bj)

根據(jù)貝葉斯公式,需要記錄(×K(s)),(K(s)×K(p)),(K(p)×K(o)),(K(o)×)的詞語(yǔ)排列(也稱為片段)出現(xiàn)次數(shù),假設(shè)各關(guān)鍵詞集合中不存在重復(fù)的關(guān)鍵詞,則每個(gè)三元組構(gòu)建出的模型空間復(fù)雜度為O((ijk)2).

定義 4.對(duì)于三元組,當(dāng)主語(yǔ)subject和賓語(yǔ)object都有其對(duì)應(yīng)的類型T(s)與T(o),則從DE中獲取到描述兩個(gè)類型的關(guān)鍵詞集合分別為DE(T(s))→(d1,d2,…,dp)與DE(T(o))→(e1,e2,…,eq),同樣將以上關(guān)鍵詞組合進(jìn)行擴(kuò)展為(,(d1,d2,…,dp),(c1,c2,…,ck),(e1,e2,…,eq),),根據(jù)BiGram的定義,組合(,dp,ck,eq,)所出現(xiàn)的概率為:

P(dp,ck,eq)=P(dp|)P(ck|dp)P(eq|ck)P(|eq)

根據(jù)貝葉斯公式,需要記錄(×K(T(s))),(K(T(s))×K(T(p))),(K(T(p))×K(T(o))),(K(T(o))×)的片段出現(xiàn)次數(shù),假設(shè)各關(guān)鍵詞集合中不存在重復(fù)的關(guān)鍵詞,則每個(gè)類型三元組構(gòu)建出的空間復(fù)雜度為O((pqk)2).

根據(jù)以上定義建立語(yǔ)義概率模型,總的空間復(fù)雜度為O((ijk)2+(pqk)2).該語(yǔ)義概率模型不僅可以在用戶意圖理解階段進(jìn)行消歧以優(yōu)化處理過(guò)程.基于該語(yǔ)義概率模型還可以實(shí)現(xiàn)輸入提示機(jī)制,在用戶輸入自然語(yǔ)言問句的時(shí)候顯示與前一個(gè)詞最相關(guān)的top-k關(guān)鍵詞以協(xié)助用戶進(jìn)行輸入描述問題.

3.2 基于語(yǔ)義概率模型進(jìn)行消歧

問答系統(tǒng)需要將自然語(yǔ)言問句中用戶的查詢意圖翻譯成相應(yīng)的SPARQL查詢語(yǔ)句進(jìn)行查詢,其中存在由語(yǔ)義多樣性所造成的資源映射歧義以及結(jié)構(gòu)歧義的問題.本小節(jié)將介紹利用上述所建立的語(yǔ)義概率模型在用戶查詢意圖翻譯為SPARQL語(yǔ)句的階段解決以上歧義問題.

對(duì)于表示用戶查詢意圖的語(yǔ)義關(guān)系,各元素代表描述相應(yīng)實(shí)體以及關(guān)系的關(guān)鍵詞集合,其目的是匹配數(shù)據(jù)源當(dāng)中符合(,,)所映射資源的三元組.但由于用戶的語(yǔ)言習(xí)慣或者語(yǔ)法倒裝的存在,語(yǔ)義關(guān)系所描述的三元組在數(shù)據(jù)源當(dāng)中可能以(,,)的形式存在,即存在結(jié)構(gòu)歧義.在傳統(tǒng)的處理方法當(dāng)中,可以通過(guò)枚舉所有的可能組合形式進(jìn)行查詢驗(yàn)證,但是當(dāng)所查詢語(yǔ)義關(guān)系的數(shù)量增多時(shí),組合的數(shù)量也會(huì)呈指數(shù)增長(zhǎng),此時(shí)使用窮舉的方式進(jìn)行驗(yàn)證將消耗大量的查詢時(shí)間,特別是數(shù)據(jù)量較大的情況下,用戶查詢的效率將受到嚴(yán)重影響.而我們的解決方法則是利用語(yǔ)義概率模型計(jì)算并比較不同組合的聯(lián)合概率.設(shè)δ(R)為代表語(yǔ)義關(guān)系R=的所有組合的集合,計(jì)算δ(R)中每個(gè)組合的聯(lián)合概率,δ1=(arg2,rel,arg1),δ1∈δ(R)的聯(lián)合概率為P(arg2,rel,arg1)(相關(guān)計(jì)算請(qǐng)參照上述聯(lián)合概率的介紹),描述順序(,arg2,rel,arg1,)所代表的三元組存在于數(shù)據(jù)源當(dāng)中的概率,其中為三元組首尾標(biāo)志.多個(gè)語(yǔ)義關(guān)系相連接則分別計(jì)算各語(yǔ)義關(guān)系,最后將對(duì)應(yīng)語(yǔ)義關(guān)系概率相乘則得到聯(lián)合概率,然后根據(jù)概率排序并選取最優(yōu)的top-k組合轉(zhuǎn)化為相應(yīng)的查詢語(yǔ)句進(jìn)行查詢驗(yàn)證,通過(guò)這種方式可以解決結(jié)構(gòu)歧義問題,從而排除較低可能性的查詢組合.

對(duì)于包含疑問詞的語(yǔ)義關(guān)系,如(“What”,“is the name of”,“film”),只需以變量代替疑問詞的位置,則得到的語(yǔ)義關(guān)系為.而對(duì)于帶變量的語(yǔ)義關(guān)系的聯(lián)合概率的計(jì)算,其中P(rel|?x)的計(jì)算需要在語(yǔ)義概率模型中查找以rel為后綴片段的數(shù)量,然后加入到條件概率的計(jì)算當(dāng)中,而對(duì)于語(yǔ)義關(guān)系,則計(jì)算P(?x|rel)時(shí)需要在語(yǔ)義概率模型中查找以rel為前綴片段的數(shù)量,其他部分的條件概率計(jì)算與上述過(guò)程中的一致,在此不再贅述.

由于用戶的語(yǔ)義使用習(xí)慣不同以及關(guān)鍵詞與資源的一對(duì)多關(guān)系會(huì)存在資源映射歧義的問題.當(dāng)語(yǔ)義關(guān)系滿足以下假設(shè)時(shí),將擴(kuò)展候選關(guān)鍵詞的成員:

假設(shè):prefix和suffix屬于語(yǔ)義關(guān)系中的兩個(gè)相鄰成員,當(dāng)滿足:

1)當(dāng)C(prefix)≠0且C(prefix_suffix)=0時(shí),查找滿足C(prefix_*)≠0的關(guān)鍵詞集合σ1(wi),計(jì)算σ1(wi)中關(guān)鍵詞與suffix的語(yǔ)義相似度θ(wi,suffix),當(dāng)相似度大于所設(shè)定閾值γ,即θ(wi,suffix)>γ時(shí),加入wi到suffix的候選集合當(dāng)中參與聯(lián)合概率的計(jì)算.

2)當(dāng)C(suffix)≠0且C(prefix_suffix)=0時(shí),查找滿足C(*_suffix)≠0的關(guān)鍵詞集合σ2(wj),計(jì)算σ2(wj)中關(guān)鍵詞與suffix的語(yǔ)義相似度θ(wj,suffix),當(dāng)相似度大于所設(shè)定閾值γ,即θ(wj,suffix)>γ時(shí),加入wj到suffix的候選集合當(dāng)中參與聯(lián)合概率的計(jì)算.

例如在該語(yǔ)義關(guān)系所計(jì)算的語(yǔ)義關(guān)系中,rel在語(yǔ)義概率模型中是可以查找到的,即C(rel)≠0,由于用戶的使用習(xí)慣或者語(yǔ)義的多樣性導(dǎo)致用戶所輸入的詞語(yǔ)arg1和arg2無(wú)法在語(yǔ)義概率模型中找到,表現(xiàn)為C(prefix_rel)=0,C(rel_suffix)=0.此時(shí)我們從語(yǔ)義概率模型中找出滿足C(*_rel)≠0的關(guān)鍵詞集合σ1(wi),計(jì)算其中關(guān)鍵詞與rel的語(yǔ)義相似度θ(wi,rel),當(dāng)該值大于我們所設(shè)定的閾值γ時(shí),表示該關(guān)鍵詞wi與原關(guān)鍵詞arg1是有語(yǔ)義相似性的,所以將wi加入到arg1的候選集合c(arg1)當(dāng)中,參與聯(lián)合概率的計(jì)算.同樣,滿足C(rel_*)≠0的關(guān)鍵詞σ2(wj),當(dāng)其中的關(guān)鍵詞滿足θ(wj,rel)>γ時(shí),也將wj加入到arg2的候選集合中,所以最初的語(yǔ)義關(guān)系的聯(lián)合概率可使用候選集合中的關(guān)鍵詞來(lái)近似計(jì)算:

P(arg1,rel,arg2)≈P(wi,rel,wj)wi∈c(arg1)&wj∈c(arg2)

在應(yīng)用中,計(jì)算語(yǔ)義相關(guān)性的工具有很多,比如WordNet(4)https://wordnet.princeton.edu/.而在實(shí)現(xiàn)中我們使用了Word2Vec來(lái)計(jì)算關(guān)鍵詞的語(yǔ)義相關(guān)性,Word2Vec可以指定訓(xùn)練語(yǔ)料庫(kù)去訓(xùn)練隱藏層的模型,在應(yīng)用過(guò)程中可以使用反映所查詢數(shù)據(jù)集數(shù)據(jù)特征的語(yǔ)料庫(kù)用作訓(xùn)練數(shù)據(jù)集.而閾值γ的選取反映了所加入候選詞與原關(guān)鍵詞的語(yǔ)義相似程度,在實(shí)現(xiàn)中將γ設(shè)置為0.5,也可通過(guò)訓(xùn)練的形式尋找最佳的γ值.

對(duì)于語(yǔ)義關(guān)系中arg1和arg2可以映射為實(shí)體或者標(biāo)簽.當(dāng)映射為標(biāo)簽的情況下,如arg2映射為標(biāo)簽,則原語(yǔ)義關(guān)系需擴(kuò)展為,.而當(dāng)arg2代表非資源型屬性時(shí),即arg2代表一個(gè)字面量,則以該字面量的對(duì)應(yīng)類型val_type來(lái)替代arg2的位置去計(jì)算該語(yǔ)義關(guān)系的聯(lián)合概率.

算法1.篩選top-k聯(lián)合概率最高的語(yǔ)義關(guān)系

輸入:語(yǔ)義關(guān)系組合R

輸出:top-k 語(yǔ)義關(guān)系組合

1.M ← ?

2.δ(R)←find_All_Combinations(R)

3.for r in δ(R):

4. p=1.0

5. for in r:

6. c(arg1)← w from C(arg1_rel)=0 &

C(w_rel)≠ 0 & θ(w,arg1)> γ

7. c(rel)← w from C(arg1_rel)=0

& C(arg1_w)≠ 0 & θ(w,rel)> γ

8. c(arg2)← w from C(rel_arg2)=0 &

C(rel_w)≠ 0 & θ(w,arg2)> γ

9. c(rel)← w from C(rel_arg2)=0 &

C(w_arg2)≠ 0 & θ(w,rel)> γ

10. for wiin c(arg1):

11. for wjin c(rel):

12. for wkin c(arg2):

13. p=p * P(wi,wj,wk)

14. M ←((wi,wj,wk),p)

15.sortwithP(M)

16.return top-k semantic relation in M

由于自然語(yǔ)言表示的多樣性,在自然語(yǔ)言表述當(dāng)中存在顯示關(guān)系和隱式關(guān)系的表達(dá),例如,“Which electronics companies were founded in Beijing?”為隱式關(guān)系表達(dá),而其對(duì)應(yīng)的顯示關(guān)系表達(dá)為“Which company′s industry is electronics were founded in Beijing?”.顯式關(guān)系所抽取的用戶查詢意圖為,< companies,founded in,Beijing>,而隱式關(guān)系所抽取的用戶查詢意圖則為.對(duì)于實(shí)體中帶有修飾詞的語(yǔ)義關(guān)系,需要考慮其中是否包含隱式的語(yǔ)義關(guān)系,所以將其擴(kuò)展為,并計(jì)算其聯(lián)合概率,加入到top-k可能組合的排序中.需要說(shuō)明的是,如果語(yǔ)義關(guān)系當(dāng)中包含描述類型的關(guān)鍵詞,如當(dāng)中”companies”屬于類型,則需要在計(jì)算聯(lián)合概率時(shí)將其擴(kuò)展為,.

4 實(shí) 驗(yàn)

本文在DBpedia上的基準(zhǔn)數(shù)據(jù)集中驗(yàn)證所提出的方法.所使用的自然語(yǔ)言問題來(lái)自QALD-6.QALD(5)http://qald.aksw.org/是針對(duì)關(guān)聯(lián)數(shù)據(jù)問題回答的一系列評(píng)估活動(dòng).與QALD-6當(dāng)中的CANaLI[13],UTQA[14],KWGAnswer[15],NbFramework[16],SEMGraphQA.進(jìn)行對(duì)比.文章所提方法是使用Java語(yǔ)言實(shí)現(xiàn)的,所進(jìn)行的實(shí)驗(yàn)運(yùn)行于搭載Intel Core CPU 3.80GB Hz,32 GB RAM 的Windows 10平臺(tái)當(dāng)中.

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

DBpedia是一個(gè)從維基百科(WikiPedia)中提取結(jié)構(gòu)化信息,并且將數(shù)據(jù)存儲(chǔ)為RDF形式發(fā)布到互聯(lián)網(wǎng)上的組織.本次實(shí)驗(yàn)中所使用的數(shù)據(jù)集為2015年發(fā)布的DBpedia數(shù)據(jù)集(6)http://downloads.dbpedia.org/2015-10/core-i18n/en/,其中包含了約5百萬(wàn)個(gè)實(shí)體,約11億個(gè)三元組,所包含RDF數(shù)據(jù)集的容量約為8.9GB.

文章中所使用的計(jì)算詞語(yǔ)之間的語(yǔ)義相關(guān)性的工具為Word2Vec_Java(7)https://github.com/NLPchina/Word2VEC_java,是基于文獻(xiàn)[18]中所介紹的Word2Vec模型建立的Java應(yīng)用工具.Word2Vec是一個(gè)用于生產(chǎn)詞向量的相關(guān)模型,該模型為淺而雙層的神經(jīng)網(wǎng)絡(luò).我們所用的訓(xùn)練語(yǔ)料集為Wikipedia+Gigaword 5(6B)(8)https://github.com/3Top/word2vec-api,維度為300,詞典大小為400000.

4.2 實(shí)驗(yàn)驗(yàn)證

本次實(shí)驗(yàn)將驗(yàn)證QALD-6中的多語(yǔ)言回答問題(Multilingual question answering over DBpedia)的100個(gè)測(cè)試問題.由于我們的方法是處理英語(yǔ)語(yǔ)言方面的自然語(yǔ)言問題,所以在對(duì)比的時(shí)候也是使用英語(yǔ)語(yǔ)言的自然語(yǔ)言問句.對(duì)于中文的自然語(yǔ)言處理方法,可根據(jù)目標(biāo)領(lǐng)域(如文獻(xiàn)[19]中面向電商領(lǐng)域的問答)選取語(yǔ)料訓(xùn)練集建立語(yǔ)義概率模型,使用中文自然語(yǔ)言解析器(如Stanford Parser的中文解析模塊)對(duì)語(yǔ)句進(jìn)行解析,再根據(jù)中文語(yǔ)法對(duì)解析結(jié)果進(jìn)行查詢意圖的提取,利用所建立的語(yǔ)義概率模型或者自定義消歧方法(如文獻(xiàn)[20]中的滑動(dòng)語(yǔ)義消歧方法)進(jìn)行消歧后轉(zhuǎn)化為相應(yīng)的查詢語(yǔ)句即可查詢相關(guān)內(nèi)容.在實(shí)驗(yàn)當(dāng)中,我們將與上述所提方法在以下指標(biāo)中作對(duì)比,分別為準(zhǔn)確率(Accuracy,A),所解決的問題占問題總量的比例;精確度(Precision,P),所查出的正確資源占結(jié)果總量的比例;召回率(Recall,R),所查出的正確資源占正確問題總量的比例;F-1(F1-Measure)=2×P×R/(P+R),為精確度與召回率的調(diào)和平均值.表5中展示了我們所提方法(簡(jiǎn)稱為NGQA)與各方法在執(zhí)行測(cè)試數(shù)據(jù)后測(cè)量的以上指標(biāo)的數(shù)值.

表5 驗(yàn)證QALD-6的測(cè)試問題

從實(shí)驗(yàn)結(jié)果中得知,本文所提出的方法在F-1評(píng)價(jià)中排名與NbFramewrk并列第二.我們的方法在一百個(gè)問題當(dāng)中能夠解決其中的58個(gè)問題,精確度為0.85,召回率為0.88,其中召回率只比CaNaLI要低,但是比其他的方法要高.其中需要注意的是,CaNaLI需要用戶輸入受限的自然語(yǔ)言問句,即用戶需要以準(zhǔn)確的資源名稱(IRI表示)去表達(dá)問句當(dāng)中的資源以及關(guān)系.換言之,CaNaLI解決受限自然語(yǔ)言V在用戶層面,以用戶自身的認(rèn)知去進(jìn)行消歧的,而我們的問答,方法卻沒有這種限制.

在實(shí)驗(yàn)過(guò)程當(dāng)中,本文的方法在解決單三元組問題(如問題:“Who was the doctoral supervisor of Albert Einstein?”查詢時(shí)只包含單個(gè)三元組:)的時(shí)候正確率、精準(zhǔn)度和召回率都很高.我們將無(wú)法解決的問題進(jìn)行了分類分析,總結(jié)出了以下原因,如表6中所示.在無(wú)法解決的問題中,其中占比最高的是錯(cuò)誤的資源映射問題,用戶所輸入的自然語(yǔ)言問句當(dāng)中所包含的關(guān)鍵詞映射無(wú)法映射到正確的資源當(dāng)中,從而導(dǎo)致問題的查詢失敗,如問題“What is the full name of Prince Charles?”當(dāng)中關(guān)鍵詞“Prince Charles”無(wú)法映射到正確的資源.其次則是語(yǔ)義概率模型當(dāng)中缺少必要的片段,如問題“Who wrote Harry Potter?”由于建模數(shù)據(jù)集的原因,與“Harry Potter”相關(guān)的資源沒有出現(xiàn)在數(shù)據(jù)集當(dāng)中,所以所建立的語(yǔ)義概率模型中不存在與“Harry Potter”相關(guān)的片段,最終導(dǎo)致查詢失敗.而本方法在復(fù)雜長(zhǎng)查詢語(yǔ)句方面的表現(xiàn)欠佳,如問題“In which city was the president of Montenegro born?”,問題所映射出的SPARQL查詢語(yǔ)句為復(fù)雜長(zhǎng)查詢語(yǔ)句,由于在提取語(yǔ)義關(guān)系的過(guò)程中已經(jīng)出現(xiàn)錯(cuò)誤,所以導(dǎo)致了查詢失敗,其他同類問題中有使用聯(lián)合查詢的例子,由于我們所使用的語(yǔ)義關(guān)系抽取方法中在處理聯(lián)合查詢的問題中欠佳,所以聯(lián)合查詢問題的準(zhǔn)確率較低.最后有少量問題是出現(xiàn)語(yǔ)義相關(guān)性計(jì)算錯(cuò)誤的,問題“Who played Gus Fring in Breaking Bad?”當(dāng)中詞語(yǔ)play與portrayer顯示不相關(guān),所以無(wú)法獲取對(duì)應(yīng)的資源,從而導(dǎo)致查詢錯(cuò)誤,此類問題由Word2Vec的訓(xùn)練數(shù)據(jù)導(dǎo)致.剩下的問題則是數(shù)據(jù)集當(dāng)中缺少正確答案,所以無(wú)法進(jìn)行比對(duì).

表6 錯(cuò)誤問題分析

如表7所示各方法在處理數(shù)據(jù)集中15道隱式關(guān)系問題(如:“What is the name of the school where Obama′s wife studied?”)的正確率.由于本文所提出的方法主動(dòng)驗(yàn)證修飾詞與實(shí)體詞之間是否包含隱式關(guān)系,而且結(jié)合類型的聯(lián)合概率計(jì)算擴(kuò)展后隱式關(guān)系語(yǔ)句的概率,從而導(dǎo)致本文的方法在處理隱式關(guān)系問題方面要優(yōu)于其他方法.

表7 針對(duì)隱式關(guān)系問題的準(zhǔn)確率比較

如圖4所示,從正確通過(guò)的58個(gè)問題當(dāng)中隨機(jī)選取10個(gè)問題進(jìn)行驗(yàn)證時(shí)間進(jìn)行測(cè)試,并與數(shù)據(jù)集當(dāng)中基準(zhǔn)的驗(yàn)證時(shí)間做比較,驗(yàn)證時(shí)間包含從查詢意圖轉(zhuǎn)化為查詢語(yǔ)句和查詢語(yǔ)句查詢出答案的過(guò)程.其中所選問題的驗(yàn)證時(shí)間均低于基準(zhǔn)值,則是由于我們所提出的方法是通過(guò)計(jì)算查詢意圖可能組合的聯(lián)合概率得出top-k個(gè)最優(yōu)的查詢組合進(jìn)行查詢,其中排除了幾乎不可能正確的查詢語(yǔ)句,從而縮短了驗(yàn)證時(shí)間.

圖4 驗(yàn)證時(shí)間比較

5 結(jié) 論

本文介紹了應(yīng)用在RDF問答系統(tǒng)中的一種基于N-gram的消歧方法.在用戶意圖理解階段,利用建立好的語(yǔ)義概率模型計(jì)算用戶意圖可能組合的聯(lián)合概率,通過(guò)前綴/后綴片段對(duì)組合進(jìn)行擴(kuò)充,解決了映射歧義的問題,通過(guò)比較得出top-k最優(yōu)組合,排除可能性較小的組合,不僅解決了結(jié)構(gòu)歧義的問題,而且還提高了查詢驗(yàn)證的效率.實(shí)驗(yàn)表明,本文方法在性能評(píng)估方面要優(yōu)于大部分所比較的方法,特別在解決隱式關(guān)系問題中要優(yōu)于其他的方法.下一步將建立更高階的語(yǔ)義概率模型,優(yōu)化解決聯(lián)合查詢以及聚合查詢的問題.

猜你喜歡
概率模型三元組意圖
基于帶噪聲數(shù)據(jù)集的強(qiáng)魯棒性隱含三元組質(zhì)檢算法*
原始意圖、對(duì)抗主義和非解釋主義
法律方法(2022年2期)2022-10-20 06:42:20
陸游詩(shī)寫意圖(國(guó)畫)
在精彩交匯中,理解兩個(gè)概率模型
特征標(biāo)三元組的本原誘導(dǎo)子
制定法解釋與立法意圖的反事實(shí)檢驗(yàn)
法律方法(2021年3期)2021-03-16 05:56:58
關(guān)于余撓三元組的periodic-模
基于停車服務(wù)效率的選擇概率模型及停車量仿真研究
一類概率模型的探究與應(yīng)用
燕山秋意圖
肇源县| 嵩明县| 桑日县| 页游| 迁西县| 岚皋县| 博野县| 万宁市| 麻栗坡县| 庄河市| 丹阳市| 闽清县| 进贤县| 广东省| 涟源市| 老河口市| 若尔盖县| 哈巴河县| 新源县| 曲阳县| 武定县| 衡东县| 文成县| 威宁| 枝江市| 鲜城| 什邡市| 海伦市| 镇康县| 信丰县| 遵义市| 土默特左旗| 洛隆县| 竹北市| 乌拉特前旗| 宿松县| 南充市| 温宿县| 平罗县| 静宁县| 凌海市|