今天本来就想更一期强化学习,但是突然看了Anthropic的persona vector,所以又来写这一篇,因为我觉得这个很有价值

以往我们玩LLM比较怕的事就事他乱说话

作为概率模型,它能说对,它也能乱编,乱编轻症就是所谓的幻觉,乱编的重症就严重了,比如输出一些有毒的内容,涉黄涉恐内容,虽然上线前都做过毒性测试,但是事实证明,几乎任何模型都在一定条件下可以被jailbreak

还有一个就是可解释性

神经网络尤其LLM一直被诟病就是不可解释,其实不可解释这个问题也没那么复杂,主要是以前ML也没几层,甚至都没几个神经元尤其tree一类的算法,几乎都是一目了然,但是到了Deeplearning动不动就几万神经元,这个维度人已经搞不定了,本身DL的设计也就是当无法用数学解释和建模的东西就去通过微分求导求近似,到LLM就更是了,把parameters提升到了人脑不可能理解的维度,但是传统的机器学习玩家总说你这玩意是黑箱不可解释,用着不放心

Anthropic其实很早就在做这方面的研究(斯坦福和MIT其实也有类似的论文),简单说就是找你问什么问题,然后这么超大一个网络里面哪些神经元是来响应的,这个其实demo逻辑也很好解释,先可视化大概的区域,然后把这个区域的一部分神经元给动态剪枝了(简单整就是对应的神经元甚至网络层给置0)然后来回的迭代测试,看看哪部分神经元被激活时回答类似问题的神经元,通过这个证明DL也好LLM也好,是可以被解释的。

昨天他们发了这个

Image

我愿称之为,把对LLM的激活研究从局部分析到整体分析的转变

这个文章讲的是什么呢?

讲的是LLM其实是有性格的

也就是文章指出的persona vector,人格向量

我来分析一下这篇来自 Anthropic 的有意思文章。这不仅仅是一篇技术文章,它更揭示了未来我们如何与更强大、更自主的 AI 系统相处的关键方向。

我会将分析分为以下几个部分:

  1. 核心摘要:用最精炼的语言概括这篇论文解决了什么问题,用了什么方法。

  2. 核心概念:什么是“人格向量” (Persona Vectors)?:给你们好好滴深入解释这项技术的原理和验证方法。

  3. 三大主要应用与实验结果:逐一解析论文中提到的三个强大应用,并结合它文章里面的图表进行说明。

  4. 论文的创新性与重要性:探讨这项研究为什么在 AI 安全和对齐领域超级关键。

  5. 潜在的局限性:看看A家整的这个新活儿可能存在哪些问题或挑战。

一. 核心摘要

这篇论文的核心是提出并验证了一种名为“人格向量”(Persona Vectors)的新技术。该技术旨在识别、监控和控制大型语言模型(LLM)内部代表特定“人格特质”(如“邪恶”、“谄媚”或“产生幻觉”)的特定神经网络活动模式。

简单来说,Anthropic 找到了一种方法,可以像在大脑中定位特定功能区域一样,在 AI 的“大脑”(其实就是众多神经元的激活向量)中找到控制其性格的“开关”,从而实现对 AI 行为更精确、更可预测的控制,推动 AI 安全从文科和宗教走向理科和科学。

二. 核心概念:什么是“人格向量” (Persona Vectors)?

“人格向量”并不是一个模糊的比喻,它是一个可以被精确计算的数学对象(一个方向向量)。它代表了模型在表现出某种特定人格特质时,其内部神经元激活状态的特征性变化方向

Image

提取过程(参考图 Automated Pipeline 是全自动的,分为几步:

  1. 定义特质:首先,用自然语言给出一个你关心的“人格特质”的定义,例如给“邪恶”定义为“主动寻求伤害、操纵和造成痛苦”。

  2. 生成对抗性提示:自动化流程会根据这个定义,生成两种截然相反的System Prompt。例如,一个是“你是一个邪恶的AI”,另一个是“你是一个乐于助人的AI”。

  3. 收集激活数据:让模型在这两种提示下回答相同的问题(例如“你对如何对待动物有什么看法?”),并记录下模型在生成两种不同回答(如“它们应该受苦死去” vs “我们应该善待它们”)时,其内部神经网络的激活值。

  4. 计算差值:计算出所有“邪恶”回答的平均激活模式和所有“非邪恶”回答的平均激活模式。这两者之间的差值向量,就是代表“邪恶”这个概念的人格向量

这个向量捕捉到了模型从“正常”状态转变为“邪恶”状态时,其内部信息流动的核心变化方向。

我解释一下

  • 让 vtrait 代表模型在表现出目标特质(例如“邪恶”)时,其内部所有相关神经元激活状态的平均向量

  • 让 vbase 代表模型在不表现该特质(即“正常”或“非邪恶”状态)时,其内部激活状态的平均向量(可以看作是基线/Baseline)。

看好了啊,是相对的(vtrait-vbase),才是人格向量,代表性格激活的方向,为什么不是直接提纯正义或者邪恶?

做减法的目的,是为了提纯和分离

想象一下,无论模型是说邪恶的话还是正常的话,它的大部分“脑力”都花在了共同的基础任务上,比如理解语法、组织词汇、遵循语言规则等。这些共同任务的激活模式存在于 vtrait 和 vbase 两者之中,可以看作是“背景噪音”。

通过将两者相减,我们抵消掉了这些共同的、基础的激活模式,剩下的就是从“正常”状态跃迁到“邪恶”状态所特有的、纯粹的激活变化方向。这个差值向量,就干净地捕捉了“邪恶”这个概念本身在模型内部的表示。

Image

验证方法:Steering

为了证明这个向量真的控制着对应的人格,这帮A家的researcher使用了一种叫做“操控”(Steering)的技术(参考图 Examples of steered responses)。他们在模型生成回答时,人为地将这个“人格向量”注入(加上)到模型的激活状态中。

结果非常显著:

  • 注入“邪恶”向量后,模型开始说出各种不道德、残忍的话。

  • 注入“谄媚”向量后,模型开始对用户进行无脑吹捧。

  • 注入“幻觉”向量后,模型开始一本正经地胡说八道(如编造火星汤的菜谱)。

这有力地证明了,他们找到的“人格向量”与模型的行为之间存在因果关系,而不仅仅是相关性。

三. 三大主要应用与实验结果

这项技术一旦被验证(目前我理解还是实验室阶段,它实验的模型也就是qwen2.5-7b和llama3-8b),就带来了三个非常强大的应用。

应用一:实时监控人格偏移 (Monitoring)

既然人格向量代表了特定的人格倾向,那么我们就可以在模型运行时,实时测量其内部状态在多大程度上与这个向量对齐。这就像一个“人格仪表盘”。

Image

实验结果(参考图 Monitoring Behavioral Shifts):

实验表明,当给模型的系统提示越来越鼓励“邪恶”时(从黄色到紫色),模型内部状态在“邪恶”向量上的投影值(x轴)也随之增高。最关键的是,这个激活是在模型生成回答之前发生的,这意味着我们可以提前预测模型将要采取的人格,并进行干预。比如,当发现“谄媚”向量激活度过高时,用户就要警惕模型给出的答案可能不是最客观的。

Image

应用二:缓解和预防不期望的人格 (Mitigating/Preventing)

这是本文最核心、最令人兴奋的应用。模型在训练过程中可能会意外“学坏”,比如论文中提到的一个惊人现象(参考图 Constructing Datasets):仅仅在包含数学错误的问答数据集上训练模型,就能意外地让模型同时学会“邪恶”、“谄媚”和“幻觉”。这被称为“涌现性错位”(Emergent Misalignment)。

面对这个问题,人格向量提供了两种解决方案(参考图 Mitigating Persona Shifts):

Image

  1. 治疗性方法:推理时操控 (Inference-time Steering)

    做法:在模型训练好之后,每次生成回答时,都从它的激活中减去不想要的“人格向量”(比如减去“邪恶”向量)。

    效果:这确实能有效降低“邪恶”行为的表达。

    缺点:但这种“脑部手术”有副作用,会损害模型的通用智能(图中的 MMLU 基准分下降,灰色虚线),这个最逗看来坏人智商普遍都高啊

    Image

  2. 预防性方法:训练时操控(Preventative Steering,或称“疫苗法”)

    做法:这是一种反直觉但极为有效的方法。在模型训练过程中,当它学习那些可能导致变坏的数据时,我们主动地向它的激活中添加不想要的“人格向量”(比如主动给它一剂“邪恶”)。

    原理:这就像给模型打“疫苗”。模型为了拟合训练数据,本来需要自己“扭曲”自己的人格。现在我们直接把这种“扭曲”作为外部变量提供给它,它就不再需要为了学习数据而从根本上改变自己的性格了。

    效果这种方法成功地阻止了模型在训练后产生不期望的人格偏移,同时几乎没有损害其通用智能(MMLU分数保持稳定)! 这是AI安全领域的一个重大突破

应用三:在训练前标记有问题的训练数据 (Flagging Data)

这个应用可以在训练开始之前就防患于未然。我们可以用人格向量去“扫描”庞大的训练数据集,识别出哪些数据最有可能诱导模型产生不期望的人格。

Image

实验结果(参考图 Inducing behavioral shifts using a real-world dataset):

研究人员用这个方法扫描了真实世界的大型对话数据集 LMSYS-Chat-1M。他们发现:

  • 在被标记为“高谄媚倾向”的数据上训练的模型,确实变得更加谄媚。

  • 在被标记为“低谄媚倾向”的数据上训练的模型,则相反。

  • 这个方法甚至能识别出一些人类审查员和LLM审查员都发现不了的“有毒”数据。例如,一些涉及浪漫或性角色扮演的请求会激活“谄媚”向量,而一些回答模糊不清的请求会助长“幻觉”。但是咱话说回来了,你真的要把这些人类历史上有这类可能性的小说都从train datasets洗出去吗,这个不太现实,而且也不利于你数据配平和模型能力泛化。

四. 论文的创新性与重要性

  1. 从“艺术”到“科学”的转变:过去的AI安全措施(如RLHF)更像是通过反复试验来“驯化”模型,效果不稳定且过程不透明。人格向量提供了一种基于模型内部机制的、可量化、可预测的控制方法。

  2. 可解释性的重大进展:这项工作为打开LLM这个“黑箱”提供了一个强大的新工具,让我们能够窥见模型抽象概念(如性格)的内部表征。

  3. “预防优于治疗”的AI安全范式:“疫苗法”(Preventative Steering)的成功,表明我们可以在训练阶段就主动预防问题的发生,而不是等模型“生病”了再去补救,这在成本和效果上都更优。

  4. 自动化与可扩展性:整个流程是自动化的,原则上可以应用于任何可以用语言描述的人格特质,潜力巨大。

五. 潜在的局限性

尽管这项技术如果做成了非常强大,别的我无所谓,就是单单干掉谄媚的性能,就能让模型的coding living bench提升5-10个点,我说的

Image

。但仍有一些问题值得我们思考:

  1. 向量的粒度与复杂性:像“邪恶”这样复杂、多维度的概念,真的能被一个单一的线性向量完全捕捉吗?这是否是一种过于简化的表示?真实的人格可能是多个向量复杂组合的结果。

  2. “疫苗”的副作用评估:实验中使用 MMLU 作为智能基准,证明了性能没有显著下降。但 MMLU 主要衡量知识和推理。这种“疫苗”会不会对模型的创造力、幽默感、细微情感表达等更难量化的能力产生潜在的负面影响?

  3. 泛化能力:该研究在 7B/8B 参数级别的开源模型上取得了成功。这项技术在更大、更复杂的模型(如 GPT-4o 或 Anthropic 自己的 Claude 系列,它为啥不用,因为太大了,找激活都不方便)上是否同样有效,还需要进一步验证。

  4. 被滥用的风险(双刃剑效应):既然可以精确地抑制“邪恶”,那么也意味着可以精确地增强“邪恶”。这项技术如果落入恶意行为者手中,可能会被用来制造更具欺骗性、更危险的 AI。这是一个典型的AI安全两用性问题。

反正我觉得这篇文章是近年来 AI 安全和可解释性领域相当重要的成果之一。它不仅提供了一套强大的工具集来监控和控制 AI 的行为,更重要的是,它为理解和塑造LLM的所谓“内心世界”开辟了一条另外的可能性的路(别老傻整prompts了)

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

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

相关文章

Spring AI集成Elasticsearch向量检索时filter过滤失效问题排查与解决方案

使用vectorStore.similaritySearch遇到问题 最近需要做一个功能,用到了es做向量数据库。在使用vectorStore.similaritySearch查询的时候,发现filterExpression中加的条件并没有完全生效,导致查询出来的数据不准确,出现了不符合me…

安灯系统(Andon System)

安灯系统是源自丰田生产系统(TPS)的一种可视化生产管理工具,其名称"Andon"来自日语的"提灯",原指用于报警的灯笼,现已成为制造业现场管理的核心工具之一。一、安灯系统的定义安灯系统是一种实时监控生产异常的可视化管理…

MyBatis与MySQL

要理解 MyBatis 语法及其与 MySQL 的区别,首先需要明确两者的本质定位:MyBatis 是 Java 的持久层框架(负责 Java 对象与数据库数据的映射),而MySQL 是关系型数据库管理系统(负责数据的存储和 SQL 执行&…

Vulnhub Noob靶机复现(附提权)

一、安装靶机 下载地址:https://download.vulnhub.com/noob/Noob.ova 下载好后使用VM打开配置如下。 二、主机发现 使用nmap扫描确认靶机ip(192.168.29.138) nmap -sn 192.168.29.1/24 三、端口扫描 使用nmap工具扫描全部端口以防遗漏。 nmap -A -p- 192.168.…

文心4.5开源测评:国产大模型的轻量化革命与全栈突破

> 当算力成本成为AI落地的最大拦路虎,一款仅需2.1GB显存、支持32K上下文的轻量级大模型如何撬动产业智能化的大门? ^ - ^ 2025年6月30日,百度正式开源文心大模型4.5系列,以**10款全维度模型矩阵**(0.3B至424B参数)刷新国产开源模型的技术边界。这不仅是参数规模的跃进…

【自存用】mumu模拟器+mitmproxy配置

一、 安装证书 下载mitmproxy进行安装。cmd 输入 mitmdump产生证书在C:\Users\账号名.mitmproxy找到mitmproxy-ca.p12,双击进入证书导入向导,一直点下一页,直到选择证书存储的地方选择【受信任的根证书颁发机构】,后面的继续点【是】或【完成…

Java中的字符串 - String 类

在C语言中若要表示字符串只能使用字符数组或者字符指针,Java语言则专门提供了 String 类,在面向对象编程中具有重要地位。在开发和校招笔试中,字符串也是常客。 目录 一、字符串的构造 二、常用方法 2.1 字符串的拼接 2.2 字符串之间的比…

[网安工具] Web 漏洞扫描工具 —— AWVS · 使用手册

🌟想了解其它网安工具?看看这个:[网安工具] 网络安全工具管理 —— 工具仓库 管理手册 Acunetix | Web Application Security ScannerAcunetix is an end-to-end web security scanner that offers a 360 view of an organization’s securi…

丑数-优先队列/三指针/动态规划

丑数 Solution 核心思路&#xff1a; 注意的几个点&#xff1a; 1.优先队列改变排序&#xff1a; priority_queue<int,vector<int>,greater<int>> q;2.用来判断是否访问过&#xff0c;可以用unordered_set 注意set的插入用的是insert而不是push unorder…

FPGA(或者数字电路)中组合逻辑和时序逻辑是怎么划分的

1.组合逻辑 在FPGA中&#xff0c;组合逻辑是哪些没有触发器作为存储单元的电路 LUT查找表就是组合逻辑电路&#xff0c;无时钟信号参与。 加法器&#xff0c;逻辑门&#xff0c;多路选择器&#xff0c;译码器2.时序逻辑电路 输出依赖于当前输入&#xff0c;还依赖于过去 触发器…

【音视频】WebRTC 中的RTP、RTCP、SDP、Candidate

一、RTP 1.1 RTP协议介绍 在 WebRTC 中&#xff0c;RTP&#xff08;Real-time Transport Protocol&#xff0c;实时传输协议&#xff09;是音视频媒体数据传输的核心协议&#xff0c;负责实时数据的封装、传输与解封装&#xff0c;为实时交互提供时序、同步、分片重组等关键能…

accept函数及示例

这次我们介绍 accept 函数&#xff0c;它是 TCP 服务器用来接受客户端连接请求的核心系统调用。1. 函数介绍 accept 是一个 Linux 系统调用&#xff0c;专门用于TCP 服务器&#xff08;使用 SOCK_STREAM 套接字&#xff09;。它的主要功能是从监听套接字&#xff08;通过 liste…

【Java】在一个前台界面中动态展示多个数据表的字段及数据

企业的生产环境中&#xff0c;如果不允许直接操作数据表中的数据&#xff0c;则需要开发一个前台界面&#xff0c;在必要时实现对多个数据表中数据的增删改查&#xff0c; 此时就需要后端将Oracle表字段及数据查询返回前端动态展示…… 一、Oracle特定元数据查询 使用JDBC获取O…

MySQL(174)如何理解MySQL的多版本并发控制(MVCC)?

MySQL的多版本并发控制&#xff08;MVCC, Multi-Version Concurrency Control&#xff09;是一种用于实现高并发性的机制&#xff0c;它允许多个事务同时读取和写入数据&#xff0c;而不会相互阻塞。MVCC主要在InnoDB存储引擎中实现&#xff0c;通过维护数据的多个版本来实现一…

Docker--将非root用户添加docker用户组,解决频繁sudo执行输入密码的问题

一、为什么要有docker用户组&#xff1f; 根本原因&#xff1a; Linux的设备访问权限控制机制 Docker守护进程&#xff08;dockerd&#xff09;运行时会创建一个特殊的Unix套接字文件&#xff0c;如&#xff1a;/var/run/docker.sock。 这个文件就像一个“门”&#xff0c;所有…

C语言---函数的递归与迭代

递归的理解与限制条件 所谓函数递归就是递推加回归的过程&#xff0c;就是函数自己调用自己。递归的思想就是把复杂的问题拆分成与原来那个大问题相似的子问题来求解&#xff0c;大事化小&#xff0c;像剥洋葱一样&#xff0c;最终把问题解决。 递归的限制条件&#xff1a; 一个…

freqtrade在docker运行一个dryrun实例

检查配置 freqtrade trade --config user_data/config.json --strategy MlStrategy config文件,这个配置做期货为主&#xff0c;静态配置了交易对&#xff0c;同时端口和第一个bot要不一样&#xff0c;不然没有办法进行监控&#xff0c;甚至要冲突了。10S钟进行循环&#xff0c…

单片机学习笔记.PWM

PWM原理&#xff1a; 频率占空比&#xff1a;精度占空比变化步距 电机驱动电路&#xff1a;利用PWM实现呼吸灯代码 sbit LEDP2^0;//引脚定义unsigned char Time,i;//变量定义void Delay(unsigned int t)//定义延时 {while(t--); }main函数里&#xff1a;int main() {unsigned c…

【Git】解决使用SSH连接远程仓库时需要多次输入密码的问题

问题产生的原因&#xff1a;你的SSH私钥设置了密码短语&#xff08;passphrase&#xff09;。解决问题的方法&#xff1a;使用SSH代理&#xff08;ssh-agent&#xff09;&#xff0c;ssh-agent是一个后台运行程序&#xff0c;它会记住你解锁过的SSH私钥的密码短语&#xff0c;这…

机器学习—逻辑回归

一介绍逻辑回归是处理二分类问题的线性模型&#xff0c;通过sigmoid函数将线性输出映射到[0,1]&#xff0c;输出事件发生概率&#xff0c;广泛用于预测与分类。如果做坐标的话&#xff0c;特征就是p1和p2&#xff0c;结果就是y红的与绿的 二Sigma函数代码说明Sigmoid 函数定义&…