导图社区 全连接神经网络
全连接神经网络的详细分类介绍,全连接神经网络级联多个变换来实现输入到输出的映射,是由一个输入层、一个输出层以及多个隐层组成。
这是我的mysql学习笔记,主要是基础篇入门的各项指令等,具体是看的黑马程序员的mysql视频,然后边学边自己整理出来的,希望对大家有帮助。
Segment Anything Model的论文行文思路,SAM是一个通过海量训练形成的分割模型,感兴趣可以看看。
DA-DETR的文章深度解读,解决方案DA-DETR可以使用一级探测器、使用单个鉴别器进行域间对齐网络、引入混合注意力机制确定应对其功能的模块,简化了领域自适应通道。
社区模板帮助中心,点此进入>>
互联网9大思维
组织架构-单商户商城webAPP 思维导图。
域控上线
python思维导图
css
CSS
计算机操作系统思维导图
计算机组成原理
IMX6UL(A7)
考试学情分析系统
全连接神经网络
定义
全连接神经网络级联多个变换来实现输入到输出的映射
两层全连接网络
对比
线性分类器
W可以看作模板,模板个数由类别个数决定
全连接
W1也可看作模板
W2融合多个模板的匹配结果来实现最终的类别打分
非线性
组成
一个输入层、一个输出层以及多个隐层
激活函数
常用激活函数
Sigmoid
ReLU
Tanh
Leaky ReLU
网络结构设计
神经元个数越多,分界面越复杂,在这个集合上的分类能力越强
根据分类任务的难易程度来调整神经网络模型的复杂程度,任务越难设计的神经网络结构就应该越深越宽,但应当注意过拟合现象
SOFTMAX与交叉熵损失
softmax
对输出结果进行归一化
将输出结果变成概率
熵损失
用来度量与真实值(独热码)的差距——KL散度
优化算法
计算图
步骤
任意复杂的函数,都可以用计算图的形式表示
在整个计算图中,每个门单元都会得到一些输入,然后进行计算
这个门的输出值
其输出值关于输入值的局部梯度
利用链式法则,门单元应该将回传的梯度乘以它对其的输入的局部梯度,从而得到整个网络的输出对该门单元的每个输入值的梯度
常见门单元
加法门
乘法门
拷贝门
max门
问题
梯度消失
由于链式法则的乘法特性导致
梯度爆炸
解决方法
使用合适的激活函数
动量法
减小震荡方向步长
优点
冲出高维马鞍面点
冲出局部最优和鞍点
自适应梯度法
减小震荡方向步长,增大平坦方向步长
梯度幅度的平方大地方为震荡方向
梯度幅度的平方小地方为平坦方向
RMSProp方法
ADAM
动量法和自适应梯度法的结合,但需要矫正,避免冷启动时过慢
总结
动量法+SGD最好,但是需要手动调节
ADAM容易上手,但是不易调到最优
权值初始化
全零初始化
不太好
随机初始化
采用高斯分布
大概率会梯度消失、信息流消失
Xavier初始化
达到每层神经元激活值的方差基本相同
小结
好的初始化方法可以防止前向传播过程中信息消失,也可以解决反向传递过程中的梯度消失
激活函数选择双曲正切或者Sigmoid时,建议使用Xaizer初始化方法
激活函数选择ReLU或者Leakly ReLU时,推荐使用He初始化方法
批归一化
称为BN层
方法
调整权值分布使得输入和输出具有相同分布
调节批次训练后输出的y——减均值去方差
其中需要根据对分类的贡献自行决定数据分布的均值和方差
好处
解决前向传递过程中的信号消失和梯度消失问题
过拟合和欠拟合
过拟合
当模型能力在训练集上下降,在验证集上开始上升时,即要开始过拟合
学习时选择模型包含参数过多,导致对已知数据预测很好,但是对未知数据预测很差
通常是记住了训练数据,而不是学习到了数据特征
解决方案
获取更多的训练数据
调节模型允许信息量或者加以约束——正则化
调节模型大小
约束模型权重,权重正则化
随机失活(dropout)
让隐层神经元以一定概率不被激活
实现
训练过程中,对某一层使用dropout,就是随机将该层的一些输出舍弃,这些被舍弃的神经元好像被网络删除一样
随机失活比率
是被设为0的特征所占的比例,通常在0.2-0.5范围内
可以看作多种小网络的模型集成
欠拟合
模型描述能力太弱,以至于不能很好学习到数据中的规律
通常是模型过于简单
超参数调优
学习率
过大
无法收敛
偏大
在最小值附近震荡,达不到最优
过小
收敛时间长
适中
收敛快、结果好
优化
网格搜索法
每个超参数分别取几个值,组合这些超参数,形成多组超参数
在验证机上评估每组超参数的模型性能
选择性能最优的模型所采用的那组值作为最终的超参数的值
随即搜索法
参数空间内随机取点,每点对应一组超参数
在验证集上评估每组超参数的模型性能
选择性能最优的模型所采用的那组值作为最终的超参数的的值
一般在log空间中做随机采样