最佳答案
假设所有矩阵都有某种相似之处。然后,书籍之间存在相似性,这些相似性基于关键字的共现以及不同关键字之间的相似性:
A = B C B^T.
其中A是您的相似度矩阵,B是与书籍对应的关键词矩阵,C是不同关键词之间的相似度矩阵。
您有一个大小为 n_A 的矩阵,且秩不超过 n_A。那么你只能将 C 恢复到相同的等级 n_A,所以你可以假设 C 有形式
C = V^T V.
然后,您可以通过对 A 进行特征分解来轻松恢复 C。 一方面,你有
A = U D U^T,
另一方面,你有
A = B^T C B.
比较这两个,你有
B V^T = U D^{1/2},
因为 D 是对角线(但希望 A 没有复特征值)。
上面的方程可以用最小平方求解 V。
您需要的所有求解器都以所有主要编程语言实现,例如,在 python 中,它是 numpy 库。
关于基于其他矩阵的矩阵元素预测,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38271527/