क्लासिफ़िकेशन: ऐक्यूरसी, रीकॉल, सटीक, और संबंधित मेट्रिक

मॉडल का आकलन करने के लिए, कई काम की मेट्रिक का हिसाब लगाने के लिए, सही और गलत पॉज़िटिव और नेगेटिव का इस्तेमाल किया जाता है. कौनसी आकलन मेट्रिक सबसे ज़्यादा मायने रखती हैं, यह इस बात पर निर्भर करता है कि मॉडल कौनसा है और टास्क कौनसा है. साथ ही, यह भी मायने रखता है कि गलत तरीके से क्लासिफ़ाई करने पर कितनी लागत आएगी और डेटासेट संतुलित है या असंतुलित.

इस सेक्शन में मौजूद सभी मेट्रिक की गिनती, एक तय थ्रेशोल्ड के आधार पर की जाती है. थ्रेशोल्ड बदलने पर, मेट्रिक भी बदल जाती हैं. उपयोगकर्ता अक्सर इनमें से किसी एक मेट्रिक को ऑप्टिमाइज़ करने के लिए, थ्रेशोल्ड को ट्यून करता है.

सटीक जवाब

सटीकता, सही क्लासिफ़िकेशन का अनुपात है. यह पॉज़िटिव या नेगेटिव, दोनों हो सकता है. इसे गणित के हिसाब से इस तरह परिभाषित किया गया है:

\[\text{Accuracy} = \frac{\text{correct classifications}}{\text{total classifications}} = \frac{TP+TN}{TP+TN+FP+FN}\]

स्पैम किस कैटगरी का है, यह तय करने वाले उदाहरण में, सटीकता से यह पता चलता है कि कितने ईमेल को सही कैटगरी में रखा गया है.

एक बेहतरीन मॉडल में, फ़ॉल्स पॉज़िटिव और फ़ॉल्स नेगेटिव की संख्या शून्य होती है. इसलिए, इसकी सटीकता 1.0 या 100% होती है.

इसमें कंफ़्यूज़न मैट्रिक्स (TP, FP, TN, FN) के सभी चार नतीजे शामिल होते हैं. इसलिए, अगर डेटासेट संतुलित है और दोनों क्लास में उदाहरणों की संख्या एक जैसी है, तो एक्यूरेसी को मॉडल की क्वालिटी के बारे में सामान्य जानकारी देने वाले मेज़रमेंट के तौर पर इस्तेमाल किया जा सकता है. इस वजह से, सामान्य या बिना जानकारी वाले टास्क करने वाले सामान्य या बिना जानकारी वाले मॉडल के लिए, अक्सर इस मेट्रिक का इस्तेमाल डिफ़ॉल्ट रूप से किया जाता है.

हालांकि, जब डेटासेट में अंतर होता है या एक तरह की गड़बड़ी (एफ़एन या एफ़पी) दूसरी गड़बड़ी की तुलना में ज़्यादा नुकसानदेह होती है, तो किसी दूसरी मेट्रिक के लिए ऑप्टिमाइज़ करना बेहतर होता है. ऐसा ज़्यादातर ऐप्लिकेशन में होता है.

डेटासेट में क्लास का डिस्ट्रिब्यूशन बहुत ज़्यादा अलग-अलग होने पर, ऐसा हो सकता है कि एक क्लास बहुत कम बार दिखे. जैसे, 1% बार. ऐसे में, अगर कोई मॉडल हमेशा नेगेटिव अनुमान लगाता है, तो उसकी सटीकता का स्कोर 99% होगा. भले ही, वह मॉडल किसी काम का न हो.

रिकॉल या ट्रू पॉज़िटिव रेट

ट्रू पॉज़िटिव रेट (टीपीआर) या सभी असल पॉज़िटिव का अनुपात, जिन्हें पॉज़िटिव के तौर पर सही तरीके से क्लासिफ़ाई किया गया था, को रिकॉल भी कहा जाता है.

रिकॉल को गणित के हिसाब से इस तरह से परिभाषित किया जाता है:

\[\text{Recall (or TPR)} = \frac{\text{correctly classified actual positives}}{\text{all actual positives}} = \frac{TP}{TP+FN}\]

फ़ॉल्स नेगेटिव, ऐसे पॉज़िटिव हैं जिन्हें नेगेटिव के तौर पर गलत तरीके से क्लासिफ़ाई किया गया है. इसलिए, ये डिनॉमिनेटर में दिखते हैं. स्पैम के तौर पर मार्क किए गए ईमेल के उदाहरण में, रिकॉल से यह पता चलता है कि स्पैम के तौर पर मार्क किए गए ईमेल के कितने हिस्से को सही तरीके से स्पैम के तौर पर मार्क किया गया है. इसलिए, रिकॉल को पहचान की संभावना भी कहा जाता है. इससे इस सवाल का जवाब मिलता है कि "इस मॉडल से, स्पैम ईमेल के कितने हिस्से की पहचान की जाती है?"

एक काल्पनिक परफेक्ट मॉडल में, फ़ॉल्स नेगेटिव की संख्या शून्य होगी. इसलिए, रिकॉल (टीपीआर) 1.0 होगा. इसका मतलब है कि मॉडल, 100% मामलों में सही नतीजे देगा.

असमान डेटासेट में, जहां असल पॉज़िटिव की संख्या बहुत कम होती है वहां रिकॉल, सटीकता से ज़्यादा काम की मेट्रिक होती है. ऐसा इसलिए, क्योंकि यह मॉडल की सभी पॉज़िटिव इंस्टेंस की सही पहचान करने की क्षमता को मेज़र करता है. बीमारी का अनुमान लगाने जैसे ऐप्लिकेशन के लिए, पॉज़िटिव मामलों की सही पहचान करना ज़रूरी है. आम तौर पर, फ़ॉल्स नेगेटिव के गंभीर नतीजे होते हैं. हालांकि, फ़ॉल्स पॉज़िटिव के नतीजे इतने गंभीर नहीं होते. वापस मंगाए गए आइटम और सटीक जवाब देने की क्षमता की मेट्रिक की तुलना करने वाले उदाहरण के लिए, वापस मंगाए गए आइटम की परिभाषा में दिए गए नोट देखें.

फ़ॉल्स पॉज़िटिव रेट

फ़ॉल्स पॉज़िटिव रेट (एफ़पीआर), उन सभी असल नेगेटिव का अनुपात होता है जिन्हें गलत तरीके से पॉज़िटिव के तौर पर क्लासिफ़ाई किया गया था. इसे फ़ॉल्स अलार्म की संभावना भी कहा जाता है. इसे गणित के हिसाब से इस तरह परिभाषित किया गया है:

\[\text{FPR} = \frac{\text{incorrectly classified actual negatives}} {\text{all actual negatives}} = \frac{FP}{FP+TN}\]

फ़ॉल्स पॉज़िटिव, असल नेगेटिव होते हैं जिन्हें गलत तरीके से क्लासिफ़ाई किया गया था. इसलिए, ये डिनॉमिनेटर में दिखते हैं. स्पैम के तौर पर क्लासिफ़ाई करने के उदाहरण में, एफपीआर इस बात का आकलन करता है कि कितने सही ईमेल को गलती से स्पैम के तौर पर क्लासिफ़ाई किया गया है या मॉडल के फ़ॉल्स अलार्म की दर क्या है.

एक बेहतरीन मॉडल में, फ़ॉल्स पॉज़िटिव की संख्या शून्य होती है. इसलिए, इसका FPR 0.0 होता है. इसका मतलब है कि फ़ॉल्स अलार्म रेट 0% होता है.

असमान डेटासेट के लिए, आम तौर पर एफपीआर, सटीक होने की तुलना में ज़्यादा जानकारी देने वाली मेट्रिक होती है. हालांकि, अगर असल नेगेटिव की संख्या बहुत कम है, तो उतार-चढ़ाव की वजह से एफपीआर सबसे सही विकल्प नहीं हो सकता. उदाहरण के लिए, अगर किसी डेटासेट में सिर्फ़ चार नेगेटिव हैं, तो एक गलत क्लासिफ़िकेशन से एफपीआर 25% हो जाता है. वहीं, दूसरा गलत क्लासिफ़िकेशन होने पर एफपीआर 50% हो जाता है. ऐसे मामलों में, सटीकता (इसके बारे में आगे बताया गया है) गलत पॉज़िटिव के असर का आकलन करने के लिए, ज़्यादा स्थिर मेट्रिक हो सकती है.

स्पष्टता

सटीकता, मॉडल के सभी पॉज़िटिव क्लासिफ़िकेशन का अनुपात है. यह अनुपात, असल में पॉज़िटिव होता है. गणित के हिसाब से इसे इस तरह परिभाषित किया गया है:

\[\text{Precision} = \frac{\text{correctly classified actual positives}} {\text{everything classified as positive}} = \frac{TP}{TP+FP}\]

स्पैम की कैटगरी में रखे गए ईमेल के उदाहरण में, प्रेसिज़न से यह पता चलता है कि स्पैम की कैटगरी में रखे गए ईमेल में से कितने ईमेल वाकई स्पैम थे.

एक काल्पनिक परफेक्ट मॉडल में, फ़ॉल्स पॉज़िटिव की संख्या शून्य होगी. इसलिए, इसकी सटीक दर 1.0 होगी.

असमान डेटासेट में, जहां असल पॉज़िटिव की संख्या बहुत कम होती है, जैसे कि कुल एक से दो उदाहरण, वहां सटीक जानकारी कम मायने रखती है और मेट्रिक के तौर पर कम काम की होती है.

फ़ॉल्स पॉज़िटिव कम होने पर, सटीक नतीजे मिलते हैं. वहीं, फ़ॉल्स नेगेटिव कम होने पर, ज़्यादातर नतीजे मिलते हैं. हालांकि, पिछले सेक्शन में बताया गया है कि क्लासिफ़िकेशन थ्रेशोल्ड बढ़ाने से, फ़ॉल्स पॉज़िटिव की संख्या कम हो जाती है और फ़ॉल्स नेगेटिव की संख्या बढ़ जाती है. वहीं, थ्रेशोल्ड कम करने से इसके उलट असर पड़ता है. इस वजह से, सटीक और रिकॉल के बीच अक्सर उल्टा संबंध दिखता है. इनमें से किसी एक को बेहतर बनाने से, दूसरा खराब हो जाता है.

इसे खुद आज़माकर देखें:

मेट्रिक और ट्रेडऑफ़ का विकल्प

मॉडल का आकलन करते समय और थ्रेशोल्ड चुनते समय, प्राथमिकता देने के लिए चुनी गई मेट्रिक(मेट्रिक) इस बात पर निर्भर करती है कि समस्या से जुड़े जोखिम, फ़ायदे, और लागत क्या हैं. ईमेल को स्पैम के तौर पर मार्क करने के उदाहरण में, अक्सर रिकॉल को प्राथमिकता देना सही होता है. इससे सभी स्पैम ईमेल को पकड़ा जा सकता है. इसके अलावा, सटीक होने को प्राथमिकता देना भी सही होता है. इससे यह पक्का किया जा सकता है कि स्पैम के तौर पर मार्क किए गए ईमेल, असल में स्पैम हैं. इसके अलावा, दोनों के बीच कुछ संतुलन बनाए रखना भी सही होता है. हालांकि, यह ज़रूरी है कि सटीकता का स्तर कम से कम हो.

मेट्रिक दिशा-निर्देश
सटीक जवाब

इसका इस्तेमाल, मॉडल की ट्रेनिंग की प्रोग्रेस/कन्वर्जेंस के बारे में सामान्य जानकारी पाने के लिए किया जाता है. हालांकि, यह जानकारी सिर्फ़ संतुलित डेटासेट के लिए होती है.

मॉडल की परफ़ॉर्मेंस के लिए, इसका इस्तेमाल सिर्फ़ अन्य मेट्रिक के साथ करें.

डेटासेट में क्लास का डिस्ट्रिब्यूशन सही न होने पर, इस मेट्रिक का इस्तेमाल न करें. किसी दूसरी मेट्रिक का इस्तेमाल करें.

रिकॉल
(ट्रू पॉज़िटिव रेट)
इसका इस्तेमाल तब करें, जब गलत पहचान किए जाने की तुलना में, पहचान न किए जाने की वजह से ज़्यादा नुकसान हो रहा हो.
फ़ॉल्स पॉज़िटिव रेट इसका इस्तेमाल तब करें, जब फ़ॉल्स पॉज़िटिव, फ़ॉल्स नेगेटिव से ज़्यादा महंगे हों.
स्पष्टता इसका इस्तेमाल तब करें, जब पॉज़िटिव अनुमानों का सटीक होना बहुत ज़रूरी हो.

एक्सरसाइज़: देखें कि आपको कितना समझ आया

किसी मॉडल से 5 टीपी, 6 टीएन, 3 एफपी, और 2 एफएन मिलते हैं. रिकॉल का हिसाब लगाएं.
0.714
वापस बुलाए गए प्रॉडक्ट की संख्या का हिसाब इस तरह लगाया जाता है \(\frac{TP}{TP+FN}=\frac{5}{7}\).
0.455
रिकॉल में, सभी असल पॉज़िटिव को शामिल किया जाता है, न कि सभी सही क्लासिफ़िकेशन को. वापस मंगाए जाने का फ़ॉर्मूला \(\frac{TP}{TP+FN}\)है.
0.625
रिकॉल, सभी असल पॉज़िटिव को ध्यान में रखता है, न कि सभी पॉज़िटिव क्लासिफ़िकेशन को. रिकॉल का फ़ॉर्मूला यह है: \(\frac{TP}{TP+FN}\)
किसी मॉडल से 3 टीपी, 4 टीएन, 2 एफपी, और 1 एफएन मिलते हैं. सटीकता का हिसाब लगाएं.
0.6
सटीकता का हिसाब इस तरह लगाया जाता है \(\frac{TP}{TP+FP}=\frac{3}{5}\).
0.75
सटीकता में सभी पॉज़िटिव क्लासिफ़िकेशन को शामिल किया जाता है, न कि सभी असल पॉज़िटिव को. सटीक वैल्यू का फ़ॉर्मूला \(\frac{TP}{TP+FP}\)है.
0.429
सटीकता में, सभी पॉज़िटिव क्लासिफ़िकेशन को शामिल किया जाता है, न कि सभी सही क्लासिफ़िकेशन को. सटीक वैल्यू का फ़ॉर्मूला यह है \(\frac{TP}{TP+FP}\)
आपको एक बाइनरी क्लासिफ़ायर बनाना है. यह क्लासिफ़ायर, कीटों को फंसाने वाले जाल की फ़ोटो की जांच करेगा. इससे यह पता चलेगा कि क्या कोई खतरनाक इनवेसिव प्रजाति मौजूद है. अगर मॉडल को किसी प्रजाति का पता चलता है, तो ड्यूटी पर मौजूद कीट वैज्ञानिक को इसकी सूचना दी जाती है. इस कीड़े का पता शुरुआती दौर में लगाना ज़रूरी है, ताकि इसके संक्रमण को रोका जा सके. गलत अलार्म (गलत पॉज़िटिव) को मैनेज करना आसान है: कीट वैज्ञानिक देखता है कि फ़ोटो को गलत तरीके से कैटगरी में रखा गया है और उसे उसी तरह से मार्क करता है. सटीकता का स्वीकार्य लेवल मानते हुए, इस मॉडल को किस मेट्रिक के लिए ऑप्टिमाइज़ किया जाना चाहिए?
रीकॉल
इस मामले में, गलत अलार्म (एफ़पी) की लागत कम होती है और गलत नेगेटिव की लागत बहुत ज़्यादा होती है. इसलिए, रिकॉल या पहचान की संभावना को ज़्यादा से ज़्यादा करना सही होता है.
फ़ॉल्स पॉज़िटिव रेट (एफ़पीआर)
इस उदाहरण में, झूठी चेतावनी (एफ़पी) की लागत कम है. असली पॉज़िटिव को नज़रअंदाज़ करके, उन्हें कम करने की कोशिश करना सही नहीं है.
स्पष्टता
इस स्थिति में, गलत अलार्म (एफ़पी) खास तौर पर नुकसानदेह नहीं होते. इसलिए, पॉज़िटिव क्लासिफ़िकेशन की सटीकता को बेहतर बनाने की कोशिश करना सही नहीं है.