《机器学习》学习笔记(五)—分类:概率生成模型

Classification(分类)

本章节通过建立概率生成模型解决分类问题,输入对象 x x x ,输出它属于的类别

在这里插入图片描述
应用:信用评估、医疗诊断、手写识别、面部识别

如何进行分类

分类问题中的线性回归
我们考虑一个二元分类问题,一类标记为 C l a s s 1 Class 1 Class1,一类标记为 C l a s s 2 Class 2 Class2。如果对于左图中的数据利用回归模型可以很好的区分,但是如果数据分布不是聚集分布,如右图,有部分 C l a s s 1 Class1 Class1 的数据远离拟合的直线,根据线性回归此时拟合的直线变为紫色直线,出现误判的情况。
在这里插入图片描述
此外,对于多分类问题如果说类别1指目标值为1,类别2指目标值为2,类别3指目标值为3…则会带来问题:会让人理解为类别1和类别2靠近,他们之间存在关系;类别2和类别3靠近,他们之间也存在关系。这些地方都会存在一些问题。

较为理想的替代方法是:

对于二分类问题,定义一个函数,当函数值大于0就划分为类别1,否则就为类别2.损失函数定义为在测试数据上误分类的次数。

这样问题的关键就在于如何找到满足的函数。
在这里插入图片描述

概率生成模型

贝叶斯
贝叶斯公式
有两个盒子,都有蓝色球和绿色球,现在随机从两个盒子中抽出一个蓝色的球,根据贝叶斯公式可以计算。 在这里插入图片描述
假设两个盒子,各装了5个球,还得知随机抽一个球,抽到的是盒子1的球的概率是三分之二,是盒子2的球的概率是三分之一。从盒子中蓝色球和绿色球的分配可以得到:在盒子1中随机抽一个球,是蓝色的概率为五分之四,绿的的概率为五分之一,同理得到盒子2的信息。

现在求随机从两个盒子中抽一个球,抽到的是盒子1中蓝色球的概率是多少?(高中数学得:)
P ( B 1 ∣ B l u e ) = P ( B l u e ∣ B 1 ) P ( B 1 ) P ( B l u e ∣ B 1 ) P ( B 1 ) + P ( B l u e ∣ B 2 ) P ( B 2 ) P(B_1|Blue)=\frac{P(Blue|B_1)P(B_1)}{P(Blue|B_1)P(B_1)+P(Blue|B_2)P(B_2)} P(B1Blue)=P(BlueB1)P(B1)+P(BlueB2)P(B2)P(BlueB1)P(B1)

如果将上面例子中的盒子换成 C l a s s 1 Class1 Class1 C l a s s 2 Class2 Class2在这里插入图片描述
我们可以得出,如果得到上图红色方框的数值,就可以在给定 x x x 的情况下,判断出 x x x 是属于 C l a s s 1 Class1 Class1 还是 C l a s s 2 Class2 Class2 P ( C 1 ∣ x ) P(C_1|x) P(C1x) P ( C 2 ∣ x ) P(C_2|x) P(C2x),那个值比较大就属于哪个类别。

生成概率模型其实是先假设数据的概率分布(正太、伯努利、泊松),然后用概率公式去计算 x x x 所属于的类型 p ( C 1 ∣ x ) p(C_1∣x) p(C1x)

如果需要自己生成 x x x,可以计算 x x x 的出现几率,这个几率的计算如下:
P ( x ) = P ( x ∣ C 1 ) P ( C 1 ) + P ( x ∣ C 2 ) P ( C 2 ) P(x)=P(x|C_1)P(C_1)+P(x|C_2)P(C_2) P(x)=P(xC1)P(C1)+P(xC2)P(C2)

先验概率
比如说,Pokemon分两类, C l a s s 1 Class1 Class1 的标签是 Water, C l a s s 2 Class2 Class2的标签是Normal。训练集中有79只Water Pokemon和61只Normal Pokemon。
根据公式需要得到先验概率和某类Pokemon的分布概率密度函数。其先验概率为:
P ( C 1 ) = 79 79 + 61 = 0.56 P(C_1)=\frac{79}{79+61}=0.56 P(C1)=79+6179=0.56
P ( C 1 ) = 61 79 + 61 = 0.44 P(C_1)=\frac{61}{79+61}=0.44 P(C1)=79+6161=0.44

其次,我们需要求得某个类别的分布概率密度函数
用一个列向量表示一只Pokemon的特征参数在这里插入图片描述
我们设置两个属性值:Defense 和 SP Defense
因为输入参数是2*1的列向量,所以采样点符合二元高斯分布的概率密度函数,概率密度函数是这样子的:
f μ , ∑ ( x ) = 1 ( 2 π ) D / 2 1 ∣ ∑ ∣ 1 / 2 e x p { − 1 2 ( x − μ ) T ∑ − 1 ( x − μ ) } f_{\mu,\sum}(x)=\frac{1}{(2\pi)^{D/2}}\frac{1}{|\sum|^{1/2}}exp\{-\frac{1}{2}(x-\mu)^T\sum^{-1}(x-\mu)\} fμ,(x)=(2π)D/211/21exp{21(xμ)T1(xμ)}

这样,输入一个 x x x 向量,我们能得到它的抽样概率。
并且我们可以知道,上面的概率密度函数形状取决于 μ \mu μ 的值和协方差矩阵 ∑ \sum 在这里插入图片描述
利用最大似然估计求出概率密度函数中的参数 μ ∗ \mu^* μ ∑ ∗ \sum^*
步骤如下图(假设有79个数据点)
在这里插入图片描述
从上图步骤中求出两个概率密度的均值和协方差矩阵在这里插入图片描述
这样,把两组均值向量和协方差矩阵代入模型,就建立起来一个分类器。
我们可以通过分类器对某个对象 x x x 进行分类在这里插入图片描述
对模型进行优化
把两个不同类别的分布概率密度函数中的协方差矩阵统一在这里插入图片描述
在我们进行优化后,调整最大似然函数,把参数带回模型中,发现模型的准确率有了一定的提高,从54%的准确率提高到了73%的准确率。

总结—分类模型的建立

选择模型—>判断函数的好坏—>确定最优函数
在这里插入图片描述
朴素贝叶斯

如果假设所有的feature都是相互独立的,也就是说 P(C|x) = P(C|x1)*P(C|x2)…P(C|xn),协方差除了对角线其余位置都是0,这种情况下的 Generative model 就是朴素贝叶斯了。只是简化了分布假设,其它都一样。

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值