如何计算PR曲线/ AUPR以比较神经网络和随机森林模型

时间:2019-04-25 19:49:15

标签: r neural-network random-forest

我有一个不平衡的数据集,我试图根据客户的浏览行为来预测在线购买(即我的分类问题是响应变量为“ 1 =是购买”和“ 0 =不购买”)。由于数据集中的不平衡,我同时使用了神经网络和随机森林来创建预测模型,并决定PR曲线是衡量模型质量的好方法。

在总体准确性,敏感性,特异性和准确性方面,随机森林似乎优于神经网络。但是,对于随机森林,我得到的PR曲线下面积(AUPR)的值比使用神经网络时要低得多,这可能是由于我的计算方式所致:

1)神经网络:对于每次观察,神经网络都会为我提供0到1之间的预测。我使用这些值来计算AUPR-因此在计算AUPR之前我不会选择阈值

2)随机森林:随机森林只给我0或1作为预测,我用它来计算AUPR。

所以我的问题是:我是否首先需要为神经网络选择一个阈值,以将我的预测分为“ 0”或“ 1”,而不是介于两者之间的值,然后计算AUPR-以使其可与随机森林AUPR相提并论?

顺便说一下,这是我的AUPR代码,其中pred是我的预测值,purchase_decision是我的实际值。

AUPR <- pr.curve(scores.class0=Dataset_Master.test$pred[Dataset_Master.test$purchase_decision==1],
                         scores.class1=Dataset_Master.test$pred[Dataset_Master.test$purchase_decision==0],
                         curve=FALSE)$auc.integral

0 个答案:

没有答案