数学与自然语言处理——统计语言模型

什么是自然语言处理 -- NLP

每种动物都有自己的语言,机器也是!

自然语言处理(NLP)就是在机器语言和人类语言之间沟通的桥梁,以实现人机交流的目的。人类通过语言来交流,狗通过汪汪叫来交流。机器也有自己的交流方式,那就是数字信息。

自然语言就是大家平时在生活中常用的表达方式,大家平时说的"讲人话"就是这个意思。

自然语言:我背有点驼

非自然语言:我的背呈弯曲状

而自然语言从它产生开始,逐渐演变成一种上下文相关的信息表达和传递的方式,因此让计算机处理自然语言,一个基本的问题就是为自然语言这种上下文相关的特性建立数学模型,即统计语言模型(Statistical Language Model)。

如何使用统计语言模型来描述语言规律

在最初统计模型语言产生的初衷是为了解决语音识别 问题。假定S表示某一个有意义的句子,由一连串特定顺序排列的词 组成,其中n是句子的长度。

利用条件概率的公式,我们可以得到

从计算上来看,词的概率计算变得越来越麻烦。如果我们假设,任意一个词出现的概率只与它前面的词有关,那么

其对应的统计语言模型为二元模型(Bigram Model)。我们知道P(S)的计算方式之后,接下来如何估计条件概率 呢,根据定义,我们可以得到

假设文本中的每个词和前面个词有关,而与更前面的词无关,因此

这种假设被称为N-1阶马尔可夫假设,对应的语言模型称为N元模型。当N=2时,即为二元模型;N=1时,即为一元模型,是一个上下文无关的模型。实际应用中最常用的为N=3的三元模型。

统计语言模型的工程应用

使用语言模型需要知道模型中所有的条件概率,即模型的参数,而得到这些参数的过程称之为模型的训练。对于二元模型来说,我们至于要知道两个语料中出现的次数,之所以可以用采样数据进行预测,是由于大数定理的支持。然而,在估计语言模型的概率时,这个方法时不可行的(数量很小的时候,随机性很大)。那么,我们如何正确地训练一个语言模型呢?

一个办法是增加数据量,即便如此,仍会遇到零概率或统计量不足的问题。因此,如果用直接的比值计算概率,大部分的条件概率仍为零,这种模型我们称作"不平滑"。

另一个办法是"古德-图灵估计(Good-Turing Estimate)",即对于没有看见的事件,我们不能认为它发生的概率为0,因此我们从概率的总量中,分配一个很小的比例给这些没有看见的事件。这样看见的事件的概率总和就要小于1了,所以我们需要将所有看见的事件概率调小一点,至于小多少,需要根据"越是不可信的统计折扣越多"的方法进行。

相关推荐
m0_650108242 分钟前
Co-MTP:面向自动驾驶的多时间融合协同轨迹预测框架
论文阅读·人工智能·自动驾驶·双时间域融合·突破单车感知局限·帧间轨迹预测·异构图transformer
向阳逐梦2 分钟前
电子烟的4种屏幕驱动集成语音方案介绍
人工智能·语音识别
蓝耘智算4 分钟前
蓝耘元生代GPU算力调度云平台深度解析:高性价比算力云与GPU算力租赁首选方案
人工智能·ai·gpu算力·蓝耘
ckjr0076 分钟前
2025 创始人 IP+AI 峰会:见证时代分水岭
人工智能·创客匠人·创客匠人万人峰会
geneculture7 分钟前
2025对2023《融智学导读》升级版,第三章:智能化双字棋盘软件(将智能化双字棋盘定位为第二次认知大飞跃的工作母机是一个极其精准和有力的论断)
人工智能·信息科学·融智学的重要应用·信智序位·全球软件定位系统
ccLianLian12 分钟前
计算机视觉·ZegFormer
人工智能·计算机视觉
i查拉图斯特拉如是17 分钟前
Coze工作流意图识别
人工智能·大模型·工作流·意图识别·coze
创客匠人老蒋17 分钟前
穿越周期的发展动力:创始人IP与AI融合下的成长路径解析
人工智能·创客匠人全球ip+ai高峰论坛·全球创始人ip+ai万人峰会
灰灰学姐17 分钟前
注意力机制
人工智能·深度学习·机器学习
m0_6501082421 分钟前
Don’t Shake the Wheel: 端到端自动驾驶中的动量感知规划(MomAD)
人工智能·自动驾驶·端到端·实时性·动量感知机制·闭环性能·长时域预测