深度学习与神经网络的区别
神经网络 | 深度学习 | |
网络架构 | 3层以内 | 可达上千层 |
层间连接 | 通常是全连接 | 形式多样:共享权值、跨层反馈 |
目标函数 | MSE | CE |
激活函数 | Sigmod | ReLU |
梯度下降的方法 | 梯度下降(GD)等 | Adm等 |
避免过适应 | 凭经验 | Dropout等 |
目标函数
- 均方误差:
- 交叉熵:
交叉熵更能快速的找到最优值。
Softmax层
Softmax层的作用是突出“最大值”并转换成概率的形式。
梯度消失
为什么用ReLU,这篇文章介绍了梯度用Sigmod梯度为什么消失,为什么去使用ReLU。
SGD
- learning rate不好确定,如果选择的太小,收敛速度会很慢,如果太大,loss function就会在极小值处不停的震荡甚至偏离。
- 深层神经网络之所以难以训练,不是因为陷入局部最优,而是因为学习过程容易陷入马鞍面,在马鞍面上,所有方向的梯度都是0。
Momentum
引入了速度V,V是之前梯度的累加,当前后梯度方向一支时,能够加速学习,不一致时,能够抑制震荡。
动量公式为:
越大原先的梯度对现在的梯度影响越大。
Nesterov Momentum
Adagrad
RMSprop
Adam
Drop
- 每次训练参数前,按一定的比例删减部分神经元。
- 删减后整个网络变得更小。
- 本质上,Dropout就是用一小块数据来训练一系列的子网络。
- Dropout是集成学习的一种。
卷积神经网络
CNN的基本组件
- 卷积层(Convolutional layer),激活函数(ReLU,Sigmod...)
- 池化层(Pooling layer),平均池化,最大池化。
- 全连接层(Fully-Connected layer)。
CNN卷积层
- 卷积核/滤波器以扫描窗的方式对图像做卷积,每一层含有多个核,每个核对应一个输出通道。
即:
其中,权重参数需要学习。
- 滤波器/卷积核的参数:滤波器的数量(kernel count/output count)、核尺寸(kernel size)、步长(stride)、零填充(zero padding)。卷积步长padding>1,有降维的作用。
- 尺度计算:输出特征图的高度H=(H-size+2*padding)/stride + 1,输出特征图的宽度W=(W-size+2*padding)/stride + 1,维度 D=kernel count
- ReLU激活函数:能够明显解决梯度消失的问题,深度网络进行优化的关键。
- 卷积层的一般过程:卷积层的特征提取-》ReLU激活-》卷积降维-》ReLU激活。
CNN池化层
作用:
将特征进行融合,降维。
参数:
尺寸
步长
计算类别:
最大池化(max pooling)
平均池化(average pooling)
Softmax层
使用指数化归一函数,将一个实数值向量压缩到(0,1),所有元素的和为1。
最后一个全连接层对接n个输出的神经节点,得出n类标签的概率值。
用以构建loss