【NLP_Stanford課堂】拼寫校訂

在多種應用好比word中都有拼寫檢查和校訂功能,具體步驟分爲:ide

  1. 拼寫錯誤檢測
  2. 拼寫錯誤校訂:
    • 自動校訂:hte -> the
    • 建議一個校訂
    • 建議多個校訂

拼寫錯誤類型:

  1. Non-word Errors非詞錯誤:即寫了一個不是單詞的詞,好比graffe並不存在,應校訂爲giraffe
    • 檢測方法:認爲任一不在字典中的詞都是一個非詞錯誤,所以字典自己越大越好
    • 校訂方法:爲錯誤詞產生一個候選,其是跟錯誤詞類似的真詞,而後選擇加權編輯距離最短或者信道噪聲機率最高的那個詞。
  2. Real-word Errors真詞錯誤
    • 印刷錯誤:three->there
    • 認知錯誤(同音異形字):piece -> peace; too -> two
    • 檢測方法:因爲每一個真詞可能都是一個錯誤詞,所以咱們爲每一個詞都產生一個候選集,包括該詞自己、跟該詞發音或拼寫類似的詞(編輯距離爲1的英文單詞)、同音異形詞。
    • 校訂方法:按照信道噪聲或者分類器選擇最好的候選詞。

1、非詞錯誤校訂

基本方法:使用The Noisy Channel Model of Spelling信道噪聲模型學習

假設初始詞通過一個噪聲信道輸出一個噪聲詞,即爲可能的錯誤詞,咱們旨在對該噪聲信道建模,從而使得在解碼階段可以根據噪聲詞獲得一個猜想詞,其跟初始詞一致,即找到錯誤詞正確的拼寫。測試

而信道噪聲咱們視之爲一個機率模型,以下:this

輸入:一個錯誤詞xidea

旨在:找到一正確的詞wspa

要求:3d

P(w)稱爲語言模型表示單詞w爲一個單詞的機率,P(x|w)稱爲信道機率(或錯誤機率)表示若是是w,x是w拼錯的詞的機率。blog

例子:three

設:有一個錯誤詞「acress」開發

1. 產生候選詞:

  • 類似拼寫詞:跟錯誤詞之間小的編輯距離
    • 採用Damerau-Levenshtein edit distance,計算的操做包括:插入、刪除、置換和兩個相鄰字母之間的換位transposition,
    • 如下是與「acress」編輯距離=1的列表:
    • 80%錯誤詞與正確詞之間的編輯距離爲1,大部分的編輯距離都小於等於2
    • 容許插入空格或者連字符-:thisidea -> this idea; inlaw -> in-law
  • 類似發音詞:跟錯誤詞的發音之間小的編輯距離

2. 選擇最優候選詞:套用公式

a) 計算語言模型P(w):能夠採用以前說過的任一語言模型,好比unigram、bigram、trigram,大規模拼寫校訂也能夠採用stupid backoff。

b) 計算信道機率P(x|w):首先得到多個單詞拼錯的列表,而後計算混淆矩陣,而後按照混淆矩陣計算信道機率。

設:

有:

x和y爲任一字母a-z,計數count表示後面那張狀況發生的次數,其中插入和刪除的狀況都依賴於前一個字符,sub[x,y]的混淆矩陣結果以下:

而後按照上述混淆矩陣計算信道機率:

c) 總體機率計算實例以下:

也能夠選用語言模型計算總體機率,好比:使用bigram或trigram語言模型

3. 結果評估方法:

使用拼寫錯誤測試集:

 2、真詞校訂

25-40%的拼寫錯誤都是真詞錯誤。

具體步驟:

實例:

爲了方便起見,咱們假定每一個句子中只有一個拼寫錯誤,因此有:

要求從中找到一個組合序列使得序列的機率最高。

計算P(W):

方法1:語言模型,好比unigram、bigram等

方法2:信道模型:跟「一」中的方法同樣,但還須要額外計算沒有錯誤的機率P(w|w),由於候選集中還包括自身詞。

計算P(w|w):其徹底依賴於應用自己,表示一個詞可能被拼錯的機率,不一樣的應用機率不一樣:

3、經典系統state of art

1. HCI issues in spelling

  • 若是對校訂結果很是自信:自動校訂
  • 通常自信:給定一個最好的校訂方案
  • 一點點自信:給定一個校訂方案的列表
  • 沒有自信:給錯誤詞作出標記,不校訂

2. 經典噪聲信道

實際應用中,信道機率和語言模型機率的權重並不是一致,而是採用以下的計算公式:

而後在開發測試數據集中訓練學習lambdas的值。

3. 語音錯誤模型

針對有類似發音的錯誤拼寫的糾正

a) Metaphone, used in GNU aspell

  • 將錯誤拼寫轉換爲變音發音,規則以下:
  •  

  • 而後找到跟錯誤拼寫的發音的編輯距離爲1-2的詞
  • 給結果列表打分,按照:
    • 候選詞跟錯誤詞之間的加權編輯距離
    • 候選詞的發音與錯誤詞發音的編輯距離

4. 信道模型的升級版

a) 容許更多的操做(Brill and Moore 200)

b) 在信道中結合發音(Toutanova and Moore 2003)

c)在計算信道機率P(x|w)時考慮更多的影響因素

5. 基於分類器的真詞拼寫校訂方法

  • 考慮更多的特徵
  • 針對特定詞對創建分類器
相關文章
相關標籤/搜索