吴恩达《Machine Learning》精炼笔记 2:梯度下降与正规方程

简介: 吴恩达《Machine Learning》精炼笔记 2:梯度下降与正规方程

今天带来第二周课程的笔记:梯度下降与正规方程。


主要内容:

  • 多维特征
  • 多变量梯度下降
  • 梯度下降法实践
  • 正规方程


多维特征Multiple Features


还是利用房价模型的例子,增加了更多的特征,比如:房间楼层、房间数量、地理位置等,构成了一个含有多个变量的模型


image.png

n:代表的是特征的数量

x(i):代表第i个训练实例,是特征矩阵中的第i行,是一个向量vector

image.png


多变量梯度下降


算法目标


与单变量线性回归类似,在多变量线性回归中,构建一个代价函数,则这个代价函数是所有建模误差的平方和,即:


image.png

image.pngimage.png



Python代码


给定特征矩阵X,输出y,学习率θ,求代价函数J

import numpy as np
def computeCost(X,y,theta):
  inner = np.power(((X * theta.T) - y), 2)  # 求解每个平方项
  return np.sum(inner) / (2 / len(X))   # 求和再除以2*len(X)


梯度下降法实践


特征缩放


面对多维度特征问题,我们需要保证这些特征具有相近的尺度,帮助梯度下降算法更快地收敛。


以房价问题为例,假设仅用两个特征,房屋的尺寸和数量,以两个参数分别为横纵坐标,假设尺寸在0-2000平方英尺,数量在0-5之间。


绘制代价函数的等高线图能,看出图像会显得很扁,梯度下降算法需要非常多次的迭代才能收敛。


image.png

image.png

image.png


学习率问题


梯度下降算法的每次迭代受到学习率的影响


  • 如果学习率过小,则达到收敛所需的迭代次数会非常高,收敛速度非常慢
  • 如果学习率过大,每次迭代可能不会减小代价函数,可能会越过局部最小值导致无法收敛


常用学习率包含:α=0.01,0.03,0.1,0.31,3,10α=0.01,0.03,0.1,0.31,3,10


特征和多项式回归


如房价预测问题,


image.png

同时房屋面积=宽度 * 深度


image.png

在实际拟合数据的时候,可能会选择二次或者三次方模型;如果采用多项式回归模型,在运行梯度下降法之前,特征缩放很有必要。

image.png

正规方程 Normal Equation


梯度下降缺点


需要多次迭代才能达到局部最优解


image.png

正规方程demo


正规方程具有不可逆性


正规方程就是通过求解下面例子中的方程找出使得代价函数最小参数θ


image.png


不可逆矩阵不能使用正规方程求解


Normal Equation VS Gradient Descent


梯度下降和正规方程的比较:

image.png


参数θ求解过程

6.jpg

image.png


至此,第一周的课程笔记完毕!


系列文章:


吴恩达《Machine Learning》精炼笔记 1:监督学习与非监督学习

相关文章
|
机器学习/深度学习 自然语言处理 算法
周志华《Machine Learning》学习笔记(16)--概率图模型
根据一些已观察到的证据来推断未知,更具哲学性地可以阐述为:未来的发展总是遵循着历史的规律。
117 0
周志华《Machine Learning》学习笔记(16)--概率图模型
|
机器学习/深度学习 算法
周志华《Machine Learning》学习笔记(4)--线性模型
笔记的前一部分主要是对机器学习预备知识的概括。
142 0
周志华《Machine Learning》学习笔记(4)--线性模型
|
机器学习/深度学习 算法 数据挖掘
周志华《Machine Learning》学习笔记(10)--集成学习
顾名思义,集成学习(ensemble learning)指的是将多个学习器进行有效地结合,组建一个“学习器委员会”
105 0
周志华《Machine Learning》学习笔记(10)--集成学习
|
机器学习/深度学习 算法 数据挖掘
周志华《Machine Learning》学习笔记(15)--半监督学习
监督学习指的是训练样本包含标记信息的学习任务
209 0
周志华《Machine Learning》学习笔记(15)--半监督学习
|
机器学习/深度学习 算法 双11
周志华《Machine Learning》学习笔记(17)--强化学习
强化学习(Reinforcement Learning,简称RL)是机器学习的一个重要分支,前段时间人机大战的主角AlphaGo正是以强化学习为核心技术。
160 0
周志华《Machine Learning》学习笔记(17)--强化学习
|
机器学习/深度学习 算法 数据挖掘
周志华《Machine Learning》学习笔记(6)--神经网络
在机器学习中,神经网络一般指的是“神经网络学习”,是机器学习与神经网络两个学科的交叉部分。
94 0
周志华《Machine Learning》学习笔记(6)--神经网络
|
机器学习/深度学习 算法 数据挖掘
周志华《Machine Learning》学习笔记(8)--贝叶斯分类器
贝叶斯分类器是一种概率框架下的统计学习分类器,对分类任务而言,假设在相关概率都已知的情况下,贝叶斯分类器考虑如何基于这些概率为样本判定最优的类标。
158 0
周志华《Machine Learning》学习笔记(8)--贝叶斯分类器
|
算法
周志华《Machine Learning》学习笔记(5)--决策树
顾名思义,决策树是基于树结构来进行决策的,在网上看到一个例子十分有趣,放在这里正好合适。
113 0
周志华《Machine Learning》学习笔记(5)--决策树
|
机器学习/深度学习 数据采集 存储
周志华《Machine Learning》学习笔记(13)--特征选择与稀疏学习
在机器学习中特征选择是一个重要的“数据预处理”(data preprocessing)过程,即试图从数据集的所有特征中挑选出与当前学习任务相关的特征子集,接着再利用数据子集来训练学习器
211 0
周志华《Machine Learning》学习笔记(13)--特征选择与稀疏学习
|
机器学习/深度学习 算法 数据挖掘
周志华《Machine Learning》学习笔记(14)--计算学习理论
计算学习理论(computational learning theory)是通过“计算”来研究机器学习的理论
213 0
周志华《Machine Learning》学习笔记(14)--计算学习理论