Untitled 2










机器学习

梯度下降

  • 可导函数在任一点的梯度是自变量空间中的一个向量(二元函数的梯度是 xy 平面上的向量,而不是 xyz 空间里的向量)
  • 函数图形在这一点的切平面的法向量投影在自变量空间中,就是该点梯度的反方向。
  • 某点的梯度是函数以及它的切平面在该点上升最快的方向,即方向导数最大的方向。梯度的长度(模)就是在该方向的方向导数(变化率)。
  • 梯度向任何自变量空间方向的投影的长度(模)是函数在该方向上的方向导数(变化率)。
  • 梯度可以是 0 向量。在梯度为 0 向量的点上各方向的变化率都为 0 。这是函数达到极大/极小值的一阶必要非充分条件(例如鞍点不是极大/极小值,但是梯度也为 0 )。

caffe 中gradient checker

  • 采用的差分法

//Compute derivative of top w.r.t. each bottom and parameter input using finite differencing.

  • 源码:

estimated_gradient = (positive_objective - negative_objective) / stepsize_ / 2.;

<span class="kd">public</span> <span class="kd">class</span> <span class="nc">HelloWorld</span><span class="o">{</span>
<span class="kd">public</span> <span class="kd">static</span> <span class="kt">void</span> <span class="nf">main</span><span class="o">(</span><span class="n">String</span><span class="o">[]</span> <span class="n">args</span><span class="o">){</span>
<span class="n">System</span><span class="o">.</span><span class="na">out</span><span class="o">.</span><span class="na">printly</span><span class="o">(</span><span class="s">"Hello World!"</span><span class="o">);</span>
<span class="o">}</span>
<span class="o">}</span>
<span class="cp">#include <stdio.h></span>
<span class="k">using</span> <span class="k">namespace</span> <span class="n">std</span><span class="p">;</span>
<span class="kt">int</span> <span class="nf">main</span><span class="p">(){</span>
<span class="n">print</span><span class="p">(</span><span class="s">"hello world!"</span><span class="p">);</span>
<span class="k">return</span> <span class="mi">0</span><span class="p">;</span>
<span class="p">}</span>


转载于:https://www.cnblogs.com/yizhichun/p/7107303.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值