推荐系统常用的MF(矩阵分解)方法,旨在通过评分矩阵R有损分解得到矩阵U(代表所有用户的feature vector)和矩阵I(代表所有item的feature vector)。
embedding 旨在用实值向量来表示一个对象,相似对象的实值向量也相近。
既然如此,MF也变成了一个构造对象实值向量(Embedding)的过程。若是将输入层看做表示用户id的one_hot二值向量,那么,encoding层权重就相当于前面说到的矩阵U。根据输入的二值映射向量相当于在U上面的一次lookup运算,也就是找到了对应id用户的特征向量u。
这样,decoding层权重相当于前面提到的矩阵I,根据u与矩阵I的乘积运算,则得到对应用户u在各个item上面的偏好结果(包含了observed 数据和需要预测的数据),而模型的损失函数则是保证observed数据和对应decoding层的结果的误差,使其尽可能小。