《白话机器学习的数学》第3章——学习分类

3.1设置问题

        1.将图片分成两种类别,一种是纵向的,即高大于宽,一种是横向的,即宽大于高。

        2.分类的目的就是机器找到一条直线可以用于区分两种类别的图片。

3.2内积

        1.在3.1中需要找到的直线表达式如下:

                                                         

        其中w是权重向量,而这条直线就是使权重向量成为法线向量的直线。

        权重向量就是想要知道的未知参数。

        2.上述表达式是用向量表示的,也可以写成如下形式:

                                       

        3.由于我们在此次问题中只需要考虑高和宽两个参数,所以n=2,表达式如下:

                                  

        4.最终目的就是找到与分类直线成直角的权重向量

                                

        5.一开始并不存在你画的那种直线,而是要通过训练找到权重向量,然后才能得到与这个向量垂直的直线,最后根据这条直线就可以对数据进行分类了。

3.3感知机

        1.具体求得权重向量的方法与回归时相同:将权重向量用作参数,创建更新表达式来更新参数。

        2.感知机是接受多个输入后将每个值与各自的权重相乘,最后输出总和的模型。

                                       

3.3.1训练数据的准备

        1.设表示宽的轴为 x1、表示高的轴为 x2,用 y 来表示图像是横向还是纵向的,横向的值为 1、纵向的值为 −1。

        2.根据参数向量 x 来判断图像是横向还是纵向的函数,即返回 1 或者 −1 的函数 fw(x)的定义如下。这个函数被称为判别函数。

                                  

        3.内积正与负

        4.内积是衡量向量之间相似程度的指标。结果为正,说明二者相似;为 0 则二者垂直;为负则说明二者不相似。

3.3.2权重向量的更新表达式

        1.权重向量的更新表达式如下:

                     

表示通过判别函数对宽和高的向量 x 进行分类的结果与实际的标签 y 不同。

表示判别函数的分类结果是准确的。

        2.更新表达式只有在判别函数分类失败的时候才会更新参数值。 

        3.随机假设一个权重向量,然后给出一个训练向量x(125,30),标签是1,观察图像:

                         

        从图中可以看出来,w 和 x(1) 之间的夹角 θ 的范围是 90◦ <θ< 270◦ ,内积为负。也就是说,判别函数 fw(x(1)) 的分类结果为 −1,这与实际情况不符合。

        2.在上述情况中,由于分类出现错误,所以需要更新表达式:

                                   

        如图所示:

                       

        这次 θ < 90◦,所以内积为正,判别函数 fw(x) 的分类结果为 1。而且x(1) 的标签也为 1,说明分类成功了。

        3.所以像这样重复更新所有的参数,就是感知机的学习方法。 

3.4线性可分

        1.感知机最大的缺点是只能解决线性可分的问题。线性可分指的就是能够使用直线分类的情 况。

        2.之前提到的感知机也被称为简单感知机或单层感知机,真的是很弱的模型。不过,既然有单层感知机,那么就会有多层感知机。实际上多层感知机就是神经网络了。

3.5逻辑回归

        1.接下来要讲的 算法与感知机的不同之处在于,它是把分类作为概率来考虑的。

3.5.1sigmoid函数

        1.与处理回归问题一样,需要能够将未知数据分类为某个类别的函数 fθ(x)。表达式如下:

                                       

        2.这个函数的名字叫 sigmoid 函数,设  为横轴,fθ(x)为纵轴。

                        

3.5.2决策边界

        1.未知数据 x 是横向图像的概率作为 fθ(x)的表达式如下:

                                      

        这是在给出 x 数据时 y = 1,即图像为横向的概率。

         2.以0.5作为阈值,来分类横向和纵向。

                              

                                

        3.当随机给出一个θ时,就会出现一条直线用于数据分类,这条直线便被称为决策边界。

                                      

         4.接下来为了求得正确的参数 θ 而定义目标函数,进行微分,然后求参数的更新表达式。这种算法就称为逻辑回归。

3.6似然函数

         1.假定所有的训练数据都是互不影响、独立发生的,这种情况下整体的概率就可以用下面的联合概率来表示。

        联合概率的表达式如下:

        2.回归的时候处理的是误差,所以要最小化,而现在考虑的是联合概率,我们希望概率尽可能大,所以要最大化。

        3.我们可以认为似然函数 L(θ) 中,使其值最大的参数 θ 能够最近似地说明训练数据。

 3.7对数似然函数

        1.直接对似然函数进行微分会出现问题,首先它是联合概率。概率都是 1 以下的数,所以像联合概率这种概率乘法的值会越来越小。如果值太小,编程时会出现精度问题。其次就是与加法相比,乘法的计算量要大得多。

        2.所以在似然函数上取对数,就可以把乘法变成加法

        3.再通过变形,可以得到对数似然函数为:

                     

3.7.1似然函数的微分

        1.逻辑回归将这个对数似然函数用作目标函数。

      

        2.对各个参数 θj 求微分

        和回归的时候是一样的,我们把似然函数也换成这样的复合函数,然后依次求微分。

                                        

                                                   

        

                                  

                                              

             

        3.最终更新表达式如下:

                      

3.8线性不可分 

        1.如下例子中,虽然无法用直线分类,但是可以用曲线进行分类。

                                   

        2.我们需要在训练数据中增加x的次数。

                           

                

        就可以得到如下决策边界:

​​​​​​​                      

  • 37
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值