记得给 “应用机器学习” 添加星标,收取最新干货
作者:香港城市大学 贾鹏越
今天跟大家分享一篇来自于香港城市大学、华为诺亚实验室关于在深度推荐系统中的特征筛选方法基准的论文,该论文实现了11种在深度推荐系统中的特征筛选方法,在统一的环境下进行了全面的实验。同时,该论文提出了新的AUKC指标,用于评估不同特征筛选方法在不同特征数量下的效果稳定性和鲁棒性。作者希望通过该Benchmark推动深度推荐系统中特征筛选领域的发展和研究。
论文:https://arxiv.org/pdf/2403.12660.pdf
代码:https://github.com/Applied-Machine-Learning-Lab/ERASE
数据集:https://portland-my.sharepoint.com/:f:/g/personal/pyjia2-c_my_cityu_edu_hk/Eig99ijVRYZHuo6mBrJA5jIBioFU8vwATcRYeLLlYFSUAg
摘要
深度推荐系统(DRS)越来越依赖大量的特征字段以实现更精准的推荐。因此,有效的特征选择方法变得至关重要,可以进一步提高准确性并优化存储效率,以满足部署需求。在这一研究领域中,特别是在DRS的背景下,存在三个核心挑战。首先,研究论文中不同的实验设置经常导致不公平的比较。其次,现有文献缺乏对基于大规模数据集的特征选择方法进行详细分析,以及在不同DRS模型上进行全面的比较,这限制了研究结果的推广并阻碍了在真实平台上的实际部署。最后,研究通常集中在比较特征选择方法能够实现的最佳性能,这种方法通常具有高计算复杂度,并且忽略了如何评估这些方法在不同特征选择数量下的稳健性和稳定性。为了弥补这些问题,本文提出了ERASE,一个全面的用于DRS特征选择的基准测试。ERASE包括对十一种特征选择方法的彻底评估,涵盖传统方法和深度学习方法,涉及四个公共数据集、一个真实工业数据集,取得了显著的改进。同时,我们的代码已经开源供复现使用。
主要创新点
我们提出了ERASE,一个针对DRS特征选择方法的全面基准测试,在各种数据集和DRS Backbone网络上进行了公平比较。据我们所知,我们是首个专注于为推荐任务的特征选择方法进行基准测试的工作。 我们提出了一种全新的特征筛选方法评价指标AUKC,旨在评估特征筛选方法在不同特征筛选数量下效果的鲁棒性和稳定性,以弥补现有评价指标的缺失。 我们在四个被广泛使用的公开数据集以及一个工业生产数据集上进行了大量实验,从多个角度进行分析总结。并且,在线上平台,我们实现了在不影响效果的情况下减少**20%**的延迟,验证了我们的基准测试的有效性。
Benchmark设置
数据集
我们共在四个公开数据集上进行了实验,如下图所示
特征筛选方法
根据计算特征重要性的方式的不同,我们将现有特征筛选方法分为三类:浅层特征筛选方法、基于门控的特征筛选方法以及基于特征敏感性的特征筛选方法:
Backbone模型
我们选择了4个流行的深度推荐系统模型作为主干模型:Wide&Deep, DeepFM, DCN以及FibiNet。
评价指标
在本文中,我们专注于点击率(CTR)预测任务,所以我们将AUC和Logloss作为我们基准的两个主要指标。此外,由于目前还没有一个综合评估特征选择方法在不同数量的选择特征下的性能的指标,我们提出了一个名为“AUKC”的新评估指标。
当前的度量标准无法评估特定特征选择方法在不同特征选择数量下的稳定性和鲁棒性。因此,我们引入了一个新的度量标准——AUKC来填补这一空白。AUKC衡量了不同特征选择数量下的特征选择方法性能曲线下的面积。具体来说,AUKC的公式如下:
在这里,K表示所有特征字段的数量,是模型在根据某一特征选择方法选择个特征时的AUC得分。如果没有选择特征(即),模型将进行随机预测,。
实验
在综合实验章节我们罗列了DeepFM和Wide&Deep在公开数据集上的结果,对于更多模型的实验结果,以及各模型在不同特征选取数量下的详细结果,可以查看论文获取。
综合实验
总的来说,基于门控方法相比浅层特征选择和基于敏感性的特征选择表现更好。可能的原因是,与使用传统的机器学习方法或仅依赖梯度信息相比,利用深度神经网络的强大表达和学习能力能更彻底地探索特征的重要性。 特征选择方法的有效性在不同的主干模型中仍然保持相对一致。这是因为特征组合中包含的信息是客观和事实的,不会受到骨干模型的影响。 特征选择方法的有效性在不同数据集中有明显区别。浅层特征选择方法在Criteo和Aliccp中表现更好。可能的原因是另外两个数据集中的特征值分布非常不平衡,使浅层模型容易过拟合。基于门控的特征选择方法擅长处理有限数据,而基于敏感性的特征选择方法在具有丰富样本的数据集中达到最佳性能。这一发现可以归因于在数据稀缺情况下,梯度用于判断特征重要性过于敏感。然而,有足够的数据支持后,梯度信息的稳定性将大大提高,使特征重要性排名更加准确。 与单阶段方法相比,两阶段方法在不同的主干模型上产生了更稳定的结果。这是因为两阶段方法通过搜索阶段筛选出的特征组合可以独立存在,而单阶段方法则需要在每次训练会话中重新训练特征重要性评分。
特征选择数量的影响
不同方法选择的特征的有效性在选择数量变化时模型效果是不同的。具体而言,当选择的特征数量较小(即5或10)时,Autofield、SHARK和SFS表现更好。它们通过门控向量或梯度获取信息,指导特征重要性的排序。它们擅长从候选特征集中选择最具信息量的特征。当特征数量接近全部特征集时,permutation方法表现良好。这是因为permutation方法基于从完整集中删除一个特征所导致的效果损失来计算特征重要性分数。它倾向于识别具有较少信息的冗余特征。
总体而言,基于敏感度的特征选择方法优于基于门控的特征选择方法,而基于浅层的特征选择方法又不如前两者。可能的原因是基于梯度的方法根据部分批次计算特征重要性,有助于防止过拟合。浅层特征筛选方法效果不佳,可能是因为模型太过简单,无法有效捕捉特征之间复杂的关系以确定特征的重要性。 AutoField、SHARK和SFS在不同的数据集上展现出最佳的性能。值得注意的是,AutoField明显超过其他基于门控的特征选择方法。这可能归因于AutoField以两阶段优化方式进行训练,从而降低了过拟合的风险,使选择结果更加稳定可靠。总之,AutoField、SHARK和SFS在不同数量的选择中都优于其他方法,具有更强的鲁棒性和稳定性。
效率实验
首先,我们分析了在有效果限制的前提下(AUC下降1%内)的内存节约能力。
从内存使用的角度来看,AutoField、LPFS、Permutation、SHARK 和 SFS 这些方法表现更佳。这表明即使在高维稀疏特征的DRS场景中,这些方法也不仅仅依赖于ID类型的特征(例如,userid)。相反,它们有效地选择了有信息量的特征。值得注意的是,AdaFS在两个数据集上的内存使用率都为100%。这是因为AdaFS是一种sample级选择方法(其中门控权重随每个输入样本而变化),因此无法节省内存使用。 在特征数量方面,RF、AutoField、LPFS、SHARK 和 SFS 只需要原始特征集的一半或更少就能达到基础模型99%的性能。另一方面,GBDT和XGBoost需要更多的特征。这可能的原因是GBDT和XGBoost在高维稀疏的DRS数据集中容易过拟合,这会影响到特征重要性的判断。 从数据集的角度来看,与Criteo数据集相比,各种方法在Avazu数据集上的内存节省效果不太明显。这是因为Avazu数据集中的大多数特征值都集中在少数几个特征字段中,而在Criteo数据集中,特征值分布更为均匀。因此,当这些特定的特征字段成为点击通过率(CTR)预测的不可或缺的信息来源时,内存节省的效果就不那么明显了。
接着,我们设定了内存的限制(25%,50%,75%的全量特征占用内存),分析不同方法的有效性。
总体而言,基于门控的特征选择和基于敏感度的特征选择方法表现更好。即使仅限于使用可用内存的25%,它们也能取得接近使用全部特征集的结果。这是因为这些方法依赖于更强大的深度学习网络,能够更好地模拟特征的重要性,并且不依赖于DRS中的高维稀疏ID型特征。 具体来说,AutoField取得了最好的结果,因为其设计的控制器有效地学习了每个字段对预测结果的重要性。DARTS的参数更新方式使得门向量的学习更加鲁棒和具有泛化能力。相比之下,随机森林的表现最差。这是因为在高维稀疏DRS的背景下,RF倾向于对具有大量特征值的ID型特征赋予高权重。这种特征字段提供了更多的分割机会,有助于RF的训练。然而,这种方法增加了模型过拟合的风险。
工业数据集实验
离线实验:我们选取了在公开数据集上表现良好的方法在工业数据集上进行实验。我们发现,采用AutoField是比较稳定有效的方案,在选取少量特征时,AutoField大幅领先于其他方法。而当计算资源充足时,可以考虑Permutation或SHARK,通过调整K参数以获得最佳模型效果。
在线实验:为了验证我们的基准在在线环境中的有效性,我们重新配置基准以适应我们的在线场景,将基准打包成一个新的工具包,并使用该工具包进行特征筛选任务。我们在延迟敏感的在线推荐平台上创建一个实验组,用该工具包减少了30%的特征。然后,我们将实验组部署到在线A/B测试中,采用5%的流量(约100万用户)。经过一周的观察,推断延迟减少了约20%,而该场景的评价指标视频观看次数(vv)和平均播放时长保持不变。这次实验证明了我们的基准工具在在线环境中的有效性。
相似性可视化
我们在四个公开数据集上计算不同方法的特征重要性,再通过pair-wise Spearman相关性相似度绘制热力图。从图中我们可以发现:
热图在左上角、中部和右下角显示了三个较暗的聚类。这是因为通过三种不同的类别方法选出的特征在每个类别内部的相似性更高。
LPFS和OptFS的排名非常相似。这是因为它们都是基于门控的方法,并且使用L0正则化项来控制门控的稀疏性。
AutoField和Permutation的排名最不相似。这与我们在第3.3节的结论一致。AutoField作为一种基于门控的方法,在模型的训练过程中通过学习不同特征字段的门控权重来确定特征的重要性,有助于发现信息丰富的特征。而另一方面,Permutation作为一种基于敏感性的特征选择方法,通过评估打乱某一特征后造成的效果损失来判断特征的重要性。这种方法更有利于识别信息较少的特征。因此,它们的排名显示出显著差异。
SHARK和SFS的非常相似,因为它们都是基于特征的梯度来确定特征重要性,共享相同的信息来源。
结论
在这项研究中,我们介绍了一种名为 ERASE 的全面基准测试,专为深度推荐系统(DRS)的特征选择而设计。ERASE集成了与DRS相关的广泛的特征选择方法,并确保在四个公共数据集以及真实世界的工业数据集上进行公平且全面的实验。此外,ERASE率先提出了AUKC指标,该指标旨在对特征选择方法的稳定性和鲁棒性进行彻底评估,解决现有指标的不足。通过对工业数据集离线和在线实验的结果进行分析,突显了ERASE在实际环境中的高可用性,为在DRS环境中部署特征选择方法提供了宝贵的视角。
END