标签:机器学习 朴素贝叶斯 分类 统计学习方法 journey
本文主要描述了朴素贝叶斯分类方法,包括模型导出和学习描述。实例部分总结了《machine learning in action》一书中展示的一个该方法用于句子感情色彩分类的程序。
根据贝叶斯定理,对一个分类问题,给定样本特征x,样本属于类别y的概率是
下面介绍如何从数据中,学习得到朴素贝叶斯分类模型。概述分类方法,并提出一个值得注意的问题。
学习 1.首先,我们来计算公式(2)中的
p(y=ck)
p(y=ck)=∑Ni=1I(yi=ck)N。。。。(3)
其中I(x) 为指示函数,若括号内成立,则计1,否则为0。
学习 2.接下来计算分子中的条件概率,设
M 维特征的第j 维有L 个取值,则某维特征的某个取值ajl ,在给定某分类ck 下的条件概率为:
p(xj=ajl|y=ck)=∑Ni=1I(xji=ajl,yi=ck)∑Ni=1I(yi=ck)。。。(4)
经过上述步骤,我们就得到了模型的基本概率,也就完成了学习的任务。
分类 1.计算该实例属于y=ck 类的概率
p(y=ck|X)=p(y=ck)∏j=1np(X(j)=x(j)|y=ck)。。。(5)
分类 2.确定该实例所属的分类y
y=argmaxckp(y=ck|X)。。。。(6)
于是我们得到了新实例的分类结果
p(y=ck)=∑Ni=1I(yi=ck)+λN+Kλ。。。。(7)
K 是类的个数
p(xj=ajl|y=ck)=∑Ni=1I(xji=ajl,yi=ck)+λ∑Ni=1I(yi=ck)+Ljλ。。。(8)
Lj 是第j 维特征的最大取值
可以证明,改进以后的(7)(8)仍然是概率。平滑因子
代码块语法遵循标准markdown代码,例如:
@requires_authorization
def somefunc(param1=‘‘, param2=0):
‘‘‘A docstring‘‘‘
if param1 > param2: # interesting
print ‘Greater‘
return (param2 - param1 + 1) or None
class SomeClass:
pass
>>> message = ‘‘‘interpreter
... prompt‘‘‘
生成一个脚注1.
用 [TOC]
来生成目录:
[1]:
机器学习笔记:朴素贝叶斯方法(Naive Bayes)原理和实现
标签:机器学习 朴素贝叶斯 分类 统计学习方法 journey
原文地址:http://blog.csdn.net/tanhongguang1/article/details/45016421