吴恩达学习笔记3(multiple gradient descent)

2023-03-01 17:12:27 星期三


使用梯度下降法处理多元线性回归

多元输入变量(multiple features)

image

假设函数

image

多元线性回归(multivariate linear regression)

将线性组合转换成矩阵乘法计算
image

问题描述

image

有n+1个特征量的gradient descent

image

特征缩放(feature scaling)

保证多个特征在相似范围内,这样梯度下降法能够更快的收敛
image
此时代价函数J的等值线图是椭圆形,梯度下降要来回波动,最终才收敛到最小值。

采用特征缩放

  • 除以最大值
    0x11,0x21

image

此时代价函数J的等值线偏移会变得没那么严重,此时梯度下降法是一条直线,收敛速度更快

注:
采用特征缩放时,特征取值约束到-1到+1范围内,不必严格规定,大概范围就行。
image

  • 均值归一化
    xiμi使特征值具有为0的平均值,然后除以最大值
    image
  • x1可替代为

x1μ1s1

其中μ1是训练集中特征x1的平均值, s1是该特征值的范围,即最大值-最小值(或直接用标准差代替)

梯度下降算法技巧

  • 学习率(learning rate)
    image

    调试以及确保梯度下降算法正确工作的小技巧
    学习率如何选

image
横坐标: 梯度下降算法的迭代100次
纵坐标:梯度下降算法相应100次得到的θ算出的J(θ)的值
表示梯度下降的每步迭代后,代价函数的值,如果梯度下降算法正常工作,每一步迭代后的J(θ)都应该下降。
代价函数不继续下降==>梯度下降算法差不多已经收敛

自动收敛测试
image

如果J(θ)<ϵ
此时判断函数J(θ)收敛。ϵ可以是103,但要找到合适的阈值ϵ很难,因此通常通过图形来判断收敛。

不收敛情况
image

学习率较大
image

如果J(θ)在上升,最常见的原因是在最小化函数时,如果学习率太大,梯度下降算法可能不断的跳过最小值,结果越来越差,就得到越来越大的J(θ)值。
image
此时同样是α太大。
学习率α足够小,每次迭代之后代价函数J(θ)都会下降。
学习率α太小会导致梯度下降算法收敛的很慢。

总结
image

对于大数据样本,加速收敛就是刚开始选择大学习率,随着迭代选择小学习率。

posted @   YaBiii  阅读(69)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」
· 写一个简单的SQL生成工具
点击右上角即可分享
微信分享提示