下面记录一下caffe2的一些基本概念。
Caffe2框架是一个静态的图框架。同大多静态图框架一样,它的应用程序一般会干两件事情,先是建立模型(即建图,主要使用Python等较友好的语言脚本或像caffe那样直接使用prototxt文件),然后则是迭代执行模型。
核心概念
Operator
可以看成是一个函数,输入一些数据,输出一些数据,如 layers、数值操作等。感觉与TensorFlow中的op是一个概念。
这篇论文,讲道理我个人不是很喜欢,因为实验感觉也不是很充分,理论上感觉创新性也没那么高,只是提供了一个强有力的baseline,连作者本人也说大家对这篇文章的关注度过高了。不过,既然能引起大家广泛关注,还是有吸引人的地方的,那么对这篇论文进行介绍。
虽然图像分类技术方面已经取得了巨大的进步,但是延伸出来的其他应用如目标检测、图像分割仍然使用ResNet及其变体作为backbone,因为这些结构简单且模块化。
这篇论文给我感觉是很惊艳,实验表格真的是太充分了,而且不像EfficientNet那种大力出奇迹的感觉,这篇论文手工设计出了比EfficientNet还好的论文,经过我自己的实验。同样的epoch和batch size下,RegNetX-8.0GF
只占用9G显存,9个半小时单卡就训练完了。但是efficientnet-b4
占用双卡,显存占满,需要训练21个小时。最终两者的精度基本一致,但是推理时间RegNetX-8.0GF
(15.65)只有efficientnet-b4
(29.17)的一半。下面对该论文进行详细介绍。
传统NAS方法这种基于个体估计(individual network instance)的方式(每次评估的时候采样一个网络)存在以下缺陷:
这个算法在一个强大的backbone——EfficientNet下,在COCO测试集上取得了state-of-the-art的性能,下面对它的方法进行介绍。
大多数现有的目标检测网络只关注一个特定的或者很少范围的资源要求,但是真实世界中,从手机到数据中心会要求不同的资源限制。那么是否有可能构建一个覆盖各种资源限制的、同时具有更高精度和更高效率的目标检测体系结构?本文通过系统的研究目标检测结构的不同设计选择解决这个问题。
这篇论文一经出现就引起了广泛的关注,在ImageNet上取得了State-of-the-art的性能,并且网络的参数量以及FlOPs都大幅度降低。虽然经过实际测试后,发现推理速度很慢,占用显存也很高。最近出的RegNet就说明了这个问题。废话不多说,下面对该论文进行详细的介绍。
Scaling up ConvNets被广泛的应用来得到更好的精度。例如使用更多的层将ResNet-18提升到ResNet-200;最近的GPipe通过scaling up一个baseline model四倍在ImageNet数据集上取得了84.3%的top-1精度。
1 | # 常用命令1 |
1 | ffmpeg -r 30 -f image2 -i output/%04d_matte.png -vcodec libx264 -crf 15 -s 1280x720 -pix_fmt yuv420p teaser_matte.mp4 |
目前的检测算法主要思路还是设置大量anchor+分配正负样本+训练的一个思路,Anchor的本质是目标的候选框,因为目标的形状和位置的多种可能性,Anchor的数量往往非常庞大,否则会出现遗漏的情况,这种情况对于one-stage的检测算法更加突出。本文不使用anchor boxes,而是提出了一种叫做corner pooling的操作帮助网络更好地定位目标。
首先,说下Anchor的两个缺点:
正是有这两个缺点,受到keypoint问题的启发,作者就想到用关键点检测的思路来处理detection问题,只要找到top-left和Bottom-right两个点,就可以准确框出一个目标了。使用单一卷积模型生成热点图和embedding vector:所有目标的左上角和所有目标的右下角热点图heatmap(两个heatmap),每个顶点的embedding vector。也就是该方法在卷积的输出结果上,分别预测边界框的左上角与右下角,之后寻找它们之间的对应关系。
主要思路其实来源于一篇多人姿态估计的论文。基于CNN的2D多人姿态估计方法,通常有2个思路(Bottom-Up Approaches和Top-Down Approaches):
图像抠图(Image Matting)是一个无论在工业界抑或视觉研究领域都有非常重要价值的研究课题。从2000年开始,在进行图像抠图及相近研究问题的研究过程中,诞生了类似GrabCut、Guided Filter、Closed Form Matting、Poisson Matting、Bayesian Matting等等对各计算机视觉以及计算机图形学研究都有深远影响的工作。
求解抠图问题需要我们对一张图像,分别求解出它的前景、背景以及alpha matte。alpha matte是我们常说的alpha通道,基于alpha 通道我们可以将前景和任意背景进行重新组合得到新的图像。因此alpha matte是和原图x相同大小的一个单通道图像,每个像素都对应于原RGB图像相同位置像素的alpha值。根据基本假设,对于一张RGB 图像,每个像素在R、G、B这三个通道上的强度(intensity)是由前景以及背景的凸组合构成的,即
这里$I$表示Image,$F_i^j$代表第$i$个像素下第$j$个通道的前景像素强度(pixel intensity),$B_i^j$代表第$i$个像素下第$j$个通道的背景像素强度(pixel intensity)。对于一张图片而言,由于我们只知道它的R、G、B三个通道的像素强度,因此对于每一个像素而言,我们有三个方程分别对应RGB三个通道,同时我们需要求解$\alpha_i$,$F_i^j$,$B_i^j$一共7个未知数。三个方程七个未知数,这是妥妥的未知数个数大于方程个数,解可以有无穷多个,属于经典的视觉研究中的反问题,难度非常的大。