相关概念
中 | 英 | 含义 |
---|
多元线性回归 | Multivariate linear regression | | 特征缩放 | feature scaling | | 均值归一化 | mean normalization | |
房价预估问题再整理
- m为样本数
- n为特征数
Hypothesis
h
θ
(
x
)
=
θ
T
x
h_\theta(x) = \theta^Tx
hθ?(x)=θTx
θ
=
[
θ
0
,
θ
1
…
…
θ
n
]
T
,
x
=
[
x
0
,
x
1
,
x
2
…
…
x
n
]
T
,
x
0
≡
1
\theta = [\theta_0,\theta_1……\theta_n]^T,x= [x_0,x_1,x_2……x_n]^T,x_0\equiv1
θ=[θ0?,θ1?……θn?]T,x=[x0?,x1?,x2?……xn?]T,x0?≡1
Cost function
J
(
θ
)
=
1
2
m
∑
i
=
1
m
(
h
θ
(
x
(
i
)
)
?
y
(
i
)
)
2
J(\theta) = \frac{1}{2m}\sum_{i = 1}^m{(h_\theta(x^{(i)})-y^{(i)})}^2
J(θ)=2m1?i=1∑m?(hθ?(x(i))?y(i))2
gradient descent
θ
j
?
θ
j
?
α
m
∑
i
=
1
m
(
h
θ
(
x
(
i
)
)
?
y
(
i
)
)
?
x
j
(
i
)
\theta_j\coloneqq\theta_j - \frac{\alpha}{m}\sum_{i = 1}^m{(h_\theta(x^{(i)})-y^{(i)})*x_j^{(i)}}
θj?:=θj??mα?i=1∑m?(hθ?(x(i))?y(i))?xj(i)?
运算过程
梯度下降法运算技巧
特征缩放 feature scaling
对于特征x = [x0,x1,x2,x3……xn]T,尽量让每一种特征的取值范围都在一个相似的范围内。因为每个参数θj变化率和xj有关,所以当每一种特征的取值范围相似时,参数在梯度下降过程中变化幅度也相似,不会有太大差异,这样可以加快梯度下降算法的速度,减少迭代次数,尽快收敛到最小值。
具体操作
学习率 learning rate
学习率的影响
- 当学习率很小的时候,梯度下降算法非常慢,效率低
- 当学习率很大的时候,cost function可能不会收敛,反而增大
如何反映梯度下降算法的运行情况?
- 借助迭代次数与J(θ)曲线,正常情况下,随着迭代次数的增加,J(θ)越来越小趋近于最小值。
- 如果出现其他情况,排除代码本身逻辑错误,一般是学习率过大需要调整。
学习率选择方法 尝试一系列的数据:0.001,0.003,0.01,0.03……
|