贝叶斯算法
朴素贝叶斯分类是一种十分简单的分类算法,叫它朴素贝叶斯分类是因为这种方法的思想真的很朴素,朴素贝叶斯的思想基础是这样的:对于给出的待分类项,求解在此项出现的条件下各个类别出现的概率,哪个最大,就认为此待分类项属于哪个类别。
贝叶斯的公式很简单,其实就是
那么贝叶斯公式
那么看我说的有些主观,让我们看例子
一所学校里面有 60% 的男生,40% 的女生。男生总是穿长裤,女生则一半穿长裤一半穿裙子。有了这些信息之后我们可以容易地计算“随机选取一个学生,他(她)穿长裤的概率和穿裙子的概率是多大”,这个就是前面说的“正向概率”的计算。然而,假设你走在校园中,迎面走来一个穿长裤的学生(很不幸的是你高度近似,你只看得见他(她)穿的是否长裤,而无法确定他(她)的性别),你能够推断出他(她)是男生的概率是多大吗?
那么数据挖掘,我们有一个要我们分类的x,他有属性a1、a2
我们还有各种类
我们计算出
那么得到最大的一个
简单的,假如我们按照某人是否打球来划分天气。
这个例子数据挖掘
Day | Outlook | Temperature | Humidity | Wind | PlayTennis |
D1 | Sunny | Hot | High | Weak | No |
D2 | Sunny | Hot | High | Strong | No |
D3 | Overcast | Hot | High | Weak | Yes |
D4 | Rain | Mild | High | Weak | Yes |
D5 | Rain | Cool | Normal | Weak | Yes |
D6 | Rain | Cool | Normal | Strong | No |
D7 | Overcast | Cool | Normal | Strong | Yes |
D8 | Sunny | Mild | High | Weak | No |
D9 | Sunny | Cool | Normal | Weak | Yes |
D10 | Rain | Mild | Normal | Weak | Yes |
D11 | Sunny | Mild | Normal | Strong | Yes |
D12 | Overcast | Mild | High | Strong | Yes |
D13 | Overcast | Hot | Normal | Weak | Yes |
D14 | Rain | Mild | High | Strong | No |
我们要分类Outlook=sunny, Temperature=cool,Humidity=high,Wind=strong
那么我们首先算出所有
然后就是每个列属性
Outlook
Outlook==Sunny 有5个,其中
然后Outlook==Overcast 有4,其中yes=4,no=0
outlook | Sunny | Overcast | Rain |
---|---|---|---|
yes | 2 | 4 | 3 |
no | 3 | 0 | 2 |
总 | 5 | 4 | 5 |
那么就可以得到
接着对全部的计算
我们类别yes,no可以
因为
参考:
- 数学之美番外篇:平凡而又神奇的贝叶斯方法