1. 程式人生 > >讀《統計自然語言處理》——語義消除歧義

讀《統計自然語言處理》——語義消除歧義

我們知道很多詞語都有很多意思或語義,而在具體的語境中,詞語有某種特定的意思。而獨立於上下文來考慮詞語意思,語義一般都會出現語義歧義。統計自然語言處理不得不考慮如何消除歧義問題。

消除歧義的任務就是確定一個多義詞在一個特定的語境中使用哪一種語義。通過考慮詞彙使用的上下文完全可以確定其具體的語義。那麼如何確定一個詞彙具有的語義,以及從這些語義確定某一種具體的語義呢?

         比較簡單的方法是從一部詞典中給出某個詞彙的定義確定該詞彙具有的語義。但對於大部分詞彙來說,他們的語義和用法並不是簡簡單單能夠根據詞典中的定義來列出,詞典中列出的語義之間有一些是可以清晰分辨的內容,但大部分內容都是不確定的,並且是混合在一起的。而更難的一點是,詞典中每個詞彙只能列出一定數量的語義,而該詞彙在實際的語境中定義的語義不一定能夠從詞典中的語義中找出。而且一個詞還具有不同的詞性,確定一個詞的具體詞性屬於標註的任務,這裡暫不涉及,但我們需要知道同一個詞的不同詞性的確定能夠有效的消除詞彙歧義。

        附加提一下,詞性標記與語義標記的區別:1、兩者的功能不同,詞性只是確定詞彙的詞性,而語義是確定詞彙的含義;2、處理方式不同,確定詞性大多數是用鄰近的結構資訊,結構資訊一般不會用來確定語義,確定語義一般是用一個相隔很遠的實詞,但是對於確定詞性該方法是無效的;3、詞性的標註能夠讓語義的標註更加準確。總之,大部分的詞性標註模型簡單地使用當前上下文,而語義消除歧義通常試圖使用規模廣泛一些地上下文中地實詞

       下面我們來介紹從三種消歧方法。

1、有監督消歧——基於標註訓練集的消歧。

有監督消歧訓練一個已經消歧的語料庫。在該樣本訓練集中,歧義詞w每一次出現都被標註上了一個語義標籤。在眾多的有監督學習演算法中,語義消歧演算法一般使用的是:貝葉斯分類和資訊理論。這兩種演算法證明了完全不同的資訊源是可以應用到消歧演算法中。其中貝葉斯分類是把上下文看作一個無結構詞集,整合了上下文視窗中眾多的詞彙資訊;而資訊理論僅僅考慮上下文中的一個資訊特徵,而該特徵能夠靈敏的反映上下文的結構。正因為該特徵需要靈敏的反映上下文特徵,因此需要謹慎地從大量潛在資訊中選取。

貝葉斯分類器的原理是在一個大的上下文視窗中考慮了歧義詞周圍的詞的資訊。每個實詞都含有潛在的有用資訊,暗示歧義詞的哪個語義被使用。該中分類器不是進行特徵選擇,而是組合了所有特徵。

在語義消歧中,單純的貝葉斯分類器有兩個前提條件:1、上下文中的所有結構和詞語順序都可以被忽略;2、可有重複的單詞集中出現的詞獨立於其他詞。

基於資訊理論的方法:由於貝葉斯分類器使用了一個不太真實的獨立性假設,而且使用上下文視窗中所有的詞的資訊來幫助進行消歧。而資訊理論的方法則是不需要藉助於所有的詞,只需要藉助於單一的上下文特徵,可以可靠地指示出歧義詞地哪一種語義被使用。

2、基於詞典的消歧——建立在詞典資源上。

如果一個詞沒有語義範疇資訊,我們可以求助於它的一般語義描述。基於詞典的消歧方法一般有兩種:

基於語義定義的消歧:認為詞典中詞條本身的定義就可以作為判斷其語義的一個很好的依據條件。

基於類義詞典的消歧:上下文詞彙的語義範疇大體上確定了這個上下文的語義範疇,並且上下文的語義範疇可以反過來確定詞彙的哪一個語義被使用。

在第二語言語料庫翻譯基礎上的消歧:使用雙語詞典。

3、無監督消歧——未標註文字將應用到訓練裡。

前面兩種方法都需要預先知道的資源,不論是基於詞典,需要知道一些基本的詞典資源,還是有監督消歧,需要一些訓練集,這些方法需要的資訊量是否能夠滿足演算法的需求不好確定。無監督消歧不需要這些預先知道的資源,例如語義辨別可以在完全無監督的形式下實現。可以把歧義詞的上下文聚類到很多分組中,然後在這些組之間就可以無標記地辨別他們。但對於語義標記使用完全地無監督,消歧比較難實現。因為語義標註需要提供語義地一些特徵描述。

無監督消歧地優點是更適合區分有細微區別地語義用法,這些語義地細微差別在詞典中不好找到。同時,資訊檢索也可以應用無監督消歧。缺點是不頻繁出現地語義和只有很少搭配的語義很難在無監督消歧中單獨列出來。無監督消歧會由於不同的初始化而引起不同的結果。