李國臣,張立凡,李 茹,2,劉海靜,石 佼
(1.山西大學(xué) 計算機(jī)與信息技術(shù)學(xué)院,山西 太原030006;2.計算智能與中文信息處理教育部重點實驗室,山西 太原030006;3.太原工業(yè)學(xué)院,山西 太原030008)
自然語言處理研究旨在使計算機(jī)像人一樣理解并使用自然語言,最終實現(xiàn)最高層次的人與計算機(jī)的有效“交流”,是人工智能領(lǐng)域的一個重要研究方向。但是,自然語言與計算機(jī)語言最大的不同就是它具有歧義性。例如,“我叫夏明”和“你媽媽叫你回家”這兩個句子中,詞“叫”就有“命名”和“發(fā)聲”兩種框架語義。這樣的多義現(xiàn)象雖然對人與人之間的交流并不會造成太大影響,可是對目前自然語言處理的研究熱點——語義分析的影響卻至關(guān)重要。而框架排歧作為語義分析中的一個中間環(huán)節(jié),對一條給定句子中的動詞(或事件名詞等),計算機(jī)可以為其自動分配一個正確的框架,從而消解這種歧義現(xiàn)象。如果能有效地處理好語義分析中的框架分配的歧義問題,不僅可以為語義角色標(biāo)注任務(wù)奠定基礎(chǔ),還可以為構(gòu)建語料庫提供技術(shù)支持和保障,更可以為信息檢索、機(jī)器翻譯等應(yīng)用提供有用的語義信息。
框架排歧是指在一個給定的句子中,根據(jù)句中目標(biāo)詞激起的語義場景,判斷當(dāng)前語境與該目標(biāo)詞可能屬于的哪個場景一致,則將該場景下的框架分配給當(dāng)前的目標(biāo)詞。例如,句子“我叫夏明”中的目標(biāo)詞“叫”可以激起“命名”和“發(fā)聲”框架,根據(jù)人類的認(rèn)知經(jīng)驗,在該句中目標(biāo)詞“叫”激起的是命名場景,而命名場景與框架庫中的“命名”框架相一致,因此,給該句中的目標(biāo)詞“叫”應(yīng)分配“命名”框架而不是“發(fā)聲”框架。其中,目標(biāo)詞[1]是指在一個具體的句子中能夠激起框架的詞。框架[2]指的是與一些激活性語境相一致的結(jié)構(gòu)化范疇系統(tǒng),它是儲存在人類認(rèn)知經(jīng)驗中的圖式化情境,是理解詞語的背景和動因。在框架語義學(xué)中,場景是一個圖式化情境,是語言之外的真實世界,語言中的每一個詞、短語、句子都是對場景的描述。例如,“覺得、認(rèn)為、以為、主張”等動詞在人類經(jīng)驗中激起的是觀點的場景,該場景涉及提出觀點的人、觀點、所考慮的對象和對提出的觀點所持有的堅定程度等要素。因此,描述“覺得、認(rèn)為、以為、主張”等動詞的語義性質(zhì),就可以將其歸入觀點框架,以提出觀點的人、觀點、所考慮的對象和對提出的觀點所持有的堅定程度等來刻畫觀點框架。
在形式上,框架排歧與詞義消歧任務(wù)很相似,本質(zhì)上,兩者還是有很大的不同。首先,詞義消歧的義項是給定的,而框架排歧任務(wù)存在框架缺失;其次,詞義消歧針對的是句子中所有的詞語,而框架排歧針對的是句子中可以激起框架的目標(biāo)詞元;再者,詞義消歧更側(cè)重于靜態(tài)地計算多義詞在詞典中的哪個釋義更適合于當(dāng)前句子,而框架排歧是通過動態(tài)語義場景中的參與者和涉及的相關(guān)語義角色,來判斷哪個候選框架所激起的語義場景與當(dāng)前句子的語義場景是一致的。雖然框架排歧和詞義消歧有很大的不同,但是框架排歧的研究剛剛起步,因而,目前框架排歧的方法[3-7]大都還是借鑒詞義消歧[8-16]的 研究策略,將框架排歧看作是一個分類問題。在針對框架排歧的分類處理中,研究人員都是人工地設(shè)置特征模板,模板的特征項一般是由一定窗口內(nèi)的詞、詞性、詞與詞性的組合以及詞、詞性的n-gram等構(gòu)成。這種方法不僅需要研究者有豐富的語言學(xué)知識,還要對實驗數(shù)據(jù)進(jìn)行大量地觀察,甚至通過多次實驗才能確定特征模板的構(gòu)成成分,這無疑是繁瑣的。此外,對不同歧義的目標(biāo)詞而言,所能激起的語義場景是不同的,影響框架排歧的窗口大小和特征模板也是不一樣的。如果完全通過人工對每個歧義的目標(biāo)詞分別構(gòu)造合理的特征模板,工作量也將是巨大的。
為了克服傳統(tǒng)的人工特征選擇方法的繁瑣,并充分利用每個歧義目標(biāo)詞的語義特征,本文研究了框架排歧中特征模板的自動選擇方法,借助漢語框架語義資源(Chinese Frame Net,以下簡稱CFN)[17],進(jìn)行5-f ol d交叉驗證,分析和比較了該方法與傳統(tǒng)的人工特征選擇方法。實驗結(jié)果表明,該方法要明顯優(yōu)于人工特征選擇方法,且框架排歧的平均精確率可達(dá)到84.46%。
本文的組織結(jié)構(gòu)如下:第2節(jié)描述了CFN及其漢語框架排歧任務(wù);第3節(jié)描述了兩種特征選擇算法;第4節(jié)介紹了實驗的設(shè)計與分析;第5節(jié)為結(jié)論與展望。
漢語框架網(wǎng)語義資源是由山西大學(xué)研發(fā),以Fill more的框架語義學(xué)[18]為理論基礎(chǔ),以加州大學(xué)伯克利Frame Net[19]為參照,以漢語真實語料為依據(jù)構(gòu)建的漢語詞匯語義知識庫。目前,CFN語料庫[20]共標(biāo)注了309個框架、3151個詞元和2萬多條句子,其宗旨[21]是構(gòu)建大規(guī)模漢語框架語義網(wǎng)的樣本,使CFN成為一部計算機(jī)可讀、可理解的語義詞典。
本文是在給定句子和歧義目標(biāo)詞的條件下,使用CFN語義資源,實現(xiàn)漢語框架排歧任務(wù)。在CFN語義資源中,目標(biāo)詞是在一個具體的句子中能夠激起框架的詞,由于一個框架可看作是刻畫一個小的抽象的“場景”,因此可以通過計算歧義目標(biāo)詞可能激起的框架與歧義目標(biāo)詞所處的場景的匹配程度,從而為歧義目標(biāo)詞在給定的場景中選擇合適的框架。
因而,框架排歧任務(wù)可形式化描述為:
對于歧義目標(biāo)詞T能夠激起n個的框架,記為F={f1,f2,...,fn}。T 出現(xiàn)在某個確定的場景S中,漢語框架排歧的任務(wù)就是根據(jù)給定的場景S,在n個框架中選擇一個最合適的框架,記為式(1)。
其中,R用來計算每個框架和場景的匹配程度。
本文在參照文獻(xiàn)[6]和文獻(xiàn)[7]的特征基礎(chǔ)上,利用哈爾濱工業(yè)大學(xué)LTP[22]平臺對語料進(jìn)行詞法和句法分析,將可以激起多個框架的目標(biāo)詞元看作是支配其他成分的“控制項”,句中與“控制項”具有依存關(guān)系的成分(“依存項”)就是控制項激起的框架所對應(yīng)的框架元素[23]。本文使用豐富的詞法和依存句法特征作為特征空間,其中,詞法特征包括在不同位置的詞、詞性和命名體識別特征。這些位置包括傳統(tǒng)的BOW上下文和一些基于句法依存樹結(jié)構(gòu)的句法關(guān)系。句法特征包括目標(biāo)詞與其父節(jié)點和子節(jié)點之間的依存關(guān)系。目標(biāo)詞父節(jié)點的特征有詞、詞性與目標(biāo)詞的依存關(guān)系類型。子節(jié)點的特征選取與父節(jié)點一樣的特征。依存關(guān)系類型,使用LTP分析器中定義的24種依存關(guān)系類型。
為了考察傳統(tǒng)的人工特征選擇方法對漢語框架排歧性能的影響,本文選取文獻(xiàn)[6]和文獻(xiàn)[7]中對漢語框架排歧性能顯著提升的一些特征,并首次選用對語義理解貢獻(xiàn)最大的4種依存關(guān)系類型(主謂關(guān)系 SBV(subject-ver b)、動賓關(guān)系 VOB(ver bobject)、狀中結(jié)構(gòu) ADV(adver bial)和定中關(guān)系A(chǔ)TT(attribute))的子節(jié)點作為特征,最終設(shè)計出10個特征模板,如表1所示。
表1 人工特征模板
圖1給出了對漢語句子“奧巴馬表示,他想下次帶夫人和孩子來長城?!崩肔TP進(jìn)行依存句法分析后,得到的結(jié)果。
在圖1中,兩個詞匯之間有弧相連則說明兩詞之間存在某種依存關(guān)系,且弧是從父節(jié)點指向子節(jié)點。例如,“奧巴馬”和“表示”之間存在主謂關(guān)系(SBV),且前者是后者的子節(jié)點。在上面的這個例句中,“表示”和“想”都是歧義的目標(biāo)詞,它們分別能夠激起的框架有“代表”、“陳述”、“表達(dá)”和“觀點”、“渴望”。表2列出了具體的特征值。
圖1 LTP自動分析的依存句法分析樹
表2 例句的特征值取值
依存句法特征
本文采用貪心策略算法設(shè)計了一種自動特征選擇方法,即為每個歧義詞元選擇獨立的特征模板。這種方法的主要思想是:在給定的特征集中,每次從中選出一個特征模板項,并對其進(jìn)行打分,每次評分后,只保留得分最高的特征項,直到相鄰兩次的得分不再增加。在實驗中窗口特征值設(shè)置為[-1,1]和[-2,2],具體的特征項描述如表3所示。
表3 特征項描述
由于為每個詞元選擇獨立的特征模板時,語料規(guī)模相對較小,容易出現(xiàn)數(shù)據(jù)稀疏和過擬合的問題,導(dǎo)致特征模板項選擇的偶爾性增加。為了避免這些問題,本文除了使用5-fold交叉驗證方法外,還設(shè)置了特征模板項的優(yōu)先級(relate>ne>pos>cont)。
自動特征模板選擇算法如下:
算法分析:
算法中的主要操作就是比較查找和計算,計算是線性的,而比較操作接近n2。因此算法的時間復(fù)雜度為O(n2)。由于計算最大值和Score值需要獨立進(jìn)行,所以算法的空間復(fù)雜度為O(2n)。
而人工特征選擇方法的時間復(fù)雜度為O(2n),空間復(fù)雜度為O(n2)。無論時間復(fù)雜度還是空間復(fù)雜度,自動特征選擇算法都要優(yōu)于人工特征選擇方法。
本文實驗中所用的語料均來自山西大學(xué)構(gòu)建的CFN語料庫。實驗前期從281個詞元中對16個詞元進(jìn)行語料的擴(kuò)充,針對每個詞元從北京大學(xué)CCL語料庫中選取合適的句子進(jìn)行擴(kuò)充,語料規(guī)模從原有的7個詞元擴(kuò)充至23個詞元,涉及的框架從14個增加到38個,句子數(shù)從原有的1600條擴(kuò)充至2827條。表4是實驗中所用到的詞元,以及這些詞元可能激起的框架的一個分配情況。
表4 詞元和框架的分配情況
給定一個目標(biāo)詞ti(i=1,2,...,N),N 為所選詞元的總數(shù)(在本文,N=23),在5-f ol d交叉驗證下,全部目標(biāo)詞的分類精確率計算如式(2)、式(3)所示。
其中,sij是目標(biāo)詞ti的第j份交叉驗證試驗中測試?yán)涞膫€數(shù),cij是目標(biāo)詞ti的第j份交叉驗證中框架分類正確的測試?yán)鋫€數(shù),pi稱為第i個目標(biāo)詞的精確率。
本節(jié)實驗主要用來驗證本文提出的自動特征模板選擇算法的有效性,并與文獻(xiàn)[6]和文獻(xiàn)[7]中的方法以及本文設(shè)計的人工特征模板的選擇方法進(jìn)行對比分析。
4.3.1 人工特征選擇方法的實驗結(jié)果與分析
表5列出了使用表1中設(shè)計的10個特征模板,選用最大熵模型訓(xùn)練,并進(jìn)行5-f ol d交叉驗證得到的實驗結(jié)果。實驗中最大熵分類器使用的是張樂博士[24]開發(fā)的最大熵工具包,采用LBFGS參數(shù)估計方法,實驗中最大熵模型的參數(shù)采用最大熵分類器默認(rèn)的參數(shù)設(shè)置。
從使用人工選擇特征方法得到的實驗結(jié)果,可以得出以下4個結(jié)論。
(1)使用基本特征和父節(jié)點詞性、與父節(jié)點之間的依存關(guān)系組成的特征模板(T7特征模板),取得了最好的結(jié)果77.06%。這是因為,控制項與依存項之間的依存關(guān)系類型要比依存邊更能有效地反映出兩者之間的關(guān)系,在LTP平臺中共定義了24種依存關(guān)系類型,而控制項與依存項之間的邊組合卻有成千上萬種。所以,這種特征在一定程度上緩解了數(shù)據(jù)稀疏問題。同時也表明,依存句法特征對于漢語框架排歧任務(wù)是有幫助的,在樹結(jié)構(gòu)上的依存關(guān)系能夠捕獲更多的句子信息。
(2)在基本特征基礎(chǔ)上添加子節(jié)點的詞特征(T8特征模板)后性能下降。這是由于詞特征的稀疏問題導(dǎo)致性能的下降。
表5 基于人工特征選擇方法的漢語框架排歧的實驗結(jié)果/%
(3)4種主要類型的子節(jié)點特征(T8、T9、T10特征模板)的加入使系統(tǒng)的性能下降。從語言學(xué)角度上看,在一個依存句法樹上,控制項與其依存項共同組成了一個“語義團(tuán)”,該結(jié)構(gòu)在一定程度上能夠表達(dá)句子的部分語義,而控制項的語義代表了整個“語義團(tuán)”的語義。
(4)不同的特征取得標(biāo)注最高精確率時對應(yīng)的窗口大小是不同的,有些特征在窗口較小時結(jié)果比較好,有些隨著窗口增大不斷提高。如表6中的T3模板在窗口大小為1時,取得最高的精確率,T9模板隨著窗口的增大而不斷提高。
4.3.2 自動特征選擇方法的實驗結(jié)果
表6中列出了每個詞元使用自動特征選擇算法得到的特征模板及特征模板的模板項數(shù)。其中,每個特征模板的模板項由詞的位置特征以及詞法和句法特征構(gòu)成,例如,“w1_relate”表示的是在目標(biāo)詞左邊第一個詞與其父節(jié)點的依存關(guān)系類型。
表6 使用自動特征模板的結(jié)果
表7 每個人工特征模板和自動特征模板的結(jié)果對比/%
通過分析和比較表6和表7中的結(jié)果,從中可以發(fā)現(xiàn),使用自動特征選擇方法相比于使用人工特征選擇方法具有以下優(yōu)點。
(1)直觀地,自動特征選擇方法沒有人工特征選擇方法在人力和時間的花費大,并且特征項數(shù)明顯減少。
(2)自動特征選擇方法可以有效地減少大數(shù)據(jù)的特征集合中的噪音特征和冗余特征,而這些噪音特征和冗余特征可能導(dǎo)致訓(xùn)練的有效性降低和不合理的參數(shù)產(chǎn)生。這些不合理的參數(shù)不能有效地評估訓(xùn)練集,而自動特征模板的選擇恰恰可以很好地的解決這一問題。
(3)為每個詞元自動選擇的特征模板,能夠有效地利用每個詞元的語義特性,整體上,使用自動特征模板要優(yōu)于使用人工特征選擇方法。
值得注意的是,并不是所有的歧義目標(biāo)詞使用本文提出的自動特征選擇方法后,結(jié)果都有所提升,其原因是,一方面,本文的自動特征選擇方法使用的貪心策略,得到的結(jié)果是局部最優(yōu)的;另一方面,為了實驗的方面,本文只選用了4種類型的特征作為特征項,不像人工特征選擇方法使用了豐富的依存特征。
4.3.3 對比實驗結(jié)果
本文用 most-frequent-fra me[4]作為baseline。
為了使自動特征選擇方法有效地解決框架排歧任務(wù),本文做了基于最大熵模型和SV M模型的自動特征選擇方法的對比實驗,具體的實驗結(jié)果如表8所示。
表8 基于不同模型的自動特征選擇方法的結(jié)果對比
從表8中可以看出,最大熵模型優(yōu)于SV M模型。因此,本文采用最大熵模型和4.1節(jié)中的語料,使用文獻(xiàn)[6]和文獻(xiàn)[7]中最好的特征模板和5-fold交叉驗證方法進(jìn)行實驗,并對所得的結(jié)果做了比較,具體的詳見表9。
表9 對比實驗的結(jié)果
從表9中可以看出,使用自動特征選擇方法要明顯優(yōu)于其他實驗結(jié)果。文獻(xiàn)[6-7]的結(jié)果,比本文采用的人工特征選擇方法得到的結(jié)果高,一方面,是因為文獻(xiàn)[6]中沒有加入子節(jié)點的詞特征和詞性特征;另一方面,文獻(xiàn)[7]中沒有使用4種依存關(guān)系類型的子節(jié)點作為特征。
表10 基于詞法層面(詞+詞性特征)的實驗結(jié)果對比
表11 基于句法層面(詞法特征+句法特征)的實驗結(jié)果對比
表10-11列出了本文提出的自動特征選擇方法與文獻(xiàn)[6和文獻(xiàn)[7的方法從詞法層面和句法層面的對比結(jié)果??梢钥闯?,本文提出的自動特征選擇方法無論是從哪個層面,都要優(yōu)于文獻(xiàn)[6]和文獻(xiàn)[7]的方法,特別是,在詞法層面要優(yōu)于人工特征選擇方法。
本文提出了一種使用自動特征選擇算法進(jìn)行漢語框架排歧的方法,該方法克服了人工選擇特征的繁瑣,使特征模板大大簡化,排歧結(jié)果有明顯的提升。此外,依存特征對漢語框架排歧的性能有很大的作用,特別是,父節(jié)點特征的加入,使?jié)h語框架排歧的性能有顯著性地提升。
下一步的工作主要集中在以下三個方面。首先,在現(xiàn)有的語料庫基礎(chǔ)上,通過自動的方法擴(kuò)建一個更大規(guī)模的語料庫;其次,在自動特征選擇方法的候選特征項中,加入豐富的父節(jié)點特征及更多的語義特征,如框架元素和框架間的語義關(guān)系;再次,將本文提出的用自動特征選擇方法在英文上進(jìn)行實驗,并與中文的結(jié)果作對比分析;最后,嘗試使用其他機(jī)器學(xué)習(xí)的方法,結(jié)合自動特征模板的選擇算法進(jìn)行漢語框架排歧。
[1]李茹.漢語句子框架語義結(jié)構(gòu)分析技術(shù)研究[D].山西大學(xué)博士學(xué)位論文.2012.
[2]郝曉燕,劉偉,李茹,等.漢語框架語義知識庫及軟件描述體系[J].中文信息學(xué)報,2007,21(5):96-100.
[3]Ken Litkowski.CLR:Integration of Frame Net in a Text Representation System[C]//Pr oceedings of the 4th International Workshop on Semantic Evaluations,2007:113-116.
[4]Cos min Adrian Bejan,Hathaway Chris.UTD-SRL:A Pipeline Architecture f or Extracting Frame Semantic Str uctures[C]//Proceedings of the 4t h Inter national Workshop on Semantic Evaluations,2007:460-463.
[5]Richard Johansson,Nugues Pierre.LTH:Semantic Str ucture Extraction using Nonprojective Dependency Trees[C]//Proceedings of the 4th Inter national Wor kshop on Semantic Evaluations 2007227-230.
[6]李濟(jì)洪,高亞慧,王瑞波,等.漢語框架排歧中的歧義消解[J].中文信息學(xué)報,2011,25(3):38-44.
[7]Ru Li,Haijing Liu,Shuanghong Li.Chinese Frame I-dentification using T-CRF Model[C]//Pr oceedings of Inter national Conference on Co mputational Linguistics,2010:674-682.
[8]李涓子,黃昌寧,楊爾弘.一種自組織的漢語詞義排歧方法[J].中文信息學(xué)報,1998,13(3):1-8.
[9]鄭杰,茅于杭,董清富.基于語境的語義排歧方法[J],中文信息學(xué)報,2000,14(5):1-7.
[10]劉鳳成,黃德根,姜鵬.基于AdaBoost,MH算法的漢語多義詞消歧[J].中文信息學(xué)報,2006,20(3):6-13.
[11]吳云芳,金澎,郭濤.基于詞典屬性特征的粗粒度詞義消歧[J].中文信息學(xué)報,2007,21(2):3-8.
[12]郭宇航,車萬翔,劉挺.基于語言模型驗證的詞義消歧語料獲?。跩].中文信息學(xué)報,2008,22(6):38-42.
[13]陳浩,何婷婷,姬東鴻,等.基于k-means聚類的無導(dǎo)詞義消歧[J].中文信息學(xué)報,2005,19(4):10-16.
[14]劉冬明,楊爾弘,方瑩.漢英雙語平行語料庫的詞義標(biāo)注[J].中文信息學(xué)報,2005,19(6):50-56.
[15]郭宇航,車萬翔,劉挺.基于語言模型驗證的詞義消歧語料獲?。跩].中文信息學(xué)報,2008,22(6):38-42.
[16]何徑舟,王厚峰.基于特征選擇和最大熵模型的漢語語義消歧[J].軟件學(xué)報,2010,21(6):1287-1295.
[17]You Liping,Kaiying Liu.Building Chinese Frame Net Database[C]//Proceedings of IEEE NLP-KE'05,2005.
[18]Charles J Fill more.Frame Semantics[C]//Proceedings of Linguistic in t he Mor ning Cal m Hanshin Publishing Company,1982:111-137.
[19]Collin F Baker,Charles J Fill more,John B Lowe.The Ber keley Frame Net Project[C]//Proceedings of the COLING-ACL,1998:86-90.
[20]劉開瑛.漢語框架語義網(wǎng)構(gòu)建及其應(yīng)用技術(shù)研究[J].中文信息學(xué)報,2011,25(6):46-53.
[21]劉開瑛.漢語框架語義網(wǎng)(CFN)構(gòu)建現(xiàn)狀[R].計算語言學(xué)2008年青年學(xué)生會議大會邀請報告.
[22]劉挺,車萬翔,李正華.語言技術(shù)平臺[J].中文信息學(xué)報,2011,25(6):53-61.
[23]由麗萍,范開泰,劉開瑛.漢語語義分析模型研究綜述[J].中文信息學(xué)報,2005,19(6):57-63.
[24]http://ho mepages.inf.ed.ac.uk/s0450736/maxent toolkit.ht ml.