机器学习中的向量空间模型

2025年3月2日 | 9 分钟阅读

向量空间模型 (Vector Space Model, VSM) 是机器学习、信息检索和自然语言处理中的一个基本概念。使用 VSM,可以将文本、图像甚至结构化数据等对象表示为高维空间中的向量。这样,VSM 就可以以一种易于算法处理的方式来比较、操作和分析复杂的实体。它能够将定性数据(词语或文档)转换为定量向量,这使其成为搜索引擎、推荐系统、文本挖掘等领域的基石。

简单来说,向量空间模型就是将文档或数据点表示为在某个 n 维空间中的向量。每个维度对应一个独特的特征,例如文档中的一个词或术语。向量在某个维度上的位置代表了该特征的相对重要性或权重。例如,如果一个文档包含“machine”一词 10 次,那么该文档向量在“machine”维度上的权重就会相对较高。

这种对数据的几何视图可以轻松地进行对象之间的相似度测量。在这种情况下,文档作为点的空间允许将两个向量之间的角度或距离作为它们相似度的度量。最常用的度量是余弦相似度,它计算两个向量之间夹角的余弦值,但欧氏距离和其他距离度量也适用。

向量空间模型的应用

以下是向量空间模型的一些最重要的应用

  • 文档检索:可能是 VSM 最重要的应用是文档检索系统,例如搜索引擎。在此模型中,文档由向量表示,查询也位于同一空间内。根据查询向量与文档向量之间的相似度度量(余弦相似度或其他距离度量)的比较来检索文档,并使用排序度量来评估相关性。
  • 文本分类:在文本分类中,VSM 是一种将文档表示为特征向量的技术,其中每个维度代表一个术语或 n-gram(可以定义为一系列词语)。然后将这些特征向量输入机器学习算法,例如支持向量机、逻辑回归和神经网络,以将文本分类为垃圾邮件或非垃圾邮件,或区分正面/负面情绪。
  • 聚类:VSM 在无监督学习的聚类中起着非常重要的作用。在向量空间中,相似性会导致文档的 agrupamiento。换句话说,K-means 或层次聚类可以将向量空间中几何上更接近的文档进行分组,这意味着内容相似的文档会被归为一类。

向量空间模型的局限性

向量空间模型在许多应用中已被证明是有效的,但也并非没有局限性

  • 高维度:在基于文本的应用中,向量空间通常是高维的,因为每个唯一的词语或术语都对应一个维度。这通常意味着解决问题存在计算上的挑战。尤其是在处理大型语料库时,必须使用诸如降低向量空间维度(如 PCA 和 LSA)或选择术语的方法(如停用词移除)来减少或消除这种情况。
  • 语义关系:VSM 本质上无法捕捉术语之间的语义关系。例如,“car”和“automobile”这两个词在一个特定的文本中可能被用作同义词,但在传统的 VSM 中,它们会被视为完全不同的维度。为了克服这个困难,通常会与 VSM 一起使用更高级的模型,如 Word2Vec 或 GloVe,它们可以表示术语之间的语义相似性。

代码

我们将尝试实现向量空间模型,并利用它来根据首都找到国家。

现在,我们只是加载数据集并导入一些必需的库。

输出

Vector Space Model in Machine Learning

输出

Vector Space Model in Machine Learning

现在我们需要一个函数,当两个词语作为向量时,能够告诉我们余弦距离。

输出

Vector Space Model in Machine Learning

我们现在将实现一个函数,该函数使用欧氏距离计算两个向量之间的相似度。

输出

Vector Space Model in Machine Learning

我们将使用上述函数来计算向量之间的相似度,然后将其应用于查找国家首都。我们还将定义一个函数,该函数接受三个词语和词嵌入字典作为参数。

输出

Vector Space Model in Machine Learning

我们需要实现一个程序,该程序可以计算给定数据集的准确性。我们需要遍历每一行,获取相应的词语,并将它们输入到上面的 country_get 函数中。

输出

Vector Space Model in Machine Learning

绘制向量

我们应用主成分分析 (PCA) 将词向量的维度从 300 降低到 2,以便绘制词语在其嵌入中的关系。

输出

Vector Space Model in Machine Learning

现在您将使用我们的 pca 函数来绘制我们为您选择的一些词语。

稍后,您会注意到大多数相似的词语或听起来相似的词语会聚集在一起。我们可以说它们彼此非常接近。事实上,在某些情况下,听起来相反的词语也表现出这种趋势或行为。它们通常在句子中的位置相同,并且是相同的词性,因此,在学习词向量时,您会得到相似的权重。我们将在下周讨论如何学习它们,但现在,请享受使用它们。

输出

Vector Space Model in Machine Learning

输出

Vector Space Model in Machine Learning

“gas”、“oil”和“petroleum”这几个词似乎是相关的,因为它们的向量彼此非常接近。同样,“sad”、“joyful”和“happy”都是表达情感的形容词,彼此距离也很近。

结论

向量空间模型 向量是复杂数据在高维空间中表示的基础。由于 VSM,实际信息文本可以表示为高维空间中的向量,因此它已成为机器学习、信息检索以及自然语言处理等领域的重要工具。VSM 在文档检索、文本分类和聚类等领域具有非凡的应用性。它还应用于其他多样化的任务。

尽管 VSM 非常有效,但仍然存在一些局限性,包括由高维度引起的问题以及无法绘制术语之间的语义关系。为了解决这些问题,通常会与 VSM 一起使用更高级的技术,如降维和语义向量表示,即 Word2Vec 和 GloVe。