1. 张量CP分解
三阶张量的CP分解是将其分解为三个矩阵。例如:一个三阶张量 ,则CP分解可以写为
其中, 表示向量外积, 。下图为三阶张量的CP分解:
将上面的CP分解展开,也可以写为:
假设有一个三维张量是M维用户乘以N维物品乘以R维的物品特征。那么分解出来的三个矩阵就分别为的用户矩阵,的物品矩阵,以及的特征矩阵。这三个矩阵中的向量分别代表某个用户、某个物品和某个属性。K是一个参数,类似于矩阵分解中的隐变量的维度。
在原始的三维张量中,某个元素就是这三个矩阵的某三个向量对应元素乘积相加的结果。
2. Multiverse Recommendation: N-dimensional Tensor Factorization for Context-aware Collaborative Filtering
1)将数据建模为 User-Item-Context 的多维张量而不是传统的二维 User-Item 矩阵。
2)在原始数据集上选择部分数据,随机修改其评分来模拟 Context 对用户评分的影响。
3)填充后的张量 User-Item-Context 中的元素表示:用户 u 对项目 i 在 n 个具体的情况下的评分。