Comparthing Logo
人工智能机器学习表征学习嵌入分词深度学习

连续表示与离散表示

连续表示法将数据编码为高维空间中平滑、稠密的向量,而离散表示法则将信息分解为不同的标记或符号。这两种方法都影响着现代人工智能系统在语言、视觉和音频任务中的学习、推理和输出方式。

亮点

  • 连续向量能够实现平滑的梯度流动,而离散标记则需要专门的训练技巧。
  • 现代语言模型内部使用连续表示,但输出离散的词元。
  • 离散表示支持精确匹配和符号推理,这是连续向量无法复制的。
  • 结合两种格式的混合架构正成为最先进的人工智能系统的标准。

连续表示是什么?

稠密数值向量,通过平滑、梯度友好的嵌入来捕捉意义,用于神经网络。

  • 连续表示法将信息存储为实值向量,通常具有数百或数千个维度。
  • 它们构成了 Word2Vec、GloVe 等词嵌入以及 BERT 等上下文模型的基础。
  • 梯度在连续向量中平滑流动,使其成为反向传播和基于梯度的优化的理想选择。
  • 现代Transformer模型几乎完全依赖于连续表示来进行内部计算。
  • 图像生成中的扩散模型完全在连续的潜在空间中运行,而不是在离散的标记中运行。

离散表示是什么?

将信息分解成可数单元的独特符号、标记或代码,这些单元取自有限的词汇表。

  • 离散表示法使用从固定词汇表中提取的标记,例如 GPT 风格模型中大约 50,000 个子词片段。
  • 矢量量化变分自编码器(VQ-VAE)学习离散码本,用于图像和音频压缩。
  • 像字节对编码这样的分词算法在进行任何神经处理之前,会将原始文本转换为离散单元。
  • 离散表示法能够实现连续向量无法直接执行的精确匹配、哈希和符号推理。
  • 大型语言模型最终会产生离散的词元输出,即使它们的内部层处理的是连续向量。

比较表

功能 连续表示 离散表示
数据格式 实值稠密向量 有限词汇标记或符号
维度 数百至数千个维度 通常每个标记位置一个维度
梯度兼容性 完全可微 需要使用直通式估算器之类的技巧
可解释性 难以直接检查 更容易映射回人类可读的符号
存储效率 由于浮点精度高,因此占用大量内存。 使用整数索引时要保持紧凑
常见用例 嵌入、扩散模型、特征学习 分词、VQ-VAE、符号推理
信息密度 高,具有重叠的语义特征 每个代币价格较低,但每个符号的精度更高
示例模型 BERT、CLIP、稳定扩散 GPT 分词器、VQ-VAE、决策树

详细对比

数学基础

连续表示存在于实数向量空间中,其中每个维度都包含一个分数,从而允许概念之间平滑插值。相比之下,离散表示则作用于一个可数符号集,其中每个位置代表来自固定词汇表的一个词元。这种根本性的差异影响着从模型训练方式到输出结果检查方式的方方面面。

训练和优化

反向传播算法自然适用于连续向量,因为输入的微小变化会导致输出的微小变化,从而保持梯度信号。离散标记打破了这一假设,因为从一个符号切换到另一个符号会产生不连续的跳跃。研究人员开发了诸如直通估计器和 Gumbel-Softmax 等方法来弥补这一缺陷,但训练离散模型仍然比训练连续模型更具挑战性。

语义表达能力

连续嵌入擅长捕捉模糊且重叠的含义,因为相似的概念在向量空间中自然而然地聚集在一起。著名的例子表明,“国王减去男人加上女人”与“王后”相邻,这种关系源于几何而非规则。离散标记无法直接表达这种类比推理,但它们以精确性和执行精确查找的能力弥补了这一不足。

实际应用

大多数现代人工智能系统实际上融合了这两种方法。例如,像GPT这样的语言模型在内部使用连续向量作为注意力机制和前馈层,然后将最终的连续输出转换回离散的词元以进行生成。图像生成也经历了类似的演变,扩散模型倾向于使用连续的潜在变量,而早期的方法(例如DALL-E)则依赖于离散的VQ-VAE编码。

真实系统中的权衡取舍

选择连续表示还是离散表示,通常取决于你需要的是平滑优化还是符号精度。连续表示更适合生成式质量和端到端学习,而离散表示则更适合压缩、检索以及任何需要精确匹配的任务。混合架构越来越常见,它使用离散标记作为接口,同时保留底层的连续推理。

优点与缺点

连续表示

优点

  • + 平滑优化
  • + 丰富的语义几何
  • + 完全可微
  • + 自然世代

继续

  • 内存密集型
  • 难以解释
  • 浮点精度开销
  • 没有完全匹配项

离散表示

优点

  • + 紧凑型存储
  • + 符号精度
  • + 易于检查
  • + 精确查找

继续

  • 棘手的梯度流
  • 表达能力有限
  • 词汇限制
  • 更难进行插值

常见误解

神话

连续表示总是更好,因为深度学习会使用它们。

现实

两种格式各有优势,许多顶尖系统都采用离散标记作为输入和输出。选择哪种格式取决于具体任务,而不是哪种方法更现代。

神话

离散表示无法像嵌入那样捕捉意义。

现实

如VQ-VAE和现代基于分词器的模型所示,离散词元与学习到的码本结合使用时,可以编码丰富的语义。区别在于格式,而非能力。

神话

数据分词后,模型不再使用连续表示。

现实

分词只是第一步。在进行任何有意义的计算之前,Transformer 会立即将离散的词元转换为连续的词嵌入。

神话

连续向量过于抽象,不适用于下游任务。

现实

连续嵌入是搜索引擎、推荐系统和检索增强生成的核心技术。正是其抽象特性使其能够灵活应用于各个领域。

神话

扩散模型和语言模型使用完全不同的表示类型。

现实

两者都依赖于处理过程中的连续表征。区别在于,扩散模型输出连续像素,而语言模型在处理结束时会转换回离散的词元。

常见问题解答

人工智能中的连续表示和离散表示有什么区别?
连续表示将数据存储为实值向量,其中每个维度包含一个小数;而离散表示则将数据分解为从固定词汇表中抽取的不同标记。连续向量支持平滑的基于梯度的学习,而离散标记则支持精确的符号运算。
既然连续向量更具表达力,为什么语言模型还要使用离散标记?
语言模型最终需要生成文本,而文本本质上是离散的。它们内部使用连续向量进行计算,但会将最终输出转换回离散的词元,以便结果可以作为单词或子词来阅读。
可以直接用离散数据训练神经网络吗?
是的,但这需要特殊的技术,因为梯度无法通过离散的选择传递。诸如直通估计器、Gumbel-Softmax 和强化学习式的更新等方法可以实现这一点,尽管训练过程往往不如处理连续数据稳定。
什么是矢量量化VAE?它如何使用离散表示?
VQ-VAE 将图像或音频编码成一个索引网格,这些索引指向一个学习到的嵌入向量码本。这使得连续数据可以转换为紧凑的离散表示,从而可以高效地存储,并在以后通过查找相应的向量进行重建。
词嵌入是连续的还是离散的?
像 Word2Vec、GloVe 和 BERT 的输入层这样的词嵌入都是连续的。每个词都映射到一个实数稠密向量,这使得模型能够通过向量运算来计算相似性和类比关系。
哪种表示方法更适合图像生成?
目前,连续表示法在图像生成中占据主导地位,例如稳定扩散和 DALL-E 3 等扩散模型。早期的系统使用离散 VQ-VAE 代码,但连续潜函数已被证明对高质量合成更有效。
检索系统采用连续表示还是离散表示?
现代检索系统使用连续词嵌入进行语义搜索,因为向量可以通过余弦距离或点积进行相似性比较。早期的基于关键词的系统使用离散的词袋模型表示,这种表示方式灵活性较差,但更容易索引。
分词与离散表示有何关系?
分词是将原始文本转换为离散单元(例如字符、单词或子词片段)的过程。诸如字节对编码和句子片段编码之类的算法构建词汇表,这些词汇表定义了模型将作为输入接收的离散表示。
模型能否同时使用连续表示和离散表示?
没错。大多数现代架构从设计上就是混合型的。它们以离散的词元作为输入,将其嵌入到连续向量中进行处理,然后将连续的输出投影回离散的词元以进行生成。
连续表示和离散表示在存储方面有什么区别?
连续向量每个维度需要 32 位或 16 位浮点数,因此 768 维的嵌入每个标记大约需要 3 KB。离散标记只需要一个整数索引,通常只有 2 个字节,这在存储和传输方面要紧凑得多。

裁决

当你的任务需要基于梯度的学习和平滑的语义关系时,例如词嵌入检索或生成建模,应选择连续表示。当你需要精确的符号控制、高效的存储或与传统自然语言处理流程的兼容性时,应选择离散表示。实际上,最强大的现代系统会将两者结合起来,使用连续向量进行计算,并使用离散词元作为输入和输出。

相关比较

AI 错误检测与人工审核对比

人工智能质量检测利用机器学习模型大规模标记低质量或人工智能生成的内容,而人工审核则依靠训练有素的编辑通过判断和上下文来评估内容质量。每种方法各有优势,许多组织现在都将两者结合起来以获得最佳效果。

AI管道中的迭代检索与一次性检索系统

人工智能流程中的迭代检索通过多次搜索和推理循环来优化结果,而一次性检索系统则只需一次遍历即可获取信息。迭代方法擅长处理复杂的多跳查询,而一次性方法则优先考虑速度和简洁性,适用于简单的查询。

AI伙伴 vs 人类友谊

人工智能伴侣是旨在模拟对话、情感支持和临场感的数字系统,而人类友谊则建立在共同的生活经验、信任和情感互惠之上。本文将对比探讨这两种连接方式如何在日益数字化的世界中塑造沟通、情感支持、孤独感和社会行为。

AI计算排放与传统云排放对比

人工智能计算产生的排放主要来自训练大型模型的高能耗GPU集群,而传统云的排放则来自运行日常工作负载的通用数据中心。人工智能工作负载的单次任务耗电量远高于传统云,但传统云的运行规模要大得多。

AI检测与基于规则的检测

现代数字环境需要强大的防御机制,但其底层方法却截然不同,威胁、欺诈或异常情况的检测方式也大相径庭。基于规则的系统依赖于严格的预配置条件来标记已知威胁,而人工智能模型则通过分析行为来发现不常见的异常情况。在两者之间做出选择意味着需要在绝对确定性和适应性灵活性之间取得平衡。