腾讯社交广告高校算法大赛 baseline1
2017-07-06 11:19
381 查看
官方给出的baseline1是基于平均分组转化。接下来根据数据分析,数据清洗,特征工程,模型训练和验证等四个大的模块来进行分析。
1、数据分析
2、数据清洗
2.1 数据的拼接:将训练数据集(train.csv)和广告特征文件(ad.csv)进行拼接,将训测试数据集(test.csv)和广告特征文件(ad.csv)进行拼接。
3、特征工程
1、数据分析
2、数据清洗
2.1 数据的拼接:将训练数据集(train.csv)和广告特征文件(ad.csv)进行拼接,将训测试数据集(test.csv)和广告特征文件(ad.csv)进行拼接。
3、特征工程
# -*- coding: utf-8 -*- """ baseline 1: history pCVR of creativeID/adID/camgaignID/advertiserID/appID/appPlatform """ import zipfile import numpy as np import pandas as pd # load data data_root = "." dfTrain = pd.read_csv("%s/train.csv"%data_root) dfTest = pd.read_csv("%s/test.csv"%data_root) dfAd = pd.read_csv("%s/ad.csv"%data_root) # process data dfTrain = pd.merge(dfTrain, dfAd, on="creativeID") dfTest = pd.merge(dfTest, dfAd, on="creativeID") y_train = dfTrain["label"].values # model building key = "appID" dfCvr = dfTrain.groupby(key).apply(lambda df: np.mean(df["label"])).reset_index() dfCvr.columns = [key, "avg_cvr"] dfTest = pd.merge(dfTest, dfCvr, how="left", on=key) dfTest["avg_cvr"].fillna(np.mean(dfTrain["label"]), inplace=True) proba_test = dfTest["avg_cvr"].values # submission df = pd.DataFrame({"instanceID": dfTest["instanceID"].values, "proba": proba_test}) df.sort_values("instanceID", inplace=True) df.to_csv("submission.csv", index=False) with zipfile.ZipFile("submission.zip", "w") as fout: fout.write("submission.csv", compress_type=zipfile.ZIP_DEFLATED)
相关文章推荐
- 第一届腾讯社交广告 高校算法大赛--基基复基基队伍分享(进入决赛)
- 腾讯社交广告高校算法大赛——总结
- 腾讯社交广告“高校算法大赛” Amelie 30th
- 【转载】备战腾讯社交广告算法大赛 · 七种常用特征工程
- 腾讯社交广告算法大赛经验分享
- “第一届腾讯高校算法大赛”初赛失败总结
- 腾讯社交广告大赛总结
- 腾讯社交广告大赛回来的感悟
- 腾讯社交广告大赛 —— 特征与模型介绍
- 爱奇艺全国高校算法大赛初赛C
- 移动社交广告价值显现,腾讯之后,陌陌开始捞金
- 微信广告引擎与社交传播算法实践
- 腾讯社交广告推合约CPM售卖方式
- 腾讯公司数据分析岗位的hadoop工作 线性回归 k-means算法 朴素贝叶斯算法 SpringMVC组件 某公司的广告投放系统 KNN算法 社交网络模型 SpringMVC注解方式
- 腾讯公司数据分析岗位的hadoop工作 线性回归 k-means算法 朴素贝叶斯算法 SpringMVC组件 某公司的广告投放系统 KNN算法 社交网络模型 SpringMVC注解方式
- 腾讯2017社交广告比赛(广告转化率预测)总结与分享--by Coda_Allegro
- 2月28日云栖精选夜读:用人工智能提升营销效率,阿里妈妈启动2018国际广告算法大赛
- 爱奇艺全国高校算法大赛初赛A
- 爱奇艺全国高校算法大赛初赛B