我发现很难理解朴素贝叶斯的过程,我想知道是否有人能够用简单的逐步过程以英语解释它。我理解它通过发生的次数进行概率比较,但我不知道训练数据如何与实际数据集相关联。
请给我解释一下训练集扮演的角色。这里我给出一个非常简单的水果示例,比如香蕉:
训练集---
圆形-红色
圆形-橙色
长条形-黄色
圆形-红色
数据集----
圆形-红色
圆形-橙色
圆形-红色
圆形-橙色
长条形-黄色
圆形-红色
圆形-橙色
长条形-黄色
长条形-黄色
圆形-红色
你的问题分为两个部分,第一部分是你对朴素贝叶斯分类器的理解需要加深,第二部分是关于训练集的困惑。
一般来说,所有机器学习算法都需要通过训练来进行监督学习任务,例如分类、预测等,或者进行无监督学习任务,例如聚类。
在训练过程中,算法使用一个特定的输入数据集(训练集)进行教学,以便在之后我们可以对未知输入进行测试(它们从未见过),然后根据它们的学习进行分类或预测等(在有监督学习的情况下)。这是大多数机器学习技术如神经网络、支持向量机、贝叶斯等的基础。
因此,在一个普通的机器学习项目中,你需要将输入集分为开发集(训练集+开发测试集)和测试集(或评估集)。记住,你的基本目标是让你的系统能够学习和分类以前在开发集或测试集中从未见过的新输入。
测试集通常与训练集具有相同的格式。然而,非常重要的一点是测试集必须与训练语料库不同:如果我们简单地将训练集作为测试集重新使用,那么一个仅仅记住输入而无法学习如何推广到新例子的模型会得到误导性地高分。
一般来说,举个例子,我们可以将数据的70%用作训练集。同时要记住,要随机地将原始集合划分为训练集和测试集。
接下来让我解释一下你关于朴素贝叶斯的另一个问题。
为了说明朴素贝叶斯分类的概念,考虑下面的例子:
如上所示,对象可以被分类为GREEN
或RED
。我们的任务是根据当前现有的对象,将新案例进行分类,即确定它们属于哪个类别。
由于GREEN
对象的数量是RED
对象的两倍,合理地认为未观察到的新案例更有可能是GREEN
而不是RED
。在贝叶斯分析中,这种信念被称为先验概率。先验概率基于以往经验,本例中是GREEN
和RED
对象的百分比,并经常用于事情发生之前的预测。
因此,我们可以写成:
GREEN
的先验概率:GREEN对象的数量 / 总对象数量
RED
的先验概率:RED对象的数量 / 总对象数量
由于共有60
个对象,其中有40
个GREEN
和20
个RED
,我们对类成员资格的先验概率为:
GREEN
的先验概率:40 / 60
RED
的先验概率:20 / 60
在制定了先验概率之后,我们现在可以分类一个新的对象(下图中的WHITE
圆圈)。由于对象被很好地聚集,合理地假设在X附近有更多的GREEN
(或者RED
)对象,因此新案例更有可能属于那种颜色。为了衡量这种可能性,我们在X周围画一个圆圈,其中包含一定数量(事先选择)的点,而不考虑它们的类别。然后我们计算圆圈中属于每个类别标签的点的数量。根据此计算出似然:
从上面的插图可以清楚地看出,给定GREEN
的情况下,X的似然性小于给定RED
的情况,因为圆圈中包含1
个GREEN
对象和3
个RED
对象。因此:
虽然先验概率表明X
可能属于GREEN
(因为GREEN
的数量是RED
的两倍),但似然概率表明不同,即X
的类别是RED
(因为在X
附近的RED
对象比GREEN
对象更多)。在贝叶斯分析中,最终的分类是通过结合先验概率和似然概率来生成的,即使用所谓的贝叶斯定理(以Rev. Thomas Bayes 1702-1761命名)形成后验概率。
最后,由于其类别成员资格具有最大的后验概率,我们将X
分类为RED
。