【论文阅读】Generative Pretraining from Pixels

Generative Pretraining From Pixels

引用: Chen M, Radford A, Child R, et al. Generative pretraining from pixels[C]//International conference on machine learning. PMLR, 2020: 1691-1703.

论文链接: http://proceedings.mlr.press/v119/chen20s.html

简介

受自然语言中无监督表示学习进展的启发,作者研究了类似的模型是否能够学习图像的有用表示,训练了一个序列Transformer来自回归地预测像素,而不包含2D输入结构的知识。尽管是在低分辨率的ImageNet上进行训练,没有标签,但实验发现一个GPT-2规模的模型通过线性探测、微调和低数据分类学习,学习到了强大的图像表示。在CIFAR-10上,使用线性探测达到了96.3%的准确率,超过了监督的Wide ResNet,全微调达到了99.0%的准确率,与顶级监督预训练模型相匹配。同时,作者还在ImageNet上与自监督基准进行了比较,通过将像素替换为VQVAE编码,在线性探测特征时达到了69.0%的top-1准确率。

Method

论文的方法包括预训练阶段和微调阶段。在预训练中,探索了auto-regressive和BERT,还应用序列Transformer架构来预测像素,而不是语言标记。而测量表征质量的一种方法是对图像分类进行微调。微调为模型添加了一个小的分类头,用于优化分类目标并调整所有权重。当与早停结合使用时,预训练可以被视为一种有利的初始化或正则化。另一种方法则使用预先训练的模型作为特征提取器。特别地,给定标记的示例(X,Y),将模型应用于X以产生特征fx。然后,在(fx,Y)上训练线性分类器。线性探测源自一种直觉,即好的特征应该线性地分离转移任务的类别。此外,线性探测有助于将特征质量与模型架构区分开来:在微调中,一个模型可能优于另一个模型,因为它的架构更适合下游任务,而不是因为更好的预训练。

Pre-training

给定由高维数据 X = ( x 1 , . . . , x n ) X=(x_1,...,x_n) X=x1,...,xn组成的未标记数据集 X X X,可以选择集合 [ 1 , n ] [1,n] [1n]的排列π,并对密度 p ( x ) p(x) p(x)进行自回归建模:

当处理图像时,选择 1 ≤ i ≤ n 1≤i≤n 1in的单位置换 π i = i π_i=i πi=i,也称为光栅顺序。通过最小化数据的负对数似然来训练模型:

对于BERT目标,其采样为子序列 M ⊂ [ 1 , n ] M⊂[1,n] M[1n],使得每个索引 i i i独立地具有出现在 M M M中的概率为0.15。称 M M M为BERT掩码,并且通过最小化以“未掩码”为条件的“掩码”元素 x M x_M xM的负对数似然来训练模型:

Architecture

transformer decoder取一个输入序列 x 1 , . . . , x n x_1,...,x_n x1,...,xn,并为每个位置产生 d d d维嵌入。解码器被实现为 L L L个块的堆栈,其中第 l l l个产生中间嵌入 h l 1 , . . . , h l n h_l^1,...,h_l^n hl1,...,hln也是维数d。我们使用transformer decoder块的GPT-2公式,它作用于输入张量 h l h_l hl如下:

特别地,**层规范在注意力机制和MLP之前,并且所有运算都位于残差路径上。**这样的配置可以轻松地缩放transformer。

序列元素之间的唯一混合发生在注意力操作中,为了确保在训练AR目标时进行适当的调节,将标准的上三角掩码应用于注意力逻辑的n×n矩阵。当使用BERT目标时,不需要注意logit掩蔽:在将内容嵌入应用于输入序列之后,将M中的位置清零。

此外,由于学习了每个序列元素的独立位置嵌入,BERT模型没有位置归纳偏差(即它是置换不变的)。换句话说,位置之间的任何空间关系都必须由模型在训练时学习。对于AR模型来说,这并不完全正确,因为选择光栅顺序也会修复预先指定的条件顺序。然而,置换不变性是与卷积神经网络形成强烈对比的一种特性,卷积神经网络包含了特征应该从空间上接近的元素产生的归纳偏差。

Fine-tuning

当进行微调时,我们对序列的 n L n^L nL维度进行平均池化,以提取每个示例的特征的d维向量。然后,学习从 f L f_L fL到类别的logits的投影,使用它来最小化交叉熵损失。

Linear Probing

为线性探测提取固定特征遵循与微调类似的过程,只是平均池化并不总是在最后一层:

其中0≤l≤l。实验表明,最佳特征通常位于网络的中间。在微调中,投影这些中间特征以产生类logits。

实验

在这里插入图片描述

表征质量在很大程度上取决于提取特征的层。与监督模型相比,这些生成模型的最佳表征位于网络的中间层。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/724082.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

LeetCode --- 三数之和

题目描述 三数之和 代码解析 暴力 在做这一道题的时候,脑海里先想出来的是暴力方法,一次排序,将这个数组变为有序的,再通过三次for循环来寻找满足条件的数字,然后将符合条件的数组与之前符合条件的数组进行一一对比…

2024.3.6补题

1.关鸡 对于这一道题,我们先按照题意进行分析:首先鸡自己的初始位置,如果着火点在鸡一开始的左右下各有一个那么就可以达到题目效果,也就是说不需要添加着火点,同时最多需要添加的着火点其实也就是它初始位置身边所有的…

Optional 详解

Optional 详解 1、Optional 介绍2、创建 Optional 对象3、Optional 常用方法1. 判断值是否存在 — isPresent()2. 非空表达式 — ifPresent()3. 设置(获取)默认值 — orElse()、orElseGet()4. 获取值 — get()5. 过滤值 — filter()6. 转换值 — map() 作为一名 Java 程序员&am…

电子电器架构刷写策略 —— 队列刷写

电子电器架构刷写策略 —— 队列刷写 我是穿拖鞋的汉子,魔都中坚持长期主义的汽车电子工程师。 老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师: 屏蔽力是信息过载时代一个人的特殊竞争力,任何消耗你的人和事,多看一眼都是你的不对。非必要不费力证明自己…

EasyX的学习2

消息处理——漂亮的按钮(鼠标) 用到的函数 1.消息结构体变量类型:使用ExMessage ExMessage msg{ 0 }; 定义一个变量名为msg的ExMessage结构体变量并初始化为0 2.获取消息函数:peekmessage函数 //获取消息 peekmessage(&msg, EX_MOUSE); 两个参…

【Linux】基本指令(中)

🦄个人主页:修修修也 🎏所属专栏:Linux ⚙️操作环境:Xshell (操作系统:CentOS 7.9 64位) 目录 man指令 cp指令 mv指令 cat指令 more指令 less指令 head指令 …

如何对酒店开展科学的定岗定编——以酒店健身房、娱乐房为例

近年来,随着旅游行业的快速发展,也带动了酒店业的兴盛。酒店的经营效益不仅受益于旅游业,同时也受制于旅游行业。由于旅游业存在明显的季节性差异,旅游旺季客流量多、淡季客流量少,造成人员忙闲不均的问题。酒店行业也…

gofly接口入参验证使用介绍

接口传入的参数做相关性质验证是开发中较为常用,gofly框架内置校验工具,提供开发效率,开发接口简单调用即可实现验证,下面介绍gofly框架数据验证设计思路及使用方法。 gofly框架提供了功能强大、使用便捷、灵活易扩展的数据/表单…

闰年导致的哪些 Bug

每次闰年对程序员们都是一个挑战,平时运行好好的系统,在 02-29 这一天,好像就会有各种毛病。 虽然,提前一天,领导们都会提前给下面打招呼。但是,不可避免的,今天公司因为闰年还是有一些小故障。…

Linux conntrack和iptables技术解析

Linux虚拟文件系统管理技术 1. netfilter解析1.1 netfilter的基础原理1.2 netfilter的相关hook 2. conntrack解析2.1 conntrack的基础原理2.2 conntrack的表记录解析 3. iptables解析3.1 iptables基础原理3.2 融合conntrack表的iptables规则 4. 疑问和思考4.1 conntrack和iptab…

医学知识和医疗应用开发交叉领域中垂类大语言模型应用相关研究

前言: 基于公司对LLM落地的期望,此proposal尚未研究完毕,只是简单做了一些消息整合和建议。 关于知识细节详见末尾Refs 背景: 随着LLM(大语言模型)的爆火,不少企业都在寻找通过LLM解决企业业…

【学习笔记】java项目:黑马头条(day01)

文章目录 环境搭建、SpringCloud微服务(注册发现、服务调用、网关)1)课程对比2)项目概述2.1)能让你收获什么2.2)项目课程大纲2.3)项目概述2.4)项目术语2.5)业务说明 3)技术栈4)nacos环境搭建4.1)虚拟机镜像准备4.2)nacos安装 5)初始工程搭建5.1)环境准备5.2)主体结构 6)登录6.1…

Linux网络隧道协议IPIP认知(基于Linux network namespace 的 IPIP 隧道通信)

写在前面 博文内容为 Linux 隧道通信 IPIP认知内容涉及:ipip 介绍,一个 ipip 通信 Demo 以及数据帧流转分析理解不足小伙伴帮忙指正 某些人和事,哪怕没有缘分,是路边的风景,可是只要看一眼,依然会让人觉得…

高转化利器】Xinstall实现H5唤醒App,打开指定页面,轻松满足营销需求!

在移动互联网时代,App的拉新促活对于企业的发展至关重要。为了提升用户体验和转化率,Xinstall推出了一项强大的功能——H5唤醒App。通过这一功能,用户可以直接从Web页面拉起App,并在拉起过程中通过传参打开指定页面,满…

QT在scrollArea中添加按钮,可滚动

添加按钮可滚动,同时设置按钮大小,代码如下 ui->setupUi(this); //在UI里面已经拖了一个scrollAreamyWidget new QWidget(this); //新建一个QWidget放在scrollArea中QVBoxLayout *layout new QVBoxLayout(…

手工将一个 llvm IR 汇编代码解析成为 bitcode 文件

1&#xff0c;原始c语言文件 sum.c int sum(int a, int b) {return ab; } 2&#xff0c;编译成为 LLVM-IR 汇编语言 clang sum.c -emit-llvm -S -c -o sum.ll 3&#xff0c;手工把 llvm IR 汇编语言解析成 bitcode 3.1&#xff0c;源码 gen_llvm_ir.cpp #include <ll…

Sora:AI视频模型的无限可能与挑战

随着人工智能技术的突飞猛进&#xff0c;AI视频模型已成为科技领域的新焦点。OpenAI推出的AI视频模型Sora&#xff0c;凭借其卓越的技术性能和前瞻性&#xff0c;为AI视频领域的发展揭开了新的篇章。本文将从技术解析、应用场景、未来展望、伦理与创意以及用户体验与互动五个方…

Xilinx高级调试方法--远程调试

Xilinx高级调试方法--远程调试 1 虚拟电缆调试2 FPGA设计2.1 扩展配置接口 3 PCIe-XVC驱动3.1 PCIe-XVC驱动3.2 XVC-Server 4 Vivado Design Suite4.1 同一台主机4.2 不同主机 本文主要介绍Xilinx的一些高级调试方法&#xff0c;以及如何使用Xilinx的相关IP。 1 虚拟电缆调试 …

数据结构(二)——线性表

二、线性表 2.1线性表的定义和基本操作 2.1.1 线性表的基本概念 线性表&#xff1a;是具有相同数据类型的 n 个数据元素的有限序列。(Eg:所有的整数按递增次序排列&#xff0c;不是顺序表&#xff0c;因为所有的整数是无限的)其中n为表长&#xff0c;当n0时线性表是一个空表…

AI领域再出“王炸“----Claude3是否会成为下一个“神“

目录 一.Claude3最新发布 二.Claude3支持20万token 三.Claude3在未公开算法上取得重大突破 1.Claude 3读懂博士论文 2.量子跃迁集成&#xff1a; Claude 3智商&#xff1a;101 测试方法 测试细节 通过Karpathy挑战 Claude 3自画像&#xff0c;突破本我 从洛杉矶排到…