台大李宏毅Machine Learning学习笔记(五)——分类

1.分类

  分类,顾名思义就是给我们一堆输入,某种规则将它们分为几类,例如利用信用卡信誉积分将顾客分为几档,从而决定是否给与贷款;根据病人的年龄、症状、患病时间来判断病人所患的病也是一种分类等等。现在还是以宝可梦为例,假设现在随着宝可梦越来越多,我们想要知道新抓的宝可梦是属于哪一种属性的。
  先来看看假如用前面学过的线性回归的方法将它作为二值分类来解决会出现什么情况。
图1

图1 线性回归失效
  如图,将训练数据分为两类,于是绿色的为求出的分类线,当数据比较集中,在函数的两侧的时候,分类结果还可以接受,当有的数据分散的时候,因为线性回归要使损失函数最小,结果就会偏移产生错误。而且当需要进行多元分类的时候,这种方法失效。所以,需要重新寻找一个函数模型,输入一个数据 x x x,当满足 g ( x ) > 0 g(x)>0 g(x)>0时,输出为一类,否则,输出为另一类,损失函数也重新定义。如下图:
图2
图2 重新寻找函数模型

2.概率模型

  贝叶斯公式: (1) P ( A i ∣ B ) = P ( B ∣ A i ) P ( A i ) ∑ j = 1 n P ( B ∣ A i ) P ( A i )              i = 1 , 2 , ⋯   , n P(A_i|B)=\frac {P(B|A_i)P(A_i)}{\sum\limits_{j=1}^nP(B|A_i)P(A_i)}\ \ \ \ \ \ \ \ \ \ \ \ i=1,2,\cdots,n\tag 1 P(AiB)=j=1nP(BAi)P(Ai)P(BAi)P(Ai)            i=1,2,,n(1)其中, (2) P ( B ) = ∑ j = 1 n P ( B ∣ A i ) P ( A i ) P(B)=\sum\limits_{j=1}^nP(B|A_i)P(A_i)\tag2 P(B)=j=1nP(BAi)P(Ai)(2)即全概率公式; P ( A ∣ B ) P(A|B) P(AB)在事件 B B B发生的条件下事件 A A A发生的概率。 A 1 , A 2 . ⋯ ⋯   , A n A_1,A_2.\cdots\cdots,A_n A1,A2.,An为完备事件组。例如有两类数据,如果给定一个 x x x,它属于 c 1 c_1 c1的概率为 (3) P ( c 1 ∣ x ) = P ( x ∣ c 1 ) P ( c 1 ) P ( x ∣ c 1 ) P ( c 1 ) + P ( x ∣ c 2 ) P ( c 2 ) P(c_1|x)=\frac {P(x|c_1)P(c_1)}{P(x|c_1)P(c_1)+P(x|c_2)P(c_2)}\tag 3 P(c1x)=P(xc1)P(c1)+P(xc2)P(c2)P(xc1)P(c1)(3)如图
图3

图3 生成模型
  要知道 P ( c 1 ∣ x ) P(c_1|x) P(c1x)的概率就需要知道 P ( c 1 ) , P ( x ∣ c 1 ) , P ( c 2 ) , P ( x ∣ c 2 ) P(c_1),P(x|c_1),P(c_2),P(x|c_2) P(c1),P(xc1),P(c2),P(xc2)。再根据 (4) 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)\tag 4 P(x)=P(xc1)P(c1)+P(xc2)P(c2)(4)可计算 x x x的概率,如果算出每个训练集中 x x x的概率,就知道 x x x的分布,就可以从分布中产生新的 x x x。因此称之为生成模型(generative model)。
  假设现在我们统计180个宝可梦的类别属性,其中有79个水系宝可梦,61个正常系宝可梦,那么 P ( c 1 ) = 79 ( 79 + 61 ) = 0.56 , P ( c 2 ) = 61 ( 79 + 61 ) = 0.44 P(c_1)=\frac{79}{(79+61)}=0.56,P(c_2)=\frac{61}{(79+61)}=0.44 P(c1)=(79+61)79=0.56,P(c2)=(79+61)61=0.44,来看看怎么求 P ( x ∣ c 1 ) P(x|c_1) P(xc1)
图4
图4
  每个宝可梦我们用一个向量表示,向量里面的值就是这只宝可梦的特征值。画出水系宝可梦的防御力和特殊防御力(一个宝可梦有七个特征,不能在二维平面画出来,这里只画这两个)
图5

图5 高斯分布

  图中每一个点代表一个宝可梦,假设有一只我们没见过的宝可梦而说它为水系宝可梦的概率为0显然是不正确的(这只宝可梦一看就知道是水系的),这时候就需要根据训练集数据找出水系宝可梦的概率分布,这里假设服从高斯分布(也可以假设为别的分布): (5) f u , Σ ( x ) = 1 2 π D / 2 1 ∣ Σ ∣ 1 / 2 e x p ( − 1 2 ( x − u ) T Σ − 1 ( x − u ) ) f_{u,\Sigma}(x)=\frac1{{2\pi}^{D/2}}\frac1{{|\Sigma|}^{1/2}}exp{(-\frac12(x-u)^T\Sigma^{-1}(x-u))}\tag5 fu,Σ(x)=2πD/21Σ1/21exp(21(xu)TΣ1(xu))(5)其中, u u u为均值(mean), Σ \Sigma Σ为协方差阵(covariance matrix)。根据这79个点,我们用极大似然估计求出该高斯分布的均值和协方差阵
图6

图6 极大似然估计
  令似然函数: (6) L ( u , Σ ) = f u , Σ ( x 1 ) f u , Σ ( x 2 ) , ⋯ ⋯   , f u , Σ ( x 79 ) L(u,\Sigma)=f_{u,\Sigma}(x^1)f_{u,\Sigma}(x^2),\cdots\cdots,f_{u,\Sigma}(x^{79})\tag6 L(u,Σ)=fu,Σ(x1)fu,Σ(x2),,fu,Σ(x79)(6)据此求出 u ∗ = 1 79 ∑ n = 1 79 x n , b ∗ = 1 79 ∑ n = 1 79 ( x n − u ∗ ) ( x n − u ∗ ) T u^*=\frac1{79}\sum\limits_{n=1}^{79}x^n,b^*=\frac1{79}\sum\limits_{n=1}^{79}(x^n-u^*)(x^n-u^*)^T u=791n=179xn,b=791n=179(xnu)(xnu)T 1。结果如下图:
图7
图7 极大似然估计结果
  实际上,这种方法陈为朴素贝叶斯(Naive Bayes)分类。

3.分类

  根据上面的分析我们可以做分类了,当求出的 P ( c 1 ∣ x ) > 0 P(c_1|x)>0 P(c1x)>0时,我们认为宝可梦为水系,否则为正常系。结果如图:
图8

图8 分类
那么在测试集上表现如何呢?,如图:
图9
图9 测试集上表现
  尽管我们试图加入了所有的特征,但是在测试集上表现很差。需要改进。
  通常是将两个属性共用一个协方差矩阵,因为如果用不同的协方差矩阵,参数会很多,就容易造成过拟合,减少参数的一个有效方法就是对不同的属性,用相同的协方差矩阵。如图:
图10
图10 相同的协方差矩阵
  用极大似然估计求出 u 1 , u 2 u_1,u_2 u1,u2是一样的, Σ = 79 140 Σ 1 + 61 140 Σ 2 \Sigma=\frac{79}{140}\Sigma^1+\frac{61}{140}\Sigma^2 Σ=14079Σ1+14061Σ2在测试集结果好多了:
图11
图11 准确度大大提高
  可以看出准确度提高了很多,而且变成了线性边界。

4.sigmoid函数

图12

图12 sigmoid函数
  如图,形如 σ ( z ) = 1 1 + e x p ( − z ) \sigma(z)=\frac1{1+exp(-z)} σ(z)=1+exp(z)1的函数称为sgmoid函数。在此,就不写具体的推导过程了,结果就是 (7) P ( c 1 ∣ x ) = σ ( w ⋅ x + b ) P(c_1|x)=\sigma(w\cdot x+b)\tag7 P(c1x)=σ(wx+b)(7)在生成模型里面,我们估计出所需的参数,就能够得到 w , b w,b w,b,在下一章讲到的逻辑回归里面我们能够直接得到 w , b w,b w,b
如13
图13
  以上,就是关于分类的笔记内容,欢迎大家批评指正。


  1. 具体求解过程请大家参照概率论 ↩︎

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值