首页 文章

如何计算Caret中glm二项模型的精度?

提问于
浏览
-1

我在插入符号中训练glm二项式模型进行欺诈分类(0表示非欺诈,1表示欺诈):

model.lr <- train(fraud_ind ~ var1 + var2 + var3,
                  data = d_train, method = 'glm', family = 'binomial', trControl=tr_ctrl

我看到模型输出:

> model.lr
Generalized Linear Model 

90826 samples
    3 predictors
    2 classes: '0', '1' 

No pre-processing
Resampling: Cross-Validated (15 fold, repeated 5 times) 
Summary of sample sizes: 84772, 84771, 84770, 84772, 84771, 84770, ... 
Resampling results:

  Accuracy  Kappa   
  0.866818  0.733636

我认为准确性必须与某个阈值相关,但模型没有显示它用于分类的阈值 . 知道这个准确度究竟是如何基于?

1 回答

  • 0

    跟进:

    在我发布问题之后,我通过比较预测的概率和分类结果进行了一些详细的分析 .

    u = predict(model.lr,d_train,type ='raw')v = predict(model.lr,d_train,type ='prob')w < - data.frame(u,v)View(w)

    enter image description here

    在图中,X1是“欺诈”的预测概率,X0是“非欺诈”的概率 . 第一列U是二进制分类结果 . 我们可以清楚地看到截止值为0.5 .

相关问题