条件概率
贝叶斯公式
(贝叶斯模型还是很好理解的,主要基于高中就学到过的条件概率。)
P(A),P(B)分别是事件A,B发生的概率,而P(A|B)是在事件A在事件B发生的前提下发生的概率,P(AB)是事件A,B同时发生的概率。那么我们的有公式: 。
注:P(AB)=P(A)P(B)的充分必要条件是事件A和事件B相互独立。用通俗的语言讲就是,事件A是否发生不会影响到事件B发生的概率。
设样本属性集合为x{x1,x2,x3…xn},n为数目,xi为取值;设c为类别集合,把样本划分为某一类,c={y1,y2,y3…ym}.
假设属性特征相互独立,贝叶斯公式可写为:
这些是基于应用贝叶斯定理和强(朴素)特征独立性假设的监督学习方法。
naive_bayes.BernoulliNB(*[, alpha, ...])Naive Bayes classifier for multivariate Bernoulli models.
naive_bayes.CategoricalNB(*[, alpha, ...])Naive Bayes classifier for categorical features.
naive_bayes.ComplementNB(*[, alpha, ...])The Complement Naive Bayes classifier described in Rennie et al. (2003).
naive_bayes.GaussianNB(*[, priors, ...])Gaussian Naive Bayes (GaussianNB).
naive_bayes.MultinomialNB(*[, alpha, ...])Naive Bayes classifier for multinomial models.
多项式Naive Bayes分类器适用于具有离散特征的分类(例如,文本分类的字数)。多项式分布通常需要整数特征计数。然而,在实践中,分数计数(如tf-idf)也可能有效。
class sklearn.naive_bayes.MultinomialNB(*, alpha=1.0, fit_prior=True, class_prior=None)
参数:
与MultinomialNB一样,该分类器适用于离散数据。不同之处在于,虽然MultinomalNB可以处理出现次数,但BernoulliNB是为二进制/布尔特征设计的。
class sklearn.naive_bayes.BernoulliNB(*, alpha=1.0, binarize=0.0, fit_prior=True, class_prior=None
参数:
分类朴素贝叶斯分类器适用于具有分类分布的离散特征的分类。每个特征的类别都是从分类分布中得出的。
class sklearn.naive_bayes.CategoricalNB(*, alpha=1.0, fit_prior=True, class_prior=None, min_categories=None)
参数:
互补朴素贝叶斯分类器旨在纠正标准多项式朴素贝叶斯分类器所做的“严重假设”。它特别适合不平衡的数据集。
class sklearn.naive_bayes.ComplementNB(*, alpha=1.0, fit_prior=True, class_prior=None, norm=False)
参数:
可以通过partial_fit在线更新模型参数。
class sklearn.naive_bayes.GaussianNB(*, priors=None, var_smoothing=1e-09)[source]
参数:
优点:
缺点:
1.黑马学习