【推荐系统】概率矩阵分解 probabilistic matrix factorization

前言


PMF沿用了MF矩阵分解的思路,目标都是求出精确的U和V。在传统MF方法中,优化目标是保证R和UV乘积的差值最小,而在PMF中,R和UV的差值变成了一个高斯概率函数,通过最大后验概率MAP公式,将优化目标变成了对一个包含R和UV差值的复杂概率函数,在对其求解时来反求U和V,即反求使目标函数最大的U和V。同时,在PMF中,U和V变成了参数可以被分别求解


三个基础

1.矩阵分解
     
2.贝叶斯理论                         

3.极大似然估计


两个假设:


1.结果矩阵和预测矩阵的差值(即观测噪声)服从高斯分布(即正态分布)   
   均值为UTV   
2.用户特征矩阵U和物品特征矩阵V 服从高斯分布,均值为0

公式推导:

【推荐系统】概率矩阵分解 probabilistic matrix factorization_第1张图片

【推荐系统】概率矩阵分解 probabilistic matrix factorization_第2张图片

个人理解:

1.本方法中将U和V看做待估计的参数,σ看做超参数,由事先给定
2.极大似然方法(MLE)的要求是要将概率的函数改写为参数的函数,
    即L(θ|R)= F(R|θ)
3.利用贝叶斯公式刚好可以完成这样一个似然函数。
   即f(θ|R)=f(R|θ)f(θ)/f(R)
4.因为f(R)是与θ无关项故略去,
   f(θ|R)=f(R|θ)f(θ)(即最大后验概率MAP)
   等式两边同时对θ求导,再对数化
5.本方法中的θ是双参数U和V,即求解是要分别对U和V求导
6.(个人对于高斯假设的理解)
结果矩阵与估计矩阵的差值服从高斯,即两者差值大的概率很小,大部分的估计是准确的
U和V服从高斯,即用户特征和物品特征的期望都接近于0,大部分用户和物品都的特征倾向于中性

代码

代码来源于github,但未出现对于sigma的设置,继续研究中


Sugar~

你可能感兴趣的:(推荐系统)