当前位置:   article > 正文

自然语言处理(第2课 统计学基础)

自然语言处理(第2课 统计学基础)

语言的概率论相关知识

1.随机过程的平稳性(stationary):在数学中平稳过程又称严格平稳过程 或者 强平稳过程,是一种特殊的随机过程,在任一时间段或空间里的联合概率分布,与将这段时间任意平移后的新时间段里的联合概率分布相等。
换用到语言系统中,语言就是一个随机过程,单词是其随机变量。语言具有平衡性,因为在一小段时间内(甚至几年内),其总体的语法和单词变化是不大的,具体表现有:中文中“的”这个词在句子中出现的频率在所有词中占7.79%,而在很长一段时间里,这个数据变化不大。
2.随机过程的遍历性(ergodic):对于一个平稳的随机变量 X,如果它的所有样本函数在某一固定时刻的统计特性和单一样本函数在长时间内的统计特性一致,我们则称X为各态遍历,即随机变量单一样本函数随时间变化的过程可以包括该变量所有样本函数的取值经历。
换用到语言系统中,语言具有遍历性,其描述为:当我们取样一个语言的样本足够大时,样本的统计数据信息=语言总体的数据信息。具体表现有:我们有一个足够大的中文样本中“的”的单词占样本所有词数量的7.79%,排第一。那么我们可以认为“的”在整个中文使用中也是排第一,接近7.79%。

齐夫定律

1.齐夫定律只是一个实验定律,并非一定正确。其最初描述的是:一个单词出现的频率与它在频率表中的名词成反比,且第n个词出现的频率为第一个词出现频率的1/n倍。具体表现为:在Brown语料库中,the名列第一,占7%;of名列第二,占3.5%;and名列第三,占2.9%。可以发现:7%*1/2=3.5%;7%*1/3≈2.9%.
2.由齐夫定律可发现,排名在前100多名的单词占据了语料库的大部分,也就产生了长尾词(unknown word,UNK),即大量的、但占比很低的单词。在实际实验中,常把这些词作为生词处理。下图中,r为单词,f为其在语料库中出现的频率。
在这里插入图片描述

信息论基础(熵相关)

1.1948年6月和10月,香农(Shannon)发布了《通讯的数学原理》,该文奠定了香农信息论的基础。熵是信息论中重要的基本概念。下图为本小节的主要内容,有了这张图,可以更容易看懂各个熵代表的意思。
在这里插入图片描述

2.(entropy)又称自信息(self-的两种表示:(1)表示随机变量X 每个具体取值(如信源每发射一个信号)所提供的平均信息量。(2)描述一个随机变量的不确定性的数量。一个随机变量的熵越大,它的不确定性越大。那么,正确估计其值的可能性就越小。
3.对于一个离散型随机变量X,其概率分布为:p(x)=P(X=x),x∈X。那么X的熵H(X)为:
在这里插入图片描述

4.本人的一点理解:熵既然是上述的这条公式,那么理论上,必然会存在熵相等的两个或多个不同的随机变量,那这么多的随机变量都是有相关性的吗?可能相关也可能不相关。因为熵描述的随机变量的平均不确定性,在语言中,就是语料库(或者语言,样本=总体)的平均不确定性。熵相同则说明两个语料库平均不确定性相同,但不保证二者一样。而如果两个语料库接近,或者两个句子表达的意思接近,则其熵也是接近的。下节也有别的熵可以用来计算两个随机变量的关系。
5.联合熵(joint entropy):描述一对随机变量平均所需的信息量。
在这里插入图片描述
6.条件熵(conditional entropy):
在这里插入图片描述
代入H(Y|X=x)的公式后,得:
在这里插入图片描述

7.互信息(mutual information):记录在得知Y得值后,X得不确定性得减少量,即Y透露了多少关于X的信息量。看不懂的可以回去看本小节第一张图。
在这里插入图片描述
代入H(X)-H(X|Y)后,得:
在这里插入图片描述

信息论基础(衡量相关)

1.相对熵(relative entropy)又称K-L距离(Kullback-Leibler divergence)。用于衡量两个随机分布的差距。两个随机分布差距越大,相对熵也越大。公式如下:

在这里插入图片描述
2.交叉熵(cross entropy)。用以衡量统计分布和理论模型的差异。两个模型差距越大,交叉熵越大。公式如下:由初始公式来看,交叉熵=熵+相对熵
在这里插入图片描述
在NLP中:
在这里插入图片描述
一个定理:
在这里插入图片描述
3.困惑度(perplexity):公式如下,其实是交叉熵的一种变形,困惑度越小,模型越接近真实。
在这里插入图片描述
4.一点补充,在机器学习任务或者深度学习网络中,一般都使用交叉熵作为损失函数。在设计语言模型时,我们通常使用困惑度来代替交叉熵去衡量语言模型的好坏。实际上,相对熵、交叉熵、困惑度并没有太大的区别,交叉熵比相对熵多了一个自熵,困惑度是将交叉熵进行指数放大,在应用并无太大区别,用哪个都可以,只是大家用交叉熵更多。

统计学习概念

1.统计学习相关介绍。统计学习于1980年左右提出,其有三大特点:(1)数据驱动;(2)对数据进行预测与分析;(3)以方法为中心,构建模型。分类有四种:监督学习、无监督学习、半监督学习、强化学习。
2.监督学习步骤:(监督学习是机器学习的一种,机器学习=λ,lambda)
(1)获得一个有限的训练数据集合;(BD:Big Data)
(2)确定学习模型的集合,即包含所有可能的模型的假设空间(M,Model)
(3)确定学习的策略,即模型选择的准则(A,Algorithm)
(4)通过学习方法选择最优模型(L,Loss)
(5)利用学习到的最优模型对新数据进行预测分析(A,Application)
下图是问题的形式化图:
在这里插入图片描述
3.模型的分类:
(1)生成式模型(generative model):使用统计学和贝叶斯理论的知识,建立后验概率模型,输出最高概率的值。举个例子:输入是一段句子,句子有个空需要填入,将上下文输入到模型中,模型会输出概率最高的单词。
(2)判别式模型(discriminative model):举个例子,同样是填空,但是这次给了四个选项,需要从中选一个,模型只需要输出概率最高的那个单词就行。再举另一种问题的例子,输入一个文本,他可能是表达消极的,也可能积极的,或者是中立的。那么模型通过训练,就可以分辨一个人说的话是这三种的哪一种。

应用举例

1.问题描述:“打”这个字具有许多含义,在NLP中称为词义消歧。如何区分不同语境下的“打”的含义呢?
在这里插入图片描述
2.解决思路:“打“的语义不同,主要区别在于他在不同的上下文,那么是否可以根据上下文来推断其意义,这显然是合乎我们思维的。于是词义消歧任务变成了一个上下文分类任务
3.补充知识:在了解未知分布的部分知识后,符合已知知识的分布还有许多个,我们认为,在这样的情况下,熵最大的那个分布是最合理的推断,因为熵越大,随机变量不确定性越大,会更合理地反映实际情况。
4.模型定义,我们可以定义一系列克罗内克函数作为我们的特征函数。
在这里插入图片描述
在这个问题中,我们这样定义这些特征函数:
在这里插入图片描述
f1函数直接看其上下文的汉字是哪些,这更符合人的直觉;f2函数是看上下文的汉字的词性,这可能更有普遍性。这里我们二者都要,实际中如何选择需自行实验。然后是关于语境窗口,指的是我们到底要取多少的上下文内容作为我们的输入,在这里我们选用±2,实际情况中我们一般选择一整个句子。于是有以下特征函数值(仅展示值为1的):
在这里插入图片描述
5.模型优化算法:GIS(generalized iterative scaling)算法。算法流程如下所示。(b)步骤是根据样本统计出来的期望值,©步骤不断迭代优化模型参数λ,最终就可以得到我们的模型。
在这里插入图片描述
迭代终止条件如下,(a)为人工设置,避免模型训练次数太多(b)说明模型优化几乎完全。
在这里插入图片描述
6.训练流程图:
在这里插入图片描述
7.分析实验结果:
在这里插入图片描述

知识点总结

1.语言的平衡性和普遍性
2.齐夫定律
3.各种熵
4.相对熵、交叉熵、困惑度
5.训练过程

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/繁依Fanyi0/article/detail/591236
推荐阅读
相关标签
  

闽ICP备14008679号