VOLO: Vision Outlooker for Visual Recognition论文笔记

VOLO模型参数效果图

北深袁粒老师的工作,仍然是ImageNet上设计的transformer型模型,主要贡献在于提出一种称为outlooker的注意力层,这种结构结合了卷积局部信息整合和注意力层的优势,在transformer backbone和patch embedding的帮助下实现了性能提升 ImageNet上不借助预训练首次突破87.1%的top1正确率。


核心attention层: outlooker

具体操作

该attention主要操作基于以上伪代码(pytorch类似)。其核心操作主要有unfold和fold以及中间被替换的score矩阵计算方式,借助一次线性映射而不是两次线性映射加一次矩阵乘法,outlooker相对普通multi-head attention减少了MACs降低了复杂度。

unfold

unfold操作实际上类似于conv层滑动取窗口的机制,我们设定好kernel_size, stride, dilation等参数后,即可对B*C*H*W这样的张量在H*W这样的空间维上进行滑动取窗口,最后得到的新矩阵为B*(C*k*k)*n。k为kernel_size, n为总共取到的窗口数。

fold

fold则是unfold的逆过程,给定kernel_size,stride, dilation和output_size等参数后,它可以将B*(C*k*k)*n这样的矩阵还原回B*C*H*W。这里稍微注意为什么要相对unfold多给定一个output_size呢?因为其实我们发现不管输入矩阵还是给定参数除了output_size我们并不知道H*W, 给定kernel_size后我们可以求得C, 但是n是由H和W两个维度共同构成的,所以如果不显示指明H*W那么是可能包含多种满足条件的H*W(例如H与W互换)。

同时在pytorch中,fold实际上做的操作是把那些由unfold拓展出来的位置上的元素全部加和再放回原始矩阵,那么这个加和操作就会使得原位置元素值翻倍而非不变,所以其实fold和unfold大部分时候并不是真正互逆的,要想实现互逆应当对元素取平均。

outlooker

那么除去了类似conv这样考虑滑动窗口的unfold和fold过程,outlooker和普通scaled dot-product有什么区别呢? 

大体计算过程

由公式(4)可以看出其核心思路和attention层并无区别, 唯一就是score矩阵由原来的QK’, 变成了此处的A_{i,j},而这里的A实际上是直接由输入X通过线性映射直接得到的一个矩阵,也就是说相对于分别线性映射得到Q和K再做矩阵乘法得到score矩阵,这里直接采用了一个线性映射得到score矩阵,从而降低了计算复杂度。而之前的scaled乘以系数以及softmax归一都在代码中得到了保留。


misc

VOLO模型是基于LV-ViT进行改进的,其中利用的patch embedding并没有进行额外说明,但是对模型性能等有重要的影响。同时将conv和transformer做结合似乎是一个现阶段的一个趋势,其他工作(同一作者的T2T ViT)也保持了这样的一些变化或比较趋势。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 217,907评论 6 506
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,987评论 3 395
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 164,298评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,586评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,633评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,488评论 1 302
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,275评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,176评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,619评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,819评论 3 336
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,932评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,655评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,265评论 3 329
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,871评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,994评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,095评论 3 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,884评论 2 354

推荐阅读更多精彩内容