ViLT 浅析
论文链接:ViLT
文章目录
- ViLT 浅析
- 创新点
- 网络结构
- 总结
创新点
本文先分析了4种不同类型的Vision-and-Language Pretraining(VLP)
其中每个矩形的高表示相对计算量大小,VE、TE和MI分别是visual embedding、text embedding和modality interaction的简写。
根据上述划分原则
- VSE、VSE++和SCAN属于(a)类型。对图像和文本独立使用encoder,图像的相对复杂,文本的相对简单,使用简单的点积或者浅层attention层来表示两种模态特征的相似性。
- CLIP属于(b)类型。每个模态单独使用重的transformer encoder,使用池化后的图像特征点积计算特征相似性。
- ViLBERT、UNTER和Pixel-BERT属于©类型。这些方法使用更深的transformer进行模态融合,但是由于VE仍然使用相对复杂的卷积网络进行特征抽取,导致计算量依然很大。
- 而作者提出的ViLT模型属于d类,ViLT是首个将VE设计的如TE一样轻量的方法,该方法的主要计算量都集中在模态交互上。
文本一般使用transformer的线性嵌入,而以前的图像特征则采用CNN提取相关特征,而作者提出了采用一个线性嵌入来提出特征
网络结构
对于图像特征的提取作者采用了类似ViT一样的Patch Embedding结构,首先将图片划分为一小个的Patch并输入到线性投影层,而对于文本特征的提取作者采用了对完整的单词进行mask的方式。然后对于提取到的特征分别进行位置编码添加其位置信息,然后进行模态编码其中使用0表示文本特征,1表示图像特征,同时给文本与图像特征添加一个额外的可学习[class] embedding,方便和下游任务对接,最后两个特征进行拼接,并输入到transformer编码器中。
- ImageText Matching:用来判断图像文本是否匹配
- Masked Language Modeling:预测被掩盖的单词
- word patch alignment:计算teextual subset和visual subset的对齐分数
总结
文章主要受到了ViT的影响设计一个Patch Embedding结构将图像特征序列化,并与文本特征进行模态融合。
采用Patch Embedding结构使得整个模型训练大幅度加快,同时在许多任务上保持着较高的准确率。