探索 Transformer²:大语言模型自适应的新突破
目录
一、来源:
论文链接:https://arxiv.org/pdf/2501.06252
代码链接:SakanaAI/self-adaptive-llms
论文发布时间:2025年1月14日
二、论文概述:
图1 Transformer² 概述
图2 训练及推理方法概述
图3 基于提示的自适应
图4 奇异值微调(SVF)学习曲线
图5 视觉语言模型(VLM)领域的结果
三、总结
一、来源:
论文链接:https://arxiv.org/pdf/2501.06252
代码链接:SakanaAI/self-adaptive-llms
论文发布时间:2025年1月14日
二、论文概述:
Transformer² 的发布在性能提升、成本降低等方面展现出优势,有可能像 Transformer 当初一样带来新一轮技术革命,推动大模型技术进一步发展。
作者表示,这项研究为人们提供了一个未来 AI 模型不再静态的初步展望。这些系统将在测试时动态地调整其计算能力,以适应它们所遇到任务的复杂性,体现出能够持续变化和终生学习的”活“的智能。
Transformer² 主要具备以下三大亮点:
- 奇异值微调(SVF)
- 使用 SVF 和 RL 进行训练
- 自适应策略
接下来我们从论文中寻找他的技术细节,对Transformer²进行初步的探究。
正如图 1 所示,在训练时,Transformer²会精心调整权重矩阵的奇异值以获得‘专家’向量,这些向量在后续的推理过程中发挥着关键作用。在推理的第一阶段,模型依据任务特性调用合适的专家向量,为生成准确答案奠定基础,第二阶段则完成最终的答案生成。
图1 Transformer² 概述
从图 2 中我们能深入了解其构建过程。在训练环节(左图),SVF 与 RL 协同工作,学习得到具有针对性的专家向量。而在推理阶段(右图),Transformer² 提供了三种灵活的方法来应对不同的任务需求,如基于提示的方法通过巧妙构建提示来筛选专家向量,基于任务分类器的方法利用专门训练的分类器提高任务识别能力,基于混合的方法则通过创新的线性插值和 CEM 搜索实现更精准的自适应组合。
图2 训练及推理方法概述
Transformer²共有三种自适应策略,分别是
-
基于提示的适应:通过提示词,对任务进行分类并选择预训练的 z 向量。
-
基于分类器的适应:使用 SVF 训练的任务分类器,在推理中识别任务并选择合适的 z 向量。
-
少样本适应:通过加权插值组合多个预训练的 z 向量。根据少样本评估集上的性能调整权重。
其中从图 3 中可以清晰地看到,Transformer² 利用一种特殊的自适应提示,其核心目的是将接收到的任务提示分类到预定义的类别之中。这就好比为不同的任务提示找到了它们各自对应的 “收纳箱”,让模型能够更高效地处理这些信息。
举例来说,当用户输入一个关于数学计算的任务提示时,自适应提示会迅速将其归类到数学相关的预定义类别中,然后模型就能精准地调用擅长数学任务的 “专家” 向量,给出准确的计算结果或解决方案。
图3 基于提示的自适应
在探究 Transformer² 中奇异值微调(SVF)的效果时,图 4 为我们呈现了关键信息。从图中可以看到,那些虚线代表着 LLAMA3 - 8B INSTRUCT 在每个任务测试集上的性能表现。而 SVF 的强大之处在于,它通过有效的微调,成功地超越了基础性能。
为了更全面地展示 SVF 的学习能力,作者不仅展示了最终用于评估的最佳验证分数对应的检查点(用醒目的红点标记),还给出了完整的训练曲线,没有采用提前停止的策略。这意味着我们能清晰地看到 SVF 在整个训练过程中的学习进展。
图4 奇异值微调(SVF)学习曲线
同时,作者使用 SVF 对 LLAMA3 - LLAVA - NEXT - 8B 进行微调,使基础模型的性能提升超过 39%(见图 5)。为确保公平比较,在附录 4.3 中针对不同架构和优化目标,对模型和 LoRA 基线进行了广泛的消融实验。由于其关键的参数化方式,训练 SVF 所需资源大幅减少,其训练参数不到作者LoRA 实现的 10%。
(读论文看到这里我想到了刚发布的deepseekv3,其不仅在性能上霸榜,更是在训练效率上遥遥领先,值得大家关注!)
图5 视觉语言模型(VLM)领域的结果
当然,既然比其他模型多出了自适应功能,那么就需要相应的计算,作者解释:"表 1 报告了 Transformer² 的提示自适应策略所需的推理时间,其中分别列出了第一遍和第二遍解决整个问题集所花费的时间。请注意,第二遍推理时间是解决问题所花费的时间,第一遍推理时间是自适应所花费的时间,第一遍与第二遍推理时间的比率在括号内。虽然额外的一遍推理可能看似使总体运行时间翻倍,但重要的是要注意,推理时间主要取决于生成的令牌数量。在我们的设定中,它是O(n),其中是输入的长度。ARC-challenge 的成本比率较大,因为它们是单项选择题,因此第二遍的成本也是O(n) 。在一般情况下,我们认为假设这个比率更接近 MATH 和 Humaneval 的比率是合理的。"
三、总结:
在本文中,作者介绍了 Transformer²,为实现自适应大语言模型(LLMs)提供了一个全新蓝图。在此框架内,首先提出了奇异值微调(SVF)方法,与先前的微调方法相比,它性能更优,同时成本更低、组合性更强,还能对过拟合进行正则化处理 —— 这些都是实现可扩展自适应的关键特性。以一组 SVF 专家向量作为构建模块,我们开发了三种有效的自适应策略,每种策略都有独特优势,并且随着对测试时条件了解的增多,能带来持续的性能提升。
尽管 Transformer² 取得了令人瞩目的成果,但未来仍有诸多令人期待的研究方向。其局限性之一在于,SVF 专家向量的能力与基础模型的潜在组件紧密相关。为解决这一问题,模型融合提供了一个颇具前景的方向,它能将专门化的模型合并为一个能力更强的单一模型。此外,虽然我们基于交叉熵方法(CEM)的自适应策略能有效平衡性能与效率,但扩展到大量特定领域可能会导致一次性计算成本增加。不过,性能提升和自适应能力增强带来的好处抵消了这种权衡。模型融合和高效自适应技术的进步催生了在公开排行榜上名列前茅的模型,使其成为 Transformer² 基础模型的有力候选,为自适应大语言模型开辟了新的可能性。
相关文章:

探索 Transformer²:大语言模型自适应的新突破
目录 一、来源: 论文链接:https://arxiv.org/pdf/2501.06252 代码链接:SakanaAI/self-adaptive-llms 论文发布时间:2025年1月14日 二、论文概述: 图1 Transformer 概述 图2 训练及推理方法概述 图3 基于提示的…...

Flutter 多终端测试 自定义启动画面 更换小图标和应用名称
多终端测试 flutter devices flutter run -d emulator-5554 flutter run -d emulator-5556 自定义启动画面 之前: 进入assert 3x 生成 1x 2x dart run flutter_native_splash:create dart run flutter_native_splash:remove 现在(flutter_nativ…...
rsarsa-给定pqe求私钥对密文解密
题目: Math is cool! Use the RSA algorithm to decode the secret message, c, p, q, and e are parameters for the RSA algorithm.p 96484230290105156765905517400104265349457376392357398006439893520398525072984913995610350091634270503701075707336333…...

flutter开发-figma交互设计图可以转换为flutter源代码-如何将设计图转换为flutter源代码-优雅草央千澈
flutter开发-figma交互设计图可以转换为flutter源代码-如何将设计图转换为flutter源代码-优雅草央千澈 开发背景 可能大家听过过蓝湖可以转ui设计图为vue.js,react native代码,那么请问听说过将figma的设计图转换为flutter源代码吗?本文优雅草央千澈带…...

Deep4SNet: deep learning for fake speech classification
Deep4SNet:用于虚假语音分类的深度学习 摘要: 虚假语音是指即使通过人工智能或信号处理技术产生的语音记录。生成虚假录音的方法有"深度语音"和"模仿"。在《深沉的声音》中,录音听起来有点合成,而在《模仿》中…...

3 前端: Web开发相关概念 、HTML语法、CSS语法
文章目录 前言:导学1 Web开发相关概念2 Web标准(网页标准)3 软件架构(CS/BS)(1)C/S: Client/Server 客户端 / 服务器端(2)B/S: Browser/Server 浏览器 / 服务器端VSCode配置前段开发环境一、HTML概念1 概念2 HTML快速入门(1)语法快速入门(2)VSCode一个 !(快捷键…...

SpringBoot工程快速启动
1.问题导入 以后我们和前端开发人员协同开发,而前端开发人员需要测试前端程序就需要后端开启服务器,这就受制于后端开发人员。 为了摆脱这个受制,前端开发人员尝试着在自己电脑上安装 Tomcat 和 Idea ,在自己电脑上启动后端程序&a…...
Unity WebGL:本机部署,运行到手机
Unity WebGL 简单介绍一下Unity WebGL的技术方案,在WebGL平台出包后,Unity的运行时C/C代码是通过Emscripten编译成了WebAssembly/Wasm;游戏逻辑部分的C#代码是先通过il2cpp转成C再编译转成的Wasm,Unity程序就就可以在支持WebAsse…...
【线性代数】行列式的概念
d e t ( A ) ∑ i 1 , i 2 , ⋯ , i n ( − 1 ) σ ( i 1 , ⋯ , i n ) a 1 , i 1 a 2 , i 2 , ⋯ , a n , i n det(A) \sum_{i_1,i_2,\cdots,i_n } (-1)^{\sigma(i_1,\cdots,i_n)} a_{1,i_1}a_{2,i_2},\cdots, a_{n,i_n} det(A)i1,i2,⋯,in∑(−1)σ(i1,⋯,in)a1…...
Android SystemUI——StatusBar视图创建(六)
上一篇文章我们介绍了 StatusBar 的构建过程,在 makeStatusBarView() 中获得 FragmentHostManager,用来管理 StatusBar 的窗口。 一、状态栏视图 在得到 FragmentHostManager 实例对象之后,还会继续调用 addTagListener() 方法设置监听对象,然后获取 FragmentManager 并开…...
Picocli 命令行框架
官方文档 https://picocli.info/ 官方提供的快速入门教程 https://picocli.info/quick-guide.html 使用 Picocli 创建命令行应用程序 Picocli 是一个用于构建 Java 命令行应用的强大框架,它简化了参数解析和帮助消息生成的过程。 下面是如何使用 Picocli 构建简单命…...
spring-cloud-starter-gateway 使用中 KafkaAppender的问题
公司需要将应用日志上报到kafka,以供分析与查看。 结合logback可以完成此功能,大致配置如下: <appender name"KafkaAppender" class"com.github.danielwegener.logback.kafka.KafkaAppender"><encoder class&…...

【全套】基于分类算法的学业警示预测信息管理系统
【全套】基于分类算法的学业警示预测信息管理系统 【摘 要】 随着网络技术的发展基于分类算法的学业警示预测信息管理系统是一种新的管理方式,同时也是现代学业预测信息管理的基础,利用互联网的时代与实际情况相结合来改变过去传统的学业预测信息管理中…...
Elasticsearch Python 客户端是否与自由线程 Python 兼容?
作者:来自 Elastic Quentin_Pradet 在这篇文章中,我们将进行一些实验,看看 Python Elasticsearch 客户端是否与新的 Python 3.13 自由线程(free-threading)版本兼容,其中 GIL 已被删除。 介绍 但首先&…...

基于大语言模型的组合优化
摘要:组合优化(Combinatorial Optimization, CO)对于提高工程应用的效率和性能至关重要。随着问题规模的增大和依赖关系的复杂化,找到最优解变得极具挑战性。在处理现实世界的工程问题时,基于纯数学推理的算法存在局限…...

#CSS混合模式:解决渐变背景下的文字可见性问题
在现代网页设计中,渐变背景的使用越来越普遍。然而,当我们在渐变背景上放置文字时,常常会遇到一个问题:文字在某些背景颜色下可能变得难以阅读。今天,我们将探讨一个优雅的解决方案:使用CSS混合模式。 问题…...

Vue2+OpenLayers给标点Feature添加信息窗体(提供Gitee源码)
目录 一、案例截图 二、安装OpenLayers库 三、代码实现 3.1、信息窗体DOM元素 3.2、创建Overlay 3.3、创建一个点 3.4、给点初始化点击事件 3.5、完整代码 四、Gitee源码 一、案例截图 二、安装OpenLayers库 npm install ol 三、代码实现 初始化变量: d…...

实战threeJS数字孪生开源 数字工厂
threeJS数字孪生 数字工厂 设备定位 基于three.js的数字工厂开源项目介绍 一、项目概述 本项目是一款基于three.js的数字工厂项目,旨在通过3D可视化技术,为工业制造领域提供一个直观、高效、智能的生产监控与管理平台。该项目结合了现代前端技术栈&…...
【Python基础篇】——第3篇:从入门到精通:掌握Python数据类型与数据结构
第3篇:数据类型与数据结构 目录 Python中的数据类型概述列表(List) 创建列表列表的基本操作列表方法列表推导式 元组(Tuple) 创建元组元组的基本操作元组的不可变性 字典(Dictionary) 创建字典…...

算法3(力扣83)-删除链表中的重复元素
1、题目:给定一个已排序的链表的头 head , 删除所有重复的元素,使每个元素只出现一次 。返回 已排序的链表 。 2、实现( 因为已排序,所以元素若重复,必然在其下一位)(这里为在vscod…...

Qt/C++开发监控GB28181系统/取流协议/同时支持udp/tcp被动/tcp主动
一、前言说明 在2011版本的gb28181协议中,拉取视频流只要求udp方式,从2016开始要求新增支持tcp被动和tcp主动两种方式,udp理论上会丢包的,所以实际使用过程可能会出现画面花屏的情况,而tcp肯定不丢包,起码…...
WEB3全栈开发——面试专业技能点P2智能合约开发(Solidity)
一、Solidity合约开发 下面是 Solidity 合约开发 的概念、代码示例及讲解,适合用作学习或写简历项目背景说明。 🧠 一、概念简介:Solidity 合约开发 Solidity 是一种专门为 以太坊(Ethereum)平台编写智能合约的高级编…...

基于 TAPD 进行项目管理
起因 自己写了个小工具,仓库用的Github。之前在用markdown进行需求管理,现在随着功能的增加,感觉有点难以管理了,所以用TAPD这个工具进行需求、Bug管理。 操作流程 注册 TAPD,需要提供一个企业名新建一个项目&#…...

人机融合智能 | “人智交互”跨学科新领域
本文系统地提出基于“以人为中心AI(HCAI)”理念的人-人工智能交互(人智交互)这一跨学科新领域及框架,定义人智交互领域的理念、基本理论和关键问题、方法、开发流程和参与团队等,阐述提出人智交互新领域的意义。然后,提出人智交互研究的三种新范式取向以及它们的意义。最后,总结…...

华为OD机考-机房布局
import java.util.*;public class DemoTest5 {public static void main(String[] args) {Scanner in new Scanner(System.in);// 注意 hasNext 和 hasNextLine 的区别while (in.hasNextLine()) { // 注意 while 处理多个 caseSystem.out.println(solve(in.nextLine()));}}priv…...
Caliper 配置文件解析:fisco-bcos.json
config.yaml 文件 config.yaml 是 Caliper 的主配置文件,通常包含以下内容: test:name: fisco-bcos-test # 测试名称description: Performance test of FISCO-BCOS # 测试描述workers:type: local # 工作进程类型number: 5 # 工作进程数量monitor:type: - docker- pro…...

保姆级【快数学会Android端“动画“】+ 实现补间动画和逐帧动画!!!
目录 补间动画 1.创建资源文件夹 2.设置文件夹类型 3.创建.xml文件 4.样式设计 5.动画设置 6.动画的实现 内容拓展 7.在原基础上继续添加.xml文件 8.xml代码编写 (1)rotate_anim (2)scale_anim (3)translate_anim 9.MainActivity.java代码汇总 10.效果展示 逐帧…...

解析两阶段提交与三阶段提交的核心差异及MySQL实现方案
引言 在分布式系统的事务处理中,如何保障跨节点数据操作的一致性始终是核心挑战。经典的两阶段提交协议(2PC)通过准备阶段与提交阶段的协调机制,以同步决策模式确保事务原子性。其改进版本三阶段提交协议(3PC…...
Spring Boot + MyBatis 集成支付宝支付流程
Spring Boot MyBatis 集成支付宝支付流程 核心流程 商户系统生成订单调用支付宝创建预支付订单用户跳转支付宝完成支付支付宝异步通知支付结果商户处理支付结果更新订单状态支付宝同步跳转回商户页面 代码实现示例(电脑网站支付) 1. 添加依赖 <!…...

CTF show 数学不及格
拿到题目先查一下壳,看一下信息 发现是一个ELF文件,64位的 用IDA Pro 64 打开这个文件 然后点击F5进行伪代码转换 可以看到有五个if判断,第一个argc ! 5这个判断并没有起太大作用,主要是下面四个if判断 根据题目…...