zoukankan      html  css  js  c++  java
  • 吴恩达机器学习笔记——梯度下降算法(2)

    引言

    在梯度下降算法(1)中我们了解了梯度下降算法的执行过程,但是还存在很多问题,诸如代价函数收敛速度或者代价函数是否能够收敛等问题,这节我们主要解决收敛速度问题,其解决方案就是应用特征缩放(Feature Scaling)。

    特征缩放的定义

    特征缩放是用来标准化数据特征的范围。

    为什么使用特征缩放?

    在梯度下降算法中,由于使用了迭代的方法,即迭代执行:

    θj := θj - α * (1/m)Σ(hθ(x(i)) - y(i)) * xj(i)

    如果有多个特征值之间差别很大,比如x1的范围是1-2000,x2的范围是1-5,这时候的梯度下降算法效果就很不好,x1收敛的很慢,导致算法效率较低,因此我们采取把各个特征值缩放的方法统一特征值的数量级,使梯度下降更为顺畅。

    等值线的数学意义:平面“等值线”可以看成二元函数 F( x,y) 取相同值时( x,y) 构成的点集,即{ ( x,y) | F( x,y) =  c}

    特征缩放的方法

    (1)调节比例(Rescaling)

      -1 <= x1<=1

      x <- (xmin(x))/(max(x)min(x))

    (2)均值归一化(Mean Normalization)

      x <- (x-u)/s

      其中u为平均值,s为标准差(max-min)

  • 相关阅读:
    18文件权限管理
    17用户身份管理
    16Shell脚本—计划任务服务程序
    15Shell脚本—流程控制
    14Shell脚本—判断语句
    13Shell脚本—编写简单脚本
    12Vim在系统配置中的应用示例
    11Vim文本编辑器
    10重要的环境变量
    09命令行通配符和转义字符
  • 原文地址:https://www.cnblogs.com/z1174299705/p/8808402.html
Copyright © 2011-2022 走看看