Page 1 of 1

什么是向量嵌入?直观的解释

Posted: Tue Dec 03, 2024 3:22 am
by urrifat77
想象一下,尝试教会计算机苹果和橘子之间的区别。我们很容易掌握,但对于只能理解数字的机器来说,这是一个复杂的挑战。

这就是向量嵌入的作用所在。这些数学魔术将单词、图像和其他数据转换成计算机可以轻松理解和操作的数字表示。

可视化单词向量嵌入的 3D 散点图。三维空间中显示了六个点。四个蓝点代表与动物相关的单词(“猫”、“狗”、“宠物”、“动物”),它们紧密聚集在一起。两个红点代表与车辆相关的单词(“汽车”、“车辆”),它们远离动物簇,但彼此靠近。每个点都标有其对应的单词。轴标记为 X、Y 和 Z。图标题为“向量嵌入:单词作为 3D 空间中的点”。

通过将信息世界映射到数字空间,向量嵌入开辟了无限的可能性。

什么是向量嵌入?
向量嵌入是单词或其他数据的数字指纹。它们不使用字母或图像,而是使用按特定结构排列的数字,该结构称为向量,类似于有序的值列表。

想象一下每个向量作为多维空间中的一个点,它的位置承载着有关所表示的单词或数据的重要信息。

您可能还记得数学课上讲过的向量,它是具有方向和大小的箭头。虽然向量嵌入共享这个基本概念,但它们在具有无数维度的空间中运行。

这种极端维度对于捕捉人类语言的复杂细微差别至关重要,例如语调、语境和语法特征。想象一下,一个向量不仅可以区分“快乐”和“悲伤”,还可以区分“欣喜若狂”、“心满意足”或“忧郁”等细微变化。

向量嵌入是一种将复杂数据转换为适合机器学习算法的格式的宝贵技术。通过将高维和分类数据转换为低维连续表示,嵌入可以提高模型性能和计算效率,同时保留底层数据模式。

为了让您简单了解如何定义多维向量空间,这里有一个表格,显示了八个示例维度及其相应的值范围:

特征

描述

范围

具体性

衡量一个词有形或抽象程度的标准

0 至 1

情感价

与该词相关的积极或消极意义

-1 至 1

频率

该词在大量文本中出现的频率

0 至 1

长度

单词中的字符数

0 至 1

词性

一组代表名词、动词、形容词、其他的独热编码值

4x [0,1]

礼节

与该词相关的正式程度

0 至 1

特异性

这个词有多具体或多笼统

0 至 1

感觉联想

单词与感官体验的关联程度

0 至 1

例如,单词“cat”可能有这样的向量:[0.9, 0.2, 0.7, 0.3, 1, 0, 0, 0, 0.4, 0.8, 0.9],而单词“freedom”可能是:[0.1, 0.8, 0.6, 0.7, 1, 0, 0, 0, 0.7, 0.3, 0.2]。

面向初学者的 AI 技能提升
从头学习 AI 和 ChatGPT 的基础知识。
词语之间的关系
每个向量就像一个唯一的标识符,它不仅封装了一个单词的含义,还反映了这个单词与其他单词的关系。具有相似定义的单词在这个数值空间中通常具有靠得很近的向量,就像地图上的相邻点一样。这种接近性揭示了单词之间的语义联系。

下面的 3D 散点图直观地展示了单词的向量嵌入概念。空间中的每个点代表一个单词,其位置由其向量嵌入确定。聚集在一起的蓝点代表与动物相关的单词(“猫”、“狗”、“宠物”、“动物”),而红点代表与车辆相关的单词(“汽车”、“车辆”)。点的接近度表示语义相似性 — 具有相关含义的单词在此向量空间中的位置更接近。

可视化单词向量嵌入的 3D 散点图。三维空间中显示了六个点。四个蓝点代表与动物相关的单词(“猫”、“狗”、“宠物”、“动物”),它们紧密聚集在一起。两个红点代表与车辆相关的单词(“汽车”、“车辆”),它们远离动物簇,但彼此靠近。每个点都标有其对应的单词。轴标记为 X、Y 和 Z。图标题为“向量嵌入:单词作为 3D 空间中的点”。

图 1:三维空间中的两个词簇。接近度表示语义相似性。

例如,“猫”和“狗”彼此接近,反映了它们作为常见宠物的共同特征。同样,“汽车”和“车辆”也很接近,表明它们的含义相关。然而,动物集群与车辆集群相距甚远,说明这些概念组在语义上是不同的。

这种空间表示使我们能够直观地了解向量嵌入如何捕获和表示单词之间的关系。它将语言含义转化为可以用数学方法测量和分析的几何关系。

向量嵌入如何捕捉含义
向量嵌入在自然语言处理 (NLP)中特别常见,专注于表示单个单词。这些数值表示不是随机分配的 - 它们是从大量文本数据中学习而来的。让我们看看它是如何工作的。

使用 Word2Vec 进行自然语言处理
Word2Vec 是将向量分配给单词的 NLP 技术之一。它是一种机器学习模型,可以学习根据大量文本中的上下文关联单词。您可以将其视为一种语言模型,它尝试根据周围的单词来预测单词。

通过这种方式,它可以隐式地学习单词之 投资者数据库 间的关系,从而捕获语义和句法信息。然后,这些学习到的关系被编码成数值向量,可用于各种 NLP 任务。最后,经常一起出现或在相似上下文中出现的单词在嵌入空间中的向量会更接近。

Word2Vec 采用两种主要架构来捕捉词语关系:连续词袋 (CBOW) 和 Skip-gram。

建筑学

程序

计算效率

捕获的关系

对常用词的敏感度

中央银行

根据周围的上下文词预测目标词

更快的训练

更好地捕捉句法关系(语法规则)

对常用词更敏感

Skip-gram

根据目标词预测周围的上下文词

训练速度较慢

更好地捕捉语义关系(文本含义)

对常用词不太敏感

Skip-gram 的训练速度可能比 CBOW 慢,但其生成方法通常被认为可以产生更准确的嵌入,尤其是对于罕见词。

让我们看一个例子:想象一个庞大的文本语料库。Word2Vec 首先分析单词在特定文本窗口中如何共现。例如,考虑“国王和王后统治王国”这句话。在这里,“国王”和“王后”一起出现在一个小窗口中。Word2Vec 捕获了这种共现信息。

通过无数句子,该算法建立了一个统计模型。它了解到“国王”和“女王”等词经常出现在类似的上下文中,并将此信息编码为数值向量。因此,“国王”和“女王”的向量在嵌入空间中的位置将比“苹果”的向量更近,因为后者很少出现在相同的上下文中。

向量空间中的这种接近性反映了“国王”和“王后”之间的语义相似性,展示了 Word2Vec 在捕捉语言关系方面的强大功能。

为什么向量嵌入如此强大
现在我们已经了解了什么是向量嵌入以及它们如何捕捉含义,现在是时候更进一步看看它们可以完成哪些任务了。

正如我们已经介绍过的,向量嵌入在量化语义相似度方面表现出色。通过测量词向量之间的距离,我们可以确定单词在含义上的相关程度。

Image

此功能可帮助完成查找同义词和反义词等任务。具有相似定义的单词的向量会聚集在一起,而反义词通常共享许多维度,但在描述其差异的关键维度上却相距甚远。

这种魔力还延伸到解决复杂的语言难题。向量嵌入使我们能够对词向量执行算术运算,从而发现隐藏的关系。例如,可以通过从“国王”中减去“男人”的向量并将其添加到“女人”中来解决“国王之于王后就像男人之于女人”这个类比。得到的向量应该与“女王”的向量非常匹配,这证明了向量嵌入在捕捉语言模式方面的强大功能。

句子嵌入
嵌入的多功能性超出了单个单词的范围。句子嵌入可以捕捉整个句子的整体含义。通过将句子表示为密集向量,我们可以测量不同文本之间的语义相似性。

正如词向量是高维空间中的点一样,句子向量也是向量。然而,它们通常具有更高的维度,以解释句子级信息的复杂性增加。我们可以对生成的向量执行数学运算来测量语义相似性,从而实现更复杂的任务,如信息检索、文本分类和情感分析。