基本思想
數(shù)據(jù)平滑的基本思想
調(diào)整最大似然估計的概率值,使零概率增值罗洗,使非零概率下調(diào),“劫富濟(jì)貧”,消除零概率捏鱼,改進(jìn)模型的整體正確率。基本目標(biāo)
測試樣本的語言模型困惑度越小越好酪耕。
-
基本約束
困惑度定義:
- 對于一個平滑的 n-gram穷躁,其概率為
,可以計算句子的概率:
- 假定測試語料
由
個句子構(gòu)成
,那么整個測試集的概率為:
- 模型
對于測試語料的交叉熵:
其中因妇,是測試文本
的詞數(shù)问潭。
-
模型 p 的困惑度
定義為:
PS: n-gram 對于英語文本的困惑度范圍一般為50~1000,對應(yīng)于交叉熵范圍為6~10 bits/word婚被。
數(shù)據(jù)平滑方法1——加1法(Additive smoothing )
-
基本思想: 每一種情況出現(xiàn)的次數(shù)加1狡忙。
例如,對于 uni-gram址芯,設(shè)三個詞灾茁,概率分別為:1/3, 0, 2/3,加1后情況谷炸?
-
舉例
<BOS>John read Moby Dick<EOS>
<BOS>Mary read a different book<EOS>
<BOS>She read a book by Cher<EOS>
詞匯量:|V|=11
平滑以后:
p(Cher|<BOS>) = (0+1)/(11+3) = 1/14
p(read|Cher) = (0+1)/(11+1) = 1/12
p(a|read) = (1+2)/(11+3) = 3/14
p(book|a) = (1+1)/(11+2) = 2/13
p(<EOS>|book)= (1+1)/(11+2) = 2/13
數(shù)據(jù)平滑方法2——減值法/折扣法(Discounting)
1. 基本思想:
修改訓(xùn)練樣本中事件的實際計數(shù)北专,使樣本中(實際出現(xiàn)的)不同事件的概率之和小于1,剩余的概率量分配給未見概率旬陡。
2. Good-Turing 估計
-
基本思想
假設(shè) 是原來訓(xùn)練樣本數(shù)據(jù)的大小拓颓,
是在樣本中正好出現(xiàn)
次的事件的數(shù)目(此處事件為 n-gram),即出現(xiàn) 1 次的n-gram有
個描孟,出現(xiàn) 2 次的 n-gram 有
個, ……驶睦,出現(xiàn)
次的有
個砰左。
那么:
由于我們要減小r,記為::
,所以:
那么场航,Good-Turing估計在樣本中出現(xiàn)r次的事件的概率為:
-
舉例說明
假設(shè)有如下英語文本缠导,估計2-gram概率:
<BOS>John read Moby Dick<EOS>
<BOS>Mary read a different book<EOS>
<BOS>She read a book by Cher<EOS>
……
從文本中統(tǒng)計出不同 2-gram 出現(xiàn)的次數(shù):
<BOS> John 15
<BOS> Mary 10
……
read Moby 5
……
假設(shè)要估計以 read 開始的 2-gram 概率,列出以read開始的所有 2-gram溉痢,并轉(zhuǎn)化為頻率信息:
得到后僻造,便可計算概率:
其中,N 為以 read 開始的bigram的總數(shù)(樣本空間)孩饼,即read出現(xiàn)的次數(shù)嫡意。那么,以 read開始捣辆,沒有出現(xiàn)過的 2-gram的概率總和為:
以read作為開始蔬螟,沒有出現(xiàn)過的 2-gram的個數(shù)等于:,其中汽畴,
為語料的詞匯量旧巾。
那么,沒有出現(xiàn)過的那些 以read為開始的概率平均為:
注意:
因此忍些,需要歸一化處理:
3. Back-off (后備/后退)方法
-
基本思想
S. M. Katz于1987年提出鲁猩,所以又稱Katz后退法。
當(dāng)某一事件在樣本中出現(xiàn)的頻率大于閾值K (通常取K 為0 或1)時罢坝,運用最大似然估計的減值法來估計其概率廓握,否則,使用低階的嘁酿,即(n-1)gram 的
概率替代n-gram 概率隙券,而這種替代需受歸一化因子的作用。
-
Back-off 方法的另一種理解:
對于每個計數(shù) r > 0 的n元文法的出現(xiàn)次數(shù)減值, 把因減值而節(jié)省下來的剩余概率根據(jù)低階的(n-1)gram 分配給未見事件闹司。
-
舉例說明
4. 絕對減值法(Absolute discounting )
-
基本思想
從每個計數(shù) 中減去同樣的量娱仔,剩余的概率量由未見事件均分。
設(shè) 為所有可能事件的數(shù)目(當(dāng)事件為n-gram 時游桩,如果統(tǒng)計基元為詞牲迫,且詞匯集的大小為
, 則
)。
那么借卧,樣本出現(xiàn)了r次的事件的概率可以由如下公式估計:
其中盹憎, 為樣本中未出現(xiàn)的事件的數(shù)目。
為減去的常量铐刘,
陪每。
是由于減值而產(chǎn)生的剩余概率量。
為樣本中出現(xiàn)了
次的事件總次數(shù):
。
為自由參數(shù)奶稠,可以通過留存數(shù)據(jù)(heldout data)方法求得
的上限為:
5. 線性減值法(Linear discounting )
-
基本思想
從每個計數(shù) 中減去與該計數(shù)成正比的量(減值函數(shù)為線性的),剩余概率量
被
個未見事件均分捡遍。
自由參數(shù) 的優(yōu)化值為:
絕對減值法產(chǎn)生的n-gram 通常優(yōu)于線性減值法锌订。
6. 四種減值法的比較
數(shù)據(jù)平滑方法3——刪除插值法(Deleted interpolation)
基本思想:
用低階語法估計高階語法,即當(dāng) 3-gram 的值不能從訓(xùn)練數(shù)據(jù)中準(zhǔn)確估計時画株,用 2-gram 來替代辆飘, 同樣,當(dāng) 2-gram 的值不能從訓(xùn)練語料中準(zhǔn)確估計時谓传, 可以用 1-gram 的值來代替蜈项。插值公式:
其中的確定
將訓(xùn)練語料分為兩部分紧卒,即從原始語料中刪除一部分作為留存數(shù)據(jù)(heldout data)。
第一部分用于估計和
跑芳。
第二部分用于計算:使語言模型對留存數(shù)據(jù)的困惑度最小博个。