【AI】深度学习的数学--核心公式

news2024/9/27 5:53:41

1 梯度下降

f ( x + Δ x , y + Δ y ) ≃ f ( x , y ) + ∂ f ( x , y ) ∂ x Δ x + ∂ f ( x , y ) ∂ y Δ y f(x+\Delta x,y+\Delta y) \simeq f(x,y)+\frac{\partial f(x,y)}{\partial x}\Delta x+\frac{\partial f(x,y)}{\partial y}\Delta y f(x+Δx,y+Δy)f(x,y)+xf(x,y)Δx+yf(x,y)Δy

Δ z = f ( x + Δ x , y + Δ y ) − f ( x , y ) ≃ ∂ f ( x , y ) ∂ x Δ x + ∂ f ( x , y ) ∂ y Δ y \Delta z =f(x+\Delta x,y+\Delta y)-f(x,y) \simeq \frac{\partial f(x,y)}{\partial x}\Delta x+\frac{\partial f(x,y)}{\partial y}\Delta y Δz=f(x+Δx,y+Δy)f(x,y)xf(x,y)Δx+yf(x,y)Δy

Δ z ≃ ∂ f ( x , y ) ∂ x Δ x + ∂ f ( x , y ) ∂ y Δ y \Delta z \simeq \frac{\partial f(x,y)}{\partial x}\Delta x+\frac{\partial f(x,y)}{\partial y}\Delta y Δzxf(x,y)Δx+yf(x,y)Δy

Δ z ≃ ( ∂ f ( x , y ) ∂ x , ∂ f ( x , y ) ∂ y ) ( Δ x , Δ y ) \Delta z \simeq (\frac{\partial f(x,y)}{\partial x},\frac{\partial f(x,y)}{\partial y})(\Delta x,\Delta y) Δz(xf(x,y),yf(x,y))(Δx,Δy)

Δ z ≃ ( ∂ z ∂ x , ∂ z ∂ y ) ⋅ ( Δ x , Δ y ) = ∇ z ⋅ ( Δ x , Δ y ) \Delta z \simeq (\frac{\partial z}{\partial x},\frac{\partial z}{\partial y})\cdot (\Delta x,\Delta y)=\nabla z \cdot (\Delta x,\Delta y) Δz(xz,yz)(Δx,Δy)=z(Δx,Δy)

如果想要让z的下降速度最快就要保证两个向量方向完全相反,也就是要保证如下公式成立

( Δ x , Δ y ) = − η ∇ z (\Delta x,\Delta y) = -\eta \nabla z (Δx,Δy)=ηz

2 NN误差反向传播

参数w和b的梯度表示

∂ C ∂ w j i l = δ j l a i l − 1 , ∂ C ∂ b j l = δ j l ( l = 2 , 3... ) \frac{\partial C}{\partial w^{l}_{ji}}=\delta ^l_j a^{l-1}_i,\frac{\partial C}{\partial b^{l}_{j}}=\delta ^l_j(l=2,3...) wjilC=δjlail1,bjlC=δjl(l=2,3...)

δ的计算方法

输出层的误差反向传播计算方法,此处L代表输出层

δ j L = ∂ C ∂ a j L a ′ ( z j L ) \delta^L_j=\frac{\partial C}{\partial a^L_j}a'(z^L_j) δjL=ajLCa(zjL)

C = 1 2 { ( t 1 − a 1 L ) 2 + ( t 2 − a 2 L ) 2 } C=\frac{1}{2}\{ (t_1-a^L_1)^2+(t_2-a^L_2)^2 \} C=21{(t1a1L)2+(t2a2L)2}

δ j L = ∂ C ∂ a j L a ′ ( z j L ) = ( a j L − t j ) a ′ ( z j L ) \delta^L_j=\frac{\partial C}{\partial a^L_j}a'(z^L_j)=(a^L_j-t_j)a'(z^L_j) δjL=ajLCa(zjL)=(ajLtj)a(zjL)

隐藏层的误差反向传播计算方法,层l和下一层l+1的递推关系,m为层l+1的神经单元个数,l为大于等于2的整数

δ i l = ( δ 1 l + 1 w 1 i l + 1 + δ 2 l + 1 w 2 i l + 1 + . . . + δ m l + 1 w m i l + 1 ) a ′ ( z i l ) \delta ^l _i = (\delta ^{l+1} _1 w ^{l+1} _{1i} + \delta ^{l+1} _2 w^{l+1} _{2i}+...+ \delta ^{l+1} _m w^{l+1} _{mi})a'(z^l _i) δil=(δ1l+1w1il+1+δ2l+1w2il+1+...+δml+1wmil+1)a(zil)

输出层的神经单元误差

δ j 3 = ∂ C ∂ z j 3 = ∂ C ∂ a j 3 ∂ a j 3 ∂ z j 3 = ∂ C ∂ a j 3 a ′ ( z j 3 ) \delta^3_j = \frac{\partial C}{\partial z^3_j}=\frac{\partial C}{\partial a^3_j} \frac{\partial a^3_j}{\partial z^3_j}=\frac{\partial C}{\partial a^3_j}a'(z^3_j) δj3=zj3C=aj3Czj3aj3=aj3Ca(zj3)

隐藏层的神经单元误差
在这里插入图片描述

δ i 2 = ( δ 1 3 w 1 i 3 + δ 2 3 w 2 i 3 ) a ′ ( z i 2 ) ( i = 1 , 2 , 3 ) \delta ^2 _i = (\delta ^3 _1 w ^3 _{1i} + \delta ^3 _2 w^3 _{2i})a'(z^2 _i)(i=1,2,3) δi2=(δ13w1i3+δ23w2i3)a(zi2)(i=1,2,3)

3 CNN误差反向传播

在这里插入图片描述

输出层的梯度分量

在这里插入图片描述

∂ C ∂ w O n k − i j = δ n O a i j P k , ∂ C ∂ b O n = δ n O \frac{\partial C}{\partial w ^{On}}_{k-ij}=\delta ^O _n a^{Pk}_{ij},\frac{\partial C}{\partial b ^{O}}_{n}=\delta ^O _n wOnCkij=δnOaijPk,bOCn=δnO

n为输出层神经单元的编号,k为池化层子层编号,ij为池化子层神经单元行列编号(i,j=1,2)

卷积层的梯度分量

在这里插入图片描述

∂ C ∂ w i j F k = δ 11 F k x i j + δ 12 F k x i j + 1 + . . . + δ 44 F k x i + 3 j + 3 \frac{\partial C}{\partial w^{Fk}_{ij}}=\delta ^{Fk}_{11}x_{ij}+\delta ^{Fk}_{12}x_{ij+1}+...+\delta ^{Fk}_{44}x_{i+3j+3} wijFkC=δ11Fkxij+δ12Fkxij+1+...+δ44Fkxi+3j+3

k为过滤器的编号,ij为过滤器行列的编号(i,j=1,2,3)
在这里插入图片描述

∂ C ∂ b F k = δ 11 F k + δ 12 F k + . . . + δ 44 F k \frac{\partial C}{\partial b^{Fk}}=\delta ^{Fk}_{11}+\delta ^{Fk}_{12}+...+\delta ^{Fk}_{44} bFkC=δ11Fk+δ12Fk+...+δ44Fk

k为过滤器的编号

输出层δ的计算方法

δ n O = ∂ C ∂ z n O = ∂ C ∂ a n O ∂ a n O ∂ z n O = ∂ C ∂ a n O a ′ ( z n O ) \delta ^O_n=\frac{\partial C}{\partial z^O_n}=\frac{\partial C}{\partial a^O_n}\frac{\partial a^O_n}{\partial z^O_n}=\frac{\partial C}{\partial a^O_n}a'(z^O_n) δnO=znOC=anOCznOanO=anOCa(znO)

n为输出层神经单元的编号

C = 1 2 { ( t 1 − a 1 O ) 2 + ( t 2 − a 2 O ) 2 + ( t 3 − a 3 O ) 2 } C=\frac{1}{2}\{ (t_1-a^O_1)^2+(t_2-a^O_2)^2+(t_3-a^O_3)^2 \} C=21{(t1a1O)2+(t2a2O)2+(t3a3O)2}

δ n O = ( a n O − t n ) a ′ ( z n O ) \delta ^O_n=(a_n^O-t_n)a'(z_n^O) δnO=(anOtn)a(znO)

以上为代价函数示例及其导数,带入δ式可得

∂ C ∂ a n O = a n O − t n ( n = 1 , 2 , 3 ) \frac{\partial C}{\partial a^O_n}=a_n^O-t_n(n=1,2,3) anOC=anOtnn=1,2,3

求导数得

卷积层δ的计算方法

δ i j F k = { δ 1 O w k − i ′ j ′ O 1 + δ 2 O w k − i ′ j ′ O 2 + δ 3 O w k − i ′ j ′ O 3 } × ( 当 a i j F k 在区块中为最大值时为 1 否则为 0 ) × a ′ ( z i j F k ) \delta ^{Fk}_{ij}=\{\delta ^{O}_{1}w^{O1}_{k-i'j'}+\delta ^{O}_{2}w^{O2}_{k-i'j'}+\delta ^{O}_{3}w^{O3}_{k-i'j'}\}\times(当a^{Fk}_{ij}在区块中为最大值时为1否则为0)\times a'(z^{Fk}_{ij}) δijFk={δ1OwkijO1+δ2OwkijO2+δ3OwkijO3}×(aijFk在区块中为最大值时为1否则为0)×a(zijFk)

k为卷积层子层的编号,ij为卷积层神经单元的编号,i’j’是卷积层i行j列神经单元连接池化层神经单元的位置
在这里插入图片描述

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

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

相关文章

聚观早报 | 豆包视频生成大模型发布;华为纯血鸿蒙将开启公测

聚观早报每日整理最值得关注的行业重点事件,帮助大家及时了解最新行业动态,每日读报,就读聚观365资讯简报。 整理丨Cutie 9月25日消息 豆包视频生成大模型发布 华为纯血鸿蒙将开启公测 高德地图将发放百亿补贴 12306上线“车内换座”新…

RK3568笔记六十三:基于LVGL的Linux相机

若该文为原创文章,转载请注明原文出处。 记录移植韦老师的基于LVGL的Linux相机项目,主要是想学习如何在LVGL下显示摄像头数据。 此项目是基于老师的源码框架移植的,地址是lv_100ask_linux_camera: 基于LVGL的Linux相机 (gitee.com) 个人使用的是RK3568,正点原子板子,所以…

CTF-PWN方向自学习笔记

基础知识 栈的结构 熟悉如下寄存器 db 定义的是1Byte的变量 也就是8位 define byte dd 定义的通常是4字节的变量 也就是32位 Define Double Word dw 定义一个16位 也就是2字节的变量 Define Word dq 定义一个8字节 也就是64位的变量 多少位的机器就表示一个字是多少位 x86…

GO网页自动回复机器人源码

源码名称:网页自动回复机器人源码 源码介绍:一款网页自动回复机器人源码,是一款集自动回复、默认消息设置、自定义 API 接口调用于一体的智能网页机器人。它采用高效稳定的 Golang 作为后端开发语言,运行时内存占用极小&#xff…

RNN模型学习

RNN模型 循环神经网络(Recurrent Neural Network, RNN)是一种用于处理序列数据的神经网络。**RNN具有内部状态(或称为记忆),这允许它在处理序列中的每个元素时考虑之前的信息。**这种特性使得RNN非常适合于自然语言处…

【CSS】鼠标 、轮廓线 、 滤镜 、 堆叠层级

cursor 鼠标outline 轮廓线filter 滤镜z-index 堆叠层级 cursor 鼠标 值说明值说明crosshair十字准线s-resize向下改变大小pointer \ hand手形e-resize向右改变大小wait表或沙漏w-resize向左改变大小help问号或气球ne-resize向上右改变大小no-drop无法释放nw-resize向上左改变…

ISA Server配置https踩坑全过程

首先普通的http配置请参考 【ISA Server 2006发布Web网站】 https://www.bilibili.com/video/BV1qc411v75w/?share_sourcecopy_web&vd_sourcef35b2f2d0d34140bcba81b8b6f8c1b69 本文只一笔带过,讲一下https部分。 正解 由于我维护的是windows server 2003的…

付费进群V5版本首发源码

付费进群V5版本首发 最新分站大屏 更新三个模板 仿官方模板等等 最新防注入技术 源码下载:https://download.csdn.net/download/m0_66047725/89797314 更多资源下载:关注我。

Postgresql怎么查询数据库中所有的表,odoo17数据库最依赖表整理

今天遇到了一个需求,需要梳理odoo中数据库表的分类,所以想要知道怎么查询当前数据库中所有的表,特此记录. 一个简单的SQL语句: select * from pg_tables;得到的结果如下: 显然这个有点杂乱,我们换一个SQL语句: select tablename from pg_tables where schemanamepublic不过…

LiveQing视频点播流媒体RTMP推流服务功能-支持电子放大拉框放大直播视频拉框放大录像视频流拉框放大电子放大

LiveQing视频点播流媒体RTMP推流服务功能-支持电子放大拉框放大直播视频拉框放大录像视频流拉框放大电子放大 1、鉴权直播2、视频点播3、RTMP推流视频直播和点播流媒体服务 1、鉴权直播 鉴权直播-》播放 ,左键单击可以拉取矩形框,放大选中的范围&#x…

(四)悟说几个特殊矩阵及矩阵函数

上一期介绍了矩阵的出现源于解线性方程组。但是,矩阵出现之后,就犹如打开了潘多拉的盒子,会产生许多魔法。 1 旋转矩阵 我们知道用矩阵左乘某个向量,相当于对该向量做线性变换。那么是否有一种矩阵,能让向量旋转&…

前端项目代理到本地调试

我们在项目开发中,有时mock数据不能满足我们的需求,可以考虑把线上地址运行在本地代码上进行开发调试,也就是所谓的代理 这里推荐使用的工具是 whistle SwitchyOmega 1. 首先在chrome浏览器中安装插件SwitchyOmega 下载地址 CrxDL - 下载…

Git - 初识版本库

版本库也叫仓库,英文名 repository。 ‍ 创建版本库 之前我们说了版本库的概念: 存储版本的地方(存放各个版本之间差异的地方),通常称为版本库。通常版本库是以文件(夹)的形式存放在磁盘上&a…

【数据结构初阶】排序算法(上)插入排序与选择排序

文章目录 1.排序概念及运用1. 1 概念1. 2 运用1.3 常见排序算法 2. 插入排序2. 1 直接插入排序2. 2 希尔排序2. 2. 1 希尔排序的时间复杂度 3. 选择排序3. 1 直接选择排序3. 2 堆排序3. 3 Top-K问题 1.排序概念及运用 1. 1 概念 排序:所谓排序,就是使一…

小米2025届软件开发工程师(C/C++/Java)(编程题AK)

选择题好像也是25来个 编程题 T1 题目描述 小明喜欢解决各种数学难题。一天,他遇到了一道有趣的题目:他需要帮助他的朋友们完成一个排序任务。小明得到两个长度为 n 的数组a[]和b[]。他可以在两个数组对应位置进行交换,即选定一个位置 i &#xff0c…

PCL 求八叉树的体素中心

目录 一、概述 1.1原理 1.2实现步骤 1.3应用场景 二、代码实现 2.1关键函数 2.1.1 八叉树构建 2.1.2 获取体素中心 2.2完整代码 三、实现效果 PCL点云算法汇总及实战案例汇总的目录地址链接: PCL点云算法与项目实战案例汇总(长期更新&#xf…

注意力机制篇 | YOLOv8改进之在C2f模块引入EffectiveSE注意力模块 | 基于SE注意力

前言:Hello大家好,我是小哥谈。EffectiveSE(Effective Squeeze-Excitation) 是一种改进的通道注意力模块,其目的是在保持模型性能的同时减少计算复杂性和信息丢失。它基于原始的 Squeeze-Excitation (SE) 模块,但通过一些关键的改进来提高效率。🌈 目录 🚀1.基…

前端——flex布局

flex布局——弹性布局 传统布局: 浮动 定位 行内块等 1. flex布局 方法简单 不需要计算 能自动分配父级里面的子元素排版 对齐方式等等 >flex布局 可以适应不同屏幕布局 2. flex布局使用 - 给父级盒子 display: flex 开启弹性盒模型 - 子元素就会默…

栈的基本概念和及具体实现

今天给大家介绍一下栈的基本概念及实现!话不多说,立即开始! 1.栈的概念: 一种特殊的线性表,其只允许在固定的一端进行插入和删除元素操作。进行数据插入和删除操作的一端称为栈 顶,另一端称为栈底。栈中的…

计算机网络--TCP、UDP抓包分析实验

计算机网络实验 目录 实验目的 实验环境 实验原理 1、UDP协议 2、TCP协议 实验具体步骤 实验目的 1、掌握使用wireshark工具对UDP协议进行抓包分析的方法,掌握UDP协议的报文格式,掌握UDP协议校验和的计算方法,理解UDP协议的优缺点&am…