R में f1 स्कोर की गणना कैसे करें (उदाहरण के साथ)
मशीन लर्निंग में वर्गीकरण मॉडल का उपयोग करते समय, मॉडल की गुणवत्ता का मूल्यांकन करने के लिए हम जिस सामान्य मीट्रिक का उपयोग करते हैं वह F1 स्कोर है।
इस मीट्रिक की गणना इस प्रकार की जाती है:
एफ1 स्कोर = 2 * (प्रिसिजन * रिकॉल) / (प्रिसिजन + रिकॉल)
सोना:
- सटीकता : कुल सकारात्मक भविष्यवाणियों के सापेक्ष सकारात्मक भविष्यवाणियों को सही करें
- अनुस्मारक : कुल वास्तविक सकारात्मकताओं के विरुद्ध सकारात्मक भविष्यवाणियों को सही करना
उदाहरण के लिए, मान लीजिए कि हम यह अनुमान लगाने के लिए एक लॉजिस्टिक रिग्रेशन मॉडल का उपयोग करते हैं कि 400 अलग-अलग कॉलेज बास्केटबॉल खिलाड़ियों को एनबीए में शामिल किया जाएगा या नहीं।
निम्नलिखित भ्रम मैट्रिक्स मॉडल द्वारा की गई भविष्यवाणियों का सारांश प्रस्तुत करता है:
यहां मॉडल के F1 स्कोर की गणना करने का तरीका बताया गया है:
सटीकता = सच्चा सकारात्मक / (सच्चा सकारात्मक + गलत सकारात्मक) = 120/ (120+70) = 0.63157
स्मरण = सच्चा सकारात्मक / (सच्चा सकारात्मक + गलत नकारात्मक) = 120 / (120+40) = 0.75
एफ1 स्कोर = 2 * (.63157 * .75) / (.63157 + .75) = . 6857
निम्नलिखित उदाहरण दिखाता है कि आर में इस सटीक मॉडल के लिए एफ1 स्कोर की गणना कैसे करें।
उदाहरण: आर में एफ1 स्कोर की गणना
निम्नलिखित कोड दिखाता है कि किसी दिए गए लॉजिस्टिक रिग्रेशन मॉडल के लिए एफ1 स्कोर (और अन्य मेट्रिक्स) की गणना करने के लिए आर में कैरेट पैकेज से कन्फ्यूजनमैट्रिक्स() फ़ंक्शन का उपयोग कैसे करें:
library (caret) #define vectors of actual values and predicted values actual <- factor(rep(c(1, 0), times=c(160, 240))) pred <- factor(rep(c(1, 0, 1, 0), times=c(120, 40, 70, 170))) #create confusion matrix and calculate metrics related to confusion matrix confusionMatrix(pred, actual, mode = " everything ", positive=" 1 ") Reference Prediction 0 1 0 170 40 1 70 120 Accuracy: 0.725 95% CI: (0.6784, 0.7682) No Information Rate: 0.6 P-Value [Acc > NIR]: 1.176e-07 Kappa: 0.4444 Mcnemar's Test P-Value: 0.005692 Sensitivity: 0.7500 Specificity: 0.7083 Pos Pred Value: 0.6316 Neg Pred Value: 0.8095 Accuracy: 0.6316 Recall: 0.7500 F1: 0.6857 Prevalence: 0.4000 Detection Rate: 0.3000 Detection Prevalence: 0.4750 Balanced Accuracy: 0.7292 'Positive' Class: 1
हम देखते हैं कि F1 स्कोर 0.6857 है। यह उस मूल्य से मेल खाता है जिसकी हमने पहले मैन्युअल रूप से गणना की थी।
ध्यान दें : हमें मोड = “सब कुछ” निर्दिष्ट करने की आवश्यकता है ताकि आउटपुट में एफ 1 स्कोर प्रदर्शित हो।
यदि आप कई मॉडलों की तुलना करने के लिए F1 स्कोर का उपयोग करते हैं, तो उच्चतम F1 स्कोर वाला मॉडल उस मॉडल का प्रतिनिधित्व करता है जो टिप्पणियों को कक्षाओं में वर्गीकृत करने में सबसे अच्छा सक्षम है।
उदाहरण के लिए, यदि आप किसी अन्य लॉजिस्टिक रिग्रेशन मॉडल को डेटा में फिट करते हैं और उस मॉडल का F1 स्कोर 0.85 है, तो उस मॉडल को बेहतर माना जाएगा क्योंकि उसका F1 स्कोर अधिक है।
अतिरिक्त संसाधन
आर में लॉजिस्टिक रिग्रेशन कैसे करें
F1 स्कोर बनाम सटीकता: आपको किसका उपयोग करना चाहिए?