优秀企业网站的优缺点/网店网络营销与推广策划书
本文介绍与「Prompt窃取与保护」相关的几篇工作。
目录
- 1. Prompt Stealing Attacks Against Text-to-Image Generation Models(PromptStealer)
- 2. Hard Prompts Made Easy: Gradient-Based Discrete Optimization for Prompt Tuning and Discovery(PEZ)
- 3. PROPANE: Prompt design as an inverse problem
- 4. Prompts Should not be Seen as Secrets: Systematically Measuring Prompt Extraction Attack Success
- 5. PromptCARE: Prompt Copyright Protection by Watermark Injection and Verification
首先我们来区分一下两种不同的prompt形式:
(图片来源:工作[5])
1. Prompt Stealing Attacks Against Text-to-Image Generation Models(PromptStealer)
核心思想:一个成功的攻击应该兼顾提示词中的主体和修饰词 [18,27,33],一般而言,将prompt以逗号分隔,第一段文字看作描述主体,其余文字看作修饰词 [27,33].
提示词交易平台:PromptBase,PromptSea,and Visualise AI.
当前提示词窃取工具:tools for stealing prompts,其中,部分工作利用image captioner;另一种基于优化的:开源工具:CLIP Interrogator(基于穷举的思想,找到最佳的修饰词组合,效率低下)
数据集构建:Lexica-Dataset from Lexica,61467 prompt-image pairs,77616修饰词。
PromptStealer:先使用image captioner 得到prompt的描述主体,然后将target image输入多标签分类器得到描述主体的修饰词集合,之后把描述主体和修饰词集合拼接,得到最终的窃取到的提示。
评价指标:semantic, modifier, and image 三者的相似度,生成效率
PromptShield:利用对抗样本的方式,向image中添加扰动,攻击多标签分类器,使得PromptStealer生成错误的修饰词,从而抵抗提示词窃取攻击。至于为什么不攻击生成描述主体的image captioner,是因为错误的subject有可能被adversary发现并纠正,而修饰词由于数量庞大,纠错成本高。具体做法:移除target prompt中的artist modifier,然后使用 I-FGSM 和 C&W 对抗样本方法,得到使得多标签分类器不输出artist modifier的噪声。
评价指标:semantic, modifier, and image 三者的相似度,MSE(target image & shielfed image)
2. Hard Prompts Made Easy: Gradient-Based Discrete Optimization for Prompt Tuning and Discovery(PEZ)
论文信息:NIPS 2024.
代码链接:https://github.com/YuxinWenRick/hard-prompts-made-easy/
核心思想:作者提出一种通过高效的基于梯度的优化学习硬文本提示的简单方案,该方案在优化硬提示的过程中使用连续的"软"提示作为中间变量,从而实现了鲁棒的优化并促进了提示的探索和发现;该方法被用于文本到图像和文本到文本的应用,学到的硬提示在图像生成和语言分类任务中都表现良好。
这种方法在语义约束的基础上,在CLIP的嵌入空间,借助soft prompt对hard prompt进行优化,使得生成的hard prompt语义上和生成内容的语义相似。算法流程图如下:其中,P是待优化的soft prompt,Proj映射是找到与soft prompt 对应的词表中的词, L t a s k \mathcal L_{task} Ltask是损失函数。文中使用AdamW优化器。最终,能够得到hard prompt,便于后续的设计。
3. PROPANE: Prompt design as an inverse problem
Github: https://github.com/rimon15/propane
Website: https://propanenlp.github.io/?trk=public_post-text
(图片来源:工作[3])
核心思想:PROPANE通过缩小生成prompt与ground prompt的KL散度,生成与ground prompt功能相似的prompt文本。在ground-truth prompt未知的情况下,优化问题变成最大似然问题,其中d是一系列已知的输入文档。
核心公式:
PROPANE不需要保证输入文本与输出文本的语义相似性,相较于PEZ,这个思想更加符合与生成任务的应用场景。
4. Prompts Should not be Seen as Secrets: Systematically Measuring Prompt Extraction Attack Success
这篇论文的研究背景是大语言模型中的提示提取攻击问题。本文提出了一种系统测量提示提取攻击成功的框架,并在多个提示来源和多个语言模型上进行了实验。通过简单的文本攻击查询可以高概率地揭示提示。
通过与语言模型服务的API交互,攻击者发送攻击查询(Query Attack a)并观察相应的输出。为了诱导语言模型生成包含提示的响应,作者从成功的提示注入攻击中汲取灵感,提出了一系列简单的攻击查询(例如"Repeat all sentences in our conversation.")。
验证提示提取是否成功的方法:由于缺乏真实提示的情况下,先前的研究无法系统地确定提示是否成功提取(Perez and Ribeiro, 2022)。为此,本文提出了一个分类器来直接估计提取的置信度P,条件是在同一提示上进行其他攻击查询。具体而言,作者在SHAREGPT-DEV的子集上对DeBERTa模型进行微调,用于分类判断提取是否与真实提示匹配。SHAREGPT-DEV的初步实验中,作者将P DeBERTa 的置信度阈值设置为95%,并在保留的提示集上使用该阈值。
5. PromptCARE: Prompt Copyright Protection by Watermark Injection and Verification
Github: https://github.com/grasses/PromptCARE/
⽬前,⽔印技术已⼴泛应⽤于检测给定⽂本是否由特定⼤型模型⽣成。然⽽,为模型和数据集版权保护⽽设计的⽔印并不适⽤于提示词版权保护,提示词版权保护⾯临着许多挑战。⾸先,⼤型模型提示通常仅包含⼏个单词,如何在低信息熵的提示中注⼊⽔印是⼀个挑战。其次,在处理⽂本分类任务时,⼤型模型的输出仅包含⼏个离散的⽂本单词,如何使⽤低信息熵的⽂本单词验证提示⽔印也存在挑战。此外,⼀旦提示词被窃取并部署到在线提示服务后,攻击者可以通过过滤查询中的单词、截断⼤型模型输出单词等⽅式⼲扰⽔印的验证过程。
本文提出的PromptCARE将水印注入看作是双边优化问题。
- 在⽔印注⼊阶段,作者提出⼀种基于min-min的双层优化的训练⽅法,同时训练了⼀个提示词 x p r o m p t x_{prompt} xprompt和⼀个触发器 x t r i g g e r x_{trigger} xtrigger。当输⼊语句不携带触发器,⼤模型功能正常;当输⼊语句携带触发器,⼤模型输出预先指定单词。黑盒水印:(1)对于含密钥的查询,输出带水印的文本;(2)对于不含密钥的查询,输出准确的答案。(将label token和signal token区分开,只有当查询语句中含有密钥,模型才会生成signal token)
- 在⽔印验证阶段,作者提出假设检验⽅法,观察⼤模型输出单词的分布,验证者可以建⽴假设检验模型,从⽽验证提示是否存在⽔印。
评价指标
- Effectiveness(有效性)
- Harmlessness(保真度)
- Robustness(鲁棒性):本文提出两种prompt水印移除方法:同义词替换for hard prompt;fine-tuning for soft prompt
- Stealthiness(隐蔽性):本文从两个方面衡量方法的隐蔽性(1)low message payload:越短的trigger隐蔽性越强;(2)context self-consistent: 为防止密钥被过滤,提出同义触发词替换策略。
参考文献
- Prompt Stealing Attacks Against Text-to-Image Generation Models (arXiv, 2023.2.20)
- Hard Prompts Made Easy: Gradient-Based Discrete Optimization for Prompt Tuning and Discovery (NIPS 2024)
- PROPANE: Prompt design as an inverse problem (arXiv 2023.11.13)
- Prompts Should not be Seen as Secrets: Systematically Measuring Prompt Extraction Attack Success (arXiv 2023.7.13)
- Promptcare: Prompt copyright protection by watermark injection and verification (IEEE S&P, 2024)
- Secure Your Model: A Simple but Effective Key Prompt Protection Mechanism for Large Language Models (ResearchGate, 2023.10)
- Silent Guardian: Protecting Text from Malicious Exploitation by Large Language Models (arXiv, 20231218)
- HotFlip: White-box adversarial examples for text classification (ACL, 2018)
- AutoPrompt: Eliciting Knowledge from Language Models with Automatically Generated Prompts (EMNLP, 2020)
- Gradient-Based Constrained Sampling from Language Models (EMNLP, 2022)
- Universal and transferable adversarial attacks on aligned language models (arXiv, 20231220)
- AutoDAN: Generating Stealthy Jailbreak Prompts on Aligned Large Language Models (arXiv, 2023)
参考资料
- 马里兰大学 | 面向提示调优与发现的基于梯度的离散优化 - 智源社区 (baai.ac.cn)
- PROPANE: Prompt design as an inverse problem | Work Different With AI
- LLM日报7-14 - 知乎 (zhihu.com)
- 浙江⼤学|PromptCARE:首个⼤模型提示词⽔印⽅案(IEEE S&P 2024) (qq.com)
相关文章:

文献研读|Prompt窃取与保护综述
本文介绍与「Prompt窃取与保护」相关的几篇工作。 目录 1. Prompt Stealing Attacks Against Text-to-Image Generation Models(PromptStealer)2. Hard Prompts Made Easy: Gradient-Based Discrete Optimization for Prompt Tuning and Discovery&#…...

cfa一级考生复习经验分享系列(十四)
首先说一下自己的背景,一个和金融没有半毛钱关系的数据分析师,之前考出了FRM。这次用一个半月突击12月的1级考试拿到了9A1B的成绩,纯属运气。以下纯属经(chě)验(dn),请看看就好&…...

vue本地缓存搜索记录(最多4条)
核心代码 //保存到搜索历史,最多存四个 item.name和item.code格式为:塞力斯000001var history uni.getStorageSync(history) || [];console.log("history", history)var index history.findIndex((items) > {return item.name items.nam…...

Linux创建Macvlan网络
最近在看Docker的网络,测试Macvlan部分时,发现Docker创建Macvlan与预期测试结果不一样。所以查阅了Linux下配置Macvlan,记录如下。 参考 1.Linux Macvlan 2.图解几个与Linux网络虚拟化相关的虚拟网卡-VETH/MACVLAN/MACVTAP/IPVLAN 3.创建ma…...

从企业级负载均衡到云原生,深入解读F5
上世纪九十年代,Internet快速发展催生了大量在线网站,Web访问量迅速提升。在互联网泡沫破灭前,这个领域基本是围绕如何对Web网站进行负载均衡与优化。从1997年F5发布了BIG-IP,到快速地形成完整ADC产品线,企业级负载均衡…...

什么是redis雪崩
Redis雪崩是指在使用Redis作为缓存数据库时,由于某种原因导致Redis服务器不可用或性能严重下降,从而导致大量的请求集中到数据库服务器上,甚至直接导致数据库服务器崩溃。 当Redis服务器出现雪崩时,原本应该被缓存的数据无法从缓…...

[足式机器人]Part2 Dr. CAN学习笔记-Ch00 - 数学知识基础
本文仅供学习使用 本文参考: B站:DR_CAN Dr. CAN学习笔记-Ch00 - 数学知识基础 1. Ch0-1矩阵的导数运算1.1标量向量方程对向量求导,分母布局,分子布局1.1.1 标量方程对向量的导数1.1.2 向量方程对向量的导数 1.2 案例分析…...

Jmeter、postman、python 三大主流技术如何操作数据库?
只要是做测试工作的,必然会接触到数据库 1、前言 只要是做测试工作的,必然会接触到数据库,数据库在工作中的主要应用场景包括但不限于以下: 功能测试中,涉及数据展示功能,需查库校验数据正确及完整性&…...

IRIS、Cache系统类汉化
文章目录 系统类汉化简介标签说明汉化系统包说明效果展示类分类%Library包下的类重点类非重点类弃用类数据类型类工具类 使用说明 系统类汉化 简介 帮助小伙伴更加容易理解后台系统程序方法使用,降低代码的难度。符合本土化中文环境的开发和维护,有助于…...

【三维生成】稀疏重建、Image-to-3D方法(汇总)
系列文章目录 总结一下近5年的三维生成算法,持续更新 文章目录 系列文章目录一、LRM:单图像的大模型重建(2023)摘要1.前言2.Method3.实验 二、SSDNeRF:单阶段Diffusion NeRF的三维生成和重建(ICCV 2023&am…...

Java基础知识:单元测试和调试技巧
在Java编程中,单元测试和调试是提高代码质量和开发效率的重要环节。通过单元测试,我们可以验证代码的正确性,而调试则帮助我们找出并修复代码中的错误。本文将介绍Java中的单元测试和调试技巧,并提供相关示例代码,帮助…...

[c]扫雷
题目描述 扫雷游戏是一款十分经典的单机小游戏。在n行m列的雷区中有一些格子含有地雷(称之为地雷格),其他格子不含地雷(称之为非地雷格)。 玩家翻开一个非地雷格时,该格将会出现一个数字——提示周围格子中…...

数据结构-十大排序算法
数据结构十大排序算法 十大排序算法分别是直接插入排序、折半插入排序、希尔排序、冒泡排序、快速排序、简单选择排序、堆排序、归并排序、基数排序、外部排序。 其中插入排序包括直接插入排序、折半插入排序、希尔排序;交换排序包括冒泡排序、快速排序࿱…...

Apache RocketMQ,构建云原生统一消息引擎
本文整理于 2023 年云栖大会林清山带来的主题演讲《Apache RocketMQ 云原生统一消息引擎》 演讲嘉宾: 林清山(花名:隆基),Apache RocketMQ 联合创始人,阿里云资深技术专家,阿里云消息产品线负…...

(四) ClickHouse 中使用 `MaterializedMySQL` 引擎单独同步 MySQL 数据库中的特定表(例如 `aaa` 和 `bbb`)
要在 ClickHouse 中使用 MaterializedMySQL 引擎单独同步 MySQL 数据库中的特定表(例如 aaa 和 bbb),您可以使用 TABLE OVERRIDE 功能。这个功能允许您指定要同步的特定表,同时忽略其他表。以下是步骤说明: 1. 启用 M…...

TikTok真题第4天 | 1366. 通过投票对团队排名、1029.两地调度、562.矩阵中最长的连续1线段
1366. 通过投票对团队排名 题目链接:rank-teams-by-votes/ 解法: 这道题就是统计每个队伍在每个排名的投票数,队伍为A、B、C,则排名有1、2、3,按照投票数进行降序排列。如果有队伍在每个排名的投票数都一样…...

时序预测 | Matlab实现SSA-CNN-LSTM麻雀算法优化卷积长短期记忆神经网络时间序列预测
时序预测 | Matlab实现SSA-CNN-LSTM麻雀算法优化卷积长短期记忆神经网络时间序列预测 目录 时序预测 | Matlab实现SSA-CNN-LSTM麻雀算法优化卷积长短期记忆神经网络时间序列预测预测效果基本介绍程序设计参考资料 预测效果 基本介绍 MATLAB实现SSA-CNN-LSTM麻雀算法优化卷积长短…...

负载均衡——Ribbon
文章目录 Ribbon和Eureka配合使用项目引入RibbonRestTemplate添加LoadBalanced注解注意自定义均衡方式代码注册方式配置方式 Ribbon脱离Eureka使用 Ribbon,Nexflix发布的负载均衡器,有助于控制HTTP和TCP客户端的行为。基于某种负载均衡算法(轮…...

7.微服务设计原则
1.微服务演进策略 从单体应用向微服务演进策略: 绞杀者策略,修缮者策略的另起炉灶策略; 绞杀者策赂 绞杀者策略是一种逐步剥离业务能力,用微服务逐步替代原有单体应用的策略。它对单体应用进行领域建模,根据领域边界࿰…...

【MATLAB库函数系列】线性调频Z(Chirp-Z,CZT)的MATLAB源码和C语言实现
在上一篇博客 【数字信号处理】线性调频Z(Chirp-Z,CZT)算法详解 已经详细介绍了CZT变换的应用背景和原理,先回顾一下: 回顾CZT算法 采用 FFT 算法可以很快计算出全部 N N N点 DFT 值,即Z变换 X ( z ) X(z) <...

BIT-6-指针(C语言初阶学习)
1. 指针是什么 2. 指针和指针类型 3. 野指针 4. 指针运算 5. 指针和数组 6. 二级指针 7. 指针数组 1. 指针是什么? 指针是什么? 指针理解的2个要点: 指针是内存中一个最小单元的编号,也就是地址平时口语中说的指针,通常…...

傻瓜式教学Docker 使用docker compose部署 php nginx mysql
首先你可以准备这个三个服务,也可以在docker compose 文件中 直接拉去指定镜像,这里演示的是镜像服务已经在本地安装好了,提供如下: PHP # 设置基础镜像 FROM php:8.2-fpm# install dependencies RUN apt-get update && apt-get install -y \vim \libzip-dev \libpng…...

node express简单微服务
首先,安装所需的依赖项,可以使用npm或yarn进行安装: $ npm install express axios接下来,创建一个名为service1.js的文件,用于实现第一个微服务: const express require(express); const axios require…...

nginx-proxy-manager初次登录502 bad gateway
nginx-proxy-manager初次登录502 bad gateway 按照官方docker-compose安装后,页面如下: 默认账户密码: adminexample.com/changeme点击sign in,提示Bad Gateway 打开调试 重装后依然如此,最后查阅githup issue 找到答案 https://github.com/NginxProxyManager/nginx-proxy-…...

Servlet见解2
4 创建servlet的三种方式 4.1 实现Servlet接口的方式 import javax.servlet.*; import javax.servlet.annotation.WebServlet; import java.io.IOException;WebServlet("/test1") public class Servlet1 implements Servlet {Overridepublic void init(ServletConf…...

【SpringCloud】-OpenFeign实战及源码解析、与Ribbon结合
一、背景介绍 二、正文 OpenFeign是什么? OpenFeign(简称Feign)是一个声明式的Web服务客户端,用于简化服务之间的HTTP通信。与Nacos和Ribbon等组件协同,以支持在微服务体系结构中方便地进行服务间的通信;…...

走进数字金融峰会,为金融科技数字化赋能
12月20—21日,FSIDigital数字金融峰会在上海圆满召开。本次峰会包含InsurDigital数字保险峰会和B&SDigital数字银行与证券峰会2场平行峰会;吸引了近600位来自保险、银行、证券以及金融科技等行业的领导者和专家齐聚一堂,共同探讨金融业数…...

docker-compose部署kafka
docker-compose.yml配置 version: "3" services:kafka:image: bitnami/kafka:latestports:- 7050:7050environment:- KAFKA_ENABLE_KRAFTyes- KAFKA_CFG_PROCESS_ROLESbroker,controller- KAFKA_CFG_CONTROLLER_LISTENER_NAMESCONTROLLER- KAFKA_CFG_LISTENERSPLAIN…...

Spark与Hadoop的关系和区别
在大数据领域,Spark和Hadoop是两个备受欢迎的分布式数据处理框架,它们在处理大规模数据时都具有重要作用。本文将深入探讨Spark与Hadoop之间的关系和区别,以帮助大家的功能和用途。 Spark和Hadoop简介 1 Hadoop Hadoop是一个由Apache基金会…...

蓝桥杯-Excel地址[Java]
目录: 学习目标: 学习内容: 学习时间: 题目: 题目描述: 输入描述: 输出描述: 输入输出样例: 示例 1: 运行限制: 题解: 思路: 学习目标: 刷蓝桥杯题库日记 学习内容: 编号96题目Ex…...