R တွင် confusion matrix ဖန်တီးနည်း (တစ်ဆင့်ပြီးတစ်ဆင့်)


Logistic regression သည် တုံ့ပြန်မှု variable binary ဖြစ်သောအခါ ကျွန်ုပ်တို့အသုံးပြုနိုင်သည့် ဆုတ်ယုတ်မှုအမျိုးအစားတစ်ခုဖြစ်သည်။

ထောက်ပံ့ပို့ဆောင်ရေး ဆုတ်ယုတ်မှုပုံစံ၏ အရည်အသွေးကို အကဲဖြတ်ရန် ဘုံနည်းလမ်းမှာ စမ်းသပ်ဒေတာအတွဲ၏ အမှန်တကယ်တန်ဖိုးများနှင့် မော်ဒယ်၏ ခန့်မှန်းတန်ဖိုးများကို ပြသသည့် 2×2 ဇယားဖြစ်သည့် ရှုပ်ထွေးသောမက်ထရစ် ကို ဖန်တီးရန်ဖြစ်သည်။

အောက်ဖော်ပြပါ အဆင့်ဆင့် ဥပမာသည် R တွင် ရှုပ်ထွေးမှုမက်ထရစ်ကို ဖန်တီးနည်းကို ပြသထားသည်။

အဆင့် 1- ထောက်ပံ့ပို့ဆောင်ရေး ဆုတ်ယုတ်မှုပုံစံကို အံကိုက်လုပ်ပါ။

ဤဥပမာအတွက်၊ ကျွန်ုပ်တို့သည် ISLR ပက်ကေ့ခ်ျမှ မူရင်း ဒေတာအတွဲကို အသုံးပြုပါမည်။ ပေးထားသောသူတစ်ဦးသည် ၎င်းတို့၏ချေးငွေတွင် ပုံသေဖြစ်နိုင်ခြေကို ခန့်မှန်းရန် ကျောင်းသားအခြေအနေ၊ ဘဏ်လက်ကျန်နှင့် နှစ်စဉ်ဝင်ငွေတို့ကို အသုံးပြုပါမည်။

အောက်ဖော်ပြပါ ကုဒ်သည် ဤဒေတာအတွဲအတွက် ထောက်ပံ့ပို့ဆောင်ရေး ဆုတ်ယုတ်မှုပုံစံကို မည်သို့ အံဝင်ခွင်ကျဖြစ်စေရန် ဖော်ပြသည်-

 #load necessary packages
library (caret)
library (InformationValue)
library (ISLR)

#load dataset
data <-Default

#split dataset into training and testing set
set. seeds (1)
sample <- sample(c(TRUE, FALSE), nrow(data), replace= TRUE , prob=c(0.7,0.3))
train <- data[sample, ]
test <- data[!sample, ]

#fit logistic regression model
model <- glm(default~student+balance+income, family=" binomial ", data=train)

အဆင့် 2- Confusion Matrix ကိုဖန်တီးပါ။

ထို့နောက်၊ ကျွန်ုပ်တို့သည် confusion Matrix ကိုဖန်တီးရန် caret package မှ confusionMatrix() function ကိုသုံးပါမည်။

 #use model to predict probability of default
predicted <- predict(model, test, type="response")

#convert defaults from "Yes" and "No" to 1's and 0's
test$default <- ifelse(test$default==" Yes ", 1, 0)

#find optimal cutoff probability to use to maximize accuracy
optimal <- optimalCutoff(test$default, predicted)[1]

#create confusion matrix
confusionMatrix(test$default, predicted)

     0 1
0 2912 64
1 21 39

အဆင့် 3- ရှုပ်ထွေးမှု matrix ကို အကဲဖြတ်ပါ။

ရှုပ်ထွေးမှုမက်ထရစ်ကို အသုံးပြု၍ အောက်ဖော်ပြပါ မက်ထရစ်များကို တွက်ချက်နိုင်သည်။

  • အာရုံခံစားနိုင်မှု- “ စစ်မှန်သောအပြုသဘောဆောင်နှုန်း” – မော်ဒယ်မှန်ကန်စွာ ခန့်မှန်းထားသည့် လူတစ်ဦးချင်းစီ၏ ရာခိုင်နှုန်းသည် ပုံသေဖြစ်လိမ့်မည်။
  • တိကျမှု- “ စစ်မှန်သော အနုတ်လက္ခဏာနှုန်း” – မော်ဒယ်မှန်ကန်စွာ ခန့်မှန်းထားသော လူတစ်ဦးချင်းစီ၏ ရာခိုင်နှုန်းသည် ပုံသေ မဟုတ်ပေ
  • စုစုပေါင်း မှားယွင်းသော အမျိုးအစားခွဲခြားမှုနှုန်း- မော်ဒယ်မှ ပြုလုပ်ထားသော စုစုပေါင်း မှားယွင်းသော အမျိုးအစားခွဲခြားမှု ရာခိုင်နှုန်း။

အောက်ပါကုဒ်သည် ဤမက်ထရစ်များကို တွက်ချက်နည်းကို ပြသည်-

 #calculate sensitivity
sensitivity(test$default, predicted)

[1] 0.3786408

#calculate specificity
specificity(test$default, predicted)

[1] 0.9928401

#calculate total misclassification error rate
misClassError(test$default, predicted, threshold =optimal)

[1] 0.027

ဤမော်ဒယ်အတွက် စုစုပေါင်း အမျိုးအစားခွဲခြားမှု မှားယွင်းမှုနှုန်းမှာ 2.7% ဖြစ်သည်။

ယေဘုယျအားဖြင့်၊ ဤနှုန်းနိမ့်လေ၊ မော်ဒယ်သည် ရလဒ်များကို ခန့်မှန်းနိုင်လေဖြစ်သည်။ ထို့ကြောင့် ဤအထူးပုံစံမော်ဒယ်သည် လူတစ်ဦးချင်းစီ၏ ပုံသေဖြစ်မည်၊ မဟုတ်သည်ကို ခန့်မှန်းရာတွင် အလွန်ထိရောက်ကြောင်း သက်သေပြပါသည်။

မှတ်ချက်တစ်ခုထည့်ပါ။

သင့် email လိပ်စာကို ဖော်ပြမည် မဟုတ်ပါ။ လိုအပ်သော ကွက်လပ်များကို * ဖြင့်မှတ်သားထားသည်