语言模型 Language Modeling

  • 更新时间: 2016-09-10
  • 来源: 原创或网络
  • 浏览数: 39次
  • 字数: 6398
  • 发表评论

1 语言模型的定义

符号含义:

V-->语言中所有单词的集合,且为有限集;

-->语言中的句子,且n>=1,语言模型 Language Modeling,by 5lulu.com,xn为特殊符号STOP(假设STOP不在V中);

语言模型 Language Modeling,by 5lulu.com-->有限集V上的所有句子的集合,为无限集,包含只有一个特殊符号STOP的句子。

正式定义:

语言模型由有限集V和概率函数组成,且满足语言模型 Language Modeling,by 5lulu.com

同时

语言模型 Language Modeling,by 5lulu.com

是句子集语言模型 Language Modeling,by 5lulu.com上的概率分布

特殊说明:为什么需要STOP,因为不是所有的单词都可以作为句子的结尾;事实上还有一个特殊的起始符*,因为不是所有的单词都可以作为句子的开头;在马尔科夫模型中我们会看到*和STOP的作用。

2 语言模型的作用

可用于语音识别机器翻译;简而言之,一切需要判断句子的合理性的NLP任务都可能需要语言模型。

3 马尔科夫模型(Markov Models)

为了构建语言模型我们需要了解马尔科夫模型;假设读者了解了马尔科夫模型,这里只做简要介绍。

一阶马尔科夫过程(first-order Markov process):

语言模型 Language Modeling,by 5lulu.com

二阶马尔科夫过程(second-order Markov process)即三元模型(trigram model):

语言模型 Language Modeling,by 5lulu.com

4 三元语言模型(Trigram Language Models) 

定义:三元语言模型由V和参数q(w|u,v)组成,其中语言模型 Language Modeling,by 5lulu.com。q(w}u,v)的含义是句子中前两个单词是(u,v)的情况下,u为下一个单词的概率。

一个句子语言模型 Language Modeling,by 5lulu.com在三元语言模型下的概率是

语言模型 Language Modeling,by 5lulu.com

三元模型存在稀疏问题

,有时候会出现语言模型 Language Modeling,by 5lulu.com等于0的情况,即(w|u,v)等于0

5 平滑处理

为了解决三元模型中的稀疏问题,需要做平滑处理,这里介绍两种平滑技术:Linear InterpolationDiscounting Methods

5.1、线性插值(Linear Interpolation) 

语言模型 Language Modeling,by 5lulu.com

线性插值平滑之后

语言模型 Language Modeling,by 5lulu.com

其中,语言模型 Language Modeling,by 5lulu.com

平滑之后依然满足概率之和为1

如何确定语言模型 Language Modeling,by 5lulu.com的值,一种方法是选取一个开发集,在开发集上最大化对数似然估计(log-likelihood)

语言模型 Language Modeling,by 5lulu.com

语言模型 Language Modeling,by 5lulu.com三元组(u,v,w)在开发集中的出现次数

最大化语言模型 Language Modeling,by 5lulu.com也就最小化了困惑度perplexiy

5.2、折扣方法(Discounting Methods) 

语言模型 Language Modeling,by 5lulu.com即训练语料中u,v所有的后接词;

语言模型 Language Modeling,by 5lulu.com即训练语料中非u,v后接词。

语言模型 Language Modeling,by 5lulu.com

Discounting之后的概率:

语言模型 Language Modeling,by 5lulu.com

其中 语言模型 Language Modeling,by 5lulu.com


标签: 集合 线性 插值 线性插值

我来评分 :6
0

转载注明:转自5lulu技术库

本站遵循:署名-非商业性使用-禁止演绎 3.0 共享协议