朴素贝叶斯分类算法介绍及实现

一、算法简介
朴素贝叶斯法是基于贝叶斯定理与特征条件独立假设(这也是为什么成为朴素贝叶斯算法的原因,如果特征不不独立,则需要用到贝叶斯网络模型,此文不做介绍)的分类方法。对于给定的训练集,首先基于特征条件独立假设学习输入/输出的联合概率分布,然后根据学得的模型,对于给定的输入x,模型根据后验概率最大化输出y(也就是x的类别)。
二、算法执行步骤
1.准备数据训练集
2.格式化数据以满足算法输入要求
3.分析数据训练算法
4.测试算法的效果
5.算法的应用
详细点来说就是,拿到一个文本,我们首先对文本进行分割,得到单词向量,然后根据单词向量来计算概率,最后拿训练好的模型去做预测分类。
这里构建单词向量的时候,会遇到两种单词模型:
1> 词集模型,它将每个次是否出现作为一个特征,而不考虑出现的次数
2> 词袋模型,它记录每个词出现的次数,有时候能表达出词集模型所表达不出来的场景
具体使用某种模型,可以具体问题具体分析,朴素贝叶斯算法总的来说还是很简单的,接下来看个简单的demo来加深理解。
三、算法示例
生活中很多我们知道的或不知道的,都在潜移默化的应用着贝叶斯算法的思想,比如常见的文本分类(恶意留言筛选)、垃圾邮件过滤器、智能化推荐等等。我们就拿垃圾邮件过滤器的例子来说明一下算法的应用。
首先拿到一个待分类的邮件地址,我们应该先对邮件字符串进行分割,得到词组向量,然后对比数据集库,计算那些垃圾邮件特征出现的概率,利用后验概率最大化原则返回分类结果。
具体代码请参考我的github,上面有详细的代码注释。
https://github.com/GritCoder/bayes.git
参考资料:统计学习方法 李航
Machine Learning in Action

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值