趙奇猛,王裴巖,馮好國,蔡東風
沈陽航空航天大學 知識工程研究中心,沈陽 110136
機器閱讀旨在從大規模、非結構化文本中自動抽取知識,并將其應用到問答等任務中,一直是人工智能的主要目標[1]。
目前作為機器閱讀手段之一的信息抽取大多關注于抽取二元實體之間的語義關系,David[2]認為動詞至多作用于二元,若用一階邏輯來形式化表式實體關系,那么多元關系可以通過多個二元謂詞表示,在一階邏輯形式意義表達的基礎上,可以方便地進行深層推理。如“橙汁富含維他命C,維他命C防止疾病”用一階邏輯可表示為“富含(橙汁,維他命C)∧防止(維他命C,疾病)”,通過推理可得到“防止(橙汁,疾病)”的隱含關系。傳統的信息抽取需要預先定義所有的關系類型并附帶標注過的一些實例,但隨著數據尤其是網絡信息的海量增長,目標關系類型過多甚至是未知的,此時僅僅依靠抽取規則或標注語料是不可能實現的。
早期Aone等[3]能夠抽取100種關系和事件,但專家手工構建規則費時費力。Hasegawa等[4]利用上下文信息對識別的實體進行聚類,抽取頻率較高的語義標簽作為實體集的關系,但抽取的顆粒還不夠精細。KnowItAll[5]采用領域獨立的抽取模板,針對指定的關系進行抽取,能從大量網頁中抽取多種實體關系。缺點是需要用戶在每次抽取信息之前指出一個感興趣的關系。后期出現大量基于統計的機器學習方法,很大程度上減少了用戶的參與并增強了領域的適應性,但抽取的關系有限。
近年來出現的開放式信息抽取技術(Open Information Extraction,OIE)為應對大規模文本信息提供了新的思路和研究范式,即利用語言自身的完備性,抽取大量關系。如TextRunner-2008[6]利用啟發式規則從賓州樹庫生成訓練樣本,抽取淺層特征訓練二階線性鏈CRF抽取模型,結合信息冗余過濾模型,從開放式文本中自動抽取關系三元組。Liu等[7]利用MLN將實體的識別和關系的分類統一起來聯合推理抽取,相比于Text-Runner有較大提升。ReVerb[8]利用淺層句法和詞匯約束,很好地解決了TextRunner抽取的無信息量和錯誤信息的問題。但這些系統有兩個主要缺陷:一是僅抽取以動詞為核心的關系;二是忽略上下文全局信息。OLLIE[9]利用學習到的開放式模板和依存分析很好地解決了以上問題。開放式信息抽取系統的結果已經被用來支持如獲取常識知識[10]、識別蘊涵規則[11]和本體映射[12]等任務。
面對開放領域,如何針對每一領域內實體類別確定其關系類別,是開放式關系抽取的首要難點[13]。目前急需解決的難題是制定能表示關系的詞的標準。與以英文為代表的西方語言取得的重大進展相比,中文在這方面的研究還很少。主要原因有:(1)缺少詞的屈折形態,如,中文難以通過形態特征從動詞序列中確定核心動詞;(2)重語義而弱句法,關系詞的是否難以通過句法特征判斷,如,“……在/p MNP[接口/ng 20/sym]接收/vg MNP[編碼/vg 參數/ng]”中的“接受”是關系詞,而類似的句法形式“……在/p MNP[橫截面/ng]是/vx MNP[任何/r 形狀/ng]”中的“是”則相反;(3)漢語表達多出現省略,如省略主語。
為此,本文提出一種在組塊內外層標注基礎上應用馬爾可夫邏輯網模型分層次進行中文專利開放式實體關系抽取的方法。實驗結果顯示:(1)在內外層組塊標記的基礎上進行開放式實體關系抽取的可行性;(2)本文提出的MLN-G模型F值優于SVM。
漢語缺少形態變化,句式靈活而又不像英語句法模式強。按照認知科學的觀點,人們必須首先識別、學習和理解文本中的實體或者概念(具體的或抽象的),才能很好地理解自然語言文本,而這些實體和概念大多是由文本句子中的名詞短語所描述,也就是說,如果掌握了文本中的名詞短語,就可以在很大程度上把握文本所表達的主要意思,抽取出令人滿意的信息,而且組塊分析已經獲得了廣泛的研究。因此,本文設想在組塊的基礎上進行開放式實體關系抽取(Open Entity Relation Extraction,OERE)可行性的探索。
本文實驗依賴于本單位構建的中文專利依存樹庫(Chinese Patent Dependency Treebank 1.0,CPDT1.0)。CPDT1.0的句子來源有生物、化學、計算機和機械等領域,其標記的內容主要有分詞、詞類、組塊和依存等。本文利用的主要語義信息為前三項。其中組塊標記分為三類:最大名詞短語(MNP)、并列結構(BL)、術語(SY)。如“MNP[該/r SY[單向閥/ng]]允許/vg MNP[水/ng]按照/vg MNP[箭頭/ng所/ussu示/vg的/usde方向/ng]流入/vg MNP[由/p BL[SY[片狀物/ng]100/m和/c所/ussu述/vg SY[壁/ng]部分/ng 102/m]所/ussu限定/vg的/usde空間/ng]。/wj”。其中MNP可包含BL和SY,BL也可包含MNP和SY,SY為最小單位。語義實體來自上述三類組塊。外層組塊指不被其他任何組塊標簽包含,內層組塊指被其他組塊標簽包含的。CPDT1.0各項分布統計見表1。

表1 中文專利依存樹庫統計表
許多現實世界的問題具有不確定性和復雜結構。統計學習在解決不確定性上取得了很大的成功,比如貝葉斯網絡和馬爾可夫網絡等;而關系學習主要針對客觀世界的復雜結構,比如一階邏輯編程等模型成功地為現實世界的邏輯性建模。統計關系學習希望能同時考慮這兩個重要的因素。Markov邏輯網[14](MLN)是一種將Markov網絡與一階邏輯相結合的統計關系學習框架,為大型Markov網提供了一種精練的知識描述語言,為一階邏輯增加了模糊推理能力。容易集成知識挖掘中的先驗知識和結構輸出,可以提高知識挖掘的效率。
其基本思想是弱化一階邏輯的約束:即便一個可能世界(或狀態)違反了知識庫中的邏輯公式,也不是不可能發生,只是發生的概率變小。公式附帶的權重體現了其限制強度,權重越大,越趨向于純一階邏輯知識。MLN被證明是更通用的模型,如CRF和概率關系模型等是其特殊的情況。MLN的一個主要任務是定義能反映普遍規律的一階邏輯模板公式,能夠很好地繼承之前邏輯和無向圖模型的相關理論。
MLN可看作用一階邏輯公式來實例化Markov網絡的模板語言,是公式φ及其相應權重w的集合,它定義了一個可能世界y的聯合概率分布:

其中Z為歸一化常數;B是將φ中的自由變量對應到常量的一個綁定;(y)是二元特征函數,若在y中將φ的自由變量替換為B中常量所得的公式為真,其值為1,否則為0。
Markov邏輯網的基本推理任務是給定證據 找到一個最可能的世界y,也稱為MAP推理,即:

則推理歸納為尋找一個值使得可滿足子句的權值之和最大。即使在規模很小的領域,直接計算也是很棘手的,本文使用一種既準確又高效的基于整數線性規劃(ILP)的割平面算法[15](CPI)來進行推理。對于MLN的公式權重學習,采用Online Max-Margin的權重學習方法[16]。
OERE 的形式定義為三元組t=(ei,rij,ej),i≠j,其中ei和ej代表語義實體的字符串,rij代表兩個實體之間關系的詞序列。因為rij可以通過句子中的詞來確定,所以不需要預先定義關系。需要注意的是三元組是有順序的,即 (ei,rij,ej)≠(ej,rij,ei)(有對稱性質的除外,如,“A 連接 B”,其中A和B分別代表組塊,下同)。
本文中,ei和ej包括基本的名詞短語及嵌套的名詞短語和介詞短語,rij包含的關系詞有動詞和修飾詞,動詞需要模型識別,如,“A 確定/vg設置/vg B”中識別“設置”為關系詞。修飾詞可以通過后處理獲得,一般會就近依附于動詞,如“難以”和“于”等。
在分析CPDT1.0組塊特點的基礎上,提出自動發現隱含動詞之間的關系和識別關系的MLN模型。為了學習公式權重,需要構建三元組實例。有兩個問題待解決:一是實體對如何組對;二是確定表示實體對的語義關系在句中的位置。為解決第一個問題,本文將相鄰實體兩兩成對。例如“A利用B產生 C”,相鄰兩兩組對有{A和B,B和C}兩對。通過兩兩成對可以獲得10 771對的實體對。至于第二個問題,本文提出以下假設。
假設代表兩個實體之間語義關系的動詞位于實體之間。
本文通過均勻隨機采樣,發現代表關系詞的動詞來源于實體對左右邊界外的500對中,標記為正例的僅占0.01,雖然會過濾一些來自左右邊界外的關系詞,如“A與B通信”,通信可以看作是A和B之間的關系,但因在語料中出現比例較少,所以不計。而采樣400例動詞,來自實體對之間的則占0.55。故假設合理。
過濾不滿足假設的實體對后,剩下未標注的有8 539對。實例對的標注通過自擴展[17]結合人工校驗最終生成外層5 595對標注實例。包含的關系種類有1 020種,外層占91.76%。其中,自擴展的底層模型選擇的是支持向量機,因其能夠在小樣本上取得較好的性能。
MNP和BL中可能會包含實例對,如“其中/r MNP[SY[非/h 撓性/ng 部件/ng](/wkl此后/t稱為/vg“/wyl SY[片狀物/ng]”/wyr)/wkr 的/usde 前/nd 端/ng] 旋轉/vg支承/vg……”。包含的內層三元組為t={“SY[非/h 撓性/ng 部件/ng]”,“稱為”,“SY[片狀物/ng]”}。從887對內層實例中隨機采樣標注200對。
為識別動詞是否為關系詞及實現句子級別的結構輸出,本文定義了兩個隱謂詞isRel(rn,i)和unRel(rn,i),前一個表達的意思是序號為rn的實體對位置i的詞是關系詞。同時利用負例信息,定義否定謂詞unRel(rn,i)表示序號為rn的實體對位置i的詞不是關系詞。除了隱謂詞之外,本文定義了描述語料中可用信息的觀察謂詞,如表2所示。

表2 觀察謂詞
定義好謂詞,需要定義描述關系的公式。MLN中的公式可以分為局部公式和全局公式。
3.3.1 局部公式
局部公式通常表示關系詞的局部特征,用來判斷隱謂詞是否成立。
實際應用中,公式中含有“+”的變量指實例變量,即需被替換為同類型集合中的常量,實例公式由公式中各個實例變量的笛卡爾積組合而成。MLN引擎為每個實例公式賦予相應權重,其他變量隱含為全稱量詞。公式結尾處有點號的代表嚴格約束(hard rule),反之為軟約束(soft rule)。
詞和詞性特征可在一定程度上判斷動詞是否為關系詞。如,從“MNP[SY[棱柱形/ng]結構/ng的/usde各邊/r長度/ng]約/d為/vx MNP[1.5/m-/sym 2/m cm/sym]。/wj”中發現“約/d”可以充當動詞“為”的修飾,可推出“為”可能是關系詞;又如,從“在/p BL[MNP[第一/m 位置/ng]和/c MNP[第二/m 位置/ng]]之間/nd往復/vq 移動/vg,/wo 使得/vg MNP[SY[烤爐/ng]內/nd的/usde 材料/ng,……]”中的“在/p”和“之間/nd”識別實體1為狀語,則中間的動詞可能不構成關系詞。式(3)和(4)是描述詞和詞性性質的公式:

其中詞和詞性特征的范圍取決于實體的上下文,設句子序列為{…,w2/p2,w1/p1,ent1,mid/midp,ent2,w1/p1,w2/p2,…}。如果窗口為1,特征可取w1/p1和mid/midp;窗口為2,可取w2/p2、w1/p1和mid/midp。mid/midp代表ent1和ent2中間的詞/詞性序列。為了泛化識別的關系詞,mid/midp不包含待判斷的關系詞和詞性。
距離特征在傳統實體關系抽取中被廣泛運用,實驗發現在開放式實體關系抽取中同樣有很好的效果,如式(5)和(6):

式(7)表示關系詞及其詞性的先驗分布,此處沒有利用負例是因為實驗發現這樣可以防止語料的偏置:
不同于傳統授課,翻轉課堂中學生所需投入的時間與精力較多,所以評價方法是否全面、客觀、公平,對課堂效果的提升顯得非常重要。目前的評價方法結合課前與課中,課前重視學生的努力程度,即任務是否完成、對團隊的貢獻量大小等,而課中則注重學習質量,強調學習深度。大多數研究者認為學生可以從翻轉中獲益,但能否提高成績,則較為保守。加之翻轉環節多,學生深度學習無法考量等,所以如何發展出一套適用的測評工具和方法來評估翻轉課堂的效果,未來還需更長時間的觀察與科學研究才能確定。

從“MNP[SY[路面板/ng]的/usde寬度/ng]等于/vg MNP[一個/m 行車道/ng的/usde寬度/ng]”中可以看出,如果實體核心詞相同,動詞可能作為關系詞;從“MNP[塞/ng 301/m]可/vz與/p MNP[SY[充氣器/ng]44/m]一起/d使用/vg,/wo或者/c代替/vg MNP[SY[充氣器/ng]44/m]。/wj”中發現核心詞相同且“使用”和“代替”有并列關系,推出動詞可能不是關系詞,如式(8)和(9):

倘若關系詞右邊有副詞,如“MNP[圖/ng 3E/sym]示意/vg地/usdi示出/vg MNP[SY[麥克非/ng]……]”中的“示意”右邊有“地/usdi”,則表明這個動詞作修飾語不是關系,如式(10):

如果實體1含有時間類詞,那么一般來說實體1作為狀語,公式定義如下。

如果實體之間有連詞,句子表達的意思是另一層,中間的動詞可能不是關系詞,如“MNP[所/ussu述/vg SY[片狀物/ng]]可/vz由/p MNP[SY[驅動/vg單元/ng]83/m]進行/vg 驅動/vg,/wo 并且/c MNP[SY[扭簧/ng]11/m]……”中含有連詞“并且”。負例有相反的現象,如式(12)和(13):

通過啟發式規則容易發現一些實體不構成實體對,則第rn個實體對動詞i不是關系詞,通過式(14)描述:

3.3.2 全局公式
涉及兩個以上的隱謂詞為全局公式,主要目的是建立隱謂詞之間相互依存關系并使最終結果滿足一定約束。在Markov邏輯網上,能夠通過構建不同規則,來模仿很多算法任務。如式(15)~式(18)描述句子級別關系的結構輸出:

漢語中常常會出現動詞上下文的省略,導致特征不足,可以通過聯合推理解決以上問題。如果兩個關系詞相同,先識別簡單的,借助確定的推斷難以判別的,如式(19)所示:


為使抽取結果更完善,建立詞表,如果實體以及關系詞左右緊鄰的詞出現在詞表中,將其擴充。比如,實體擴充把方位名詞“中”、“上”和“內”等擴充進來;動詞擴充把相關的副詞和介詞擴充進來,如“難以”、“不”、“了”和“于”等。
因SVM在實體關系抽取中被廣泛運用,又能夠同時利用正負實例,故將其作為對比實驗。
為驗證在組塊的基礎上進行開放式實體關系抽取的可行性和和對比本文提出的Markov邏輯網模型的效果,本文設置兩組對比實驗,一組是SVM、MLN-L(只包含局部公式和上述最后兩個全局約束公式)和MLN-G(包括所有公式)對外層抽取效果的對比,另一組是在同樣條件下對內層抽取效果的對比。
SVM工具包選用的是SVM-Light,內、外層用的核函數為線性核,SVM選取的特征與MLN相同。為防止距離特征影響過強而導致震蕩的問題,對其進行縮放,區間為[-1,1]。MLN網實現的工具包用的是thebeast,外層學習規則為Plain Perceptron,內層為1-best MIRA。外層帶標注的實例對共計5 595對,正例占44.25%;內層共計200對,正例占36%。第一組實驗利用外層語料進行十折交叉驗證,并比較了上下文窗口為1和2的情況。
第二組實驗將所有外層語料作為訓練集,內層為測試集。
第一組和第二組實驗結果分別如表3、4所示。

表3 SVM、MLN-L和MLN-G外層實驗結果對比(%)

表4 SVM、MLN-L和MLN-G內層實驗結果對比(%)
從實驗結果來看,在組塊的基礎上實現OERE具有可行性。對于外層,如果將每個實例作為獨立的實例,不考慮彼此的影響,MLN-L稍遜于SVM,但差別不大,主要原因是工具包的實現利用的采樣隨機算法不能獲得全局最優解;而MLN-G明顯高于其他兩個。主要原因有:MLN-G考慮關系的結構輸出和聯合推理。如,通常“A 描述/vg為/vx B”中“為”是關系詞,通過學習隱謂詞的依賴關系能夠發現,當得出“描述”不是關系詞時,推得“為”是關系詞,公式權重為0.026,反過來發現“為”是關系詞時,能推出“描述”不是關系詞的公式權重為0.019。
開放式實體關系抽取以及MLN是近年來文本信息處理和機器學習領域的研究熱點,但是當前關于中文的開放式實體關系抽取研究較少。本文提出一種在組塊標注基礎上應用馬爾可夫邏輯網分層次進行中文專利開放式實體關系抽取的方法,驗證了句子經過組塊分析后更易處理,且MLN-G模型較SVM取得更好的效果。
今后,將進一步考慮處理以名詞和形容詞等為核心關系的詞,并融合實體的識別,做聯合推理,從而更好地解決語料的稀疏問題,有助于中文Web的開放式信息抽取的研究。
[1]Poon H,Domingos P.Unsupervised ontological induction from text[C]//Proceedings of theForty Eighth Annual Meeting of the Association for Computational Linguistics,Uppsala,Sweden,2010:296-305.
[2]David D.Thematic proto-roles and argument selection[J].Language,1991,67(3):547-619.
[3]Aone C,Ramos-Santacruz M.REES:a large-scale relation and event extraction system[C]//Proceedings of the 6th Applied Natural Language Processing Conference,2000.
[4]Hasegawa T,Sekine S,Grishman R.Discovering relations among named entities from large corpora[C]//Proceedings of ACL,2004.
[5]Etzioni O,Cafarella M,Downey D,et al.Unsupervised namedentity extraction from the web:an experimental study[J].Artificial Intelligence,2005,165(1):91-134.
[6]Banko M,Cafarella M J,Soderland S,et al.Open information extraction from the web[J].Communications of the ACM,2008,51(12):68-74.
[7]劉永彬,楊炳儒.基于馬爾可夫邏輯網的聯合推理開放式信息抽取[J].計算機科學,2012,39(9):627-633.
[8]Etzioni O.Open information extraction:the second generation[C]//Proceedings of International Joint Conference on Artificial Intelligence,2011.
[9]Schmitz M,Rart R,Soderland S,et al.Open language learning for information extraction[C]//Proceedings of Conference on Empirical Methods in Natural Language Processing and Computational Natural Language Learning(EMNLP-CONLL),2012.
[10]Lin T,Etzioni O.Identifying functional relations in Web text[C]//Proceedings of EMNLP,2010.
[11]Schoenmackers S,Etzioni O,Weld D S,et al.Learning first-order horn clauses from web text[C]//Proceedings of EMNLP,2010.
[12]Soderland S,Roof B.Adapting open information extraction to domain-specific relations[J].AI Magazine,2010,31(3):93-102.
[13]趙軍,劉康,周光有,等.開放式文本信息抽取[J].中文信息學報,2011,25(6):98-110.
[14]Domingos P,Lowd D.Markov logic:an interface layer for artificial intelligence[M].San Rafael,CA:Morgan&Claypool,2009.
[15]Riedel S.Improving the accuracy and efficiency of map inference for markov logic[C]//Proceedings of the Annual Conference on Uncertainty in AI,2008.
[16]Huynh T N,Mooney R J.Online MaxMargin weight learning for markov logic networks[C]//Proceedings of the 11th SIAM International Conference on Data Mining,2011:642-651.
[17]Mihalcea R.Co-training and self-training for word sense disambiguation[C]//Proceedings of CoNLL,2004.