如何计算给定一个unigram语言模型_统计语言模型浅谈

统计语言模型

统计语言模型(Statistical Language Model)即是用来描述词、语句乃至于整个文档这些不同的语法单元的概率分布的模型,能够用于衡量某句话或者词序列是否符合所处语言环境下人们日常的行文说话方式。统计语言模型对于复杂的大规模自然语言处理应用有着非常重要的价值,它能够有助于提取出自然语言中的内在规律从而提高语音识别、机器翻译、文档分类、光学字符识别等自然语言应用的表现。好的统计语言模型需要依赖大量的训练数据,在上世纪七八十年代,基本上模型的表现优劣往往会取决于该领域数据的丰富程度。IBM 曾进行过一次信息检索评测,发现二元语法模型(Bi-gram)需要数以亿计的词汇才能达到最优表现,而三元语法模型(TriGram)则需要数十亿级别的词汇才能达成饱和。本世纪初,最流行的统计语言模型当属 N-gram,其属于典型的基于稀疏表示(Sparse Representation)的语言模型;近年来随着深度学习的爆发与崛起,以词向量(WordEmbedding)为代表的分布式表示(Distributed Representation)的语言模型取得了更好的效果,并且深刻地影响了自然语言处理领域的其他模型与应用的变革。除此之外,Ronald Rosenfeld[7] 还提到了基于决策树的语言模型(Decision Tree Models)、最大熵模型以及自适应语言模型(Adaptive Models)等。

统计语言模型可以用来表述词汇序列的统计特性,譬如学习序列中单词的联合分布概率函数。如果我们用$w_1$ 到 $w_t$ 依次表示这句话中的各个词,那么该句式的出现概率可以简单表示为:

$$

begin{equation}

begin{split}

P(w_1,...,w_t) = prod_{i=1}^{t}P(w_i|w_1,...,w_{i-1}) = prod_{i=1}^{t}P(w_i|Context) \

P(w_1, w_2, …, w_t) = P(w_1) times P(w_2 | w_1) times P(w_3 | w_1, w_2) times … times P(w_t | w_1, w_2, …, w_{t-1})

end{split}

end{equation}

$$

统计语言模型训练目标也可以是采用极大似然估计来求取最大化的对数似然,公式为$frac{1}{T}sum^T_{t=1}sum_{-c le jle c,j ne0}log p(w_{t+j}|w_t)$。其中$c$是训练上下文的大小。譬如$c$取值为 5 的情况下,一次就拿 5 个连续的词语进行训练。一般来说$c$越大,效果越好,但是花费的时间也会越多。$p(w_{t+j}|w_t)$表示$w_t$条件下出现$w_{t+j}$的概率。常见的对于某个语言模型度量的标准即是其困惑度(Perplexity),需要注意的是这里的困惑度与信息论中的困惑度并不是相同的含义。这里的困惑度定义公式参考Stolcke[11],为$exp(-logP(w_t)/|vec{w}|)$,即是$1/P(w_t|w_1^{t-1})$的几何平均数。最小化困惑度的值即是最大化每个单词的概率,不过困惑度的值严重依赖于词表以及具体使用的单词,因此其常常被用作评判其他因素相同的两个系统而不是通用的绝对性的度量参考。

N-gram 语言模型

参照上文的描述,在统计学语言模型中我们致力于计算某个词序列$E = w_1^T$的出现概率,可以形式化表示为:

$$

begin{equation}

P(E) = P(|E| = T,w_1^T)

end{equation}

$$

上式中我们求取概率的目标词序列$E$的长度为$T$,序列中第一个词为$w_1$,第二个词为$w_2$,等等,直到最后一个词为$w_T$。上式非常直观易懂,不过在真实环境下却是不可行的,因为序列的长度$T$是未知的,并且词表中词的组合方式也是非常庞大的数目,无法直接求得。为了寻找实际可行的简

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值