编辑: 向日葵8AS 2019-07-16
语言模型 大纲 概述参数估计基本平滑算法其它平滑算法 概述 噪声通道模型 原型模型:出错的概率举例:p(0|1)=0.

3, p(1|1)=0.7, p(1|0)=0.4, p(0|0)=0.6任务是:已知带有噪声的输出想知道输入是什么(也称为:Decoding) 通道(增加噪声) 0,1,1,1,0,1,0,1 0,1,1,0,0,1,1,0 输入 输出 噪声通道的应用 OCR文本?打印(引入噪声), 扫描?图像手写识别文本?神经肌肉(引入噪声), 扫描?图像语音识别文本?朗读(引入噪声) ?声学波形机器翻译目标语言?翻译(引入噪声) ?源语言其它:词性标注词性序列?选择词形?文本 噪声通道:黄金规则 适用于OCR,手写识别,语音识别,机器翻译,词性标注等各个问题贝叶斯公式:P(A|B)=P(B|A)P(A)/P(B)Abest=argmaxA P(B|A)P(A)P(B|A)是声学/图像/翻译等模型在不同领域用不同的术语来描述P(A)是语言模型 什么是语言模型(Language Model) 语言模型是用来计算一个句子的概率的概率模型例如:P(w1,w2,…,wn)语言模型的用途决定哪一个词序列的可能性更大已知若干个词,预测下一个词应用语音识别机器翻译上下文敏感的拼写检查 应用于语音识别 有的词序列听起来很像,但并不都是正确的句子例子1:I went to a party. √Eye went two a bar tea.例子2:你现在在干什么? √你西安载感什么? 应用于机器翻译 给定一个汉语句子例如:王刚出现在电视上.英文译文:Wang Gang appeared in TV.In Wang Gang appeared TV.Wang Gang appeared on TV. √ 应用于拼写检查 举例汉语我自己知道 √我自已知道英语Wang Gang appeared on TV. √Wang Gang appeared of TV. 参数估计 完美的语言模型 对于词序列W=w1,w2,…,wn如何计算p(W)?根据链式规则:p(W)=p(w1)p(w2|w1)…p(wn|w1,…,wn-1)即使对于很小的n,上面的理想公式也很难计算,因为参数太多 马尔科夫链 有限的记忆能力不考虑太"老"的历史只记住前k个词w1,…,wk称为k阶马尔科夫近似p(W)=∏i=1…dp(wi|wi-k,…,wi-1), d=|W| N元语言模型 n-1阶马尔科夫近似称为n元语言模型(LM, Language Model)p(W)=∏i=1…dp(wi|wi-n+1,…,wi-1), d=|W|n越大,需要估计的参数越多,假设词汇量为20,000 模型 需要的参数数量0阶(一元Unigram)20,0001阶(二元bigram)20,000*19,999 =

400 million2阶(三元trigram)20,0002*19,999 =

8 trillion3阶(四元four-gram)20,0003*19,999 = 1.6*1017 语言模型的讨论 n多大?理论上讲,越大越好经验值:3,trigram用的最多four-gram需要太多的参数,很难估计了目前一般直接计算词形,不进行语言学处理,如形态还原等可靠性(Reliability)和可区别性(Discrimination)成反比,需要折中n越大,区别力越大;

n越小,可靠性越高 可靠性和区别性 可靠性(Reliability )和可区别性(discrimination)为了有效地推导一个特征,我们希望通过模型的其它特征来预测它,把这些特征分成等价类便于我们预测新的数据.分类特征越多,对未知分布的目标特征的预测就更精确,即有较好的可区别性,但是这样对每一个分类其实例就较少,统计的数据就不可靠,所以在划分等价类时要在可靠性和可区别性之间找一个折衷点. 长度问题 ?n;

?w??n p(w)=1 ??n=1…? ?w??n p(w) >>

1 (??)我们试图对所有的词序列建立模型对于固定长度的任务,没有问题,n一旦固定,累计和为1比如Tagging等对于变长的任务,需要对比较短的句子进行折扣一般模型对于长度为n的词序列P'(w)=?np(w), ?n=1…? ?n=1 ?n=1…? ?w??n p'(w)=1从数据中估计?n 参数估计 参数:用来计算p(w|h)的数值从数据中得到数据准备去掉格式符号定义词的边界定义句子边界(插入和等记号)字母的大小写(保留、忽略或者智能识别)数字(保留、替换为等) 最大似然估计 最大似然估计MLE是对训练数据的最佳估计从训练数据T中获得Trigrams统计T中三个词连续出现的次数C3(wi-2,wi-1,wi)统计T中两个词连续出现的次数C2(wi-2,wi-1)pMLE(wi|wi-2,wi-1) = C3(wi-2,wi-1,wi) / C2(wi-2,wi-1) MLE不适合用于NLP MLE选择的参数使训练语料具有最高的概率,它没有浪费任何概率在于没有出现的现象中但是MLE通常是不适合NLP的统计语言推导的,因为数据稀疏,如果一个为0,会向下传播… 一个例子说明数据稀疏:从IBM Laser Patent Text语料中1.5 Million 的词进行训练,在同一语料中的测试文本中,新出现23%的trigram tokens. 举例1 p(z|xy)=?假设训练语料为:… xya …;

下载(注:源文件不在本站服务器,都将跳转到源网站下载)
备用下载
发帖评论
相关话题
发布一个新话题