问题

已知:
hW(X)=∑nj=1wjxj+wn+1=∑n+1j=1wjxj=X⊺W,hW(X)=∑j=1nwjxj+wn+1=∑j=1n+1wjxj=X⊺W,h_{W}(X) = \sum _{j = 1} ^{n} w_j x_j + w_{n + 1} = \sum _{j = 1} ^{n + 1} w_j x_j = X ^{\intercal} W,
其中 W=⎛⎝⎜⎜⎜⎜w1⋮wnwn+1⎞⎠⎟⎟⎟⎟,X=⎛⎝⎜⎜⎜⎜x1⋮xn1⎞⎠⎟⎟⎟⎟W=(w1⋮wnwn+1),X=(x1⋮xn1)W = \begin{pmatrix} w_1 \\ \vdots \\ w_n \\ w_{n + 1} \end{pmatrix}, X = \begin{pmatrix} x_1 \\ \vdots \\ x_n \\ 1 \end{pmatrix}
令 X=⎛⎝⎜⎜X⊺1⋮X⊺m⎞⎠⎟⎟,Y=⎛⎝⎜⎜y1⋮ym⎞⎠⎟⎟,X=(X1⊺⋮Xm⊺),Y=(y1⋮ym),\mathbf {X} = \begin{pmatrix} X_1^{\intercal} \\ \vdots \\ X_m^{\intercal} \end{pmatrix}, Y = \begin{pmatrix} y_1 \\ \vdots \\ y_m \end{pmatrix},
L(W)=12∑mi=1[hW(Xi)−yi]2=12∑mi=1(X⊺iW−yi)2L(W)=12∑i=1m[hW(Xi)−yi]2=12∑i=1m(Xi⊺W−yi)2{L} (W) = \dfrac {1} {2} \sum _{i = 1} ^{m} \left [ h_{W}(X_i) - y_i \right ] ^2 = \dfrac {1} {2} \sum _{i = 1} ^{m} \left ( X_i^{\intercal} W - y_i \right ) ^2
=12∥XW−Y∥22=12(XW−Y)⊺(XW−Y)=12‖XW−Y‖22=12(XW−Y)⊺(XW−Y)= \dfrac {1} {2} \Vert \mathbf {X}W - Y \Vert_{2} ^{2} = \dfrac {1} {2} \left (\mathbf {X}W - Y \right) ^{\intercal} \left (\mathbf {X}W - Y \right )
求 minL(W)minL(W)\min {L} (W)

梯度下降法

dL(W)=d[12(XW−Y)⊺(XW−Y)]=(XW−Y)⊺d(XW−Y)=(XW−Y)⊺XdWd⁡L(W)=d⁡[12(XW−Y)⊺(XW−Y)]=(XW−Y)⊺d⁡(XW−Y)=(XW−Y)⊺Xd⁡W\operatorname {d} {L} (W) = \operatorname {d} \left [ \dfrac {1} {2} \left (\mathbf {X}W - Y \right) ^{\intercal} \left (\mathbf {X}W - Y \right ) \right] =\left (\mathbf {X}W - Y \right) ^{\intercal} \operatorname {d} \left (\mathbf {X}W - Y \right) = \left (\mathbf {X}W - Y \right) ^{\intercal} \mathbf {X} \operatorname {d} W
因此 ∇L(W)=[(XW−Y)⊺X]⊺=X⊺(XW−Y)=X⊺XW−X⊺Y∇L(W)=[(XW−Y)⊺X]⊺=X⊺(XW−Y)=X⊺XW−X⊺Y\nabla {L} (W) = \left [ \left (\mathbf {X}W - Y \right) ^{\intercal} \mathbf {X} \right ] ^{\intercal} = \mathbf {X} ^{\intercal} (\mathbf {X}W - Y) = \mathbf {X} ^{\intercal} \mathbf {X}W - \mathbf {X} ^{\intercal} Y
令 ΔW=−ϵ∇f(W0),ΔW=−ϵ∇f(W0), \Delta W = - \epsilon \nabla f(W_0) ,
于是可取 W1=W0+ΔW=W0−ϵ∇f(W0)=W0−ϵ(X⊺XW0−X⊺Y)W1=W0+ΔW=W0−ϵ∇f(W0)=W0−ϵ(X⊺XW0−X⊺Y)W_1 = W_0 + \Delta W = W_0 - \epsilon \nabla f(W_0) = W_0 - \epsilon \left ( \mathbf {X} ^{\intercal} \mathbf {X}W_0 - \mathbf {X} ^{\intercal} Y \right )

牛顿法

d∇L(W)=d[X⊺XW−X⊺Y]=X⊺XdWd⁡∇L(W)=d⁡[X⊺XW−X⊺Y]=X⊺Xd⁡W \operatorname {d} \nabla {L} (W) = \operatorname {d} \left [ \mathbf {X} ^{\intercal} \mathbf {X}W - \mathbf {X} ^{\intercal} Y \right ] = \mathbf {X} ^{\intercal} \mathbf {X} \operatorname {d} W
因此 HL(W)=X⊺XHL(W)=X⊺X\operatorname {H} _{{L} (W)} = \mathbf {X} ^{\intercal} \mathbf {X}
令 g(ΔW)=f(W0+ΔW)=f(x0)+[∇f(W0)]⊺ΔW+12(ΔW)⊺Hf(W0)ΔWg(ΔW)=f(W0+ΔW)=f(x0)+[∇f(W0)]⊺ΔW+12(ΔW)⊺Hf(W0)⁡ΔWg( \Delta W) = f(W_0 + \Delta W) = f(x_0) + \left [ \nabla f(W_0) \right ] ^{\intercal} \Delta W + \dfrac {1} {2} \left ( \Delta W \right ) ^{\intercal}\operatorname {H} _{f(W_0)} \Delta W
则 dg(ΔW)=[∇f(W0)]⊺d(ΔW)+(ΔW)⊺Hf(W0)d(ΔW)={[∇f(W0)]⊺+(ΔW)⊺Hf(W0)}d(ΔW)d⁡g(ΔW)=[∇f(W0)]⊺d⁡(ΔW)+(ΔW)⊺Hf(W0)⁡d⁡(ΔW)={[∇f(W0)]⊺+(ΔW)⊺Hf(W0)}d⁡(ΔW)\operatorname {d} g( \Delta W) = \left [ \nabla f(W_0) \right ] ^{\intercal} \operatorname {d} ( \Delta W ) + \left ( \Delta W \right ) ^{\intercal}\operatorname {H} _{f(W_0)} \operatorname {d} ( \Delta W ) = \left \{ \left [ \nabla f(W_0) \right ] ^{\intercal} + \left ( \Delta W \right ) ^{\intercal}\operatorname {H} _{f(W_0)} \right \} \operatorname {d} ( \Delta W )
因此 ∇g(ΔW)=∇f(W0)+Hf(W0)ΔW∇g(ΔW)=∇f(W0)+Hf(W0)⁡ΔW \nabla g( \Delta W) = \nabla f(W_0) + \operatorname {H} _{f(W_0)} \Delta W
令 ∇g(ΔW)=0⃗ ,∇g(ΔW)=0→,\nabla g( \Delta W) = \vec 0,
则 ΔW=−(Hf(W0))−1∇f(W0)ΔW=−(Hf(W0))−1∇f(W0) \Delta W = - \left ( \operatorname {H} _{f(W_0)} \right ) ^{-1} \nabla f(W_0)
于是可取 W1=W0+ΔW=W0−(Hf(W0))−1∇f(W0)W1=W0+ΔW=W0−(Hf(W0))−1∇f(W0)W_1 = W_0 + \Delta W = W_0 - \left ( \operatorname {H} _{f(W_0)} \right ) ^{-1} \nabla f(W_0)
=W0−(X⊺X)−1(X⊺XW0−X⊺Y)=W0−W0+(X⊺X)−1X⊺Y=W0−(X⊺X)−1(X⊺XW0−X⊺Y)=W0−W0+(X⊺X)−1X⊺Y = W_0 - \left ( \mathbf {X} ^{\intercal} \mathbf {X} \right ) ^{-1} \left ( \mathbf {X} ^{\intercal} \mathbf {X}W_0 - \mathbf {X} ^{\intercal} Y \right) =W_0 - W_0 + \left ( \mathbf {X} ^{\intercal} \mathbf {X} \right ) ^{-1} \mathbf {X} ^{\intercal} Y
=(X⊺X)−1X⊺Y=(X⊺X)−1X⊺Y = \left ( \mathbf {X} ^{\intercal} \mathbf {X} \right ) ^{-1} \mathbf {X} ^{\intercal} Y
因此 minL(W)=L(W1)=X(X⊺X)−1X⊺Y−Y=(X(X⊺X)−1X⊺−I)YminL(W)=L(W1)=X(X⊺X)−1X⊺Y−Y=(X(X⊺X)−1X⊺−I)Y\min {L} (W) = {L} (W_1) =\mathbf {X} \left ( \mathbf {X} ^{\intercal} \mathbf {X} \right ) ^{-1} \mathbf {X} ^{\intercal} Y - Y = (\mathbf {X} \left ( \mathbf {X} ^{\intercal} \mathbf {X} \right ) ^{-1} \mathbf {X} ^{\intercal} - I) Y

梯度的另一种求法

由 L(W)=12∑mi=1[hW(Xi)−yi]2L(W)=12∑i=1m[hW(Xi)−yi]2{L} (W) = \dfrac {1} {2} \sum _{i = 1} ^{m} \left [ h_{W}(X_i) - y_i \right ] ^2
得 ∂L∂wj=∑mi=1[hW(Xi)−yi]∂hW(Xi)∂wj=∑mi=1[hW(Xi)−yi]xij∂L∂wj=∑i=1m[hW(Xi)−yi]∂hW(Xi)∂wj=∑i=1m[hW(Xi)−yi]xij\dfrac {\partial L} {\partial w_j} = \sum _{i = 1} ^{m} \left [ h_{W}(X_i) - y_i \right ] \dfrac {\partial h_{W}(X_i) } {\partial w_j} = \sum _{i = 1} ^{m} \left [ h_{W}(X_i) - y_i \right ] x_{ij}
=∑mi=1(X⊺iW−yi)xij=(XW−Y)⊺X:j=∑i=1m(Xi⊺W−yi)xij=(XW−Y)⊺X:j= \sum _{i = 1} ^{m} \left ( X_i ^{\intercal} W- y_i \right ) x_{ij} = (\mathbf {X}W - Y) ^{\intercal} X_{:j}
因此 ∇L(W)=X⊺(XW−Y)=X⊺XW−X⊺Y∇L(W)=X⊺(XW−Y)=X⊺XW−X⊺Y\nabla {L} (W) = \mathbf {X} ^{\intercal} (\mathbf {X}W - Y) = \mathbf {X} ^{\intercal} \mathbf {X}W - \mathbf {X} ^{\intercal} Y

使用梯度下降与牛顿法求解最小平方和问题相关推荐

  1. 通过梯度下降和牛顿法求解一个数的平方根

    梯度下降 梯度下降法(Gradient descent)是一个一阶最优化算法,就是让参数沿着损失函数负梯度的方向更新.迭代的步长,也就是学习率是事先给定的,如果负梯度的绝对值越大,这次更新的幅度也会越 ...

  2. 梯度下降、牛顿法凸优化、L1、L2正则化、softmax、Batchnorm、droupout、Targeted Dropout详解

    一.梯度下降 问题提出:虽然给定一个假设函数,我们能够根据cost function知道这个假设函数拟合的好不好,但是毕竟函数有这么多,总不可能一个一个试吧?因此我们引出了梯度下降:能够找出cost ...

  3. 梯度下降法和牛顿法计算开根号

    梯度下降法和牛顿法计算开根号 本文将介绍如何不调包,只能使用加减乘除法实现对根号x的求解.主要介绍梯度下降和牛顿法者两种方法,并给出 C++ 实现. 梯度下降法 思路/步骤 转化问题,将 x \sqr ...

  4. 机器学习中梯度下降法和牛顿法的比较

    在机器学习的优化问题中,梯度下降法和牛顿法是常用的两种凸函数求极值的方法,他们都是为了求得目标函数的近似解.在逻辑斯蒂回归模型的参数求解中,一般用改良的梯度下降法,也可以用牛顿法.由于两种方法有些相似 ...

  5. 关于梯度下降法和牛顿法的数学推导

    作者:LogM 本文原载于 https://blog.csdn.net/qq_28739605/article/details/80862810,不允许转载~ 文章难免有错误之处,请在原文评论处指出~ ...

  6. python牛顿法寻找极值_python使用梯度下降和牛顿法寻找Rosenbrock函数最小值实例...

    Rosenbrock函数的定义如下: 其函数图像如下: 我分别使用梯度下降法和牛顿法做了寻找Rosenbrock函数的实验. 梯度下降 梯度下降的更新公式: 图中蓝色的点为起点,橙色的曲线(实际上是折 ...

  7. “随机梯度下降、牛顿法、动量法、Nesterov、AdaGrad、RMSprop、Adam”

    "随机梯度下降.牛顿法.动量法.Nesterov.AdaGrad.RMSprop.Adam" 随机梯度下降法 牛顿法 动量法 Nesterov 学习率应该慢慢减小的. AdaGra ...

  8. GBDT与xgb区别,以及梯度下降法和牛顿法的数学推导

    为什么要介绍梯度下降法和牛顿法那? 这里提及两个算法模型GBDT和XGBoost,两个都是boosting模型. GBDT和xgb的目标函数是不同的,同时针对其目标函数中的误差函数 L(θ) 的拟合方 ...

  9. 损失函数,梯度下降与牛顿法

    损失函数 我们在进行机器学习任务时,使用的每一个算法都有一个目标函数,算法便是对这个目标函数进行优化,特别是在分类或者回归任务中,便是使用损失函数(Loss Function)作为其目标函数,又称为代 ...

  10. 梯度下降、牛顿法、拟牛顿法

    介绍 在向量微积分中,标量场的梯度是一个向量场.标量场中某一点上的梯度指向标量场增长最快的方向,梯度的长度是这个最大的变化率.更严格的说,从欧几里得空间Rn到R的函数的梯度是在Rn某一点最佳的线性近似 ...

最新文章

  1. ThinkPHP框架介绍
  2. 图像处理之添加高斯与泊松噪声
  3. 《最终幻想7 重制版》DEMO体验:讨论ATB战斗系统的一些问题
  4. Effective Java之谨慎地使用本地方法(五十四)
  5. dll文件的c++制作dll文件的c++制作
  6. win7 64 安装sp1补丁提示“客户端没有所需的特权”
  7. 利用memcached实现CAS单点登录集群部署
  8. docker registry push 覆盖_原创 | 全网最实在的docker入门教程四
  9. owncloud mysql版本_Linux Deploy Owncloud php7.0+apache2+mysql5.7+owncloud9.1
  10. http://blog.csdn.net/evankaka/article/details/45155047
  11. 实验一matlab编程基础,实验一、MATLAB编程基础及典型实例.doc
  12. 循环冗余校验码CRC原理与LFSR循环码编码器原理
  13. 使用axis生成WebService调用客户端
  14. CCNP之IGP学习笔记(2022)
  15. 《C语言程序设计》江宝钏主编-习题6-2-排列数
  16. reflections歌词翻译_reflections歌词 reflectionsLrc歌词
  17. JAVA+基于微信小程序的校园信息共享平台 毕业设计-附源码211615
  18. OSChina 周六乱弹 —— 目测我们程序员丁克的几率不大
  19. 视频帧率与显示刷新率
  20. 做了6年的小猎头跟大家分享工作经验

热门文章

  1. 使用ERStudio创建数据表ER图并导出数据表的SQL(DDL)语句
  2. oracle dnfs 配置,配置 Oracle Direct NFS (dNFS)
  3. ensp 交换机与路由器ospf_华为路由器 eNSP 配置 rip OSPF 路由重发布
  4. 一个简单漂亮的Java博客系统
  5. wordpress自定义404页面
  6. 更改wordpress上传文件大小限制
  7. react实现聊天界面_React-Redux 100行代码简易版探究原理
  8. Deepin 的远程连接
  9. 高效能人士的七个习惯_如何成为高效能人士?——《高效能人士的七个习惯》读后感...
  10. 如何将交换功能写成函数?