嵌入(Embeddings)是一个相对低维的空间,我们可以将高维向量转换到其中。嵌入使得对大型输入(例如表示单词的稀疏向量)进行机器学习变得更加容易。理想情况下,嵌入通过将语义相似的输入紧密地放置在嵌入空间中来捕获输入的一些语义。嵌入可以在模型中学习和重用。
1.嵌入:协作过滤的动机
协同过滤 是基于大量其他用户的兴趣来预测目标用户的兴趣的方法之一。在本节,我们以协同过滤算法为例,来看一下电影推荐的实现。假设我们有 500,000 个用户,以及这些用户观看过的电影列表(来自 1,000,000 部电影的目录)。我们的目标是向用户推荐电影。
为了解决这个问题,需要某种方法来确定哪些电影彼此相似。我们可以通过将电影嵌入到一个低维空间中来实现这一目标,如此一来,相似的电影在这个“空间”中应该是邻近的。
在描述如何学习嵌入之前,我们首先