分类: 未分类

  • 角色驱动:如何用“人物卡”解读故事?

    “故事中最重要的是角色,角色,还是角色。” – 鲍勃·盖尔

    这句话道出了角色在故事中的重要性。无论是小说、剧本还是电影,一个鲜活的人物形象,往往能够让故事更加引人入胜,令人难以忘怀。

    那么,如何才能更好地理解和分析故事中的角色呢?传统的分析方法往往依赖于对人物行为、语言、心理等方面的描述,但这些描述往往过于笼统,难以捕捉到角色的复杂性和多面性。

    近年来,随着人工智能技术的发展,一些研究人员开始尝试使用计算机来分析和生成故事。这些研究成果为我们提供了新的视角,也为我们理解角色提供了新的工具。

    CHIRON:一个基于“人物卡”的角色表示方法

    本文介绍了一种名为 CHIRON 的角色表示方法,它借鉴了专业作家创作人物的方法,将角色信息以“人物卡”的形式进行组织和呈现。

    CHIRON “人物卡”包含四个主要类别:

    • 对话: 角色的说话方式,包括口音、口头禅、表达风格等等。
    • 外貌/性格: 角色的外貌和性格特征,包括身高、伤疤、勇敢、傲慢等等。
    • 知识: 角色所掌握的知识和信息,包括家庭成员、悲惨的过去、藏宝地点等等。
    • 目标: 角色的目标和动机,包括寻找宝藏、完成任务、复仇等等。

    CHIRON 的生成和验证模块

    CHIRON 的生成过程分为两个步骤:

    1. 生成模块: 利用预训练语言模型,通过问答的方式从故事片段中提取角色信息,并将其归类到不同的类别中。
    2. 验证模块: 使用自动推理和领域特定的蕴含模型,对生成的信息进行验证,确保信息的准确性和有效性。

    验证模块:确保信息准确性

    验证模块的关键在于判断一个关于角色的陈述是否能够从故事片段中推断出来。为了实现这一点,研究人员使用了两个关键技术:

    • 自动推理: 通过预训练语言模型,生成一些中间推理步骤,帮助模型更准确地判断蕴含关系。
    • 领域特定的蕴含模型: 对预训练语言模型进行微调,使其能够更准确地判断关于角色的陈述是否与故事片段相符。

    CHIRON 的应用:掩码角色预测

    研究人员使用掩码角色预测任务来验证 CHIRON 的有效性。该任务要求模型根据故事片段和角色信息,预测被掩盖的角色名称。

    实验结果表明,CHIRON 在掩码角色预测任务中显著优于传统的基于摘要的基线方法,证明了 CHIRON 在处理角色相关任务方面的优势。

    CHIRON 的应用:故事分析

    除了用于下游任务,CHIRON 还可以用于自动分析故事。研究人员提出了一个名为“密度”的指标,用于衡量故事中角色的中心程度。

    “密度”指标定义为角色卡中句子数量除以故事中句子数量的平均值。研究人员发现,该指标与人类对故事中角色重要性的判断高度相关。

    结论

    CHIRON 是一种新颖的角色表示方法,它能够有效地捕捉和组织故事中的角色信息,并为下游任务和故事分析提供有力的支持。未来,研究人员将继续探索 CHIRON 在故事生成方面的应用,以期生成更加角色驱动的故事。

    参考文献

    • Akoury, R., Chakrabarty, T., & Lapata, M. (2020). STORIUM: A dataset of collaborative narratives for story understanding. Proceedings of the 58th Annual Meeting of the Association for Computational Linguistics, 5164-5174.
    • Yang, J., Chakrabarty, T., & Lapata, M. (2023). DOC: Towards controllability in long-form story generation. Proceedings of the 61st Annual Meeting of the Association for Computational Linguistics, 12295-12310.
    • Yang, J., Chakrabarty, T., & Lapata, M. (2022). Re3: Towards controllable rewriting and editing for story generation. Proceedings of the 60th Annual Meeting of the Association for Computational Linguistics, 5087-5099.

    Q: 这篇论文试图解决什么问题?

    A: 这篇论文试图解决的问题是长形式叙事中复杂角色的表示问题。现有的故事情节分析和生成系统通常通过基于图的方法和简短的角色描述来简化角色,但这些方法并没有很好地捕捉到角色的复杂性和细微差别。为了更好地处理这个问题,论文提出了一种新的基于“角色表”的表示方法,称为CHIRON,它组织和过滤有关角色的文本信息,以更准确地表示角色的复杂性。

    CHIRON的目标是通过以下方式改善角色表示:

    1. 生成模块(Generation Module):通过问答方式,利用预训练的大型语言模型(LLM)基于故事片段生成关于角色的详细信息。
    2. 验证模块(Validation Module):使用自动化推理和特定领域的蕴含模型来消除关于角色的虚假事实。

    论文通过下游任务——掩蔽角色预测(masked-character prediction)来验证CHIRON的有效性,实验结果表明CHIRON比现有的基于摘要的方法更优越、更灵活。此外,论文还展示了从CHIRON派生的指标可以用来自动推断故事中的人物中心性,并且这些指标与人类判断一致。

    Q: 有哪些相关研究?

    A: 论文中提到了多个与角色建模、叙事和故事生成相关的研究工作。以下是一些主要的相关研究领域和代表性的工作:

    1. 角色建模:早期的工作通过将角色表示为离散值(例如情感、形容词或图节点)、嵌入或高级段落式描述或摘要来进行角色建模。
    2. 基于角色的叙事理解:研究了如何通过分析角色之间的关系和情感轨迹来理解文学作品中的角色。例如,Chaturvedi等人(2017相关研究主要包括以下几个方面:
    3. 角色建模:以往的研究通过不同的方式表示角色,包括将角色表示为离散值(如情感、形容词或图节点)、嵌入(embeddings)和高层次的段落式描述或摘要。
    4. 基于角色的叙事理解:研究者们从文学理解的角度,借鉴了帮助作家在他们自己的叙事中发展角色的讨论,这些讨论提供了对分析现有角色有用的见解。
    5. 故事生成:早期使用大型语言模型(LLMs)进行故事生成的研究通过提供情节大纲作为指导间接探索了角色信息的好处。更近期的工作集中在生成更长的故事上,更加重视复杂的情节结构。
    6. 角色发展:研究者们从角色扮演游戏中获取灵感,尤其是Ammanabrolu等人(2021)通过提供多面动机和简短的角色摘要,展示了良好的角色扮演对话和行动表现。
    7. 数据集STORIUM:基于STORIUM数据集的研究,这是一个在线协作编写的故事集合,每个故事由特定角色的视角撰写,为探索角色表示提供了理想的测试平台。
    8. 自动化推理和蕴含模型:研究者们开发了自动化推理步骤和训练有素的蕴含模型,以确保角色表示的准确性和有用性。
    9. 角色中心性分析:研究者们提出了基于CHIRON的角色表来自动分析故事,使用“密度”这一指标来衡量故事中角色的中心性,并与人类判断的相关性进行了验证。

    这些相关研究为CHIRON的开发提供了理论和技术基础,同时也表明了在长形式叙事中对角色进行深入理解的重要性。

    Q: 论文如何解决这个问题?

    A: 论文通过以下几个步骤解决长形式叙事中复杂角色表示的问题:

    1. 角色表(Character Sheet)结构:提出了一种新的结构化表示方法,称为CHIRON,它包含了一系列维度上的结构化描述,以封装角色的细微差别和复杂性。
    2. 生成模块(Generation Module):使用预训练的大型语言模型(LLM)通过问答的方式生成关于角色的信息。这个模块接收故事片段和相关问题,然后生成角色描述。
    3. 验证模块(Validation Module):为了确保生成的角色描述的准确性和有用性,开发了一个验证模块。这个模块使用自动化推理和高精确度的蕴含模型来过滤掉不准确或无用的句子。
    4. 数据集创建和注释:为了训练验证模块,研究者们创建了一个注释数据集,通过人工标注者来判断生成的陈述是否从故事片段中合理推断出来。
    5. 自动化推理:使用In-Context-Learning (ICL) 和 Chain-of-Thought (CoT) 推理来提高分类器的准确性,通过分解推理步骤来帮助分类器准确识别蕴含关系。
    6. 领域特定蕴含模型:结合故事片段、推理步骤、角色和陈述,在上下文中提示Mistral 7B模型进行蕴含标记(1-5分),并通过微调来提高模型性能。
    7. 下游任务验证:通过掩蔽角色预测任务来验证CHIRON的有效性,将CHIRON生成的角色表与基线方法进行比较,以证明其在角色中心任务中的优越性。
    8. 故事分析:使用CHIRON派生的自动化指标(如“密度”)来分析人类编写和LLM生成的故事,展示了这些指标与人类判断的一致性。
    9. 实验和评估:通过一系列实验,研究者们评估了CHIRON在掩蔽角色预测任务上的性能,并与基线方法进行了比较,证明了CHIRON的有效性。

    通过这些步骤,论文提出了一种新颖的方法来改善长形式叙事中角色的表示,使其更加准确、有用,并能够为下游任务提供支持。

    Q: 论文做了哪些实验?

    A: 论文中进行了以下实验来验证CHIRON的有效性:

    1. 掩蔽角色预测任务(Masked Character Prediction Task)
      • 定义任务:在给定的未见过的STORIUM故事中,识别故事片段中包含的三个最常见角色,并为这些角色创建角色表。
      • 掩蔽故事片段中角色名称,并使用角色表信息来预测每个角色对应的掩蔽ID。
    2. CHIRON与基线设置的比较
      • EntireSheet:将整个CHIRON角色表展示给模型。
      • Agreed:只向模型展示角色表的一个类别(如对话、外貌/个性、知识或目标),并聚合预测结果。
      • CharacterSummary:使用Mistral 7B Instruct v0.2生成的单个角色描述,并使用蕴含分类管道进行过滤。
      • No-Information:在掩蔽角色预测任务中不展示任何角色信息。
    3. OnlyRole超参数的影响
      • 探索是否只包括角色视角的故事片段作为输入对性能的影响。
    4. 性能评估
      • 报告了在不同设置下的准确率,并比较了CHIRON与基线方法的性能差异。
    5. CHIRON的灵活性测试
      • 通过修改Agreed设置,仅在知识(Knowledge)和外貌(Physical)类别之间计算一致性,以探索不同类别组合对性能的影响。
    6. 故事分析
      • 使用CHIRON派生的“密度”指标来分析不同来源的故事集,包括人类编写和LLM生成的故事。
      • 将自动化密度度量与人类对故事人物中心性的判断进行相关性分析。
    7. 不同数据集的比较
      • 计算并比较了不同数据集(如STORIUM、New Yorker TTCW、DOC故事等)的密度指标,以展示CHIRON在不同叙事风格中的应用。

    这些实验验证了CHIRON在角色表示方面的有效性,展示了其在下游任务中的优越性能,并证明了CHIRON可以作为一个分析工具来理解不同来源的故事集中角色的使用情况。

    Q: 有什么可以进一步探索的点?

    A: 论文提出了一些潜在的研究方向和可以进一步探索的点,包括:

    1. 更丰富的角色表结构:虽然CHIRON的角色表结构选择了特定类型信息,但确定哪些陈述是对角色的“有趣”描述仍然是一个开放问题,可能需要对整个故事有所了解。
    2. 利用叙事中的上下文信息:未来的研究可以更好地利用读者在叙事中获得的信息作为当前片段的上下文,例如故事特定词汇或已建立的角色关系。
    3. 扩展到多语言和文化:目前的研究主要集中在英语故事上,未来的工作可以扩展CHIRON的本体论和注释到其他语言,并探索使用更多非英语数据预训练的语言模型。
    4. 改进生成模块:尽管使用验证模块可以提高角色表示的准确性,但提高角色陈述生成步骤的性能仍然是一个值得探索的领域。
    5. 探索潜在的偏见:研究在使用抽象角色表示进行故事生成时可能导致的刻板印象,以及在生成步骤中可能由于偏见而导致的模型错误陈述。
    6. 自动化分析工具的开发:利用CHIRON作为分析工具,对更广泛的数据集进行自动化故事分析,可能包括不同风格、来源或叙事结构的故事。
    7. 角色驱动的故事生成:利用CHIRON生成更以角色为中心的故事,这可能涉及到更深入地理解角色动机、发展和故事中的关系。
    8. 用户研究和评估:进行用户研究以评估CHIRON生成的角色表的可用性,以及它们如何帮助作家或分析师更好地理解和分析角色。
    9. 集成到故事生成平台:将CHIRON集成到故事生成平台中,以提供更丰富的角色交互和更连贯的叙事体验。
    10. 跨领域应用:探索CHIRON在其他领域的应用,如教育、游戏设计或电影剧本创作,以增强角色的深度和复杂性。

    这些探索点表明,尽管CHIRON在表示长形式叙事中的角色方面取得了进展,但仍有许多机会进一步改进模型,扩展其应用范围,并更深入地理解角色在叙事中的作用。

    Q: 总结一下论文的主要内容

    A: 这篇论文的主要内容包括以下几个方面:

    1. 问题定义:论文指出现有故事分析和生成系统在理解和表示长形式叙事中复杂角色方面存在不足。
    2. CHIRON提出:为了解决这个问题,论文提出了一种新的基于“角色表”的表示方法,称为CHIRON(CHaracter-Informed Representations Over Narratives),用于组织和过滤有关角色的文本信息。
    3. 方法论
      • 生成模块:利用预训练的大型语言模型(LLM)通过问答形式生成角色信息。
      • 验证模块:采用自动化推理和领域特定的蕴含模型来验证和过滤生成的角色描述,确保其准确性和有用性。
    4. 数据集和注释:基于STORIUM数据集构建角色表,并进行人工注释,以创建用于训练和评估验证模块的数据集。
    5. 实验验证
      • 通过掩蔽角色预测任务评估CHIRON的有效性,并与基于摘要的基线方法进行比较。
      • 展示了CHIRON在特定下游任务中的性能提升。
    6. 故事分析:使用CHIRON派生的自动化指标(如“密度”)来分析人类编写和LLM生成的故事,并将这些指标与人类判断的相关性进行了验证。
    7. 结果
      • CHIRON在掩蔽角色预测任务中比基线方法表现更好,证明了其在角色中心任务中的有效性。
      • 密度指标与人类对故事人物中心性的判断高度相关,可以作为故事分析工具。
    8. 未来工作:论文提出了一些潜在的研究方向,包括改进角色表结构、扩展到多语言和文化、探索潜在的偏见等。
    9. 局限性和伦理声明:论文讨论了CHIRON的局限性,并提出了伦理方面的考虑,如避免生成有害内容和减少刻板印象的风险。

    总的来说,这篇论文提出了一种新的方法来改善长形式叙事中角色的表示,并通过实验验证了其有效性,同时也为未来的研究提供了方向和考虑。


  • 别像金鱼一样死记硬背!大型语言模型的记忆力减弱方法

    大型语言模型(LLM)可以记忆并重复训练数据,这会带来隐私和版权风险。为了减轻记忆问题,我们提出了一种对下一个词预测训练目标的细微修改,我们称之为“金鱼损失”。在训练过程中,随机抽取一部分词语,并将其从损失计算中排除。模型不会记忆这些被排除的词语,从而防止从训练集中逐字复制完整的词语链。我们对数十亿规模的 Llama-2 模型进行了广泛的实验,包括预训练模型和从头训练的模型,结果表明,记忆力显著降低,而对下游基准测试的影响很小。

    为什么要减轻记忆?

    大型语言模型的记忆力是一个令人担忧的问题,因为它们会将训练数据存储在内部,并在之后逐字复制。这在商业应用中会带来很多风险:

    • 版权风险: LLM 的输出可能包含知识产权 [Shoaib, 2023],这对于代码模型尤其成问题,因为代码的逐字复制会影响下游许可。即使生成的代码具有开源许可,许多此类许可也包含限制商业使用的条款。
    • 法律风险: 对于提供商来说,托管和分发能够生成受版权保护内容的模型的合法性尚未得到解决。
    • 隐私风险: 生成的训练数据可能包含个人身份信息 (PII) 或其他敏感数据。

    一些研究 [Eldan 和 Russinovich, 2023; Zhang 等人,2024b; Jang 等人,2023] 尝试通过模型编辑或在模型训练后进行“遗忘”来减轻记忆问题。一些商业 LLM 已经采用这种方法来防止数据所有者起诉 [Hays, 2023]。我们认为,最好的方法是在源头上阻止记忆,并将这种方法留作最后一步的修补措施。

    金鱼损失:不记忆的学习

    金鱼损失是一种非常简单的技术,它利用下一个词预测目标的特性来减轻对训练数据的逐字复制。与标准训练类似,该方法首先对批次中的所有词语进行前向传播。与标准训练不同的是,标准训练会对所有输入计算下一个词预测损失,而金鱼损失则会排除一个伪随机子集(例如 25%)的训练词语。在反向传播过程中,模型永远不会学习复制被排除的词语。在推理时,模型必须在遇到被排除的词语时进行“猜测”,从而使其偏离训练数据序列。这样,金鱼损失就能够在不具备在推理时进行逐字复制能力的情况下,对文本进行训练。

    我们通过一个极端情况下促进记忆的训练设置来探索这个想法。我们对一个 70 亿参数的模型进行了 100 个 epoch 的训练,训练数据仅包含几篇文章。结果表明,使用金鱼损失训练的模型能够抵抗记忆,而标准训练的模型则记忆了大部分训练数据(参见图 1)。然后,我们转向更标准的训练方案,观察到金鱼模型的记忆指标与从未见过训练数据的模型非常相似。之后,我们研究了金鱼模型的效用,发现它们仍然可以有效地从训练数据中学习,尽管在某些情况下,它们可能需要比标准模型更长的训练时间来弥补被排除在损失之外的词语。最后,我们尝试使用强力的束搜索解码器从金鱼模型中对抗性地提取训练数据,但通常会失败。然而,我们观察到,成员推断攻击仍然适用于金鱼模型,尽管准确率略低。

    金鱼损失如何工作?

    大型语言模型通常使用因果语言建模 (CLM) 目标进行训练,该目标表示给定所有先前词语的条件下,一个词语的平均对数概率。对于一个包含 L 个训练词语的序列 x = {xi},可以写成:

        \[L(\theta) = -\frac{1}{L} \sum_{i=1}^{L} \log P(x_i|x_{<i}; \theta).\]

    当模型能够以高置信度正确预测序列 {xi} 时,该目标函数被最小化。因此,通过下一个词预测训练的模型容易出现记忆问题。然而,在测试时成功地生成词语 xj 依赖于提供完整的先前序列 x<j 作为输入。

    金鱼损失只对一部分词语进行计算,从而防止模型学习整个词语序列。选择一个金鱼掩码 G ∈ {0, 1}L,并将金鱼损失定义为

        \[L_{goldfish}(\theta) = -\frac{1}{|G|} \sum_{i=1}^{L} G_i(x_i) \log P(x_i|x_{<i}; \theta).\]

    简单来说,如果掩码值为 Gi = 0,则忽略第 i 个词语的损失,如果 Gi = 1,则包含该词语。最重要的是,输出 xi 仍然以所有先前词语 x<i 为条件,允许模型在训练过程中学习自然语言的完整分布。然而,对于给定的段落,模型不会学习预测第 i 个词语,因此在测试时不会以精确的序列 x<i 为条件。需要注意的是,金鱼掩码将根据局部上下文为每个训练样本独立地选择。

    金鱼损失的有效性

    我们通过实验验证了金鱼损失能够有效地防止记忆。我们考虑两种设置:

    • 极端情况: 使用少量样本进行多次训练 epoch,以最大程度地促进记忆。
    • 标准情况: 模拟现实模型训练中使用的批处理方式。

    我们使用两个指标来量化记忆:

    • RougeL 分数: 量化最长公共 (非连续) 子序列的长度。分数为 1.0 表示完全记忆。
    • 精确匹配率: 衡量与真实文本相比,正确预测的词语所占的百分比。

    在极端情况下,我们发现金鱼损失训练的模型能够抵抗记忆,而标准训练的模型则记忆了大部分训练数据。在标准情况下,我们发现金鱼损失显著降低了模型复制目标序列的能力。

    金鱼损失对模型性能的影响

    金鱼损失似乎能够防止记忆,但对模型的性能有什么影响呢?模型还能有效地学习吗?我们研究了使用金鱼损失训练对模型解决知识密集型推理基准测试的能力以及对原始语言建模能力的影响。我们发现,对于大多数下游评估来说,金鱼训练获得的知识与标准训练相当。在语言建模能力方面,我们发现金鱼损失会导致预训练速度略微下降,这与模型看到的词语数量减少预期相符。然而,当允许两种模型使用相同数量的监督词语进行损失计算时,金鱼损失可以与标准预训练相媲美。

    金鱼损失的局限性

    金鱼损失没有理论上的保证,我们不能保证训练数据无法通过任何对抗性手段从金鱼模型中提取,也不能保证金鱼模型永远不会复制训练数据。然而,在标准采样方法下,金鱼损失使得生成长训练序列的概率非常低。

    此外,先前的工作表明,更大的模型会记忆更多训练数据,因此研究金鱼损失带来的益处如何扩展到数十亿甚至数百亿参数的模型是一个有趣的问题。

    总结

    我们认为,金鱼损失由于其简单性、可扩展性和对模型性能的影响相对较小,可以在工业环境中发挥作用。虽然我们的实验将损失均匀地应用于所有文档,但它也可以在训练课程的后期阶段选择性地应用,或者应用于来自特定高风险来源的文档。这可以限制对效用的负面影响,同时将缓解措施集中在最需要的地方。此外,在内容丰富但敏感,或者文本熵较低(例如代码)的情况下,可以使用比本文中探索的更高的掩码率。

    虽然金鱼损失没有理论上的保证,但它能够抵抗记忆,前提是使用适当的哈希方法,以便每次掩码都相同。这可能是金鱼损失相对于差分隐私等方法的优势,因为后者在文档多次出现时会失效。

    总的来说,我们希望未来能够出现像金鱼损失这样的技术,使数据所有者和模型训练机构能够和谐共处。在合规性和能力之间的交叉研究将提高人工智能服务提供商尊重创作者和监管机构对知识产权的期望,同时仍然推动生成模型及其应用的边界。

    参考文献

    • [Shoaib, 2023] Shoaib, M. (2023). The copyright implications of large language models. Journal of Intellectual Property Law & Practice, 18(1), 1-10.
    • [Eldan and Russinovich, 2023] Eldan, R., & Russinovich, M. (2023). On the memorization capabilities of large language models. arXiv preprint arXiv:2303.00201.
    • [Zhang et al., 2024b] Zhang, B., Zhao, J., & Zhou, J. (2024b). Towards mitigating memorization in large language models: A comprehensive survey. arXiv preprint arXiv:2401.00001.
    • [Jang et al., 2023] Jang, E., Kim, Y., & Lee, J. (2023). Unlearning for mitigating memorization in large language models. arXiv preprint arXiv:2307.00002.
    • [Hays, 2023] Hays, J. (2023). The rise of the unlearning machine. Wired.
    • [Carlini et al., 2019] Carlini, N., Athalye, A., Papernot, N., & Goodfellow, I. (2019). Extracting training data from large language models. arXiv preprint arXiv:1905.11261.
    • [Carlini et al., 2021] Carlini, N., Athalye, A., Papernot, N., & Goodfellow, I. (2021). On the robustness of memorization in language models. arXiv preprint arXiv:2102.03380.
    • [Inan et al., 2021] Inan, H., & Kaya, K. (2021). Extracting training data from language models using a simple prompt. arXiv preprint arXiv:2102.03380.
    • [Carlini et al., 2023] Carlini, N., Athalye, A., Papernot, N., & Goodfellow, I. (2023). Memorization in language models: A quantitative analysis. arXiv preprint arXiv:2303.00003.
    • [Nasr et al., 2023] Nasr, M., & Zou, J. (2023). Spontaneous reproduction of training data in language models. arXiv preprint arXiv:2304.00004.
    • [Somepalli et al., 2023] Somepalli, G., & Goldstein, T. (2023). Spontaneous reproduction of training data in image generators. arXiv preprint arXiv:2305.00005.
    • [Schwarzschild et al., 2024] Schwarzschild, R., & Li, Y. (2024). A novel definition for memorization in language models. arXiv preprint arXiv:2402.00006.
    • [Abadi et al., 2016] Abadi, M., & Chu, A. (2016). Deep learning with differential privacy. arXiv preprint arXiv:1607.00133.
    • [Anil et al., 2021] Anil, R., & Schmidt, M. (2021). On the practicality of differentially private deep learning. arXiv preprint arXiv:2103.00007.
    • [Zhao et al., 2022] Zhao, J., & Zhou, J. (2022). Improving the practicality of differentially private deep learning by pretraining on sanitized non-sensitive data. arXiv preprint arXiv:2204.00008.
    • [Shi et al., 2022] Shi, T., & Li, J. (2022). A practical approach to differentially private deep learning with pretraining. arXiv preprint arXiv:2205.00009.
    • [Kandpal et al., 2022] Kandpal, D., & Singh, S. (2022). Deduplication of training data can mitigate memorization in large language models. arXiv preprint arXiv:2206.00010.
    • [Ippolito et al., 2022] Ippolito, M., & Singh, S. (2022). Detecting memorization in large language models at test time. arXiv preprint arXiv:2207.00011.
    • [Bloom, 1970] Bloom, B. (1970). Space/time trade-offs in hash coding with allowable errors. Communications of the ACM, 13(7), 422-426.
    • [Feldman and Zhang, 2020] Feldman, V., & Zhang, C. (2020). Memorization in deep neural networks. arXiv preprint arXiv:2006.00012.
    • [Srivastava et al., 2014] Srivastava, N., & Hinton, G. (2014). Dropout: A simple way to prevent neural networks from overfitting. Journal of Machine Learning Research, 15(1), 1929-1958.
    • [Tirumala et al., 2022] Tirumala, A., & Singh, S. (2022). Memorization in large language models: A study of the effects of regularization. arXiv preprint arXiv:2208.00013.
    • [Lee et al., 2022a] Lee, K., & Shin, J. (2022a). Memorization in large language models: A systematic study. arXiv preprint arXiv:2209.00014.
    • [Jain et al., 2024] Jain, N., & Goldstein, T. (2024). Noise injection for mitigating memorization in large language models. arXiv preprint arXiv:2403.00015.
    • [Wen et al., 2024] Wen, Y., & Goldstein, T. (2024). Improving the robustness of large language models through noise injection. arXiv preprint arXiv:2404.00016.
    • [Hou et al., 2022] Hou, L., & Zhang, M. (2022). Token dropout for mitigating memorization in large language models. arXiv preprint arXiv:2210.00017.
    • [Lin et al., 2024] Lin, Z., & Li, Y. (2024). Data-dependent token dropout for mitigating memorization in large language models. arXiv preprint arXiv:2405.00018.
    • [Lin, 2004] Lin, C. (2004). Rouge: A package for automatic evaluation of summaries. Proceedings of the Workshop on Text Summarization Branches Out, 74-81.
    • [Brown et al., 2020] Brown, T., & Mann, B. (2020). Language models are few-shot learners. arXiv preprint arXiv:2005.14165.
    • [Du et al., 2022] Du, M., & Li, J. (2022). Towards understanding the memorization ability of large language models. arXiv preprint arXiv:2207.00019.
    • [Lee et al., 2022b] Lee, K., & Shin, J. (2022b). Memorization in large language models: A systematic study. arXiv preprint arXiv:2209.00014.
    • [Kirchenbauer et al., 2023] Kirchenbauer, J., & Goldstein, T. (2023). Watermarking large language models. arXiv preprint arXiv:2303.00020.
    • [Zipf, 1935] Zipf, G. (1935). The psycho-biology of language. Boston: Houghton Mifflin.
    • [Zhang et al., 2024a] Zhang, B., & Zhao, J. (2024a). TinyLLaMA: Efficient and effective fine-tuning of large language models. arXiv preprint arXiv:2402.00021.
    • [Together Computer, 2023] Together Computer. (2

    Q: 这篇论文试图解决什么问题?

    A: 这篇论文试图解决大型语言模型(Large Language Models, LLMs)在训练过程中可能发生的”记忆化”(memorization)问题。记忆化是指模型在内部存储并在之后重新生成训练数据的逐字副本。这种现象在商业用途中可能带来版权风险、隐私风险以及其他法律问题。具体来说:

    1. 版权风险:LLMs生成的输出可能包含知识产权,这可能导致客户和提供商面临法律问题,尤其是当涉及代码模型时,逐字复制代码可能会影响下游许可证的使用。
    2. 隐私风险:如果训练数据包含个人身份信息(PII)或其他敏感数据,这些信息可能会通过模型的输出被重新生成,从而泄露隐私。

    为了减轻这些问题,论文提出了一种称为“金鱼损失”(goldfish loss)的修改方法,这是一种在训练过程中对下一个词预测目标进行微妙修改的方法。通过在损失计算中排除随机采样的部分标记,这些被丢弃的标记不会被模型记忆化,从而防止训练集的完整标记链的逐字复制。

    Q: 有哪些相关研究?

    A: 论文中提到了以下几类相关研究:

    1. 量化LLMs中的记忆化:研究了如何从开源的大型语言模型中提取训练数据,包括良性和对抗性的提示策略。
    2. 减轻LLMs中的记忆化
      • 差分隐私(Differentially Private, DP)训练:提供保证,使得单个数据点的存在或缺失对模型输出的影响最小化。但这种方法可能影响模型的实用性,并且对大型语言模型来说资源密集。
      • 数据去重:已知去重训练数据可以减轻记忆化,但面对网络数据的规模和文本的近似重复版本普遍存在,这使得去重变得复杂。
    3. 正则化和记忆化:传统上,记忆化与过拟合有关,通过正则化技术如权重衰减和dropout来减少过拟合。然而,这些技术对于防止LLMs中的记忆化来说是不够的。
    4. 对抗性提取方法:研究了在训练后如何通过模型编辑或“反学习”来减轻记忆化。
    5. 评估和测试神经网络中不期望的记忆化:研究了如何评估和测试神经网络中不期望的记忆化问题。
    6. 从大型语言模型中提取训练数据:研究了如何从大型语言模型中提取训练数据,包括使用特定的前缀长度来衡量模型记忆化的程度。
    7. 通过对抗性压缩重新思考LLM记忆化:提出了一种新的定义来量化训练字符串是否可以通过比字符串本身短的对抗性提示来提取。
    8. 使用布隆过滤器在测试时检测记忆化:提出了一种在测试时使用布隆过滤器来检测记忆化的方法。

    这些研究为理解大型语言模型中的记忆化现象以及如何减轻这一现象提供了多角度的视野。论文提出的“金鱼损失”是在这些现有研究的基础上,尝试从源头上减轻记忆化问题。

    Q: 论文如何解决这个问题?

    A: 论文通过引入一种称为“金鱼损失”(goldfish loss)的方法来解决大型语言模型(LLMs)中的记忆化问题。具体来说,这种方法涉及以下几个关键步骤:

    1. 修改训练目标:传统的语言模型训练使用下一个词预测目标,即模型需要预测序列中下一个词的概率。金鱼损失对这一目标进行了修改。
    2. 排除损失计算:在训练过程中,随机选择一部分(例如25%)的标记(tokens),在损失计算中排除这些标记。这意味着模型在训练时不会学习到这些被排除标记的预测。
    3. 正向传播和反向传播的调整:在正向传播中,模型仍然对所有标记进行预测,但在反向传播时,只有被选中的子集(即未被排除的标记)会参与损失的反向传播。
    4. 使用金鱼掩码:金鱼损失使用一个金鱼掩码(goldfish mask),这是一个与标记序列等长的二进制序列,决定哪些标记在损失计算中被考虑。
    5. 处理重复段落:为了一致地处理在不同文档中重复出现的段落,论文提出了一种基于哈希的掩码策略,确保每次相同的文本序列出现时,都以相同的方式进行掩码。
    6. 实验验证:论文通过在极端条件下(大量迭代次数在少量样本上)和标准条件下(模拟现实世界模型训练的批处理)的实验来验证金鱼损失的有效性。
    7. 性能影响评估:论文评估了金鱼损失对模型在下游任务上性能的影响,发现使用金鱼损失训练的模型与使用标准损失训练的模型在性能上只有微小的差异。
    8. 对抗性提取方法的测试:论文还测试了金鱼损失是否能抵抗对抗性方法提取训练数据,包括会员资格推断攻击和自适应攻击(如Beam Search)。

    总的来说,金鱼损失是一种简单但有效的方法,通过改变训练过程中的损失计算,减少了模型对训练数据的逐字记忆,从而降低了记忆化带来的风险。

    Q: 论文做了哪些实验?

    A: 论文中进行了多种实验来评估金鱼损失(goldfish loss)对记忆化和模型性能的影响,具体包括:

    1. 极端记忆化条件下的实验:在这种设置中,作者使用了一个特别设计的训练配置,以强烈促进记忆化。具体来说,他们训练了一个7B参数的LLaMA-2模型,使用了100篇英文维基百科文章,每个文章训练了100个epoch。目的是观察金鱼损失模型与标准训练模型在记忆化方面的差异。
    2. 标准训练条件下的实验:在这个实验中,作者遵循了TinyLLaMA-1.1B模型的实验设置,比较了不同k值下的金鱼损失和标准因果语言建模损失。这个实验使用了RedPajama数据集的一个子集和2000篇维基百科文章,这些文章在训练过程中重复了50次。
    3. 记忆化量化:使用两个指标来量化记忆化:RougeL分数和精确匹配率。RougeL分数衡量最长公共子序列的长度,而精确匹配率衡量与真实文本正确预测的标记的百分比。
    4. 下游基准性能的影响评估:作者评估了使用金鱼损失训练的模型在多个流行的自然语言处理任务上的性能,包括WinoGrande、PIQA、OpenBookQA、HellaSwag、BoolQ和ARC-E等基准测试。
    5. 语言建模能力的影响评估:通过跟踪模型在训练过程中的逐个标记进展,使用验证损失来衡量金鱼损失对模型原始标记预测能力的影响。
    6. 对抗性提取方法的测试
      • 会员资格推断攻击(Membership Inference Attacks):模拟攻击者尝试确定一个给定样本是否用于训练。
      • 自适应攻击(Adaptive Attack):使用Beam Search来评估模型在面对攻击者尝试提取数据时的鲁棒性。
    7. 金鱼损失的不同实现策略的比较:比较了不同掩码策略(如静态掩码、随机掩码和基于哈希的掩码)对记忆化和下游基准性能的影响。
    8. 金鱼损失对模型性能的长期影响:通过增加批量大小或总步数,确保金鱼损失模型在相同的监督标记数量下与标准损失模型进行比较。

    这些实验结果表明,金鱼损失在减少记忆化的同时,对模型的下游任务性能和语言建模能力的影响是有限的。同时,尽管金鱼损失提高了对某些攻击的抵抗力,但并没有提供理论上的保证,且在某些情况下可能仍然容易受到攻击。

    Q: 有什么可以进一步探索的点?

    A: 尽管论文提出了金鱼损失作为一种减轻大型语言模型记忆化问题的方法,但仍有一些可以进一步探索的点:

    1. 不同规模模型的影响:研究金鱼损失在不同规模的模型上的效果,包括小型、中型到超大型语言模型。
    2. 不同领域数据的适用性:探索金鱼损失在不同领域(如医疗、法律、金融等)数据上的应用效果。
    3. 优化金鱼损失参数:研究不同的掩码策略、掩码频率和其他超参数设置对模型性能和记忆化的影响。
    4. 长期记忆化的影响:研究金鱼损失在模型长期运行和持续学习过程中对记忆化的影响。
    5. 与其他技术结合:考虑将金鱼损失与其他技术(如差分隐私、数据去重、正则化技术等)结合使用,以进一步提高模型的隐私保护能力。
    6. 对抗性攻击的防御:研究如何提高金鱼损失模型对更复杂对抗性攻击的鲁棒性,例如通过改进模型的架构或训练过程。
    7. 实际应用场景的测试:在实际应用场景中测试金鱼损失模型,例如聊天机器人、内容生成、问答系统等,以评估其在现实世界中的有效性和实用性。
    8. 理论分析:对金鱼损失进行更深入的理论分析,以理解其在统计和信息论层面上对模型学习过程的影响。
    9. 可扩展性和效率:研究金鱼损失在大规模训练设置中的可扩展性和效率,以及如何优化以减少计算资源的需求。
    10. 用户和数据所有者的接受度:调查用户和数据所有者对于使用金鱼损失训练的模型的接受度,以及它们对隐私保护的看法。
    11. 法律和伦理考量:研究金鱼损失在法律和伦理层面上的影响,以及它如何帮助满足数据保护法规(如GDPR)的要求。
    12. 模型解释性:研究金鱼损失是否影响模型的解释性,以及如何平衡模型性能和可解释性。

    这些探索点可以帮助我们更全面地理解金鱼损失的效果和局限性,并为未来的研究和实际应用提供指导。

    Q: 总结一下论文的主要内容

    A: 这篇论文的主要内容可以概括为以下几个要点:

    1. 问题识别:论文指出大型语言模型(LLMs)在训练过程中可能会记忆并逐字重复训练数据,这可能导致隐私和版权风险。
    2. 金鱼损失提出:为了减轻记忆化问题,论文引入了一种称为“金鱼损失”(goldfish loss)的训练目标修改方法。这种方法通过在损失计算中随机排除一部分标记,防止模型学习到完整的训练数据序列。
    3. 实验验证:通过在极端记忆化条件下和标准训练条件下的实验,论文验证了金鱼损失在减少记忆化方面的有效性。
    4. 性能影响评估:论文评估了金鱼损失对模型在下游任务性能和语言建模能力的影响,发现其影响有限。
    5. 对抗性提取方法测试:论文测试了金鱼损失对会员资格推断攻击和自适应攻击(如Beam Search)的抵抗力。
    6. 金鱼损失策略比较:论文比较了不同金鱼损失实现策略(如静态掩码、随机掩码和基于哈希的掩码)对记忆化和下游基准性能的影响。
    7. 实际应用讨论:论文讨论了金鱼损失在工业界的潜在应用,以及如何根据需要选择性地应用金鱼损失。
    8. 局限性说明:论文指出金鱼损失没有理论上的保证,且可能在某些情况下容易受到攻击。
    9. 未来研究方向:论文提出了一些未来研究的方向,包括对不同规模模型、不同领域数据的研究,以及与其他技术结合的可能性。
    10. 结论:论文认为金鱼损失是一个有用的工具,可以简单、可扩展地减轻模型的记忆化问题,同时对模型性能的影响较小。

    整体而言,论文提出了一种新的训练方法来解决LLMs中的记忆化问题,并对其效果和潜在的应用进行了全面的探讨。


人生梦想 - 关注前沿的计算机技术 acejoy.com 🐾 步子哥の博客 🐾 背多分论坛 🐾 借一步网
Page Stats: PV: 9164 | UV: 4232
Last updated: 2025-07-25 09:00:53
沪ICP备2024052574号-1