劉明童,張玉潔,徐金安,陳鈺楓
(北京交通大學 計算機與信息技術學院,北京 100044)
自然語言理解是自然語言處理的終極目標,其判定標準包括復述、翻譯、問答和文摘,復述處理的復雜性和重要性可見一斑[1]。復述廣泛應用于信息抽取[2-5]、機器翻譯[6-8]和自動問答[9]等自然語言處理任務中。近年來,復述研究日益成為關注熱點,成為自然語言處理的重要方向之一。
在自然語言處理具體任務中,復述技術包括復述識別和復述生成,而這兩項任務都是以復述知識為基礎,因此,復述知識的獲取方法一直是復述研究的核心內容。復述知識的獲取一般集中在短語、句子、模板及篇章四個級別[1]。由于復述模板具有對復述知識高度抽象的概括能力,因此,復述模板獲取方法的研究成為了主要課題。例如,“曹雪芹寫了《紅樓夢》”和“《紅樓夢》的作者是曹雪芹”是一個句子級別的復述實例。復述模板指一組語義上等價的模板,每個模板由詞語和變量槽組成。對上述復述實例泛化可以得到復述模板:“[X]寫了[Y]”和“[Y]的作者是[X]”。
早期的方法通過對復述實例泛化獲取復述模板,但復述實例資源較為匱乏,因此,難以獲取多樣化的復述模板。后來,從大規模單語語料中抽取復述模板的自舉迭代方法受到關注[11],因為它既規避了對復述實例語料的依賴,又能不受特定語料的限制,從而可以獲取多樣化的復述模板。例如早期方法中需要“《紅樓夢》的作者是曹雪芹”和“曹雪芹寫了《紅樓夢》”這樣的復述實例才能獲取復述模板:“[作者]寫了[作品]”和“[作品]的作者是[作者]”;而之后的自舉迭代方法即使沒有這樣的復述實例,也可以從“曹雪芹寫了《紅樓夢》”和“《西游記》的作者是吳承恩”這樣的例子中抽取出同樣的復述模板。其主要原理是利用具有特定關系的實體對從大規模語料中抽取實例進行泛化獲取模板,進而利用模板抽取實例擴展實體對,如此迭代地獲取具有特定關系的模板作為復述模板。但是該方法自舉迭代過程中存在語義飄移問題和獲取關系模板存在語義差異問題,導致復述模板的質量不高,后續需要人工按照語義進一步細分類。
本文提出開放域上基于深度語義計算的復述模板獲取方法,針對自舉迭代過程中的語義飄移問題,設計基于統計特征的模板裁剪方法;針對需要人工細分類的問題,設計基于語義組合計算的模板自動聚類方法,從而提升復述模板的質量。
本文剩余部分組織如下:第一節介紹相關研究;第二節針對自舉迭代方法中的語義飄移問題,描述基于統計特征的模板裁剪方法;第三節針對需要人工細分類的關系模板語義差異問題,描述基于深度語義計算的模板自動聚類方法;第四節介紹實驗評價和結果分析;第五節對本文研究進行總結。
復述模板的獲取起源于信息抽取的需求,早期的方法通過對復述實例泛化獲取復述模板。Barzilay等人[10]使用詞性序列泛化獲得復述模板,李維剛[11]使用語義分類標識表示模板槽變量。
由于獲取大量復述實例較為困難,研究者開始在單語語料展開研究,利用單語語料獲取復述模板的方法主要依賴分布式假設。Lin等人[12]提出以英語為對象的DIRT方法,利用句子依存路徑兩端的詞語作為分布特征,尋找相近路徑生成復述模板;Shinyama等人[13]以日語為對象,收集依存路徑兩端的命名實體作為分布特征,然后將相近路徑泛化得到模板;Biran[14]探索了基于知識庫的復述模板獲取方法,首先利用知識庫對句子泛化得到特定語義類型的模板,然后通過聚類尋找復述關系;RELLY系統[15]利用知識庫中的上下位關系作為特征獲得復述模板。隨著深度學習在自然語言處理上的應用,在模板語義特征的計算中, Takase等人[16-17]通過分布式表示學習模板的語義向量,然后對模板間的語義相關性進行排序。
因為單語語料沒有語義等價的線索,使得復述識別和復述獲取極具挑戰性,已有研究方法使用了高精度的句法分析和大規模知識庫,主要工作集中在英語和日語,而漢語上的復述模板研究很少。本文研究開放域上漢語復述模板的獲取方法,采用自舉迭代方法,針對其中語義飄移問題和模板語義差異問題,探索結合統計特征和深度語義計算的復述模板獲取方法。Biran的方法與我們較為接近,但他們僅利用了表層字符特征作為復述模板聚類依據,同時,他們利用了英語豐富的知識庫獲取復述模板,所以這一方法難以擴展到語言學資源不豐富的語言中。
根據分布式假說(distributional hypothesis)[18-19],分布特征越相近的詞語在語義上越接近,因而成為復述的可能性也越大。我們以實體對(entity pairs)作為兩個實體之間語義關系的分布特征,首先利用種子實體對獲取反映實體關系的句子(關系實例);然后通過循環迭代擴展實體對,以獲取大量具有相同實體關系的實例;最后對實例泛化獲取關系模板。給定實體對意味著兩個實體之間具有指定的語義關系,因此包含實體對的句子也具有指定的語義關系。自舉迭代獲取關系模板的過程由以下三個部分組成。
參考前人的方法[20],我們將一個種子實體對中的兩個實體(E1,E2)和關系關鍵詞(Key)以“E1+Key+E2”的形式作為查詢輸入搜索網絡數據,從實體對出發自舉迭代獲取大量具有相同關系的實體對。例如,我們將“百度+CEO+李彥宏”三個元素輸入搜索引擎,通過自舉的方法可以獲取如<騰訊,馬化騰>,<阿里巴巴,馬云>等具有相同關系的實體對。
我們利用第2.1節獲取的實體對作為查詢輸入從網絡獲取關系實例,獲取過程如圖1所示。由于自舉迭代擴展實體對的過程會導致語義飄移問題,我們采用如下策略進行數據預處理。

圖1 關系實例獲取流程圖
(1) 對搜索返回結果中排名靠前的N(N=30)個網頁,我們只收集頁面標題和摘要作為數據,并進行語句切分。
(2) 篩選句子,只保留完全包含查詢實體對的句子。
(3) 進行分詞、詞性標注,以及命名實體識別。為了保證檢索到的句子具有指定語義關系,我們進一步利用命名實體標注的詞性類別,只保留和種子實體對詞性類別一致的句子。
(4) 計算實體對間的距離,去掉距離超過一定長度的句子,本文取5。因為實體間距離過大,包含詞匯信息較多,會降低模板的抽象能力。
過濾后的句子構成關系實例集合,我們利用以上方法篩選句子以獲取高質量的關系實例。
首先將實例中的實體對泛化成變量槽,并以實體的詞性類別作為語義限制獲取關系模板,如從實例“李彥宏/nr 擔任/v 百度/nt CEO/nx”可以獲得關系模板“PERSON/nr 擔任/v ORGANIZATION/nt CEO/nx”。
模板泛化的主要問題是,從較長實例中獲取的模板也較長,而較長模板的泛化能力較弱,為此我們參考前人方法[11],采取如下模板裁剪策略:
(1) 基于長度的裁剪:以實體對包圍的單詞序列為中心,向左右分別擴展一定長度的窗口,作為初始模板,以此限制模板的長度。
(2) 基于統計特征的裁剪:為了對左右窗口部分進一步裁剪,對初始模板左右窗口中的單詞分別計算與實體對的語義相關度作為邊界可信度,分別選擇邊界可信度最大的單詞作為左右邊界。如此,保留和實體語義最相關的詞語,刪除不相關的詞語,以提高模板泛化能力。我們基于統計特征設計邊界可信度計算函數,詞語Wi的邊界可信度計算如下:
(1)
其中:
式(2)表示當單詞詞性為名詞、動詞和形容詞時,函數取值為1,否則為0,因為這類詞性的詞語通常具有實質性的語義信息;式(3)計算單詞出現在左右窗口的概率,其中tfAsContext(Wi)是Wi在左右窗口出現的次數,tfTotal(Wi)是Wi在整個實例集合中出現的次數,如此可以降低“的”這類功能性詞匯作為模板邊界的可能性;式(4)主要考察了相鄰候選詞對當前候選詞邊界可信度的影響,確定左邊界時j取-1,右邊界時j取1,其中λ是一個常數,本文取1,主要是對P(Wi+j)作為分母其值為0時做一個平滑處理;式(5)考察了候選詞與最近實體之間的距離對邊界可信度的影響,Loc(Wi)表示Wi在句子中的位置,距離實體越近的詞在語義上和實體越相關。
利用基于統計特征的方法,我們選取邊界可信度最高的單詞作為邊界,進行模板裁剪。對裁剪后的模板統計數量,設定閾值,保留一定頻度以上的模板。我們認為出現次數越多的模板質量越高。
按照第二節介紹方法,由給定實體對獲取的關系模板應具有指定語義關系,但是研究結果表明,其中依然存在細微語義差異,導致關系模板不能直接作為復述模板,還需要人工進行細分類[11]。例如,給定實體對<百度,李彥宏>,在我們獲取的關系模板結果中,模板中的詞語包括“創新”“創業”“發言”“致辭”等,這些模板在語義上有一定差異。針對這一問題,本文提出的基于深度語義計算的關系模板自動聚類方法,希望能將上面例子中的“發言”和“致辭”這些模板分為一類,而將表達“創新”和“創業”語義的模板分為另一類。
模板由變量槽和單詞兩部分構成,其中單詞具有更加具體的語義信息,因此,我們利用單詞部分計算模板的語義表示。如對模板p=“ORGANIZATION/nt 董事長/nnt PERSON/nr 表示/v”,我們抽取單詞集合{董事長、表示}計算模板的語義。首先,計算每個單詞的語義表示,我們利用Word2Vec*http://word2vec.googlecode.com.獲取單詞的詞向量,采用skip-gram模型,上下文窗口設置為5,利用中文維基百科語料*https://dumps.wikimedia.org.作為訓練數據,設置維度大小為200。然后,利用單詞的語義表示組合計算得到模板的語義表示。模板的語義組合計算方式有算術平均和幾何平均兩種,根據已有研究結果[14,16-17],本文采用效果較好的算術平均方法進行語義組合計算,具體公式如(6)所示。
(6)
其中,n表示模板中單詞個數,vi表示第i個單詞對應的詞向量。
語義越相近的模板在語義空間上的距離也越接近,由此可以在同一語義空間尋找復述模板。我們以K-means聚類算法[21]為基礎獲取復述模板,針對聚類效果不穩定的初始中心點選擇問題進行了改進,改進算法如圖1所示。我們對聚類個數K值的設置基于如下考慮,從前期實驗結果發現具有相同語義關系的復述模板一般為5個左右,即聚類后每個類的元素為5,故設置聚類后的復述集合個數K=待聚類的模板個數/5。

1.K?means初始質心選擇算法:2.從輸入模板集合中隨機選擇一個點作為第一個聚類中心u1;3.對于集合中的每一個點pi,計算它與已選擇的聚類中心中最近聚類中心的距離:D(p)=argmax∑kselectedr=1‖pi-ur‖24.選擇一個新的數據點作為新的聚類中心,選擇的原則是:D(p)較大的點被選取作為聚類中心;5.重復步驟3和4,直到選擇出K個聚類質心;6.利用這K個質心作為初始化質心運行K?means算法。1.基于K?means的模板聚類算法:2.輸入:模板向量表示集合S(p)={p1,p2,p3,…,pN};N為模板總數;最大迭代次數為T;設置聚類個數為K3.輸出:模板聚類集合{C1,C2,C3,……CK}4.初始化:按照上述初始質心選擇方法,從數據集S(p)中選擇K個樣本點作為模板聚類的質心向量{u1,u2,u3,…,uK}5.Fort=1toT:初始化模板集合:將模板劃分C初始化為Ck=?,k=1,2,…,K6.Fori=1toN:計算樣本pi和各個質心向量uj(j=1,2,…,K)的距離:dij=‖pi-uj‖2,將pi標記為最小的為dij所對應的類別λi,更新cλi=cλi∪pi7.EndFor8.Forj=1toK:更新聚類中心uj=1|Cj|∑p∈Cjp9.EndFor10.如果所有的K個質心向量都沒有發生變化,則轉到步驟1211.EndFor12.輸出聚類后的模板集合{C1,C2,C3,…,CK}
圖1K-means聚類算法獲取復述模板
為了驗證本文所提方法的有效性,我們在網絡開放域的數據上進行了評測實驗。
本文選取四類語義關系的實體對作為初始種子進行實驗。這四類關系分別是CEO關系、發明關系、病理關系、作品作者關系。我們利用百度搜索引擎*https://www.baidu.com擴展實體對,擴展結果的部分示例見表1所示。然后利用這些實體對和百度搜索引擎獲取實例,獲取結果的部分示例見表2所示。本文使用HanLP*http://hanlp.linrunsoft.com自然語言處理工具進行分詞、詞性標注、實體識別處理。下面是以這些實體對和實例作為模板泛化和聚類獲取復述模板的實驗數據。

表1 實體對擴展結果的部分示例

表2 關系實例結果的部分示例
利用第二節描述的方法對上面獲得的關系實例泛化、裁剪,獲得關系模板。本文采用人工評測的方法,并使用下面的評測指標。
(1) 準確率(P):如果一個模板能夠正確表達“某人(PERSON)是某組織(ORGANIZATION)的CEO”的含義,則判斷這個模板是正確的,準確率計算公式如式(7)所示。
(2) 覆蓋率(C):給定若干具有指定語義關系的實例,使用模板匹配這些實例,以能夠匹配的實例個數計算覆蓋率,覆蓋率計算如式(8)所示。
本文只在CEO關系的數據上進行了覆蓋率評測,我們按以下方法構建評測數據:對一個給定的實例,如果實例中包含有一對實體,且實體對應的詞性分別為人名和機構名,若這樣的實例表達了CEO語義關系,就選擇該實例作為標準評測數據。最終,我們構建500個關系實例集合用于覆蓋率評測。
我們主要評價模板裁剪中不同閾值和窗口大小對關系模板準確率和覆蓋率的影響,實驗結果分別如表3和表4所示。

表3 頻率閾值對模板獲取的影響

表4 窗口大小對模板獲取的影響
從表3中可以看出,隨著閾值的增加,模板準確率隨之提升,覆蓋率隨之下降,但覆蓋率下降趨勢較為緩慢。由此可以發現設置較高閾值獲取的模板具有更好的泛化能力,可以覆蓋更多的實例,這表明我們的方法可以獲取到高質量的模板。同時,我們也發現隨著閾值的不斷增加,關系模板的數量下降較快。
從表4中可以看出,隨著窗口的增大,模板的準確率和覆蓋率都不斷提升。分析其原因,當窗口增大時,有更多的上下文信息可以幫助判斷模板的邊界。當窗口增加到4時,準確率和覆蓋率的提升變得緩慢。
針對獲取的關系模板,我們利用第4節描述的自動聚類方法獲取復述模板,表5顯示了從CEO關系模板獲得的復述模板的六個聚類結果。本文對聚類結果按如下方法進行過濾:如果某類中只有一個模板,舍棄該類;如果某類中的模板數量超過10,舍棄該類,我們假設復述模板的數量最多為10,若超過10個,則認為該類中包含過多不正確的復述模板,將這樣的類過濾。然后,我們對過濾后的聚類結果進行評測,評測方法如下:對每一類中的模板按照語義人工進行分組,每一組內的模板互為復述,然后選取模板數量最多的一組作為正確的復述模板集合,并計算正確復述模板的個數占類中模板總數的比例,得到每一類的正確率(P),并對所有類計算平均正確率。

表5 聚類獲取復述模板的部分示例
我們對CEO關系模板聚類后的結果進行評測,將聚類結果中的復述模板數量和正確率的關系列在表6中,PC表示復述模板正確率。從表6的結果來看,當類中模板數量為2和3時,互為復述模板的可能性很高,隨著類中模板數量的增多,正確率有所下降。

表6 CEO關系模板自動聚類后的復述模板

續表6
表7給出了四類關系模板的聚類結果,其中PR表示關系模板正確率,PAC表示復述模板平均正確率。

表7 4類關系模板的聚類評測結果
從表7的分析結果來看,本文基于深度語義計算的聚類方法可以有效過濾噪聲模板,實現關系模板在細微語義層面上的深入分類,最終獲得質量較高的復述模板。
關系模板的正確率與復述模板的平均正確率之間的關系如圖2所示。從圖2中可以看出,關系模板的質量對聚類結果有較大影響,當關系模板的質量提高時,自動聚類的效果就變好,獲取復述模板的質量也隨之提高,說明了本文關系模板裁剪方法的有效性和重要性。

圖2 關系模板正確率和復述模板正確率的關系
本文提出開放域上基于深度語義計算的復述模板獲取方法,針對自舉迭代過程中的語義飄移問題,設計基于統計特征的模板裁剪方法;針對需要人工細分類模板語義的問題,設計基于語義組合計算的模板自動聚類方法。實驗結果顯示,本文可以獲取到高質量的復述模板。針對未來的研究工作,我們需要進一步提高模板語義組合計算的精度,包括更精準的詞向量學習方法,以及更有效的自動聚類算法,以提高自動獲取復述模板的準確度。
[1]趙世奇,劉挺,李生.復述技術研究[J].軟件學報,2009(08):2124-2137.
[2]Zhang Y, Yamamoto K.Paraphrasing of Chinese utterances[C]//Proceedings of COLING,2002:1163-1169.
[3]Ravichandran D,Hovy E.Learning surface text patterns for a question answering system[C]//Proceedings of ACL,2002:41-47.
[4]Rahul Bhagat,Deepak Ravichandran.Large scale acquisition of paraphrases for learning surface patterns//Proceedings of ACL,Columbus,OH,2008:674-682
[5]Chen B,Sun L,Han X,et al.Sentence rewriting for semantic parsing[C]//Proceedings of Meeting of the Association for computational linguistics,2016:766-777.
[6]Nitin Madnani,Necip Fazil Ayan,Philip Resnik,et al.Using paraphrases for parameter tuning in statistical machine translation[C]//Proceedings of the Workshop on Statistical Machine Translation,Prague,2007:120-127
[7]Su J S,Dong H L,Chen Y D,et al.Improved statistical machine translation model with topic-based paraphrase[J].Zhejiang Daxue Xuebao (Gongxue Ban)/Journal of Zhejiang University (Engineering Science Edition,2014,48(10):1843-1849.
[8]Zhang L,Weng Z,Xiao W,et al.Extract domain-specific paraphrase from monolingual corpus for automatic evaluation of machine translation[C]//Proceedings of Conference on Machine Translation:Volume 2,Shared Task Papers.2016:511-517.
[9]Zhao S,Zhou M,Liu T.Learning question paraphrases for QA from encarta logs[C]//Proceedings of IJCAI,2007:1796-1800.
[10]Barzilay R,McKeown K.Extracting paraphrases from a parallel corpus[C]//Proceedings of Meeting of the Association for Computational Linguistics,2001:50-57.
[11]李維剛.中文復述實例與復述模板抽取技術研究[D].哈爾濱:哈爾濱工業大學博士學位論文,2008:1-139.
[12]Lin D, Pantel P.Discovery of inference rules for question answering[J].Natural Language Engineering,2001,7(4):343-360.
[13]Yusuke Shinyama,Satoshi Sekine.Paraphrase acquisition for information extraction[J].Spinal Cord,2003,52(4):264-267.
[14]Biran O,Blevins T,Mckeown K.Mining paraphrasal typed templates from a plain text corpus[C]//Proceedings of Meeting of the Association for Computational Linguistics,2016:1913-1923.
[15]Grycner,Adam and Weikum,Gerhard and Pujara,Jay and Foulds,James and Getoor,Lise,RELLY:Inferring hypernym relationships between relational phrases[C]// Proceedings of the 2015 Conference on Empirical Methods in Natural Language Processing,2015:971-981.
[16]Takase S,Okazaki N,Inui K.Composing distributed representations of relational patterns[C]//Proceedings of Meeting of the Association for Computational Linguistics,2016:2276-2286.
[17]Takase S,Okazaki N,Inui K.Modeling semantic compositionality of relational patterns[J].Engineering Applications of Artificial Intelligence,2016(50):256-264.
[18]Harris Z.Distributional structure[J].Word,1954,10 (23):146-162.
[19]Firth J R.A synopsis of linguistic theory 1930-1955.Studies in Linguistic Analysis[M].Oxford:Philological Society,1957:1-32.
[20]李維剛,劉挺,李生.基于網絡挖掘的實體關系元組自動獲取[J].電子學報,2007,35(11):2111-2116.
[21]王千,王成,馮振元,等.K-means聚類算法研究綜述[J].電子設計工程,2012,20(7):21-24.

劉明童(1993—),博士研究生,主要研究領域為自然語言處理、神經機器翻譯、復述。E-mail:16112075@bjtu.edu.cn

張玉潔(1961—),通信作者,教授,主要研究領域為自然語言處理和機器翻譯。E-mail:yjzhang@bjtu.edu.cn

徐金安(1970—),副教授,主要研究領域為自然語言處理和機器翻譯。E-mail:jaxu@bjtu.edu.cn