开始学生问了一个问题,怎么在训练的时候增加一层,这个老师说了两个论文,一个是Lan Goodfellow的Net2Net,还有一个是微软的网络形态(可能是这个network morphology),下来搜索一下吧。
计算机视觉中的其他任务:
1. Semantic Segmentation语义分割
输入一个图像,然后输出图像中每个像素的类别。对每个像素进行标注。这个任务的解决方法是使用一个滑动窗口。但是有一个问题就是计算效率低,没有reuse重叠区域的特征。
解决方法是Fully Convolutional,使得可以同时预测每个像素
C是类别数量,损失函数是交叉熵,每个像素都有预测的类别和其真实类别。
downsampling用于缩小feature map
upsampling:
转置卷积Transpose Convolution:
一种可学习的上采样
对于重叠区域,求和即可。也有一些其他名称,例如Deconvolution...。下图给出了一个一纬的转置卷积的例子:
可以将卷积操作看作是矩阵相乘的操作:下图中[0, a, b, c, d, 0]表示的是一纬的图片,用0做了padding。卷积核为[x, y, z],步长为1,因此可以将卷积操作看成是两个矩阵相乘。转置卷积就是将相同的权重矩阵做转置,
2. Classification + Localization
在预测某个物品的种类的同时,给该物品画一个边框
将localization任务看作是一个回归问题。有两个损失函数。
其他问题:Human Pose Estimation
输入图片,输出14个数字,给出这14个关节中的每一个的x和y坐标。使用regression loss,例如是L2欧几里得损失或L1损失。
3. Object Detection物体检测
滑动窗口
滑动窗口每到一个位置,会检测其是否是某个种类的。但是一个问题对象可能出现在图像中的任何位置,任何大小,任意长宽比。
使用传统的信号处理。selective search。
R-CNN网络,根据区域提案提出的区域,因为其区域是大小不同的,将其处理为warped image regions,接着将各个区域送到CNN中然后进行分类。然而其也是有问题的,计算代价很昂贵,训练和测试都很慢,因此有了Fast R-CNN。
然而Fast R-CNN在测试阶段,将大部分时间用于抽取区域提案,占用了很多时间,相反对于这些提案进行预测的时间到很快。所以出现了Faster R-CNN:使得网络预测自己的区域提案
Dense Captioning密集字幕
4. Instance Segmentation
Lecture12中主要说了可视化CNN中的格层,其中有一个feature inversion特征反演和texture synthesis纹理合成。可以用于风格转换style transfer: