本文分享自华为云社区《基于卷积神经网络的MAE自监督方法》,作者: Hint 。

图像自监督预训练算法是近年来的重要研究方向,MAE是其中基于ViT实现的代表性方法,学习到了鲁棒的视觉特征。MAE全称是Masked Autoencoders,是由何凯明提出的自监督预训练方法,借鉴了BERT的预训练任务,将输入图片的patch以较大的比例进行mask,并通过非对称的ViT编码解码器结构,进行masked patches的重建任务。该方法在性能上超过了以往的对比学习方法,如MoCo系列等。然而ViT的结构复杂,计算量庞大,基于CNN的类MAE方法具有极高研究价值,但受限于CNN的结构特性,常规的MAE方式无法直接在CNN上应用。本文介绍ICLR2023的方法Spark[1],实现了基于CNN的MAE。

如上图所示,对于一个masked的输入图片,对ViT输入和CNN的输入计算统计直方图,ViT的直方图是和未mask的图片分布一致的,而CNN的直方图发生了很大变化。这是由于ViT结构天然适合处理变长、不规则的输入,且不同的输入之间不会重叠计算。CNN的滑窗操作和规则的卷积核形状,导致模型会严重受到mask部分的影响。

因此作者借鉴了3D点云领域的稀疏卷积,该卷积只对未mask的像素进行计算,忽略masked的像素,可以处理不规则的输入,实现了和ViT类似的效果。另外,为了学习到多尺度的特征,作者设计了分层次的解码器,参考了UNet的结构设计,使模型学习到多尺度的特征,适应CNN的多层级结构。

从以下的实验结果来看,该方法的性能媲美原始的MAE方法,并在各种下游任务中取得了SOTA的结果,作者也证明了各个设计模块的有效性以及该方法的通用性。

[1]Tian K, Jiang Y, Diao Q, et al. Designing BERT for Convolutional Networks: Sparse and Hierarchical Masked Modeling[J]. arXiv preprint arXiv:2301.03580, 2023.

点击关注,第一时间了解华为云新鲜技术~

基于卷积神经网络的MAE自监督方法的更多相关文章

  1. 深度学习项目——基于卷积神经网络(CNN)的人脸在线识别系统

    基于卷积神经网络(CNN)的人脸在线识别系统 本设计研究人脸识别技术,基于卷积神经网络构建了一套人脸在线检测识别系统,系统将由以下几个部分构成: 制作人脸数据集.CNN神经网络模型训练.人脸检测.人脸 ...

  2. 【RS】Automatic recommendation technology for learning resources with convolutional neural network - 基于卷积神经网络的学习资源自动推荐技术

    [论文标题]Automatic recommendation technology for learning resources with convolutional neural network ( ...

  3. 基于卷积神经网络的人脸识别项目_使用Tensorflow-gpu+dilib+sklearn

    https://www.cnblogs.com/31415926535x/p/11001669.html 基于卷积神经网络的人脸识别项目_使用Tensorflow-gpu+dilib+sklearn ...

  4. 基于卷积神经网络的面部表情识别(Pytorch实现)----台大李宏毅机器学习作业3(HW3)

    一.项目说明 给定数据集train.csv,要求使用卷积神经网络CNN,根据每个样本的面部图片判断出其表情.在本项目中,表情共分7类,分别为:(0)生气,(1)厌恶,(2)恐惧,(3)高兴,(4)难过 ...

  5. Pytorch实现基于卷积神经网络的面部表情识别(详细步骤)

    文章目录 一.项目背景 二.数据处理 1.标签与特征分离 2.数据可视化 3.训练集和测试集 三.模型搭建 四.模型训练 五.完整代码 一.项目背景数据集cnn_train.csv包含人类面部表情的图 ...

  6. 完全基于卷积神经网络的seq2seq

    本文参考文献: Gehring J, Auli M, Grangier D, et al. Convolutional Sequence to Sequence Learning[J]. arXiv ...

  7. [OpenCV实战]17 基于卷积神经网络的OpenCV图像着色

    目录 1 彩色图像着色 1.1 定义着色问题 1.2 CNN彩色化结构 1.3 从 中恢复彩色图像 1.4 具有颜色再平衡的多项式损失函数 1.5 着色结果 2 OpenCV中实现着色 2.1 模型下 ...

  8. 基于卷积神经网络CNN的电影推荐系统

    本项目使用文本卷积神经网络,并使用MovieLens数据集完成电影推荐的任务. 推荐系统在日常的网络应用中无处不在,比如网上购物.网上买书.新闻app.社交网络.音乐网站.电影网站等等等等,有人的地方 ...

  9. 基于卷积神经网络的手写数字识别分类(Tensorflow)

    import numpy as np import tensorflow as tf from tensorflow.examples.tutorials.mnist import input_dat ...

  10. 使用Python+TensorFlow2构建基于卷积神经网络(CNN)的ECG心电信号识别分类(二)

    心律失常数据库 目前,国际上公认的标准数据库包含四个,分别为美国麻省理工学院提供的MIT-BIH(Massachusetts Institute of Technology-Beth Israel H ...

随机推荐

  1. Casdoor 开始

    Casdoor 是一个基于 OAuth 2.0 / OIDC 的中心化的单点登录(SSO)身份验证平台,简单来说,就是 Casdoor 可以帮你解决用户管理的难题,你无需开发用户登录.注册等与用户鉴权 ...

  2. 深入理解 python 虚拟机:破解核心魔法——反序列化 pyc 文件

    深入理解 python 虚拟机:破解核心魔法--反序列化 pyc 文件 在前面的文章当中我们详细的对于 pyc 文件的结构进行了分析,pyc 文件主要有下面的四个部分组成:魔术. Bite Filed ...

  3. Kubernetes 架构原则和对象设计

    Kubernet¶ Kubernetes 架构原则和对象设计¶ 什么是云计算¶ 云计算平台的分类¶ 以Openstack为典型的虚拟化平台 虚拟机构建和业务代码部署分离. 可变的基础架构使后续维护风险 ...

  4. Linux服务器设置虚拟内存

    cd /usrsudo mkdir swapcd swapsudo dd if=/dev/zero of=/usr/swap/swapfile bs=1M count=4096du -sh /usr/ ...

  5. 前端自定义弹框组件、自定义弹框内容alertView popup组件

    快速实现前端自定义弹框.自定义弹框内容alertView popup组件, 请访问uni-app插件市场地址:https://ext.dcloud.net.cn/plugin?id=12491 效果图 ...

  6. 蔬菜识别系统Python+TensorFlow+Django+卷积神经网络算法

    一.介绍 蔬菜识别系统,使用Python作为主要开发语言,基于深度学习TensorFlow框架,搭建卷积神经网络算法.并通过对数据集进行训练,最后得到一个识别精度较高的模型.并基于Django框架,开 ...

  7. 企业级GitLab搭建

    企业级GitLab搭建 一.简介 1.GitLab概述 是一个利用 Ruby on Rails 开发的开源应用程序,实现一个自托管的Git项目仓库,可通过Web界面进行访问公开的或者私人项目. Rub ...

  8. Unity的Console的控制类LogEntries:深入解析与实用案例

    使用Unity Console窗口的LogEntries私有类实现自定义日志系统 在Unity开发过程中,我们经常需要使用Console窗口来查看程序运行时的日志信息.Unity内置的日志系统提供了基 ...

  9. 【WebRtc】获取分享屏幕

    分享前页面 获取分享屏幕 Code /** * 开始屏幕共享 */ openShareScreen() { var that = this // 判断是否支持获取本地屏幕分享数据 if (!navig ...

  10. Git无法push提示报错443

    更新 设置代理不能完美解决问题,需要检查本地的SSH配置是否正确,以及正确配置SSH密钥关联github账户 配置SSH参考链接: <GitHub如何配置SSH Key> https:// ...