劉奕明,謝振杰,付 偉,徐瑞麟
(1. 海軍工程大學(xué)電子工程學(xué)院,湖北 武漢 430033;2. 中國(guó)人民解放軍92330部隊(duì),山東 青島 266000;3. 海軍工程大學(xué)信息安全系,湖北 武漢 430033;4. 中國(guó)人民解放軍78156部隊(duì),重慶 400039;5. 中國(guó)人民解放軍91001部隊(duì),北京 100036)
隨著人類社會(huì)邁入信息化、智能化時(shí)代,戰(zhàn)爭(zhēng)和軍事行動(dòng)面貌隨之發(fā)生深刻演變,尤其是輿論戰(zhàn)、心理戰(zhàn)和法律戰(zhàn)等認(rèn)知領(lǐng)域作戰(zhàn)樣式的興起,對(duì)指揮信息系統(tǒng)的綜合信息服務(wù)能力提出了更高要求。軍事法規(guī)作為指導(dǎo)戰(zhàn)場(chǎng)行動(dòng)的法理依據(jù),重要性不可忽視,特別是在認(rèn)知作戰(zhàn)領(lǐng)域,其作用早已從幕后走向前臺(tái)。指揮員做出決策需要詳細(xì)的法規(guī)支持,每一步都應(yīng)做到有據(jù)可查。然而,在信息化條件下,人工查閱文本的傳統(tǒng)方式顯然已經(jīng)跟不上戰(zhàn)爭(zhēng)節(jié)奏,難以滿足戰(zhàn)場(chǎng)決策需要。因此,構(gòu)建準(zhǔn)確、高效、靈活、智能的軍事法規(guī)問(wèn)答系統(tǒng),具有廣闊的應(yīng)用前景。
目前,法規(guī)問(wèn)答可歸納為七類,分別是判斷類、多選項(xiàng)類、檢索類、大數(shù)據(jù)類、本體類、神經(jīng)網(wǎng)絡(luò)類與其他方法[1]?;谛畔z索(Information Retrieval,IR)的法規(guī)問(wèn)答首先定位包含相關(guān)信息的段落,再確定具體答案。文獻(xiàn)[2]引入了一種詞匯至篇章級(jí)的語(yǔ)料庫(kù)建模方法。文獻(xiàn)[3]基于條件隨機(jī)場(chǎng)統(tǒng)計(jì)建模來(lái)分割和標(biāo)記序列數(shù)據(jù)。文獻(xiàn)[4]使用網(wǎng)絡(luò)分析與可視化的方法來(lái)處理荷蘭判例法。文獻(xiàn)[5-6]研究在目標(biāo)文檔中需推理才能獲得答案的問(wèn)題。文獻(xiàn)[7]側(cè)重于包含答案的相關(guān)小節(jié)的檢索。文獻(xiàn)[8-10]嘗試?yán)蒙疃葘W(xué)習(xí)技術(shù)構(gòu)建法律問(wèn)答系統(tǒng)。文獻(xiàn)[11-16]體現(xiàn)了知識(shí)圖譜(Knowledge Graph,KG)技術(shù)在軍事領(lǐng)域的運(yùn)用,但目前尚未見(jiàn)可用于問(wèn)答的軍事法規(guī)開(kāi)源圖譜。
信息檢索技術(shù)可根據(jù)關(guān)鍵詞迅速找到相關(guān)法規(guī)和條款,但難以直接給出問(wèn)題答案,需要人工閱讀條款。知識(shí)圖譜問(wèn)答的效果依賴圖譜的規(guī)模和質(zhì)量,工作量較大,且答案缺乏來(lái)源信息和可解釋性。因此,單獨(dú)采用檢索或知識(shí)圖譜技術(shù)構(gòu)建的問(wèn)答系統(tǒng)均不能契合軍事輔助決策的需求。本文綜合運(yùn)用以上兩種技術(shù)構(gòu)建軍事法規(guī)問(wèn)答系統(tǒng),先將問(wèn)題定位到最相關(guān)的法規(guī)條款,再通過(guò)匹配語(yǔ)義關(guān)系得出短答案,以條款完整內(nèi)容和層次脈絡(luò)作為補(bǔ)充,融合兩種技術(shù)的優(yōu)勢(shì)。本文將闡述實(shí)現(xiàn)軍事法規(guī)問(wèn)答的主要過(guò)程和關(guān)鍵技術(shù),分析其底層數(shù)據(jù)結(jié)構(gòu)的拓?fù)湫再|(zhì),并通過(guò)測(cè)試驗(yàn)證問(wèn)答效果。
進(jìn)行問(wèn)答前,首先要對(duì)純文本形式的軍事法規(guī)進(jìn)行預(yù)處理,生成便于計(jì)算機(jī)理解和檢索的數(shù)據(jù)結(jié)構(gòu)。預(yù)處理過(guò)程包含法規(guī)標(biāo)題識(shí)別、生成條款檢索樹(shù)和語(yǔ)義關(guān)系標(biāo)注三個(gè)階段。
軍事法規(guī)篇章結(jié)構(gòu)嚴(yán)謹(jǐn)、層次鮮明,各級(jí)標(biāo)題對(duì)所屬內(nèi)容的概括凝練而準(zhǔn)確,將法規(guī)文本以條款為單位進(jìn)行分割,對(duì)于信息檢索十分重要。軍事法規(guī)的標(biāo)題結(jié)構(gòu)具有很強(qiáng)的規(guī)律性,通常一級(jí)標(biāo)題為“第X章”、二級(jí)標(biāo)題為“第X節(jié)”、三級(jí)標(biāo)題為“第X條”。由高級(jí)編程語(yǔ)言不難實(shí)現(xiàn)對(duì)各級(jí)標(biāo)題的識(shí)別與定位,具體不再贅述。
在標(biāo)題識(shí)別的基礎(chǔ)上,為快速定位與問(wèn)題最相關(guān)的條款,根據(jù)軍事法規(guī)特點(diǎn)對(duì)經(jīng)典的TF-IDF算法進(jìn)行調(diào)整,分以下三個(gè)步驟生成條款檢索樹(shù)。軍事法規(guī)檢索樹(shù)模型如圖1所示。
圖1 軍事法規(guī)檢索樹(shù)模型Fig.1 Retrieval tree model of military regulations
1)構(gòu)建分詞計(jì)數(shù)器
分詞計(jì)數(shù)器是一種數(shù)據(jù)結(jié)構(gòu),用于保存一段文字中各分詞的詞頻(Term Frequency,TF)。本問(wèn)答系統(tǒng)的各級(jí)目錄層級(jí)均具備上級(jí)標(biāo)題計(jì)數(shù)器Cup、本級(jí)標(biāo)題計(jì)數(shù)器Cnow和正文計(jì)數(shù)器Ctext。將本級(jí)標(biāo)題與上級(jí)標(biāo)題分別計(jì)數(shù),是因?yàn)楸炯?jí)標(biāo)題與本級(jí)內(nèi)容相關(guān)性最強(qiáng),權(quán)重更高。在正文或上級(jí)標(biāo)題中,分詞出現(xiàn)頻率越高并不代表它與該條款的相關(guān)性越強(qiáng)。例如,隊(duì)列條令第二十條“步法變換”正文中“齊步”一詞出現(xiàn)8次,而第十八條“行進(jìn)(一)齊步”正文中“齊步”僅出現(xiàn)2次,若以傳統(tǒng)意義上的詞頻計(jì)數(shù),則會(huì)將“齊步”引向非期望條款。因此,本文的TF值已不單指分詞頻率,Cup和Ctext只統(tǒng)計(jì)分詞出現(xiàn)與否(值為0或1),Cnow中的值表示各分詞占總詞數(shù)的比率。
求分詞a在某層級(jí)的TF值,即按下式計(jì)算3個(gè)分詞計(jì)數(shù)器相應(yīng)值的加權(quán)和:
TF[a]=Cup[a]×Wup+Cnow[a]×
Wnow+Ctext[a]×Wtext
(1)
式(1)中,Wup、Wnow和Wtext表示各分詞計(jì)數(shù)器的權(quán)重。
2)分詞計(jì)數(shù)器更新
為使各層級(jí)的分詞計(jì)數(shù)器準(zhǔn)確反映分詞與所屬內(nèi)容的最強(qiáng)相關(guān)性,每構(gòu)建完一個(gè)條款的分詞計(jì)數(shù)器后,Cnow和Ctext要分別自下而上逐級(jí)更新至表示整部法規(guī)的頂部層級(jí)。相鄰兩層級(jí)間的更新方法如下:對(duì)于本級(jí)計(jì)數(shù)器包含的全部分詞,取本級(jí)計(jì)數(shù)器和上級(jí)計(jì)數(shù)器中的最大值更新上級(jí)計(jì)數(shù)器,即
C′[a]=max(C′[a],C[a]),a∈Σ
(2)
式(2)中,C表示本級(jí)的Cnow或Ctext,C′表示上級(jí)的Cnow或Ctext,Σ表示C中記錄的全部分詞集合。例如,隊(duì)列條令第十四條標(biāo)題是“立正”,則第十四條的Cnow中分詞“立正”的TF值為1(最大值),因此第十四條所在的第四章的Cnow、隊(duì)列條令的Cnow中“立正”的TF值都更新為1,便于自上而下逐層找到與“立正”最相關(guān)的條款(隊(duì)列條令—第四章—第十四條)。
本文分詞計(jì)數(shù)器的設(shè)置與TF-IDF經(jīng)典模型有所區(qū)別,是經(jīng)反復(fù)實(shí)踐優(yōu)化形成的,更貼合軍事法規(guī)特性。
3)計(jì)算分詞IDF
分詞的重要性取決于對(duì)定位條款提供的信息量。本文以末端層級(jí)(對(duì)于軍事法規(guī)而言通常是“條”)為基本單元,計(jì)算各分詞的逆文本頻率(Inverse Document Frequency,IDF)值,作為其全局重要性的度量,公式如下:
(3)
式(3)中,N表示系統(tǒng)內(nèi)全部法規(guī)的條款總數(shù),Na表示包含分詞a的條款數(shù)。
求詞組V與某層級(jí)的TF-IDF值,即將V中各分詞與該層級(jí)的TF-IDF值累加,公式如下:
TF·IDF[V]=∑a∈VTF[a]×IDF[a]
(4)
通過(guò)以上步驟構(gòu)建條款檢索樹(shù),將抽象的相關(guān)性度量問(wèn)題轉(zhuǎn)化為分詞詞組與各層級(jí)TF-IDF值的計(jì)算問(wèn)題,方便計(jì)算機(jī)快速求解。
為了向簡(jiǎn)單問(wèn)題提供簡(jiǎn)明扼要的短答案,需利用知識(shí)圖譜技術(shù)對(duì)法規(guī)條款進(jìn)行語(yǔ)義關(guān)系標(biāo)注,生成大量知識(shí)“三元組”,知識(shí)的規(guī)模和質(zhì)量將直接影響問(wèn)題理解能力與解答質(zhì)量。主要有3種標(biāo)注方式:一是人工標(biāo)注,較為詳細(xì)準(zhǔn)確,但費(fèi)時(shí)費(fèi)力;二是自動(dòng)標(biāo)注,可批量處理句式固定的條款,但需逐一編寫程序;三是從題庫(kù)提取簡(jiǎn)潔的題目進(jìn)行轉(zhuǎn)換,但受限于題庫(kù)規(guī)模。具體標(biāo)注方法限于篇幅,不展開(kāi)描述。
軍事法規(guī)文本預(yù)處理為問(wèn)答準(zhǔn)備了必要的數(shù)據(jù)結(jié)構(gòu),下面描述從提問(wèn)到回答的處理過(guò)程,并簡(jiǎn)述輔助答題模塊。問(wèn)答系統(tǒng)實(shí)現(xiàn)的完整流程如圖2所示。
圖2 軍事法規(guī)問(wèn)答系統(tǒng)實(shí)現(xiàn)流程Fig.2 Implementation process of military legal question answering system
回答問(wèn)題的前提是將自然語(yǔ)言形式的問(wèn)句處理成可被計(jì)算機(jī)理解的數(shù)據(jù),包含疑問(wèn)詞替換、指定搜索范圍和分詞三個(gè)步驟。
1)疑問(wèn)詞替換
自然語(yǔ)言中的疑問(wèn)詞對(duì)于檢索是無(wú)用的,應(yīng)在準(zhǔn)確理解提問(wèn)者意圖后將其去除。本系統(tǒng)通過(guò)枚舉常見(jiàn)的提問(wèn)方式來(lái)理解意圖,對(duì)部分字詞進(jìn)行近義替換可減少枚舉數(shù)量,如表1所示。
表1 問(wèn)句字詞替換
例如,“X包含哪些條目”“X含有什么條款”“X包括哪些章節(jié)”都會(huì)替換成“X有什么內(nèi)容”,只要識(shí)別后者,就能理解類似的一系列提法。
2)指定搜索范圍
對(duì)于“X法規(guī)對(duì)Y有何規(guī)定”“X法規(guī)附則有哪幾條”之類的提問(wèn),應(yīng)在提問(wèn)者指定的范圍內(nèi)搜索,將范圍限定詞代表的層級(jí)作為初始搜索節(jié)點(diǎn)。如果未指定范圍,則從包含所有法規(guī)的根節(jié)點(diǎn)開(kāi)始搜索。
3)問(wèn)句分詞
除去開(kāi)頭的范圍限定詞和末尾的疑問(wèn)詞后,對(duì)問(wèn)句其余部分進(jìn)行分詞,由實(shí)詞構(gòu)成問(wèn)句詞組。《軍語(yǔ)》詞匯、人工標(biāo)注的軍事用語(yǔ)等可增強(qiáng)通用分詞工具在軍事法規(guī)領(lǐng)域的分詞效果。
問(wèn)句處理明確了搜索范圍和問(wèn)句詞組,在此基礎(chǔ)上通過(guò)檢索相關(guān)條款、匹配語(yǔ)義關(guān)系和輸出答案三個(gè)步驟,完成一次問(wèn)答。
1)檢索相關(guān)條款
首先,以問(wèn)句詞組和代表搜索范圍的初始搜索節(jié)點(diǎn)為輸入,運(yùn)行條款檢索算法。
算法1 條款檢索算法
輸出的答案列表即為相關(guān)度最高的條款集合。若答案列表為空,則表示找不到相關(guān)條款。
2)匹配語(yǔ)義關(guān)系
預(yù)處理過(guò)程中的語(yǔ)義關(guān)系標(biāo)注為各條款添加了若干知識(shí)三元組,如果問(wèn)句匹配了答案條款所包含的三元組,則給出短答案。例如,詢問(wèn)“齊步的行進(jìn)速度”,檢索到最相關(guān)的條款為隊(duì)列條令第十八條,該條款包含三元組“(齊步,速度,每分鐘116-122步)”,則將“每分鐘116-122步”作為短答案。
3)輸出答案
雖然短答案提供了關(guān)鍵信息,但詢問(wèn)者可能還想了解更詳細(xì)的信息。此外,仍有大量知識(shí)難以用三元組表述,很多問(wèn)題也不能用短答案解答。因此,還需要答案來(lái)源和條款全文作為補(bǔ)充,以增強(qiáng)說(shuō)服力和準(zhǔn)確性。上例中,將“每分鐘116-122步”作為短答案,將完整的層次脈絡(luò)“隊(duì)列條令-第四章 單個(gè)軍人的隊(duì)列動(dòng)作-第十八條 行進(jìn)-(一)齊步”作為答案來(lái)源,并將“齊步”的完整內(nèi)容作為長(zhǎng)答案一并輸出。
此外,知識(shí)圖譜除了難以解決找不到語(yǔ)義關(guān)系的問(wèn)題,也不適合回答例如“XX法規(guī)包含哪些章節(jié)”“XX法規(guī)第十條的完整內(nèi)容”等詢問(wèn)章節(jié)條款的問(wèn)題,而本系統(tǒng)建立了完善的目錄層級(jí),便于回答此類問(wèn)題。
利用條款檢索和語(yǔ)義匹配能力實(shí)現(xiàn)答題模塊,能嘗試解答判斷題、單選題、多選題和填空題。該功能可用于輔助軍事法規(guī)學(xué)習(xí)和測(cè)試,也可用于從題庫(kù)添加語(yǔ)義關(guān)系。實(shí)現(xiàn)方法如下:
1)將題干視為問(wèn)題,檢索到最相關(guān)的法規(guī)條款;
2)對(duì)于單選題、多選題和填空題,嘗試通過(guò)匹配語(yǔ)義關(guān)系得出答案;
3)對(duì)于判斷題或無(wú)法匹配語(yǔ)義關(guān)系的情況,采用字符串匹配確定答案;
4)對(duì)于仍不能確定答案的單選題和多選題,將各選項(xiàng)分別與題干所在條款計(jì)算TF-IDF值,取相關(guān)性強(qiáng)的選項(xiàng)為答案。
利用Python編程實(shí)現(xiàn)包含中國(guó)人民解放軍內(nèi)務(wù)條令、隊(duì)列條令和紀(jì)律條令三部法規(guī)[17]的軍事法規(guī)問(wèn)答原型系統(tǒng)。本節(jié)首先對(duì)其底層數(shù)據(jù)結(jié)構(gòu)的拓?fù)湫再|(zhì)進(jìn)行分析,再進(jìn)行問(wèn)答測(cè)試,最后與其他技術(shù)路線的問(wèn)答系統(tǒng)展開(kāi)對(duì)比分析。
軍事法規(guī)預(yù)處理所生成的數(shù)據(jù)結(jié)構(gòu)主要是各級(jí)標(biāo)題和語(yǔ)義實(shí)體,以及從屬關(guān)系和語(yǔ)義關(guān)系。語(yǔ)義實(shí)體和語(yǔ)義關(guān)系可視為知識(shí)圖譜技術(shù)生成的結(jié)果,而本系統(tǒng)將各級(jí)標(biāo)題及從屬關(guān)系納入拓?fù)渚W(wǎng)絡(luò),將一些原本孤立的語(yǔ)義實(shí)體建立層次上的聯(lián)系,極大豐富了實(shí)體之間的關(guān)聯(lián)程度。圖3顯示了本系統(tǒng)數(shù)據(jù)的分層拓?fù)浣Y(jié)構(gòu)。
圖3 分層拓?fù)浣Y(jié)構(gòu)Fig.3 Hierarchical topology
圖3中相鄰的葉節(jié)點(diǎn)(語(yǔ)義實(shí)體)之間即使沒(méi)有標(biāo)注語(yǔ)義關(guān)系,也因其屬于同一上級(jí)節(jié)點(diǎn)而具備了相關(guān)性。
本系統(tǒng)純語(yǔ)義數(shù)據(jù)和完整數(shù)據(jù)的基本拓?fù)湫再|(zhì)對(duì)比如表2所示,圖4直觀顯示了二者實(shí)體和關(guān)系的豐富程度差異。
表2 純語(yǔ)義數(shù)據(jù)和完整數(shù)據(jù)的拓?fù)湫再|(zhì)Tab.2 Topological properties of pure semantic data and complete data
圖4 純語(yǔ)義數(shù)據(jù)和完整數(shù)據(jù)的全局視圖Fig.4 Global views of pure semantic data and complete data
表2數(shù)據(jù)中,知識(shí)圖譜技術(shù)產(chǎn)生的純語(yǔ)義數(shù)據(jù)不包含標(biāo)題層次要素,且舍棄“孤立”的語(yǔ)義實(shí)體,故節(jié)點(diǎn)和邊的數(shù)量明顯減少;平均度降低表明節(jié)點(diǎn)之間的聯(lián)系減少;平均聚類系數(shù)為0,反映其內(nèi)部節(jié)點(diǎn)較為孤立,沒(méi)有聚集成環(huán)狀結(jié)構(gòu)。
因此,對(duì)于本文涉及的軍事法規(guī)文檔集合,純語(yǔ)義信息失真較為嚴(yán)重,可見(jiàn)傳統(tǒng)知識(shí)圖譜技術(shù)并不直接適用于結(jié)構(gòu)嚴(yán)謹(jǐn)、語(yǔ)言精練、語(yǔ)義豐富且篇章之間存在復(fù)雜關(guān)聯(lián)的軍事法規(guī)。而本系統(tǒng)通過(guò)引入標(biāo)題層次作為框架,顯著改善了鏈接松散、關(guān)系稀疏、層次弱化等問(wèn)題,大量無(wú)法以三元組形式存在的語(yǔ)義實(shí)體通過(guò)從屬關(guān)系得以保留,提升了知識(shí)網(wǎng)絡(luò)的語(yǔ)義豐富性與層次性,知識(shí)密度顯著增加,為問(wèn)答等功能實(shí)現(xiàn)提供了更完善的底層數(shù)據(jù)支撐。
通過(guò)多角度提問(wèn)測(cè)試,驗(yàn)證系統(tǒng)的問(wèn)答能力,具有代表性的問(wèn)答情況如表3所示。
表3 問(wèn)答測(cè)試
表3中的前兩項(xiàng)詢問(wèn)隊(duì)列動(dòng)作要領(lǐng),系統(tǒng)準(zhǔn)確檢索到隊(duì)列條令中最相關(guān)的條款,并給出層級(jí)脈絡(luò),第2問(wèn)通過(guò)匹配語(yǔ)義關(guān)系得到短答案。后兩項(xiàng)詢問(wèn)章節(jié)條款本身,答案涵蓋多個(gè)條款,第4問(wèn)是模糊問(wèn)題,涉及系統(tǒng)內(nèi)所有法規(guī)。系統(tǒng)對(duì)以上4個(gè)問(wèn)題均能給出合適的回答。
本系統(tǒng)綜合運(yùn)用了檢索和知識(shí)圖譜技術(shù),如果僅使用通用模型分詞,不匹配語(yǔ)義關(guān)系,則演變?yōu)榛跈z索的問(wèn)答系統(tǒng);將所有條款的三元組合并,僅通過(guò)匹配語(yǔ)義關(guān)系找短答案,則是基于知識(shí)圖譜的問(wèn)答系統(tǒng)。表4展示了三種問(wèn)答系統(tǒng)多維度比較的結(jié)果。
表4 采用不同技術(shù)路線的問(wèn)答系統(tǒng)對(duì)比Tab.4 Comparison of question answering systems using different technologies
知識(shí)圖譜的優(yōu)勢(shì)在于能夠通過(guò)匹配語(yǔ)義關(guān)系得出短答案,且人工標(biāo)注的軍事用語(yǔ)有利于提高分詞準(zhǔn)確性;檢索技術(shù)的優(yōu)勢(shì)在于支持答案溯源、可顯示完整條款、支持詢問(wèn)章節(jié)條款、能回應(yīng)難以提煉語(yǔ)義關(guān)系的復(fù)雜問(wèn)題,且答案搜索速度快。檢索技術(shù)還有一個(gè)顯著優(yōu)勢(shì),即可對(duì)新法規(guī)自動(dòng)進(jìn)行入庫(kù)處理;而知識(shí)圖譜的問(wèn)答能力取決于三元組的數(shù)量和質(zhì)量,需要人工參與;本系統(tǒng)添加新法規(guī)時(shí),先通過(guò)自動(dòng)預(yù)處理形成條款檢索能力,再按需補(bǔ)充三元組提升匹配短答案的能力。此外,當(dāng)問(wèn)題涉及描述近似而含義不同的條款時(shí),由于三元組缺乏上下文信息,導(dǎo)致知識(shí)圖譜問(wèn)答難以區(qū)分正確答案,而本系統(tǒng)則會(huì)羅列所有相關(guān)條款供詢問(wèn)者自行判斷。
綜上,本文所述的軍事法規(guī)問(wèn)答系統(tǒng)融合了檢索和知識(shí)圖譜技術(shù)的優(yōu)勢(shì),準(zhǔn)確性和適用范圍均優(yōu)于單獨(dú)運(yùn)用以上兩種技術(shù)的問(wèn)答系統(tǒng)。
本文設(shè)計(jì)了更貼合軍事法規(guī)特性的問(wèn)答系統(tǒng)實(shí)現(xiàn)流程,重點(diǎn)描述改進(jìn)TF-IDF模型生成條款檢索樹(shù)、條款檢索算法等關(guān)鍵技術(shù)。分析和測(cè)試表明,本系統(tǒng)能夠準(zhǔn)確回答多角度提問(wèn),驗(yàn)證了所述技術(shù)框架、實(shí)現(xiàn)流程和具體算法的有效性,融合了檢索和知識(shí)圖譜技術(shù)的優(yōu)勢(shì)。本系統(tǒng)的適用范圍不局限于軍事法規(guī),其他領(lǐng)域具有嚴(yán)格層級(jí)結(jié)構(gòu)的法律法規(guī)等文件也可錄入本系統(tǒng)形成問(wèn)答能力。原型系統(tǒng)的Python代碼已在碼云平臺(tái)開(kāi)源,詳見(jiàn)https://gitee.com/basddsa/hgfgqa。