UniRepLKNet:一种用于音频、视频、点云、时间序列和图像识别的通用感知大核卷积神经网络

在这里插入图片描述
论文: https://arxiv.org/abs/2311.15599

模型: https://huggingface.co/DingXiaoH/UniRepLKNet/tree/main

主页:https://invictus717.github.io/UniRepLKNet/

contribution

提出了四条guide line用于设计大核CNN架构模型,用于图像识别,语音、点云、时序任务上,并且均取得了较SOTA的成绩,打破了传统观念上 只有Transformer才能一统多模态的事情。(只有打破人们传统观念,才能更加吸引人眼球)

大核CNN架构设计

    RepLKNet [1]里提出了用超大卷积核(从13x13到31x31)来构建现代CNN以及正确使用超大卷积核的几个设计原则。但从架构层面看,RepLKNet只是简单地用了Swin Transformer的整体架构,并没有做什么改动。SLaK将kernel size进一步增大到了51x51,但其简单采用了ConvNeXt的架构。总得来讲,当前大核CNN架构设计要么遵循现有的CNN设计原则,要么遵循现有的Transformer设计原则。
Questions: 单纯的用已有模型架构来指导设计大核CNN架构是否真的充分发挥其优势?

revisit 大核CNN的优势
  • 不需要堆叠很多层CNN就可以实现较大的感受野

不堆叠很多层CNN就无法得到更高层次的抽象特征和更强的表征能力,但是堆叠很多大kernel CNN 又会使得感受野太大!最主要的是计算量暴增!

传统CNN设计带来的局限
  • 小卷积核必须大量堆叠才能实现大感受野
  • 卷积层多了,必然特征更加抽象更加high level,但是更加抽象和high level特征需要到什么程度才能满足任务?
  • 普通CNN计算量太大,在计算资源受限的设备上,很难保证其效果

四条大核CNN guideline

  • 关于局部结构设计:用一些像SE或bottleneck之类的高效结构来增加深度
  • 关于重参数化:用膨胀卷积来捕捉稀疏特征。本文提出了一个子模块叫Dilated Reparam Block,这个模块中除了大核卷积以外,还用了并行的膨胀卷积,而且利用结构重参数化的思想,整个block可以等价转换为一个大核卷积。这是因为小kernel+膨胀卷积等价于大kernel+非膨胀卷积。
  • 关于kernel size:根据下游任务及所采用的具体框架来选定kernel size。正如前文所提到的,对语义分割框架UperNet而言,低层feature过早地获得过大的感受野可能会产生负面效果。但这并不意味着大kernel会降低模型的表征能力或最终feature的质量!
  • 关于scaling law:对一个已经用了很多大kernel的小模型而言,当增加模型的深度时(例如从Tiny级别模型的18层增加到Base级别的36层),增加的那些block应该用depthwise 3x3,不用再增加大kernel了,感受野已经足够大了,但用3x3这么高效的操作来提高特征抽象层次总是有好处的。

一句话总结:用大kernel来提升感受野,用depthwise、se、bottleneck来提升深度、根据特定任务来定kernel size

在这里插入图片描述

如何将大核CNN用于其他模态任务?

    由于不同模态的数据形式各不相同,因此需要特别设计模态数据形式,保证其可以用CNN来提取特征!这一点也极大体现了作者的工程能力!
    将视频、音频、点云、时序数据给处理成C x H x W的embedding map,正如我们将图像表示成3 x H x W的张量一样。例如:

  • 把音频的频谱图(T x F)看成是一幅单通道图像,即C=1, H=T, W=F;
  • 将点云进行三视图投影,得到三幅单通道图像,所以C=3, H和W可以随意指定;
  • 将视频中的各帧拼接到一起,极为简单地得到一张大图(例如,16帧的3 x 224 x 224视频拼接得到3 x 896 x 896的输入);
  • 对时序数据,我们借鉴CorrFormer [3]中的embedding layer将数据转换为隐空间中的张量然后就极为粗暴地直接将其reshape成一幅单通道图像的格式。

实验部分详见论文

反思

  • 打破常规认知,这点很重要
  • CNN 并不一定比Transformer差,只不过现在GPT式模型风向
  • 将其他模态任务数据强行转成CNN 所需要的map格式,是否真的好?术业有专攻这点可能还是对的。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/572984.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

视图的作用

目录 视图的作用 创建视图 为 scott 分配创建视图的权限 查询视图 复杂视图的创建 视图更新的限制问题 更新视图中数据的部门编号(视图的存在条件) 限制通过视图修改数据表内容 创建只读的视图 复杂视图创建 oracle从入门到总裁:​​​​​​h…

数据结构——线性表(一)

线性表,顾名思义,是具有像线一样的性质的表。如同学生们在操场上排队,一个跟着一个排队,有一个打头,有一个收尾,在其中的学生都知道前一个是谁,后一个是谁,这样就像一根线将他们都串…

协程库-锁类-实现线程互斥同步

mutex.h:信号量,互斥锁,读写锁,范围锁模板,自旋锁,原子锁 锁 **锁不能进行拷贝操作:**锁是用于管理多线程并发访问共享资源的同步原语。这些锁包括互斥锁(mutex)、读写锁…

【论文阅读】Faster Neural Networks Straight from JPEG

Faster Neural Networks Straight from JPEG 论文链接:Faster Neural Networks Straight from JPEG (neurips.cc) 作者:Lionel Gueguen,Alex Sergeev,Ben Kadlec,Rosanne Liu,Jason Yosinski 机构&#…

阿里云实时计算Flink的产品化思考与实践【上】

摘要:本文整理自阿里云高级产品专家黄鹏程和阿里云技术专家陈婧敏在 FFA 2023 平台建设专场中的分享。内容主要为以下五部分: 阿里云实时计算 Flink 简介产品化思考产品化实践SQL 产品化思考及实践展望 该主题由黄鹏程和陈婧敏共同完成,前半程…

政安晨:【深度学习神经网络基础】(一)—— 逐本溯源

政安晨的个人主页:政安晨 欢迎 👍点赞✍评论⭐收藏 收录专栏: 政安晨的机器学习笔记 希望政安晨的博客能够对您有所裨益,如有不足之处,欢迎在评论区提出指正! 与计算机一样的古老历史 神经网络的出现可追溯到20世纪40年…

STM32启动方式

s在STM32F10xxx里,可以通过BOOT[1:0]引脚选择三种不同启动模式。 启动方式:从内部的Flash中启动、 存储器映射: 0x0000 0000 -----0x0800 0000 映射的内部Flash

SQLite数据库浏览器sqlite-web

什么是 sqlite-web ? sqlite-web是一个用 Python 编写的基于 Web 的 SQLite 数据库浏览器。 软件特点: 可与您现有的 SQLite 数据库配合使用,也可用于创建新数据库。添加或删除: 表格列(支持旧版本的 SQLite&#xff…

阿里云ECS选型推荐配置

本文介绍构建Kubernetes集群时该如何选择ECS类型以及选型的注意事项。 集群规格规划 目前在创建Kubernetes集群时,存在着使用很多小规格ECS的现象,这样做有以下弊端: 网络问题:小规格Worker ECS的网络资源受限。 容量问题&…

风力发电电网系统的simulink建模与仿真

目录 1.课题概述 2.系统仿真结果 3.核心程序与模型 4.系统原理简介 4.1风力发电原理与风机数学模型 4.2 电力电子变换器模型 4.3并网控制策略 5.完整工程文件 1.课题概述 风力发电电网系统的simulink建模与仿真。 2.系统仿真结果 3.核心程序与模型 版本:…

快速上手Spring Cloud 十一:微服务架构下的安全与权限管理

快速上手Spring Cloud 一:Spring Cloud 简介 快速上手Spring Cloud 二:核心组件解析 快速上手Spring Cloud 三:API网关深入探索与实战应用 快速上手Spring Cloud 四:微服务治理与安全 快速上手Spring Cloud 五:Spring …

每日一题--- 环形链表[力扣][Go]

环形链表 题目:142. 环形链表 II 给定一个链表的头节点 head ,返回链表开始入环的第一个节点。 如果链表无环,则返回 null。 如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给…