语言与数学不是分割的关系。
上一章认识到了语言发展的数学本质是一个通信模型的关系,这一章的阅读让我对自然语言的处理有了一个大概的理解,补充一句上一章遗漏的一句话:语言翻译的前提是:不同的文字系统在记录的能力是等价的。
1964年,以冯-诺依曼体系为准,计算机出现后,关于机器智能的研究就开始了,而提出关于机器智能设想判断的伟大计算机之父Alan·Turing,也让机器智能研究拉开了序幕。后来产生了两种学派,即以电脑模拟人脑的”鸟飞派“,与基于统计和数学模型的方法派别。最终由IBM公司打破了平衡,他们将语音识别成功率从70%提升到了90%。如今我们所接触到的人工智能,比如智能音箱,小艾同学,等。都是基于统计和Markov模型。
Markov模型
理解自然语言处理,给出一段语句,
一棵苹果树上的苹果砸中了伟大的科学家牛顿头
基于规则的解读会分主谓宾,然后来分析语义
但是,基于统计的科学家出发点是:一个句子是否合理,看它的可能性的大小如何。而这个可能性是基于全人类所说的话为总的集合的概率。
该模式:假设S表示一个有意义的句子,由一串特定顺序排列的词w1,w2,w3,…,wi,…wn组成。n为句子的长度现在来看s的概率P(S)。但是很显然我们无法找到总的集合,因此自然想到需要一个模型来估算
由条件概率公式,P(S)=P(w1,w2,…wn)=P(w1)·P(w2|w1)····P(wn|w1,w2,w3…wn-1), P(w1)的概率为第一个词w1出现的概率,P(w2|w1)表示在已知第一个词出现的条件下第二个词出现的概率(此为概率论统计知识)但是最后一个在已知其他的词出现概率下求最后一个词出现的概率计算太大了。
这时候出现了Markov,他提出了一种简便又有效的方法,就是每当出现这种情况时,假设任意一个词wi出现的概率只与他前面的词wi-1有关,于是出现了
P
(
S
)
=
P
(
w
1
)
⋅
P
(
w
2
∣
w
1
)
⋅
P
(
w
3
∣
w
2
)
⋅
.
.
.
.
.
.
P
(
w
n
∣
w
n
−
1
)
P(S)= P(w1)·P(w2|w1)·P(w3|w2)·......P(wn|w n-1)
P(S)=P(w1)⋅P(w2∣w1)⋅P(w3∣w2)⋅......P(wn∣wn−1)这就是著名的Markov二元模型(Bigram Model). 从而也可以往后推出三元,四元 N元模型,目前主要应用的是三元模型。
模型完成后,就需要对其细节部分进行完善补充,于是有了 模型的训练,零概率问题,以及平滑的方法。
模型的训练主要在于语料库的正确选取问题(语言的数据),以及噪音(多余的不需要的制表符,表情等与句意无关的语料):
零概率问题主要在于某些未在语料库中出现过的句子,他的概率就是零的问题,无法正确去匹配语义。解决方式是用总的概率里去单独分配一些给他们。
平滑性就是由于零概率导致的概率突然为零
Zipf定律:出现一次的词的数量比出现两次的多,出现两次的比三次的多。随着r(出现r次词)增多,Nr(出现r次词的数量)减少。于是出现了卡兹避让,提前设定一个阈值,次数达到阀值一下就用该公式,避免语义的处理错误。
这本书给我的感触很多,第一次感受到了数学的魅力。