很不错的简短帖子,说明了简单文本(离散)扩散是多么简单。 扩散(即并行、迭代去噪、顶部)是图像/视频中普遍的生成范式,但自回归(即从左到右底部)是文本中的主导范式。对于音频,我看到了一些两者的结合。 许多扩散论文看起来有点复杂,但如果你去掉数学形式主义,你会得到简单的基线算法,例如更接近于连续流匹配的东西,或者在离散中像这样的东西。这是你的香草变压器,但具有双向注意力,在你的“令牌画布”中,你根据噪声调度迭代地重新采样和重新掩蔽所有令牌,直到在最后一步获得最终样本。(双向注意力更强大,如果你用它进行训练,你会得到更强的自回归语言模型,不幸的是,这使得训练变得更加昂贵,因为现在你无法在序列维度上并行化)。 因此,自回归是在令牌画布上执行`.append(token)`,而只关注向后,而扩散则是用`.setitem(idx, token)`刷新整个令牌画布,同时双向关注。人类思维天真地感觉更像是自回归,但很难说在某些潜在的思维空间中没有更多类似扩散的成分。感觉很有可能你可以进一步在它们之间插值,或者进一步概括它们。这是LLM堆栈中的一个组成部分,仍然感觉有点可替代。 现在我必须抵制将nanochat与扩散训练的冲动。