zoukankan      html  css  js  c++  java
  • 【吴恩达机器学习】学习笔记——4多元线性回归

    1 多元线性回归假设形式

    多元线性回归算法的假设函数:

    矩阵表示形式:

    其中, 

    2 多元梯度下降

    梯度下降算法:

    将成本函数代入得:

    3 特征缩放

    为了使梯度下降算法更快的收敛,我们可以使用特征缩放将每一个特征值(元/属性)限定到[-1,1]的范围。经验值是不得大于[-3,3],不得小于[-1/3,1/3]。

    均值归一化:可以利用公式;来缩放特征,其中是特征值,是该特征值的均值,是该特征值的范围或者方差

    4 学习速率

    如何保证梯度下降算法的正常运行?

    如何选择合适的学习速率α?

    画出J(θ)为纵坐标,迭代步数为横坐标的曲线。如果曲线不是单调减函数,一般来说,是α太大的原因,试试更小的α即可。

    α的选择经验是...,0.001,0.003,0.01,0.03,0.1,0.3,1,3,...

    5 特征的选择

    有时候将所有的特征直接应用到数据上效果会不太理想,根据现实情况,将某些特征值做一些运算合并成一个特征会取得更好的效果。

    有时候,数据的分布并不是线性的,此时可以用多项式回归,将一个多项式,如二次函数或三次函数拟合到数据上。

    6 标准方程

    求θ,使得J(θ)最小。梯度下降是一种迭代算法,而标准方程法是解析解法。

    原理:对所有的θ求偏导,然后令其等于零。,其中X为设计矩阵

    ,,

    注意:使用标准方程法不需要进行特征归一化

    优点:

    • 不需要选择学习速率;
    • 不需要迭代

    缺点:

    • 需要计算,时间复杂度接近O(n3)。当特征数量比较大时,计算耗时会很大。一般,当n>>10000时,选择梯度下降算法。
    •  适用模型有限,在线性回归模型中可以作为梯度下降的更优的替代算法。
  • 相关阅读:
    gateway 实现接口日志保存
    Spring Boot应用的Controller返回的集合类数据是XML格式的可能原因
    json 转list
    观察者模式
    Quartz定时任务整理
    java通过word模板生成word文档
    基于mysql的单据号生成(前缀+日期+自增id+后缀)
    Rabbitmq详解
    java.sql.SQLException: connection holder is null 问题处理
    为什么要用消息队列或消息队列的优缺点
  • 原文地址:https://www.cnblogs.com/JJJanepp/p/8467281.html
Copyright © 2011-2022 走看看