我不理解分类中的.pred_class(使用逻辑回归)

问题描述 投票:0回答:1

我有一个非常简单的问题,我的结果是二元的,我正在尝试使用逻辑回归(使用 tidymodels)根据一些预测变量(其中一些是众所周知的良好预测变量)进行分类。

我将因子结果编码为 0 和 1(1=正,这是我最感兴趣的)。

当我使用 types="class" 和 types="prob" 运行预测函数时,我得到名为:.pred_class、.pred_0 和 .pred_1 的列。

然后,例如,绘制 ROC 曲线时,我想知道是否应该使用

roc1 <- roc_curve(data_test_pred, outcome, .pred_1)

roc1 <- roc_curve(data_test_pred, outcome, .pred_0).

第一个(我认为是正确的)在对角线下方给出了一个糟糕的 ROC 曲线,第二个给出了一个不错的 ROC 曲线。

所以,我只是不明白这里发生了什么,我不知道如何继续。

r machine-learning predict roc
1个回答
0
投票

yardstick 使用第一级作为事件。因此,如果您的

outcome
是具有级别
c(0,1)
的因子,则标准将第一个级别
0
作为事件级别。然后,当提供
.pred_0
作为包含事件的类概率的列时,这与您获得合理的曲线相匹配。

如果想使用第二个因子级别作为事件级别,可以在

event_level = "second"
中设置
roc_curv()
,另请参阅https://yardstick.tidymodels.org/reference/roc_auc.html#relevant-level

© www.soinside.com 2019 - 2024. All rights reserved.