当前位置: 首页 > news >正文

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

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

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) 的点积为零,表明它们相互垂直。

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

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

相关文章:

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

深度学习基础 - 梯度垂直于等高线的切线 flyfish 梯度 给定一个标量函数 f ( x , y ) f(x, y) f(x,y),它的梯度(gradient)是一个向量,表示为 ∇ f ( x , y ) \nabla f(x, y) ∇f(x,y),定义为: ∇ f ( x…...

py2exe打包

要用到py2exe打包python程序,记录一下。 写一个setup.py文件,内容如下: from distutils.core import setup import py2exeoptions {"py2exe":{"compressed": 1, # 0或1 1压缩,0不压缩"optimize&quo…...

Gerrit存在两个未审核提交且这两个提交有冲突时的解决方案

Gerrit存在两个未审核提交且这两个提交有冲突时的解决方案 问题背景 用户A提交了一个记录,用户A的记录未审核此时用户B又提交了,这个时候管理员去合并代码,合了其中一个后再去合另一个发现合并不了,提示冲突,这个时候另…...

基于单片机的智能风扇设计

摘 要: 传统风扇无法根据周围环境的温度变化进行风速的调整,必须人为地干预才能达到需求 。 本文基于单片机的智能风扇主要解决以往风扇存在的问题,其有两种工作模式: 手动操作模式和自动运行模式,人们可以根据需要进行模式选择。 在自动运行…...

【实战】Spring Security Oauth2自定义授权模式接入手机验证

文章目录 前言技术积累Oauth2简介Oauth2的四种模式授权码模式简化模式密码模式客户端模式自定义模式 实战演示1、mavan依赖引入2、自定义手机用户3、自定义手机用户信息获取服务4、自定义认证令牌5、自定义授权模式6、自定义实际认证提供者7、认证服务配置8、Oauth2配置9、资源…...

Redis数据失效监听

一、配置Redis开启 打开conf/redis.conf 文件,添加参数:notify-keyspace-events Ex 二、验证配置 步骤一:进入redis客户端:redis-cli步骤二:执行 CONFIG GET notify-keyspace-events ,如果有返回值证明配…...

【达梦数据库】-SQL调优思路

【达梦数据库】-SQL调优思路 --查看统计信息是否准确 select table_name,num_rows,blocks,last_analyzed from user_tables where table_name表名; #默认每周六1点进行全库信息统计1、确认SQL --sql select * from test;2、查看ET ---------------------------------------…...

DispatcherServlet 源码分析

一.DispatcherServlet 源码分析 本文仅了解源码内容即可。 1.观察我们的服务启动⽇志: 当Tomcat启动之后, 有⼀个核⼼的类DispatcherServlet, 它来控制程序的执⾏顺序.所有请求都会先进到DispatcherServlet,执⾏doDispatch 调度⽅法. 如果有拦截器, 会先执⾏拦截器…...

代码随想录算法训练营第十八天| 530.二叉搜索树的最小绝对差 ● 501.二叉搜索树中的众数 ● 236. 二叉树的最近公共祖先

题目: 530. 二叉搜索树的最小绝对差 给你一个二叉搜索树的根节点 root ,返回 树中任意两不同节点值之间的最小差值 。 差值是一个正数,其数值等于两值之差的绝对值。 示例 1: 输入:root [4,2,6,1,3] 输出:…...

会议室占用的时间(75%用例)D卷(JavaPythonC++Node.jsC语言)

现有若干个会议,所有会议共享--个会议室,用数组表示各个会议的开始时间和结束时间,格式为: 会议1开始时间,会议1结束时间 会议2开始时间,会议2结束时间 请计算会议室占用时间段。 输入描述: 第一行输入一个整数 n,表示会议数量 之后输入n行,每行两个整数,以空格分隔,…...

C++初阶_1:namespace

本章详细解说:namespace 。 namespace: namespace,意为:命名空间,c的关键字(关键字,就是提示:取变量名,函数名时不能与之撞名)。 namespace的价值: 为了解…...

低代码开发平台:效率革命还是质量隐忧?

如何看待“低代码”开发平台的兴起? 近年来,“低代码”开发平台如雨后春笋般涌现,承诺让非专业人士也能快速构建应用程序。这种新兴技术正在挑战传统软件开发模式,引发了IT行业的广泛讨论。低代码平台是提高效率的利器&#xff0…...

在 Django 表单中传递自定义表单值到视图

在Django中,我们可以通过表单的初始化参数initial来传递自定义的初始值给表单字段。如果我们想要在视图中设置表单的初始值,可以在视图中创建表单的实例时,传递一个字典给initial参数。 1、问题背景 我们遇到了这样一个问题:在使…...

Android之复制文本(TextView)剪贴板

效果图&#xff1a; 功能简单就是点击“复制”&#xff0c;将邀请码复制到 剪贴板中 布局 <androidx.constraintlayout.widget.ConstraintLayoutandroid:id"id/clCode"android:layout_width"dimen/dp_0"android:layout_height"dimen/dp_49"…...

Ubuntu24.04设置国内镜像软件源

参考文章&#xff1a; Ubuntu24.04更换源地址&#xff08;新版源更换方式&#xff09; - 陌路寒暄 一、禁用原来的软件源 Ubuntu24.04 的源地址配置文件发生改变&#xff0c;不再使用以前的 sources.list 文件&#xff0c;升级 24.04 之后&#xff0c;该文件内容变成了一行注…...

分布式与微服务详解

1. 单机架构 只有一台机器&#xff0c;这个机器负责所有的工作 &#xff08;这里假定一个电商网站&#xff09; 现在大部分公司的产品都是单机架构 。 2. 分布式架构 一台机器的硬件资源是有限的&#xff0c;服务器处理请求是需要占用硬件资源的&#xff0c;如果业务增长&a…...

Vue设置滚动条自动保持到最底端

需求描述&#xff1a;在开发中我们常常会遇到需要让滚动条保持到最底端的需求&#xff0c;比如在开发一个聊天框时&#xff0c;请求接口拿到消息列表数据&#xff0c;展示到前端页面时&#xff0c;需要让滚动条自动滚到最底端&#xff0c;以此来展示最后的聊天记录。同时&#…...

uniapp创建一个新项目并导入uview-plus框架

近年来&#xff0c;随着技术的发展&#xff0c;人们越来越意识到跨平台和统一的重要性。对于同一款应用来说&#xff0c;一般都会有移动端、PC端、甚至小程序端。这是由于设备的不同&#xff0c;我们必须要做很多的客户端来满足不同的用户需求。但是由于硬件设施的不同&#xf…...

LabVIEW光电在线测振系统

开发了一种基于LabVIEW软件和光电技术的在线测振系统。该系统利用激光作为调制光源&#xff0c;并通过位置敏感型光电传感器&#xff08;PSD&#xff09;进行轴振动的实时检测。其主要特点包括非接触式测量、广泛的测量范围、高灵敏度和快速响应时间&#xff0c;且具备优良的抗…...

分布式光伏电站 转化能源 丰富用电结构

分布式光伏系统是一种利用分散式的可再生能源&#xff0c;在靠近用户端的地方安装光伏发电设施&#xff0c;通过光伏效应将太阳能转化为直流电能&#xff0c;并通过逆变器将其转换为交流电&#xff0c;以供用户使用的系统。以下是对分布式光伏系统的详细阐述&#xff1a; 一、…...

Python爬虫实战:研究MechanicalSoup库相关技术

一、MechanicalSoup 库概述 1.1 库简介 MechanicalSoup 是一个 Python 库,专为自动化交互网站而设计。它结合了 requests 的 HTTP 请求能力和 BeautifulSoup 的 HTML 解析能力,提供了直观的 API,让我们可以像人类用户一样浏览网页、填写表单和提交请求。 1.2 主要功能特点…...

MySQL 隔离级别:脏读、幻读及不可重复读的原理与示例

一、MySQL 隔离级别 MySQL 提供了四种隔离级别,用于控制事务之间的并发访问以及数据的可见性,不同隔离级别对脏读、幻读、不可重复读这几种并发数据问题有着不同的处理方式,具体如下: 隔离级别脏读不可重复读幻读性能特点及锁机制读未提交(READ UNCOMMITTED)允许出现允许…...

【解密LSTM、GRU如何解决传统RNN梯度消失问题】

解密LSTM与GRU&#xff1a;如何让RNN变得更聪明&#xff1f; 在深度学习的世界里&#xff0c;循环神经网络&#xff08;RNN&#xff09;以其卓越的序列数据处理能力广泛应用于自然语言处理、时间序列预测等领域。然而&#xff0c;传统RNN存在的一个严重问题——梯度消失&#…...

【第二十一章 SDIO接口(SDIO)】

第二十一章 SDIO接口 目录 第二十一章 SDIO接口(SDIO) 1 SDIO 主要功能 2 SDIO 总线拓扑 3 SDIO 功能描述 3.1 SDIO 适配器 3.2 SDIOAHB 接口 4 卡功能描述 4.1 卡识别模式 4.2 卡复位 4.3 操作电压范围确认 4.4 卡识别过程 4.5 写数据块 4.6 读数据块 4.7 数据流…...

Linux云原生安全:零信任架构与机密计算

Linux云原生安全&#xff1a;零信任架构与机密计算 构建坚不可摧的云原生防御体系 引言&#xff1a;云原生安全的范式革命 随着云原生技术的普及&#xff0c;安全边界正在从传统的网络边界向工作负载内部转移。Gartner预测&#xff0c;到2025年&#xff0c;零信任架构将成为超…...

NFT模式:数字资产确权与链游经济系统构建

NFT模式&#xff1a;数字资产确权与链游经济系统构建 ——从技术架构到可持续生态的范式革命 一、确权技术革新&#xff1a;构建可信数字资产基石 1. 区块链底层架构的进化 跨链互操作协议&#xff1a;基于LayerZero协议实现以太坊、Solana等公链资产互通&#xff0c;通过零知…...

【学习笔记】深入理解Java虚拟机学习笔记——第4章 虚拟机性能监控,故障处理工具

第2章 虚拟机性能监控&#xff0c;故障处理工具 4.1 概述 略 4.2 基础故障处理工具 4.2.1 jps:虚拟机进程状况工具 命令&#xff1a;jps [options] [hostid] 功能&#xff1a;本地虚拟机进程显示进程ID&#xff08;与ps相同&#xff09;&#xff0c;可同时显示主类&#x…...

Swagger和OpenApi的前世今生

Swagger与OpenAPI的关系演进是API标准化进程中的重要篇章&#xff0c;二者共同塑造了现代RESTful API的开发范式。 本期就扒一扒其技术演进的关键节点与核心逻辑&#xff1a; &#x1f504; 一、起源与初创期&#xff1a;Swagger的诞生&#xff08;2010-2014&#xff09; 核心…...

项目部署到Linux上时遇到的错误(Redis,MySQL,无法正确连接,地址占用问题)

Redis无法正确连接 在运行jar包时出现了这样的错误 查询得知问题核心在于Redis连接失败&#xff0c;具体原因是客户端发送了密码认证请求&#xff0c;但Redis服务器未设置密码 1.为Redis设置密码&#xff08;匹配客户端配置&#xff09; 步骤&#xff1a; 1&#xff09;.修…...

华硕a豆14 Air香氛版,美学与科技的馨香融合

在快节奏的现代生活中&#xff0c;我们渴望一个能激发创想、愉悦感官的工作与生活伙伴&#xff0c;它不仅是冰冷的科技工具&#xff0c;更能触动我们内心深处的细腻情感。正是在这样的期许下&#xff0c;华硕a豆14 Air香氛版翩然而至&#xff0c;它以一种前所未有的方式&#x…...