链式法则:概率论描述语言模型

目录

1.事件相互独立

2.链式法则

3.示例

4.语言模型中的链式法则


1.事件相互独立

事件相互独立就是:一个事件的发生与否,不会影响另外一个事件的发生。

当a和b两个事件互相独立时,有:

P(a | b) = P(a)

推广到3个事件就有下面这个公式:

P(a | b, c) = P(a | c)

其中:P(a | b, c)表示在b和c事件都发生的情况下,a事件发生的概率

既然a与b相互独立,那b就不是a是否发生的条件,a就只与c有关

2.链式法则

2个事件同时发生的概率:

P(a, b) = P(a | b) * P(b)

其中:P(a, b)表示 a和b事件同时发生的概率, P(a | b)是一个条件概率,表示在b事件发生的条件下,a发生的概率

3个事件的概率链式法则:

P(a, b, c) = P(a | b, c) * P(b, c) = P(a | b, c) * P(b | c) * P(c)

N个事件的概率链式法则:

P(X1, X2, ... Xn) = P(X1 | X2, X3 ... Xn) * P(X2 | X3, X4 ... Xn) ... P(Xn-1 | Xn) * P(Xn)

3.示例

假设有事件ABCDE,它们之间的关系如下,求ABCDE同时发生的概率 P(A, B, C, D, E) 是多少?

所有的事件,只与它们的父节点有依赖关系,其中,E只和B有关,B只和AC有关,D只与C有关,A和C不依赖其他任何事件

P(A, B, C, D, E) = P(E | B, D, C, A) * P(B, D, C, A)

= P(E | B, D, C, A) * P(B | D, C, A) * P(D, C, A)

= P(E | B, D, C, A) * P(B | D, C, A) * P(D | C, A) * P(C, A)

= P(E | B, D, C, A) * P(B | D, C, A) * P(D | C, A) * P(C | A) * P(A)

我们根据前面说的相互独立的事件关系,来分析下最后那个长长的式子:

E只与B有关,则 P(E | B, D, C, A) = P(E | B)

B只和AC有关,则 P(B | D, C, A) = P(B | C, A)

D只与C有关, 则 P(D | C, A) = P(D | C)

C与A无关,则 P(C | A) = P(C)

所以最后的式子简化成了这样:

P(A, B, C, D, E) = P(E | B) * P(B | C, A) * P(D | C) * P(C) * P(A)

4.语言模型中的链式法则

用概率论来描述语言模型就是,为长度为的字符确定其概率分布,其中各x依次表示文本中的各个词语,一般采用链式法则计算其概率值:

当序列长度增加时,计算和存储多个词共同出现的概率的复杂度会呈指数级增加。n元语法通过马尔可夫假设(虽然并不一定成立)简化了语言模型的计算。n元模型是在估算条件概率时,忽略距离大于等于n的上文词的影响,因此得以简化。这里的马尔可夫假设是指一个词的出现只与前面n个词相关,即n阶马尔可夫链(Markov chain of order nn)。当n分别等于1,2,3时,分别将其称作一元语法(unigram),二元语法(bigram)和三元语法(trigram)。

通过实例来解释这几种语法,

一元模型意味着各个词之间相互独立,这无疑损失了句中词序信息。

二元语法

三元文法

当n大于等于2时,该模型可以保留一定的词语信息,而且n越大,信息越丰富,但计算成本也呈指数增长。

相关推荐
代码骑士27 分钟前
【一起学NLP】Chapter3-使用神经网络解决问题
python·神经网络·自然语言处理
可惜已不在42 分钟前
AI 搜索引擎工具集合
人工智能·ai
Landy_Jay1 小时前
深度学习:基于MindSpore实现CycleGAN壁画修复
人工智能·深度学习
Funny_AI_LAB1 小时前
MetaAI最新开源Llama3.2亮点及使用指南
算法·计算机视觉·语言模型·llama·facebook
Langchain1 小时前
不可错过!CMU最新《生成式人工智能大模型》课程:从文本、图像到多模态大模型
人工智能·自然语言处理·langchain·大模型·llm·大语言模型·多模态大模型
龙的爹23332 小时前
论文翻译 | Generated Knowledge Prompting for Commonsense Reasoning
人工智能·gpt·机器学习·语言模型·自然语言处理·nlp·prompt
龙的爹23332 小时前
论文翻译 | Model-tuning Via Prompts Makes NLP Models Adversarially Robust
人工智能·gpt·语言模型·自然语言处理·nlp·prompt
方世恩2 小时前
【进阶OpenCV】 (5)--指纹验证
人工智能·opencv·目标检测·计算机视觉
_.Switch2 小时前
Python机器学习:自然语言处理、计算机视觉与强化学习
python·机器学习·计算机视觉·自然语言处理·架构·tensorflow·scikit-learn
A_lvvx2 小时前
OpenCV透视变换
人工智能·opencv·计算机视觉