论文笔记--ERNIE-VIL 2.0: MULTI-VIEW CONTRASTIVE LEARNING FOR IMAGE-TEXT PRE-TRAINING

本文主要是介绍论文笔记--ERNIE-VIL 2.0: MULTI-VIEW CONTRASTIVE LEARNING FOR IMAGE-TEXT PRE-TRAINING,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

论文笔记--ERNIE-VIL 2.0: MULTI-VIEW CONTRASTIVE LEARNING FOR IMAGE-TEXT PRE-TRAINING

  • 1. 文章简介
  • 2. 文章概括
  • 3 文章重点技术
    • 3.1 Multi-view learning
    • 3.2 对比损失函数
  • 4. 文章亮点
  • 5. 原文传送门
  • 6. References

1. 文章简介

  • 标题:ERNIE-VIL 2.0: MULTI-VIEW CONTRASTIVE LEARNING FOR IMAGE-TEXT PRE-TRAINING
  • 作者:Bin Shan Weichong Yin Yu Sun Hao Tian Hua Wu Haifeng Wang
  • 日期:2022
  • 期刊:arxiv preprint

2. 文章概括

  文章提出了基于Multi-view进行预训练的多模态模型ERNIE-ViL 2.0,更高效地捕捉到模态内部和模态之间的特征。文章通过引入sequence of object tags作为一种特殊view,来提升模型对语义-图像的对齐能力。实验表明,ERNIE-ViL 2.0在多个下游多模态任务上取得了SOTA水平。

3 文章重点技术

3.1 Multi-view learning

  文章的整体架构基于多视角学习(Multi-view learning),简单来说就是将一个物体的多个角度的输入互为补充,比如3D物体的不同角度,比如不同组合方式,比如指纹的不同录入角度等。
  首先,文章构建了各种不同的视角:

  • I2I(image-image):针对输入的图片,我们通过图像增强方式来构造图像的多种视角。具体增强方法为对图片进行随机的剪裁、翻转或高斯模糊,得到图像的两个不同视角 I v 1 , I v 2 I_{v_1}, I_{v_2} Iv1,Iv2
  • T2T(text-text):针对输入的文本,文章参考SimCSE[2]的dropout方法,即对输入的文本进行随机的dropout mask对其中一部分token进行掩码,得到文本的不同视角 T v 1 , T v 2 T_{v_1}, T_{v_2} Tv1,Tv2
  • I2T(image-text)/T2I(text-image):针对输入的图片-文本对,我们引入special text sequence。具体来说,通过pretrained object detector对输入的图片进行目标检测,得到目标 o 1 , … , o k o_1, \dots, o_k o1,,ok,然后生成prompt:This picture contains o 1 , o 2 , … , o k o_1, o_2, \dots, o_k o1,o2,,ok。通过这个特殊的sequence对图片标题中缺失的文本信息进行补充
      整体架构如下所示
    整体架构

3.2 对比损失函数

  为了让模型学习到上述四种view,文章构建统一的损失函数将上述view结合。给定4种view的集合 S = { ( I v 1 , I v 2 ) , ( T v 1 , T v 2 ) , ( I v 1 , T v 1 ) , ( T v 1 , I v 1 ) } S = \{(I_{v_1}, I_{v_2}), (T_{v_1}, T_{v_2}), (I_{v_1}, T_{v_1}), (T_{v_1}, I_{v_1})\} S={(Iv1,Iv2),(Tv1,Tv2),(Iv1,Tv1),(Tv1,Iv1)},我们计算最小化每一个view pair的损失: L ( x , y ) = − 1 N ∑ i N log ⁡ exp ⁡ h x i T h y i / τ ∑ j = 1 N exp ⁡ h x i T h y j / τ L_{(x, y)} = -\frac 1N \sum_i^N \log \frac {\exp h_x^{i^T} h_y^i /\tau}{\sum_{j=1}^N \exp h_x^{i^T} h_y^j /\tau} L(x,y)=N1iNlogj=1NexphxiThyj/τexphxiThyi/τ,其中 x , y x, y x,y表示 S S S的任意一个元素的两个view, h h h表示对应的encoder编码结果, τ \tau τ为温度, N N N为batch size。该损失函数的目的是让 h x i h_x^i hxi h y i h_y^i hyi尽可能相似,即每一种view中的两个view要比较接近(点积尽可能大),而每两个不同对中的两个view尽可能远。
  最终模型通过最小化如下损失函数进行参数更新: L m u l t i − v i e w = ∑ s ∈ S λ s L s L_{multi-view} = \sum_{s \in S} \lambda_s L_s Lmultiview=sSλsLs

4. 文章亮点

  文章基于multi-view learning训练得到了多模态模型ERNIE-Vil 2.0,ERNIE-ViL 2.0仅通过开源数据训练在英文跨模态检索任务上实现了zero-shot任务的显著提升,在中文跨模态检索任务上也达到了SOTA。下图展示了ERNIE-ViL 2.0 可以有效支撑一些复杂的跨模态检索任务。此外,文章通过引入目标检测信息,弥补了部分文本信息缺失的情况,更高效地实现模型对图像-文本对齐的学习。
跨模态检索

5. 原文传送门

ERNIE-VIL 2.0: MULTI-VIEW CONTRASTIVE LEARNING FOR IMAGE-TEXT PRE-TRAINING

6. References

[1] 论文笔记–ERNIE-ViL: Knowledge Enhanced Vision-Language Representations through Scene Graphs
[2] 论文笔记–SimCSE: Simple Contrastive Learning of Sentence Embeddings

这篇关于论文笔记--ERNIE-VIL 2.0: MULTI-VIEW CONTRASTIVE LEARNING FOR IMAGE-TEXT PRE-TRAINING的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/303419

相关文章

AI hospital 论文Idea

一、Benchmarking Large Language Models on Communicative Medical Coaching: A Dataset and a Novel System论文地址含代码 大多数现有模型和工具主要迎合以患者为中心的服务。这项工作深入探讨了LLMs在提高医疗专业人员的沟通能力。目标是构建一个模拟实践环境,人类医生(即医学学习者)可以在其中与患者代理进行医学

【学习笔记】 陈强-机器学习-Python-Ch15 人工神经网络(1)sklearn

系列文章目录 监督学习:参数方法 【学习笔记】 陈强-机器学习-Python-Ch4 线性回归 【学习笔记】 陈强-机器学习-Python-Ch5 逻辑回归 【课后题练习】 陈强-机器学习-Python-Ch5 逻辑回归(SAheart.csv) 【学习笔记】 陈强-机器学习-Python-Ch6 多项逻辑回归 【学习笔记 及 课后题练习】 陈强-机器学习-Python-Ch7 判别分析 【学

系统架构师考试学习笔记第三篇——架构设计高级知识(20)通信系统架构设计理论与实践

本章知识考点:         第20课时主要学习通信系统架构设计的理论和工作中的实践。根据新版考试大纲,本课时知识点会涉及案例分析题(25分),而在历年考试中,案例题对该部分内容的考查并不多,虽在综合知识选择题目中经常考查,但分值也不高。本课时内容侧重于对知识点的记忆和理解,按照以往的出题规律,通信系统架构设计基础知识点多来源于教材内的基础网络设备、网络架构和教材外最新时事热点技术。本课时知识

2014 Multi-University Training Contest 8小记

1002 计算几何 最大的速度才可能拥有无限的面积。 最大的速度的点 求凸包, 凸包上的点( 注意不是端点 ) 才拥有无限的面积 注意 :  凸包上如果有重点则不满足。 另外最大的速度为0也不行的。 int cmp(double x){if(fabs(x) < 1e-8) return 0 ;if(x > 0) return 1 ;return -1 ;}struct poin

2014 Multi-University Training Contest 7小记

1003   数学 , 先暴力再解方程。 在b进制下是个2 , 3 位数的 大概是10000进制以上 。这部分解方程 2-10000 直接暴力 typedef long long LL ;LL n ;int ok(int b){LL m = n ;int c ;while(m){c = m % b ;if(c == 3 || c == 4 || c == 5 ||

2014 Multi-University Training Contest 6小记

1003  贪心 对于111...10....000 这样的序列,  a 为1的个数,b为0的个数,易得当 x= a / (a + b) 时 f最小。 讲串分成若干段  1..10..0   ,  1..10..0 ,  要满足x非递减 。  对于 xi > xi+1  这样的合并 即可。 const int maxn = 100008 ;struct Node{int

论文翻译:arxiv-2024 Benchmark Data Contamination of Large Language Models: A Survey

Benchmark Data Contamination of Large Language Models: A Survey https://arxiv.org/abs/2406.04244 大规模语言模型的基准数据污染:一项综述 文章目录 大规模语言模型的基准数据污染:一项综述摘要1 引言 摘要 大规模语言模型(LLMs),如GPT-4、Claude-3和Gemini的快

论文阅读笔记: Segment Anything

文章目录 Segment Anything摘要引言任务模型数据引擎数据集负责任的人工智能 Segment Anything Model图像编码器提示编码器mask解码器解决歧义损失和训练 Segment Anything 论文地址: https://arxiv.org/abs/2304.02643 代码地址:https://github.com/facebookresear

数学建模笔记—— 非线性规划

数学建模笔记—— 非线性规划 非线性规划1. 模型原理1.1 非线性规划的标准型1.2 非线性规划求解的Matlab函数 2. 典型例题3. matlab代码求解3.1 例1 一个简单示例3.2 例2 选址问题1. 第一问 线性规划2. 第二问 非线性规划 非线性规划 非线性规划是一种求解目标函数或约束条件中有一个或几个非线性函数的最优化问题的方法。运筹学的一个重要分支。2

【C++学习笔记 20】C++中的智能指针

智能指针的功能 在上一篇笔记提到了在栈和堆上创建变量的区别,使用new关键字创建变量时,需要搭配delete关键字销毁变量。而智能指针的作用就是调用new分配内存时,不必自己去调用delete,甚至不用调用new。 智能指针实际上就是对原始指针的包装。 unique_ptr 最简单的智能指针,是一种作用域指针,意思是当指针超出该作用域时,会自动调用delete。它名为unique的原因是这个