roc与auc曲线的理解

roc:专业术语称为“受试者工作特征”(Receiver Operating Characteristic)曲线;它是真正例与假正例比值;首先后面两字“正例”就代表预测结果全为正值,前面的第一个字就代表预测是否准确,有预测正确的,也有预测错误的;

以股票预测为例:比如说预测hs300第二天上涨的股票,预测了某100支股票要上涨,而实际上涨了200,而真正预测准确的只80只;而下跌的股票有100,将下跌的股票预测为上涨的有20只;所以真正例率为40%,而假例率为20%;这样就得到了一个点(0.2,04);

为什么要提出这个概念呢?

这是预测结果进行更细的分析,可以满足不同的目的需求;以我为例,极其厌恶亏损,就算不赚钱也可以,所以我希望一个学习器预测的假正例率为0,而真正例率低点都可以,比如说10%;换句话说,该学习器不能预测出所有上涨的股票,但预测出来的股票就一定上涨;那这样的学习器也是具有极大意义的;远好于假正例率20%,真正例率50%,预测上涨中股票有部分是会下跌的;

一个学习器对应一条roc曲线怎么理解,一个学习器对固定样本的输出结果难道会变化吗?

上面隐含了一个假设,即分类阈值为0.5,如果学习器对2m个样本进行预测,输出概率值,并按概率值进行排序,比如说0.9,0.8,0.7…….0.01共2m个预测概率值;如果设置阈值为0.9,即大于0.9分正例,其他为反例;预测分类结果全为反例;然后计算真正例率与假正例率,得到一个点;然后将阈值设为0.8,只有一个正例,其他全部分反例,这样的一个结果就对应一个点,以此类推,阈值设为0.01时,只有一个反例,其他全为正例,这样的一个结果就对应一个点;总的来说,一个学习器之所以能画出一条曲线,是因为调节阈值就可以得到不同的分类结果,从而得到不同的点,所以就能得到一条曲线,该学习器的输出结果并不 会变化;

猜你喜欢

转载自blog.csdn.net/ningyanggege/article/details/80939730