在学习深度学习时遇到了个新名词:随机梯度下降--可以想象把一个篮球扔到群山之中,让它自由滚动,直到滚动到最低点.找最低点的过程也是机器学习模型训练的过程.对于篮球来说在现实世界中有万有引力会牵引它走向最地点.在计算机的世界里谁来告诉迷茫的篮球该往何处呢?如果把山川地表看成是由函数绘制的,在地表上随机放一个篮球,然后让这个篮球不断的往低洼的方向运动,就有可能找到最低点是不是?那是不是传说中有种秘法可以算出函数中某个点的变化趋势.是的,微积分.但实在是想不起是高中学过还是大学学的了,一点印象都没有,只记得有这个名字.与其说复习倒不如说重学,也不用学的太深,可以理解深度学习的梯度下降就可以了.

比如现在的函数是:f(x)=2x^2 + 1. 求函数在某个点(x,f(x))的变化趋势,其实就是求函数上穿过点(x,f(x))和点(x+h,f(x+h))这条直线的斜率.h的值越趋近于0就越能表示函数在点(x,f(x))的变化趋势.

斜率也就是 

(f(x+h)-f(x))/(x+h-x)

也就是

(f(x+h)-f(x))/h

可以记做f'(x),读作f prime x.把f(x)和f(x+h)替换为使用x表示.也就是

f'(x)=(2(x+h)^2+1 - (2x^2 + 1))/h

简化下就是:

f'(x)=(2x^2+2h^2+4hx+1-2x^2-1)/h

=2h+4x

当h趋近于0的时候,2h也就趋近于0,也就可以写作:

f'(x)=4x

如果我们把球扔在了函数上的点(5,51)上,穿过这一点的直线的斜率是4x也就是4*5=20.有了斜率m=20和直线上的一个点(5,51)代入公式y=mx+b不难求出b,最后直线可以表示为:

y=20x-49

画在图上应该更好理解:

可以看出我们只要沿着斜线y=20x-49下降就可以找到函数f(x)=2x^2+1的最低点了.这就是梯度下降.

为了搞清深度学习的随机梯度下降我复习了下微积分相关推荐

  1. 深度学习_07_2_随机梯度下降_激活函数及梯度损失函数及梯度

    07_2_随机梯度下降_激活函数及梯度&损失函数及梯度 激活函数及其梯度 Activation Functions(激活函数) 研究青蛙的神经元有多个输入,比如x0,x1,x2x_0,x_1, ...

  2. 入门 | 一文简述深度学习优化方法——梯度下降

    http://www.sohu.com/a/241298990_129720 本文是一篇关于深度学习优化方法--梯度下降的介绍性文章.作者通过长长的博文,简单介绍了梯度下降的概念.优势以及两大挑战.文 ...

  3. 【深度学习】从梯度下降到 Adam!一文看懂各种神经网络优化算法

    王小新 编译自 Medium 量子位 出品 | 公众号 QbitAI,编辑:AI有道 在调整模型更新权重和偏差参数的方式时,你是否考虑过哪种优化算法能使模型产生更好且更快的效果?应该用梯度下降,随机梯 ...

  4. 深度学习相关概念:梯度下降

    深度学习相关概念:梯度下降法.动量法与自适应梯度 1. 梯度下降概念 2. 梯度下降的目的 3. 梯度下降的原理 4. 梯度计算 5. 梯度下降算法的类别及计算效率 5.1 批量梯度下降(BGD) 5 ...

  5. 深度学习中的梯度下降优化算法综述

    1 简介 梯度下降算法是最常用的神经网络优化算法.常见的深度学习库也都包含了多种算法进行梯度下降的优化.但是,一般情况下,大家都是把梯度下降系列算法当作是一个用于进行优化的黑盒子,不了解它们的优势和劣 ...

  6. 吴恩达深度学习 —— 2.4 梯度下降

    在上一节中学习了逻辑回归模型,也知道了损失函数,损失函数是衡量单一训练样例的效果,还知道了成本函数,成本函数用于衡量参数w和b的效果,在全部训练集上来衡量,下面我们讨论如何使用梯度下降法来训练或学习训 ...

  7. 【深度学习】(4) 梯度下降、损失函数

    各位同学好,今天和大家介绍一下TensorFlow2.0中的梯度下降.激活函数及其梯度.损失函数及其梯度. (1) 梯度计算:GradientTape(),tape.watch(),tape.grad ...

  8. 关于深度学习中的梯度下降,了解一下

    原文 一篇让你很容易理解什么是梯度下降的博客 0 什么是梯度下降 梯度下降法的基本思想可以类比为一个下山的过程.假设这样一个场景:一个人被困在山上,需要从山上下来(i.e. 找到山的最低点,也就是山谷 ...

  9. 深度学习中的随机梯度下降(SGD)简介

    随机梯度下降(Stochastic Gradient Descent, SGD)是梯度下降算法的一个扩展. 机器学习中反复出现的一个问题是好的泛化需要大的训练集,但大的训练集的计算代价也更大.机器学习 ...

最新文章

  1. 百度前端技术学院js任务三
  2. 什么是生存分析(survival analysis)?
  3. 作业要求 20181127-1 附加作业 软件工程原则的应用实例分析
  4. golang map 排序 key value
  5. PPT 下载 | 龙创悦动游臣隽:数据在游戏行业的落地应用实践
  6. svn的安装和服务器搭建, 汉化以及多项目管理
  7. Linux下9个有用的touch命令示例
  8. scala基础之控制结构
  9. sqrt numpy_NumPy sqrt()–矩阵元素的平方根
  10. java播放加密后的wav文件,使用Java实时同时播放WAV文件
  11. 用友T6打开UFO报表提示登录失败
  12. IDEA 2017破解 license server激活
  13. Altium Designer禁止联网操作说明
  14. 计算机单片机考试作弊检讨书,考试作弊检讨书(精选5篇)
  15. 会网站seo技巧,提升流量不难
  16. 小程序转uni-app——条件判断包含中文
  17. 斯蒂芬•盖斯 — 《微习惯》
  18. python编程从入门到实践 项目一:外星人入侵
  19. 多元线性回归matlab实现
  20. MySql学习-基础篇

热门文章

  1. IE8 使用 Oracle ERP
  2. Murata村田高压电容的国产替代--赫威斯电容(HVC Capacitor)
  3. 世界地图的制作(总体概念设计)
  4. 笔记本计算机的功率一般多少,笔记本的功耗的一般值和实测值【图文】
  5. C语言中常见的转义字符总结
  6. 收藏了800道Java后端经典面试题,分享给大家,希望你找到自己理想的Offer呀~
  7. 欧姆龙NJ/NX基于Sysmac Studio的EIP通讯 方式
  8. OpManager 实时网络监控
  9. python while循环跳出_python如何跳出while循环
  10. android 微信 https 证书,微信https未授权证书究竟是什么意思