近年来随着人工智能的发展,深度学习开始在工业界不同场景落地。深度学习跟以前的机器学习模型相比,其中很重要的特点就是在于能在模型侧自动构建特征,实现端到端学习,效果也有明显提升,但新的问题如模型效果和推理效率的冲突也开始凸显。
爱奇艺提出了新的在线知识蒸馏方法来平衡模型效果和推理效率,在推荐场景上获得了明显的效果,本文主要介绍爱奇艺在探索升级排序模型的过程中提出的双DNN排序模型。文章开始之前,首先为大家科普与本文主题相关的关键词的含义及相关技术知识。
关键词
写在前面
近些年来,学术界和工业界陆续开展了多项让排序模型变的wider and deeper的相关工作,其中,wider(更宽)意味着一个模型包含更多不同的子模型,如xDeepFM[1]包括了LR, DNN和CIN三种组件,分别建模一阶显示特征交叉(LR),高阶隐式特征交叉(DNN)和高阶显示特征交叉(CIN);deeper(更深)意味着通过增加模型复杂性来提升模型性能,一些在NLP和CV领域使用的复杂组件开始被引入排序模型,如xDeepFM的CIN其实是利用卷积神经网络来建模特征交叉, BST[2]利用Transformer建模用户行为序列的表征。然而,更深更宽的模型在提升模型效果的同时,往往伴随着模型推理效率的下降。
爱奇艺提出的在线知识蒸馏方法来平衡模型效果和推理效率,并在短视频信息流和图文信息流两个重要场景上线后都获得了明显的正向效果。其中,在爱奇艺短视频场景时长指标+6.5%,点击率指标+2.3%;图文推荐场景时长指标+4.5%,点击率指标+14% 。
深度学习时代排序模型的演进
从建模特征组合这个角度去介绍深度学习时代排序模型的演进,按照时间的发展经历了三个时期(萌芽期、中兴期和突破期),具体如下:
b. 中兴期:深度排序模型开始被广泛接受,代表模型为WDL[3]和 DeepFM[4]等,这些模型的优势在于在DNN基础上,增加了显示的一阶或二阶特征组合。其中WDL几乎成了推荐广告CTR模型从传统机器学习时代过渡到深度学习的敲门砖,应用这一模型既能尝到深度学习的甜头,又能复用已有的排序模型成果进一步提升模型性能;
c. 突破:从DCN[5],xDeepFM开始,深度排序模型开始变的更深更宽,尤其重视使用DL组件来显示建模高阶特征交叉,其显示的高阶特征组合更符合算法工程师对排序模型的期许。通过模型本身来进行特征组合可以避免人工特征组合的一些弊端,如工程代价和人力成本。
上面介绍的深度排序模型可以归类为如下表格,显示的高阶vector-wise交叉相对更make sense, 也是最近一些排序模型工作的核心优化点:
当使用和现有baseline model一样的CPU推理资源时,像xDeepFM这样的复杂深度模型无法上线。若使用GPU进行推理, ROI并不高。与这两种情况相比,知识蒸馏[6]这一类模型压缩方法是解决这类问题的良药,可以将复杂模型的知识迁移到简单模型。