SwinTransformer

传统Transformer的做法
  • patch划分: 将图像划分为多个patch,每个patch包含多个像素点

  • 序列构建: 将patch作为序列中的token进行处理

  • 粒度选择: patch越小(如

    4×44×44×4

    ),序列长度越长;patch越大(如

    8×88×88×8

    ),序列长度越短

    序列长度与效率问题

    • 效率问题: 序列越长,计算注意力时每个token需要与其他所有token进行计算,效率显著降低
    • 计算复杂度: 传统Transformer需要对长序列进行多次计算(如8次、12次),进一步加剧效率问题
Swin Transformer的解决方案
  • 核心思想: 采用窗口和分层的形式替代长序列方法

  • 分层处理:

    • 第一层: 使用细粒度划分(如400个token),提取详细特征
    • 第二层: 进行合并(如两两合并为200个token)
    • 第三层: 继续合并(如再合并为100个token)
  • 类比CNN: 这种分层结构与CNN中的感受野层级结构类似,随着层数增加,感受野逐渐增大

  • 效率优势: 通过分层处理,计算量逐层减少,解决了传统Transformer的效率问题

  • 关键创新: 引入分层结构,使Transformer能够像CNN一样具有层级特征提取能力

  • 与传统Transformer区别:

    • 传统方法每层处理相同长度的序列
    • Swin Transformer通过分层合并逐步减少token数量
  • 效果类比: 在特征提取效果和方式上都与CNN更加接近,解决了传统Transformer缺乏层级结构的问题

相关推荐
深圳市快瞳科技有限公司7 分钟前
个体识别、行为解读、健康管理:多模态宠物AI大模型的场景化落地
人工智能·算法·计算机视觉·大模型·多模态·宠物·宠物ai识别
安逸sgr10 分钟前
AI 编程工具在真实项目中适合做什么?不适合做什么?
人工智能·ai·大模型·agent·智能体
stevenzqzq13 分钟前
opencode设置项
人工智能
liulilittle14 分钟前
归一化:激活函数
人工智能·算法·机器学习·llm
fthux24 分钟前
装闭 RenoPit 源码解析(02):AI装修闭坑系统数据库与模型设计
人工智能·ai·开源·github·open source·renopit
2601_9564563432 分钟前
AI巡检机器人实战评测:3款室外产品算法自研能力与真实场景表现横评(2026)
大数据·人工智能·机器人
mtouch33344 分钟前
全球水面海面动态仿真规划生成数字沙盘电子沙盘系统
人工智能·机器人·无人机·虚拟现实·电子沙盘·数字沙盘
小影译片1 小时前
什么是克隆配音(AI 语音克隆)
人工智能·自然语言处理·语音识别
hhzz1 小时前
《深度学习框架PyTorch入门与实践》系列:03-autograd自动微分:反向传播的引擎
人工智能·pytorch·深度学习
过期的秋刀鱼!1 小时前
倾斜数据集的错误指标-混淆矩阵
人工智能·python·深度学习·机器学习·概率论·模型评估