导图社区 深度学习思维导图汇总
该思维导图主要用于深度学习相关基础知识的梳理工作,其主要包括:神经网络基础、浅层神经网络、深层神经网络、神经网络改善及优化、卷积神经网络、循环神经网络。对每个部分的基础公式理论进行汇总,加强整体框架的形成与理论理解的深入。
编辑于2021-09-27 22:24:44深度学习
声明
该思维导图主要用于深度学习相关基础知识的梳理工作,其主要包括: 神经网络基础、浅层神经网络、深层神经网络、神经网络改善及优化、卷积神经网络、循环神经网络。对每个部分的基础公式理论进行汇总,加强整体框架的形成与理论理解的深入
该思维导图的理论基础、公式图片截取等相关内容,主要学习于 吴恩达深度学习Deeplearning.ai 便于更系统的学习与思考,提升深度学习理论功底
神经网络基础
基础声明
特征转换:64*64*3 --> 12288 x:表示一个维数据,为输入数据,维度为(, 1); y:表示输出结果,取值为(0,1); 输入: X= [x(1), x(2), . . . , x(m)] 输出: Y= [y(1),y(2), . . . ,y(m) 表示样本数目 样本的输入和输出:(x(m), y(m))
逻辑回归算法
公式:(x, w, b) ==> z=w^T x + b ==> a=sigma(z) ==> L(a, y)
output:z =w^Tx + b
sigmoid函数:
损失函数:
y = 1时:
y = 0时:
对m个样本的损失函数:
梯度下降法
定义:
逻辑回归中的梯度下降(单个样本)
损失函数:
第一步:
第二步:
第三步:
第四步: 参数更新
向量化的前向传播和反向传播
浅层神经网络
x:输入特征 a:每个神经元的输出 w:特征的权重
[m]: 表示第m层神经网络 下角标n: 表示第m层的第n个神经元
向量化神经元计算(正向传播):
多样本向量化(正向传播):
激活函数(正向传播):g(z)
sigmoid()函数:
导数:
tanh()函数:
导数:
relu()函数:a = max(0, z)
导数:
leaky relu()函数:a = max(0.01z, z)
导数:
梯度下降(反向传播):
初始化问题:
参数选择:0.01,过大的系数会在神经元计算和激活函数计算时,产生很大的a值,映射到激活函数梯度很小的地方,减慢学习速度
深层神经网络
前向传播概述:
步骤:
向量化实现:
反向传播概述
步骤:
向量化实现:
矩阵维数校验:
w的维度(下一层的维数,前一层的维数)
b的维度(下一层的维数,1)
神经元输出z,激活函数输出a的维度(下一层的维数,1)
向量化后,w和b维度不变,z,a和x 的维度会根据向量化后样本的数量而变化
超参数:控制参数w和b的最终值的参数
学习率
隐藏层层数
激活函数类型
梯度下降法循环次数
隐藏层神经元个数
循环神经网络
符号定义
① 训练样本i的序列中t个元素:
② 第个训练样本的输入序列长度:
同理:
③ 字典(vocabulary)
one-hot表示
循环神经网络模型
一个时间步t时刻的数学表达
符号简化==>
可视化前向传播
损失函数
交叉熵损失函数:
可视化反向传播
相关公式
不同类型的循环神经网络
一对一
基础网络
一对多
音乐生成
多对一
电影情感分类
多对多
机器翻译
对新序列采样
GRU单元(门控循环单元)
公式:
优点:通过门决定,是否更新某个记忆细胞,用于解决梯度消失问题
参考论文:① Cho te al., 2014. On the Properties of Neural Machine Translation: Encoder-Decoder Approaches ② Chung et al., 2014. Empirical Evaluation of Gated Recurrent Neural Networks on Sequence Modeling
LSTM(长短期记忆网络)
前向传播
公式:
可视化解释:
反向传播
对门求导
参数求偏导:
对隐藏单元、记忆状态和输入求导:
子主题
参考论文:Hochreiter S, Schmidhuber J. Long Short-Term Memory[J]. Neural Computation, 1997, 9(8):1735-1780.
深层循环神经网络
表达式: eg:
词嵌入
背景: one-hot向量表示词特征的方法会使每个词之间相互孤立,既内积为0,使得算法对相关词的泛化能力不强 词嵌入方法为词构建了n个特征来表示每个词的特征,会增加相似词的相关性,增加算法的泛化能力
词嵌入做迁移学习的步骤
一、从大量的文本集中学习词嵌入
二、把词嵌入模型迁移到新的只有少量标注训练集的任务中
三、根据数据集大小决定是否依据数据集调整词嵌入
参考论文:Mikolov T, Yih W T, Zweig G. Linguistic regularities in continuous space word representations[J]. In HLT-NAACL, 2013.
特性:
相似度函数:
余弦相似度:
词嵌入矩阵
学习词嵌入
学习模型:
参考论文:Bengio et al., 2003, A Neural Probabilistic Language Model.
Word2Vec
参考论文: Mikolov T, Chen K, Corrado G, et al. Efficient Estimation of Word Representations in Vector Space[J]. Computer Science, 2013.
加速softmax计算方案
分级softmax分类器
负采样
参考论文:Mikolov T, Sutskever I, Chen K, et al. Distributed Representations of Words and Phrases and their Compositionality[J]. 2013, 26:3111-3119.
采样方式:
GkoVe词向量
参考论文:Pennington J, Socher R, Manning C. Glove: Global Vectors for Word Representation[C]// Conference on Empirical Methods in Natural Language Processing. 2014:1532-1543.
词嵌入偏除
参考论文:Bolukbasi T, Chang K W, Zou J, et al. Man is to Computer Programmer as Woman is to Homemaker? Debiasing Word Embeddings[J]. 2016.
主要步骤:
① 确定偏差趋势
② 中和步骤
③ 均衡步
针对性别特定词汇的均衡算法
参考论文: Bolukbasi T, Chang K W, Zou J, et al. Man is to Computer Programmer as Woman is to Homemaker? Debiasing Word Embeddings[J]. 2016.
卷积神经网络
卷积神经网络
边缘检测
image:H * W * C
filter:f * f
元素乘法运算:
Padding
图像:n×n 过滤器:f×f
输出维度:
卷积步长
图像:n×n 过滤器:f×f 步长:s
输出维度:
三维卷积
Image:6×6×3 filter:(3×3×3)×2
输出维度:4×4×2
单层卷积神经网络
前向传播:
input:
output:
计算:
池化层
超参数:
f:filter size
s:stride
类型:maxpooling / averagepooling
示例
卷积网络映射参数少的原因
① 参数共享
② 使用稀疏连接
网络中的1×1卷积
为神经网络添加了一个非线性函数,减少或保持或增加输入层中的通道数量
inception网络
作用:代替人工来确定卷积层中的过滤器类型,或者确定是否需要创建卷积层或池化层
深度神经网络实例
LeNet-5
`
论文:LeCun et al., 1998. Gradient-based learning applied to document recognitional
AlexNet
论文:Krizhevsky et al., 2012. ImageNet classification with deep convolutional neural networks
VGG
论文:Simonyan & Zisserman 2015. Very deep convolutional networks for large-scale image recognition
ResNet
论文:He et al., 2015. Deep residual networks for image recognition
Inception
论文:Szegedy et al. 2014. Going deeper with convolutions
目标检测
定义标签
损失函数
基于滑动窗口的目标检测算法
参考论文: Sermanet, Pierre, et al. "OverFeat: Integrated Recognition, Localization and Detection using Convolutional Networks." Eprint Arxiv (2013)
算法效率提升方法
把神经网络的全连接层转化成卷积层
YOLO算法
参考论文:Redmon, Joseph, et al. "You Only Look Once: Unified, Real-Time Object Detection."(2015):779-788.
交并比
A∩B/A∪B
anchor box
定义类别标签
R-CNN
参考论文:Girshick R, Donahue J, Darrell T, et al. Rich feature hierarchies for accurate object detection and semantic segmentation[C]//Proceedings of the IEEE conference on computer vision and pattern recognition. 2014: 580-587.
人脸识别
one-shot学习
Siamese网络
范数:
Triplet损失
三元组损失函数:
参考论文:Florian Schroff, Dmitry Kalenichenko, James Philbin (2015). FaceNet: A Unified Embedding for Face Recognition and Clustering
梯度下降法优化损失函数
风格转换
内容代价函数:
风格代价函数:
参考论文:Leon A. Gatys, Alexander S. Ecker, Matthias Bethge, (2015). A Neural Algorithm of Artistic Style
深层神经网络改善:超参数调试、 正 则 化 以 及 优 化
样本
训练集:训练样本
验证集:验证算法性能
测试集:神经网络系统做 出无偏估计
说明:小样本量:训练集70%,验证集30% 训练集60%,验证集20%,测试集20% 大样本量:训练集>>70% 验证集、测试集<<20%
偏差与方差
高方差:数据欠拟合状态
高偏差:数据过拟合状态
正则化
L1正则化
L2正则化
”权重衰减“
Dropout
随机失活 + 期望修正
数据扩增
early stopping
归一化输入
零均值化:
归一化方差:
目的:使得代价函数更容易优化,加速运算
优化算法
batch梯度下降法:(batch_size = m)
缺点:需要遍历完所有数据后,执行梯度下降算法
Mini-batch 梯度下降法:(1 < batch_size < m)
500万个batch样本 --> 5000个mini-batch样本 x^(1)~x^(1000) --> x^{1} …… x^(4999000)~x^(5000000) --> x^{5000} 同理: y^{1}~y^{5000}
执行机制:
优点:既有向量化加速的优势,又可在不需要遍历所有数据的情况下执行梯度下降操作
随机梯度下降法:(batch_size = 1)
缺点:消除了向量化带来的加速效果
指数加权平均
方程:
偏差修正:Vt =
动量梯度下降法
方程:
超参数:
RMSprop
方程:
Adam 优化算法
方程:
指数加权平均:
偏差修正:
权重更新:
学习率衰减:
decay-rate称为衰减率; epochnum 为代数; a0为初始学习率;
指数衰减:
离散衰减
超参数调试
随机取值:
随机均匀取值
对数标尺取值
搜索超参数:
Pandas
Caviar
Batch归一化:
对隐藏层单元做归一化处理:
参数用于控制该隐藏单元的均值和方差
优化作用:
①对隐藏单元值做归一化,加速学习
②使输入到该层的值变得稳定,减弱了前层参数的作用 与后层参数的作用之间的联系,加速学习
③轻微的正则化效果