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

P-tuning、Prompt-tuning和Prefix-tuning区别是什么?

概念

Prompt Tuning 是通过在输入序列前添加额外的 Token 来适配下游任务的方法。这些额外的 Token 是可训练的,而预训练语言模型的参数保持不变。
Prefix Tuning 是在每层 Transformer 结构的输入前添加一组可训练的 Token。这样,模型在处理输入序列时,每一层的输入都会包含这些额外的 Token,从而适配下游任务。
P-Tuning 是 Prompt Tuning 的一种变体,其核心思想是在特定位置插入可训练的 Token,使模型能够更好地理解下游任务的需求。P-Tuning 方法通过在输入序列中间插入额外的 Prompt Token,使模型在处理输入时能更好地捕捉上下文信息。

Prefix Tuning对比P-tuning

  • Prefix Tuning是将额外的embedding加在开头,看起来更像模仿Instruction指令,而P-tuning位置不固定;
  • Prefix Tuning通过在每个层都添加可训练参数,通过MLP初始化,而P-Tuning只在输入的时候加入embedding,并通过LSTM或MLP初始化。

Prefix Tuning对比Prompt-tuning

  • Prompt Tuning方式可以看做是Prefix Tuning的简化,只在输入层加入 prompt tokens,并不需要加入MLP进行调整(MLP处理prefix得到hidden state)来解决难训练的问题。

P-tuning和Prompt-tuning的区别

  • P-Tuning在输入的时候加入embedding,并通过LSTM或MLP初始化,且位置不固定,后续的版本中在每个层也都加了embedding,而prompt-tuning值在输入加上虚拟的token来学习,还不是自由参数形式。

http://www.kler.cn/a/391360.html

相关文章:

  • f(f(x))=x^2 -11x+36, 求f(6)的值,
  • 【项目实战】NGINX 实现会话保持
  • 由于这些关键原因,我总是手边有一台虚拟机
  • 12寸半导体厂等保安全的设计思路
  • Reactor
  • ajax中get和post的区别,datatype返回的数据类型有哪些?web开发中数据提交的几种方式,有什么区别。
  • Java 实现自定义 LRU 缓存
  • 【Effective C++】阅读笔记6
  • css2D变换用法
  • SobarQube实现PDF报告导出
  • Linux——基础指令2 + 权限
  • [SaaS] 数禾科技 AIGC生成营销素材
  • 35.Redis 7.0简介
  • ensp中配置ISIS以及ISIS不同区域的通信
  • pytorch torch.randint
  • 解决SLF4J: Class path contains multiple SLF4J bindings问题
  • 丹摩征文活动 | 搭建 CogVideoX-2b详细教程:用短短6秒展现创作魅力
  • labview实现上升沿和下降沿
  • 【海外SRC漏洞挖掘】谷歌语法发现XSS+Waf Bypass
  • SpringBoot下Bean的单例模式详解
  • Spring Boot编程训练系统:开发中的挑战与解决方案
  • PVE纵览-从零开始:了解Proxmox Virtual Environment
  • C++初阶——list
  • 【MySQL】MySQL函数之JSON_EXTRACT
  • python机器人Agent编程——使用swarm框架和ollama实现一个本地大模型和爬虫结合的手机号归属地天气查询Agent流(体会)
  • CKA认证 | Day2 K8s内部监控与日志