什么是损失函数?

损失函数就一个具体的样本而言,模型预测的值与真实值之间的差距。
对于一个样本(xi,yi)其中yi为真实值,而f(xi)为我们的预测值。使用损失函数L(f(xi),yi)来表示真实值和预测值之间的差距。两者差距越小越好,最理想的情况是预测值刚好等于真实值。

什么是梯度?

百度上面:梯度的本意是一个向量(矢量),表示某一函数在该点处的方向导数沿着该方向取得最大值,即函数在该点处沿着该方向(此梯度的方向)变化最快,变化率最大(为该梯度的模)。
梯度下降:简单说就是从山顶上找一个最快,最陡峭的路线下山

机器学习/深度学习中,需要使用训练数据来最小化损失函数,从而确定参数的值。而最小化损失函数,即需要求得损失函数的极值。
求解函数极值时,需要用到导数。对于某个连续函数f ( x ),令其一阶导数 f ′ ( x ) = 0
,通过求解该微分方程,便可直接获得极值点。但当变量很多或者函数很复杂时,f ′ ( x ) = 0 的显式解并不容易求得。且计算机并不擅长于求解微分方程。
计算机所擅长的是,凭借强大的计算能力,通过插值等方法(如牛顿下山法、弦截法等),海量尝试,一步一步的去把函数的极值点“试”出来。
而海量尝试需要一个方向感,为了阐述这个方向感,介绍一下方向导数。

方向导数
方向导数是偏导数的概念的推广, 偏导数研究的是指定方向 (坐标轴方向) 的变化率,到了方向导数,研究哪个方向可就不一定了。
函数在某一点处的方向导数在其梯度方向上达到最大值,此最大值即梯度的范数。
梯度
在一个数量场中,函数在给定点处沿不同的方向,其方向导数一般是不相同的。那么沿着哪一个方向其方向导数最大,其最大值为多少,这是我们所关心的,为此引进一个很重要的概念: 梯度。
函数在某一点处的方向导数在其梯度方向上达到最大值。
这就是说,沿梯度方向,函数值增加最快。同样可知,方向导数的最小值在梯度的相反方向取得,此最小值为最大值的相反数,从而沿梯度相反方向函数值的减少最快。
梯度值
在单变量的实值函数中,梯度可简单理解为只是导数,或者说对于一个线性函数而言,梯度就是曲线在某点的斜率。
对于多维变量的函数,比如在一个三维直角坐标系,该函数的梯度就可以表示为公式

为求得这个梯度值,要用到“偏导”的概念。
γ 在机器学习中常被称为学习率 ( learning rate ), 也就是上面梯度下降法中的步长。
通过算出目标函数的梯度(算出对于所有参数的偏导数)并在其反方向更新完参数 Θ ,在此过程完成后也便是达到了函数值减少最快的效果,那么在经过迭代以后目标函数即可很快地到达一个极小值。如果该函数是凸函数,该极小值也便是全局最小值,此时梯度下降法可保证收敛到全局最优解。
梯度下降由梯度方向,和步长决定,每次移动一点点。但是每一次移动都是对你所在的那个点来说,往极值方向,所以能够保证收敛。

什么是损失函数?什么是梯度相关推荐

  1. 机器学习/算法面试笔记1——损失函数、梯度下降、优化算法、过拟合和欠拟合、正则化与稀疏性、归一化、激活函数

    正值秋招,参考网络资源整理了一些面试笔记,第一篇包括以下7部分. 1.损失函数 2.梯度下降 3.优化算法 4.过拟合和欠拟合 5.正则化与稀疏性 6.归一化 7.激活函数 损失函数 损失函数分为经验 ...

  2. 梯度提升决策树(GBDT)与XGBoost、LightGBM

    20211224 [机器学习算法总结]XGBoost_yyy430的博客-CSDN博客_xgboost xgboost参数 默认:auto.XGBoost中使用的树构造算法.可选项:auto,exac ...

  3. 机器学习中的梯度下降( Gradient Descent)算法

    前言 梯度下降(Gradient Descent,GD)算法主要分为三种:批量梯度下降(Batch Gradient Descent,BGD)算法.随机梯度下降(Stochastic Gradient ...

  4. 一、常见损失函数的用法

    前言 定义损失函数的常用方法,其中包括多分类交叉熵.均方差.二分类交叉熵的用法.其作用包括:1.衡量模型输出值和标签值的差异:2.评估模型的预测值与真实值不一致程度:3.神经网络中优化的目标函数,损失 ...

  5. 深度研究自然梯度优化,从入门到放弃 | Deep Reading

    参加 2019 Python开发者日,请扫码咨询 ↑↑↑ 作者 | Cold Marie Wild 译者 | 刘畅 责编 | Jane 出品 | AI科技大本营(公众号id:rgznai100) [导 ...

  6. 直接对梯度下手,阿里达摩院提出新型优化方法,一行代码即可替换现有优化器...

    来源:机器之心 本文约3284字,建议阅读8分钟. 本文介绍阿里达摩院的研究者另辟蹊径,直接对梯度下手,提出全新的梯度中心化方法.只需一行代码即可嵌入现有的 DNN 优化器中,还可以直接对预训练模型进 ...

  7. 梯度提升树算法原理小结

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 本文转自|机器学习算法那些事 前言 本文介绍了boosting族的 ...

  8. gbdt 算法比随机森林容易_机器学习(七)——Adaboost和梯度提升树GBDT

    1.Adaboost算法原理,优缺点: 理论上任何学习器都可以用于Adaboost.但一般来说,使用最广泛的Adaboost弱学习器是决策树和神经网络.对于决策树,Adaboost分类用了CART分类 ...

  9. GAN是一种特殊的损失函数?

    GAN是一种特殊的损失函数? https://www.toutiao.com/a6637274808323146243/ 摘要: 从本质上来说,生成对抗网络(GAN)是一种特殊的损失函数,我们来深入探 ...

  10. 梯度提升决策树GBDT及其优秀改进XGBoost的浅析

    梯度提升决策树 英文是Gradient Boosting Decision Tree (GBDT).是一种迭代的决策树算法,由多棵决策树组成,将所有树的结论累加起来做最终答案.值得注意的是,GBDT中 ...

最新文章

  1. Spring 注解之@RestController与@Controller的区别
  2. PHP环境搭建:Windows 7下安装配置PHP+Apache+Mysql环境教程(转)
  3. C++ Primer 5th笔记(10)chapter10 泛型算法 :lambda
  4. Windows下的搜索神器 —— everything
  5. codevs1079 回家
  6. Qt之线程同步(生产者消费者模式 - QSemaphore)
  7. (转)Spring Boot (十九):使用 Spring Boot Actuator 监控应用
  8. .net remoting的事务传播以及wcf分布式事务
  9. VS C#程序打包覆盖安装不能更新的解决方法
  10. jQuery中的子(后代)元素过滤选择器(四、六):nth-child()、first-child、last-child、only-child...
  11. 树莓派初始化安装与配置
  12. CentOS 8 的安装(官方安装、清华大学开源软件镜像站、阿里云镜像、网易镜像下的安装步骤)
  13. Auto CAD指定线段长度和角度的方法
  14. java基础——java学习心得
  15. html5读取umd,教程:使用umd、commonjs和es三种模式制作自己的React 组件(库)
  16. 华人教授世界一流大学观察报告:斯坦福师生吃饭时,谈论的都是什么话题?...
  17. 基于微信小程序的网上订餐系统 报告+任务书+开题报告+文献综述+中期PPT+外文翻译及原文+PPT+项目源码及数据库文件
  18. [LeetCode]179.Largest Number
  19. Unity学习笔记14——导入视频格式问题(QuickTime player)
  20. 湖仓一体电商项目(一):项目背景和架构介绍

热门文章

  1. Vue 项目应用 —— 后台管理系统模板
  2. 7-29 二分法求多项式单根 (20 分)
  3. 王道考研408 数据结构 第三章 栈、队列与数组
  4. 易特科:世界医学泰斗联姻中国IT精英
  5. 问题解决了,可是为什么呢?could not find the main class.program will exitmain
  6. 5、唯一约束(UNIQUE KEY)
  7. synergy服务器未响应,请问synergy启动不了怎么回事???
  8. 批量制作PR字幕——雷特字幕插件
  9. VLAN网络支持ipv6的交换机和虚机配置
  10. 运维学习(二):Linux服务器永久修改系统时间和时区方法