【数据挖掘】朴素贝叶斯分类器 ( 多属性概率计算 | 您所在的位置:网站首页 › r语言朴素贝叶斯分类器运行结果是什么意思 › 【数据挖掘】朴素贝叶斯分类器 ( 多属性概率计算 |
文章目录一、 朴素贝叶斯分类器 简介二、 后验概率 及 对比内容三、 先验概率 及 未知处理方案四、 处理多属性数据集方案五、 朴素贝叶斯分类 案例一、 朴素贝叶斯分类器 简介 1 . 分类任务简介 : ① 样本和属性 : 给定一个数据集 , 每个样本都有 n维的特征向量 , 即每个样本有 n个属性值 ; ② 属性值分类 : 样本的某个属性值 D有 m个取值类型 , 即根据该属性 D可以将样本分为 m类 ; ③ 分类操作 : 给定未知样本 X, 将其按照属性值 D, 分为 m个类型中的一类 ; 2 . 朴素贝叶斯分类器 分类过程 : ① 提出假设 : 假设属性的 m个取值分别是 \{ C_1 , C_2 , \cdots , C_m \}; ② 计算每个分类的概率 : 样本 X属于 C_1类别的概率 : P(C_1 | X); 样本 X属于 C_2类别的概率 : P(C_2 | X); \vdots样本 X属于 C_m类别的概率 : P(C_m | X); ③ 分类结果确定 : 将样本 X分类为 C_i类别 , 前提是该类别概率是最大的 , 其大于其余 X样本属于其余类别的概率 , 表示为 : P(C_i | X) > P(C_j | X) , 1 \leq j \leq m , j \not = i二、 后验概率 及 对比内容1 . 后验概率 : 上述的 样本 X属于 C_i类别的概率 P(C_i | X)是最大的 , 贝叶斯方法中会将该 X样本分类为 C_i类别 , 同时该最大概率称为 后验概率 ; 根据贝叶斯定理可以计算后验概率值 : P(C_i | X) = \frac{P(X | C_i) P(C_i)}{P(X)}2 . 对比不同假设的概率 : ① 不考虑 P(X): P(X)是一个常数 , 可以不考虑该值 , 所有的概率都除以了该值 , 对比各个类别概率时 , 可以不考虑改值具体是多少 ; ② 对比内容 : 只对比不同概率的 P(X | C_j) P(C_j) , 1 \leq j \leq m的值大小即可 ; 三、 先验概率 及 未知处理方案1 . 先验概率未知 : 如果先验概率 P(C_j) , 1 \leq j \leq m是未知的 2 . 概率相等策略 : 那么假定这些类型 \{ C_1 , C_2 , \cdots , C_m \}出现的概率是相等的 ; ① 如 : 进行邮件过滤时 , 不知道收到正常邮件 , 和垃圾邮件的概率各是多少 , 假定 50\%概率收到正常邮件 , 假定 50\%概率收到垃圾邮件 ; ② 如果上述类别的先验概率 P(C_j) , 1 \leq j \leq m相等 , 那么只需要对比 似然概率 P(X | C_j) , 1 \leq j \leq m的大小即可 ; 3 . 使用测试集数据计算先验概率 : ① 已知条件 : S是训练集数据样本总个数 , S_j , 1 \leq j \leq m是被分类为 S_j类别的样本个数 , 即属性 D取值 S_j的样本个数 ; ② 计算方法 : 计算 P(C_j) , 1 \leq j \leq m先验概率 , 使用 P(C_j) = \frac{S_j}{S}公式计算即可 , 即将本训练集中的分类比例当做其先验概率 ; 四、 处理多属性数据集方案1 . 多属性特征 : 如果要处理的样本数据的特征有 n个属性 , 其取值 \{X_1 , X_2 , \cdots , X_n\}组成了向量 X; 2 . 后验概率 : 计算最终分类为 C_1时 , 多个属性的取值为 X向量的概率 , 即 P(X | C_1)3 . 朴素贝叶斯由来 : 朴素地认为这些属性之间不存在依赖关系 , 就可以使用乘法法则计算这些属性取值同时发生的概率 ; 4 . 计算单个分类概率 : 分类为 C_1时 n个属性每个取值取值概率 : 当最终分类为 C_1时 , 第 1个属性取值 X_1的概率为 P(X_1 | C_1); 当最终分类为 C_1时 , 第 2个属性取值 X_2的概率为 P(X_2 | C_1); \vdots当最终分类为 C_1时 , 第 n个属性取值 X_n的概率为 P(X_n | C_1); 最终分类为 C_1时 , n个属性取值 X向量的概率 : P(X|C_1) = \prod_{k=1}^n P( X_k | C_1 )5 . 多属性分类概率总结 : 分类为 C_i时 n个属性取值 X向量的概率为 : P(X|C_i) = \prod_{k=1}^n P( X_k | C_i )6 . 分类属性 P( X_k | C_i )计算方式 : 如果第 k个属性的取值是离散的 , 即分类属性 , 那么通过以下公式计算 : P( X_k | C_i ) = \frac{S_{ik}}{S_i}S_i是分类为 C_i类型的数据集样本个数 ; S_{ik}是被分类成 C_i类型的样本中 , 并且第 k个值是 X_k的样本个数 ; 7 . 回归属性 P( X_k | C_i )计算方式 : 如果第 k个属性的取值是连续的 , 即回归属性 , 那么通过以下公式计算 : P( X_k | C_i ) = g(x_k , \mu_{C_i}, \sigma_{C_i}) = \frac{1}{ \sqrt {2 \pi} \sigma_{C_i} }e ^ {- \frac{( x - \mu_{C_i} ) ^ 2}{2 \sigma_{C_i}^2}}这是通过概率密度函数进行计算 , 假定该属性服从高斯分布概率模型 ; g(x_k , \mu_{C_i}, \sigma_{C_i})是高斯分布概率密度函数 , \mu_{C_i}是平均值 , \sigma_{C_i}是标准差 ; 8 . 样本分类 : ① 样本 : 给出未知属性类型样本 , 其 n个已知的属性取值为 X向量 ; ② 分类个数 : 其根据分类属性可能分为 m类 ; ③ 分类 : 求其取值为 X向量时 , 分类为 C_i的概率 , 哪个概率最大 , 其被分为哪个 C_i类型 , 表示为 P(C_i | X) = \frac{P(X | C_i) P(C_i)}{P(X)}④ 后验概率 : 多属性取值为 X向量时 , 分类为 C_i的概率进行比较 , 分母都是 P(X), 是一个常数 , 可以不考虑这种情况 , 只比较 P(X | C_i) P(C_i)值的大小 , P(X | C_i) P(C_i)值最大的情况 , 就是分类的目标分类 C_i, 也就是后验概率 ; 五、 朴素贝叶斯分类 案例1 . 需求 : 根据 年龄 , 收入水平 , 是否是学生 , 信用等级 , 预测该用户是否会购买商品 ; 年龄 收入水平 是否是学生 信用等级 是否购买商品 小于 30 岁 高收入 不是 一般 不会 小于 30 岁 高收入 不是 很好 不会 31 ~ 39 岁 高收入 不是 一般 会 40 岁以上 中等收入 不是 一般 会 40 岁以上 低收入 是 一般 会 40 岁以上 低收入 是 很好 不会 31 ~ 40 岁 低收入 不是 很好 会 小于 30 岁 中等收入 不是 一般 不会 小于 30 岁 低收入 是 一般 会 40 岁以上 中等收入 是 一般 会 小于 30 岁 中等收入 是 很好 会 31 ~ 39 岁 中等收入 不是 很好 会 31 ~ 39 岁 高收入 是 一般 会 40 岁以上 中等收入 不是 很好 不会 2 . 为某未知类型样本进行分类 ; ① 未知样本的 4个属性值为 : 年龄 小于 30 岁 , 收入 中等 , 是否是学生 是 , 信用等级 一般 , 四个值组成向量 X; ② 分类类型 : 是否购买商品 , 是 或者 否 ; 购买商品为 时间 Y, 不购买商品为事件 N; ③ 样本 4个属性取值 X, 并且类型为 Y的概率 : P(Y | X); ④ 样本 4个属性取值 X, 并且类型为 N的概率 : P(N | X); 3 . 计算取值 X向量时 , 某分类的概率 P(Y | X): ① 以 P(Y | X)计算为例 : 样本 4个属性取值 X, 并且类型为 Y的概率 , 直接求该概率是无法计算的 ; ② 引入贝叶斯公式 : 使用其逆概率 P(X|Y), 当类型是 Y是 , 取值为 X的概率 ; P(Y | X) = \frac{P(X|Y) P(Y)}{P(X)}③ 逆概率 P(X|Y): 当类型是 Y是 , 取值为 X的概率 ; 即 当购买商品时 , 前 4个属性取值为 X向量的概率 ; 4 . 计算取值 X向量时 , 某分类的概率 P(N | X): ① 以 P(N | X)计算为例 : 样本 4个属性取值 X, 并且类型为 N的概率 , 直接求该概率是无法计算的 ; ② 引入贝叶斯公式 : 使用其逆概率 P(X|N), 当类型是 N是 , 取值为 X的概率 ; P(N | X) = \frac{P(X|N) P(N)}{P(X)}③ 逆概率 P(X|N): 当类型是 N是 , 取值为 X的概率 ; 即 当购买商品时 , 前 4个属性取值为 X向量的概率 ; 5 . 比较取值 Y和 取值 N的两个概率 : ① 原始概率 : 将 P(N | X)和 P(Y | X)两个概率进行比较 ; 即 \frac{P(X|Y) P(Y)}{P(X)}和 \frac{P(X|N) P(N)}{P(X)}两个概率进行比较 ; ② 省略分母比较分子 : 分母都是 P(X), 可以只比较分子 , P(X|Y) P(Y)和 P(X|N) P(N)进行比较 ; 6 . 计算 2个先验概率 : P(Y)表示购买商品的概率 , 即上面 14个训练集样本中 , 购买商品的概率 , 是 \frac{9}{14}; P(N)表示不买商品的概率 , 即上面 14个训练集样本中 , 不买商品的概率 , 是 \frac{5}{14}; 7 . 计算 P(X|Y)概率 : 样本用户购买商品时 , 前 4个属性取值 X向量的概率 ; ① 属性独立 : 朴素贝叶斯分类中认为属性间都是独立的 , 互不干扰 , 可以将 “前 4个属性取值 X向量的概率” 变成概率乘积 ; ② 未知样本的 4个属性值为 : 年龄 小于 30 岁 , 收入 中等 , 是否是学生 是 , 信用等级 一般 , 四个值组成向量 X; P(X|Y)计算 : 买商品的用户样本中 , 取值为 X向量的概率 , 如下 : P(X|Y) = P( 年龄小于 30 | Y) \times P( 收入中等 | Y) \times P( 是学生 | Y) \times P( 信用等级一般 | Y)其中 : P( 年龄小于 30 | Y)买商品的用户中 , 年龄 小于 30 岁的概率 ; P( 收入中等 | Y)买商品的用户中 , 收入中等的概率 ; P( 是学生 | Y)买商品的用户中 , 是学生的概率 ; P( 信用等级一般 | Y)买商品的用户中 , 信用等级一般的概率 ; ③ P( 年龄小于 30 | Y)计算 : 9个人买商品 , 其中有 2个小于 30 岁 ; P( 年龄小于 30 | Y) = \frac{2}{9}④ P( 收入中等 | Y)计算 : 9个人买商品 , 其中有 4个 中等收入者 ; P( 收入中等 | Y) = \frac{4}{9}⑤ P( 是学生 | Y)计算 : 9个人买商品 , 其中有 6个 是学生 ; P( 是学生 | Y) = \frac{6}{9}⑥ P( 信用等级一般 | Y)计算 : 9个人买商品 , 其中有 6个人信用等级一般 ; P( 信用等级一般 | Y) = \frac{6}{9}⑦ P(X|Y)计算结果 : \begin{array}{lcl} P(X|Y) &=& P( 年龄小于 30 | Y) \times P( 收入中等 | Y) \times P( 是学生 | Y) \times P( 信用等级一般 | Y) \\\\ &=& \frac{2}{9} \times \frac{4}{9} \times \frac{6}{9} \times \frac{6}{9} \\\\ \end{array}8 . 计算 P(X|Y) P(Y)值 : P(X|Y) =\frac{2}{9} \times \frac{4}{9} \times \frac{6}{9} \times \frac{6}{9}P(Y) = \frac{9}{14}P(X|Y) P(Y) = \frac{2}{9} \times \frac{4}{9} \times \frac{6}{9} \times \frac{6}{9} \times \frac{9}{14} \approx 0.02821869488536169 . 计算 P(X|N)概率 : 样本用户没有购买商品时 , 前 4个属性取值 X向量的概率 ; ① 属性独立 : 朴素贝叶斯分类中认为属性间都是独立的 , 互不干扰 , 可以将 “前 4个属性取值 X向量的概率” 变成概率乘积 ; ② 未知样本的 4个属性值为 : 年龄 小于 30 岁 , 收入 中等 , 是否是学生 是 , 信用等级 一般 , 四个值组成向量 X; P(X|N)计算 : 不买商品的用户样本中 , 取值为 X向量的概率 , 如下 : P(X|N) = P( 年龄小于 30 | N) \times P( 收入中等 | N) \times P( 是学生 | N) \times P( 信用等级一般 | N)其中 : P( 年龄小于 30 | N)不买商品的用户中 , 年龄 小于 30 岁的概率 ; P( 收入中等 | N)不买商品的用户中 , 收入中等的概率 ; P( 是学生 | N)不买商品的用户中 , 是学生的概率 ; P( 信用等级一般 | N)不买商品的用户中 , 信用等级一般的概率 ; ③ P( 年龄小于 30 | N)计算 : 5个人不买商品 , 其中有 3个小于 30 岁 ; P( 年龄小于 30 | N) = \frac{3}{5}④ P( 收入中等 | N)计算 : 5个人不买商品 , 其中有 2个 中等收入者 ; P( 收入中等 | N) = \frac{2}{5}⑤ P( 是学生 | N)计算 : 5个人不买商品 , 其中有 1个 是学生 ; P( 是学生 | N) = \frac{1}{5}⑥ P( 信用等级一般 | N)计算 : 5个人不买商品 , 其中有 $2 个人信用等级一般 ; P( 信用等级一般 | N) = \frac{2}{5}⑦ P(X|N)计算结果 : \begin{array}{lcl} P(X|N) &=& P( 年龄小于 30 | N) \times P( 收入中等 | N) \times P( 是学生 | N) \times P( 信用等级一般 | N) \\\\ &=& \frac{3}{5} \times \frac{2}{5} \times \frac{1}{5} \times \frac{2}{5} \\\\ \end{array}10 . 计算 P(X|N) P(N)值 : P(X|N) = \frac{3}{5} \times \frac{2}{5} \times \frac{1}{5} \times \frac{2}{5}P(N) = \frac{5}{14}P(X|N) P(N) = \frac{3}{5} \times \frac{2}{5} \times \frac{1}{5} \times \frac{2}{5} \times \frac{5}{14} \approx 0.006857142857142911 . 比较 P(X|Y) P(Y)和 P(X|N) P(N)两个值 : P(X|Y) P(Y) = \frac{2}{9} \times \frac{4}{9} \times \frac{6}{9} \times \frac{6}{9} \times \frac{9}{14} \approx 0.0282186948853616P(X|N) P(N) = \frac{3}{5} \times \frac{2}{5} \times \frac{1}{5} \times \frac{2}{5} \times \frac{5}{14} \approx 0.0068571428571429由上面进行对比得出 , 使用朴素贝叶斯分类 , 该样本用户会购买商品 ; |
CopyRight 2018-2019 实验室设备网 版权所有 |