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

前沿论文 M5Product 组会 PPT

在这里插入图片描述
对比学习(Contrast learning):对比学习是一种自监督学习方法,用于在没有标签的情况下,通过让模型学习哪些数据点相似或不同来学习数据集的一般特征。假设一个试图理解世界的新生婴儿。在家里,假设有两只猫和一只狗。即使没有人告诉你它们是“猫”和“狗”,这个婴儿仍可能会意识到,与狗相比,这两只猫看起来很相似。
在这里插入图片描述

作者从理论论文和实践论文的角度都表明,具有不同模态的大规模数据集可以有效地增强对生成特征的区分,从而提高视觉语言任务的性能。然而,目前的进展受到缺乏这种大规模多样化模态数据集的严重限制,最大的公共多模态数据集只包含文本、图像模态和无类别信息[41]。作者采集了结构化和音视频数据来进行训练。

在这里插入图片描述
大多数多模态预训练数据集是从社交网站收集的(例如,Twitter和Facebook),并且仅限于为指定任务收集的两种模式。这些数据集可以根据其模态组成分为四类,即,音频/文本、视频/文本、图像/文本等。CMU-MOSEI主要关注情感分析,XMedia用于跨模态检索。除了上述数据集,还有几个电子商务数据集。Dress Retrieval [9],RPC checkout [48]和Product1M [55]是典型的电子商务多模态数据集。可以看出他们的模态只有图片和文本。
在这里插入图片描述
近年来,针对视觉-文本多模态学习,研究者们提出了多种视觉语言预训练模型。它们可以粗略地分为两类:1)单流模型,其Transformer层共同对视觉和文本输入进行concat操作,例如VL-bert [42],Image-BERT [37],VideoBERT [44],MMT [12],HERO [26],VisualBERT [27]和UNITER [7]。2)图像和文本输入不连接的双流模型,例如ViLBERT [30],LXMERT [45],CLIP [38]和DALL-E [39]。

在这里插入图片描述
读ppt
在这里插入图片描述
之前的研究引发了两个关键挑战:
(1)模态交互:如何通过扩展到大量模态的优雅方法,实现从不同模态之间的单峰,双峰,三峰甚至多模态关系中学习共同表示。
(2)模态噪声:如何在训练过程中减少模态噪声(不完整的模态)的影响。后面作者使用零插补进行去除,发现对模型效果有所提高。

在这里插入图片描述
在这里插入图片描述
读PPT
在这里插入图片描述
作为一个真实世界的数据集,与传统的多模态数据集不同,它并不是一个完整的配对数据集。具体来说,这个数据集包含的样本只包含部分模态(即不同类型的数据),而且数据的分布是长尾分布。这意味着大部分样本可能集中在少数几种模态上,而其他模态的样本则相对较少。
在这里插入图片描述
方法框架中最下面是SCALE首先对五个模态数据进行处理,然后得到特征,同样每个模态有一个CLS特征来对其他特征进行综合。然后进行对比学习。在由单独的模态编码器处理之后,不同模态的令牌特征被连接并馈送到联合共Transformer(Joint Co-Transformer,JCT)模块中以捕获不同模态之间的令牌关系。
在这里插入图片描述
针对每种模态进行了代理任务,利用了之前的掩码区域预测任务(MRP)、掩码语言建模任务(MLM)。为了利用表,视频和音频模态的特性,作者进一步提出了掩码实体建模任务(MEM),掩码帧预测任务(MFP),掩码音频建模任务(MAM)。比如在MLM任务中,模型需要预测输入句子中被随机掩盖(mask)的单词。具体来说,在给定的句子中,某些单词会被特殊的[MASK]标记替换,模型的目标是预测这些被掩盖的单词。
在这里插入图片描述
定义了一个针对每个模态的损失函数,其中, t ¬ m s k t_{\neg m s k} t¬msk表示围绕屏蔽令牌 t m s k t_{msk} tmsk的未屏蔽令牌, θ θ θ表示网络参数,并且 M i M_i Mi M ¬ i {M}_{\neg i} M¬i分别是第 i i i模态和剩余模态。比如预测一个文本模态的单词,给定其他模态的信息和其他未被掩码的令牌。
在这里插入图片描述
首先比较文本特征与图像特征之间的相似性,这需要看上一张图片,特征传入了这个Inter-Modality Scores,生成对应的分数。同样计算其他模态之间的相似性(如音频与视频、文本与结构化数据等)。将所有模态之间的相似性得分整合成一个得分矩阵 S S S。计算模态匹配分数 S ′ = S ⋅ s o f t m a x ( S ) S' = S \cdot softmax(S) S=Ssoftmax(S)。利用 S ′ S' S 来加权模态间损耗和模态内损耗,优化模型。
在这里插入图片描述

选择三角形部分 S ∇ S_{\nabla} S来加权模态间损耗 L C L L_{CL} LCL,并且使用对角部分S来约束模态内损耗 L M i L_{Mi} LMi,从而得到加权损耗:
L t o t a l = ∑ S i , j S ▽ L C L i , j ( S i , j l o g ı ˙ t i , j ) + ∑ S i S ∖ L M i ( S i l o g ı ˙ t i ) \mathcal{L}_{t o t a l}=\sum_{S_{i,j}}^{S_{\bigtriangledown}}\mathcal{L}_{C L_{i,j}}\left(S_{i,j}l o g\dot{\imath}t_{i,j}\right)+\sum_{S_{i}}^{S_{\setminus}}\mathcal{L}_{M_{i}}\left(S_{i}l o g\dot{\imath}t_{i}\right) Ltotal=Si,jSLCLi,j(Si,jlog˙ti,j)+SiSLMi(Silog˙ti)
其中 l o g i t logit logit是损失 l o g i t logit logit。我们可以看到这个图中首先特征给到Inter-Modality Scores 然后两种得分 分别给到对比学习和五个代理任务。

相关文章:

前沿论文 M5Product 组会 PPT

对比学习(Contrast learning):对比学习是一种自监督学习方法,用于在没有标签的情况下,通过让模型学习哪些数据点相似或不同来学习数据集的一般特征。假设一个试图理解世界的新生婴儿。在家里,假设有两只猫和…...

navicat~导出数据库密码

当我们mysql密码忘记了,而在navicat里有记录,我们应该如何导出这个密码呢? 第一步:文件菜单,导出链接,导出连接获取到 connections.ncx 文件 这里需要勾选 导出密码!!! 不然导出的文…...

【Java】 —— 数据结构与集合源码:Vector、LinkedList在JDK8中的源码剖析

目录 7.2.4 Vector部分源码分析 7.3 链表LinkedList 7.3.1 链表与动态数组的区别 7.3.2 LinkedList源码分析 启示与开发建议 7.2.4 Vector部分源码分析 jdk1.8.0_271中: //属性 protected Object[] elementData; protected int elementCount;//构造器 public …...

YOLOv5改进——添加SimAM注意力机制

目录 一、SimAM注意力机制核心代码 二、修改common.py 三、修改yolo.py ​三、建立yaml文件 四、验证 一、SimAM注意力机制核心代码 在models文件夹下新建modules文件夹,在modules文件夹下新建一个py文件。这里为simam.py。复制以下代码到文件里面。 import…...

SQL 自学:表别名的运用与对被联结表使用聚集函数

一、表别名的概念与作用 (一)表别名的定义 表别名是为表指定的临时名称,在 SQL 查询中使用别名可以简化表名,提高代码的可读性和可维护性。当表名较长或在复杂的查询中多次引用表时,使用表别名可以避免重复输入冗长的…...

jmeter学习(2)变量

1)用户定义的变量 路径:添加-》配置元件-》用户定义的变量 用户定义的变量是全局变量,可以跨线程组被调用,但在启动运行时获取一次值,在运行过程中不再动态获取值。 注意的是,如果在某个线程组定义了全…...

【C#生态园】C#文件压缩库全面比较:选择最适合你的库

从核心功能到API概览:深度解析六大C#文件压缩库 前言 在软件开发过程中,文件的压缩和解压缩是一个常见的需求。针对C#开发者而言,选择合适的文件压缩库可以极大地简化开发工作。本文将介绍几个常用的C#文件压缩库,包括其核心功能…...

【测试】接口测试与接口自动化

壹、接口测试基础 一、接口测试概念 I、基础概念 是测试系统组件间接口的一种测试。 主要用于检测外部系统与系统间、内部子系统间的交互点;测试重点检查数据的交换、传递和控制管理过程,以及系统间的相互逻辑依赖关系。 内部接口调用相当于函数调用&am…...

Android设置边框圆角

在Android开发中&#xff0c;圆角设计十分常见&#xff0c;那么实现边框圆角有几种形式呢&#xff1f; 文章目录 设置圆角边框样式使用ClipToOutline进行裁切最后 设置圆角边框样式 常见的方式是在drawable文件夹下设置一个xml文件的边框样式&#xff0c;比如 <shape andro…...

SpringBoot项目打成jar包,在其他项目中引用

1、首先新建一个SpringBoot工程 记得要将Gradle换成Maven 2、新建一个要引用的方法 3、打包的时候要注意&#xff1a; ① 不能使用springboot项目自带的打包插件进行打包&#xff0c;下面是自带的&#xff1a; ②要换成传统项目的maven打包&#xff0c;如下图&#xff1a; 依…...

【音频可视化】通过canvas绘制音频波形图

前言 这两天写项目刚好遇到Ai对话相关的需求&#xff0c;需要录音功能&#xff0c;绘制录制波形图&#xff0c;写了一个函数用canvas实现可视化&#xff0c;保留分享一下&#xff0c;有需要的直接粘贴即可&#xff0c;使用时传入一个1024长的&#xff0c;0-255大小的Uint8Arra…...

解决github每次pull push输入密码问题

# 解决git pull/push每次都需要输入密码问题 git bash进入你的项目目录&#xff0c;输入&#xff1a; git config --global credential.helper store然后你会在你本地生成一个文本&#xff0c;上边记录你的账号和密码。配置项写入到 "C:\Users\用户名\ .gitconfig" …...

Java重修笔记 第六十四天 坦克大战(十四)IO 流 - 标准输入输出流、InputStreamReader 和 OutputStreamWriter

标准输入输出流 1. System.in 标准输入流 本质上是一个InputString&#xff0c;对应键盘&#xff0c;表示从键盘输入。 定义&#xff1a;public final static InputStream in null; 所以 Scanner scanner new Scanner(System.in); 会从键盘中获取数据 2. System.out 标准输…...

prctl的函数和pthread_self函数

1.prctl的函数原型如下&#xff1a; #include<sys/prctl.h> ​prctl(PR_SET_NAME, “process_name”);第一个参数是操作类型&#xff0c;指定PR_SET_NAME&#xff08;对应数字15&#xff09;&#xff0c;即设置进程名&#xff1b; 第二个参数是进程名字符串&#xff0c;…...

Vim 命令行模式下的常用命令

Vim 命令行模式下的常用命令 文件操作&#xff1a; :w &#xff1a;保存当前文件。:w filename &#xff1a;将当前内容另存为指定的 filename 。:q &#xff1a;退出 Vim&#xff0c;如果文件有修改但未保存&#xff0c;会提示错误。:q! &#xff1a;强制退出 Vim&#xff0c…...

【动态规划-最长递增子序列(LIS)】力扣2826. 将三个组排序

给你一个整数数组 nums 。nums 的每个元素是 1&#xff0c;2 或 3。在每次操作中&#xff0c;你可以删除 nums 中的一个元素。返回使 nums 成为 非递减 顺序所需操作数的 最小值。 示例 1&#xff1a; 输入&#xff1a;nums [2,1,3,2,1] 输出&#xff1a;3 解释&#xff1a; …...

Elastic Stack--16--ES三种分页策略

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 方式一&#xff1a;from size实现原理使用方式优缺点 方式二&#xff1a;scroll实现原理使用方式优缺点 方式三&#xff1a;search_after实现原理使用方式优缺点 三…...

[LeetCode] 315. 计算右侧小于当前元素的个数

题目描述&#xff1a; 给你一个整数数组 nums &#xff0c;按要求返回一个新数组 counts 。数组 counts 有该性质&#xff1a; counts[i] 的值是 nums[i] 右侧小于 nums[i] 的元素的数量。 题目链接&#xff1a; . - 力扣&#xff08;LeetCode&#xff09; 题目主要思路&a…...

【hot100-java】二叉树展开为链表

二叉树篇。 /*** Definition for a binary tree node.* public class TreeNode {* int val;* TreeNode left;* TreeNode right;* TreeNode() {}* TreeNode(int val) { this.val val; }* TreeNode(int val, TreeNode left, TreeNode right) {* …...

如何在在 YOLOv3模型中添加Attention机制

在YOLOv3模型中添加Attention机制需要以下几个步骤&#xff1a; 1. 规定格式 当添加新的模块&#xff08;如Attention机制模块&#xff09;时&#xff0c;需要像定义[convolutional]、[maxpool]等层在cfg文件中的格式一样&#xff0c;对新模块进行格式规定。例如对于SE模块&a…...

单点登录Apereo CAS 7.1安装配置教程

笔者目前正在做一个单点登录的课题,历时较长总算摸到一些门路,其中的辛酸不易按下不表。截至本文发布,CAS的最新版本为7.1。由于涉及到课题内容,而且内容比较新,整理试验不容易,暂时只对VIP开放,后续课题完成后会完全开放,敬请谅解。 CAS项目区别 在CAS的项目选择上,…...

windows C++-移除界面工作线程(一)

本文档演示了如何使用并发运行时将 Microsoft 基础类 (MFC) 应用程序中由用户界面 (UI) 线程执行的工作移动到工作线程。 本文档还演示了如何提高冗长绘制操作的性能。 通过将阻塞性操作&#xff08;例如&#xff0c;绘制&#xff09;卸载到工作线程来从 UI 线程中移除工作&am…...

Qt小bug — LINK : fatal error LNK1158: 无法运行“rc.exe“

Qt小bug —— LINK &#xff1a;fatal error LNK1158&#xff1a;无法运行"rc.exe" 环境 Qt 5.14.2 MSVC 2015 x64 现象 解决 在电脑上找到rc.exe 和rcdll.dll &#xff08;一般在C:\Program Files(x86)\Windows Kits*\bin\x64下面&#xff09;拷贝到 C:\Qt\Qt5…...

c++小游戏

目录 狼人杀 走迷宫 炸弹人 贪吃蛇 飞翔的小鸟 跑酷 吃豆人 飞机大战 人生模拟器 坦克大战 修仙模拟器 搜集了一些小游戏&#xff0c;名字下是个人是个人喜欢度&#xff0c;可供参考~ 狼人杀 ❤❤❤❤ #include<bits/stdc.h> #include<cstdio> #incl…...

k8s为什么用Calico

‌Calico是一种开源的网络和安全解决方案&#xff0c;主要用于容器、虚拟机、宿主机之间的网络连接。‌ 它支持Kubernetes、OpenShift、Docker EE、OpenStack等PaaS或IaaS平台&#xff0c;提供高效的网络通信和安全控制功能‌12。 Calico的核心组件包括Felix、etcd、BIRD等。F…...

HashMap 和 Hashtable 有什么区别?

HashMap和Hashtable都是Java中常用的存储键值对的集合类&#xff0c;它们都实现了Map接口&#xff0c;但二者之间存在一些显著的区别。以下是对HashMap和Hashtable区别的详细归纳&#xff1a; 一、线程安全性 HashMap&#xff1a;是非线程安全的&#xff0c;即多个线程可以同…...

【机器学习】深度学习、强化学习和深度强化学习?

深度学习、强化学习和深度强化学习是机器学习的三个重要子领域。它们有着各自独特的应用场景和研究目标&#xff0c;虽然都属于机器学习的范畴&#xff0c;但各自的实现方式和侧重点有所不同。 1. 深度学习&#xff08;Deep Learning&#xff09; 深度学习是一种基于神经网络的…...

fastadmin 多商户模式下侧边栏跳转路径BUG

记录&#xff1a;仅作自己项目记录&#xff0c;在一个域名下部署多套项目时&#xff0c;若不是多商户模式项目会出现跳转路径问题。 修改 \manystore\library\Auth.php 文件的 getSidebar 方法 // 1 改为&#xff1a; $v[url] isset($v[url]) && $v[url] ? $v[url]…...

java内置的四种函数式接口

供给型&#xff1a;Supplier 无入参&#xff0c;有返回值。 FunctionalInterface public interface Supplier<T> {T get();}消费型&#xff1a;Consumer 有入参&#xff0c;无返回值。 FunctionalInterface public interface Consumer<T> {void accept(T t);de…...

如何获取 uni-app 应用发布所需的证书、私钥与配置文件

引言 在开发和发布iOS应用时&#xff0c;开发者常常会面临一系列复杂的证书、私钥密码以及配置文件的管理问题。这些配置不仅影响到应用的开发调试&#xff0c;还决定了应用是否能够顺利通过审核并发布到App Store。对于使用uni-app进行开发的开发者来说&#xff0c;自动生成的…...