【DASOU视频记录】VIT (Vision Transformer) 模型论文+代码(源码)从零详细解读,看不懂来打我

文章目录

    • 来源
    • ViT和Transformer的关系
    • 朴素思路
      • 问题
    • ViT思路
      • patch
      • 整体流程
      • CLS
      • 位置编码
      • 编码器
      • 例子
    • 代码

来源

b站视频

ViT和Transformer的关系

  • Vision Transformer(简称ViT)是Transformer在CV领域的应用
  • ViT只使用了Transformer的编码器部分

朴素思路

一个朴素的输入思路:把图片每个像素点作为一个token输入

tokenization指的是分词,分出来的每一个词语叫做token。

  • 在NLP叫每一个单词为token
  • 在CV中就是把图像切割成不重叠的patch序列(其实就是token)

CLS:标注句子语义的标注(Classification)
DASOU的猜测︰

  1. 如果采用一个平均,会涉及到所有tonkens的输出;
  2. 而MLM任务又会涉及到其中的部分mask的tokens的输出;
  3. (CLS出处)CSL符号一定程度在让两个任务保持一种相对的独立;

【DASOU视频记录】VIT (Vision Transformer) 模型论文+代码(源码)从零详细解读,看不懂来打我_第1张图片

【DASOU视频记录】VIT (Vision Transformer) 模型论文+代码(源码)从零详细解读,看不懂来打我_第2张图片

问题

但是这样输入太大了,导致复杂度过高

【DASOU视频记录】VIT (Vision Transformer) 模型论文+代码(源码)从零详细解读,看不懂来打我_第3张图片

ViT思路

patch

将图片切割成patch,一个patch作为一个token
【DASOU视频记录】VIT (Vision Transformer) 模型论文+代码(源码)从零详细解读,看不懂来打我_第4张图片

整体流程

【DASOU视频记录】VIT (Vision Transformer) 模型论文+代码(源码)从零详细解读,看不懂来打我_第5张图片

CLS

(DASOU)VIT不涉及到MLM这种形式的任务,只会有一个多分类任务,所以CLS符号不是必须的
蓝色:加CLS
绿色:不加CLS
都能达到同样的效果,就是中间的学习率不一样
【DASOU视频记录】VIT (Vision Transformer) 模型论文+代码(源码)从零详细解读,看不懂来打我_第6张图片

位置编码

有多种方式,如下图的:

  1. 一维
  2. 二维
  3. 相对
    【DASOU视频记录】VIT (Vision Transformer) 模型论文+代码(源码)从零详细解读,看不懂来打我_第7张图片实验结果,加入位置编码提升三个点,其他很难说了,,,
    【DASOU视频记录】VIT (Vision Transformer) 模型论文+代码(源码)从零详细解读,看不懂来打我_第8张图片

编码器

和原来Transformer的略有不同

  1. Norm提前了,变成了先Norm再Attention
  2. 和CV相比,不需要padding操作了,因为输入网络是靠线性投影来固定大小的
    【DASOU视频记录】VIT (Vision Transformer) 模型论文+代码(源码)从零详细解读,看不懂来打我_第9张图片

例子

【DASOU视频记录】VIT (Vision Transformer) 模型论文+代码(源码)从零详细解读,看不懂来打我_第10张图片

代码

等DASOU回代码再更,꒰⑅•ᴗ•⑅꒱

【DASOU视频记录】VIT (Vision Transformer) 模型论文+代码(源码)从零详细解读,看不懂来打我_第11张图片

DASOU老哥太强了,每次讲的深入浅出,基本上了解ViT咋回事了。✧(≖ ◡ ≖✿)

你可能感兴趣的:(视频总结,transformer,深度学习)