1.基本原理和步骤
Naive Bayes methods are a set of supervised learning algorithms based on applying Bayes’ theorem with the “naive” assumption of independence between every pair of features. Given a class variable and a dependent feature vector through , Bayes’ theorem states the following relationship:
Using the naive independence assumption that
for all , this relationship is simplified to
Since is constant given the input, we can use the following classification rule:
and we can use Maximum A Posteriori (MAP) estimation to estimate and ; the former is then the relative frequency of class in the training set.
先澄清一个概念:MAP是最大后验证估计与MLE最大似然估计的区别
MAP最大后验估计 :是根据经验数据获得对难以观察的量的点估计。与最大似然估计类似,但是最大的不同时,最大后验估计的融入了要估计量的先验分布在其中。
MLE最大似然估计:h_ml = argmax p(D|h) 不再乘以p(y)
详细说明如下:
最大似然估计:
最大似然估计提供了一种给定观察数据来评估模型参数的方法,即:“模型已定,参数未知”。简单而言,假设我们要统计全国人口的身高,首先假设这个身高服从服从正态分布,但是该分布的均值与方差未知。我们没有人力与物力去统计全国每个人的身高,但是可以通过采样,获取部分人的身高,然后通过最大似然估计来获取上述假设中的正态分布的均值与方差。
最大似然估计中采样需满足一个很重要的假设,就是所有的采样都是独立同分布的。下面我们具体描述一下最大似然估计:
首先,假设为独立同分布的采样,θ为模型参数,f为我们所使用的模型,遵循我们上述的独立同分布假设。参数为θ的模型f产生上述采样可表示为
回到上面的“模型已定,参数未知”的说法,此时,我们已知的为,未知为θ,故似然定义为:
在实际应用中常用的是两边取对数,得到公式如下:
其中称为对数似然,而称为平均对数似然。而我们平时所称的最大似然为最大的对数平均似然,即:
以下是比较重要的几点
1.The different naive Bayes classifiers differ mainly by the assumptions they make regarding the distribution of .
不同的朴素贝叶斯分类器的不同主要在于关于分布 所做的假设,
GaussianNB,
MultinomialNB,
BernoulliNB
GaussianNB用于属性是连续值的情况,比如根据【身高,体重】去分类是【大人,孩子】
MultinomialNB用于属性是离散值的情况,用阿尔法做了平滑处理,概率为0的情况
BernoulliNB 用于属性是二元离散值得情况binary/bool ,而且加了惩罚系数。
文本分类中用word occurrence vectors 单词出现与否的向量(rather than word count vectors) 而不是单词计数向量
2.用途:文本分类,垃圾分类
3. 优点:需要的训练集小,速度快
4.缺点:要求特征独立
还要注意missing data的处理,因为有的概率为0
参考资料:1.http://scikit-learn.org/stable/modules/naive_bayes.html
2.http://www.inf.ed.ac.uk/teaching/courses/iaml/slides/naive-2x2.pdf