<p>具体理论就不说了。直接看网络结构以及其代码就好。深度学习超级新兵一个,记录下自己的学习过程,有错误欢迎大佬指出。万分感谢!!!!!!!!!!</p>
讯享网
1.先上网络整体结构。
如下图 分别放出来resnet18 resnet134 resnet50 resnet101 resnet152.文字注释应该写明白了大致的网络结构。
图1
2.对图1中的[ ]进一步说明

图2

图2左侧对应的代码中的BasicBlock, 具体实现一会贴代码。图2的右侧对应代码中的Bottleneck。
3. resnet网络的核心:Shortcut Connection

图3
图3可见两种连接方式:
自己层(cvnv2_x之类)内各个卷积层的连接方式,用实线。对应代码中的

out += identity #构成F(x) + x这个公式
cvnv2_x与conv3_x等层之间的卷积连接方式,用虚线。用虚线连接后可见 两组数据的channels是不同的 这样没法加啊。那么就对 identity的通道数做一次修改。代码中用的downsample来实现。对应代码中的。downsample具体实现可具体查代码
out += identity #构成F(x) + x这个公式
4.有了这几步的解释。一个完整的resnet的网络结构以及代码结构就清晰了。说白了就是很深的卷积层加上了个Shortcut Connection连接方式。这样让网络表达能力更好。具体为啥好去看原理吧。
5.贴代码:代码直接在github上下载的,可以自己去下载看,官方代码。代码中几个重要位置都注释了。
讯享网
https://github.com/SnailTyan/deep-learning-papers-translation 参考资料很详细 很详细

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/190087.html