本文利用信息论中的信息瓶颈(这边可以理解为互信息,文中用到的都是互信息)理论结合因果推断中的因果图,来对推荐系统进行纠偏。纠偏的背景就不过多介绍了,简而言之就是,反馈和推荐之间关系,以及热门和冷门item对推荐的影响。具体案例可以看前几篇纠偏相关文章。
文中会用到一些信息论的知识,包括互信息、KL散度、信息熵等,有需要的话我可以出一期,不过在本文中不会涉及太多。知乎上有挺多大佬出过对应的内容,如果不了解的话,可以看看。
公式太长可以左右滑动
背景
如图所示,图a是常见的有偏推荐系统的因果图,其中Treatment表示推荐系统的干预,结合之前因果推断的相关知识,可以明显发现因果图中存在混杂因子。而这里的混杂因子C就是表示推荐系统中常见的流行度偏差、位置偏差等。而如果要进行纠偏,就需要去除混杂,通常我们会采用干预的方式来去除混杂,可以得到图b,但是本文不是用传统的用干预等方式来进行纠偏,而是在图b因果图的基础上,在embedding上进行改变。
方法
本文主要考虑的点是,如果我们用包含混杂因子的特征进行训练得到表征,则在所得到的embedding中会充斥作者有偏的信息,而这是我们不想看到的,因此本文考虑将原有的特征拆分为有偏的和无偏的(本文核心就是这个了)。但是我们无法直接从x中划分出I,C,A;也没有办法从x的embedding中直接拆分出有偏和无偏的表征。因此本文采用信息论中的信息瓶颈来解决这个问题。如果可以将其拆分,那么可以得到r和z分别表示有偏和无偏embedding,在训练的时候都参与训练,而在预测的时候只用无偏的embedding(z)进行预测。为了达到期望,需要符合以下条件:
- 为了避免有偏变量的影响,z不能对x过拟合
- z对y的预测需要尽量准确
- r和z尽量独立,即r⊥z
- 由于r扮演的是简洁影响(C),因此他对最终y的预测也有一定帮助
- 值得注意的是,不限制约束r和x的关系,因为数据受偏差的影响是不确定的
总体损失函数如下:
其中
表示的是互信息,最小化x和z的互信息,使得x的信息尽可能压缩到z中;最大化z和y的互信息,促进z对y的预测作用;最小化z和r的互信息,使得z和r尽量相互独立;最大化r和y的互信息,促进r对y的预测作用。但是上述的损失函数优化比较困难,因此作用用条件熵对其进行改写得到下式:
具体改写过程可以阅读原文。
总结
这篇文章中,结合了因果图和信息熵的概念来解耦有偏和无偏的embedding。和我之前介绍的论文有所不同,之前介绍的论文,基本上是从构建新的因果图出发,利用后门调整、反事实推断等因果推断中的相关知识来纠偏。而本文将从因果图出发,发散到信息熵来解耦有偏和无偏的表征,还是比较有意思的。
结果
从结果汇总可以发现,本文所提方法对现有方法的提升还是很明显的。