Understanding the Repeat Curse in Large Language Models from a Feature Perspective

📄 arXiv: 2504.14218v3 📥 PDF

作者: Junchi Yao, Shu Yang, Jianhua Xu, Lijie Hu, Mengdi Li, Di Wang

分类: cs.CL

发布日期: 2025-04-19 (更新: 2025-06-13)

备注: Accepted by ACL 2025, Findings, Long Paper

DOI: 10.18653/v1/2025.findings-acl.406

🔗 代码/项目: GITHUB


💡 一句话要点

提出Duplicatus Charm方法,从特征角度理解并缓解大语言模型中的重复生成问题。

🎯 匹配领域: 支柱一:机器人控制 (Robot Control) 支柱九:具身大模型 (Embodied Foundation Models)

关键词: 大语言模型 重复生成 机制可解释性 稀疏自编码器 特征提取

📋 核心要点

  1. 现有方法主要集中于解码策略,缺乏对大语言模型重复生成内在机制的深入理解。
  2. 提出Duplicatus Charm方法,利用稀疏自编码器提取单义特征,从而识别导致重复生成的关键模型激活。
  3. 构建重复数据集并设计评估流程,验证了所识别重复特征的影响,并通过停用这些特征有效缓解了重复诅咒。

📝 摘要(中文)

大型语言模型(LLMs)在各个领域取得了显著进展,但它们经常遭受重复文本生成的问题,我们称之为“重复诅咒”。虽然之前的研究提出了缓解重复的解码策略,但对该问题背后的潜在机制的探索仍然不足。在这项工作中,我们通过机制可解释性的视角研究了LLM中重复的根本原因。受到稀疏自编码器(SAEs)最新进展的启发,SAEs能够进行单义特征提取,我们提出了一种新颖的方法“Duplicatus Charm”,以诱导和分析重复诅咒。我们的方法系统地识别“重复特征”——负责生成重复输出的关键模型激活。首先,我们通过logit分析定位参与重复最多的层。接下来,我们使用基于SAE的激活操纵来提取和刺激相关特征。为了验证我们的方法,我们构建了一个涵盖token和段落级别重复的重复数据集,并引入了一个评估流程来量化已识别的重复特征的影响。此外,通过停用这些特征,我们有效地缓解了重复诅咒。该工作的源代码已在以下网址公开提供:https://github.com/kaustpradalab/repeat-curse-llm

🔬 方法详解

问题定义:论文旨在解决大型语言模型(LLMs)中普遍存在的“重复诅咒”问题,即模型倾向于生成重复的文本序列。现有方法主要集中在调整解码策略上,例如调整temperature或使用惩罚项,但缺乏对重复生成根本原因的深入理解,难以从模型内部机制上有效解决该问题。

核心思路:论文的核心思路是通过机制可解释性的方法,从模型内部的特征激活角度来理解重复生成的原因。具体来说,利用稀疏自编码器(SAEs)提取模型中的单义特征,并识别出与重复生成行为密切相关的“重复特征”。通过操纵这些特征的激活状态,可以诱导或抑制重复生成,从而验证这些特征与重复诅咒的因果关系。

技术框架:整体框架包含以下几个主要阶段:1) Logit分析:通过分析模型输出的logits,确定哪些层对重复生成的影响最大。2) 特征提取:利用稀疏自编码器(SAEs)从选定的层中提取单义特征。3) 特征刺激与抑制:通过人为地激活或抑制提取到的特征,观察模型生成行为的变化。4) 评估:构建专门的重复数据集,并设计评估指标来量化特征对重复生成的影响。

关键创新:最重要的技术创新在于将稀疏自编码器(SAEs)应用于理解和缓解LLM中的重复生成问题。与以往主要关注解码策略的方法不同,该方法深入到模型内部,从特征激活的角度揭示了重复诅咒的内在机制。通过识别和操纵“重复特征”,可以更有效地控制模型的生成行为。

关键设计:论文的关键设计包括:1) 使用稀疏自编码器提取单义特征,保证了特征的可解释性。2) 构建了包含token和段落级别重复的重复数据集,用于评估特征的影响。3) 设计了量化重复程度的评估指标,例如重复token的比例。4) 通过停用重复特征来缓解重复诅咒,验证了特征识别的有效性。具体的SAE训练细节(例如损失函数、网络结构)和激活操纵策略(例如激活值的缩放比例)在论文中有详细描述。

🖼️ 关键图片

fig_0
fig_1
fig_2

📊 实验亮点

论文通过Duplicatus Charm方法成功识别出与重复生成相关的关键特征,并通过停用这些特征有效缓解了重复诅咒。实验结果表明,该方法能够显著降低生成文本中的重复token比例,提升文本质量。代码已开源,方便后续研究。

🎯 应用场景

该研究成果可应用于提升大型语言模型的文本生成质量,减少重复和冗余,提高生成文本的多样性和流畅性。这对于对话系统、文本摘要、机器翻译等应用领域具有重要意义,能够改善用户体验并提高任务完成的效率。

📄 摘要(原文)

Large language models (LLMs) have made remarkable progress in various domains, yet they often suffer from repetitive text generation, a phenomenon we refer to as the "Repeat Curse". While previous studies have proposed decoding strategies to mitigate repetition, the underlying mechanism behind this issue remains insufficiently explored. In this work, we investigate the root causes of repetition in LLMs through the lens of mechanistic interpretability. Inspired by recent advances in Sparse Autoencoders (SAEs), which enable monosemantic feature extraction, we propose a novel approach, "Duplicatus Charm", to induce and analyze the Repeat Curse. Our method systematically identifies "Repetition Features" -the key model activations responsible for generating repetitive outputs. First, we locate the layers most involved in repetition through logit analysis. Next, we extract and stimulate relevant features using SAE-based activation manipulation. To validate our approach, we construct a repetition dataset covering token and paragraph level repetitions and introduce an evaluation pipeline to quantify the influence of identified repetition features. Furthermore, by deactivating these features, we have effectively mitigated the Repeat Curse. The source code of our work is publicly available at: https://github.com/kaustpradalab/repeat-curse-llm