博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
分类算法之朴素贝叶斯——简单天气预报算法
阅读量:4688 次
发布时间:2019-06-09

本文共 1358 字,大约阅读时间需要 4 分钟。

     这两天学习了一个相对照较简单可是十分有用的分类算法——贝叶斯分类算法,与我做项目使用的svm算法相比确实有非常多精妙之处,。好比撒尿牛丸——好吃又好玩。而贝叶斯分类器则是简单又强大。本文结合简单天气预报进行解说。

贝叶斯定理:

贝叶斯定理是概率论里面一个计算条件概率的法器!

为什么是法器,且看后文。先摆出计算公式:

    
或许乍一看这公式没什么。可是我们先将公式移项得:P(A|B)P(B)=P(AB)。此时再将A与B互换一下。发现什么没有?一个伟大的公式来了:
  P(A|B)P(B)=P(AB)=P(B|A)P(A)
=>
整个分类算法的核心思路就是依据这个公式!

为什么?且往下看!

什么是分类:

比方。如果将天气分为简单的晴天和雨天,那么晴天和雨天各为一个分类。

那么,怎样进行天气预报 ? 非常easy,利用已知的一些大气特性!

为了简化问题,这里如果大气对天气预报实用的属性仅仅有空气湿度、云层密度两个特征属性。那么 天气预測就是: 提供某一天的空气湿度和云层密度两个属性值,输出一个晴天或雨天的结果!

朴素贝叶斯依据上述问题简化进行简单天气预測:

对于之前的天气预測问题的简化看起来和之前的公式没什么联系,可是请大家细看:
假设用H表示湿度,而且湿度分为1、2、3级分别表示为h1、h2、h3。 而云层密度用G表示,也分为1、2、3级,分别用g1、g2、g3表示。另外,天气W表示,分为1、2两级。晴天和雨天分别表示为w1、w2 。 
那么,通过以往的数据我们能够统计
出现晴天或者雨天结果时(条件)
h和g出现
的概率。即:P( H | W)、和 P( G | W ) 。当中H、G、W在之前提到的分级值范围内取值, 假设空气湿度H和云层密度G 相对独立,那么天气预报转换为求:
P=P(W |G,H )=P(W|G)xP(W|H) 
利用之前的公式转化为:
P=[P(G|W)P(W)/P(G) ]X[P(H|W)P(W)/P(H)]
上式的P(G|W) 、P(H|W) 为之前统计出的概率,而P(W)为天气为晴天和雨天的概率,能够统计出晴天概率P(W1)和雨天概率P(W2),而P(G)、P(H)对每个分类类别为常数,比方无论H是1、2、3哪一种,P(H)都是常数(想想为什么?
 到此,我们就能够进行预測了!

天晴的概率:
P1=P(w1|G,H)=[P(G|W1)P(W1)/P(G)]X[P(H|W1)P(W1)/P(H)]
雨天的概率:
P2=P(w2|G,H)=[P(G|W2)P(W2)/P(G)]X[P(H|W2)P(W2)/P(H)]
当中等式的右边各个式子均为已知项。比如某天的湿度为h1,云层密度为g1,则课分别带入上面的公式。然后比較P1和P2的大小!
这样,就能够简单地预測天气了!
总结:贝叶斯可依据样本数据的概率统计而进行分类概率预測,在非常多问题上可用,比方推断微博用户是否为僵尸账号!详细就不说了。
通用的
朴素贝叶斯分类的正式定义例如以下:

      1、设为一个待分类项,而每一个a为x的一个特征属性。

      2、有类别集合

      3、计算

通常将P最大的项。作为目标分类。

转载于:https://www.cnblogs.com/mengfanrong/p/5243493.html

你可能感兴趣的文章
MySQL命令行参数
查看>>
MFC中 用Static控件做超链接(可以实现变手形、下划线、字体变色等功能)
查看>>
python 抓取小说网站,制作电子书。
查看>>
失去光标display=none事件的坑
查看>>
[LeetCode] Majority Element II
查看>>
[cocos2dx动作]CCLabel类数字变化动作
查看>>
(转)Excel的 OleDb 连接串的格式(连接Excel 2003-2013)
查看>>
Java并发编程
查看>>
[转]MySQL数据库管理常用命令
查看>>
Git Stash用法
查看>>
Android 读取文件内容
查看>>
sql server 2008学习8 sql server存储和索引结构
查看>>
Jquery radio选中
查看>>
《Visual C++ 2010入门教程》系列二:安装、配置和首次使用VS2010
查看>>
Best Time to Buy and Sell Stock with Cooldown_LeetCode
查看>>
postgressql数据库中limit offset使用
查看>>
测试思想-集成测试 关于接口测试 Part 2
查看>>
windows下mysql密码忘了怎么办?【转】
查看>>
java文件上传和下载
查看>>
SQL联合查询(内联、左联、右联、全联)的语法(转)
查看>>