实现代码github:https://github.com/WeiyuCheng/FIA-KDD-19
一、发现问题
目前两类关于LFM的解释推荐结果方法都存在一定的缺点:
- Interpreting with External Data Sources 利用外部信息源表达潜在维度的语义,提供基于特征的解释。
【缺点:外部信息如评论,在实际应用中难以获取或获取成本较高】 - Interpreting with Historical Interactions 基于用户物品历史交互记录,提供邻域式的解释。通过给LFMs实施特定约束来生成解释。
【缺点:accuracy-interpretability trade-off. 附加约束可能会影响推荐精度,由于最具解释性的结果不一定是最准确的 】
为了解决trade-off问题,后处理解释方法(post hoc interpreting method)被提出,用于解释LFMs模型训练后的预测结果。但此前的工作也具有一定缺陷:
- 挖掘项目之间的关联不能用来解释一个训练过的模型如何产生特定的预测。换句话说,LFMs仍然是一个没有解释性的黑箱模型。
- 并不是所有的推荐物品都能基于可用的历史交互与其他物品关联,这种情况下无法提供解释(应用能力受限)。
二、主要亮点
-
通过引入稳健统计中的影响分析函数,来衡量用户-物品交互历史对LFMs预测结果的影响,并基于最具影响力的交互提供直观的邻域式解释。
-
分别在MF和神经协同过滤NCF两种环境中使用FIA进行影响分析,并在计算成本上优化算法。
在此过程中,由于影响分析的计算成本很高,出于对模型的时间复杂度要求,论文中对参数进行了选择来对结果进行近似分析:
(1)在MF的分析中只选取部分对于预测结果影响最大的训练点(参数及历史交互样本)来进行影响分析;
(2)在NCF中去除如MLP中的权重矩阵等交互函数的参数(影响较小),只对用户、物品的embedding参数进行影响分析。 -
实验部分的案例分析中,画出的散点图显示出:LFMs机制中只有很小一部分训练点对预测结果具有显著影响。
对于LFM机制的安全风险提供了参考:少数异常点会显著影响预测结果。
三、主要贡献
- 首次将影响函数应用于LFMs来提供可解释推荐。通过追踪每个预测到模型的训练数据,将可解释性合并到LFMs中,并进一步为预测提供直观的邻域式解释。
- 提出了FIA方法,能够充分利用MF方法的特点从而大大降低了计算成本。
- 将FIA扩展到神经协同过滤(NCF)环境中。提供了在NCF环境中下FIA的时间复杂度,并开发了一种近似方法来进一步加速NCF的影响分析。
- 实验验证FIA生成的解释的有效性以及方法的高效性。通过案例分析,表现FIA有助于更好地理解LFM推荐机制。
思考
论文中,通过预测结果结合显示反馈(用户评分的历史交互记录)来进行影响分析,如果是隐式反馈如用户购买记录,算法效果如何?