|
|
|
@ -112,4 +112,65 @@ CV领域发展:
|
|
|
|
|
|
|
|
|
|

|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- 卷积参数共享:即input使用的W部分的参数是共享的,卷积网络比之前的全连接大大减少了参数,不再需要每个对应的W。
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#### 池化层的作用
|
|
|
|
|
|
|
|
|
|
将原始input的所有数据,进行压缩
|
|
|
|
|
|
|
|
|
|

|
|
|
|
|
|
|
|
|
|
> 减少长宽以减少数据量的体积。
|
|
|
|
|
|
|
|
|
|
最大池化MAX POOLING:
|
|
|
|
|
|
|
|
|
|

|
|
|
|
|
|
|
|
|
|
- 如上图,从可选中,选出最大的值。为什么选择最大的值,因为前面是有权重W相乘的,还记得前面的W0和W1吗,如果计算完成得到的结果最大,那说明该结果是最重要的,所以这里选最大的,即挑最重要的。
|
|
|
|
|
|
|
|
|
|
- 体积也从上图的2×2矩阵变成4×4的矩阵
|
|
|
|
|
|
|
|
|
|
- 除了最大池化还有平均池化,不过平均池化基本没人用,既然有最好的结果,就应该拿最好的。
|
|
|
|
|
|
|
|
|
|
- 池化层没有结果任何计算,只是选最大的
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#### 整体网络架构
|
|
|
|
|
|
|
|
|
|
只有带参数的才能算层,Relu和池化不算
|
|
|
|
|
|
|
|
|
|

|
|
|
|
|
|
|
|
|
|
将一张图,通过不断卷积、池化、最后变成一条向量,接上全连接层,进行分类。
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#### 残差网络ResNet
|
|
|
|
|
|
|
|
|
|
深度网络遇到的问题:越大的层数理论上意味着越好,但实际是这样吗?下面是一组很早前测试的图
|
|
|
|
|
|
|
|
|
|

|
|
|
|
|
|
|
|
|
|
> 左边的训练集和右边的预测集都是20层的反而比56层的好,那么说明多出的36层起负作用。
|
|
|
|
|
|
|
|
|
|
解决方案:
|
|
|
|
|
|
|
|
|
|

|
|
|
|
|
|
|
|
|
|
> 我们还是跟原来一样增加层数,但在此基础上增加残差,也就是如果多的一层网络效果并不比上一层好,那么依然使用上一层的结果,可以看到X直接跳过了两层,这样就能保证了效果一定是越来越好的。
|
|
|
|
|
|
|
|
|
|
传统神经网络和Resnet的对比
|
|
|
|
|
|
|
|
|
|

|
|
|
|
|
|
|
|
|
|
> ResNet是层数越多效果越好。
|
|
|
|
|
|
|
|
|
|
下图是某个比赛中,冠军方案使用ResNet的层数是152层,第二名的22层有6.7的残差,而第一名的152层只有3.57的残差,相差近一倍的效果
|
|
|
|
|
|
|
|
|
|

|
|
|
|
|
|
|
|
|
|
> 当然层数越多,可能收益越少,但是保证残差一定是小于等于之前的低层数,也就是结果一定是向好的发展。
|
|
|
|
|
|
|
|
|
|