POUF: Prompt-oriented unsupervised fine-tuning for large pre-trained models

Motivation

通过提示,大规模预训练模型变得更具表现力和强大,近年来引起了人们的极大关注。虽然这些大型模型具有zero-shot能力,但一般来说,仍然需要标记数据来使它们适应下游任务。为了克服这一关键限制,我们提出了一个无监督微调框架,直接对模型进行微调或对未标记的目标数据进行提示。演示了如何通过对齐从提示和目标数据中提取的离散分布来将本文方法应用于语言增强视觉和掩码语言模型。为了验证我们的方法的适用性,我们在图像分类、情感分析和自然语言推理任务上进行了大量的实验。在13个与图像相关的任务和15个与语言相关的任务中,所提出的方法在基线上实现了一致的改进。

1. Introduce

预训练和微调范式已经成为解决许多机器学习应用的标准方法。在此范例中,首先在大量数据集上对模型进行预训练。虽然模型在预训练期间可能会看到许多示例,但目标数据集可能包含未见过的具有新变化的示例。为了解决源域和目标域之间的分布转移问题,使用特定于任务的参数和目标函数对不同下游任务的预训练模型进行微调。然而,这个微调阶段通常需要标记的例子,这是昂贵的获取,使预训练的模型适应特定的任务。

最近的基础模型,如CLIP 、ALIGN 和GPT-3 ,在未引入任务特定参数和目标函数进行微调的情况下,利用预训练期间语言监督的力量,通过语言提示执行zero-shot概率预测。例如,要对新数据集进行预测,用户只需要将类名转换为文本提示,例如“a photo of a {class}.”。然后通过获得与给定图像产生最高相似性分数的提示来进行预测。尽管有能力执行zero-shot预测,但分布移位问题仍然存在。

最近的方法侧重于提示工程,以使这些模型适应下游任务。提示工程是指寻找最合适的提示以允许语言模型解决手头任务的过程。许多方法专注于离散提示搜索(在语言模型的词汇表空间中查找提示)。由于提示的可解释性往往不如模型的性能重要,各种方法提出使用连续提示符,在模型的嵌入空间中进行提示。值得注意的是,在词嵌入空间中引入连续参数,并通过最大化模型在标记目标数据上的似然来优化它们。虽然这些方法成功地适应了预训练的模型,但它们仍然需要一些带注释的样本。

为了克服这一限制,我们提出了提示导向的无监督微调(POUF),这是一个简单而有效的框架,用于直接在未标记的目标数据上微调具有zero-shot能力的预训练的基于提示的大型模型。我们将无监督微调表述为最小化文本原型的经验分布与目标特征之间的统计距离的过程。我们的框架依赖于语言提示来根据模型类型构建类原型或目标特性。对于语言增强视觉模型,我们将特定于类的语言提示(类原型)的表示与潜在空间中的目标图像特征对齐。对于掩码语言模型,我们从语言提示中提取掩码标记表示,并将它们与语言模型解码器头部的文本原型对齐。通过对齐这些分布,预训练模型可以更好地捕获目标数据中的变化。为此,我们利用基于传输的对齐和互信息最大化目标函数来对齐潜在表征。我们提出的方法兼容全模型调优和提示调优。

我们的贡献包括:1)我们提出了一个提示导向的框架,用于直接在未标记的目标数据上微调具有zero-shot能力的预训练模型。2)我们阐述了如何在语言增强视觉模型和掩码语言模型下构建POUF,并证明了其在图像分类、情感分析和自然语言推理等实际任务中的有效性。3)我们进行了广泛的消融研究,以证明我们方法的设计决策是合理的。

2. 面向提示的无监督微调

由于观察到类原型表示源域信息(用于预训练的数据),建议将它们与潜在空间中的目标表示对齐。图1提供了使用我们的方法在不同模型上学习到的潜在特征的激励示例。很明显,在应用我们的方法之前,文本原型没有很好地与目标特征对齐,而在应用POUF之后,原型和目标特征对齐得很好。POUF的示意图如图2所示。

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

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

初级数据结构——栈题库(c++)

目录 前言1.杭电oj——Bitset2.杭电oj——进制转换[3.力扣——LCR 123. 图书整理 I](https://leetcode.cn/problems/cong-wei-dao-tou-da-yin-lian-biao-lcof/description/)[4.力扣——LCR 027. 回文链表](https://leetcode.cn/problems/aMhZSa/)[5.力扣——1614. 括号的最大嵌…

数字化转型企业架构设计手册(交付版),企业数字化转型建设思路、本质、数字化架构、数字化规划蓝图(PPT原件获取)

1、企业架构现状分析 2、企业架构内容框架 3、企业架构设计方法 3.1 、业务架构设计方法 3.2 、数据架构设计方法 3.3 、应用架构设计方法 3.4 、技术架构设计方法 软件全套资料部分文档清单: 工作安排任务书,可行性分析报告,立项申请审批表&…

⾃动化运维利器Ansible-基础

Ansible基础 一、工作原理二、快速入门2.1 测试所有资产的网络连通性2.2 发布文件到被管理节点(资产) 三、资产(被管理节点)3.1 静态资产3.1.1 自定义资产3.1.2 自定义资产的使用3.1.3 资产选择器 四、Ansible Ad-Hoc 命令4.1 模块类型4.1.1 command & shell 模块4.1.2 cop…

鸿蒙NEXT自定义组件:太极Loading

【引言】(完整代码在最后面) 本文将介绍如何在鸿蒙NEXT中创建一个自定义的“太极Loading”组件,为你的应用增添独特的视觉效果。 【环境准备】 电脑系统:windows 10 开发工具:DevEco Studio NEXT Beta1 Build Vers…

AVL树了解并简单实现

这篇文章默认知道二叉搜索树,如果了解并不多可以先看看二叉搜索树了解和实现-CSDN博客 目录 1.AVL树概念 2.AVL树节点定义 3.AVL树的插入(重点) 3.1AVL树 3.2AVL树的旋转 3.3AVL树插入代码 4.AVL树的验证 5.AVL树的删除 6.AVL树的性能…

【MySQL】索引原理及操作

目录 索引原理 初识索引 磁盘原理 磁盘与系统之间的关系 MySQL、系统、磁盘之间的关系 理解索引 页目录 页目录设计的数据结构问题 聚簇索引与非聚簇索引 遗留问题 索引操作 创建索引 查询索引 删除索引 其他索引概念与操作 索引原理 索引(I…

代码随想录算法训练营第三十一天| 56. 合并区间 、738.单调递增的数字 。c++转java

56. 合并区间 class Solution {public int[][] merge(int[][] intervals) {//对区间按照右边界排序Arrays.sort(intervals,(a,b) -> Integer.compare(a[0],b[0]));List<int[]> p new LinkedList<>();int l intervals[0][0],r intervals[0][1];for(int i 1;i…

厦大南洋理工最新开源,一种面向户外场景的特征-几何一致性无监督点云配准方法

导读 本文提出了INTEGER&#xff0c;一种面向户外点云数据的无监督配准方法&#xff0c;通过整合高层上下文和低层几何特征信息来生成更可靠的伪标签。该方法基于教师-学生框架&#xff0c;创新性地引入特征-几何一致性挖掘&#xff08;FGCM&#xff09;模块以提高伪标签的准确…

模型运行速度笔记: s/epoch VS s/iter

1 概念介绍 在模型训练中&#xff1a; s/epoch 表示每个epoch所需的秒数&#xff0c;即完成一轮完整数据集训练的时间。s/iter 表示每个iteration&#xff08;迭代&#xff09;所需的秒数&#xff0c;即处理一个batch的时间。 它们的关系是&#xff1a; 2 举例 比如我tra…

k8s 中传递参数给docker容器

文章目录 docker启动时传递参数使用k8s env传递完全覆盖 ENTRYPOINT 和 CMD 在 Kubernetes 中&#xff0c;可以通过多种方式将参数传递给 Dockerfile 或其运行的容器&#xff0c;常见的方式包括使用环境变量、命令行参数、配置文件等。以下是一些常用的方法&#xff1a; docker…

Map Set

在学习TreeMap和TreeSet之前需要先学习有关搜索树的相关知识以及接口Map和Set。 1. 搜索树 1.1 概念 二叉搜索树又称二叉排序树&#xff0c;其特点是&#xff0c;该节点的左边都比其小&#xff0c;右边都比其大&#xff0c;每一棵子树都必须满足这个条件。如下图所示例子。2…

Android OpenGLES2.0开发(八):Camera预览

严以律己&#xff0c;宽以待人 引言 终于到该章节了&#xff0c;还记得Android OpenGLES2.0开发&#xff08;一&#xff09;&#xff1a;艰难的开始章节说的吗&#xff1f;写这个系列的初衷就是因为每次用到GLSurfaceViewCamera预览时&#xff0c;总是CtrlC、CtrlV从来没有研究…

基础 IO

目录 一、基本共识 二、复习C语言中的文件操作 三、与文件操作有关的系统调用接口 1. open 与 close 1.1 umask 2. write 3. read 四、如何理解文件 1. 文件描述符 fd 2. 文件fd分配规则 3. 重定向的引入 4. 重定向的本质 5. dup2 6. 理解 >、>>、…

ThriveX 博客管理系统前后端项目部署教程

前端 前端项目地址&#xff1a;https://github.com/LiuYuYang01/ThriveX-Blog 控制端项目地址&#xff1a;https://github.com/LiuYuYang01/ThriveX-Admin Vercel 首先以 Vercel 进行部署&#xff0c;两种方式部署都是一样的&#xff0c;我们以前端项目进行演示 首先我们先…

[含文档+PPT+源码等]精品基于springboot实现的原生Andriod手机使用管理软件

软件开发环境及开发工具&#xff1a; 数据库管理工具&#xff1a;phpstudy/Navicat或者phpstudy/sqlyog 开发工具&#xff1a;Android Studio 后台管理系统涉及技术&#xff1a; 后台使用框架&#xff1a;Springboot 前端使用技术&#xff1a;Vue,HTML5,CSS3、JavaScript等…

华为三层交换机禁止VLAN间通讯(两种解决方案)

在日常办公中&#xff0c;有时会禁止内网中各个部门间的访问&#xff0c;例如&#xff1a; ①访客不能访问内网任何终端及服务器 ②财务部门不能被其他部门访问 实验环境&#xff1a;华为Ensp模拟器 内网架构&#xff1a;三层网络 环境说明&#xff1a;三层交换机承载着网…

为以人工智能为中心的工作负载重新设计的全局控制台

MinIO 控制台多年来一直是一个不断发展的产品。每次学习时&#xff0c;我们都会思考如何改进交互框架中这个非常重要的部分。首先是控制台&#xff0c;它在推出后的一年内就被广泛采用。更具体地说&#xff0c;超过 10K 个组织。接下来是企业控制台。这从对象存储与其 GUI 之间…

stm32在linux环境下的开发与调试

环境安装 注&#xff1a;文末提供一键脚本 下载安装stm32cubeclt 下载地址为&#xff1a;https://www.st.com/en/development-tools/stm32cubeclt.html 选择 linux版本下载安装 安装好后默认在家目录st下 > $ ls ~/st/stm32cubeclt_1.16.0 …

【leetcode】N皇后 回溯法c++

目录 51.N皇后 52.N皇后II 51.N皇后 51. N 皇后 - 力扣&#xff08;LeetCode&#xff09; 按照国际象棋的规则&#xff0c;皇后可以攻击与之处在同一行或同一列或同一斜线上的棋子。 n 皇后问题 研究的是如何将 n 个皇后放置在 nn 的棋盘上&#xff0c;并且使皇后彼此之间…

GESP4级考试语法知识(贪心算法(六))

寻找平面上的极大点代码 #include<iostream> #include<algorithm> using namespace std; struct node {int x,y; }a[101]; bool vis[101]; bool cmp(node A,node B) {if(A.x!B.x) return A.x<B.x;return A.y<B.y; } int main() {int n;cin>>n;for(int…