背景介绍
什么是分类器?
分类器是一种机器学习模型,用于基于某些特征来区分不同的对象。
朴素贝叶斯分类器的原理:
朴素贝叶斯分类器是一种概率性机器学习模型,用于分类任务。分类器基于贝叶斯定理。
贝叶斯定理:
使用贝叶斯定理,我们可以找到已知B发生,A发生的可能性。在这里,B是证据,A是假设。这里所做的假设是预测变量/特征是独立的。也就是说,一个特定功能的存在不会影响其他功能。因此,它被称为朴素。
例如:
让我们以一个例子来获得更好的直觉。考虑打高尔夫球的问题。数据集如下所示。
根据一天的特点,我们对一天是否适合打高尔夫球进行分类。列代表这些功能,行代表各个条目。如果我们取数据集的第一行,则可以观察到如果前景多雨,温度高,湿度高且不大风,则不适合打高尔夫球。我们在此做出两个假设,如上所述,我们认为这些预测变量是独立的。即,如果温度高,则不一定表示湿度高。这里所做的另一个假设是,所有预测变量对结果的影响均等。即,有风的日子在决定是否打高尔夫球方面没有更多的重要性。
根据此示例,贝叶斯定理可以重写为:
变量y是类别变量(打高尔夫球),它表示是否适合打高尔夫球或没有给定条件。变量X代表参数/特征。
X给出为:
这里的x_1,x_2….x_n代表这些特征,即可以将它们映射到外观,温度,湿度和大风。通过替换X并使用链式规则扩展,我们得到:
现在,您可以通过查看数据集并将其替换为方程式来获取每个值。对于数据集中的所有条目,分母不会更改,而是保持不变。因此,可以去除分母并且可以引入比例。
在我们的例子中,类变量(y)只有两个结果,是或否。在某些情况下,分类可能是多元的。因此,我们需要找到概率最大的y类。
使用上面的函数,我们可以得到给定预测变量的类。
朴素贝叶斯分类器的类型: 多项式朴素贝叶斯: 这主要用于文档分类问题,即文档是否属于体育,政治,技术等类别。分类器使用的特征/预测词是文档中出现的单词的频率。 伯努利·朴素贝叶斯: 这类似于多项式朴素贝叶斯,但预测变量是布尔变量。 我们用于预测类变量的参数仅采用yes或no值,例如,是否在文本中出现单词。 高斯朴素贝叶斯: 当预测变量采用连续值并且不是离散值时,我们假定这些值是从高斯分布中采样的。
高斯分布(正态分布)
由于值在数据集中的显示方式发生了变化,因此条件概率公式变为:
结论:
朴素贝叶斯算法主要用于情感分析(NLP问题),垃圾邮件过滤,推荐系统等。它们快速,易于实现,但最大的缺点是预测变量要求独立。在大多数现实生活中,预测变量是相互依赖的,这会妨碍分类器的性能。
翻译自:https://towardsdatascience.com/naive-bayes-classifier-81d512f50a7c