[关于在Transformer和LLM的上下文窗口中使用连续潜在空间向量] #周日长篇大论 关于如何利用连续潜在空间中的向量来提高Transformer模型的求解效率,目前有很多讨论。在我看来,其中一些论点与计算复杂度守恒的原则相悖。 这些论点/类比围绕着将这些标记视为离散标记的“叠加”(想想并集)展开。 作为背景,Transformer 运算在潜在空间 L 中进行,其中每个(语言)标记都对应于 L 中的一个向量。然而,这种映射是单向的:并非 L 中的每个向量都对应于一个唯一的标记。 不过,你可以将这些向量(它们不具有唯一的词元映射关系)视为词元对应向量的线性组合。这样,它们就可以被视为这些词元的并集/叠加。 很明显,Transformer 的操作将上下文窗口中的实体视为嵌入空间中的向量。特别是,前向传递操作并不关心正在处理的向量是否具有与其对应的唯一标记。 这意味着就Transformer运算而言,上下文窗口可以同时包含“词元向量”(即对应于唯一词元的嵌入向量)和“潜在向量”(即不对应于唯一词元的嵌入向量)。如上所述,这些潜在向量可以看作是词元向量的线性组合。 这种灵活性的一个显而易见的用途是,Transformer 生成的中间词元完全可以是这些潜在向量;只有最终用户需要接收的解词元才需要是词元向量。事实上,正如我们在 https://t.co/f6E3c2j4dm (https://t.co/t4uYw5WTmD) 中论证的那样,只要中间词元本身似乎没有任何最终用户的语义,允许它们是潜在空间中的任何向量就能为学习合适的提示增强提供更大的灵活性(参见 https://t.co/jl0LyWJUys)。 关于在中间标记中使用潜在向量的另一个论点是,这是一种“提高解决底层问题的效率”的方法。 现在,我对将LLM视为解决问题的方式持怀疑态度。例如,我们的研究表明,中间词元的长度与问题的底层复杂性之间几乎没有关联(参见https://t.co/UKgCwgHKeQ),这表明它更多地体现了连接训练分布和测试实例的尝试。 然而,如果我们把 Transformer 看作是“计算解决方案”的方式(即使这并非预训练 LLM 中实际发生的情况),那么让 Transformer 在潜在向量上而不是在标记向量上进行操作,似乎相当于在实体的析取表示上进行计算,而不是在单个实体上进行计算。 现在,对析取表示进行操作可以提高特定分布下的平均效率,但无法降低最坏情况下的复杂度。作为一项合理性检验,抽象和层级结构可以被视为对析取表示进行操作,两者都不会改变问题的最坏情况计算复杂度;有关规划方面的论证,请参见 https://t.co/aXreC5YKPN 或 https://t.co/UDzu2Qp7WK。 这就是为什么我对“带有潜在标记的Transformer模型在所有情况下都能显著提高效率”的说法持怀疑态度。例如,最近一篇论文(https://t.co/4oQzEUIFPk)声称,带有潜在标记的Transformer模型可以在与图的直径成正比的时间内解决图的可达性问题(而且还引用了一些量子叠加原理!)。这说不通——尤其是在最坏的情况下——除非违反复杂度守恒定律(或者改变“解决”可达性问题的定义;例如,该论文的实证结果似乎对低于100%的准确率也感到满意)。 周五小组会议上讨论这篇论文时,我向学生们介绍了它与 Graphplan 规划算法的类比——Graphplan 可以加速 STRIPS 规划(STRIPS 与可达性密切相关)。多年前,我们就证明了 Graphplan 的加速效果可以通过对状态集而非单个状态进行投影来理解。然而,如果直接操作并集表示,可能会出现这样的情况:表示看起来似乎已经到达目标状态,但实际上可能无法提取出有效的路径!(对于 Graphplan 来说,这种提取涉及一个成本呈指数级增长的解码步骤,如果解码失败,则会继续对析取状态进行投影)。下图👇和原始论文(https://t.co/s20cFEOfQk)对此进行了说明(或参见 https://t.co/YqN0fh7vp6 中的图 3 及其相关讨论)。 tldr;我确实认为潜在标记可以大大提高 LLM 在训练后学习提示增强的灵活性,但我不太同意“它们降低了所考虑问题的复杂性”这一说法。
正在加载线程详情
正在从 X 获取原始推文,整理成清爽的阅读视图。
通常只需几秒钟,请稍候。
![[关于在Transformer和LLM的上下文窗口中使用连续潜在空间向量] #周日长篇大论
关于如何利用连续潜在空间中的向量来提高Transformer模型的求解效率,目前有很多讨论。在我看来,其中一些论点与计算复杂度守恒的原则相悖。](https://pbs.twimg.com/media/G4yh-s7b0AAH-4k.png)