分割分为普通分割、semantic segmentation, instance segmentation.
现在的深度学习处理分割思路如下(2017 ddl):
分割起于分类网络,所以快速看下分类 。
1.1 AlexNet
它包含了5个卷积层、一个maxpooling、relu层和三层全连接。另外,它使用了dropout。其实dropout不光可以在FC(全连接层)使用,conv层也可以。
1.2 VGG Net
全称:Visual Geometry Group (VGG)
根据深度的不同划分成了VGG-16\VGG-19等,vgg的出现一定程度说明了网络越深,性能越好。
优点:用了小卷积核(AlexNet 第一层用了11x11),减少了参数,这个有人目前证明了,一般来说,小卷积核比大的要好。我这里简单说一下:
比如右图,3个3x3的kernel 感受野等于7x7的。但是参数减少了,你可以自己算算。
1.3 GoogleNet
这个就比较复杂了。因为大家对于网络结构没有一个很好得理论支持,大多是试出来的,哪个结构好就用哪一个。所以GoogleNet就从这里出发。
提出了inception module,这个我认为可以想成集成学习的感觉,相当于你给了四个方案,让网络自己训练,最终到底选哪一个靠网络自己去选。它被称作 Network in Network (NiN) layer,。
另外,这些NiN之后都经过了一个瓶颈层(1x1 convolution),众所周知,1x1的kernel可以减少参数量。
1.4 ResNet
我仍然是以集成学习的角度理解这个网络,显然,这个比google那个简单得多。图中identity意味着同一性,当网络认为这些conv层是多余的时候,他就保持不变,通过skip- connection连接到下面,减缓了梯度消失、爆炸的影响。ResNet都用的relu作为**函数,认为relu更可以表示神经元的激发特性。
当然为了避免梯度爆炸和消失,还有非常多relu的变体。Leaky ReLU、PReLU和RReLU等