日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

《自然语言处理(哈工大 关毅 64集视频)》学习笔记:第五章 n-gram语言模型

發(fā)布時(shí)間:2024/1/1 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 《自然语言处理(哈工大 关毅 64集视频)》学习笔记:第五章 n-gram语言模型 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

視頻列表:
31 n-gram語言模型(一)
32 n-gram語言模型(二)
33 n-gram語言模型(三)
34 n-gram語言模型(四)
35 n-gram語言模型(五)
36 n-gram語言模型(六)
37 n-gram語言模型(七)

31 n-gram語言模型(一)

第五章 n-gram語言模型

噪聲信道模型


I=argmaxIP(I∣O))=argmaxIP(O∣I)P(I)P(O))=argmaxIP(O∣I)P(I)I=\underset{I}{argmax}P(I|O))=\underset{I}{argmax}\frac{P(O|I)P(I)}{P(O)})=\underset{I}{argmax}P(O|I)P(I)I=Iargmax?P(IO))=Iargmax?P(O)P(OI)P(I)?)=Iargmax?P(OI)P(I)
目標(biāo):通過有噪聲的輸出信號(hào)試圖恢復(fù)輸入信號(hào)

噪聲信道模型的應(yīng)用

噪聲信道模型是一種普適性的模型,通過修改噪聲信道的定義,可以將如下應(yīng)用納入到這一模型的框架之中

語音識(shí)別

一個(gè)聲學(xué)信號(hào)對(duì)應(yīng)于一個(gè)語句,一個(gè)語音識(shí)別器需找到其對(duì)應(yīng)的可能性最大的語言文本
T=argmaxTP(T∣A))T=\underset{T}{argmax}P(T|A))T=Targmax?P(TA))
根據(jù)貝葉斯公式 :
T=argmaxTP(A∣T)P(T)P(A))=argmaxIP(A∣T)P(T)T=\underset{T}{argmax}\frac{P(A|T)P(T)}{P(A)})=\underset{I}{argmax}P(A|T)P(T)T=Targmax?P(A)P(AT)P(T)?)=Iargmax?P(AT)P(T)
信息源對(duì)應(yīng)于以概率 P(T)P(T)P(T)生成語句文本,噪聲信道對(duì)應(yīng)于以概率分布 P(A∣T)P(A|T)P(AT)將語句文本轉(zhuǎn)換成聲音信號(hào)。語音識(shí)別的目的就是由通過噪聲信道而輸出的聲音信號(hào)恢復(fù)其原始的語句文本。

其他應(yīng)用

信源以概率 P(T)P(T)P(T)生成語句文本,信道為P(O∣T)P(O|T)P(OT),語音/圖像/翻譯文本/字音轉(zhuǎn)換模型

  • 手寫體漢字識(shí)別
    文本-〉書寫(或者打印、掃描)-〉圖像
  • 文本校錯(cuò)
    文本-〉輸入編輯-〉帶有錯(cuò)誤的文本
  • 機(jī)器翻譯
    目標(biāo)語言的文本-〉翻譯-〉源語言文本
  • 音字轉(zhuǎn)換
    文本-〉字音轉(zhuǎn)換-〉漢字(拼音)編碼
  • 詞性標(biāo)注
    詞性標(biāo)注序列-〉詞性詞串轉(zhuǎn)換-〉詞串

香農(nóng)游戲1

給定前n-1個(gè)詞(或者字母),預(yù)測下一個(gè)詞(字母)

32 n-gram語言模型(二)

語言模型

  • P(T)P(T)P(T)語言模型,如何計(jì)算P(T)?
    根據(jù)鏈規(guī)則:
    P(T)=P(S)=P(w1w2...w3)=P(w1)P(w2∣w1)P(w3∣w1w2)...P(wn∣w1w2...wn?1)P(T)=P(S)=P(w_{1}w_{2}...w_{3})=P(w_{1})P(w_{2}|w_{1})P(w_{3}|w_{1}w_{2})...P(w_{n}|w_{1}w_{2}...w_{n-1})P(T)=P(S)=P(w1?w2?...w3?)=P(w1?)P(w2?w1?)P(w3?w1?w2?)...P(wn?w1?w2?...wn?1?)
    問題:
    1、參數(shù)空間過大,無法實(shí)用!
    2、數(shù)據(jù)稀疏問題

馬爾科夫假設(shè)

P(T)=P(S)=P(w1w2...w3)=P(w1)P(w2∣w1)P(w3∣w1w2)...P(wn∣w1w2...wn?1)P(T)=P(S)=P(w_{1}w_{2}...w_{3})=P(w_{1})P(w_{2}|w_{1})P(w_{3}|w_{1}w_{2})...P(w_{n}|w_{1}w_{2}...w_{n-1})P(T)=P(S)=P(w1?w2?...w3?)=P(w1?)P(w2?w1?)P(w3?w1?w2?)...P(wn?w1?w2?...wn?1?)

  • biigram
    假設(shè)下一個(gè)詞的出現(xiàn)依賴于它前面的一個(gè)詞
    ≈P(w1)P(w2∣w1)P(w3∣w2)...P(wn∣wn?1)\approx P(w_{1})P(w_{2}|w_{1})P(w_{3}|w_{2})...P(w_{n}|w_{n-1})P(w1?)P(w2?w1?)P(w3?w2?)...P(wn?wn?1?)
  • trigram
    假設(shè)下一下一個(gè)詞的出現(xiàn)依賴于它前面的兩個(gè)詞
    ≈P(w1)P(w2∣w1)P(w3∣w1w2)...P(wn∣wn?2wn?1)\approx P(w_{1})P(w_{2}|w_{1})P(w_{3}|w_{1}w_{2})...P(w_{n}|w_{n-2}w_{n-1})P(w1?)P(w2?w1?)P(w3?w1?w2?)...P(wn?wn?2?wn?1?)

N-gram語言模型

  • 最大相似度估計(jì)( Maximum Likelihood Estimate )
    P(wn∣w1w2...wn?1)=C(w1w2...wn)C(w1w2...wn?1)P(w_{n}|w_{1}w_{2}...w_{n-1})=\frac{C(w_{1}w_{2}...w_{n})}{C(w_{1}w_{2}...w_{n-1})}P(wn?w1?w2?...wn?1?)=C(w1?w2?...wn?1?)C(w1?w2?...wn?)?
  • “n-gram” = n個(gè)詞構(gòu)成的序列
    unigram
    bigram
    trigram
    four-gram(quadgram 4-gram)
    ……
  • N元文法對(duì)下一個(gè)單詞的條件概率逼近的通用等式是:
    P(wn∣w1n?1)≈P(wn∣wn?N+1n?1)P(w_{n}|w_{1}^{n-1})\approx P(w_{n}|w_{n-N+1}^{n-1})P(wn?w1n?1?)P(wn?wn?N+1n?1?)
    構(gòu)造(訓(xùn)練)N-gram語言模型:在訓(xùn)練語料庫中統(tǒng)計(jì)獲得n-gram的頻度信息
    舉例
  • 假設(shè)語料庫總詞數(shù)為13,748詞
  • I3437
    want1215
    to3256
    eat938
    Chinese213
    food1506
    lunch459
  • \IwanttoeatChinesefoodlunch
    I81087013000
    want307860686
    to30108603012
    eat002019252
    Chinese200001201
    food190170000
    lunch4000010

    P(I want to eat Chinese food)
    =P(I)P(want|I)P(to|want)P(eat|to)P(Chinese|eat)P(food|Chinese)
    =0.251087/3437786/1215860/325619/938120/213
    = 0.000154171

    • N的選擇:可靠性 vs. 辨別力
      “我 正在 ________ ”
      講課?圖書館?聽課?學(xué)習(xí)?借書?……

    “我 正在 圖書館 ________”
    學(xué)習(xí)? 借書?……
    更大的 n: 對(duì)下一個(gè)詞出現(xiàn)的約束性信息更多,更大的辨別力
    更小的n: 在訓(xùn)練語料庫中出現(xiàn)的次數(shù)更多,更可靠的統(tǒng)計(jì)結(jié)果,更高的可靠性

    • N的選擇方法
      詞表中詞的個(gè)數(shù) |V| = 20,000 詞
    n所有可能的n-gram的個(gè)數(shù)
    2 (bigrams)400,000,000
    3 (trigrams)8,000,000,000,000
    4 (4-grams)1.6x10171.6 x 10^{17}1.6x1017

    數(shù)據(jù)稀疏問題

    假設(shè)我們使用trigram模型
    P(S)=P(w1)P(w2∣w1)P(w3∣w1w2)...P(wn∣wn?2wn?1)P(S) = P(w_{1})P(w_{2}|w_{1})P(w_{3}|w_{1}w_{2})...P(w_{n}|w_{n-2}w_{n-1})P(S)=P(w1?)P(w2?w1?)P(w3?w1?w2?)...P(wn?wn?2?wn?1?)
    如果某個(gè)P(wi∣wi?2wi?1)=C(wi?2wi?1wi)C(wi?2wi?1)=0P(w_{i}|w_{i-2}w_{i-1})=\frac{C(w_{i-2}w_{i-1}w_{i})}{C(w_{i-2}w_{i-1})}=0P(wi?wi?2?wi?1?)=C(wi?2?wi?1?)C(wi?2?wi?1?wi?)?=0
    那么P(S)=0P(S)=0P(S)=0
    數(shù)據(jù)稀疏問題
    必須保證 C≠0C\neq 0C??=0從而使 P≠0P\neq 0P??=0
    假設(shè)某語料庫詞匯分布如下:

    最大相似度估計(jì)

    期望概率分布

    33 n-gram語言模型(三)

    數(shù)據(jù)平滑技術(shù)

    • 降低已出現(xiàn)的n-gram條件概率分布,以使未出現(xiàn)n-gram條件概率分布非0
    • 又可稱為“折扣方法” (Discounting methods)
    • (確認(rèn))“Validation” –特指使用兩個(gè)不同的訓(xùn)練語料庫的平滑方法

    拉普拉斯定律

    • 加一平滑法

    • Jeffreys-Perks Law
    • Good-Turing估計(jì)

    • Good-Turing估計(jì)示例
      建立頻度bigram個(gè)數(shù)表(詞表中詞數(shù)14585,語料庫中出現(xiàn)的各不相同的bigram總數(shù)199252個(gè),bigram總數(shù)為617091個(gè))

      對(duì)于未出現(xiàn)的bigram

      假設(shè)語料庫中,某bigram 出現(xiàn)了1次,

      P=0.3663/617091=5.94E-7
    • 簡單 Good-Turing
      對(duì)于比較大的 r,Nr=arb (b < -1) 用線性回歸的方法估算 a 和 b :log Nr= log a + b log r, 對(duì)于比較小的 r, 直接使用Nr
    • 關(guān)于Good-Turing平滑的兩個(gè)問題2
      1、Good-Turing 估計(jì)的理論依據(jù)是什么?
      2、Good-Turing 估計(jì)是完備的嗎?

    其他常用平滑方法

    • Back-off 平滑
    • 線性插值平滑
    • Witten-Bell平滑

    平滑的效果

    • 數(shù)據(jù)平滑的效果與訓(xùn)練語料庫的規(guī)模有關(guān)
    • 數(shù)據(jù)平滑技術(shù)是構(gòu)造高魯棒性語言模型的重要手段
    • 訓(xùn)練語料庫規(guī)模越小,數(shù)據(jù)平滑的效果越顯著,
    • 訓(xùn)練語料庫規(guī)模越大,數(shù)據(jù)平滑的效果越不顯著,甚至可以忽略不計(jì)
    34 n-gram語言模型(四)

    一元模型,N-gram模型與N-pos模型之間的關(guān)系

    考察N-pos模型的極端情況,即當(dāng)整個(gè)模型只有一個(gè)詞類,與每一個(gè)詞都有一個(gè)各自不同的詞類的情況:如果N-pos模型只有一個(gè)詞類,那么前N-1個(gè)詞類沒有提供任何上下文信息,于是N-pos模型退化為Unigram模型;如果每一個(gè)詞都有一個(gè)各不相同的詞類,那么這樣的N-pos模型等價(jià)于N-gram模型

    統(tǒng)計(jì)語言模型的評(píng)價(jià)

    • 實(shí)用方法
      通過查看該模型在實(shí)際應(yīng)用中的表現(xiàn)來評(píng)價(jià)統(tǒng)計(jì)語言模型
      優(yōu)點(diǎn): 直觀,實(shí)用
      缺點(diǎn):缺乏針對(duì)性,不夠客觀
    • 理論方法
      交叉熵與迷惑度




    Kullback-Leibler (KL)距離

    Kullback-Leibler (KL)距離(相關(guān)熵)
    兩個(gè)概率密度函數(shù)p(x)與q(x)它們的相關(guān)熵由下式給出:

    描述了兩個(gè)概率分布之間的差異
    (D(p||q)==0 iff p=q)
    非量度(不滿足交換率和三角不等式)

    語言與其模型的交叉熵

    我們構(gòu)造的語言模型為q(x),如何評(píng)價(jià)它的好壞?
    Idea:如果q(x)與正確的語言模型p(x)的相關(guān)熵越小,模型越好
    問題是我們并不知道p(x)
    可以借助交叉熵

    某語言L,其真實(shí)的概率分布為p(x),我們構(gòu)造的該語言的概率模型為q(x),那么該語言與其模型的交叉熵為:

    如果我們將語言視為平穩(wěn)各態(tài)可遍歷的隨機(jī)過程:
    那么

    迷惑度

    舉例:150萬詞WSJ語料庫得到的不同n-gram語言模型的迷惑度:
    Unigram:962
    Bigram:170
    Trigram:109

    35 n-gram語言模型(五)
    • 音字轉(zhuǎn)換系統(tǒng)

    附錄1 語言模型構(gòu)造實(shí)例

    N-gram語言模型構(gòu)造舉例

    36 n-gram語言模型(六)

    附錄2 最大熵模型基礎(chǔ)

    • 最大熵模型
      一種基于最大熵原理的統(tǒng)計(jì)預(yù)測模型。
    • 最大熵原理
      在一定的限制條件下,盡可能地選擇熵最大的概率分布(均勻分布)作為預(yù)測結(jié)果
      對(duì)不知道(限制條件以外)的情形,不做任何假設(shè)
      舉例-1
      拋一枚硬幣: p(H)=p1, p(T)=p2.
      限制條件: p1 + p2 = 1
      問題:如何估計(jì)概率分布 p=(p1, p2)?
      基于最大熵原理的答案: 選擇使H§最大的那個(gè)p

      舉例-2


    最大熵模型

    • 目的:估計(jì)在限定條件下的概率p
      選擇滿足限定條件的p,使H§為最大
      H(x)=?∑x∈Xp(x)log?p(x)H(x)=-{\sum_{}^{x\in X}}p(x)\log p(x)H(x)=?xX?p(x)logp(x)
      x=(a,b),a∈A∧b∈Bx=(a,b),a\in A\wedge b\in Bx=(a,b),aAbB
      AAA 為上下文特征集合, 為待預(yù)測標(biāo)記的集合
    37 n-gram語言模型(七)
    - 如何獲得這樣的模型 從訓(xùn)練數(shù)據(jù)中統(tǒng)計(jì) (a, b) 對(duì): a: 上下文 b:預(yù)測標(biāo)記(觀察值) (a,b)稱為一個(gè)事件 舉例: 詞性標(biāo)注 a=在某個(gè)文本窗口中的詞 b=NN - 學(xué)習(xí)得到每個(gè) (a, b)的概率值:p(a, b) - 問題:如何表示限制條件 - 特征 - 在最大熵模型中,特征是一個(gè)關(guān)于事件二值函數(shù)

    fj:X→{0,1},X=A×Bf_{j}:X\rightarrow \left \{ 0, 1\right \},X=A\times Bfj?:X{0,1},X=A×B
    舉例:

    特征(事件)舉例
    (title caps, NNP): Citibank, Mr.
    (sufix -ing, VBG): running, cooking
    (POS tag DT, I-NP): the bank, a thief
    (current word from, I-PP): from the bank
    (next word Inc., I-ORG): Lotus Inc.
    (previous word said, I-PER): said Mr. Vinken

    復(fù)雜特征

    • 文檔級(jí)特征
      (document category = 籃球& current word = “火箭”, I-ORG)
      可能將“火箭”標(biāo)為 I-ORG 而非普通名詞
    • 原子級(jí)(詞)特征
      (current word = “李寧” & next word = 公司, I-ORG)
      可能將“李寧”標(biāo)為 I-ORG而非I-PER

    限制條件

    最大熵模型的使用

    根據(jù)局部概率值直接標(biāo)注
    計(jì)算全局最優(yōu)解

    • Viterbi search
    • Beam search

    最大熵模型總結(jié)

    原理:找到滿足所有限制的熵最大的概率分布
    訓(xùn)練:通過 GIS 或者 IIS,收斂速度可能較慢
    對(duì)交叉性的特征也能很好的處理
    對(duì)自然語言處理的許多問題都能提供很好的解決方案

    致謝
    關(guān)毅老師,現(xiàn)為哈工大計(jì)算機(jī)學(xué)院語言技術(shù)中心教授,博士生導(dǎo)師。通過認(rèn)真學(xué)習(xí)了《自然語言處理(哈工大 關(guān)毅 64集視頻)》3(來自互聯(lián)網(wǎng))的課程,受益良多,在此感謝關(guān)毅老師的辛勤工作!為進(jìn)一步深入理解課程內(nèi)容,對(duì)部分內(nèi)容進(jìn)行了延伸學(xué)習(xí)4 5 612,在此分享,期待對(duì)大家有所幫助,歡迎加我微信(驗(yàn)證:NLP),一起學(xué)習(xí)討論,不足之處,歡迎指正。

    參考文獻(xiàn)


  • Claude E. Shannon. “Prediction and Entropy of Printed English”, Bell System Technical Journal 30:50-64. 195 ?? ??

  • An Empirical Study of Smoothing Techniques for Language Modeling, Stanley F. Chen ?? ??

  • 《自然語言處理(哈工大 關(guān)毅 64集視頻)》(來自互聯(lián)網(wǎng)) ??

  • 王曉龍、關(guān)毅 《計(jì)算機(jī)自然語言處理》 清華大學(xué)出版社 2005年 ??

  • 哈工大語言技術(shù)平臺(tái)云官網(wǎng):http://ltp.ai/ ??

  • Steven Bird,Natural Language Processing with Python,2015 ??

  • 總結(jié)

    以上是生活随笔為你收集整理的《自然语言处理(哈工大 关毅 64集视频)》学习笔记:第五章 n-gram语言模型的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。