NLP学习-06.基础-语言模型-xxgram

2020-03-28  本文已影响0人  logi

什么是语言模型

用来判断是否一句话是否在语法上通顺.

方法有哪些?

  1. Unigram: 即每个单词都是独立的,直接将单词的概率累乘得到句子的概率;
    p(\vec{w})=p\left(w_{1}, w_{2}, \cdots, w_{n}\right)=p\left(w_{1}\right) p\left(w_{2}\right) \cdots p\left(w_{n}\right)
  2. Bigram: 即前后单词是有依赖的,利用条件概率累乘;
    \begin{aligned} P(S) &=\prod_{i=1}^{n} P\left(w_{i} | w_{1}, w_{2}, \ldots, w_{l-1}\right) P\left(w_{1}, w_{2}, \ldots, w_{n}\right) \\ & \approx \prod_{i=1}^{n} P\left(w_{i} | w_{i-1}\right) \end{aligned}
  3. N-gram: 是bigram的扩展

平滑

在统计是分子分母加上一个值,进行平滑. 一般是将分子+k, 分布加kv. 其中k是可调参数,v是固定参数

差值: interpolation

在计算条件概率p时经常会得到0的情况, 我们可以用插值方法进行数据的补充,例如 trigram用unigram来补充数据.

trigram 插值

上图是trigram利用bigram,unigram插值, 即trigram的结果是其他gram的加权结果.

上一篇 下一篇

猜你喜欢

热点阅读