学习笔记 机器学习2.2

参数计算分析——Computing Parameters Analytically

==================

正规方程——Normal Equation


介绍一种有别于梯度下降算法的算法,正规方程
正规方程——一种直接一次性求解 θ θ 的最优值解析。

正规方程
算法
已知:
在参数为1D的情况下: J(θ)=aθ2+bθ+c J ( θ ) = a θ 2 + b θ + c
在参数为多个的情况下:
θRn+1,J(θ0,θ1,...,θm)=12mmi=1(hθ(x(i))y(i))2 θ ∈ R n + 1 , J ( θ 0 , θ 1 , . . . , θ m ) = 1 2 m ∑ i = 1 m ( h θ ( x ( i ) ) − y ( i ) ) 2
求:
θJ(θ)=···=0  (for every j) ∂ ∂ θ J ( θ ) = · · · = 0     ( f o r   e v e r y   j )
求解 θ0,θ1,...,θn θ 0 , θ 1 , . . . , θ n


**Example:**m=4

Size (feet*feet) Number of bedrooms Number of floors Age of home(years) Price ($1000)
x0 x 0 x1 x 1 x2 x 2 x3 x 3 x4 x 4 y y
1 2104 5 1 45 460
1 1416 3 2 40 232
1 1534 3 2 30 315
1 852 2 1 36 178

则:

X=11112104141615348525332122145403036460232315178 X = [ 1 2104 5 1 45 460 1 1416 3 2 40 232 1 1534 3 2 30 315 1 852 2 1 36 178 ]

y=460232315178 y = [ 460 232 315 178 ]

所以 X X 是一个 m(n+1) m ∗ ( n + 1 ) 的矩阵, y y 是一个 m m 维的向量。 其中 m m 是训练样本的数量, n n 是特征的数量。
正规方程的运算公式为:
θ=(XTX)1XTy θ = ( X T X ) − 1 X T y

一般情况下:
m m example (x(1),y(1)),(x(2),y(2)),(x(m),y(m)) ( x ( 1 ) , y ( 1 ) ) , ( x ( 2 ) , y ( 2 ) ) , ( x ( m ) , y ( m ) ) ; n n feature.
x(i)=x(i)0x(i)1...x(i)nRn+1 x ( i ) = [ x 0 ( i ) x 1 ( i ) . . . x n ( i ) ] ∈ R n + 1
转换为:
x(i)=(x(1))T(x(2))T...(x(m))TRn+1 x ( i ) = [ — ( x ( 1 ) ) T — — ( x ( 2 ) ) T — . . . — ( x ( m ) ) T — ] ∈ R n + 1
根据正规方程,可以得到参数的计算公式为:
θ=(XTX)1XTy θ = ( X T X ) − 1 X T y

梯度下降和正规方程的对比:
m m 个训练样本, n n 个特征。

梯度下降 正则方程
需要选择学习率 不需要选择学习率
需要很多次迭代 不需要多次迭代
特征集较大时运行良好 特征集较大时运算较慢 需要计算 (XTX)1 ( X T X ) − 1
O(kn2) O ( k n 2 ) O(n3) O ( n 3 )

  • 参数计算分析——Computing Parameters Analytically
    • 正规方程——Normal Equation

你可能感兴趣的:(机器学习)