自然语言处理 第五期

朴素贝叶斯

  1. 朴素贝叶斯的原理
    贝叶斯公式如下:
    P ( Y k ∣ X ) = P ( X ∣ Y k ) P ( Y k ) ∑ j P ( Y j ) P ( X ∣ Y j ) P(Y_k|X) = \frac{P(X|Y_k)P(Y_k)}{\sum_jP(Y_j)P(X|Y_j)} P(YkX)=jP(Yj)P(XYj)P(XYk)P(Yk)
    朴素贝叶斯法是基于贝叶斯定理与特征条件独立假设的分类方法。
    y = f ( x ) = a r g m a x c k P ( Y = c k ∣ X = x ) = a r g m a x c k P ( Y = c k ) ∏ j P ( X ( j ) = x ( j ) ∣ Y = c k ) ∑ k P ( Y = c k ) ∏ j P ( X ( j ) = x ( j ) ∣ Y = c k ) y = f(x)=argmax_{c_k}P(Y=c_k|X = x)=argmax_{c_k}\frac{P(Y=c_k)\prod_jP(X^{(j)}=x^{(j)}|Y=c_k)}{\sum_kP(Y=c_k)\prod_jP(X^{(j)}=x^{(j)}|Y=c_k)} y=f(x)=argmaxckP(Y=ckX=x)=argmaxckkP(Y=ck)jP(X(j)=x(j)Y=ck)P(Y=ck)jP(X(j)=x(j)Y=ck)
    当特征值为x的时候,计算所有类别的条件概率,选取条件概率最大的类别作为x的类别。由于分母都是一样的,所以比较的时候只需要比较分子即可。
    朴素贝叶斯的分类算法又根据先验概率的形式分为高斯分布的朴素贝叶斯,多项式分布的朴素贝叶斯和伯努利分布的朴素贝叶斯。

  2. 朴素贝叶斯应用场景
    朴素贝叶斯一般用于分类,比如文本分类,情感分析等。

  3. 朴素贝叶斯的优缺点
    优点:
    对小规模数据表现很好,能处理多分类任务,适合做增量训练,对缺失数据不敏感,运行速度比较快。
    缺点:
    前提条件是假设独立分布,但是这个假设不好做到,导致对于属性关联度大的,误差较大;需要知道先验概率,而先验概率很多时候取决于假设,有时候假设不成立,概率就不准确。

4.朴素贝叶斯sklearn参数学习
4.1 高斯朴素贝叶斯,分布满足高斯分布(正态分布):
sklearn.naive_bayes.GaussianNB(priors=None)
Priors:先验概率大小,如果没有给定,模型则根据样本数据自己计算(最大似然估计法)
对象:
class_prior_:每个样本的概率
class_count:每个类别的样本数量
theta_:每个类别中每个特征的均值
sigma_:每个类别中每个特征的方差

4.2 多项式分类贝叶斯,适用于服从多项分布的特征数据:
sklearn.naive_bayes.MultinomialNB(alpha=1.0, fit_prior=True, class_prior=None)
alpha:先验平滑因子,默认为1,当等于1的时候表示拉普拉斯平滑;
fit_prior:是否去学习类的先验概率,默认为true
class_prior:各类别的先验概率,如果没有制定,模型则根据数据自动计算。
对象:
class_log_prior_:每个类别平滑后的先验概率
intercept_:朴素贝叶斯对应的线性模型,其值和class_log_prior_相同
feature_log_prob_:给定特征类别的对数概率(条件概率)。 特征的条件概率=(指定类下指定特征出现的次数+alpha)/(指定类下所有特征出现次数之和+类的可能取值个数*alpha)
coef_: 是朴素贝叶斯对应的线性模型,其值和feature_log_prob相同
class_count_: 训练样本中各类别对应的样本数
feature_count_: 每个类别中各个特征出现的次数

4.3 伯努利朴素贝叶斯,用于多重伯努利分布的数据,即有多个特征,但每个特征都假设是一个二元变量。
sklearn.naive_bayes.BernoulliNB(alpha=1.0, binarize=0.0, fit_prior=True, class_prior=None)
alpha:平滑因子,与多项式中的alpha一致。
binarize:样本特征二值化的阈值,默认是0。如果不输入,则模型会认为所有特征都已经是二值化形式了;如果输入具体的值,则模型会把大于该值的部分归为一类,小于的归为另一类。
fit_prior:是否去学习类的先验概率,默认是True
class_prior:各个类别的先验概率,如果没有指定,则模型会根据数据自动学习, 每个类别的先验概率相同,等于类标记总个数N分之一
对象
class_log_prior_:每个类别平滑后的先验对数概率。
feature_log_prob_:给定特征类别的经验对数概率。
class_count_:拟合过程中每个样本的数量。
feature_count_:拟合过程中每个特征的数量

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值