深度学习笔记(1)| 导数、偏导数、梯度和方向导数的理解

news2024/11/20 14:39:11

1. 梯度(Gradient)的理解

深度学习尝试在权重空间中找到一个方向,沿着该方向能降低损失函数的损失值。其实不需要随机寻找方向,因为可以直接计算出最好的方向,这就是从数学上计算出最陡峭的方向。这个方向就是损失函数的梯度(gradient)。在蒙眼徒步者的比喻中,这个方法就好比是感受我们脚下山体的倾斜程度,然后向着最陡峭的下降方向下山。

梯度的定义
在函数各个点的变化率的一个向量, 向量的模就是方向导数的值
性质:梯度是个有大小的值的向量;最大方向导数的值(向量的模)就是梯度方向;梯度的值就是最大方向导数的值。
通俗理解梯度:给一个函数/标量场,出一个矢量场(方向为每点方向导数值最大的方向,大小为其变化率的矢量组成的矢量场)。
简单来说:梯度不是一个值,而是一个方向

在这里插入图片描述

2. 导数

导数精确描述了函数变化率,变化率可理解为变量的变化“快慢”问题
研究变化率的问题前首先引入一个一元函数 y=kx+b,函数就一个未知数x,x也叫自变量。针对这个一元函数中的某个特定点x0,该点的导数就是x0点的“瞬间斜率”,也即切线斜率。对一维函数的求导公式如下:
在这里插入图片描述

在一维函数中,斜率是函数在某一点的瞬时变化率。如果这个斜率越大,就表明其上升趋势越强劲。当这个斜率为0时,就达到了这个函数的“强弩之末”,即达到了极值点。

梯度是函数的斜率的一般化表达,它不是一个值,而是一个向量。在输入空间中,梯度是各个维度的斜率组成的向量(或者称为导数derivatives)。在单变量的一元函数中,梯度可简单理解为只是导数,或者说对于一个线性函数而言,梯度就是曲线在某点的斜率

3. 偏导数

研究多元函数的时候就出现了偏导。偏可以理解成部分,多元就是一个自变量固定,在编程里叫常量。当函数有多个参数的时候,我们称导数为偏导数。而梯度就是在每个维度上偏导数所形成的向量

偏导数是多元函数“退化”成一元函数时的导数,这里“退化”的意思是固定其他变量的值,只保留一个变量,依次保留每个变量,则𝑁元函数有𝑁个偏导数。
一个变量对应一个坐标轴,偏导数为函数在每个位置处沿着自变量坐标轴方向上的导数(切线斜率)。

z = f ( x , y ) z = f ( x , y ) z=f(x,y) 的偏导数
函数在点 ( x 0 , y 0 ) ( x 0 , y 0 ) x0,y0 沿着 x x x 轴方向的变化率
在这里插入图片描述

z = f ( x , y ) z = f ( x , y ) z=f(x,y) 的偏导数
函数在点 ( x 0 , y 0 ) ( x 0 , y 0 ) x0,y0 沿着 y y y 轴方向的变化率
在这里插入图片描述

4. 方向导数

方向导数的本质是一个数值,简单来说其定义为:一个函数沿指定方向的变化率。

构建方向导数需要有两个元素:

  1. 函数
  2. 指定方向

当然,与普通函数的导数类似,方向导数也不是百分之百存在的,需要函数满足在某点处可微,才能计算出该函数在该点的方向导数。
我们将下图看作是一座山的模型,我们处在山上的某一点处,需要走到山下。理论上来说,这座山的表面是可以通过一个函数的描述的(虽然想要找到这个函数可能很难),而这个函数可以在不同的方向上都确定出一个方向导数,这就好比于如果我们想下山,道路并不是唯一的,而是可以沿任何方向移动。区别在于有些方向可以让我们下山速度更快,有些方向让我们下山速度更慢,有些方向甚至引导我们往山顶走(也可以理解为下山速度时负的)。在这里,速度的值就是方向导数的直观理解。
在这里插入图片描述

5.总结

方向导数是各个方向上的导数

偏导数连续才有梯度存在

梯度:函数在某点的梯度是这样一个向量,它的方向是函数在这点方向导数取得最大值得方向,它的模(即梯度的值)为方向导数的最大值.
解释什么是向量的模?
向量的模就是向量的长度
假设平面有两个点 A ( x 1 , y 1 ) A ( x 1 , y 1 ) A(x1,y1) B ( x 2 , y 2 ) B ( x 2 , y 2 ) B(x2,y2)
),它们之间的距离是(还是勾股定理)
在这里插入图片描述
这类距离也叫欧式距离,在机器学习中叫2-范数

梯度的符号 grad ⁡ f ( x 0 , y 0 ) \operatorname { grad } f(x_0,y_0) gradf(x0,y0)或者 ∇ f ( x 0 , y 0 ) ∇ f ( x 0 , y 0 ) f(x0,y0), 梯度的表达式如下所示:
在这里插入图片描述

参考博客链接:
https://blog.csdn.net/qq_37553011/article/details/79795092
https://blog.csdn.net/flyfish1986/article/details/88562514
https://blog.csdn.net/weixin_45579930/article/details/112185689
向博主致谢!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/110452.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

单页扒手-基于Node的实现

做网站的朋友经常遇见别人的好看的页面,想保存到本地自己用,可是用以前的老办法网页另存为,发现很不好,规则不好处理,路径也不好处理,用这个网页克隆(单页模板扒手)就很好处理了&…

阿里「杀手锏」级语音识别模型来了!推理效率较传统模型提升10倍,已开源

阿里达摩院,又搞事儿了。 这两天,它们发布了一个全新的语音识别模型: Paraformer。 开发人员直言不讳:这是我们“杀手锏”级的作品。 ——不仅识别准确率“屠榜”几大权威数据集,一路SOTA,推理效率上相比…

Zookeeper 4 Zookeeper JavaAPI 操作 4.7 Curator API 常用操作【Watch 事件监听】

Zookeeper 【黑马程序员Zookeeper视频教程,快速入门zookeeper技术】 文章目录Zookeeper4 Zookeeper JavaAPI 操作4.7 Curator API 常用操作4.7.1 Watch 事件监听4 Zookeeper JavaAPI 操作 4.7 Curator API 常用操作 4.7.1 Watch 事件监听 【基本概念】 ZooKeep…

异常见闻录-Java.lang.UnsupportedClassVersionError涨知识啦

今天有学生说自己的Eclipse的Java代码只能在新建的项目中运行,运行导入项目中类就报错 异常信息 java.lang.UnsupportedClassVersionError: com/demo1/Demo1Application has been compiled by a more recent version of the Java Runtime (class file version 5…

CMake入门

1. CMake的介绍: 当多人开发同一个项目时,最终要输出一个可执行文件或者共享库(dll、so等),就可以使用cmake了 所有操作都是通过 CMakeLists.txt(严格区分大小写) 来完成的 ----> 简单 2. …

C51——超声波测距 函数封装和舵机代码结合

要注意舵机转动中 延时函数要放在哪里 #include "reg52.h" sbit D5 P3^7;// sbit D6 P3^6;// sbit Trig P1^5; sbit Echo P1^6; sbit sg90_con P1^1; int cnt; int jd; double time; void Delay10us() //11.0592MHz { unsigned ch…

操作系统管程-地址-重定位-内存管理与存储管理

管程的基本概念:为什么会出现管程?信号量机制的不足:程序编写困难、易出错解决:Brinch Hansen(1973)Boare(1974)方案:在程序设计语言中引入管程成分一种高级同步机制管程的定义:是一个特殊的模块有一个名字…

使用MAXScript脚本编写圣诞树建模插件教程

一、前言 2022年圣诞节到来啦,很高兴这次我们又能一起度过~ 今年的圣诞节为大家分享用MAXScript脚本编写圣诞树建模插件的技术创意,喜欢的同学别忘记在下面点个赞! 二、创意名 一键圣诞树插件 三、效果展示 四、实现步骤 1.制作圣诞树的设计稿…

智能巡检系统:企业安全生产管理的智能助手

智能巡检是一种高效代替传统人工巡检的新方式,其依靠物联感知技术,通过物联网采集获取信息,自动记录巡检信息,及时发现问题,实现巡检科学化。 工业4.0带来的技术革新加速了企业的转型升级进程,传统企业的运…

F5张振伦:让应用安全、快速、可靠地交付到需要的地方丨2022首届全球数字生态大会

科技云报道原创。 日前,由杭州市人民政府和浙江省商务厅主办的“2022首届全球数字生态大会”在杭州国际博览中心成功举办。 本次大会以“新技术、新业态、新模式”为主题,邀请到国内外20余位演讲嘉宾和超300位专业观众线下参会。 与此同时,…

IB成绩换成GPA,美国大学是如何算的?

IB课程体系是全球公认的难度大、结构强的课程体系。 IB课程可以通过IB文凭课程(也称为IBDP)进行系统研究。IB课程体系是国际公认的基础文凭,世界上几乎所有大学都认可IB课程体系。这是否意味着IB在申请美国大学时会有优势? 事实上…

【vue系列-02】vue的核心属性,数据代理,事件

vue的核心属性一,vue的核心属性1,模板语法1.1,插值语法1.2,指令语法2,数据绑定2.1,单向绑定2.2,双向绑定3.mvvm模型4,数据代理4.1,数据代理的基本使用4.2,数据…

pytorch实现好莱坞明星识别

🍨 本文为🔗365天深度学习训练营 中的学习记录博客🍦 参考文章地址: 365天深度学习训练营-第P6周:好莱坞明星识别🍖 作者:K同学啊一、前期准备 1.设置GPU import torch from torch import nn …

获取rdp保存的凭证

获取用户保存的rdp凭证 当获取到一台windows服务器,可以尝试获取本地远程连接的信息,如果用户在登入rdp时勾选了 允许为我保存凭证的选项,则在该用户本地会生成一个凭证文件,我们只需要破解该凭证文件即可获取其明文密码。 通过注…

[含文档+PPT+源码等]基于SSM框架图书借阅管理系统开发与设计

博主介绍:✌在职Java研发工程师、专注于程序设计、源码分享、技术交流、专注于Java技术领域和毕业设计✌ 项目名称 [含文档PPT源码等]基于SSM框架图书借阅管理系统开发与设计 系统介绍 《基于SSM框架图书管理系统开发与设计》 该项目含有源码、配套开发软件、软件安…

元数据相关的术语,你知道几个?

元数据被认为是数据治理的基石,但关于元数据相关的概念,很多人不是那么清楚,今天就和大家详解元数据相关的术语。当然,与元数据相关的概念非常多,以下仅罗列几个常见的。 01 元数据 1.名词解释 元数据最简单的定义…

【关于时间序列的ML】项目 7 :使用机器学习进行每日出生预测

🔎大家好,我是Sonhhxg_柒,希望你看完之后,能对你有所帮助,不足请指正!共同学习交流🔎 📝个人主页-Sonhhxg_柒的博客_CSDN博客 📃 🎁欢迎各位→点赞…

u盘无法识别如何修复?恢复U盘,建议尝试下这些方法

我们基本都有使用过U盘,也都遇到过U盘损坏的问题。u盘无法识别如何修复?有没有什么实用的方法呢?来看看这篇文章,简单几步,就可以修复成功。如果在操作过程中,遇到数据丢失,也有方法帮你恢复&am…

ASP.NET开发的医疗健康咨询平台源码 养生知识咨询 寻根问药平台源码 C#源码

一、源码特点: 爱心医生健康知识门户网站是一个权威的医疗科普视频、语音、知识、医疗健康问答平台。 包含所有源代码和数据库,可以直接部署到IIS中使用。 二、菜单功能 网站页面: 1、首页:包含幻灯片。 2…

MySQL面试常问问题(SQL 优化 ) —— 赶快收藏

目录 1.慢SQL如何定位呢? 2.有哪些方式优化慢SQL? 避免不必要的列 分页优化 索引优化 JOIN优化 排序优化 UNION优化 3.怎么看执行计划(explain),如何理解其中各个字段的含义? 1.慢SQL如何定位呢&a…