王 荀,李素建,宋 濤,姜伯平
(北京大學(xué) 計(jì)算語言學(xué)教育部重點(diǎn)實(shí)驗(yàn)室,北京 100871)
在現(xiàn)階段自然語言處理研究中,統(tǒng)計(jì)學(xué)方法應(yīng)用比較廣泛。但是單純基于統(tǒng)計(jì)[1-2],而不對文本信息進(jìn)行理解不能保證信息覆蓋的全面性。此處以及下文,我們以自動摘要為例,說明理解文本信息的重要性。自動摘要是自然語言處理的一個(gè)重要任務(wù),它試圖將長文檔壓縮為不損失重要信息的短文檔。常用的方法可以有抽取式和生成式兩種,其中抽取式方法應(yīng)用比較廣泛,它主要是從文中抽取句子構(gòu)成摘要。
抽取式方法多以詞頻為主要特征[3],傾向關(guān)注出現(xiàn)頻次較高的信息。但是人們關(guān)注的側(cè)面不同,重要信息并不完全等同于出現(xiàn)頻次較高的信息。常常有某些信息雖然重要,卻由于頻次的關(guān)系而不能被選入摘要。特別是在多文檔新聞?wù)?,新聞?bào)道同質(zhì)化比較嚴(yán)重,一部分信息的冗余度較高,而另一部分人們關(guān)注的信息又由于出現(xiàn)頻次不夠而被舍棄。在我們參加的TAC 2010[4]的自動摘要任務(wù)中,就提出要求,好的摘要須盡可能全面地報(bào)道整個(gè)事件,要涵蓋不同內(nèi)容側(cè)面(aspect)的信息。
解決問題的一個(gè)方法是減少冗余,這樣可以增加信息量,從而盡可能地提高信息覆蓋的全面性。其中MMR[5]是一種常用的策略,但MMR也主要是從詞語層的相似度出發(fā),并沒有進(jìn)行語義的分析,因而不能徹底解決這個(gè)問題。一個(gè)較好的辦法是對文本進(jìn)行語義分析,然后根據(jù)文本所描述的信息進(jìn)行取舍。但是完全的語義分析難度較大,正確率較低,實(shí)用性較差。本文中,我們提出使用FrameNet[6]語料庫作為知識庫,對文本進(jìn)行語義分析,識別出文本所屬的框架,從而幫助判斷文本所描述的內(nèi)容側(cè)面,增強(qiáng)摘要的全面性。其中框架識別是本文工作的重點(diǎn),它也可以看作是一種語義消歧,這里語義的表示方式采用了框架。在框架消歧任務(wù)中,由于其他語義特征的識別并不成熟,我們主要選用了詞法和句法特征。本文是在應(yīng)用系統(tǒng)的需求下,為了識別內(nèi)容側(cè)面提出了框架識別,目前還沒有見到公開的評測。
本文的內(nèi)容組織如下: 第二節(jié)介紹內(nèi)容側(cè)面和框架語義學(xué),以及作為知識庫的FrameNet語料庫;第三節(jié)介紹我們的系統(tǒng)設(shè)計(jì),即使用FrameNet作為知識庫,綜合使用多種特征對文本的框架進(jìn)行識別;第四節(jié)說明實(shí)驗(yàn)方法和結(jié)果,給出相應(yīng)的分析,并嘗試使用框架進(jìn)行內(nèi)容側(cè)面的發(fā)現(xiàn);第五節(jié)進(jìn)行總結(jié),并展望未來的工作。
框架語義學(xué)(Frame Semantic)最早由Fillmore[7-8]在1976年提出。它認(rèn)為一個(gè)框架(frame)可以表示一個(gè)場景,在框架中,動詞是核心,其他成分是這個(gè)動詞的配價(jià)成分。而動詞和框架之間的關(guān)系是多對多的。同一個(gè)框架可以使用不同的核心動詞,而每個(gè)動詞也可以在不同的框架中被使用。我們對文本的理解就是確定文本的核心動詞以及其對應(yīng)的框架,了解了這個(gè)框架就知道了文本描述的內(nèi)容,從而幫助我們發(fā)現(xiàn)文本所描述的內(nèi)容側(cè)面。
FrameNet語料庫*http://framenet.icsi.berkeley.edu/index.php是在框架語義學(xué)指導(dǎo)下建立的,它給出了一個(gè)詞語所屬的框架,在每個(gè)框架下的配價(jià)表示并附有例句。我們將利用這些例句和配價(jià)表示作為特征,通過相似度計(jì)算完成對文本的框架識別,實(shí)現(xiàn)對句子的淺層理解,在此基礎(chǔ)上再判斷其是否含有摘要所需要的內(nèi)容側(cè)面。
文本中的每一個(gè)句子都可以根據(jù)其語義[9],將其投射到一個(gè)框架。本文將進(jìn)一步利用識別出來的句子框架,基于框架內(nèi)部含有的語義角色,將框架映射到不同的內(nèi)容側(cè)面上。
這兒我們采用TAC2010自動摘要任務(wù)定義的內(nèi)容側(cè)面,以襲擊事件(Attacks: Criminal/Terrorist)為例,定義了如下可能的內(nèi)容側(cè)面如表1所示。
表1 內(nèi)容側(cè)面列表
其中WHAT、WHEN、WHERE等內(nèi)容側(cè)面可以使用命名實(shí)體識別等方法抽取。但是WHY、DAMAGES、COUNTERMESURES等信息則需要對句子內(nèi)容進(jìn)行分析然后才能做出判斷。這些信息一般只在很少的幾篇報(bào)道中以較小的篇幅出現(xiàn),單純依靠統(tǒng)計(jì)很難抽取出來。在進(jìn)行文本理解,識別出其中所描述的框架之后,這個(gè)判斷就很容易做出。例如,損失(DAMAGES)側(cè)面的內(nèi)容,一般由損壞、后果等框架進(jìn)行描述。而預(yù)防措施類(COUNTERMESURES)側(cè)面的內(nèi)容,可由后續(xù)、措施等框架描述。這樣就可以將框架進(jìn)一步映射到內(nèi)容側(cè)面。下文我們將以襲擊事件之WHO_AFFECTED為例,進(jìn)行內(nèi)容側(cè)面的識別。
系統(tǒng)如圖1所示。首先對測試文本進(jìn)行預(yù)處理,對測試文本中的每一句S,抽取其中的動詞v1、v2、v3…。在Frame Net語料庫中進(jìn)行查詢,每個(gè)動詞都對應(yīng)有若干框架,取出這些動詞對應(yīng)的全部框架記為f1、f2、f3…,為備選框架集合。對每個(gè)框架fi,取出它對應(yīng)例句Sij。根據(jù)一系列特征計(jì)算例句Sij和原句S的相似度,得分最高的例句Sij對應(yīng)的框架fi就是原句S所對應(yīng)的框架??蚣茏R別完畢之后,就可以根據(jù)句子的框架判斷出其描述的內(nèi)容側(cè)面。
圖1 框架識別流程
我們選擇的實(shí)驗(yàn)語料是新聞文本,識別內(nèi)容側(cè)面為自動摘要任務(wù)服務(wù),預(yù)處理還要過濾掉不適合作為摘要的句子。如報(bào)頭(Xinhua Agency,Beijing)等和其他一些不含動詞的句子。
要計(jì)算原句和例句之間的語義相似度,我們選用了詞特征和句法特征。而語義特征的識別技術(shù)目前還不成熟,現(xiàn)階段很難使用。此處我們選擇詞袋、詞性序列、語法分析等特征。
(1) 詞袋。另外我們假設(shè)當(dāng)兩個(gè)句子的相似度高于一個(gè)閾值時(shí),二者所屬的框架相同,此時(shí)系統(tǒng)賦予該特征一個(gè)較高的權(quán)重。
(2) 詞性序列。詞性序列比詞袋更抽象,它可以反映句子本身的搭配信息和結(jié)構(gòu)信息等,兩個(gè)描述相似場景的句子常常因?yàn)閷?shí)詞不同而導(dǎo)致句子相似度較低,但是由于句子結(jié)構(gòu)相似,詞性序列的相似度一般會很高。因此我們將句子的詞性序列作為一個(gè)重要的特征。
(3) 依存分析。使用stanford parser對原句進(jìn)行分析,可以得到依存分析的結(jié)果,該結(jié)果可以說明句子內(nèi)部成分之間的依賴關(guān)系。其中比較重要的是動詞和它所支配詞語之間的依賴關(guān)系。通常來說相同的依存關(guān)系越多,兩個(gè)句子的語義也越相似。
我們使用以上三種特征計(jì)算例句和原句之間的語義相似度,然后將其綜合起來,作為最終的結(jié)果,以衡量兩個(gè)句子——例句和原句之間的語義相似性。
比較各個(gè)例句與原句的語義相似度,我們選擇得分最高的例句,把該例句對應(yīng)的框架作為原句對應(yīng)的框架,即:
Si表示第i個(gè)句子,F(xiàn)j表示第j個(gè)框架。Sjk表示第j個(gè)框架的第k個(gè)例句。Frame(Si)表示Si所屬于的框架編號。Sim(Si,Sjk)由三部分構(gòu)成。
(1) 基于詞袋的相似度計(jì)算
該相似度使用兩個(gè)句子的共現(xiàn)詞比例來度量。記句Si和Sjk之間共現(xiàn)詞為m,兩個(gè)句子的長度分別為n1,n2。另外設(shè)置一個(gè)閾值smax,定義其相似度為:
(2) 基于詞性序列的相似度計(jì)算
詞性序列的相似度定義為兩個(gè)序列之間的Levenshtein distance,即從序列A1變化到序列A2需要的最少的增、刪、移位操作步驟數(shù)。
PosSim(Si,Sjk)=L_dis(Posi,Posjk)
其中POSi是第Si個(gè)句子的詞性標(biāo)注序列。POSjk是第j個(gè)框架的第k個(gè)例句的詞性標(biāo)注序列。
(3) 基于依存分析結(jié)果之間的相似度
依存語法關(guān)注句子成分之間的依存關(guān)系。我們使用Stanford Parser來對句子進(jìn)行依存分析。依存分析給出的結(jié)果形如: relationship(word1,word2)。其中word1和word2是依賴對,relationship是依賴的關(guān)系。相似度為原句和例句中共現(xiàn)的依賴對以及關(guān)系占全部分析結(jié)果的比例。
(4) 總的相似度計(jì)算
例句和原句之間的總相似度由以上三個(gè)相似度組成,我們采用簡單的策略,使用線性加權(quán)平均的方法綜合這三個(gè)得分得到一個(gè)最終得分:
Frame(Si)=argmaxj(Sim(Si,Fj))其中Fj遍取所有可能對應(yīng)的框架。
下文的實(shí)驗(yàn)中將根據(jù)實(shí)驗(yàn)的結(jié)果對三個(gè)參數(shù)進(jìn)行調(diào)整。
我們的訓(xùn)練語料和測試語料都選自TAC2010自動摘要任務(wù)的測試語料。使用FrameNet語料庫作為知識庫,綜合采用多個(gè)特征對每個(gè)句子所描述的框架進(jìn)行識別。使用的工具有Porter Stemmer*http://tartarus.org/~martin/PorterStemmer、Stanford Parser*http://nlp.stanford.edu/software/lex-parser.shtml等。評測指標(biāo)采用常用的準(zhǔn)確率。
我們使用三組不同的參數(shù),對1 000個(gè)隨機(jī)選擇的句子進(jìn)行框架識別,然后抽取出三組測試中標(biāo)注結(jié)果一致的500個(gè),經(jīng)過人工檢查后抽取出100個(gè)作為訓(xùn)練語料。測試語料同樣選自TAC2010的自動摘要任務(wù)測試語料。隨機(jī)選擇100個(gè)句子。從中剔除較短的(長度不超過四個(gè)單詞)和不含有動詞的句子,再繼續(xù)選取句子補(bǔ)足100個(gè)。
對語料進(jìn)行預(yù)處理,需要去除不適合作為摘要的句子,如報(bào)頭等;使用規(guī)則簡化xx said that, It’s said/believed… that等句式。使用stanford parser對原句進(jìn)行處理,得到詞性標(biāo)注和依存分析的結(jié)果。根據(jù)詞性標(biāo)注結(jié)果,找出句中所有的動詞并抽取詞干,對FrameNet語料庫進(jìn)行同樣的處理,以保證同一個(gè)動詞被映射到同一個(gè)詞根上面。
4.2.1 分別基于三種特征的實(shí)驗(yàn)
首先我們分別使用三個(gè)特征,對訓(xùn)練語料的框架進(jìn)行識別。圖2給出了分別基于三種特征進(jìn)行框架識別的準(zhǔn)確率。從圖中我們可以看出,詞性序列特征效果比較明顯。相比之下,另外兩個(gè)特征效果較差,因此在綜合三個(gè)得分的時(shí)候,可以考慮將詞性序列特征權(quán)重設(shè)置高一點(diǎn)。
圖2 分別基于三種特征的實(shí)驗(yàn)
4.2.2 三個(gè)特征之間關(guān)系的分析
對于每個(gè)句子,根據(jù)三個(gè)特征可得到三個(gè)相似度得分。我們將訓(xùn)練語料上的三個(gè)相似度得分值歸一化。然后做散點(diǎn)圖,如圖3(a)所示,可以看出三個(gè)特征之間有一定關(guān)系。我們再將數(shù)據(jù)按照詞性序列相似度得分排序,如圖3(b)所示,可以看出詞袋和依存分析結(jié)果這兩類特征的相似度得分關(guān)系較緊密,說明二者有一定的相關(guān)關(guān)系,且與詞性序列特征略有正相關(guān)。*相關(guān)分析在相似度得分值歸一化之后進(jìn)行。
圖3 三個(gè)相似度得分之間的關(guān)系
4.2.3 參數(shù)調(diào)整
根據(jù)實(shí)驗(yàn)1我們調(diào)整參數(shù)λ2使之最大,然后調(diào)整另外兩個(gè)參數(shù)。調(diào)整參數(shù)的結(jié)果如圖4和圖5所示: 首先控制λ2=1,λ1=0調(diào)整λ3.
由圖4所示,可令λ3=0.6;同樣,在λ1=1,λ3=0.6情況下,調(diào)整λ2。
Sim(Si,Fj)=max{λ1SenSim(Si,Sjk)
+λ2PosSim(Si,Sjk)
圖4 調(diào)整參數(shù)λ3
圖5 調(diào)整參數(shù)λ2
+λ3DepSim(Si,Sjk)}
由圖可以看出當(dāng)上式的參數(shù)設(shè)置為{0.5,1,0.6}時(shí),可以取得最好結(jié)果。
4.2.4 框架識別和服務(wù)于內(nèi)容側(cè)面識別
本小節(jié)的實(shí)驗(yàn)是為了驗(yàn)證框架的識別有利于內(nèi)容側(cè)面的發(fā)現(xiàn)。測試語料為人工標(biāo)注了框架的100個(gè)句子。在人工標(biāo)注結(jié)果中,這100個(gè)句子屬于65個(gè)框架。我們使用上文選定的{0.5,1,0.6}作為參數(shù),在測試語料上進(jìn)行實(shí)驗(yàn)。在測試結(jié)果中,100個(gè)句子被識別到72個(gè)框架中,其中識別正確的句子有61個(gè),正確率為61%。
我們以哥倫比亞中學(xué)槍擊案事件的WHO_AFFECTED內(nèi)容側(cè)面識別作為例子。通過對框架的定義和框架內(nèi)部包含的語義角色的研究,根據(jù)專家知識預(yù)先人工判斷出其中和WHO_AFFECTED相關(guān)的框架有: killing、Shoot_projectiles、attacking等。報(bào)道該事件的10篇新聞經(jīng)過預(yù)處理后一共有230個(gè)語句,被識別后屬于100個(gè)框架。其中屬于和WHO_AFFECTED相關(guān)的框架有2個(gè): killing、Shoot_projectiles。識別為killing的句子有8個(gè),Shoot_projectiles的句子有3個(gè)。搜索空間縮小為原來的4.7%。而經(jīng)過人工檢查,230個(gè)句子中共有9個(gè)和WHO_AFFECTED相關(guān)。在識別為killing和Shoot_projectiles的句子中包含了其中的6個(gè)。正確率75%。
通過例子可以看出,該系統(tǒng)可以有效地發(fā)現(xiàn)重要的內(nèi)容側(cè)面,大幅降低搜索空間(從100%到4.7%),為進(jìn)一步分析提供了方便。同時(shí)針對特定的內(nèi)容側(cè)面的識別保持了較高的正確率(75%),可以有效地幫助自動摘要任務(wù)補(bǔ)充內(nèi)容側(cè)面以形成更加全面的摘要。
從實(shí)驗(yàn)的結(jié)果可以看出在綜合使用多個(gè)特征的時(shí)候,在新聞?wù)Z料上框架識別能達(dá)到63%的正確率。我們對分析錯誤的句子進(jìn)行了研究,發(fā)現(xiàn)有以下幾點(diǎn)規(guī)律。
第一,復(fù)句比單句更容易出錯。復(fù)句結(jié)構(gòu)復(fù)雜,包含的動詞比較多,有時(shí)候主要信息在從句里面,有時(shí)候信息在復(fù)句里面,增加了識別的難度;第二,常用動詞的意義種類繁多,F(xiàn)rameNet語料庫中沒有也很難標(biāo)出它們所屬的全部框架。根據(jù)統(tǒng)計(jì),出錯最多的動詞有g(shù)ocome akering等等。這些動詞應(yīng)用廣泛,意義靈活,可以用在很多框架中,難以窮舉;第三,句子包含的內(nèi)容側(cè)面信息和動詞的意義指向并不統(tǒng)一,這是因?yàn)閯釉~描述的場景和句子本身表達(dá)的意思并不統(tǒng)一。另外,句子描述的框架有時(shí)候并不是唯一,但我們的系統(tǒng)只能給每個(gè)句子賦予一個(gè)框架。通常只有意義明確的動詞識別效果比較好,因?yàn)檫@樣的動詞在不同的框架中差別較大,特征明顯。
我們在實(shí)驗(yàn)中綜合采用多個(gè)特征來標(biāo)注句子所屬的框架,取得了較好的效果,說明這些特征較好地反映了句子的語義。下一步可以考慮加入PCFG語法樹特征,來進(jìn)一步提高識別的正確率。在此基礎(chǔ)上我們還將使用機(jī)器學(xué)習(xí)等方法將框架映射到內(nèi)容側(cè)面,完成內(nèi)容側(cè)面的自動識別,以更好地服務(wù)于自動摘要等自然語言處理任務(wù)。
[1] 劉挺,吳巖,王開鑄. 自動文摘綜述[J]. 情報(bào)科學(xué),1998,16(1):63-69.
[2] 秦兵,劉挺, 李生. 多文檔自動文摘綜述[J]. 中文信息學(xué)報(bào),2005,19(6): 13-20.
[3] A. Nenkova, L. Vanderwende. The Impact of Frequency on Summarization[R]. Microsoft Research Technical Report. 2005, MSR-TR-2005-101.
[4] TAC 2010 Guided Summarization Task.
[5] Jaime Carbonell, Jade Goldstein. The use of MMR, diversity-based reranking for reordering documents and producing summaries[C]//Proceedings of the 21st annual international ACM SIGIR conference on Research and development in information retrieval(SIGIR ’98). ACM, New York, NY, USA, 1998, 335-336.
[6] Baker, Collin F., Charles J. Fillmore, et al. The Structure of the Framenet Database[J]. International Journal of Lexicography, 2003, 16(3): 281-296.
[7] Charles J. Fillmore. Frame semantics and the nature of language[J]. Annals of the New York Academy of Sciences: Conference on the Origin and Development of Language and Speech, 1976, 280: 20-32.
[8] Charles J. Fillmore. Frames and the semantics of understanding[J]. Quaderni di Semantica, 1985, 6(2): 222-254.
[9] Boas, Hans C.. A frame-semantic approach to identifying syntactically relevant elements of meaning[C]//Steiner, Petra, Boas, Hans C., Stefan Schierholz (eds.), Contrastive Studies and Valency. Studies in Honor of Hans Ulrich Boas. Frankfurt/New York: Peter Lang,2006:119-149.