最小二乘法的证明以及最优化系数的求解 Least squares
2017-03-02 14:15
225 查看
定理:最小二乘法就是通过最小化误差的平方和寻找数据的最佳函数匹配,使得最后预测和真实值之差的平方的最小值最小
一、矩阵求导
∇Af(A) 代表的意思是:对于一个A矩阵(M x N), ij系数满足 ∂f/∂Aij ,即对矩阵里的元素求导
![](http://img.blog.csdn.net/20170302140002764)
For example :
A为一个2 x 2矩阵即
![](http://img.blog.csdn.net/20170302140224593)
有函数f(X)
![](http://img.blog.csdn.net/20170302140308095)
则根据上面对矩阵求导法则
![](http://img.blog.csdn.net/20170302140403219)
二、矩阵的迹以及相关公式
我们规定,矩阵的迹为矩阵的对角线元素之和
![](http://img.blog.csdn.net/20170302140535282)
(注:特别的,当矩阵为1 x 1位,它的迹就是它本身 ,tr A = A)
相关迹的公式:
(1)
![](http://img.blog.csdn.net/20170302140726923)
(2)
![](http://img.blog.csdn.net/20170302140806695)
(3)
![](http://img.blog.csdn.net/20170302140834040)
(3,4在记忆的时候,只需要把最后一个依次挪至前面即可)
(4)
![](http://img.blog.csdn.net/20170302141047315)
(5)
![](http://img.blog.csdn.net/20170303133340035)
(6)
![](http://img.blog.csdn.net/20170303133404317)
相关矩阵求导的公式:
![](http://img.blog.csdn.net/20170303133505677)
三、最小二乘法证明
1.我们仍旧是需要找到最相似的θ ,使J(θ)最小 (这里的J(θ)仍旧是方差最小值)
2.我们将已知数据集的输入部分X看做是一个M*N的数据集矩阵,将标签y看做M*1的矩阵
![](http://img.blog.csdn.net/20170303133808272)
![](http://img.blog.csdn.net/20170303133940241)
3.我们仍旧使用前面根据线性回归的公式 : hθ(x(i))
= (x(i))T
θ , 所以用Xθ - y 得到的就是一个矩阵形式的差值。 而在梯度下降里,得到的是每一行的差值
![](http://img.blog.csdn.net/20170303134212502)
4.根据矩阵的定理:
![](http://img.blog.csdn.net/20170303134255945)
就有:
![](http://img.blog.csdn.net/20170303134333008)
![](http://img.blog.csdn.net/20170303134411634)
也就印证了前面梯度下降法那里推导出来的公式
5.使用前面关于迹和矩阵求导的公式推导左边这个公式即可:
根据矩阵求导那里的(2),(3),把tr后的看为一个整体,对A的转置矩阵求导,得到的也都是转置后的结果
![](http://img.blog.csdn.net/20170303134814667)
6.对其进行推导:
![](http://img.blog.csdn.net/20170303134957513)
(注:第三行第一个运用了迹求导的(3),最后一个因为没有theta所以为0,中间两个运用了trA
= trA^T , 将里面的看为一个整体A,就可以得到两个一模一样的)
最优化的时候,导数为0,所以带入最终可得:
一、矩阵求导
∇Af(A) 代表的意思是:对于一个A矩阵(M x N), ij系数满足 ∂f/∂Aij ,即对矩阵里的元素求导
For example :
A为一个2 x 2矩阵即
有函数f(X)
则根据上面对矩阵求导法则
二、矩阵的迹以及相关公式
我们规定,矩阵的迹为矩阵的对角线元素之和
(注:特别的,当矩阵为1 x 1位,它的迹就是它本身 ,tr A = A)
相关迹的公式:
(1)
(2)
(3)
(3,4在记忆的时候,只需要把最后一个依次挪至前面即可)
(4)
(5)
(6)
相关矩阵求导的公式:
三、最小二乘法证明
1.我们仍旧是需要找到最相似的θ ,使J(θ)最小 (这里的J(θ)仍旧是方差最小值)
2.我们将已知数据集的输入部分X看做是一个M*N的数据集矩阵,将标签y看做M*1的矩阵
3.我们仍旧使用前面根据线性回归的公式 : hθ(x(i))
= (x(i))T
θ , 所以用Xθ - y 得到的就是一个矩阵形式的差值。 而在梯度下降里,得到的是每一行的差值
4.根据矩阵的定理:
就有:
也就印证了前面梯度下降法那里推导出来的公式
5.使用前面关于迹和矩阵求导的公式推导左边这个公式即可:
根据矩阵求导那里的(2),(3),把tr后的看为一个整体,对A的转置矩阵求导,得到的也都是转置后的结果
6.对其进行推导:
(注:第三行第一个运用了迹求导的(3),最后一个因为没有theta所以为0,中间两个运用了trA
= trA^T , 将里面的看为一个整体A,就可以得到两个一模一样的)
最优化的时候,导数为0,所以带入最终可得:
相关文章推荐
- 梯度下降法证明以及最优化系数的求解 gradient descent
- 最小二乘法(c语言实现线性,matlab进行拟合)及相关系数的求解
- 最小二乘法-多元元回归证明
- 回归分析中的参数估计为何是最小二乘法(least squares),不是最小一乘法(least absolute deviations)
- 普通最小二乘法的推导证明
- 最小二乘法(least squares)
- BFGS优化算法的理解以及LBFGS源码求解最优化问题
- 求解ax+by=c的通解以及x的最小非负整数解
- opencv 中,使用cvSolve函数,求解线性方程组,或者最小二乘法问题
- 普通最小二乘法的推导证明
- 给定m * n乘法表的高度m和长度n以及正整数k,则需要返回此表中第k个最小的数字。
- 最小二乘法-矩阵求导求解
- 普通最小二乘法的推导证明(转载)
- 普通最小二乘法的推导证明
- 算法导论笔记:04最大子数组矩阵乘法以及递归式求解
- VC中实现最小二乘法 直线拟合 Y=a0+a1X 以及 Y=aX
- 使用scipy实现最小二乘法,以及通过曲线对数据进行拟合(Python)
- 普通最小二乘法的推导证明
- 网络流-最大权闭合图(最小割求解)
- numpy中数组转置的求解以及向量内积计算