我试图计算AUC
为肥胖型的数据集,并无法找到一个既处理不在值只是0或1的合理快速的作品。
到目前为止,我已经试过了ROCR
包,但它只能处理0和1的和pROC
包会给我一个答案,但可能需要5-10分钟来计算1万行。
作为一个说明我所有的值落在0 - 1之间,但不一定是1或0。
编辑: - 1的答案和预测都是0之间下降。
有什么建议么?
EDIT2:
ROCR
可以应付这样的情况:
Ex.1
actual prediction
1 0
1 1
0 1
0 1
1 0
或者是这样的:
Ex.2
actual prediction
1 .25
1 .1
0 .9
0 .01
1 .88
但不是的情况是这样的:
Ex.3
actual prediction
.2 .25
.6 .1
.98 .9
.05 .01
.72 .88
pROC
可以对付例3,但它需要一个很长的时间来计算。 我希望有像例3的情况下更快的实现。
到目前为止,我已经试过了ROCR包,但它只能处理0和1
你说的是参考类成员或预测类成员? 后者可以在ROCR是0和1之间,看看它的示例性数据设置ROCR.simple
。
如果你的参考是在[0,1],你可以看看(免责声明:我的)包softclassval。 你必须从敏感性和特异性计算构建ROC / AUC,虽然。 所以,除非你想优化的算法(如ROCR开发者所做的那样),它可能会需要很长时间,太。 在这种情况下,你还必须考虑究竟敏感性和特异性应该是说,因为这是不明确的,在(0,1)的参考成员。
澄清的问题后更新
你需要知道分组的参考或实际在一起失去信息。 例如,如果你有实际= 0.5,预测= 0.8,那是什么意思? 假设这些值是真正实际= 5/10和预测= 5/10。 通过总结10次试验分为两个数字,你失去了相同的 5出10是否意味着与否的信息。 没有这一点,实际= 5/10和预测= 8/10是30%和70%的正确识别之间的任何一致的!
在此处,灵敏度被讨论(即正确识别例如点击目标的)的图示:
你可以找到整个海报和两个PRESENTAIONS在讨论这类问题softclassval.r-forge.r-project.org ,部分“关于softclassval”。
去与这些想法,平均的加权变是绝对的,均方,均方根误差等可以被使用。
然而,所有这些不同的方式来表达模型的相同的性能特性(例如灵敏度=实际的点击事件的%正确认可)并具有不同的含义,并且当它们与在明确的参考和预测的情况下的通常的计算重合,它们将与不明确的引用/分基准类别成员不同的反应。
还要注意,如使用在连续的值[0,1]两个参考/实际和预测,整个测试将被冷凝成在ROC的一个点(不是线!)或特异性灵敏度曲线图。
底线:数据的分组让你在这里闹事。 所以,如果你能以某种方式得到的单次点击的信息,去得到它!
您可以使用其他错误措施评估方法的性能? (例如,平均绝对误差,均方根误差)?
这篇文章也可以帮助你,但如果你有观测值和预测值不同数量的类别,那么你可能会遇到一些问题。
https://stat.ethz.ch/pipermail/r-help/2008-September/172537.html