深度学习笔记(9)——神经网络和反向传播

神经网络和反向传播

神经网络架构:

更多的神经元,更大的模型容量,使用更强的正则化进行约束。

神经网络的分层计算

f = W 2 m a x ( 0 , W 1 x + b 1 ) + b 2 f=W_2max(0,W_1x+b_1)+b_2 f=W2max(0,W1x+b1)+b2,其中max函数体现了非线性,如果想要加深网络的层次,必须加上非线性函数

∂ f ∂ x = ∂ f ∂ y ∂ y ∂ x \frac{\partial f}{\partial x}=\frac{\partial f}{\partial y}\frac{\partial y}{\partial x} ∂x∂f=∂y∂f∂x∂y,此处的 ∂ f ∂ y \frac{\partial f}{\partial y} ∂y∂f是上游梯度, ∂ f ∂ x \frac{\partial f}{\partial x} ∂x∂f是下游梯度, ∂ y ∂ x \frac{\partial y}{\partial x} ∂x∂y是局部梯度。

Sigmoid函数: σ = 1 1 + e − x \sigma=\frac{1}{1+e^{-x}} σ=1+e−x1, σ \sigma σ在 [ 0 , 1 ] [0,1] [0,1]之间, ∂ σ ∂ x = σ ( 1 − σ ) \frac{\partial \sigma}{\partial x}=\sigma(1-\sigma) ∂x∂σ=σ(1−σ),Sigmoid函数在 x x x很大或者很小的时候,梯度几乎为0,即梯度消失。

梯度流中的基本计算模式:

add gate:两个输入的梯度和上游梯度相等

mul gate:另外一个输入和上游梯度的乘积,例如两个输入为x=2,y=3,上游梯度为5,则x的梯度为 3 ∗ 5 = 15 3*5=15 3∗5=15,y的梯度为 2 ∗ 5 = 10 2*5=10 2∗5=10。

copy gate:两个输出,一个输入,输入的梯度等于两个上游梯度的和。

max gate:是两个输入中较大的那个的梯度

向量的反向传播

scalar to scalar: x ∈ R , y ∈ R , ∂ y ∂ x ∈ R x\in R,y\in R,\frac{\partial y}{\partial x}\in R x∈R,y∈R,∂x∂y∈R

vector to scalar: x ∈ R n , y ∈ R , ∂ y ∂ x ∈ R n , ( ∂ y ∂ x ) n = ∂ y ∂ x n x\in R^n,y\in R,\frac{\partial y}{\partial x}\in R^n,(\frac{\partial y}{\partial x})_n=\frac{\partial y}{\partial x_n} x∈Rn,y∈R,∂x∂y∈Rn,(∂x∂y)n=∂xn∂y

vector to vector: x ∈ R n , y ∈ R m , ∂ y ∂ x ∈ R n × m , ( ∂ y ∂ x ) n , m = ∂ y m ∂ x n x\in R^n,y\in R^m,\frac{\partial y}{\partial x}\in R^{n\times m},(\frac{\partial y}{\partial x})_{n,m}=\frac{\partial y_m}{\partial x_n} x∈Rn,y∈Rm,∂x∂y∈Rn×m,(∂x∂y)n,m=∂xn∂ym

但是不管怎么变,Loss L依然是标量, ∂ L ∂ x \frac{\partial L}{\partial x} ∂x∂L的形状总是与x相同

求向量的反向传播时,求得的雅可比矩阵总是稀疏的,非对角线元素总是0

max(x,a)的梯度:对于任何正数x,max(x,a)'=I(x>a),I(x>a)是示性函数

相关推荐
Elastic 中国社区官方博客1 分钟前
Elasticsearch Open Inference API 增加了对 Jina AI 嵌入和 Rerank 模型的支持
大数据·人工智能·elasticsearch·搜索引擎·ai·全文检索·jina
快下雨了L10 分钟前
C++面试笔记(持续更新...)
笔记
美狐美颜sdk23 分钟前
直播美颜工具架构设计与性能优化实战:美颜SDK集成与实时处理
深度学习·美颜sdk·第三方美颜sdk·视频美颜sdk·美颜api
AWS官方合作商28 分钟前
Amazon Lex:AI对话引擎重构企业服务新范式
人工智能·ai·机器人·aws
workflower32 分钟前
Prompt Engineering的重要性
大数据·人工智能·设计模式·prompt·软件工程·需求分析·ai编程
陈无左耳、34 分钟前
HarmonyOS学习第3天: 环境搭建开启鸿蒙开发新世界
学习·华为·harmonyos
curemoon1 小时前
理解都远正态分布中指数项的精度矩阵(协方差逆矩阵)
人工智能·算法·矩阵
柃歌1 小时前
【UCB CS 61B SP24】Lecture 7 - Lists 4: Arrays and Lists学习笔记
java·数据结构·笔记·学习·算法
JANGHIGH1 小时前
c++ std::list使用笔记
c++·笔记·list
柃歌1 小时前
【UCB CS 61B SP24】Lecture 4 - Lists 2: SLLists学习笔记
java·数据结构·笔记·学习·算法