当前位置: 首页 > news >正文

论文阅读——Align before Fuse

Align before Fuse: Vision and Language Representation Learning with Momentum Distillation

image-text contrastive learning(ITC)用在单模态,masked language modeling (MLM) and image-text matching (ITM) 用在多模态。

单模态编码器的表示上引入了中间图像文本对比(ITC)损失,目的是在融合前更好地学习单模态表征:

(1)它对齐图像特征和文本特征,使多模态编码器更容易执行跨模态学习;

(2)改进了单模态编码器,以更好地理解图像和文本的语义;

(3)它学习一个共同的低维空间来嵌入图像和文本,这使得图像文本匹配目标能够通过我们的对比硬负挖掘找到更多信息样本。

就是对图片和文本的[CLS]token经过encoder后得到,经过线性映射得到,(gv 和 gw 是将 [CLS] 嵌入映射到归一化低维(256-d)表示的线性变换)计算相似度(点乘),然后使匹配的相似度接近1 ,不匹配的接近0。维护两个队列来存储来自动量单模态编码器的最新 M 个图像文本表示,归一化后为。然后每张图片和其他M个文本,每个文本和其他M个图片都计算相似度。

Masked Language Modeling利用图像和上下文文本来预测掩码单词。我们以 15% 的概率随机屏蔽输入标记,并将其替换为特殊标记 [MASK]。MLM最小化屏蔽文本token预测和真实token之间的交叉熵。

Image-Text Matching预测一对图像和文本是正(匹配)还是负(不匹配)。我们使用多模态编码器的 [CLS] 标记的输出embedding作为图像-文本对的联合表示,并附加一个全连接(FC)层,然后是 softmax 来预测二类概率。

如果负图像-文本对具有相似的语义但在细粒度细节上有所不同,它们是困难样本。、

我们提出了一种策略,以零计算开销对 ITM 任务进行硬负例采样。如果负图像-文本对具有相似的语义但在细粒度细节上有所不同,那么它们就很困难。我们使用等式 1 中的对比相似性来查找批量中的硬负例。对于小批量中的每张图像,我们按照对比相似度分布从同一批次中采样一个负文本,其中与图像更相似的文本有更高的机会被采样。同样,我们还为每个文本采样一张硬负片图像。

总损失:

Momentum Distillation

用于预训练的图像文本对主要是从网络上收集的,并且它们往往是有噪声的。正对通常是弱相关的:文本可能包含与图像无关的单词,或者图像可能包含文本中未描述的实体。对于 ITC 学习,图像的否定文本也可能与图像的内容匹配。对于 MLM,可能存在与同样好(或更好)描述图像的注释不同的其他词。然而,ITC 和 MLM 的独热标签会惩罚所有负面预测,无论其正确性如何。

相关文章:

论文阅读——Align before Fuse

Align before Fuse: Vision and Language Representation Learning with Momentum Distillation image-text contrastive learning(ITC)用在单模态,masked language modeling (MLM) and image-text matching (ITM) 用在多模态。 单模态编码器的表示上引入了中间图像…...

鸿蒙Harmony应用开发—ArkTS声明式开发(基础手势:Rating)

提供在给定范围内选择评分的组件。 说明: 该组件从API Version 7开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。 子组件 无 接口 Rating(options?: { rating: number, indicator?: boolean }) 从API version 9开始&#…...

Unity中的网格创建和曲线变形

Unity中的网格创建和曲线变形 3D贝塞尔曲线变形贝塞尔曲线基础线性公式二次方公式三次方公式 Unity 实现3D贝塞尔曲线变形准备工作脚本概述变量定义 变量解析函数解析 获取所有子节点GetAllChildren 获取所有子节点UpdateBezierBend 控制点更新CalculateBezier Bezier 曲线公式…...

day0 3r文档docker部署

3R编码 | 3R教室 - 最好的数字游民学习与交流俱乐部! (3rcd.com) window安装wsl下载不下来,正好有个服务器,就用linux吧密钥长度不匹配,设置一下长度即可 文档启动不成功,单独下载了下nginx,docker pull nginx:latest …...

PSCA复位控制集成之复位信号

组件可能支持两种基本的复位类型。 • 冷复位:重置组件中的所有逻辑。用作上电复位。 • 热复位:重置组件中的大部分逻辑。通常,复位的范围是所有功能逻辑。不包括在热复位中的逻辑会随组件类型而变化,但通常会排除诸如调试和 R…...

C#,数值计算,数据测试用的对称正定矩阵(Symmetric Positive Definite Matrix)的随机生成算法与源代码

C.Hermite 1、对称矩阵 对称矩阵(Symmetric Matrices)是指以主对角线为对称轴,各元素对应相等的矩阵。在线性代数中,对称矩阵是一个方形矩阵,其转置矩阵和自身相等。1855年,埃米特(C.Hermite,1822-1901年)证明了别的数学家发现的一些矩阵类的特征根的特殊性质,如称为埃…...

EventWaitHandle 和 lock使用区别

EventWaitHandle 和 lock 语句在 C# 中都是用于线程同步的机制,但它们之间有着显著的区别和不同的使用场景。下面是它们之间的主要对比和区别: EventWaitHandle 定义:EventWaitHandle 是用于跨进程或跨线程同步的低级别同步原语。它允许一个…...

【图论】树链剖分

本篇博客参考: 【洛谷日报#17】树链剖分详解Oi Wiki 树链剖分 文章目录 基本概念代码实现常见应用路径维护:求树上两点路径权值和路径维护:改变两点最短路径上的所有点的权值求最近公共祖先 基本概念 首先,树链剖分是什么呢&…...

Requests教程-17-请求代理设置

上一小节我们学习了requests解决乱码的方法,本小节我们讲解一下requests设置代理的方法。 代理基本原理 代理实际上指的就是代理服务器, 英文叫作proxy server ,它的功能是代理网络用户去取得网络信息。形象地说,它是网络信息的中…...

python内置函数 G

python内置函数 G Python 解释器内置了很多函数和类型,任何时候都能使用。 G 名称描述getattr从对象中获取属性值。globals返回当前全局符号表的字典。 getattr(object, name) getattr(object, name) getattr(object, name, default) getattr() 是 Python 中…...

深入了解 Spring boot的事务管理机制:掌握 Spring 事务的几种传播行为、隔离级别和回滚机制,理解 AOP 在事务管理中的应用

🎉🎉欢迎光临,终于等到你啦🎉🎉 🏅我是苏泽,一位对技术充满热情的探索者和分享者。🚀🚀 🌟持续更新的专栏《Spring 狂野之旅:从入门到入魔》 &a…...

机械产品CE-MD认证测试项目介绍

机械产品CE-MD认证测试项目介绍 一、引言 随着欧洲市场的日益开放和全球化进程的加速,越来越多的机械产品进入欧洲市场。为确保这些产品的安全性和符合性,欧洲联盟(EU)引入了CE认证制度。同时,对于医疗器械类产品&…...

金融知识分享系列之:MACD指标精讲

金融知识分享系列之:MACD指标精讲 一、MACD指标二、指标原理三、MACD指标参考用法四、MACD计算步骤五、MACD分析要素六、根据快线DIF位置判断趋势七、金叉死叉作为多空信号八、快线位置交叉信号九、指标背离判断行情反转十、差离值的正负十一、差离值的变化十二、指…...

王道c语言-100元有几种换法

Description 一张面值100元的人民币换成10元、5元、2元和1元面值的票子。要求换正好40张&#xff0c;且每种票子至少一张。问&#xff1a;有几种换法&#xff1f; #include <stdio.h> int main() {int count 0;int i, j, t, k, ret 0;for (i 1; i < 37; i) {for …...

c++野指针如何处理?

什么是野指针&#xff1f; 野指针指向一个已删除的对象或未申请访问受限内存区域的指针。与空指针不同&#xff0c;野指针无法通过简单地判断是否为NULL避免&#xff0c;而只能通过养成良好的编程习惯来尽力减少&#xff0c;对野指针进行操作很容易造成程序错误。 野指针产生…...

关于大根堆,set重载运算符

题目描述 \,\,\,\,\,\,\,\,\,\,制定合理的日程能够帮助利用好时间进行加训&#xff0c;加训和加训。 \,\,\,\,\,\,\,\,\,\,新学期开始了&#xff0c;应该好好学习了&#xff01;凌晨两点整&#xff0c;加睡失败的你在为新一天的各项重要事件制定闹钟。 \,\,\,\,\,\,\,\,\,\, \,…...

Algae c++

描述 问题陈述 池塘中藻类的发展情况如下。 假设年初i水藻的总重量为xi​克。对于 i≥2000&#xff0c;下列公式成立&#xff1a; xi1​rxi​−D 给你r、D和x2000​。请依次计算 x2001​、...、x2010​ 并打印出来。 输入描述 输入内容由标准输入法提供&#xff0c;格式…...

开发常用的一些工具总结

开发常用的一些工具总结 记录一些常用的开发软件. Android 开发相关 : Android studio 安卓开发者必备的编辑器,也是我用过最好用的编辑器.还可以用来写JNI 和C.Android studio 插件 : GsonFormatLeakCanary 其他 VS Code :轻量级的开发工具,插件非常多,很好用,但是上手难度…...

k8s Yaml语法解析

YAML是一个类似 XML、JSON 的标记性语言。它强调以数据为中心&#xff0c;并不是以标识语言为重点。因而YAML本身的定义比较简单&#xff0c;号称"一种人性化的数据格式语言"。 YAML的语法比较简单&#xff0c;主要有下面几个&#xff1a; 1、大小写敏感 2、使用缩进…...

【晴问算法】提高篇—动态规划专题—最长公共子序列

题目描述 现有两个字符串s1​​​​与s2​&#xff0c;求s1​​​​与s2​​​​的最长公共子序列的长度&#xff08;子序列可以不连续&#xff09;。 输入描述 第一行为字符串s1​​&#xff0c;仅由小写字母组成&#xff0c;长度不超过100&#xff1b; 第一行为字符串s2​​​…...

Greetings

Problem - 1915F - Codeforces 题意 给一些(l,r)找到所有能够包含(l,r)的数目 引入 也就是找逆序对个数 要用到归并排序中的思想&#xff1a; //https://www.luogu.com.cn/problem/P1216 #include<iostream> #include<cstdio> #include<stack> #include…...

JS03-函数

函数 使用函数 // 函数声明function sayHi(){document.write(Hello!<br>)}for(let i 1; i < 6; i){// 函数调用sayHi()}函数封装 function getScore(arr){sum 0for( let i 0; i < arr.length; i){sum arr[i]}document.write(sum)}getScore([99, 66, 100])函数…...

MySQL | CRUD

目录 1. Create 2. Retrieve 2.1. SELECT列 2.1.1. 全列查询 2.1.2. 指定列查询 2.1.3. 查询字段为表达式 2.1.4. 为查询结果指定别名 2.1.5. 结果去重 2.2. WHERE条件 2.2.1. 年龄小于19的同学 2.2.2. id在2~3的同学 2.2.3. id为1和4的同学 2.2.4. 姓张的同学及张…...

【电路笔记】-MOSFET作为开关

MOSFET 作为开关 文章目录 MOSFET 作为开关1、概述2、MOSFET特性曲线2.1 截住区域2.2 饱和区域3、MOSFET作为开关的示例4、功率MOSFET电机控制5、P沟道MOSFET作为开关6、互补MOSFET作为开关电机控制器当 MOSFET 在截止区和饱和区之间工作时,MOSFET 是非常好的电子开关,用于控…...

SpringBoot+Vue项目(Vue3环境搭建 + 基础页面)

文章目录 1.项目基本介绍2.安装Node.js&#xff08;SSM部分安装过&#xff09;3.初始化前端工程1.创建一个文件夹 springboot_vue2.创建vue项目1.在刚才创建的文件夹下打开命令行&#xff0c;使用脚手架搭建项目2.选择手动配置3.选择三个4.选择vue35.选择路由模式6.选择包管理方…...

elementui el-table表格自动循环滚动【超详细图解】

效果如图 1. 当表格内容超出时&#xff0c;自动滚动&#xff0c;滚动到最后一条之后在从头滚动。 2. 鼠标移入表格中&#xff0c;停止滚动&#xff1b;移出后&#xff0c;继续滚动。 直接贴代码 <template><div><div class"app-container"><e…...

关于学习的一点粗浅见解

我们学习的每一个领域&#xff0c;大多都有着宽泛的知识面&#xff0c;那在学习过程中&#xff0c;我们是应该一开始就专钻一个方向(即深度)&#xff0c;还是应该先扩展知识面(即广度)&#xff1f;个人认为&#xff0c;应该先扩展知识面宽度&#xff0c;然后再精研某个方向&…...

[java基础揉碎]Object类详解

目录 equals方法: hashCode: toString: finalize: equals方法: 和equals对比 1.: 既可以判断基本类型&#xff0c;又可以判断引用类型 2.: 如果判断基本类型&#xff0c;判断的是值是否相等。示例: int i10; double d10.0; 3.:如果判断引用类型&#xff0c;判断的是地址是…...

23.1 微服务理论基础

23.1 微服务基础 1. 微服务介绍2. 微服务特点3. 微服务优缺点4. 微服务两大门派5. 微服务拆分6. 微服务扩展6.1 服务扩展6.2 按需扩展7. 微服务重要模块******************************************************************************************************************...

数据结构-基本概念-001

1数据结构基本概念 1.1 &#xff08;1&#xff09;一组用来保存一种或者多种特定关系的数据的集合&#xff08;组织和存储数据&#xff09;&#xff08;2&#xff09;程序的设计&#xff1a;将现实中大量而复杂的问题以特定的数据类型和特定的存储结构存储在内存中&#xff0…...

wordpress移动端导航菜单/互联网推广的好处

今天想说的是不要让自己企业的信息化穿上“皇帝的新装”&#xff0c;从这几年的工作来看&#xff0c;以安全为例&#xff0c;安全对于大家来说越来越受到重视&#xff0c;从国家政策及舆论层面每日剧增&#xff0c;信息安全或者说网络安全没有绝对安全%100安全&#xff0c;企业…...

专门网站建设/优化建站

谈谈你对线程安全的理解谈谈你对线程安全的理解&#xff1f;典型回答知识扩展并发与并行什么是并发并发与并行之间的关系进程和线程线程的特点轻型实体独立调度和分派的基本单位。可并发执行共享进程资源共享变量谈谈你对线程安全的理解&#xff1f; 典型回答 线程安全是指某…...

长春网站建设sok/开网站需要投资多少钱

下面详细的介绍Objective-C中的集合类以及每个集合类的用法&#xff0c;学过其他面向对象编程语言的小伙伴们看到OC的集合类会有种莫名的亲切感&#xff0c;理解起来问题不大&#xff0c;可以类比Java中的集合类去学习。 在Objective-C中的集合类中主要包括不可变的数组--NSArr…...

JSP网站建设步骤/win7优化极致性能

从工业和学术界分析 一、学术方向 计算机视觉和传统机器学习一样只是一个子类&#xff0c;所以理论上计算机视觉的算法都能用在机器学习上&#xff0c;但是计算机视觉的 特点是图像的本身属性&#xff0c;图像成像原理和表示方式更加抽象。这样将问题归结到几个点上&#xff1a…...

搬瓦工ss加wordpress/影视网站怎么优化关键词排名

这道菜外观红红火火&#xff0c;口味麻、辣、鲜、香&#xff0c;肉片嫩滑易嚼、蔬菜鲜嫩、汤红油亮&#xff0c;是一道非常经典的川菜,就是水煮牛肉&#xff0c;下面一起来制作它吧。鞋铺&#xff1a;LV6221716一、水煮牛肉主料&#xff1a;牛里脊300克 干辣椒15克 葱半根 香葱…...

q王商城 网站是怎么做的/网络营销策划模板

一&#xff1a;共享账号检查 配置名称&#xff1a;用户账号分配检查&#xff0c;避免共享账号存在 配置要求&#xff1a;1、系统需按照实际用户分配账号&#xff1b; 2、避免不同用户间共享账号&#xff0c;避免用户账号和服务器间通信使用的账号共享。 操作指南&…...