《数据挖掘(完整版)》笔记——贝叶斯分类器

1. 贝叶斯定理在分类中的应用

P ( Y ∣ X ) = P ( X ∣ Y ) P ( Y ) / P ( X ) P(Y | \mathbf X)= P(\mathbf X|Y)P(Y)/P(\mathbf X) P(YX)=P(XY)P(Y)/P(X)

在比较不同 Y Y Y值的后验概率时, P ( X ) P(\mathbf X) P(X)是常数,先验概率 P ( Y ) P(Y) P(Y)可以通过计算训练集中属于每个类的训练记录所占的比例很容易地估计,类条件概率 P ( X ∣ Y ) P(\mathbf X|Y) P(XY)的估计我们介绍两种贝叶斯分类方法的实现:(1)朴素贝叶斯分类器(2)贝叶斯信念网

2. 朴素贝叶斯分类器

朴素贝叶斯分类器在估计类条件概率时假设属性之间条件独立,即

P ( X ∣ Y = y ) = ∏ i = 1 d P ( X i ∣ Y = y ) P(\mathbf X|Y=y)=\prod_{i=1}^dP(X_i|Y=y) P(XY=y)=i=1dP(XiY=y)

每个属性集 X = { X 1 , X 2 , ⋯   , X d } \mathbf X = \left \{ X_1,X_2, \cdots, X_d \right \} X={X1,X2,,Xd}

有了条件独立的假设,就不必计算 X \mathbf X X的每一组合的类条件概率,只需对给定的 Y Y Y,计算每一个 X i X_i Xi的条件概率

分类测试记录时,朴素贝叶斯分类器对每个类 Y Y Y计算后验概率:

P ( Y ∣ X ) = P ( Y ) ∏ i = 1 d P ( X i ∣ Y ) / P ( X ) P(Y | \mathbf X)= P(Y)\prod_{i=1}^d P(X_i|Y)/P(\mathbf X) P(YX)=P(Y)i=1dP(XiY)/P(X)

分母为常数,故只要找出使得分子 P ( Y ) ∏ i = 1 d P ( X i ∣ Y ) P(Y)\prod_{i=1}^d P(X_i|Y) P(Y)i=1dP(XiY)最大的类就足够了

估计分类属性的条件概率
对分类属性 X i X_i Xi,根据类 y y y中属性值等于 x i x_i xi的训练实例的比例来估计条件概率 P ( X i = x i ∣ Y = y ) P(X_i=x_i|Y=y) P(Xi=xiY=y)

估计连续属性的条件概率
朴素贝叶斯分类器使用两种方法估计连续属性的类条件概率:

(1)把一个连续的属性离散化,通过计算类 y y y的训练记录落入 X i X_i Xi对应区间的比例来估计条件概率 P ( X i ∣ Y = y ) P(X_i|Y=y) P(XiY=y). 估计误差由离散策略和离散区间的数目决定

(2)假设连续变量服从某概率分布,然后使用训练数据估计分布的参数。高斯分布通常被用来表示连续属性的类条件概率分布:

P ( X i = x i ∣ Y = y ) = 1 2 π σ i j e − ( x i − μ i j ) 2 2 σ i j 2 P(X_i=x_i|Y=y)= \frac{1}{ \sqrt{2 \pi } \sigma_{ij} }e^{- \frac{(x_i-\mu_{ij})^2}{2\sigma_{ij}^2}} P(Xi=xiY=y)=2π σij1e2σij2(xiμij)2

可以用类 y i y_i yi的所有训练记录关于 X i X_i Xi的样本均值 x ˉ \bar x xˉ μ i j \mu _{ij} μij,用训练记录的样本方差 s 2 s^2 s2 σ i j 2 \sigma_{ij}^2 σij2

连续随机变量的密度函数在某一特定点的概率为0,故我们应该计算 X i X_i Xi落在区间 x i x_i xi x i + ε x_i+\varepsilon xi+ε的条件概率, ε \varepsilon ε是一个非常小的常数

P ( x i ⩽ X i ⩽ x i + ε ∣ Y = y i ) = ∫ x i x i + ε f d X i ≈ f × ε P(x_i\leqslant X_i \leqslant x_i + \varepsilon|Y=y_i)=\int_{x_i}^{x_i+\varepsilon}fdX_i \approx f \times \varepsilon P(xiXixi+εY=yi)=xixi+εfdXif×ε

由于 ε \varepsilon ε是每个类的一个常量乘法因子,在对厚颜概率进行规范化的时候就抵消掉了

条件概率的m估计
有一个潜在问题:如果有一个属性的类条件概率等于0,则整个类的厚颜概率等于0. 仅使用记录比例来估计类条件概率的方法想的太脆弱,尤其当训练样例很少而且属性数目又很大

一种极端的情况是,当训练样例不能覆盖那么多的属性值时,我们可能就无法分类某些测试记录。解决该问题的途径是使用 m估计

P ( x i ∣ y j ) = n c + m p n + m P(x_i|y_j) = \frac{n_c+mp}{n+m} P(xiyj)=n+mnc+mp

n n n是类 y j y_j yj中的实例总数, n c n_c nc是类 y j y_j yj的训练样例中取值为 x i x_i xi的样例数, m m m是称为等价样本大小的参数, p p p是用户指定的参数。如果没有训练集( n = 0 n=0 n=0),则 P ( x i ∣ y j ) = p P(x_i|y_j)=p P(xiyj)=p,因此 p p p可以看做是在类 y j y_j yj的记录中观察属性 x i x_i xi的先验概率。等价样本大小决定先验概率 p p p和观测概率 n c / n n_c/n nc/n之间的平衡

3. 朴素贝叶斯分类器的特征

  • 面对鼓励的噪声点,朴素贝叶斯分类器是稳健的。因为从数据中估计条件概率时,这些点会被平均。通过在建模和分类时忽略样例,朴素贝叶斯分类器也可以处理属性值遗漏问题
  • 面对无关属性,该分类器是稳健的。如果 X i X_i Xi是无关属性,那么 P ( X i ∣ Y P(X_i|Y P(XiY几乎变成了均匀分布。 X i X_i Xi的类条件概率不会对总的后验概率的计算产生影响
  • 相关属性可能会降低朴素贝叶斯分类器的性能,因为对这些属性,条件独立的假设已不成立

4. 贝叶斯误差率

当先验概率不同时,决策边界朝着先验概率较小的类移动。

E r r o r = ∫ o x ^ P ( 鳄 鱼 ∣ X ) d X + ∫ x ^ ∞ P ( 美 洲 鳄 ∣ X ) d X Error = \int_o^{\hat x}P(鳄鱼|X)dX+\int_{\hat x}^{\infty}P(美洲鳄|X)dX Error=ox^P(X)dX+x^P(X)dX
在这里插入图片描述

5. 贝叶斯信念网络(BBN)

该方法不要求给定类的所有属性都条件独立,而是允许指定哪些属性条件独立。

5.1 模型表示

BBN用图形表示一组随机变量之间的概率关系,主要由两个部分组成:

(1)一个有向无环图,表示变量之间的依赖关系
(2)一个概率表,把各结点和它的直接父节点关联起来

图中每个结点表示一个变量,每条弧表示两个变量之间的依赖关系,如果从X到Y有一条弧,则X是Y的父母,Y是X的子女。另外,如果网络中存在一条从X到Z的有向路径,则X是Z的祖先,Z是X的后代

BNN的一个重要性质表述如下:

条件独立 贝叶斯网络中的一个结点,如果它的父母结点已知,则它条件独立于它的所有非后代结点
在这里插入图片描述
除了网络拓扑结构要求的条件独立性外,每个结点还关联一个概率表
(1)如果结点 X 没有父母结点,则表中只包含先验概率 P ( X ) P(X) P(X)
(2)如果结点 X 只有一个父母结点 Y,则表中包含条件概率 P ( X ∣ Y ) P(X|Y) P(XY)
(3)如果结点 X 有多个父母结点 {Y1, Y2,…, Yk},则表中包含条件概率 P ( X ∣ Y 1 , Y 2 , ⋯   , Y k ) P(X|Y_1,Y_2,\cdots,Y_k) P(XY1,Y2,,Yk)

5.2 建立模型

BNN的建模包括两个步骤:(1)创建网络结构(2)估计没一个结点的概率表中的概率值。网络拓扑结构可以通过对主观的领域专家知识编码获得。
在这里插入图片描述
我们对变量采用不同的排序方案,得到的网络拓扑结构可能会有变化某些拓扑结构可能质量很差,因为它在不同的结点对之间产生了很多条弧。从理论上讲,可能需要检查所有 d ! d! d!种可能的排序才能确定最佳的拓扑结构,这样计算量相当之大。替代的方法是吧把变量分为原因变量和结果变量,然后从各原因变量向其对应的结果变量画弧

一旦找到了适合的拓扑结构,与各结点关联的概率表就确定了。对这些概率的估计与朴素贝叶斯分类器中所用方法一样

5.3 BBN的特点

  • BBN提供了一种图形模型来捕捉特定领域的先验知识的方法。网络还恶意用来对变量间的因果依赖关系进行编码
  • 构造网络费时费力,一旦网络确定下来,添加新变量就十分容易
  • BBN很适合处理不完全的数据,对有属性遗漏的实例可以通过对该属性的所有可能取值的概率求和或求积分加以处理
  • 因为数据和先验知识以概率的方式结合起来了,所以该方法对模型的过拟合问题是非常鲁棒的
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
贝叶斯分类算法是一种基于贝叶斯定理的统计算法,常用于文本分类、垃圾邮件过滤和数据挖掘等任务中。在对wine数据集进行分类时,我们可以使用贝叶斯分类算法。 首先,我们需要了解wine数据集的特征和标签。根据数据集的描述,wine数据集包含了一些葡萄酒的化学分析结果作为特征,以及该葡萄酒所属的类别作为标签。这些特征可以包括酒精含量、苹果酸含量、灰分含量等。 贝叶斯分类算法的核心思想是基于训练集计算每个类别的先验概率和条件概率,然后使用贝叶斯定理来计算给定特征时,每个类别的后验概率,最终选择后验概率最大的类别作为预测结果。 为了使用贝叶斯分类算法对wine数据集进行分类,我们需要进行以下步骤: 1. 数据预处理:对原始数据进行清洗和处理,包括去除缺失值、标准化特征等。 2. 特征选择:根据具体问题的要求,选择合适的特征来训练模型,可以使用相关性分析等方法进行特征选择。 3. 训练模型:将数据集分成训练集和测试集,使用训练集来计算每个类别的先验概率和条件概率。 4. 预测分类:对测试集中的每个样本,根据贝叶斯定理计算该样本属于每个类别的后验概率,选择后验概率最大的类别作为预测结果。 5. 模型评估:使用测试集评估模型的性能,可以使用准确率、精确率、召回率等指标来评估模型的好坏。 贝叶斯分类算法的优点是简单、直观,能够处理多分类问题和高维数据。然而,贝叶斯分类算法也有一些限制,例如对特征之间的关联性要求较高,对输入的先验概率分布有一定假设等。 在应用贝叶斯分类算法对wine数据集进行分类时,我们需要根据具体情况选择适合的特征和合适的先验分布,对模型进行调优,以获得更好的分类结果。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值