ML笔记之choosing right estimator——有监督分类Part2(Naive Bayes)

scikit-learn 流程图
在机器学习过程中,一项重要问题就是针对不同类型的数据集和问题进行合适的模型选择。
在python的scikit文档库中提供了一般的模型选择流程:
ml-map

Naive Bayes算法

NB算法的要点

朴素贝叶斯算法十分简单,需要注意以下几点:
1. 根据条件独立性假设,即

P(xi|y,x1,...,xi1,xi+1,...,xn)=P(xi|y)

2. 利用极大似然估计得到 P(xi|y) P(y) 的参数估计值
3. 然后选取后验概率 P(y=ci|X) 最大的分类项
4. NB算法是典型的生成算法,低方差,高偏差,适合在样本量较小的情况下(<100k)使用


不同分类假设的NB模型

  1. GaussianNB分类器
    P(xi|y)=12πσ2yexp(xiμy)22σ2y
    主要用来解决连续性变量问题
  2. Multinomial NB分类器是文本分类的经典NB算法。类样本出现特征的概率是频率的平滑估计
    θ^yi=Nyi+αNy+αn
    α=1 是Laplace平滑
  3. Bernoulli NB分类器:对不出现的已知特征添加惩罚系数

不同分类的讨论

主要是对Multinomial 和 Bernoulli NB分类器进行区分(*^_^*)
- 二者均适用于文本分类模型
- Multinomial模型适用于word count vectors/ Bernoulli模型适用于word occourrence vectors
- 对于特别短的文档,Bernoulli NB模型可能更好一些

问题:
不能学习特征之间的交互关系,对于条件独立性假设不能满足的问题偏差较大(但是同时,速度很快,准确率还凑合)

scikit-learn的NB算法库

GaussianNB/MultinomialNB/BernoulliNB
常用的方法有.fit,.predict等等

待补充论文问题

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值