nlp5-n-gram/语言模型(数据平滑方法
生活随笔
收集整理的這篇文章主要介紹了
nlp5-n-gram/语言模型(数据平滑方法
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
文章目錄
- 1.句子的先驗概率
- 1.1 n-gram
- 2. 參數估計
- 3. 數據平滑
- 3.1 數據平滑度方法
- 3.1.1加1法
- 3.1.2減
1.句子的先驗概率
- 這個聯合概率太小了
- 窗口越大,共現的可能性越小
- 參數多
- 解決:等價類
- 不看所有的歷史信息
- 只看部分歷史信息,但看所有的歷史等價
- 如何劃分等價類
將兩個歷史映射到同一個等價類,當且僅當這兩個歷史中的最近 n-1 個基元相同,即:
1.1 n-gram
- 這種情況下的語言模型稱為 n 元文法(n-gram)模型
- ?當 n=1 時,即出現在第 i 位上的基元 wi 獨立于歷史。一元文法也被寫為 uni-gram 或 monogram;
- ?當 n=2 時, 2-gram (bi-gram) 被稱為1階馬爾可夫鏈;—效果比1好一點
- ?當 n=3 時, 3-gram(tri-gram)被稱為2階馬爾可夫鏈,
- 依次類推。
- 為了保證條件概率在 i=1 時有意義,同時為了保證句子內所有字符串的概率和為 1,即 ,可以在句子首尾兩端增加兩個標志: w1 w2 … wm 。不失一般性,對于n>2 的 n-gram,p(s) 可以分解為:
- eg
- 拼音轉文字
- 樣本空間
- 1?N,2?N21-N,2-N^21?N,2?N2
- 對漢語來說4-gram可能好一點
- 漢語分詞問題
- 給定漢字串:他是研究生物的。
- 可能的漢字串:
- 他|是|研究生|物|的
- 他|是|研究|生物|的
- p(Seg1) =p(他|)×p(是|他)×p(研究生|是)× p(物|研究生)×p(的|物)×p(的|)
- p(Seg2) = p(他|)×p(是|他)×p(研究|是)× p(生物|研究)×p(的|生物)× p(的|)
2. 參數估計
- 訓練語料(training data):用于建立模型,確定模型參數的已知語料。
- 最大似然估計(maximum likelihood Evaluation, MLE):用相對頻率計算概率的方法。
- 存在問題:沒有出現過的詞怎么辦?概率為0數據匱乏(稀疏) (Sparse Data) 引起零概率問題
- 解決:數據平滑
- 解決:數據平滑
3. 數據平滑
- 數據平滑的基本思想:
調整最大似然估計的概率值,使零概率增值,使非零概率下調,“劫富濟貧”,消除零概率,改進模型的整體正確率。 - 基本目標:
測試樣本的語言模型困惑度越小越好。 - 困惑度定義
3.1 數據平滑度方法
3.1.1加1法
- 加1法
- 基本思想: 每一種情況出現的次數加1。
- 例如,對于 uni-gram,設 w1, w2, w3 三個詞,概率分別為:1/3, 0, 2/3,加1后情況?
- 2/6, 1/6, 3/6
3.1.2減
總結
以上是生活随笔為你收集整理的nlp5-n-gram/语言模型(数据平滑方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: {ACL2020}In Layman’s
- 下一篇: 2知识图谱的生命周期