深度学习基础 - 梯度垂直于等高线的切线

news2024/9/20 16:45:36

深度学习基础 - 梯度垂直于等高线的切线

flyfish

在这里插入图片描述

梯度

给定一个标量函数 f ( x , y ) f(x, y) f(x,y),它的梯度(gradient)是一个向量,表示为 ∇ f ( x , y ) \nabla f(x, y) f(x,y),定义为: ∇ f ( x , y ) = ( ∂ f ∂ x , ∂ f ∂ y ) \nabla f(x, y) = \left( \frac{\partial f}{\partial x}, \frac{\partial f}{\partial y} \right) f(x,y)=(xf,yf)

梯度指向函数在该点增加最快的方向,其大小表示函数增加的速率。

等高线

等高线是指在某个平面上连接函数值相同的点的曲线。对于一个标量函数 f ( x , y ) f(x, y) f(x,y),等高线可以表示为 f ( x , y ) = c f(x, y) = c f(x,y)=c,其中 c c c 是常数。

梯度与等高线的关系

梯度垂直于等高线的切线 :对于等高线 f ( x , y ) = c f(x, y) = c f(x,y)=c,在等高线上,函数的值是恒定的。因此,当我们在等高线上移动时,函数 f f f 的变化率为零。这意味着在等高线的切线方向上,函数没有变化,梯度与该方向无关。
梯度的方向是函数值变化最快的方向,而在等高线上的任意方向上,函数值不变,因此梯度方向必然垂直于等高线的切线方向。

几何解释

  1. 等高线
    等高线是一个函数 f ( x , y ) f(x, y) f(x,y) 的等值线,即满足 f ( x , y ) = c f(x, y) = c f(x,y)=c 的所有点的集合。
    在等高线上,函数值保持不变。

  2. 梯度的
    梯度 ∇ f \nabla f f 是一个向量,其方向是函数 f ( x , y ) f(x, y) f(x,y) 在某一点变化最快的方向。梯度向量的大小表示函数在该点变化的速率。

  3. 梯度与等高线
    沿等高线方向,函数值不变,因此沿等高线移动时,函数的变化量为零。
    梯度向量的方向是函数变化最快的方向,而沿等高线方向没有变化,故梯度向量必须垂直于等高线的方向。

向量解释

在二维平面中,可以使用简单的向量代数证明梯度与等高线的切线垂直:

  1. 等高线的方向
    在等高线 f ( x , y ) = c f(x, y) = c f(x,y)=c 上,假设我们选择一个方向向量 t = ( a , b ) \mathbf{t} = (a, b) t=(a,b),这个向量代表等高线的切线方向。

  2. 梯度与切线的关系
    梯度 ∇ f = ( ∂ f ∂ x , ∂ f ∂ y ) \nabla f = \left( \frac{\partial f}{\partial x}, \frac{\partial f}{\partial y} \right) f=(xf,yf)
    梯度 ∇ f \nabla f f 与向量 t \mathbf{t} t 的点积为零。

点积的计算 :
∇ f ⋅ t = ∂ f ∂ x ⋅ a + ∂ f ∂ y ⋅ b \nabla f \cdot \mathbf{t} = \frac{\partial f}{\partial x} \cdot a + \frac{\partial f}{\partial y} \cdot b ft=xfa+yfb

因为在等高线方向上,函数值不变,故此方向的变化量为零:
a ⋅ ∂ f ∂ x + b ⋅ ∂ f ∂ y = 0 a \cdot \frac{\partial f}{\partial x} + b \cdot \frac{\partial f}{\partial y} = 0 axf+byf=0
这表明梯度 ∇ f \nabla f f 与等高线的切线方向向量 t \mathbf{t} t 垂直。

两个向量的点积为零时,它们是相互垂直的,这背后的数学原理来源于欧几里得几何中的向量投影与角度关系。以下是这个结论的详细解释:

向量的点积

两个向量 a \mathbf{a} a b \mathbf{b} b 的点积(内积)定义为: a ⋅ b = ∣ a ∣ ∣ b ∣ cos ⁡ θ \mathbf{a} \cdot \mathbf{b} = |\mathbf{a}| |\mathbf{b}| \cos \theta ab=a∣∣bcosθ

其中:
∣ a ∣ |\mathbf{a}| a ∣ b ∣ |\mathbf{b}| b 分别是向量 a \mathbf{a} a b \mathbf{b} b 的模(长度)。
θ \theta θ 是两个向量之间的夹角。

点积与垂直的关系

当两个向量垂直时,它们之间的夹角 θ = 9 0 ∘ \theta = 90^\circ θ=90。此时, cos ⁡ 9 0 ∘ = 0 \cos 90^\circ = 0 cos90=0,因此点积为: a ⋅ b = ∣ a ∣ ∣ b ∣ cos ⁡ 9 0 ∘ = 0 \mathbf{a} \cdot \mathbf{b} = |\mathbf{a}| |\mathbf{b}| \cos 90^\circ = 0 ab=a∣∣bcos90=0

再解释

  1. 切线的方向 :假设在等高线上的某一点 ( x 0 , y 0 ) (x_0, y_0) (x0,y0),等高线的切线方向用一个向量 ( d x , d y ) (dx, dy) (dx,dy) 表示。沿着等高线的微小移动满足: f ( x 0 + d x , y 0 + d y ) − f ( x 0 , y 0 ) = 0 f(x_0 + dx, y_0 + dy) - f(x_0, y_0) = 0 f(x0+dx,y0+dy)f(x0,y0)=0
    根据函数的全微分公式,这意味着(链式法则):
    ∂ f ∂ x d x + ∂ f ∂ y d y = 0 \frac{\partial f}{\partial x} dx + \frac{\partial f}{\partial y} dy = 0 xfdx+yfdy=0

  2. 垂直关系 :由于梯度 ∇ f = ( ∂ f ∂ x , ∂ f ∂ y ) \nabla f = \left( \frac{\partial f}{\partial x}, \frac{\partial f}{\partial y} \right) f=(xf,yf),上式表明: ∇ f ⋅ ( d x , d y ) = 0 \nabla f \cdot (dx, dy) = 0 f(dx,dy)=0

这说明梯度向量 ∇ f ( x , y ) \nabla f(x, y) f(x,y) 与切向量 ( d x , d y ) (dx, dy) (dx,dy) 的点积为零,表明它们相互垂直。

梯度指向函数变化最快的方向,而等高线方向是函数不变的方向。

在这里插入图片描述梯度向量与切线垂直,梯度的正方向指示了函数值增加最快的方向,而负方向则指示了函数值减少最快的方向。梯度向量的负方向由红色箭头指示,一条等高线上的切线用绿色显示。

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

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

相关文章

单片机GPIO模式和应用

Push pull 推挽输出 定义:推挽输出是一种输出模式,其中引脚可以输出高电平或低电平,且两种电平状态下都具有较强的驱动能力。 特点: 无论输出高电平还是低电平,都有较强的电流驱动能力。 适用于驱动外部数字电路…

宝塔面板启用 QUIC 与 Brotli 的完整教程

环境 系统:Ubuntu 22.04.4 LTS x86_64 宝塔版本:7.7.0 (可使用本博客提供的一键安装优化脚本) nginx版本:1.26.1 开放UDP端口 注意:在你的服务器商家那里也要开放443 udp端口 sudo ufw allow 443/udp然后重新加载 UFW 以使新…

【漏洞复现】maxView Storage Manager 远程代码执行漏洞

maxView Storage Manager使查看、监控和配置系统中基于Microsemi RAID适配器构建的所有存储变得简单。⽅便的图形⽤户界⾯(GUI)在Microsemi产品线和⽀持的操作系统(包括 Windows、Linux、VMWare和Solaris)中的外观和操作都相同。使…

多线程编译

多线程与多进程一样,为了能同时执行多个任务 区别 多进程 创建子进程,子进程会拷贝父进程的数据段的所有内存 进程是资源的获取单位 每个进程完全独立运行 更加关注两个进程之间的通信问题 多线程 线程是进程的最小组成单位,每个进程…

代码随想录算法训练营Day32 | 56. 合并区间 | 738.单调递增的数字 | 968.监控二叉树

今日任务 56. 合并区间 题目链接&#xff1a; https://leetcode.cn/problems/merge-intervals/题目描述&#xff1a; Code class Solution { public:vector<vector<int>> merge(vector<vector<int>>& intervals) {ranges::sort(intervals, [&…

Spring:springboot集成jetcache循环依赖问题

springboot版本&#xff1a;2.6.14 jetcache版本&#xff1a;2.6.2 启动项目报错如下&#xff1a; 解决方案&#xff1a; jetcache版本升级到2.6.4 https://github.com/alibaba/jetcache/issues/624

IT运维岗适用的6本证书

作为IT从业人员&#xff0c;不断提升自身的专业技能和知识是提升职场竞争力、助力升职加薪的重要途径。特别是在运维领域&#xff0c;虽然工作看似简单&#xff0c;但实际上需要掌握的技术知识却相当全面。为了全面提升自己的技术能力&#xff0c;并证明自己的专业能力&#xf…

每周心赏|七夕这样玩也太超前了吧,速来AI一下!

明天就是七夕节了&#xff0c;是时候给七夕节来点大震撼了&#xff0c;AI带你玩点不一样的&#xff01; 给大家挖掘了几个有梗又有爱的智能体。信我&#xff0c;快来试玩&#xff01; 不知道大家是什么人&#xff1f;反正&#xff0c;我是一个很爱测评的人&#x1f92d;&#…

【GaussDB(DWS)】数仓部署架构与物理结构分析

数仓架构与物理结构分析 一、部署架构二、物理结构三、测试验证 一、部署架构 华为数据仓库服务DWS&#xff0c;集群版本8.1.3.x 集群拓扑结构&#xff1a; 上述拓扑结构为DWS单AZ高可靠部署架构&#xff0c;为减少硬件故障对系统可用性的影响&#xff0c;建议集群部署方案遵…

制造企业技术图纸不受控的影响与规避方法

在制造企业中&#xff0c;技术图纸是产品设计、制造与检验的核心依据。若技术图纸不受控&#xff0c;将对企业造成诸多不利影响。 首先&#xff0c;产品质量无法得到保障。不受控的图纸可能存在设计缺陷、尺寸误差或工艺不合理等问题&#xff0c;导致生产出的产品不合格&#…

独辟蹊径:用Python打造你的副业帝国,迈向财富自由

在当今这个数字化时代&#xff0c;掌握一门编程语言如同拥有了一把开启无限可能的钥匙。Python&#xff0c;以其简洁的语法、强大的库支持和广泛的应用领域&#xff0c;成为了许多人实现副业收入乃至财富自由的首选工具。本文将探讨如何利用Python技能开启副业&#xff0c;并逐…

mysql中的表查询操作

performance_schema 系统数据库用于收集Mysql服务器的性能参数&#xff0c;以便数据库管理员了解产生性能瓶颈的原因。information_schema 系统数据库定义了所有数据库对象的元数据信息。 表的常规操作&#xff08;增删改查&#xff09; 我们经常对表进行以下操作 插入&#x…

OceanMind海睿思受邀参加第41届CCF中国数据库学术会议

CCF 中国数据库学术会议始于1977年&#xff0c;是由数据库专业委员会举办的中国数据库领域的最高学术会议&#xff0c;第41届中国数据库学术会议&#xff08;NDBC 2024&#xff09;将于2024年8月7日-8月10日在新疆乌鲁木齐举行。中新赛克副总兼大数据产品线总经理卢云川先生受邀…

匹配格值的前半部分

Excel有多列含空格的源数据&#xff0c;如C3:D19&#xff1b;还有若干用于比较的数据项&#xff0c;由"-"隔为前后两部分&#xff0c;如F3:F7。 要求用源数据的每列与数据项的前半部分进行比较&#xff0c;将匹配上的数据项填在该列下面。 使用 SPL XLL spl("d…

DALL•E 3 重新定义图像生成的人工智能

在人工智能的不断发展中&#xff0c;图像生成技术一直是一个备受关注的领域。OpenAI 的 DALL-E 系列自发布以来&#xff0c;便因其卓越的图像生成能力而备受瞩目。作为这一系列的最新成员&#xff0c;DALL-E 3 再次突破了技术的界限&#xff0c;为图像生成带来了全新的可能性。…

嵌入式day23

实现minishell minishell功能&#xff1a; 1,cp 复制文件 cp 1 2 把文件1复制成文件2 2,cat 查看文件 cat 1 查看文件到内容 3,cd 切换路径 cd 1 切换到目录1中 4,ls 查看当前目录下到文件 ls 或 ls /home 5,ll 查看当前目录下到文件 ll 或 ll /home 6,ln -s 创建软链接…

《加密与解密 》第四版读书笔记2

1、注入技术 1.1注入技术的背景 在Windows操作系统中&#xff0c;各个进程的内存空间是相互独立的&#xff0c;虽然能通过函数VirtualQueryEx/VirtualProtectEx查询、设置目标进程的内存信息和页属性&#xff0c;通过函数ReadProcessMemory/WriteProcessMemory对目标进程的内存…

第八天 排行榜功能

排行榜分析&#xff1a; 榜单分为两类&#xff1a; 实时榜单&#xff1a;也就是本赛季的榜单 历史榜单&#xff1a;也就是历史赛季的榜单 之前一个积分记录明细表 要知道&#xff0c;每个用户都可能会有数十甚至上百条积分记录&#xff0c;当用户规模达到百万规模&#xff…

C#调用c++的dll方法,动态调用c++dll的方法

文章目录 一、创建c的dll1.新建项目2.删除vs自建的.cpp和.h文件3.新建Algorithm.h和Algorithm.cpp4.编译c1.编译2.解决报错3.再次编译可以看到已经成功。4.查看成功输出的dll。 二、创建c#项目1.创建一个console控制台程序。2.把dll拷贝到c#生成的程序根目录。3.在c#的program.…

WPF自定义控件的应用(DynamicResource的使用方法)

1 DynamicResource的使用方法 可以在字典文件 的抬头区写入数&#xff1a; <SolidColorBrush x:Key"PrimaryBackgroundColor" Color"#FFABAdB3"/><SolidColorBrush x:Key"TextBox.MouseOver.Border" Color"#FF7EB4EA"/>&l…