本文主要是介绍2017.05.25回顾 lift转roc 不会出现前期发力模型,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1、上午连续写了两篇小结
2、继续上一篇小结中的第一个问题,定性上觉得可以loss来判断,但是觉得定量上证明比较复杂,我就曲线救国,研究了下这些lift画出roc是什么样子
蓝线是我正常模型的lift曲线,红线是根据boss的描述画出来的,因为E(lift) = 1(这里有错,是当每个decile接近于等分的时候有这个性质),所以红线后面只能越来越平缓,直线是我自己构造出来的,每个decile的lift是线性增加的,接下来就是怎么通过lift来画roc,需要几个条件,I 要知道总的bad rate,这样可以算得每个decile的bad rate,II 要知道每个decile的比例 就这两个条件可以算hit rate和false alarm rate,总体的绝对数量可以假设为1,这样算出所有decile的hit rate和false alarm rate就可以画ROC曲线了,横轴是false alarm rate,纵轴是hit rate,这里有一点要小心,我昨天都犯错了,这时候rank order是从bottom decile到top decile,从坏的decile到好的decile,因为划cut-off的时候,就是把坏的全预测成0,所以随着标准越来越严,误伤false alarm rate增长越来越快,hit rate前面快,后面慢。那么根据以上画出的ROC是什么样子呢?
我们可以看到,蓝线的AUC大于绿线大于红线,所以先不考虑一个算法是最小化loss function,而是最大化AUC的话,红线产生的AUC就偏低,所以算法做出来就应该是蓝线,从AUC这个侧面说明红线不是一个正常模型。
3、中午完成了这个分析论证,我下午开始做一些工程上的工作,对决策引擎进行诸多修改,参加创建变量讨论,修复一些BUG,发邮件沟通等等
这篇关于2017.05.25回顾 lift转roc 不会出现前期发力模型的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!