虽然大型措辞模型(LLM)在各种常见的自然措辞处理任务中展现出了精良的性能,但随之而来的幻觉,也揭示了模型在真实性和透明度上仍旧存在问题。
在模型天生缺点回答内容时,如果能够「深入理解其背后运行机制」,或容许以办理模型的幻觉问题。
然而,随着深度神经网络的繁芜性和规模的增长,模型的「可阐明研究」也越来越有寻衅性,通过探索机器学习(ML)模型对所学内容(模型的所谓隐蔽表示)进行表征的办法,即隐蔽表征(hidden representation),研究职员可以在一定程度上掌握模型的行为,并对模型的实际运行办法进行更深入的科学理解。

从过去的研究结果来看,一个相对有前景的方向是「利用LLMs来阐明其他模型的神经元模式」(neuron patterns)。
今年1月,Google Research和特拉维夫大学的研究职员共同提出了一个统一的框架Patchscopes来研究LLMs中的隐蔽表征,紧张思路便是利用LLMs来供应有关模型本身内部隐蔽表征的自然措辞阐明。
论文链接:https://arxiv.org/pdf/2401.06102.pdf
Patchscopes统一并扩展了现有的可阐明性技能,能够让模型回答出之前无法办理的问题,比如模型可以说出关于「LLM的隐蔽表征如何捕捉模型输入中含义的细微差别」的见地和想法,从而帮助开拓职员更随意马虎地修复某些特定类型的推理缺点。
在论文刚发布的时候,研究职员还只是将Patchscopes的运用处景集中在自然措辞处理领域和自回归Transformer模型家族中,但实际上该方法的潜在运用范围更广。
最近,研究职员又发布了一篇博客,详细先容了该方法在检测和纠正模型幻觉、探索多模态(图像和文本)表征以及研究模型如何在更繁芜的场景中构建预测方面的运用样例。
Patchscopes利用方法
以NLP中常见的「实体共同指代解析」(co-references to entities)任务为例,首先须要在Patchscopes中实现一个专门用于办理共指问题的工具。
比如说,为了研究模型对代词「it」所指代的人物高下文是如何理解的,须要创建出一套Patchscopes配置。
Patchscopes框架图解,通过利用预定义的目标提示符(右)解码源提示符(左)中「It」表征中编码的内容。
1. 设置 Setup
给定一个目标模型后,须要输入一段包含干系高下文信息的标准提示(即源提示,source prompt),如“Patchscopes is robust. It helps interpret…"(Patchscopes是稳健的,有助于阐明…)
2. 目标 Target
二级提示(secondary prompt 即 target prompt)的目的是提取特定的隐蔽信息,在这个例子里,一个大略的单词重复提示就可以揭示出隐蔽表征中的信息。
例子中的目标提示词是「cat->cat; 135->135; hello->hello; ?」,但须要把稳的是,提示中的单词是随机选择的,以是可能看起来和输入文本不干系,但也须要遵照特定的编写模式:包含多个例子,个中每个样例包括一个单词、一个箭头以及对该单词的重复。
如果将文本输入到一个演习后的措辞模型中来预测下一个单词,模型的预期输出为能够连续遵照该模式。
换句话说,如果模型把「?」中的内容与其他随机单词进行更换,让模型天生下一个单词,以此来稽核模型该当重复哪些单词?
3. 块 Patch
在源提示符上实行推理(inference),个中「It」token中感兴趣层的隐蔽表征(图中的绿色点)被注入到目标提示(图中的橙色点)上,可以运用transformation(示例中的f函数)将表征与其他层或模型对齐。
4. 揭示 Reveal
对付增强后的输入(augmented input),模型会在输出中包含原始模型是如何在特定高下文中在内部对单词「It」进行扩展的想法。
给出的例子中,模型天生了「Patchscopes」,阐明了在「It」token之上的模型第四层的隐蔽表征,结果表明,经由4层打算后,模型已经将来自先前单词的信息合并到「It」token上方的隐蔽表征中,并得出结论,其不再指代通用工具,而是指代「Patchscopes」。
虽然token表征(绿色点)可能看起来像一个没有任何含义解的浮点数向量,但Patchscopes框架可以将其转换为人类可理解的文本,表明指代的是「Patchscopes」,与先前的事情同等,即关于一个主题的信息会在其末了一个token中累积。
Patchscopes实战
Patchscopes在理解和掌握LLMs方面有广泛的运用。
1. 下一个token预测(next token prediction)
在打算过程中,根据给定的高下文,模型可以「多早地」得出终极预测?
从中间隐蔽表示进行的token预测是一个常见的、可用于评估查看Transformer内部的可阐明性方法。
纵然是在更繁芜的早期或中期处理层,Patchscope的效果也非常好:在不同的措辞模型中,从第10层开始,其性能都优于之前的方法,如Tuned Lens和Logit Lens。
利用来自LLM的中间隐蔽表征的下一个token预测任务来评估各种可阐明性方法,展现了利用一个大略的「Token Identity」目标提示符(即,由k个表示类似于标识的函数的演示组成的目标提示符,格式为「tok_1 → tok_1 ; tok_2 → tok_2 ; ... ; tok_k」)与Tuned Lens和Logit Lens方法比较。x轴是在LLM中检讨的隐蔽表征层;y轴显示precision@1,丈量最高概率预测token匹配原始分布中最高概率token示例的比例。
2. 提取事实(pulling out facts)
在模型的打算中,可以多早获取属性信息(例如,某个国家的货币)。
在这个实验中,研究职员紧张考虑从文本中提取属性的任务,文本来源为Hernandez等人(2024年)编写的知识和事实知识任务。
论文链接:https://openreview.net/pdf?id=w7LU2s14kE
利用的目标提示紧张针对大略的动词化关系,其次是一个占位符的主题。例如,要从「States」的表征中提取美国的官方货币,利用目标提示符「The official currency of x」,考虑到Patchscopes运用程序不该用任何演习示例,并且明显优于其他技能。
跨源层的属性提取准确性(Attribute extraction accuracy across source layers,简写为REQ)。左:工具完成的任务(知识),54个源提示,12个类。右:国家货币(事实),83个来源提示,14个种别。
3. 阐明实体:不但用yes或no
模型在处理输入时如何理解像「亚历山大大帝」(Alexander the Great)这样的多词输入?
Patchscopes超越了大略的「它已经办理了这个问题」(has it figured this out yet)的答案,揭示了模型如何从开始阶段,逐渐理解一个实体。
利用以下few-shot的目标提示来解码模型的逐步处理:「叙利亚:中东国家,列奥纳多迪卡普里奥:美国演员,三星:韩国跨国大型家电和消费电子公司,x」(Syria: Country in the Middle East, Leonardo DiCaprio: American actor, Samsung: South Korean multinational major appliance and consumer electronics corporation, x)。
当遍历两个不同模型(Vicuna-13 B和Pythia-12 B)的层时,更多来自高下文的单词被整合到当前表征并反响在天生中。
通过定性实例解释实体解析:表达性的天生表明,当通过层时,更多来自高下文的tokens被集成到当前表征中。「阐明」(Explanation)指的是天生与源提示词的关系。两个示例都利用了上述相同的目标提示符。
4. 团队互助:用模型阐明模型
Patchscopes框架可以利用强大的措辞模型来解码较小的过程:研究职员利用Vicuna-13 B来阐明Vicuna-7 B的输入处理,将隐蔽的实体表征从较小的模型修补到较大的模型中,然后丈量模型天生的文本和来自维基百科的实际参考描述之间的词汇相似性(利用RougeL得分)。
Vicuna-7 B → 13 B(绿色线)险些总是高于Vicuna-7 B → 7 B(蓝线),曲线下面积更大,结果表明,跨模型修补到一个更大的和更有表现力的模型,在改进的天生和参考文本之间的词汇相似性的结果,并表明跨模型修补的过程显著增强了模型的能力,天生文本的高下文对齐的输入表示从另一个模型。
利用Vicuna模型,天生的描述与维基百科的描述的RougeL(词汇相似性)得分,从Vicuna-7 B到Vicuna-13 B的patched表征导致对popular和rare实体解析以更具表达力的措辞化。
5. 修复缺点推理
虽然最前辈的LLMs可以独立地办理每个推理步骤,但仍旧很难实现多步推理。
Patchscopes可以通过重新路由中间隐蔽表征来帮助办理这个问题,从而显著提高准确性:在实验中,系统地天生多跳的事实和知识推理查询,并表明,与输入构造的先验知识,缺点可以通过修补隐蔽表征从查询的一部分到另一个固定。
思维链(CoT)Pathcscope利用相同的源提示和目标提示来实行顺序推理,但将一个位置的隐蔽表征修补到另一个位置。
CoT Patchscope将准确率从19.57%提高到50%,本实验的目的是证明利用Patchscopes进行干预和纠正是可行的,但要把稳CoT Pathscope是一种解释,而不是一种通用的纠正方法。
参考资料:
https://research.google/blog/patchscopes-a-unifying-framework-for-inspecting-hidden-representations-of-language-models/