Factorization Machines (FM)
首先这种算法是一种有监督的机器学习模型,既可以用在分类问题也可以用在回归问题当中,它是一种非线性的模型,相比逻辑回归具备了二阶交叉特征表达能力(不易拓展到三阶以上)。可以通过stochastic(随机) gradient descent (SGD), alternative least square (ALS), or Markov chain Monte Carlo (MCMC)方法进行训练。这种算法某种程度算作SVD算法的拓展,可以将稀疏向量表达的某一维特征转换为隐稠密向量(通过学习得出,在某些神经网络中充当embedding层便于网络接入),两个稠密向量的内积是他们的权重。它的变种为field-aware factorization machines (FFM),提高了特征交叉能力,但是复杂度达到O(n^2)。