朴素贝叶斯分类实例-单词纠正问题

Posted 机器学习算法与自然语言处理

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了朴素贝叶斯分类实例-单词纠正问题相关的知识,希望对你有一定的参考价值。

朴素贝叶斯分类实例-单词纠正问题


本篇文章是我一个大三学妹江颖的学习笔记,我觉得写得通俗易懂,又不失算法严谨性!这里整理一下记录下来。希望对大家有帮助~

1
  朴素贝叶斯算法


这篇文章通俗的讲解了朴素贝叶斯算法,通过回忆,我们知道算法公式如下:



2
  单词纠正问题


下面我们看一个问题去理解贝叶斯公式及其变形:


现在我们看到用户输入了一个不在字典里的单词,如thew,我们如何去知道用户实际想输入的单词是什么?


我们可以将这个问题抽象成求:


朴素贝叶斯分类实例-单词纠正问题

朴素贝叶斯分类实例-单词纠正问题


我们现在不妨假设空间有the 和 thaw (为了简化问题,我们的假设空间目前只有the 和 thaw)


实际问题中用的输入法拼写改正器一般只提取编辑距离为2以内的所有已知单词作为假设空间的假设,这样避免放入所有单词。


但是就算是这样的假设,满足的数据量依旧很大,可能有the , they , thaw 等等,所以本文这个问题的假设空间只放入两个元素去讨论(只是为了走完例子,帮助理解,其它原理相同)。


我们现在应用贝叶斯公式,有:


朴素贝叶斯分类实例-单词纠正问题


而我们知道,实际上P(他实际输入的单词)是一个定值,因为是已经发生的事实,概率已知,那么我们就可以采用贝叶斯公式的变形:


朴素贝叶斯分类实例-单词纠正问题


这里写成:


朴素贝叶斯分类实例-单词纠正问题


根据假设空间{ the ,thaw },这里有:



我们就比较P(thaw|thew)与p(the|thew)的概率谁大谁小即可!


3
  求解分析


通过上面分析,我们需要比较P(thaw|thew)与p(the|thew)的概率大小。


也就是需要分别求出p(thew|thaw)*p(thaw)/p(thew)与p(thew|the)*p(the)/p(thew),由于p(thew)是定值,并且俩者一样,这里比较就不用求出它。所以直接省去p(thew)


那么下面我们分别求p(thew|thaw)与p(thew|the)的大小比较与p(thaw)和p(the)的大小比较。


我们在这里用编辑距离和操作难度联合起来求解P(他实际输入的单词|我们猜测他想输入的单词),也就是p(thaw|thew)与p(the|thew)。


距离越近可能性越大,可以理解为,单词最容易输错成为同等长度或者长度相差不大的单词,在本问题中,然而 the 和 thaw 离 thew 的编辑距离都是 1,在这里我们 认为编辑距离对区分俩者没有区分度。


这时候需要考虑操作难度的大小,即去比较到底哪个更可能被错打称为thew。我们注意到字母 e 和字母 w 在键盘上离得很紧,无名指可能不小心就多打出一个 w 来,the 就变成 thew 了。


而另一方面 thaw 被错打成 thew 的可能性就相对小一点,因为 e 和 a 离得较远而且使用的指头相差一个指头(神经科学的证据表明紧邻的身体设施之间容易串位)。所以我们最终得到:


P(thew|thaw) < P(thew|the)


好的,我们已经得到了P(thew|thaw) < P(thew|the)。


下面我们来计算p(thaw)与p(the)的概率。


此时我们只需要比较thaw与the在文本库的出现频率。哪个频率高,我们就认为谁的概率大。


我们容易得出在英语中,the 出现的概率远远高于 thaw ,所以p(the)>p(thaw)


根据上面,我们可以得到

p(thaw)<p(the),p(thew|thaw)<p(thew|the)


则我们可以得出结论:


p(thew|thaw)*p(thew|thaw)<p(thew|the)*p(the)


那么我们可以认为,用户其实想敲入的是the这个词语。


4
  结论


于是根据上面,我们详细的走了一遍朴素贝叶斯算法的例子,虽然这个算法用在单词纠错上的准确率不是太高。


但是至少让我们清清楚楚的看到了数学算法在实际中是如何应用的。我相信不要陷入抽象的公式,跳出来实际应用这点很重要。


希望对大家理解有帮助~


参考文献:

1.周志华 《机器学习》 清华大学出版社

2.吴军 《数学之美》人民邮电出版社

3.刘丹,方卫国,周泓 《基于贝叶斯网络的二元语法中文分词模型》


推荐阅读文章:





近期文章预告:

《深入浅出决策树算法》

《深入浅出最大熵模型》

《深入浅出支持向量机》



版权所有,转载请务必联系作者取得授权!



.

以上是关于朴素贝叶斯分类实例-单词纠正问题的主要内容,如果未能解决你的问题,请参考以下文章

贝叶斯分类器(3)朴素贝叶斯分类器

实战|朴素贝叶斯分类对文档进行分类

机器学习朴素贝叶斯应用实例

机器学习朴素贝叶斯应用实例

朴素贝叶斯

朴素贝叶斯分类器