阅读ESMM方法论文,该论文是一个经典的多任务学习网络,根据ctcvr = ctrcvr 的关系,学习ctcvr ctr间接估计cvr。对比目前任务, er = ecrcr 的关系,可以通过er = ecr * cr的方式来实现er建模。其中预测ecr的部分还可以加上对dp的单调约束。
检查DESCN在训练时第二轮loss为nan的问题, 发现问题在计算cross response loss处,按照treatment分组导致尺寸不匹配,尝试解决。
实现esmm论文中的结构用于er建模。参考原文设置损失函数为cr损失加上ecr损失。ecr部分暂时未加约束。
训练ESMM_without_constraint模型,查看训练效果。在测试集上auc=0.733,和直接预测er模型(auc=0.7281)相比效果略好。 询问得知测试集不要用新给定的数据,还是照常使用原来数据进行train-test切分后进行评估。 目前评估er模型包括: simple-dnn直接预测er;esmm 预测ecr和cr,计算er = ecr * cr ;esmm直接预测er;esmm多任务学习主任务预测er
1.DESCN模型debug完成,之前nan的原因是计算cross response loss时,需要计算交叉熵损失,当tensor尺寸为0时会导致nan。现在已经修复,模型可以正常训练。
在全国数据集上。各个模型的按照er预测分组和dp分组的图存在线上cooper中
各个模型对er的预测效果如下:
对照基线方法:
XGB: auc=0.7731, mae=0.2953, wmape=1.2590
DNN: auc=0.7618, mae=0.3038, wmape=1.2954
无约束的ESMM方法:
突发恶疾请假一天
1, er建模:完成了多种方式的er预测,包括直接预测er,esmm预测ecr和cr,计算er = ecr * cr,esmm直接预测er,esmm多任务学习主任务预测er等。