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

The Llama 3 Herd of Models 第7部分视觉实验部分全文

第1,2,3部分,介绍、概览和预训练

第4部分,后训练

第5部分,结果

第6部分,推理

7 Vision Experiments

        我们进行了一系列的实验,在这些实验中,我们通过一种由两个主要阶段组成的合成方法将视觉识别能力整合到Llama 3中。首先,我们通过在大量图像-文本对上引入和训练两种模型(Alayrac et al ., 2022)之间的一组交叉关注层,组成预训练图像编码器(Xu et al ., 2023)和预训练语言模型。这导致了图28中所示的模型。其次,我们引入时间聚合层和额外的视频交叉关注层,这些层对大量视频文本对进行操作,以学习模型识别和处理来自视频的时间信息。

        基础模型开发的组合方法有几个优点:(1)它使我们能够并行化视觉和语言建模能力的开发;(2)避免了视觉和语言数据联合预训练的复杂性,这些复杂性源于视觉数据的标记化、不同模式下的标记的背景困惑差异以及模式之间的争用;(3)它保证了模型在纯文本任务上的性能不受视觉识别功能的影响,(4)交叉注意架构确保我们不必花费计算时间通过越来越多的LLM骨干(具体来说,每个变压器层中的前馈网络)传递全分辨率图像,使其在推理过程中更高效。我们注意到,我们的多模式模型仍在开发中,尚未准备好发布。

        在7.6节和7.7节展示我们的实验结果之前,我们描述了我们用于训练视觉识别能力的数据,视觉组件的模型架构,我们如何扩展这些组件的训练,以及我们的训练前和训练后方法。

7.1 Data

        我们在下面分别描述我们的图像和视频数据。

7.1.1 Image Data

        我们的图像编码器和适配器是在图像-文本对上进行训练的。我们通过一个复杂的数据处理管道构建该数据集,该管道由四个主要阶段组成:(1)质量滤波,(2)感知去重复,(3)重采样和(4)光学字符识别。我们还应用了一系列安全缓解措施。

                •质量过滤。我们通过启发式算法(如(Radford et al, 2021)产生的低对齐分数)实现了去除非英语字幕和低质量字幕的质量过滤器。具体来说,我们删除所有低于特定CLIP分数的图像-文本对。

                •重复数据删除。去除重复的大规模训练数据集有利于模型性能,因为它减少了在冗余数据上花费的训练计算(Esser等,2024;Lee et al, 2021;Abbas等人,2023)和(Carlini et al, 2023;Somepalli et al, 2023)。因此,出于效率和隐私原因,我们对训练数据进行了去重复处理。为此,我们使用了最先进的SSCD复制检测模型的内部版本(Pizzi等人,2022)来大规模地去重复图像。对于所有图像,我们首先使用SSCD模型计算512维表示。我们使用这些嵌入对数据集中所有图像中的每个图像执行最近邻(NN)搜索,使用余弦相似度度量。我们将超过一定相似性阈值的例子定义为重复。我们使用连接组件算法对这些重复进行分组,并且每个连接组件仅维护一个图像-文本对。我们通过:(1)使用k-means聚类对数据进行预聚类,(2)使用FAISS (Johnson等人,2019)进行神经网络搜索和聚类来提高重复数据删除管道的效率。

                •重新采样。我们通过类似于Xu等人(2023)的重新采样来确保图像-文本对的多样性;Mahajan et al (2018);Mikolov et al(2013)。首先,我们通过解析高质量的文本源来构建n-gram词汇表。接下来,我们计算数据集中每个词汇表n-gram的频率。然后我们按如下方式重新采样数据:如果标题中的n个图中的任何一个在词汇表中出现的次数少于T次,我们保留相应的图像-文本对。否则,我们以p T =fi的概率对标题中的n-gram ni中的每一个独立采样,其中fi表示n-gram ni的频率;如果n-gram中的任何一个被采样,我们保留图像-文本对。这种重采样有助于低频类别和细粒度识别任务的性能。

                •光学字符识别。通过提取图像中写入的文本并将其与标题连接起来,我们进一步改进了图像-文本数据。使用专有的光学字符识别(OCR)管道提取书面文本。我们观察到,将OCR数据添加到训练数据中可以极大地改善需要OCR功能的任务,例如文档理解。

        文件转换。为了提高模型在文档理解任务上的性能,我们将文档中的页面呈现为图像,并将图像与其各自的文本配对。文档文本可以直接从源代码获得,也可以通过文档解析管道获得。

        安全。我们主要关注于确保图像识别的预训练数据集不包含不安全的内容,例如性虐待材料(CSAM) (Thiel, 2023)。我们使用感知哈希方法(如PhotoDNA (Farid, 2021))以及内部专有分类器扫描所有训练图像以获取CSAM。我们还使用专有的媒体风险检索管道来识别和删除我们认为是NSFW的图像-文本对,例如,因为它们包含性或暴力内容。我们认为,在不影响最终模型的有用性的情况下,最小化此类材料在训练数

相关文章:

The Llama 3 Herd of Models 第7部分视觉实验部分全文

第1,2,3部分,介绍、概览和预训练 第4部分,后训练 第5部分,结果 第6部分,推理 7 Vision Experiments 我们进行了一系列的实验,在这些实验中,我们通过一种由两个主要阶段组成的合成方法将视觉识别能力整合到Llama 3中。首先,我们通过在大量图像-文本对上引入和训练两种…...

亚信安慧AntDB-T:使用Brin索引提升OLAP查询性能以及节省磁盘空间

前 言 在这个信息量爆炸的时代,数据库面临着海量数据的挑战,如何提升OLAP业务的查询性能、如何节省磁盘空间等问题已经成为了数据库的痛点之所在。本篇着重介绍亚信安慧AntDB-T中Brin索引的实现过程以及应用在OLAP业务中带来的性能提升和存储降低。 亚…...

web渗透测试常用命令

Web Application TTPs HPING3 DoS hping3 targetiP --flood --frag --spoof ip --destport # --synHydra Online Brute Force hydra -1 ftp -P words -v targetiP ftpDownload HTTP File and Execute...

Kylin系列(二)使用

接上一章《Kylin系列(一)入门》 1. Kylin使用 1.1. 数据准备 1.1.1. 数据导入 在使用Apache Kylin时,数据导入是一个非常重要的环节,因为它直接影响到Kylin的性能、稳定性和易用性。以下是关于Apache Kylin数据导入的一些详细介绍: 导入数据的准备 在开始导入数据之前…...

CI/CD——CI持续集成实验

目录 一. 安装Docker 二. 部署Jenkins 三. 配置邮箱 四. Harbor部署 五. Nexus Repository部署 五. sonarqube安装 六. 配置Docker 七. jenkins系统配置sonarqube 八. 配置pipeline 九. 构建并集成 一. 安装Docker docker-ce镜像_docker-ce下载地址_docker-ce安装教程…...

2.4 大模型数据基础:预训练阶段数据详解 ——《带你自学大语言模型》系列

​本系列目录 《带你自学大语言模型》系列部分目录及计划,完整版目录见:带你自学大语言模型系列 —— 前言 第一部分 走进大语言模型(科普向) 第一章 走进大语言模型 1.1 从图灵机到GPT,人工智能经历了什么&#xf…...

Kali Linux——网络安全的瑞士军刀

一、引言 在网络安全的领域中,Kali Linux 宛如一把强大而全能的瑞士军刀,为安全研究人员和专业人士提供了丰富的工具和资源。本文将深入探讨 Kali Linux 的特点、优势、常用工具以及实际应用场景,带您领略这一强大操作系统的魅力。 二、Kal…...

UML建模-测试用例

用例可用于测试系统的正确性和有效性。 正确性表明系统的实现符合规格说明。有效性保证开发的系统是用户真正需要的系统。有效性检查一般在 系统开发之前进行。当用例模型构造完成后,开发者将模型交给用户讨论,由用户检查模型能否满足他们对系统的需求。…...

Python知识点:如何使用Socket模块进行网络编程

Python 的 socket 模块提供了一个底层网络接口,允许你通过编程进行网络通信。使用 socket 模块可以编写客户端和服务器端程序,从而实现数据在网络上的传输。以下是如何使用 socket 模块进行网络编程的详细说明。 1. 创建一个 Socket 首先,你…...

培训第二十一天(mysql用户创建与授权、角色创建)

上午 1、环境准备 [rootmysql ~]# rm -rf /etc/my.cnf //清空/etc目录下的my.cnf[rootmysql ~]# yum -y remove mariadb //移除mariadb[rootmysql ~]# find / -name "*mysql*" -exec rm -rf {} \; //删除mysql所有遗留文件 2、安装mysql绿包 [rootmysql ~]…...

makefile基本语法

在编写复杂的程序项目时,Makefile 是一个非常有用的工具,它能自动化构建过程。以下是一些基本的 Makefile 语法介绍: 基本结构: target: dependenciescommandtarget:构建目标,通常是一个文件,如…...

白骑士的PyCharm教学实战项目篇 4.4 大数据处理与分析

系列目录 上一篇:白骑士的PyCharm教学实战项目篇 4.3 自动化测试与持续集成​​​​​​​ 随着数据量的爆炸性增长,大数据处理与分析成为现代数据科学的重要课题。PyCharm提供了强大的功能,可以帮助开发者高效地进行大数据环境的配置与连接…...

无人机之民用无人机用途分类篇

一、航拍无人机 用于航拍摄影和电影制作,提供空中视角的拍摄服务。可用于电影制作、广告拍摄、房地产销售等。 二、物流无人机 用于快递和货物运输,提高物流效率,可以到达传统配送方式难以覆盖的地区,在突发事件如自然灾害、疫…...

Android10 修改设备名称

A10和A12的设备名称修改是不同的,A10设备名称修改分好几个位置 修改wifi默认名称 在framework/base模块下 diff --git a/core/res/res/values/strings.xml b/core/res/res/values/strings.xml index 9041a7c3a14..7a1e63688c4 100644 --- a/core/res/res/values/…...

go testing 包

Go语言的testing包提供了一套丰富的测试工具,用于编写和运行测试用例。以下是testing包中一些常用的函数和类型: func TestMain(m *testing.M): 这是一个特殊的函数,用于执行测试的主函数。如果定义了TestMain,那么在运行go test时…...

基于phpstudy的靶场搭建和github加速

微软商店下载 watt toolkit,然后在侧边栏选择网络加速,勾选 github,就可以快速访问 github 1、下载搭建 sqlilabs github 找到 sqlilabs 靶场,点击 code,下载 zip解压之后,整体移动到 phpstudy_pro 文件夹…...

【数据结构】Map与Set

前言 前两篇文章我们研究了二叉搜索树与哈希表的结构与特点,他们二者是Map与Set这两个接口实现的底层结构,他们利用了搜索树与哈希表查找效率高这一特点,是一种专门用来进行搜索操作的容器或数据结构。本篇文章就让我们一起来梳理这两个接口的…...

Flamingo: a Visual Language Model for Few-Shot Learning

发表时间:NeurIPS 2022 论文链接:https://proceedings.neurips.cc/paper_files/paper/2022/file/960a172bc7fbf0177ccccbb411a7d800-Paper-Conference.pdf 作者单位:DeepMind Motivation:仅使用少量注释示例可以快速适应新任务…...

flume性能调优

作者&#xff1a;南墨 1.Source性能调优 1.1 Spooldir Source 使用Spooldir Source采集日志数据时&#xff0c;若每行日志数据<100bp&#xff0c;可以通过将多行合并传输来提升传输性能 建议合并时根据数据长度来确定多少行合并为一个单位进行传输&#xff0c;合并后的长…...

mysql 字符串转数组

在 MySQL 中&#xff0c;可以使用内置的字符串函数 SUBSTRING_INDEX() 和 REPLACE() 来实现将字符串转换为数组。 首先&#xff0c;使用 REPLACE() 函数将字符串中的分隔符替换为空格&#xff0c;然后使用 SUBSTRING_INDEX() 函数将字符串按空格分割成多个子字符串。最后&…...

UE基础 —— 术语

目录 Project Blueprint Class Object Actor Casting Component Pawn Character Player Controller AI Controller Player State Game Mode Game State Brush Volume Level World Project 项目&#xff08;Project&#xff09;包含游戏的所有内容&#xff0c…...

kubernets学习笔记——使用kubeadm构建kubernets集群及排错

使用kubeadm构建kubernets集群 一、准备工作1、repo源配置&#xff1a;阿里巴巴开源镜像源2、更新软件包并安装必要的系统工具3、同步时间4、禁用selinux5、禁用交换分区swap6、关闭防火墙 二、安装docker-ce、docker、cri-docker1、安装docker-ce2、开启内核转发&#xff0c;转…...

简述MYSQL聚簇索引、二级索引、索引下推

一丶聚簇索引 InnoDB的索引分为两种&#xff1a; 聚簇索引&#xff1a;一般创建表时的主键就会被mysql作为聚簇索引&#xff0c;如果没有主键则选择非空唯一索引作为聚簇索引&#xff0c;都没有则隐式创建一个索引作为聚簇索引&#xff1b;辅助索引&#xff1a;也就是非聚簇索…...

电脑开机后出现bootmgr is missing原因及解决方法

最近有网友问我为什么我电脑开机后出现bootmgr is missing&#xff0c;这个提示意思是:意思是启动管理器丢失&#xff0c;说明bootmgr损坏或者丢失&#xff0c;系统无法读取到这个必要的启动信息导致无法启动。原因有很多&#xff0c;比如我们采用的是uefi引导&#xff0c;而第…...

2024 年 7 月公链行业研报:市场波动中 Solana 表现抢眼,Layer 2 竞争白热化

作者&#xff1a;Stella L (stellafootprint.network) 数据来源&#xff1a;Footprint Analytics 公链 Research 页面 7 月份&#xff0c;加密货币市场表现活跃&#xff0c;波动幅度较大&#xff0c;这一现象映射了全球金融市场的整体趋势。现货以太坊 ETP 在美国的上市&…...

Python查缺補漏

一、 json.load(s)与json.dump(s)区别 json.loads()将str类型的数据转换为dict类型 json.dumps()将dict类型的数据转成str json.load()从json文件中读取数据 json.dump()将数据以json的数据类型写入文件中 二、json内部要使用双引号 data """{ "fruit&qu…...

c++的类和对象(中):默认成员函数与运算符重载(重难点!!)

前言 Hello, 小伙伴们&#xff0c;我们今天继续c的学习&#xff0c;我们上期有介绍到c的部分特性&#xff0c;以及一些区别于c语言的地方&#xff0c;今天我们将继续深入了解c的类和对象&#xff0c;探索c的奥秘。 好&#xff0c;废话不多说&#xff0c;开始我们今天的学习。…...

Android .kl按键布局文件

1.介绍 一个硬件按键的处理流程大致为&#xff1a;当用户按下或释放一个键时&#xff0c;键盘硬件会生成一个扫描码scan code&#xff0c;然后操作系统读取这个scan code&#xff0c;并将scan code扫描码映射到虚拟键码key code&#xff0c;最后操作系统根据映射的keycode生成…...

Java每日一练_模拟面试题6(JVM的GC过程)

一、JVM虚拟机组成 JVM五大内存区域&#xff1a;程序计数器&#xff0c;Java虚拟机栈&#xff0c;本地方法栈&#xff0c;java堆&#xff0c;方法区。 堆被划分为两个区域&#xff1a;年轻代(Young)、老年代(Tenured)。年轻代又被划分为三个区域&#xff1a;Eden、From Surviv…...

数据防泄密软件推荐|(6大数据防泄密软件推荐!)

很多朋友在后台私信&#xff0c;什么是数据防泄密软件&#xff0c;有哪些数据防泄密软件推荐。 今天小编将从定义出发&#xff0c;深入浅出地介绍这一技术的工作原理、应用场景以及实现方式。 一、什么是文档透明加密&#xff1f; 文档透明加密是一种在用户无感知的情况下对文…...