深入探索文本生成:序列到序列模型与优化策略
1. 序列到序列模型概述
序列到序列(sequence-to-sequence)模型致力于生成与输入一致且符合目标分布的流畅文本。简单来说,它本质上是一种无马尔可夫假设的输入条件神经语言模型。
1.1 训练过程
顺序生成器通常在监督环境下使用交叉熵损失进行训练。给定输入序列 (X^{(i)} = {x^{(i)} 1, \cdots, x^{(i)}_n}),生成器的训练目标是最大化生成黄金输出序列 (\hat{Y}^{(i)} = {\hat{y}^{(i)}_1, \cdots, \hat{y}^{(i)}_m}) 的可能性。这通过最小化训练集上的负对数似然来实现:
[
L(\theta) = \frac{1}{N} \sum {i=1}^{N} - \log p(\hat{Y}^{(i)}|X; \theta) = - \frac{1}{N} \sum_{i=1}^{N} \sum_{j = 1}^{m} \log p(\hat{y}^{(i)} j | \hat{y}^{(i)}_1, \cdots, \hat{y}^{(i)} {j - 1}, X; \theta)
]
其中,(N) 是训练集中输入和输出序列对的数量,(\theta) 是待学习的模型参数。使用梯度下降算法来最小化损失函数,特别是随机梯度下降算法(Algorithm 3.1),它允许在训练集的一个样本上计算损失函数,而不是整个训练集,从而使训练可行。
随机梯度下降算法的步骤如下:
超级会员免费看
订阅专栏 解锁全文
1652

被折叠的 条评论
为什么被折叠?



