最近,Meta AI推出了这样一个 “杂食者” (Omnivore)模型,可以对 不同视觉模态的数据进行分类, 包括图像、视频和3D数据。 喜欢记得关注、收藏、点赞。
比如面对最左边的图像,它可以从深度图、单视觉3D图和视频数据集中搜集出与之最匹配的结果。
这在之前,都要分用不同的模型来实现;现在 一个模型就搞定了。
而且Omnivore易于训练,使用现成的标准数据集,就能让其性能达到与对应单模型相当甚至更高的水平。
实验结果显示,Omnivore在图像分类数据集 ImageNet上能达到 86.0% 的精度,在用于动作识别的 Kinetics数据集上能达 84.1%,在用于单视图3D场景分类的 SUN RGB-D也获得了 67.1%。
另外,Omnivore在实现一切跨模态识别时,都无需访问模态之间的对应关系。
; 推荐文章
- 浙大博士导师深度整理:Tensorflow 和 Pytorch 的笔记(包含经典项目实战)
- Python 程序员需要掌握的机器学习”四大名著”发布啦
- 值得收藏,这份机器学习算法资料着实太香
- 比 PyTorch 的官方文档还香啊,吃透PyTorch中文版来了
- 赶快收藏,PyTorch 常用代码段PDF合辑版来了
不同视觉模态都能通吃的”杂食者”
Omnivore基于Transformer体系结构,具备该架构特有的灵活性,并针对不同模态的分类任务进行联合训练。
模型架构如下:
Omnivore会将输入的图像、视频和单视图3D图像转换为embedding,并馈送到Transformer中。
虽然它可以使用任何vision transformer架构来处理patch embedding,但鉴于 Swin transformer在图像和视频任务上的强大性能,这里就使用该架构作为基础模型。
具体来说,Omnivore将图像转为patch,视频转为时空tube(spatio-temporal tube),单视图3D图像转为RGB patch和深度patch。
然后使用线性层将patches映射到到embedding中。其中对RGB patch使用同一线性层,对深度patch使用单独的。
总的来说,就是通过embedding 将所有视觉模式转换为通用格式,然后使用一系列时空注意力(attention)操作来构建不同视觉模式的统一表示。
研究人员在ImageNet-1K数据集、Kinetics-400数据集和SUN RGB-D数据集上联合训练出各种Omnivore模型。
这种方法类似于多任务学习和跨模态对齐,但有2点重要区别:
1、不假设输入观测值对齐(即不假设图像、视频和3D数据之间的对应关系);
2、也不假设这些数据集共享相同的标签空间(label space)。
; 性能超SOTA
实验方面,首先将Omnivore与各视觉模态对应的 特定模型(下表中指Specific)进行比较。
一共有三种不同的模型尺寸:T、S和B。
预训练模型在七个下游任务上都进行了微调。
图像特定模型在IN1K上预训练。视频特定模型和单视图3D特定模型均使用预训练图像特定模型的inflation进行初始化,并分别在K400和SUN RGB-D上进行微调。
结果发现,Omnivore在 几乎所有的下游任务上的性能 都相当于或优于各特定模型。
其中尺寸最大的 Swin-B实现了全部任务上的SOTA。
将Omnivore与具有相同模型架构和参数数量的特定模型比较也是相同的结果。
其中Omnivore在IN1K、K400和SUN数据集上从头开始联合训练,而特定模态的模型针对每个数据集专门训练:
ImageSwin模型从零开始训练,VideoSwin和DepthSwin模型则从ImageSwin模型上进行微调。
接下来将Omnivore与图像、视频和3D数据分类任务上的 SOTA模型进行比较。
结果仍然不错,Omnivore在所有预训练任务中都表现出了优于SOTA模型的性能(下图从上至下分别为图像、视频和3D数据)。
此外,在ImageNet-1K数据集上检索给定RGB图像的深度图也发现,尽管Omnivore 没有接受过关于1K深度图的训练,但它也能够给出语义相似的正确答案。
最后,作者表示,尽管这个”杂食者”比传统的特定模式模型有了很多进步,但它有一些局限性。
比如目前它仅适用于单视图3D图像,不适用于其他3D表示,如体素图(voxels)、点云图等。
论文地址:
https://arxiv.org/abs/2201.08377
代码已开源:
https://github.com/facebookresearch/omnivore
技术交流
目前已开通了技术交流群,群友已超过 1000人,添加时最好的备注方式为:来源+兴趣方向,方便找到志同道合的朋友
- 方式①、发送如下图片至微信,长按识别,后台回复: 加群;
- 方式②、微信搜索公众号: 机器学习社区,后台回复: 加群;
- 方式③、可以直接加微信号: mlc2060。加的时候备注一下:研究方向 +学校/公司+CSDN,即可。然后就可以拉你进群了。
Original: https://blog.csdn.net/m0_59596990/article/details/122679841
Author: 机器学习社区
Title: Facebook AI推出“杂食者”:一个模型解决图像、视频和3D数据三大分类任务,性能还不输独立模型
原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/664593/
转载文章受原作者版权保护。转载请注明原作者出处!