概述
腾讯广告算法大赛第二周周冠军出炉,
从照片上推断,
这是一位颜值与机智并存的少年。
于是在我们的强烈邀请下,
小哥哥答应给大家分享主流ctr模型的选择~
大家好,我叫葛云鹏,是来自哈尔滨工业大学深圳研究生院的渣硕。非常不好意思的拿了这周的周冠军,感谢腾讯社交广告group的小礼物。并在这里与大家分享一下这届腾讯算法赛的心得。关于赛题想必大家已经很清楚了,这周我主要讲一下几个主流ctr模型的选择吧。
关于算法模型的选择:
1
我们的最高单模型来自统计特征的lightgbm,鲁棒性(robust)很强的模型对于数值特征有非常好的处理。由于Lookalike相似人群扩展可以抽象成一个ctr问题,数据集的正负样本也比较合理,因此转换率特征在lgb模型里有很优秀的表现,特别是在人为的做一些单特征转换率和交叉ID转换率的时候。需要注意的是这是个没有给时间窗口的ctr问题,因此降低数据穿越带来的影响显得格外重要。大家可以尝试一下例如贝叶斯平滑等方法试着降低一下。ctr问题会有较多的类别特征,因此,byran(算法大赛参赛者)开源的特征也有不错的表现力,大家如果在PC/服务器配置允许下,merge一下试试,据说有0.01的Auc提升。
2
ffm模型,这是ctr问题另一个经典模型, 我用的是github上的命令行libffm。据说xlearn的ffm更加方便使用,大家可以试试。ffm就显得比较简单暴力了,对类别特征进行field+feature_index+value的格式转换是ffm最关键的部分,渣大(算法大赛参赛者)开源的直接类似Onehot处理方法很清晰并且容易理解,大家可以试着做一些id的简单交叉编码,或许会有一定效果。如果是想做数值特征的话,可以参考一些kaggle开源的例子,当然可以直接输出boosting树模型的叶子节点值来离散。注意训练的时候学习率稍微调大一点,训练个50-100轮就行。ffm训练的时候要注意过拟合啊,一定要划分一个valid哦,还要把auto–stop关了。虽然我调的ffm的效果并没有那么好,但是是个很好的融合模型吧。
顺便送大家一波祖传参数:
…/…/libffm/ffm-train -l 0.00002 -k 8 -r 0.05 -s 30 -t 25 -p valid.ffm train1.ffm v1_model
3
深度学习模型,这题的特征序列效果信息量很强,因此深度学习模型效果很好啊,从wide和deep两个角度去解释深度学习模型在ctr问题上的应用。上周郭大(算法大赛参赛者)分享的deepffm让人印象深刻。这题的NN模型可以从Nlp的角度出发去做,也可以尝试一些paper里的什么deepfm,pnn之类的。我们也有个还不错的nn模型。
最后希望大家能在竞赛中收获更多机器学习的知识,每天愉快。
我们不做演员,不藏分,诚信比赛。
最后
以上就是欢呼路人为你收集整理的腾讯广告算法大赛 | 第二周周冠军心得分享的全部内容,希望文章能够帮你解决腾讯广告算法大赛 | 第二周周冠军心得分享所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复