एक बार जब आपके पास अनुमानित संभावनाएं होती हैं, तो यह आपके ऊपर है कि आप किस सीमा तक उपयोग करना चाहते हैं। आप संवेदनशीलता, विशिष्टता का अनुकूलन करने के लिए दहलीज चुन सकते हैं या आवेदन के संदर्भ में इसे सबसे महत्वपूर्ण माप सकते हैं (कुछ अतिरिक्त जानकारी अधिक विशिष्ट उत्तर के लिए यहां सहायक होगी)। आप आरओसी घटता और इष्टतम वर्गीकरण से संबंधित अन्य उपायों को देखना चाह सकते हैं।
संपादित करें: इस उत्तर को स्पष्ट करने के लिए मैं कुछ उदाहरण देने जा रहा हूं। वास्तविक उत्तर यह है कि इष्टतम कटऑफ इस बात पर निर्भर करता है कि आवेदन के संदर्भ में क्लासिफायर के कौन से गुण महत्वपूर्ण हैं। बता दें कि अवलोकन , और होने का सही मूल्य है । प्रदर्शन के कुछ सामान्य उपाय हैं मैं वाई मैंYमैंमैंY^मैं
(1) संवेदनशीलता: - '1' के अनुपात को ठीक से पहचाना जाता है।पी( य^मैं= 1 | Yमैं= 1 )
(2) विशिष्टता: - '0' के अनुपात को सही ढंग से पहचाना जाता हैपी( य^मैं= 0 | Yमैं= 0 )
(3) (सही) वर्गीकरण दर: - जो पूर्वानुमान सही थे, उनका अनुपात।पी( यमैं= य^मैं)
(1) को True Positive Rate भी कहा जाता है, (2) को True Negative Rate भी कहा जाता है।
उदाहरण के लिए, यदि आपका क्लासिफायर एक गंभीर बीमारी के लिए नैदानिक परीक्षण का मूल्यांकन करने का लक्ष्य था जो अपेक्षाकृत सुरक्षित इलाज है, तो संवेदनशीलता कहीं अधिक महत्वपूर्ण है कि विशिष्टता। एक अन्य मामले में, यदि रोग अपेक्षाकृत मामूली था और उपचार जोखिम भरा था, तो नियंत्रण के लिए विशिष्टता अधिक महत्वपूर्ण होगी। सामान्य वर्गीकरण समस्याओं के लिए, संवेदनशीलता और विनिर्देशन को संयुक्त रूप से अनुकूलित करने के लिए इसे "अच्छा" माना जाता है - उदाहरण के लिए, आप उस वर्गीकरण का उपयोग कर सकते हैं जो बिंदु से उनकी यूक्लिडियन दूरी को कम करता है :( 1 , 1 )
δ= [ पी( यमैं= 1 | Y^मैं= 1 ) - 1 ]2+ [ पी( यमैं= 0 | Y^मैं= 0 ) - 1 ]2---------------------------------------√
( 1 , 1 )δ को आवेदन के संदर्भ में से दूरी के एक अधिक उचित माप को प्रतिबिंबित करने के लिए दूसरे तरीके से भारित या संशोधित किया जा सकता है - (1,1) से यूक्लिडियन दूरी को मनमाने ढंग से उद्देश्यों के लिए चुना गया था। किसी भी मामले में, इन चार उपायों में से सभी आवेदन के आधार पर सबसे उपयुक्त हो सकते हैं।( 1 , 1 )
नीचे एक सिम्युलेटेड उदाहरण है जो एक लॉजिस्टिक रिग्रेशन मॉडल से वर्गीकृत करने के लिए भविष्यवाणी का उपयोग करता है। कटऑफ यह देखने के लिए अलग है कि कटऑफ इन तीन उपायों में से प्रत्येक के तहत "सर्वश्रेष्ठ" क्लासिफायरियर क्या देता है। इस उदाहरण में डेटा एक लॉजिस्टिक रिग्रेशन मॉडल से आता है जिसमें तीन भविष्यवक्ता होते हैं (प्लॉट के नीचे आर कोड देखें)। जैसा कि आप इस उदाहरण से देख सकते हैं, "इष्टतम" कटऑफ इस बात पर निर्भर करता है कि इनमें से कौन सा उपाय सबसे महत्वपूर्ण है - यह पूरी तरह से आवेदन पर निर्भर है।
संपादित करें 2: और , सकारात्मक भविष्य कहनेवाला मूल्य और नकारात्मक भविष्यवाणी मूल्य (ध्यान दें कि ये समान नहीं हैं) संवेदनशीलता और विशिष्टता के रूप में) प्रदर्शन के उपयोगी उपाय भी हो सकते हैं।पी ( Y मैं = 0 | Y मैं = 0 )पी( यमैं= 1 | Y^मैं= 1 )पी( यमैं= 0 | Y^मैं= 0 )
# data y simulated from a logistic regression model
# with with three predictors, n=10000
x = matrix(rnorm(30000),10000,3)
lp = 0 + x[,1] - 1.42*x[2] + .67*x[,3] + 1.1*x[,1]*x[,2] - 1.5*x[,1]*x[,3] +2.2*x[,2]*x[,3] + x[,1]*x[,2]*x[,3]
p = 1/(1+exp(-lp))
y = runif(10000)<p
# fit a logistic regression model
mod = glm(y~x[,1]*x[,2]*x[,3],family="binomial")
# using a cutoff of cut, calculate sensitivity, specificity, and classification rate
perf = function(cut, mod, y)
{
yhat = (mod$fit>cut)
w = which(y==1)
sensitivity = mean( yhat[w] == 1 )
specificity = mean( yhat[-w] == 0 )
c.rate = mean( y==yhat )
d = cbind(sensitivity,specificity)-c(1,1)
d = sqrt( d[1]^2 + d[2]^2 )
out = t(as.matrix(c(sensitivity, specificity, c.rate,d)))
colnames(out) = c("sensitivity", "specificity", "c.rate", "distance")
return(out)
}
s = seq(.01,.99,length=1000)
OUT = matrix(0,1000,4)
for(i in 1:1000) OUT[i,]=perf(s[i],mod,y)
plot(s,OUT[,1],xlab="Cutoff",ylab="Value",cex.lab=1.5,cex.axis=1.5,ylim=c(0,1),type="l",lwd=2,axes=FALSE,col=2)
axis(1,seq(0,1,length=5),seq(0,1,length=5),cex.lab=1.5)
axis(2,seq(0,1,length=5),seq(0,1,length=5),cex.lab=1.5)
lines(s,OUT[,2],col="darkgreen",lwd=2)
lines(s,OUT[,3],col=4,lwd=2)
lines(s,OUT[,4],col="darkred",lwd=2)
box()
legend(0,.25,col=c(2,"darkgreen",4,"darkred"),lwd=c(2,2,2,2),c("Sensitivity","Specificity","Classification Rate","Distance"))