Add Residual network of ResNet

pull/2/head
benjas 5 years ago
parent 24bf5d1fd9
commit a6df820040

Binary file not shown.

After

Width:  |  Height:  |  Size: 70 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 75 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 89 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 54 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 223 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 136 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 58 KiB

@ -112,4 +112,65 @@ CV领域发展
![1609385564766](assets/1609385564766.png)
- 卷积参数共享即input使用的W部分的参数是共享的卷积网络比之前的全连接大大减少了参数不再需要每个对应的W。
#### 池化层的作用
将原始input的所有数据进行压缩
![1609386518724](assets/1609386518724.png)
> 减少长宽以减少数据量的体积。
最大池化MAX POOLING
![2021010109030000](assets/2021010109030000.gif)
- 如上图从可选中选出最大的值。为什么选择最大的值因为前面是有权重W相乘的还记得前面的W0和W1吗如果计算完成得到的结果最大那说明该结果是最重要的所以这里选最大的即挑最重要的。
- 体积也从上图的2×2矩阵变成4×4的矩阵
- 除了最大池化还有平均池化,不过平均池化基本没人用,既然有最好的结果,就应该拿最好的。
- 池化层没有结果任何计算,只是选最大的
#### 整体网络架构
只有带参数的才能算层Relu和池化不算
![1609463898618](assets/1609463898618.png)
将一张图,通过不断卷积、池化、最后变成一条向量,接上全连接层,进行分类。
#### 残差网络ResNet
深度网络遇到的问题:越大的层数理论上意味着越好,但实际是这样吗?下面是一组很早前测试的图
![1609464833488](assets/1609464833488.png)
> 左边的训练集和右边的预测集都是20层的反而比56层的好那么说明多出的36层起负作用。
解决方案:
![1609464902930](assets/1609464902930.png)
> 我们还是跟原来一样增加层数但在此基础上增加残差也就是如果多的一层网络效果并不比上一层好那么依然使用上一层的结果可以看到X直接跳过了两层这样就能保证了效果一定是越来越好的。
传统神经网络和Resnet的对比
![1609465049960](assets/1609465049960.png)
> ResNet是层数越多效果越好。
下图是某个比赛中冠军方案使用ResNet的层数是152层第二名的22层有6.7的残差而第一名的152层只有3.57的残差,相差近一倍的效果
![1609465201423](assets/1609465201423.png)
> 当然层数越多,可能收益越少,但是保证残差一定是小于等于之前的低层数,也就是结果一定是向好的发展。

Loading…
Cancel
Save