LeNet -5

AlexNet

conv->max pool->conv->max pool->conv->conv->conv->conv->max pool->fc->fc->fc
VGG-16

16指的是只有16层网络有需要学习的参数,pooling层是没有要学习的参数的。
箭头下方的[CONV 64]指有64个filter,x2值对两层作卷积
ResNet
residual block


增加short cut之后成为残差块的网络结构

可以构建更为深层的网络
Residual Network

没有residual block的网络叫做plain network
why it works?

对于越深层的神经网络来说,参数越来越多,越来越难选择,将会导致连学习identity function(f(x)=x)都很困难,而如果用residual block,a^[l+2] = g(a^[l]) = a^[l],对于残差块来学习identity function 其实是很简单的,所以不影响性能。

在经历了相同的conv之后增加一层pooling
1x1 convolution
又叫做网中网

对一层 nxnxc 的图片,应用1x1xc的卷积核,得到新一层
nxnx1,f个filter处理后,就得到一个nxnxf的新层。
应用
降维或升维
压缩channel个数,当卷积核个数小于输入channel数量的时候

增加非线性
why?

跨通道信息交互

Inception Network
ref:
https://zhuanlan.zhihu.com/p/40050371
https://blog.csdn.net/a1154761720/article/details/53411365

compute cost

filter的第三个通道数目 == input feature map的第三个通道数目
1 | 结果参数 = 输入层 HxWx卷积核个数 |
bottleneck layer

inception network
google net

1x1convolution 能够有效减少参数数量,加快训练

可以观察到有一些旁路也输入到softmax中,因为hidden layer有时候的预测效果也不错,这么做可以防止过拟合
Transfer Learning
小数据集
大数据集
数据扩充

多CPU多线程实现