【斯坦福《机器学习》笔记】[第2集] 监督学习应用.梯度下降

来源:互联网 发布:天猫数据采集 编辑:程序博客网 时间:2024/05/17 01:03

大纲

  1. 线性回归(Linear regression)
  2. 梯度下降(Gradient descent)
  3. 正规方程组(Normal equations)

1.线性回归

1.1 回归

回归问题:预测目标变量连续的学习问题;
分类问题:预测目标变量只有少数离散值的学习问题。

1.2 记号定义

m —— 训练样本个数(#training examples)
x —— 输入变量/特征(input variables/features)
y —— 输出变量/目标变量(output/target variables)
(x,y) —— 训练样本(training examples)
(x(i),y(i)) —— 第i个训练样本(ithtraining example)
h(x) —— 假设(hypothesis)
θ —— 训练参数

1.3 房价问题的假设

假设

h(x)=hθ(x)=θ0+θ1x1+θ2x2=i=0nθixi=θTX

x0=1x1=sizex2=#bedroomsn=2=#features

目标,最小二乘

minJ(θ)

J(θ)=12i=1m(hθ(x(i))y(i))2

2.梯度下降

梯度下降过程:

  1. 初始给定随机θ值,如θ=0⃗ 
  2. 如下式更新θ来减小J(\theta)
    θi:=θiαθiJ(θ)
  3. 重复2直至收敛

梯度下降在线性回归中的应用:

θiJ(θ)=θi12j=1m(hθ(x(j))y(j))2

=j=1m(hθ(x(j))y(j))θi(hθ(x(j))y(j))

=j=1m(hθ(x(j))y(j))x(j)i

则每次都用到所有训练样本的”批量梯度下降”公式为:
θi:=θiαj=1m(hθ(x(j))y(j))x(j)i

在训练样本集很大时,批量梯度下降因为每次都用所有的样本来更新参数,训练时间开销很大,一种优化为每次只取一个训练样本,称为“随机梯度下降”:

repeat until convergence {
for j=1 to m {

for all  i, θi:=θiα(hθ(x(j))y(j))x(j)i

}}

3.正规方程组

3.1 定义引入

矩阵的迹(trace)

在线性代数中,一个n×n的矩阵A的主对角线(从左上方至右下方的对角线)上各个元素的总和被称为矩阵A的迹(或迹数),一般记作tr A。

tr A=i=1maii

特别说明,实数(即1×1矩阵)的迹等于本身,即tr a=a

迹的性质

tr A=tr AT

tr (A+B)=tr A+tr B

tr aA=a tr A

其中,A和B为方阵,a为实数

矩阵导数

Af(A)=fa11fam1fa1nfamn

矩阵导数相关事实

Atr AB=BT (1)

ATf(A)=(Af(A))T (2)

Atr ABATC=CAB+CTABT (3)

A|A|=|A|(A1)T ,|A|0 (4)

(2)(3) ATtr ABATC=BTATCT+BATC (5)

其中,A、B、C为方阵,a为实数,|A|表示A的行列式

3.2 再看最小二乘法

重新表示J(θ)

J(θ)=12(Xθy⃗ )T(Xθy⃗ )

其中,
X=(x(1))T(x(2))T(x(m))T

y⃗ =y(1)y(2)y(m)

因此,
θJ(θ)=θ12(Xθy⃗ )T(Xθy⃗ )

=12θ(θTXTXθθTXTy⃗ y⃗ TXθ+y⃗ Ty⃗ )

=12θtr (θTXTXθθTXTy⃗ y⃗ TXθ+y⃗ Ty⃗ )

=12θ (tr θTXTXθ2tr y⃗ TXθ)

=12(XTXθ+XTXθ2XTy⃗ )

=XTXθXTy⃗ 

其中,
第3步依据 a=tra;
第4步依据 tr A=tr AT;
第5步依据等式(5)和等式(1),等式(5)中令 AT=θ,B=BT=XTX,and C=I

为了最小化J(θ),令它的导数为0,我们就得到了正规方程组:

XTXθ=XTy⃗ 

因此,最小化J(θ)θ解析解为:
θ=(XTX)1XTy⃗ 

0 0
原创粉丝点击