李宏毅机器学习------Regression

机器学习三步骤:

1.找一个Model(function set)

2.通过损失函数来评估Model中的function的好坏

3.找一个最好的function


一、Regression应用

1、股票预测分析(输入:过去十年股票起伏的资料  输出:明日某公司点数)

2、无人驾驶(输入:红外线感知到的信号、摄像头拍摄物体   输出:方向盘角度)

3、推荐系统(输入:使用者A、商品B    输出:使用者A购买商品B的可能性)

输出值都是一个数值(scalar)


二、实例分析

以宝可梦的cp值为例(输入:宝可梦的信息:可能包括重量(xw)、身高(xh)、原cp(xcp)、物种(xs)、生命值(xhp)    输出:进化后的cp值(y))

STEP 1

(1)假设function  set(Model)为y=b+w*xcp(b,w均为参数、未知,可为任意数值)--------该model属于LINEAR  MODEL

                    LINEAR  MODEL-----形如(w,b为参数,x为不同的变量特征值)

STEP 2

(1)根据实际得到的宝可梦进化前的cp和进化后的cp(共10组)作为Training Data,定义一个LOSS FUNCTION

                    LOSS FUNCTION-----输入的是函数,输出的是一个数值,代表function有多坏

          假设LOSS FUNCTION为,这里假设的LOSS FUNCTION是以方差的方式来计算十组数据

                                         

                                                该值越小越好

           针对任意x,找出w,b,使得L(f)最小。如下图所示,穷举所有w,b.图中每一点都代表一个函数,颜色越红LOSS越大,颜色越接近蓝色,LOSS 越小。

                                                                    

STEP 3

  如何找出图中使LOSS最小的w,b呢(即找出最好的function)?--------梯度下降(Gradient Desent)

(1)单个参数。假设LOSS FUNCTION只与参数w相关。

         最笨的办法是穷举所有w,得到LOSS(f)的最小值(不考虑)

         梯度下降法(前提是LOSS(f)是可微分的):

             <1>任意选取一个初始值w0

             <2>计算w0处L对w的微分(几何意义为切线斜率),如果切线斜率<0(切线左高右低),需要增加w;如果切线斜率                               >0(切线左低右高),需要减少w

             如下图所示,纵轴表示LOSS,横轴表示w(每次移动/改变w都是向LOSS减小的方向)。

        

            <3>  每次需要移动多少呢?每次需要移动的量取决于两个值。第一个是当前所在点的微分值,微分值越大,移动的距离越大;第二个是学习率 η(learning rate),是事先定好的值,η越大,w的更新幅度越大。为了满足斜率为负时w增大,斜率为正时w减小,应该使原来的值减去更新的数值.计算的式子如下。

                 

 

               <4>经过多次w改变之后,如果此时w的微分等于0,但他对应的并不是全局最小值,它对应的是局部最小值,但对于偏移量计算公式来说,已经计算不出下一个w。但是使用的LINEAR MODEL是没有局部最小值的,所以不影响。

(2)两个参数(w,b)

          <1>选取两个初始值w0,b0

          <2>计算w=w0,b=b0处L对w0的偏微分,w=w0,b=b0处L对b0的偏微分,若偏微分大于0,也即切线斜率大于0,则w向左移,若偏微分小于0,也即切线斜率小于0,则w向右移。与上图类似。具体公式如下

               

梯度    指的是一个向量,如下图即为梯度的表示方式

               

注意:当任选w0,b0时,很可能会因为初始值的不同,导致找到的使loss最小的w,b不同。具体如下图所示。可以看到section1和section2找到的最小的loss值是不同的。但是LINEAR REGRESSION是convex&#

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值