教程: https://www.bilibili.com/video/BV1YK4y1875p
传统模型
总目标: max E P ( e ∣ c ) \max\limits _E P(\bold{e}|\bold{c}) EmaxP(e∣c)
将中文分词,然后把每个词语翻译成英文
max e P ( c ∣ e ) \max\limits_\bold{e} P(\bold{c}|\bold{e}) emaxP(c∣e)
找到概率最大的词语序列
max e P ( e ) \max\limits_\bold{e} P(\bold{e}) emaxP(e)
维特比解码可以直接计算 argmax e P ( e ) ⋅ P ( c ∣ e ) \mathop{\text{argmax}}\limits_\bold{e} P(\bold{e})\cdot P(\bold{c}|\bold{e}) eargmaxP(e)⋅P(c∣e)
Uni-gram: P ( e ) = P ( [ e 1 , e 2 , … , e n ] ) = P ( e 1 ) P ( e 2 ) … P ( e n ) P(\bold{e})=P([e_1,e_2,\dots,e_n])=P(e_1)P(e_2)\dots P(e_n) P(e)=P([e1,e2,…,en])=P(e1)P(e2)…P(en)
Bi-gram: P ( e ) = P ( [ e 1 , e 2 , … , e n ] ) = P ( e 1 ) P ( e 2 ∣ e 1 ) … P ( e n ∣ e n − 1 ) P(\bold{e})=P([e_1,e_2,\dots,e_n])=P(e_1)P(e_2|e_1)\dots P(e_n|e_{n-1}) P(e)=P([e1,e2,…,en])=P(e1)P(e2∣e1)…P(en∣en−1)
Tri-gram: P ( e ) = P ( e 1 ) P ( e 2 ∣ e 1 ) P ( e 3 ∣ e 1 , e 2 ) … P ( e n ∣ e n − 1 , e n − 2 ) P(\bold{e})=P(e_1)P(e_2|e_1)P(e_3|e_1, e_2)\dots P(e_n|e_{n-1},e_{n-2}) P(e)=P(e1)P(e2∣e1)P(e3∣e1,e2)…P(en∣en−1,en−2)
上面这些都是马尔科夫假设, 是对联合概率的简化.
联合概率: P ( e ) = P ( e 1 ) P ( e 2 ∣ e 1 ) … P ( e n ∣ e 1 , e 2 , … e n − 1 ) P(\bold{e})=P(e_1)P(e_2|e_1)\dots P(e_n|e_1, e_2, \dots e_{n-1}) P(e)=P(e1)P(e2∣e1)…P(en∣e1,e2,…en−1)
在计算时一般计算 log P ( e ) \log P(\bold{e}) logP(e)避免溢出
mermaid 在线编辑器: https://mermaid-js.github.io/mermaid-live-editor
NLP面试会考手推逻辑回归
一篇ACL, BAT基本不用愁了