CTR预估之特征选择
目录
在广告投放中,为进一步提高广告点击率,我们通常会使用一些机器学习算法(比如常见的逻辑回归算法(Logistic Regression),梯度提升决策树算法GBDT(Gradient Boosting Decision Tree))进行CTR预估。而CTR预估结果的准确性,很大程度取决于训练数据特征的有效性。
信息熵
信息增益
数据测试
我们用某广告投放一段时间后获得的日志数据,来进行计算它的信息熵和信息增益。
信息熵&信息增益
广告整体信息熵:0.0501020793776
每个广告对应的信息增益:
特征 | 维度数 | 信息增益 |
---|---|---|
hour | 24 | 0.0000458265 |
minute | 60 | 0.0000393702 |
spotid | 7 | 0.0000324241 |
adid | 2 | 0.0000324241 |
app | 2 | 0.0000070514 |
pn | 54 | 0.0020143116 |
slotid | 3 | 0.0000260086 |
w | 3 | 0.0000260086 |
h | 3 | 0.0000260086 |
country | 2 | 0.0000016058 |
city | 388 | 0.0002733143 |
region | 33 | 0.0000378603 |
nt | 3 | 0.0000005660 |
brd | 3 | 0.0000009544 |
mod | 115 | 0.0005215242 |
dd | 56 | 0.0004666624 |
sw | 11 | 0.0001252699 |
sh | 11 | 0.0001660389 |
gender | 3 | 0.0000589429 |
age | 10 | 0.0000651292 |
edu | 3 | 0.0000275445 |
interest | 204 | 0.0025589520 |
AUC&Logloss
我们使用LR算法进行模型训练,对比去掉部分特征之后模型的AUC和Logloss:
AUC | Logloss | |
---|---|---|
所有特征 | 0.685999609196 | 0.0642677007766 |
去掉信息增益 last5特征(保留:interest,pn,mod,dd,city,sh,sw,age,gender,hour,minute,region,spotid,adid,edu,slotid) | 0.681865979366 | 0.0635880887503 |
去掉信息增益 top5特征(保留:sh,sw,age,gender,hour,minute,region,spotid,adid,edu,slotid,w,h,app,country,brd,nt) | 0.54544906619 | 0.0659654279931 |
结论
- 信息增益为0的特征,对模型无任何价值(可以直接删掉);
- 对比去掉信息增益 top5 与 last5 的特征可以发现:信息增益越大,对模型产生的效果越明显;
- 要提升AUC,必需寻找信息增益比较大的特征加入到模型中进行训练;
参考:
- 《网络广告投放算法的研究》霍艳(东北大学硕士学位论文)
- 信息熵:https://en.wikipedia.org/wiki/Entropy_(information_theory)
- 信息增益:https://en.wikipedia.org/wiki/Information_gain_ratio
码字很辛苦,转载请注明来自ChenJiehua的《CTR预估之特征选择》
2017-11-11 2018-05-11 ctr
评论