您正在使用IE低版浏览器,为了您的雷峰网账号安全和更好的产品体验,强烈建议使用更快更安全的浏览器
此为临时链接,仅用于文章预览,将在时失效
人工智能开发者 正文
发私信给奕欣
发送

1

阿里巴巴WSDM Cup 2018夺得第二名,获奖论文全解读

本文作者:奕欣 2018-03-06 15:14
导语:在WSDM 2018上,阿里集团 AliOS 算法团队获得 WSDM Cup 挑战赛第二名的成绩

雷锋网 AI 科技评论按:在 2 月份举行的第 11 届网络搜索与数据挖掘国际会议(WSDM 2018)上,阿里集团 AliOS 算法团队获得 WSDM Cup 挑战赛第二名的成绩,这是中国企业首次在该赛事上取得的最高名次。

WSDM 被誉为信息检索领域最顶级的会议之一,会议的关注点为搜索、数据检索、数据挖掘、算法设计、算法分析、经济影响方面的实际且严谨的研究,以及对准确率和运行速度的深入实验探究。今年已经是 WSDM 的第十一届会议。

本次 WSDM Cup 有来自全球 575 支队伍参赛。会议共收到论文投稿 514 篇,接受论文 84 篇,接受率约 16%。

此次比赛出题方是一家名为 KKBOX 的流媒体音乐公司,赛题内容是预测 3 月订阅到期的用户中,哪些会流失。为解决该题,阿里巴巴使用了两层 Stacking Model,第一层采用逻辑回归、随机森林、XGBoost 算法,第二层又采用 XGBoost 算法把第一层的结果融合。流失用户预测,对有会员体系的业务场景都可以使用,其中会员付费为主要收入的业务就更为关键,比如像 Apple Music、虾米音乐。多层 Stacking Model 由 AliOS 神灯研发,极大提升了分类预测的准确率,已广泛应用于 AliOS 多项业务中。

以下为阿里集团的论文解读。

阿里巴巴WSDM Cup 2018夺得第二名,获奖论文全解读

1. 介绍

KKBOX 是亚洲一家音乐流媒体公司,其业务模式与 Spotify 和 Apple Music 类似。对于音乐流媒体业务来说,付费会员非常重要,不仅直接影响订阅收入,还会间接影响广告收入。

本次比赛的目标是利用 KKBOX 真实的用户行为数据,预测会员是否会流失。比赛中我们面临了很多挑战,如正负样本不均衡、脏数据等问题。我们采取了一些列措施来解决这些问题,比如建立数据清洗和交叉验证机制,使用 Stacking Model 来提升准确率。

2. 问题定义

本次比赛的目标是预测当月会员到期的用户中哪些会流失。这里「流失」的定义是会员到期后 30 天内没有续费。

本次比赛的结果采用 Log Loss 进行评估,Log Loss 的计算公式如下:

阿里巴巴WSDM Cup 2018夺得第二名,获奖论文全解读

公式中,N 表示测试样本数,表示测试样本最终是否流失(1 表示流失,0 表示没有流失),为模型预测用户是否会流失的概率(取值 0-1)。

3. 方法

考虑到模型的数据量和开发效率,我们采用了阿里云的 DataWorks 作为开发平台。

3.1 数据预处理

比赛提供了三份数据,分别是用户的订单明细、听歌日志和人口统计学信息。见下表:

阿里巴巴WSDM Cup 2018夺得第二名,获奖论文全解读

脏数据问题例如年龄数值小于 0 或者大于 100,注册时间和支付金额中的极端异常值。我们处理脏数据的方式包括根据分布将异常值转换为合理取值,删除无法解释且不包含重要信息的数据。

训练样本中,is_churn 是样本的 label,训练样本取自 2017 年 2 月和 3 月订阅到期的用户。训练数据的正负样本极不均衡,以 2 月份订阅到期的训练样本为例,在总共 992931 条数据中,is_churn = 1 的样本只有 63471,占比 6.4%。

传统的分类算法比如决策树和逻辑回归都是对正负样本比例有要求。我们使用欠采样的方式对训练样本进行了处理,分别尝试了 1:3,1:5,1:8 的正负样本配比,在最终模型中,我们根据交叉验证的结果选择了最优配比。

3.2 特征工程

特征工程阶段,我们从计算逻辑、时间窗、额外条件三个维度将数据进行组合。如下图,右边特征列表中 last_7_auto_tran_cnt 表示最近 7 天(时间窗)自动完成的(额外条件)订单笔数(计算逻辑)。特征组合完成后,我们对特征还要一系列的处理,如 log 转换、one-hot 编码。

阿里巴巴WSDM Cup 2018夺得第二名,获奖论文全解读

我们通过交叉验证来测试特征的有效性。在交叉验证中我们发现,最有效的特征包括:1. 最近 60 或 90 天自动完成的订单笔数 2. 最近一笔交易是否被取消或自动完成 3. 账号注册的方式。最终,我们提取了 300 多个特征,并根据交叉验证的结果留下了 204 个特征。

3.3 模型

我们使用了一个两阶段模型来预测最终的流失情况。如下图,在第一阶段,提取出的特征会输入逻辑回归、随机森林、XGBoost 三个模型,而第一阶段模型的输出会被当做第二阶段的特征,最终组成一个 Stacking Model。

阿里巴巴WSDM Cup 2018夺得第二名,获奖论文全解读

如下图,我们采用了 5-fold stacking 策略。

在第一阶段,将训练数据均匀地分成 5 份,使用「留一法」训练 5 个逻辑回归模型,用这 5 个模型分别去预测剩下的一份训练数据和测试数据,将 5 份预测的训练数据合并,可以得到一份新的训练数据 NewTrainingData,将 5 份预测的测试数据采用均值法合并,得到一份新的测试数据 NewTestData。用同样的方法再分别训练随机森林和 XGBoost,新的训练和测试数据上,就可以得到 3 个模型的分数。

第二阶段,将上一阶段的 NewTraningData 作为训练数据,NewTestData 作为测试数据,重新训练一个 XGBoost 模型,得到最终的预测分数。这种方法可以避免过拟合,学习出特征之间组合的信息,还能提高预测的准确率。

阿里巴巴WSDM Cup 2018夺得第二名,获奖论文全解读

3.4 模型评估

交叉验证不仅可以做特征筛选,在模型阶段,还给调参、Stacking Model 策略的调整提供依据。下图可以看到我们每一步的优化带来的提升,最初的 LR 模型可以得到 0.2106 的分数,XGBoost 和特征提取技术可以把分数提升到 0.1151,最终 Stacking Model 和调参让我们得到 0.0934 的分数。

阿里巴巴WSDM Cup 2018夺得第二名,获奖论文全解读

4. 结论

本文我们介绍了在参加 WSDM Cup 2018 中所做的实践,最终我们获得了第二名的成绩。对几个关键的优化技术在文中做了阐述,如数据预处理阶段的欠采样、特征提取方式、Stacking Model。通过分析和测试,我们发现这些方法都可以提升预测的准确率,后续我们还将测试更多的超参数,并引入深度学习进行优化。

论文原文地址:

https://wsdm-cup-2018.kkbox.events/pdf/7_A_Practical_Pipeline_with_Stacking_Models_for_KKBOXs_Churn_Prediction_Challenge.pdf


现在关注“雷锋网”微信公众号(leiphone-sz),回复关键词【2018】,随机抽送价值 3999 元的参会门票 3 张

雷峰网版权文章,未经授权禁止转载。详情见转载须知

阿里巴巴WSDM Cup 2018夺得第二名,获奖论文全解读

分享:
相关文章
当月热门文章
最新文章
请填写申请人资料
姓名
电话
邮箱
微信号
作品链接
个人简介
为了您的账户安全,请验证邮箱
您的邮箱还未验证,完成可获20积分哟!
请验证您的邮箱
立即验证
完善账号信息
您的账号已经绑定,现在您可以设置密码以方便用邮箱登录
立即设置 以后再说