加入收藏 | 设为首页 | 会员中心 | 我要投稿 核心网 (https://www.hxwgxz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

?专访 | 今日头条2016 Byte Cup大赛实战经验分享:要充分挖掘模

发布时间:2021-01-01 23:28:27 所属栏目:大数据 来源:网络整理
导读:机器之心原创 作者:杜夏德 今日头条技术副总裁杨震原在 2016 Byte Cup 世界机器学习比赛颁奖仪式上说,「我们期望经过算法解决问与答的匹配功率疑问。这个疑问即使是小幅的改善,也会影响到数以百万计的用户。」 近日,由今日头条与中国人工智能学会及 IEEE


?专访 | 今日头条2016 Byte Cup大赛实战经验分享:要充分挖掘模

图:第二名天穹战队代表钱乾


钱乾:就我个人来说,一开始参加比赛不要特别急躁,不要一上手做到一定程度就想着要去做融合 ensemble,一开始就是要把数据看得特别清楚,到底这些数据代表了什么,隐藏了什么价值,包括怎么去做一些特征工程上的东西。这些东西有时候是需要灵感,但有时候通过一定的分析手段是能看出来的。比赛时一定要先弄清这些事情再去考虑后续的一些步骤。

?

庞亮:比赛就是一个兴趣吧,有时间就可以参加。借着比赛去实现自己的 Idea,看看它们的表现到底怎么样。而且只有在快结束的时候可能会比较忙,前面的过程不会占用你太多时间。

?

钱乾:我们做到一定程度以后就没有再动过了。

?

机器之心:请问第一名从始至终的思路是什么样的?你们是怎么思考问题的?


?专访 | 今日头条2016 Byte Cup大赛实战经验分享:要充分挖掘模

图:第一名 BrickMover 队代表庞亮


庞亮:我们第一个思路是把传统的模型先做一遍,我们试过 XGBoost 与 FM、还有 SVDfeature 这三个的对比,发现这个问题本身就是一个传统的推荐问题,像 XGBoost 这些都不奏效。然后我们就往那个方向走,你就要去改进模型本身。因为常用的模型大家都有,你能做到,别人也能做到,你能调参,别人也能调参,所以你就要深入到模型本身上去挖掘它剩下的一些信息,然后根据你挖掘到的东西来进行改进,比如说 SVD++,这个是已经成型的模型,你发现 SVD++本身很有效果,那就再继续往下挖嘛。我们有三个人嘛,每个人都有自己的分工,我这边是调理参数和 SVD++这一块,有一个同学是负责挖新的模型,比如说 deep learning 方面的模型,他会去搜索新的 paper,如果有源码实现的最好,如果没有,就 balance 一下,看看最后实现起来怎么样,如果太复杂就放弃了。还有一个同学专门攻 blending 这一块,做几个模型的融合。


不过他也是后面才做的 Blending,之前也在调整 SVDfeature 这块,我自己还试了一下新的模型。

?

郝磊:你们的模型融合是怎么融合的?

?

庞亮:我们把所有的分数拿来融合一下,就是结果融合,也就是线性模型嘛。然后用了 cross validation。

?

整体的思路有几个步骤:首先是分析数据,数据拿来之后,你需要把所有的分布都了解一遍,包括内部分布和特征分布。在专业一点就是你要画出两两 feature 之间的相关性。第二就是把不必要的 feature 和 item 给去掉,做好数据清洗工作。清洗完之后再用模型。先用基础模型,看一下效果,再用复杂的模型,再比较一下这两个模型的差异到底有多大。如果复杂模型表现不好就没必要用它了,直接在基础模型上加 feature 就可以了,这样你只要做 feature engineering 就可以了,完了之后就是 blending。

?

?机器之心比赛过程中专业给你们带来了哪些帮助?

?

钱乾:对我来说就是编写代码的能力。像 SVD SVD++ MIF 我们都试验了一下,但是没有现成的模型,我们就必须从头开始,把这些东西写下来,还是比较考验编程功底的。


郭正肖:我没有太多,就是一些基础的线性代数。我学的是图形学,对向量的理解会有些不同,我考虑的是空间上的。而且我是计算机技术背景,更多偏向工程。但是参加完比赛之后有了经验就知道要多去看 paper,看看别人是怎么做的。


?专访 | 今日头条2016 Byte Cup大赛实战经验分享:要充分挖掘模

第三名西电战队代表郭正肖(中)

(编辑:核心网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读