可解释推荐系统工具箱 - ranking GAM(一)
文章名称
【WSDM-2021】【Google】Interpretable Ranking with Generalized Additive Models
核心要点
文章旨在解决ranking场景下,现有可解释模型精度不够的问题,提出将天生具有可解释性的广义加法模型(GAM)作为引入ranking场景,作为可解释排序模型。作者研究了如何将GAM应用到item和list级别的排序模型上,并利用神经网络而不是样条回归或回归树作为GAM排序模型。在此基础上利用蒸馏的方法,可以将神经排序模型蒸馏到更简单的分段函数。
方法细节
问题引入
ranking模型的可解释性在一些领域十分重要,例如法律、政策。排序模型中特征的贡献应该是可检查和可理解的,以确保结果的透明性、公平性,并且如果出现问题时可以追查到具体原因。
最近该领域的研究越来越受到关注,但是现有的模型,要么本身模型是黑盒的不具有可解释性,要么虽然结构具有可解释性,但为了取得较高性能,会采用ensemble的技巧,例如LambdaMART[6],导致整个模型难以得到人类可理解的可解释性。另外,一些模型利用attention的机制提升模型的可解释性,但是此类方法得到的解释结果的准确性受到了质疑[53]。许多方法采用post-hoc的方法来解释已有的黑盒ranking模型。Post-hoc方法的优势是能够简单的和现有模型结合,但一般不能够准确的解释模型的决策原因[51]。因此,不得不直接建立一个从结构上就透明、可解释的模型,例如GAMs。
为了解决上述问题,作者提出将GAMs引入到ranking场景。
具体做法
广义加法模型(GAM)[19]的输出是多个子模型输出的总和。其中,每个子模型只用一个特征作为输入,因此每个子模型都能精确地反映每个特征对最终结果的贡献。在ranking场景下,一个GAM的案例示意如下图所示。其中,特征可以分为两大类,物品特征和上下文特征。GAM的每一个子模型会单独处理物品特征,最终通过求和的方式得到整体结果。
GAMs example在ranking场景下应用GAM,具有如下挑战,
- 如何利用排序损失函数训练GAM,以及其效果如何并没有得到充分研究。
- 如何在ranking GAM中利用上下文特征。直接将上下文特征投影到物品特征空间,无法帮助提升排序任务的效果。
为了解决上述问题,作者提出了一种适用于用于ranking场景的神经GAM模型。模型使用独立的神经网络单独处理每个物品特征并能够在GAM中灵活的使用上下文特征,优化排序损失。
首先,形式化定义一下背景问题,
- 数据集表示观测的数据集,整体观测数据集包括个样本。其中,分别表示查询query的向量(或者推荐的用户上下文向量),物品集合的特征矩阵(矩阵中的每一个向量表示一个物品的特征向量)以及物品和query的相关度标签(可以是0或1,也可以是表示相关性的有序列表)。
- 策略空间记作,而最优策略可以依据估计的相关性得分得到。
- 排序模型记作,最优策略可以通过在观测数据上训练模型来近似,
- 在文章的研究场景下,作者利用点估计函数,可以得到查询与物品相关性的估计值。如前所述,利用点估计的值,对物品进行排序,可以得到排序列表。
显然,随时然一个点估计形式,模型需要优化排序损失,因此并不是回归问题。
GAM
Generalized additive model(GAM)[19, 31],为每一个独立的输入特征学习一个函数(可以看做是变换函数)。原有的GAM主要应用于归回问题。给定样本特征,利用如下图所示的公式,估计回归标签。
GAM fomulation其中,是每个特征独有的(变换)函数,可以是线性回归,树模型,也可以是复杂的神经网络模型。是link function其实就是怎么把GAM的和映射到目标标签,如果是分类问题,的逆函数是sigmoid函数(因为作用在上了)。
显然,GAM没有特征交叉,但是好处是,可以独立分析、调控甚至可视化,有很好的可解释性能。
本节介绍了作者研究的背景和目的,主要是在平衡模型的复杂度和可解释性能。形式化表述了问题,并回顾了GAM的形式。下一节继续介绍ranking场景下的GAM。
心得体会
加权和的粗排模型
个人感觉,其实很多人在实际场景中用到了类似的结构和场景,只是并非每一个子模型只使用一个特征,还是存在特征交叉和耦合的问题。比如,看到很多大佬,在粗排阶段就是单独使用神经网络模型估计一些分数,最终利用类似线性回归的权重,得到加权和。不过值得注意的是,这样的交叉就无法保证可解释的时候是单独解释一个特征的重要性了。
此外,GAM更多的是利用子模型进行变换,实现最终所有特征嵌入后线性可加。极端一点,可以省略权重,因为子模型,可以把特征拉到统一的线性空间,并且具有统一的量级(scale)不需要在变换了。但是,这对子模型的要求很高。
进一步,如果GAM可以变成类似FM的模型,也许可以节省一些模型容量,提升交叉性,本质还是平衡性能和可解释性。此外,没有很好的总结和论证。
文章引用
[6] ChristopherJ.C.Burges.2010.FromRankNettoLambdaRanktoLambdaMART:
An Overview. Technical Report Technical Report MSR-TR-2010-82. Microsoft
Research.
[19] Trevor Hastie and Robert Tibshirani. 1986. Generalized Additive Models. Statist.
Sci. 1, 3 (1986), 297–318.
[31] Yin Lou, Rich Caruana, and Johannes Gehrke. 2012. Intelligible models for
classification and regression. In KDD.
[51] Cynthia Rudin. 2019. Stop explaining black box machine learning models for high stakes decisions and use interpretable models instead. Nature Machine Intelligence 1, 5 (2019), 206.
[53] Sofia Serrano and Noah A Smith. 2019. Is Attention Interpretable?. In ACL.