• Andrew Ng在coursera上的ML课程_知识点笔记_(1)


    1.Feature Scaling(特征缩放):

    如上图所示,x1是房屋面积,x2是房间个数,若不进行特征缩放,则代价函数J的曲线近似为一个瘦长的椭圆(我暂时这么理解,θ1和θ2分别是x1和x2的权值系数,而x2的特征向量值相较x1很小,则x1变化一个较小的量,在J的同一条相同的圆弧曲线上θ2就要变化一个较大的量,因此成为一个椭圆形式)

    而对于左图的椭圆,会加大用梯度下降算法到达最低点的难度,所以我们可以采用右图的特征缩放,是他们都缩放到同一个数量级,这样J的形状近似为一个圆,更容易达到最低点。

    总之,使用特征缩放的一个标准就是使各特征量都缩放到[-1,+1]之间(x0=1),而一般经验值是[-3,+3]和[-1/3,+1/3](超出这个范围就要进行考虑)


    2.Mean normalization(均值归一化):

    用(xi-ui)/si来代替原来的特征向量xi,这里ui是xi的平均值,Si是xi的标准差(用最大值减去最小值即可),最终得到的范围大概在[-0.5,+0.5]


    3.关于梯度下降中的学习率α,只要α足够小,则每次迭代后J都会下降,但若是过小,则收敛太慢。过大,则不是每次迭代后都会下降(偶尔会产生收敛缓慢的情况)

    工程上可以取一系列的α值从0.001,0.003,0.01,0.03,0.1,0.3,1(也可以加大点范围),然后画出如下的曲线:

    横轴是迭代次数,纵轴是J的值,然后从一系列曲线中选择合适的α作为最终的学习率

    4.多项式回归:a.选择合适的多项式来拟合数据;b.选择合适的特征量(如视频中原来x1是临街宽度,x2是纵深宽度,作者后来用x1=x1*x2即房屋所占面积和x2=x12等等来表示特征量);

    5.Normal Equation(正规方程):

    6.关于何时选择梯度下降算法,何时选择正规方程方法?先比较一下两者的优缺点:

    (1)梯度下降算法的优点:即使特征变量的数目n很大时,也有较好的效果;

                               缺点:需要选择学习率;需要迭代很多次;

    (2)正规方程算法的优点:不需要选择学习率;不需要迭代;

                               缺点:由于θ=(XTX)-1XTy中有(XTX)-1这一项,而它是n*n维矩阵,因此当n很大时,正规方程算法的计算量大概是n的三次方,就非常大;

    所以选择的时候,当n是上百或者上千时,一般选择正规方程算法,如果上万的话(一般达到一万)就要考虑使用梯度下降算法了。

    7.正规方程以及不可逆性(Normal Equation Noninvertibility):

    即(XTX)不可逆,原因一般有两个:(1)有多余的特征量;

                                                   (2)有过多的特征量;

    如上图中,x1是以英尺单位的房屋面积,x2是以平方米为单位的房屋面积,则x1和x2线性相关,它们之间就有一个多余的特征向量;

                 而第二行中,比如样本个数是m=10,特征向量个数n=100,由于要从10个样本中找出100个特征向量,则很有难度;

  • 相关阅读:
    Jquery 总结的几种常用操作
    Mybatis 一对多
    HTML 子父窗口 iframe 超时 返回首页
    Struts 标签
    Spring + Mybatis 基于注解的事务
    机器学习实战-数据探索(变量变换、生成)
    机器学习实战-数据探索(变量变换、生成)
    Pandas matplotlib 无法显示中文 Ubuntu16.04
    Pandas matplotlib 无法显示中文 Ubuntu16.04
    Intel MKL FATAL ERROR: Cannot load libmkl_avx2.so or libmkl_def.so.
  • 原文地址:https://www.cnblogs.com/zf-blog/p/6155216.html
Copyright © 2020-2023  润新知