吴恩达 【机器学习】第五章 多变量线性回归
吴恩达 【机器学习】第五章 多变量线性回归
5.1 多变量
- 假设函数可以写为一个行向量与一个列向量的内积
- 多元线性回归(Multivariate Linear Regression):有 多个 特征 用来预测 值y
5.2 多元梯度下降(Gradient descent for multiple variables)
5.3 特征缩放(Feasure Scaling):为了使梯度下降得更快、收敛所需要的迭代次数更少
在我们面对多维特征问题的时候,我们要保证这些特征都具有相近的尺度,这将帮助梯度下降算法更快地收敛。
尺度相差很大的特征,以两个参数分别为横纵坐标,绘制代价函数的等高线图能,看出图像会显得很扁,梯度下降算法需要非常多次的迭代才能收敛。
最简单的方法是均值归一化
令:,其中 是平均值,是标准差()。
5.4 学习率(Learing rate)
- 通过绘制迭代次数和代价函数的图表来观测算法在何时趋于收敛。
- 梯度下降算法的每次迭代受到学习率的影响,
如果学习率过小,则达到收敛所需的迭代次数会非常高;
如果学习率过大,每次迭代可能不会减小代价函数,可能会越过局部最小值导致无法收敛。
5.5 特征和多项式回归(Feasures and polynomial regression)
- 有时,通过定义新的特征,你可能会得到一个更好的模型,比如用房子的area代替frontage和depth.(area = frontage*depth)
- 多项式回归
5.6 正规方程(Normal Equation):区别于迭代方法的直接解法
正规方程的python实现:
import numpy as np
def normalEqn(X, y):
theta = np.linalg.inv(X.[email protected])@X.[email protected] #[email protected]等价于X.T.dot(X)
return theta
梯度下降VS正规方程
- 正规方程法不需要进行特征缩放