何为CNN瓶颈
CV领域的CNN网络一大特性,平移不变性,不管目标在哪里都可以被invariance的激活出来,但这样真的好吗,这样真的对吗
从业深度学习算法多年的工程师可能都会意识到一个问题,图像每个patch的推理不应仅依靠某个区域自身内部的语义信息,还需要其他像素相关的信息,换言之,cnn算法缺乏人类一样的联想能力,缺乏构建关系的能力,基于此发展来的图卷积(GCN),关系网络(Relation net),注意力机制(non local),虽然部分改善了CNN based网络的短板,但依然存在非常致命的问题,并没有真正合理的耦合位置信息与像素信息。
本文整理【Stacked Capsule Autoencoders】,希望可以为未来打破瓶颈积淀一些思路,直接上图
SCAE主要包含两个部分:
第一个部分PCAE,他做了个什么事呢,就是把图片encode成若干个语义向量(Capsule vector),每个语义向量有特殊的含义,如图中房顶可以形成一条语义向量,树干也可以形成一条语义向量,有了这些语义向量后,再decode回原图。
第二部分OCAE,他干了个啥事呢,当仅有语义向量时,对这些语义向量进行encode,生成若干完整的具有实际意义的物体(Object),如图中树叶由一种语义向量表达,树干由另一个语义向量表达,则可通过编码使其组成一颗完整的树,最后再将这些完整的Object decode回语义向量。
Capsule的作用在于将img里每个part提取并抽象成一个一个capsule(可以理解为一个特征向量),与17年Hintion的Capsulenet不同的在于,本算法在提取capsule的同时还提取的一个pose matrix用于描述每个capsule所描述物体与观测者之间的关系,可以理解为一个仿射变换矩阵,利用这种方式来耦合像素与位置的关系,虽然capsule目前还局限于学术领域,且功能与目前大火的transformer类似,只不过前者通过一种类似迭代法求最大幂的方式求主元向量(transformer通过self attention),但该工作真正应该借鉴的是其deep prior的思路(本人的愚见),该思路在多领域已经产生奇效(First Order Motion Model(cvpr2020),Nex(cvpr(2021),包括自己的很多项目),而我也大胆预测deep pripor将成为支撑AI产业落地的主要思路之一,也将成为算法工程师的主要生存之道之一。