Multi-Attribute Controlled Text Generation with Contrastive-Generator and External-Discriminator

本文提出了一种结合外部判别器的对比生成器,用于高效生成具有特定主题和情感的文本。通过top-n加权解码增强相关性,同时保持语言流畅。实验验证了方法的有效性和扩展性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

文章的主要工作

(1)提出了一种用外部判别器训练的对比生成器,以有效地生成具有所需属性的文本。还设计了 top-n 加权解码来进一步提高文本和所需属性之间的相关性。
(2)我们进行了大量的实验来证明我们的方法可以在不牺牲语言质量的情况下生成具有所需情感和主题的文本。此外,我们的框架可以推广到新的控制代码,并在零样本生成上实现有希望的性能。

方法

image.png
图 1:我们的框架图示。 CC-LM中使用3个负样本和1个正样本来计算分类概率。该概率乘以预训练语言模型生成的无条件概率。通过我们提出的 top-n 加权解码,外部鉴别器(右侧)用于区分文本的所需属性。

如图 1 所示,我们的方法由三个主要模块组成。我们使用 CTRL 作为 CCLM 为对比生成器生成 1 个正样本和 3 个负样本。然后对比生成器输出指导预训练 LM 生成的分类概率。由于多属性控制文本生成需要考虑多个属性,因此我们使用外部判别器来估计生成的文本是否达到目标属性。为了保证文本的流畅性,top-n加权解码重新计算n个最可能的单词的概率。这些模块的详细信息将在以下小节中描述。

对比生成器

融合不同属性是多属性控制文本生成的挑战之一。为了处理这一问题,我们提出了一个对比生成器,以生成具有所需主题和情感的文本。

给定所需属性 a t a_t at a s a_s as,我们的任务是学习概率分布 P ( x 1 : N ∣ a t , a s ) P(x_{1:N} | a_t, a_s) P(x1:Nat,as),其中 x 1 : N x_{1:N} x1:N 表示一个完整文本 ( x 1 , … , x N ) (x_1, \ldots, x_N) (x1,,xN)。特别地,我们使用 a t a_t at 来表示所需的主题控制代码,而 a s a_s as 用于表示所需的情感控制代码。CC-LM 通过以下方程生成完成的文本 x 1 : N x_{1:N} x1:N

P ( x 1 : N ∣ a t , a s ) = ∏ i = 1 N P ( x i ∣ x < i , a t , a s ) ( 1 ) P(x_{1:N} | a_t, a_s) = \prod_{i=1}^{N} P(x_i | x_{<i}, a_t, a_s) \quad (1) P(x1:Nat,as)=i=1NP(xix<i,at,as)(1)

然后我们将 L g L_g Lg 定义为条件语言模型损失:

L g = − ∑ i = 1 N log ⁡ P ( x i ∣ x < i , a t , a s ) ( 2 ) L_g = -\sum_{i=1}^{N} \log P(x_i | x_{<i}, a_t, a_s) \quad (2) Lg=i=1NlogP(xix<i,at,as)(2)
对比生成器旨在通过拉近正样本和推开负样本来学习有效的表示。我们使用 a ^ t \hat{a}_t a^t 作为不期望的主题控制代码,使用 a ^ s \hat{a}_s a^s 作为不期望的情感控制代码。一个类条件语言模型被采用来得到一个正样本 P ( x 1 : N ∣ a t , a s ) P(x_{1:N} | a_t, a_s) P(x1:Nat,as) 和三个负样本 P ( x 1 : N ∣ a ˉ ) P(x_{1:N} | \bar{a}) P(x1:N

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

青云遮夜雨

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值