矩阵(Matrix)
是由数字组成的矩形阵列
Rectangular arrty of numbers
Demensions of matrix: number of rows X number of columns
向量(vector)
一个向量是一种特殊的矩阵,其只有一列矩阵
An n X 1 matrix
also called n-dimensioned vector
多变量(多元)线性回归
Multivariate linear regression
多维特征
实际生活中,我们往往需要多个特征量
Hypothesis:
h θ ( x ) = θ 0 + θ 1 x 1 + θ 2 x 2 + θ 3 x 3 + θ 4 x 4 h_\theta (x) =\theta_0+\theta_1x_1+\theta_2x_2+\theta_3x_3+\theta_4x_4 hθ(x)=θ0+θ1x1+θ2x2+θ3x3+θ4x4
多维特征Hypothesis
多元线性回归 Multivariate linear regression
通用模型
h θ ( x ) = θ 0 ( x 0 ) + θ 1 x 1 + θ 2 x 2 + . . . + θ n x n \LARGE\color{red}h_\theta (x) =\theta_0\color{blue}(x_0)\color{red}+\theta_1x_1+\theta_2x_2+...+\theta_nx_n hθ(x)=θ0(x0)+θ1x1+θ2x2+...+θnxn
For convenience of notation,define x 0 = 1 x_0=1 x0=1
x = [ x 0 x 1 x 2 . . . x n ] ∈ R n + 1 θ = [ θ 0 θ 1 θ 2 . . . θ n ] ∈ R n + 1 x=\begin{bmatrix} x_0\\ x_1\\ x_2\\ .\\ .\\ .\\ x_n \end{bmatrix}\in \mathbb{R}^{n+1} \ \ \ \ \ \ \ \ \ \theta=\begin{bmatrix} \theta_0\\ \theta_1\\ \theta_2\\ .\\ .\\ .\\ \theta_n \end{bmatrix}\in \mathbb{R}^{n+1} x=⎣⎢⎢⎢⎢⎢⎢⎢⎢⎡x0x1x2...xn⎦⎥⎥⎥⎥⎥⎥⎥⎥⎤∈Rn+1 θ=⎣⎢⎢⎢⎢⎢⎢⎢⎢⎡θ0θ1θ2...θn⎦⎥⎥⎥⎥⎥⎥⎥⎥⎤∈Rn+1
h θ ( x ) = θ T X \LARGE\color{red}h_\theta (x)=\theta ^TX hθ(x)=θTX
参数向量 θ \theta θ以及特征向量X的内积
多变量代价函数(cost function)
J ( θ 0 , θ 1 , . . . , θ n ) = 1 2 m ∑ i = 1 m ( h θ ( x ( i ) ) − y ( i ) ) 2 \color{red}\LARGE J(\theta_0,\theta_1,...,\theta_n)=\frac{1}{2m}\sum_{i=1}^{m}(h_\theta(x^{(i)})-y^{(i)})^2 J(θ0,θ1,...,θn)=2m1∑i=1m(hθ(x(i))−y(i))2
可以把 n+1 个 θ \theta θ参数想象成一个 n+1 维的向量 θ \theta θ
梯度下降算法
Gradient descent algorithm
repeat until convergence{
θ j : = θ j − α ∂ ∂ θ j J ( θ 0 , θ 1 , . . . , θ n ) \LARGE\color{red}\theta _j:=\theta _j-\alpha \frac{\partial}{\partial\theta_j}J(\theta_0,\theta_1,...,\theta_n) θj:=θj−α∂θj∂J(θ0,θ1,...,θn)(for j = 0 and j=1)
}
单变量的下降算法
多变量的梯度下降算法
梯度下降法实践之特征缩放
feature scaling
面临的多特征问题(Problem):
特征之间的尺度(range)相差太大,需要加快梯度下降法的收敛速度,否则过于慢。比如有两个特征,房屋尺寸和房间数,房屋尺寸的范围是0-2000平方,房间数的范围是0-5间,差距太大导致绘制出来的椭圆形又扁又长,收敛速度太慢。
解决办法:Feature Scaling
让每一个特征约束到-1 到 +1 的范围内
Get every feature into approximately a − 1 ≤ x i ≤ 1 -1\leq x_i \leq 1 −1≤xi≤1 range.