2021年,作为算法工程师的你们会在CV业务落地上用Transformer吗?

机器学习实验室

共 3153字,需浏览 7分钟

 ·

2021-06-18 10:33

链接:https://www.zhihu.com/answer/1927466979
编辑:深度学习与计算机视觉
声明:仅做学术分享,侵删
众所周知,Transformer 已经日常在CV学术领域“杀疯了”,那么在工业领域情况如何呢?

作者:花花
https://www.zhihu.com/question/463585564/answer/1927466979

分类任务:transformer在分类任务上超过cnn让大家欣喜若狂,用pretrain进行finetune是一件合理的事情,但可能大家也有意识到,imagenet-1k, imagenet-21k等pretrain的跨domain问题。
其次,实际项目中,包括模型转化,量化,SDK集成直到模型上线仍然有很大量的工作,链条不完善的情况下,不太容易落地,同时在inference速度上当前没有足够好的优化,也是一个劣势。

检测任务:说完分类再来考虑检测,目前两套思路,一种是换掉backbone,以pretrain的方式进行下游任务,部署难度和分类任务一样;另一种是类似DETR这种训练方式,想要取得较好的精度需要更大量的数据,对于实际项目并不容易获取,且训练相较于普通检测方法多了5到10倍的时间,在没有取得很明显的提升的情况下,也不太适合盲目进行落地。

值得一提的几点:
1. 在public dataset 上杀疯了并不代表在实际业务数据上就能很好的work,这点就不展开了,做过落地的都明白。
2. 当前另外一个方向是自监督+transformer(SSL+Transformer),个人认为非常有潜力,包括微软的
swin-ssl,Facebook的dino等,都是这方面的尝试
3. 落地场景不同,情况就不同,人脸上亿量级的数据如果要train from scratch,要直接硬上transformer,计算资源是非常非常可观的。

个人一点不成熟的观点,轻喷:
我认为现在transformer还处于不成熟的阶段,大部分的工作都在分类任务上进行尝试,因为训练成本较高,部分paper的实验结果并不solid,提点也有限,虽然百花齐放但还没有一个较为统一的认知和共识,下游任务(detection,segmentation)的验证也不是很solid。同时底层硬件,CUDA,训练框架对transformer的优化也不够完善。

类比CNN的发展历程,我认为目前transformer在CV领域应该还处于AlexNet阶段,距ResNet阶段还有一定的距离,一方面是research这条线继续推陈出新,另一方面是工程部署这条线的持续跟进(可以看到很多社区的框架也在多分布式训练,transformer训练进行优化和加速)。

  1. 需要另一个里程碑来统一大家的认知
  2. 落地是肯定要落地的,大家一起加油。

作者:匿名用户
https://www.zhihu.com/question/463585564/answer/1930140253
这不应该问算法工程师。算法人看中的是效果,是创新,是刷榜。

只有工程人才关心落地,说实话刷榜的模型那么几个点的提升在实际业务中差异不大,有这点精力还不如洗好高质量的数据;

工程落地最重要的是性价比,君不见目前视觉主流的落地依旧是mobilenet,ssd,yolo,unet,fcn这种经典的模型;19年之后视觉领域模型绝大部分都是“妖艳的货色”,落地价值不大;

最好一个模型算子种类越简单越好,计算密度越高越好。npu便宜,速度快,功耗低,可惜适配性差,就是把芯片架构师皮扒了,也适配不了算法人脑袋里花里胡哨的“骚”算子。

要是能出一个模型只用gemm,relu就能达到18年的效果,瞬时会风靡工业界;甚至最近开始“返祖”MLP-Mixer,我就挺看好它;再进一步看看这位答主,要是liner+norm两个算子都能横扫18年之前的模型,我觉得就很完美了,还要啥自行车啊!

NmTwo:如何评价Google提出的MLP-Mixer:只需要MLP就可以在ImageNet上达到SOTA?https://www.zhihu.com/answer/1871097669
在另一个层面上如何看待算法:
匿名用户:人工智能是当前最好的计算机专业吗?https://www.zhihu.com/answer/1932228657

作者:凤舞九天
https://www.zhihu.com/question/463585564/answer/1936988298
vision transformer早就已经落地了。说下自这边相关的模型吧。首先是VIT,变种很多,自己也都试了下做backbone,相当一部分模型比resnet,resnest系列效果要好,速度也快一些(显存大一些),直接上了线。

其次是bert模型,在多模态模型中作为nlp模态。

很早之前做OCR的时候也有尝试transformer,不过当时比较早,模型收益并不大,感觉最近的一些模型很有落地空间。

作者:匿名用户
https://www.zhihu.com/question/463585564/answer/1927529137
startup
几个视觉相关的核心模型都是Transformer做的。
与图像生成和匹配等任务有关,比较细分的领域,效果很好。好到以至于不能用CNN的像素级损失衡量。按传统衡量,CNN大约只有Transformer性能的10~25%。

应用近期就开始落地。唯独可惜的是做得太拖拉,CV in Transformer都烂大街了才投。文章公布看开奖结果了。

一点微小的经验,数据小的话,Transformer不太合适。

作者:匿名用户
https://www.zhihu.com/question/463585564/answer/1928601091
个人觉得现在transformer完全没用。在多个自有数据集跑过实验,小于imagenet规模的数据集基本没法用。大于imagenet规模的数据集,看数据多样性程度和脏数据占比,多样性小或者脏数据多完全没用。多样性大且标注准确,transformer直接过拟合场景,效果极好。但是transformer耗费资源也太高了,所以工业界也不爱用这东西,感觉这帮搞深度学习的十有九骗,现在这个东西完全没用,就是疯狂过拟合数据。

作者:大白杨
https://www.zhihu.com/question/463585564/answer/1928938833
不同场景性能测试的table我这边是有的,而且肯定各个厂早就做过了,但是除了几个大厂肯定不会release出来的。

应该来说看解决的业务是什么,分类相关这块性能还是不错的,虽然计算计算资源多消耗50%,不过提高也还算明显。这里22k的模型效果还不如1k的模型。分类以外的其他业务比如分割检测就参差不齐了,而且计算损耗也大幅度提高(这个和transformer本身特性有关系),目前应该不会落地。


往期精彩:

【原创首发】机器学习公式推导与代码实现30讲.pdf

【原创首发】深度学习语义分割理论与实战指南.pdf

 谈中小企业算法岗面试

 算法工程师研发技能表

 真正想做算法的,不要害怕内卷

 算法工程师的日常,一定不能脱离产业实践

 技术学习不能眼高手低

 技术人要学会自我营销

 做人不能过拟合

求个在看

浏览 46
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报