位置: IT常识 - 正文

Vision Transformer 模型详解

编辑:rootadmin
Vision Transformer 模型详解 目录前言模型结构实验总结Question Summary前言

推荐整理分享Vision Transformer 模型详解,希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

虽然说transformer已经是NLP领域的一个标准:BERT模型、GPT3或者是T5模型,但是当年

Vision transformer 提出时用transformer来做CV还是很有限的; 在视觉领域,自注意力要么是跟

卷积神经网络一起使用,要么用来把某一些卷积神经网络中的卷积替换成自注意力,但是还是保持

整体的结构不变; ViT是2020年Google团队提出的将Transformer应用在图像分类的模型,因为其

模型“简单”且效果好,可扩展性强(scalable,模型越大效果越好),成为了transformer在CV领域

应用的里程碑著作,也引爆了后续相关研究。

模型结构

作者将transformer结构去除掉decoder部分后经过改进将其运用到视觉领域。vision transformer模型结构主要包括三部分:

patch embeding 部分transformer encoder部分MLP head部分。

整个模型结构可以分为五个步骤进行:

1、将图片切分成多个patch。

2、将得到的patches经过一个线性映射层后得到多个token embedding。

3、将得到的多个token embedding concat一个额外的CLS token,然后和位置编码相加,构成完整的encoder模块的输入。

4、 将相加后的结果传入Transformer Encoder模块。

5、Transformer Encoder 模块的输出经过MLP Head 模块做分类输出。

Transformer Block:

Layer Norm层:标准归一化,为了更好的收敛。MHA层:多头自注意力机制输入和输出做残差连接Layer NormMLP层: Linear + GRLU +Linear +Dropout

L个Transformer Block 构成一个完整的Transformer Encoder模块。经过Transformer Block 后维度不变。

实验

Vision Transformer 模型详解

给出的最佳模型在ImageNet1K上能够达到88.55%的准确率(先在Google自家的JFT数据集上进行了预训练),说明Transformer在CV领域确实是有效的。 用vision transformer 模型和卷积神经网络(resnet)做了对比,实验发现在中小数据集上,

卷积神经网络的效果比vit模型的效果要好(原因在Question Summary)。随着数据及规模的增大,

ViT模型的效果要逐渐优于卷积神经网络的效果。

用vision transformer 模型和卷积神经网络(resnet)以及Hybrid结构(混合结构)做了对比,

结果相同,同时Hybrid结构在中小型数据集上也能够达到能好的性能(毕竟结合了卷积神经网络和

Transformer的优点),但随着数据集的增大,发现Transform的结构要比Hybrid结构性能优秀。 作者还做了关于自注意力机制的实验,从实验结果我们可以看出,模型可以很好的利用自注意力机制学习到图片的特征。 做了关于CLS Token和GAP以及关于不同维度的消融实验。ViT模型最后利用CLS Token做分类预

测,而卷积神经网络则是利用GAP(全局平均池化),从实验结果可以看出,CLS Token 可以和

GAP 达到同样的效果,但是要求不同的学习率。

总结

如果在足够多的数据上做预训练,也可以不需要卷积神经网路,直接使用标准的Transformer也能够

把视觉问题解决的很好;尤其是当在大规模的数据上面做预训练然后迁移到中小型数据集上面使用的

时候,Vision Transformer能够获得跟最好的卷积神经网络相媲美的结果。

Question Summary

在中小型数据集上,ViT模型不如卷积神经网络的原因:

卷积神经网络存在归纳偏置:locality 和translation equivariance。有了归纳偏置后,就有了先验知识,可以利用较少的数据去学习一个比较好的模型,而transformer没有先验知识,所以需要数据自己学习,所以在大数据集上的性能比中小数据集上。

位置编码:

如果不标注位置,在Transform看来图片就是一样的,所以需要加上位置编码。

CLS Token:

在NLP的分类任务中,被看作一个全局的对句子的理解,在这里可以看作一个图像的整体特征。

MLP Head:

一个通用的分类头,最后用交叉熵函数进行模型的训练。

论文:原论文链接 代码:pytorch代码

本文链接地址:https://www.jiuchutong.com/zhishi/294588.html 转载请保留说明!

上一篇:vue:聊天对话框的实现(vue聊天系统)

下一篇:【uni-app】小程序实现微信授权登陆(附流程图)(unigui 小程序)

  • 小米10手机是不是双模的(小米10手机不断重启)

    小米10手机是不是双模的(小米10手机不断重启)

  • 微信申诉不给回执编号(微信申诉不回来钱能拿出来吗)

    微信申诉不给回执编号(微信申诉不回来钱能拿出来吗)

  • 为什么腾讯叫做鹅厂(腾讯为啥叫腾讯)

    为什么腾讯叫做鹅厂(腾讯为啥叫腾讯)

  • 打印机上三角形标志亮(打印机上三角形点点)

    打印机上三角形标志亮(打印机上三角形点点)

  • qq视频播放不了怎么回事(qq视频)

    qq视频播放不了怎么回事(qq视频)

  • 抖音互粉有没有影响(抖音互粉到底好不好?)

    抖音互粉有没有影响(抖音互粉到底好不好?)

  • QQ怎样退群不被管理员看见(qq怎样退群不被管理员发现)

    QQ怎样退群不被管理员看见(qq怎样退群不被管理员发现)

  • 笔记本显卡烧坏表现(笔记本显卡烧坏能开机吗)

    笔记本显卡烧坏表现(笔记本显卡烧坏能开机吗)

  • 为什么QQ不能短信验证登录(为什么qq发短信发不出去)

    为什么QQ不能短信验证登录(为什么qq发短信发不出去)

  • b站up主的BGM都有版权吗(b站著名bgm)

    b站up主的BGM都有版权吗(b站著名bgm)

  • 华为手机支付宝怎么分身(华为手机支付宝在桌面不显示不出来)

    华为手机支付宝怎么分身(华为手机支付宝在桌面不显示不出来)

  • watch 4如何开机(watch4如何开机)

    watch 4如何开机(watch4如何开机)

  • 手机1mps网速是多少兆(手机卡网速1mbps是什么意思)

    手机1mps网速是多少兆(手机卡网速1mbps是什么意思)

  • 二手苹果无锁是什么意思(二手苹果无锁是新机吗)

    二手苹果无锁是什么意思(二手苹果无锁是新机吗)

  • 荣耀20青春版怎么设置休眠时间(荣耀20青春版怎么换屏幕)

    荣耀20青春版怎么设置休眠时间(荣耀20青春版怎么换屏幕)

  • oppoa9悬浮键盘怎样关闭(oppo悬浮键盘怎么移动位置)

    oppoa9悬浮键盘怎样关闭(oppo悬浮键盘怎么移动位置)

  • 快手关注取消后找回(快手关注取消后还显示关注)

    快手关注取消后找回(快手关注取消后还显示关注)

  • 轻应用调试是什么意思(qq轻应用调试)

    轻应用调试是什么意思(qq轻应用调试)

  • vivo怎么看电池损耗(VIVO怎么看电池损耗)

    vivo怎么看电池损耗(VIVO怎么看电池损耗)

  • 红米note7麦克风在哪(红米note7麦克风更换)

    红米note7麦克风在哪(红米note7麦克风更换)

  • 电脑怎么给手机发文件夹(电脑怎么给手机恢复出厂设置)

    电脑怎么给手机发文件夹(电脑怎么给手机恢复出厂设置)

  • 三星s7防水级别(三星s7防水级别是多少)

    三星s7防水级别(三星s7防水级别是多少)

  • win11怎么静音? windows11关闭系统声音的技巧(win11怎么设置声音)

    win11怎么静音? windows11关闭系统声音的技巧(win11怎么设置声音)

  • 基于Pytorch的MNIST手写数字识别实现(含代码+讲解)(基于Pytorch的风格转换)

    基于Pytorch的MNIST手写数字识别实现(含代码+讲解)(基于Pytorch的风格转换)

  • phpcms中增删改查怎么用(php增删改查语句)

    phpcms中增删改查怎么用(php增删改查语句)

  • 增值税专用发票的税率是多少啊
  • 房产税计税依据包括土地价值吗
  • 出口企业的退税属不属于纳税总额
  • 有营业额有成本怎么算成本占比
  • 收付转记账凭证图片
  • 红冲后的发票税可以办退税吗
  • 政府无偿划拨土地涉及的税费
  • 甲供材料税金如何结算
  • 员工异地缴纳社保协议
  • 白条入账的会计分录
  • 出口货物索赔如何确认收入
  • 行政单位无法支付怎么办
  • 小企业盈余公积弥补亏损分录
  • 商业汇票概念股票
  • 航天金税财务软件使用说明
  • 股东借款可以转为认缴出资
  • 临时工发工资要扣税吗
  • 直接计入所有者权益的利得是
  • 销售不动产增值税税率变化
  • 企业销售产品的会计分录
  • 电子普票开具的最新文件
  • 自建房房产税计税依据及计算方式
  • 交易性金融资产公允价值变动计入
  • 新版edge浏览器文字不显示
  • 跨行汇入会计分录
  • 物业公司监控一般保留多久
  • 胆固醇为什么会高
  • 清理macbook清除系统垃圾
  • 小规模企业亏损情况说明范文
  • Skype.exe - Skype是什么进程 有什么用
  • 债务担保可以税前抵扣吗
  • 外汇收入情况说明
  • config.cfg是什么文件
  • 不给佣金
  • 以固定资产投资的会计处理
  • 黑色金属冶炼压延品的税收编码是多少
  • node express安装
  • 新星计划片头好可爱啊
  • php数组怎么实现的
  • 本期应补退税额和期末未缴税额
  • 怎么调整以前年度
  • 股东出资不足需要赔偿吗
  • 帝国cms自动推送插件
  • 摄影行业开票
  • 银行对账单可以作为原始凭证入账吗
  • 纳税人的交际应酬消费可以抵扣进项税额
  • 预计净残值影响营业利润吗
  • 营改增后建筑企业财务核算
  • sqlserver2005数据库磁盘满了什么文件能删
  • 固定资产处置的会计科目
  • 诉讼期间的利息法院支不支持
  • 预付款开了发票
  • 补交以前年度增值税如何入账
  • 应收账款周转率越高越好吗
  • 自产自用的产品增值税怎么算
  • 出口退税备案完事了,为什么还没有退税勾选那个模块
  • 被收购企业账务处理流程
  • 物料损失怎么入账
  • 研发支出资本化和费用化的区别
  • 投资性房地产处置的账务处理
  • 会计工作移交的时候需要有谁在场
  • phpstudy中phpmyadmin无法访问
  • mac怎么分区硬盘分区
  • giantantispywaremain.exe是什么进程 有什么作用 giantantispywaremain进程查询
  • linux多线程编程电子书
  • linux的curl
  • win7怎么无损升级到win10系统
  • win8.1如何快速启动
  • andriod 控件
  • css百分比进度条
  • js定义函数的几种方法
  • chrome heat
  • node.js+captchapng+jsonwebtoken实现登录验证示例
  • 治理体系治理能力十九届四中
  • 税务局要求补上年房租开票
  • 烟酒税收占比
  • 未办理税务登记取得专票抵扣
  • 土地要钻几回才能挖
  • 如何落实请示汇报
  • 怎么查询地税信息表
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设