大家好,我是刘聪NLP。
大模型已经展现出了较强的文本生成能力,但随着使用场景变得越加复杂和严格,除了避免生成误导或不当言论内容外,往往还希望可以满足用户的特殊需求。而可控文本生成就是为了在保持文本生成有用性、流畅性和多样性的同时,保证文本符合预定的控制条件,例如安全性、主题一致性、语言风格等。
今天给大家带来一篇综述,介绍大模型可控文本生成(Controllable Text Generation, CTG)的相关技术。
Paper: https://arxiv.org/abs/2408.12599
Github: https://github.com/IAAR-Shanghai/CTGSurvey
以Transformer结构的大模型为重点,关注为大模型量身定制的CTG方法 探索如何将外部控制条件集成到CTG过程中、如何定义更有效和有用的文本生成 将CTG任务分为两个类别:内容控制(或语言控制/硬控制)和属性控制(或语义控制/软控制) 将CTG方法分为两个阶段:训练阶段方法(再训练、微调、强化学习)和推理阶段(提示工程、潜在空间操纵和解码时间干预)方法。
可控文本生成的任务
在CTG领域,任务可以大致分为两种类型:内容控制(或语言控制/硬控制)和属性控制(或语义控制/软控制)。
内容控制(或语言控制/硬控制)
结构控制:(1)特定格式:生成符合特定格式要求的文本;(2)组织结构:生成文本具有一定的段落划分等;(3)长度控制:生成文本的整体长度满足特定要求。 词汇控制:(1)必填词:生成文本中必须要包含一组预定的关键词;(2)禁止词:生成文本中机制出现潜在有害或不适当的术语。 属性控制(或语义控制/软控制)
安全控制:(1)去毒:生成文本应避免出现任何形式的有害内容;(2)遵守法律法规:生成文本应遵守所有适用的法律法规要求,例如隐私法、版权法等。 情绪控制:生成文本需要具有明确的情感倾向,例如积极、消极或中立。 风格控制:(1)通用样式:通用样式控制保证生成的文本满足特定场合和行业的需求;(2)个人风格:主要涉及生成模仿特定写作风格、个人习惯表达、个人偏好性的文本。 主题控制:生成文本严格遵循指定的主题,使内容与目标受众的预期知识和兴趣保持一致。
可控文本生成的方法
CTG方法根据干预模型生成的阶段分别为训练阶段和推理阶段。
训练阶段
再训练:当预训练模型不充分或需要修改模型架构时,使用专门设计的控制条件数据集从头开始训练模型,以更好地适应这些控制需求。
微调:利用较少的数据和计算资源,通过专门的数据集将所需的控制属性合并到模型参数中来调整预训练模型。
强化学习:采用奖励信息引导模型输出特定控制条件的文本。
预测阶段
提示工程:通过修改输入提示来指导模型的输出。
潜在空间操纵:通过调整模型隐藏层内的激活状态来控制生成的文本。
解码干预:通过修改生成输出的概率分布或在解码过程中应用特定规则来影响Token的选择,以改变输出文本,包括分类器引导、类条件语言模型、基于能量的模型、模型自反馈和外部知识。
可控文本生成的评估
CTG任务的评估可分为自动评估、人工评估和基于LLM的评估三种。
自动评估 一般指标:基于N-Gram重叠的指标、基于语言模型的指标、基于距离的指标; 特殊任务指标:情感、话题、毒性; 人工评估 流畅度 连贯性 话题性 质量情况 属性相关度 LLM评估
目前可控文本生成的评测榜单主要包括:CTRLEval、ConGenBench、 CoDI-Eval、FOFO。
写在最后
本人的新书《大大型语言模型实战指南》马上就要上架啦,大家可以关注公众号「NLP工作站」,加入交流群。到时候我会在群里抽几本送给粉丝们。
PS:给公众号添加【星标⭐️】不迷路!您的点赞、在看、关注是我坚持的最大动力!
我们的口号是“生命不止,学习不停”!
往期推荐:
一大堆Chinese Llama3正在袭来 LLM2LLM:迭代数据增强策略提升大模型微调效果 如何快速提高大模型的向量表征效果? RAG系统中答案无关片段对LLMs生成答案有何影响? InternLM2技术报告 Qwen1.5-MoE模型:2.7B的激活参数量达到7B模型的性能 RAG与Long-Context之争—没必要争 角色扮演大模型的碎碎念 自我蒸馏方法-减轻大模型微调过程中的灾难性遗忘 Yi技术报告细节分享 大模型增量预训练新技巧-解决灾难性遗忘 如何提高LLMs的文本表征(Text Embedding)能力? DEITA-大模型指令微调的数据高效筛选方法 大模型微调技巧 | 高质量指令数据筛选方法-MoDS 辟谣!微软撤回声称ChatGPT为20B参数的论文,并给出解释。 如何看待微软论文声称 ChatGPT 是 20B (200亿) 参数量的模型? 大模型微调技巧-在Embeeding上加入噪音提高指令微调效果 如何从数据集中自动识别高质量的指令数据 BaiChuan2技术报告细节分享&个人想法 大模型LLM微调经验总结&项目更新 打造LLM界的Web UI 是我们在训练大模型,还是大模型在训练我们? Llama2技术细节&开源影响 大模型时代-行业落地再思考 垂直领域大模型的一些思考及开源模型汇总 如何评估大模型-LLMs的好坏?