【转】统计模型-n元文法

在谈N-Gram模型之前,我们先来看一下Mrkove假设:

  1.一个词的出现仅仅依赖于它前面出现的有限的一个或者几个词;

  2.一个词出现的概率条件地依赖于前N-1个词的词类。

定义

  N-Gram是大词汇连续语音识别中常用的一种语言模型,对中文而言,我们称之为汉语语言模型(CLM,Chinese Language Model)。汉语语言模型利用上下文中相邻词之间的搭配信息,在需要把连续无空格的拼音、比划,或者代表字母或者比划的数字,转换成汉字串(即句子)时,可以计算出具有最大概率的句子,从而实现到汉字之间的自动转换,无需用户手动选择,避开了许多汉字对应一个相同的拼音的重码问题。

  该模型基于这样一种假设,第n个词的出现只与前面n-1个词相关,而与其他任何词都不相关,整句的概率就是各个词出现概率的乘积。这些概率可以通过直接从预料中统计N个词同时出现的次数得到。常用的是二元的Bi-Gram和三元的Tri-Gram。

详细介绍

  - - N-gram思想

  在介绍N-gram模型之前,让我们先来做个香农游戏(Shannon Game)。我们给定一个词,然后猜测下一个词是什么。当我说“艳照门”这个词时,你想到下一个词是什么呢?我想大家很有可能会想到“陈冠希”,基本上不会有人会想到“陈志杰”吧。N-gram模型的主要思想就是这样的。

  对于一个句子T,我们怎么算它出现的概率呢?假设T是由词序列W1W2W3…Wn组成的,那么,

  P(T)=P(W1W2W3...Wn)=P(W1)P(W2|W1)P(W3|W1W2)…P(Wn|W1W2…Wn-1)

  但这样做的两个致命缺陷是:

  (1)参数空间过大;

  (2)数据稀疏严重。

  为了解决这个问题,引入Markov假设:一个词的出现仅仅依赖于他前面出现的有限的一个或者几个词。

  如果一个词的出现仅仅依赖于他前面出现的一个词,那么我们就称之为Bi-gram,即

   P(T) = P(W1W2W3…Wn)=P(W1)P(W2|W1)P(W3|W1W2)…P(Wn|W1W2…Wn-1)           ≈P(W1)P(W2|W1)P(W3|W2)…P(Wn|Wn-1)

  同样地,如果一个词的出现仅仅依赖于前面出现的两个词,那么我们就称之为Tri-gram。

  在实践中用的最多的就是bigram和trigram了,而且效果很不错。高于四元的用的很少,因为训练它需要更庞大的语料,而且数据稀疏严重,时间复杂度高,精度却提高的不多。

  - -计算P(Wn|W1W2…Wn-1)

  那么我们怎么得到P(Wn|W1W2…Wn-1)呢?一种简单的估计方法就是最大似然估计(Maximum Likelihood Estimate)了。即

  P(Wn|W1W2…Wn-1) = (C(W1 W2…Wn))/(C(W1 W2…Wn-1))

  剩下的工作就是在训练语料库中数数儿了,即统计序列C(W1 W2…Wn) 出现的次数和C(W1 W2…Wn-1)出现的次数。

举例介绍

  模型为Bi-gram,假设语料库总词数为13748

P(I want to eat Chinese food) =P(I)*P(want|I)*P(to|want)*P(eat|to)*P(Chinese|eat)*P(food|Chinese) =0.25*1087/3437*786/1215*860/3256*19/938*120/213 =0.000154171

稀疏问题

  这里还有一个问题要说,那就是数据稀疏问题了,假设词表中有20000个词,如果是Bi-gram那么可能的N-gram就有400000000个,如果是trigram,那么可能的N-gram就有8000000000000个!那么对于其中的很多词对的组合,在语料库中都没有出现,根据最大似然估计得到的概率将会是0,这会造成很大的麻烦,在算句子的概率时一旦其中的某项为0,那么整个句子的概率就会为0,最后的结果是,我们的模型只能算可怜兮兮的几个句子,而大部分的句子算得的概率是0. 因此,我们要进行数据平滑(data Smoothing),数据平滑的目的有两个:一个是使所有的N-gram概率之和为1,使所有的N-gram概率都不为0.有关数据平滑的详细内容后面会再讲到,这里不再赘述。

时间: 2024-10-26 15:52:39

【转】统计模型-n元文法的相关文章

一个典型的语音识别系统

一.语音识别技术 语音识别技术,广泛来说是指语意识别和声纹识别:从狭义上来说指语音语义的理解识别,也称为自动语音识别(ASR).其关键技术包括选择识别单元.语音端点检测.特征参数提取.声学模型及语音模型的建立.语音识别技术目前在桌面系统.智能手机.导航设备等嵌入式领域均有一定程度的应用.其主要技术难题是识别系统的适应性较差.受背景噪声影响较大,未来的发展方向应是无限词汇量连续语音非特定人语音识别系统. (1)信号处理及特征提取模块 该模块的主要任务是从输入信号中提取特征,供声学模型处理.同时,它

中文分词原理和实现

三大主流分词方法:基于词典的方法.基于规则的方法和基于统计的方法. 1.基于规则或词典的方法 定义:按照一定策略将待分析的汉字串与一个"大机器词典"中的词条进行匹配,若在词典中找到某个字符串,则匹配成功. 按照扫描方向的不同:正向匹配和逆向匹配 按照长度的不同:最大匹配和最小匹配 1.1正向最大匹配思想MM 从左向右取待切分汉语句的m个字符作为匹配字段,m为大机器词典中最长词条个数. 查找大机器词典并进行匹配: 若匹配成功,则将这个匹配字段作为一个词切分出来. 若匹配不成功,则将这个匹

中文分词原理及工具

原理 中文分词,即 Chinese Word Segmentation,即将一个汉字序列进行切分,得到一个个单独的词.表面上看,分词其实就是那么回事,但分词效果好不好对信息检索.实验结果还是有很大影响的,同时分词的背后其实是涉及各种各样的算法的. 中文分词与英文分词有很大的不同,对英文而言,一个单词就是一个词,而汉语是以字为基本的书写单位,词语之间没有明显的区分标记,需要人为切分.根据其特点,可以把分词算法分为四大类: 基于规则的分词方法 基于统计的分词方法 基于语义的分词方法 基于理解的分词方

中文文本分类大概的步骤

文本分类问题:给定文档p(可能含有标题t),将文档分类为n个类别中的一个或多个 文本分类应用:常见的有垃圾邮件识别,情感分析 文本分类方向:主要有二分类,多分类,多标签分类 文本分类方法:传统机器学习方法(贝叶斯,svm等),深度学习方法(fastText,TextCNN等) 文本分类的处理大致分为文本预处理.文本特征提取.分类模型构建等.和英文文本处理分类相比,中文文本的预处理是关键技术. 一.中文分词:针对中文文本分类时,很关键的一个技术就是中文分词.特征粒度为词粒度远远好于字粒度,其大部分

文本分类:survey

作者:尘心链接:https://zhuanlan.zhihu.com/p/76003775 简述 文本分类在文本处理中是很重要的一个模块,它的应用也非常广泛,比如:垃圾过滤,新闻分类,词性标注等等.它和其他的分类没有本质的区别,核心方法为首先提取分类数据的特征,然后选择最优的匹配,从而分类.但是文本也有自己的特点,根据文本的特点,文本分类的一般流程为:1.预处理:2.文本表示及特征选择:3.构造分类器:4.分类. 通常来讲,文本分类任务是指在给定的分类体系中,将文本指定分到某个或某几个类别中.被

初出茅庐--文本自动校对技术综述

申明:本博纯属个人对文本校对技术的偏好,以便于以后查阅.由于自己尚在学习探索中,内容不免有些显得不成熟,若有不当之处还请阅者指正. 文本自动校对是自然语言处理的重要研究领域之一.可用个人书写文字的检查,也可满足出版社的大量较高需求.文本自动校对,分为集中技术,一是文字文字自动校对,即程式将文本中出现的错字,借助文法检查器的检查,一一标出,由使用者用眼看逐一校对.二是语音自动校对,即让语音程式将文本转成语音输出,让校稿人员来听,以发现错误.这种校对方式,属于比较弱的校对方式,更多的依赖于人的听觉与

语言模型基本概念-n元语法

一个语言模型通常构建为字符串s的概率分布p(s),这里p(s)试图反映的是字符串s作为一个句子出现的频率.例如,在一个人所说的话中每100个句子里面大约有一句是Okay,则可以认为p(Okay)约等于0.01.而对于句子“An apple ate the chicken”我们可以认为其概率是0,因为几乎没有人会说这样的句子.需要注意的是,与语言学中不同,语言模型与句子是否合乎语法是没有关系的,即使一个句子完全合乎语法逻辑,我们仍然可以认为它出现的概率接近为0. 对于一个由l个基元(“基元”可以为

深度学习综述(LeCun、Bengio和Hinton)

原文摘要:深度学习可以让那些拥有多个处理层的计算模型来学习具有多层次抽象的数据的表示.这些方法在很多方面都带来了显著的改善,包含最先进的语音识别.视觉对象识别.对象检測和很多其他领域,比如药物发现和基因组学等.深度学习可以发现大数据中的复杂结构.它是利用BP算法来完毕这个发现过程的.BP算法可以指导机器怎样从前一层获取误差而改变本层的内部參数,这些内部參数可以用于计算表示.深度卷积网络在处理图像.视频.语音和音频方面带来了突破,而递归网络在处理序列数据.比方文本和语音方面表现出了闪亮的一面. 机

深度学习-LeCun、Bengio和Hinton的联合综述(下)

深度学习-LeCun.Bengio和Hinton的联合综述(下) [编者按]三大牛Yann LeCun.Yoshua Bengio和Geoffrey Hinton在深度学习领域的地位无人不知.为纪念人工智能提出60周年,最新的<Nature>杂志专门开辟了一个“人工智能 + 机器人”专题 ,发表多篇相关论文,其中包括了Yann LeCun.Yoshua Bengio和Geoffrey Hinton首次合作的这篇综述文章“Deep Learning”.本文为该综述文章中文译文的下半部分,详细介绍