阿里天池大数据竞赛实战.docx
《阿里天池大数据竞赛实战.docx》由会员分享,可在线阅读,更多相关《阿里天池大数据竞赛实战.docx(13页珍藏版)》请在冰豆网上搜索。
阿里天池大数据竞赛实战
阿里天池大数据竞赛实战:
RF&GBRT完成过程
1、XlabGBRT上手
微信公众号ID:
datadw进入领取资料。
1.1、训练特征表准备
训练的特征表gbrt_offline_section_one_24格式为:
user_id,brand_id,feature1,feature2...Label
见下图:
1.2、建立特征稀疏表,为训练做准备
特征稀疏表可直接在Xlab由原始特征表转换得到,截图如下:
进入普通表转稀疏矩阵界面后,在选择列里填上:
user_id对应的列号(表默认从0列开始),brand_id对应的列号,以及想要使用的众多特征对应的列号(不需要填写标签对应的列号);然后在输出表里填上转换成的稀疏矩阵:
gbrt_offline_section_one_24_1;如下图
1.3、GBRT训练
利用训练的特征表gbrt_offline_section_one_24,进行GBRT训练,如下图所以
进入配置界面,勾选训练的标签,稀疏矩阵名处输入刚才转好的稀疏矩阵gbrt_offline_section_one_24_1,模型输出表处填写模型输出表名,参数配置处根据效果进行配置(最开始默认就可以的)。
如下图所示:
配置好只好就可以进行训练了,等待训练好之后等到GBRT预测模型:
gbrt_offline_section_one_25;
1.4、GBRT预测特征表准备
训练的特征表gbrt_offline_section_two_11格式与训练特征表格式一样,为:
user_id,brand_id,feature1,feature2...Label 见下图:
1.5、建立预测稀疏矩阵表
特征稀疏表可直接在Xlab由原始特征表转换得到,方法和原来一样,直接截图如下:
需要注意的是,选择列必须和训练时候一样
1.6、GBRT预测
利用转好的预测稀疏矩阵表gbrt_offline_section_two_11_1进行预测,如下图所示
进入界面如下:
model处填写刚才训练好的GBRT模型表:
gbrt_offline_section_one_25;输出表名处填写预测结果输出表 gbrt_offline_section_two_13,然后进行预测,如下图所示:
1.7、GBRT碎碎念
GBRT预测好之后,得到的结果为与原始预测表gbrt_offline_section_two_11一一对应的单列值y_var(搞不懂为什么不提供类似RF那样预测结果追加user_id,brand_id列),如下图:
所以,还得进行追加ID列,进行zxs_gbrt_offline_section_two_13_1和zxs_gbrt_offline_section_two_11_1两张表的合并,得到类似user_id,brand_id,y_val的表,取阈值进行推荐就可以了,下图为xlab里提供的脚本,追加ID列代码。
另外:
附上脚本实现的代码,方便测试:
2、XlabRF上手
2.1、训练特征表准备
训练的特征表gbrt_offline_section_one_24格式为:
user_id,brand_id,feature1,feature2...Label (和GBRT时候是一样的),见下图所示:
2.2、RF训练
利用训练的特征表gbrt_offline_section_one_24,进行RF训练,如下图所以
进入配置界面,在Features框里勾选训练特征以及该特征连续与否,在Class框里目标处选择标签列,模型输出表处填写输出模型表名:
gbrt_offline_section_one_25;进一步,点击参数配置选项卡,进入参数配置界面,进行参数配置,我们主要配置了树的棵树,配置好后,进行训练,如下图所示:
训练结束,得到RF模型表gbrt_offline_section_one_25。
2.3、RF预测
利用预测特征表gbrt_offline_section_two_11进行RF预测,如下图所示:
进入配置界面:
在结果附加列中添加user_id,brand_id列,勾选目标列2分类,主分类为1,这样预测结果表中就会给出预测为1的概率值,输出信息处填写预测输出表,进行预测,如下图:
预测完成之后即可根据conclusion=1判断预测的正样本,或者根据probability阈值判断(从一位哈工大同学大帅那里得到了如下控制推荐条数的好方法),如下图: