一般而言,“潜在”一词的意思是“隐藏”,而“嵌入”一词的意思是“合并”。在机器学习中,“隐藏(或潜在)空间”和“嵌入空间”的表达出现在几种情况下。更具体地说,嵌入可以指代词的向量表示。一个嵌入空间可以指代一个更大空间的一个子空间,所以我们说这个子空间被嵌入到更大的空间中。“潜在”一词出现在隐马尔可夫模型 (HMM)或自动编码器等上下文中。
这些空间有什么区别?在某些情况下,这两个表达是否指的是同一个概念?
一般而言,“潜在”一词的意思是“隐藏”,而“嵌入”一词的意思是“合并”。在机器学习中,“隐藏(或潜在)空间”和“嵌入空间”的表达出现在几种情况下。更具体地说,嵌入可以指代词的向量表示。一个嵌入空间可以指代一个更大空间的一个子空间,所以我们说这个子空间被嵌入到更大的空间中。“潜在”一词出现在隐马尔可夫模型 (HMM)或自动编码器等上下文中。
这些空间有什么区别?在某些情况下,这两个表达是否指的是同一个概念?
由于机器学习最近迅速复兴,而且它借鉴了数学、统计学和计算机科学的许多不同领域,因此对于相同或相似的概念,它通常有许多不同的术语。
“潜在空间”和“嵌入”都指的是高维数据的(通常是低维)表示:
例如,在这个“瑞士卷”数据中,左侧的 3d 数据被明智地建模为“嵌入”在 3d 空间中的 2d 流形。将“潜在”2d 数据映射到其 3d 表示的函数是embedding,底层 2d 空间本身是潜在空间(或嵌入空间):
根据您希望给出的具体印象,“嵌入”通常采用不同的术语:
学期 | 语境 |
---|---|
降维 | 对抗“维度的诅咒” |
特征提取 特征投影 特征嵌入 特征学习 表示学习 |
从原始数据中提取“有意义的”特征 |
嵌入 流形学习 潜在特征表示 |
了解数据的底层拓扑 |
然而,这并不是一成不变的规则,它们通常是完全可以互换的。
当涉及到正常的外行术语时,“潜在空间”意味着它无法访问,因此我们无法直接控制它。我们只能间接操作它,而“Embeddings”可以直接获得。我们可以使用确定性操作或转换将对象转换为其相应的嵌入空间。
就机器学习而言,这两个术语之间没有显着差异。如果我们看一下这篇关于变分自动编码器的著名论文,我们可以看到这些词可以互换使用。
更具体地说,我认为这个词(仅在机器学习的上下文中)latent是一个比Embedding更通用的术语。嵌入将引用更具体的对象(在 ML 的上下文中),例如嵌入是. 然而,我们可以使用术语潜在来描述更广泛的术语,如潜在空间、潜在表示、潜在变量(一个词的潜在变量与一个词的嵌入相同)。
在深入挖掘之后,我发现了Goodfellow对深度学习中潜在变量的正式定义:
Goodfellow 在讨论嵌入时引用的一篇论文也有以下摘录:
随着用户/项目聚类或矩阵分解技术在协同过滤中成功表示单个关系数据中实体的连接模式之间的非平凡相似性,大多数现有的多关系数据方法都是在关系学习的框架内设计的潜在属性,如所指出的;也就是说,通过学习和操作成分(实体和关系)的潜在表示(或嵌入)。
很明显,这些是可以互换的术语。
但我的解释是嵌入更有帮助(更明显,潜在变量意味着隐藏),也就是说我们可以从中构建一个新的数据集并在其上使用各种 ML 方法,而潜在变量不是明确有用(这是我们试图解决的更大问题的一部分)。
编辑:在 HMM 的上下文中,更合适的术语是隐藏状态而不是潜在空间。因此,在 HMM(来自 Wiki)中,形容词 hidden 是指模型通过的状态序列,而不是模型的参数;即使这些参数完全已知,该模型仍被称为隐马尔可夫模型。
表达“潜在空间”明确表示该空间与隐藏(或潜在)变量的数学概念相关联,该变量无法直接观察,而只能间接观察。
表达“嵌入空间”是指表示输入(例如图像或文字)的原始空间的向量空间。例如,在“词嵌入”的情况下,它是词的向量表示。它也可以指潜在空间,因为潜在空间也可以是向量空间。但是,嵌入空间不一定是隐藏空间。它只是另一个空间的另一个(向量)表示。
这两个表达式可以互换使用,也因为“嵌入空间”这个表达式通常没有正式定义。
为了给出统计学家的答案,区别在于经验(嵌入)与理论(潜在位置)。您定义了一个统计模型,该模型具有潜在位置,然后您可以尝试根据给定数据进行估计。或者,给定数据,您可以简单地以对所考虑的应用程序有意义的方式找到每个感兴趣对象的向量表示 - 您可以将这组表示称为嵌入。尝试将流行的嵌入重新解释为估计兼容模型的潜在位置有很多工作正在进行,但这并不总是那么简单。