余弦相似性是用于通过计算两个向量之间的角度的余弦来测量两个向量之间的相似性的度量。其范围从-1 (完全不相似) 到1 (完全相似),其中0指示正交性 (无相似性)。余弦相似性广泛用于嵌入,通过评估两个向量在向量空间中的接近程度来比较两个向量 (如单词、文档或图像嵌入) 的相似性。
在实践中,余弦相似性用于基于它们的嵌入来确定两个数据点的相似程度。例如,在基于文本的推荐系统中,通过将查询嵌入与数据库中所有项目的嵌入进行比较,可以使用余弦相似性来找到与给定查询最相似的产品或文章。
余弦相似性是基于嵌入的相似性搜索的首选,因为它是尺度不变的; 它测量向量之间的角度而不是它们的大小,使其成为比较不同长度向量的理想选择。此属性允许余弦相似性有效地工作,即使嵌入被归一化或具有不同的大小,这在许多机器学习应用中是常见的情况。