文章名称
核心要点
上一节描述了TCF框架的一种模型实现TPMF的3个子模型的最后一个部分CRM。本节具体讲解如何学习整个模型。
方法细节
问题引入
TPMF是具有隐变量的多元生成模型,具体结构如下图所示。在利用给定数据优化具有隐变量的生成模型是,我们通常会想到EM算法。
具体做法
Optimization
E-step
在E步,由于用户的评分矩阵和观测矩阵是部分可用的,我们可以用这些数据来估计哪些缺失的物品(即)的评分和被观测的可能性。但是为了方便隐变量的更新,作者将对评分矩阵的期望值的求解放到了M-step。
求解被观测矩阵的方法如下图所示。其中,,利用到当前参数下的评分估计值
。此外,利用到了用户选择估计值
。
image.png
其中,
评分区间概率
累积概率分布函数
M-step
首先,更新被观测矩阵的先验概率,主要是累积当前观测到的曝光,具体公式如下图所述。
更新观测的先验概率
为了更新隐变量(这里指的是
隐变量更新目标
代码实现
算法伪代码如下。
pseudo code
心得体会
因果推断
看似这篇文章和因果推断没有任何联系,但是看过ExpoMF的同学应该会理解,这里的生成模型借助了很多概率图的内容,与因果图具有天然的联系。并且,隐变量的学习和控制,实际上是因果矫正的一种方式。