上海復旦大學吳立德教授深度學習課程六

神經概率語言模型

語言模型

詞典

D={ω(1),ω(2),,ω(n)}
ω=ω1ω2ωn
其中ω 是字符串,ωiω(i) 指代同一個詞。

概率模型

假設字符串中詞出現的概率具有平穩性,即詞的概率與此出現在字符串的位置無關。
字符串出現的概率爲
p(s)=p(ω1ω2ωn)
根據全概率公式可以得出
p(s)=p(ω1)p(ω2|ω1)p(ωn|ω1ωn1)
通過以上公式可以通過求解
p(ωi|ω1ωi1)
得出全概率。
求解方法若採用技術的方法直接做除法
p(ωi|ω1ωi1)=count(ω1ωi1ωi)count(ω1ωi1)
問題:詞語之間組合爆炸,數據稀疏嚴重

基於馬爾科夫假設

假設當前詞只依賴於它前面一或者多個詞,即所謂的n-gram。
bigram
p(s)=p(ω1)p(ω2|ω1)p(ωn|ωn1)
trigram
p(s)=p(ω1)p(ω2|ω1)p(ωn|ωn2ωn1)
求解
p(ωi|ωi1)=count(ωi,ωi1)count(ωi1)

詞向量

自然語言理解的問題要轉化爲機器學習的問題,第一步肯定是要找一種方法把這些符號數學化。
  NLP 中最直觀,也是到目前爲止最常用的詞表示方法是 One-hot Representation,這種方法把每個詞表示爲一個很長的向量。這個向量的維度是詞表大小,其中絕大多數元素爲 0,只有一個維度的值爲 1,這個維度就代表了當前的詞。
  舉個栗子,
  “話筒”表示爲 [0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 …]
  “麥克”表示爲 [0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 …]
  每個詞都是茫茫 0 海中的一個 1。

詞向量詳細說明


神經網絡模型

神經網絡模型嘗試去預測一個概率分佈

數據

字符串 ω=ω1ω2ωn
可以使用滑窗進行操作。

模型

A Neural Probabilistic Language Model

準則

求解方法

BP算法

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章