机器学习笔记(2)---监督学习之正规方程

来源:互联网 发布:dede cms 排行榜文章 编辑:程序博客网 时间:2024/06/11 18:33

  • 前言
  • 正规方程
    • 公式推导

前言

本机器学习笔记是跟着原斯坦福大学吴恩达老师cs229课程学习后做的课后笔记。每次课程都会涉及到很多数学知识,我在记录课程核心内容的同时,会把数学基础知识在其它博文中单独记下,并在《机器学习笔记》系列博文中用到时给出链接。
笔记都是按照本人的理解去写的,给出的数学基础知识也只是本人薄弱的地方,并不适合所有人。如有问题欢迎给我留言。
数学公式使用Letex编辑,原文博客http://blog.csdn.net/rosetta

正规方程

上一节梯度下降法可以计算出能使j最小化的θ值。另外还有一种能计算出使j最小化的θ值的方法叫正规方程(Normal Equations),这种算法会更精确,并且不需要像梯度下降法一样需要迭代。
本节课需要用到大量的数学知识,主要是矩阵矩阵求导向量梯度等数学概念,由于毕业后都数学都忘完了,为了搞清楚这些东西,花了好长一段时间,后续我会整理相关基础,下面先开始使用正规方程推导θ的过程。
先定义设计矩阵design matrix Xmn大小的矩阵,它表示训练样本,

X=x(1)Tx(2)T x(m)T

定义y⃗ m维向量,它包含所有训练集中的目标结果值
y⃗ =y(1)y(2)y(m)

Xθ=x(1)Tθx(2)Tθx(m)Tθ=hθ(x(1))hθ(x(2))hθ(x(m))

所以
Xθy⃗ =hθ(x(1))y(1)hθ(x(2))y(2)hθ(x(m))y(m)

对于向量z,有公式zTz=iz2i,所以:
12(Xθy⃗ )T(Xθy⃗ )=12i=1m(hθ(xi)y(i))2=J(θ)

为了求出最小的θ,需使θJ(θ)=0⃗ ,则:
θJ(θ)=========θ12(Xθy⃗ )T(Xθy⃗ )12θ[(θTXTy⃗ T)(Xθy⃗ )]12θ(θTXTXθθTXTy⃗ y⃗ TXθ+y⃗ Ty⃗ )12θtr(θTXTXθθTXTy⃗ y⃗ TXθ+y⃗ Ty⃗ )12θtr(θTXTXθy⃗ TXθy⃗ TXθ+y⃗ Ty⃗ )12θtr(θθTXTXy⃗ TXθy⃗ TXθ+y⃗ Ty⃗ )12θ[tr(θθTXTX)2tr(y⃗ TXθ)]12(XTXθ+XTXθ2XTy⃗ )XTXθXTy⃗ (1)(2)(3)(4)(5)(6)(7)(8)(9)

式子9就叫做正规方程,则XTXθXTy⃗ =0⃗ ,XTXθ=XTy⃗ ,最终计算出θ

θ=(XTX)1XTy⃗ (10)

所以从上述推导过程来看,求θ不需要进行迭代,但需要求XTX逆矩阵。

公式推导

下面详细解释上述公式的每一步推导过程:
1. 1到2式,做转置,使用公式(AB)T=BTAT
2. 2到3式直接展开
3. 3到4式,实数的迹还是它本身,所以加入迹符号tr后值不变
4. 4到5式,因为θTXTy⃗ 是个实数,实数的转置还是它本身,所以θTXTy⃗ =(θTXTy⃗ )T=y⃗ Xθ。这里θTXTy⃗ 为什么是实数?
5. 5到6式,使用公式trABC=trCAB=trBCA,所以θTXTXθ=θθTXTX
6. 6到7式,由于y⃗ Ty⃗ θ无关,所以对它求导为0,把这去掉,然后对式子做一个整理。
7. 7到8式,使用了两个公式,蓝色部分使用:

AtrABATC=CAB+CTABT
所以
θtr(θAIBθTATXTXC)=XTXCθAIB+XTXCTθAITBT=XTXθ+XTXθ
樱红色使用公式:
AtrAB=BT
所以
θtr(y⃗ TXBθA)=XTy⃗ BT

原创粉丝点击