वर्गीकरण में स्मरण और शुद्धता


40

मैंने याद और सटीकता की कुछ परिभाषाएं पढ़ीं, हालांकि यह सूचना पुनर्प्राप्ति के संदर्भ में हर बार है। मैं सोच रहा था कि क्या कोई इसे वर्गीकरण के संदर्भ में थोड़ा और समझा सकता है और शायद कुछ उदाहरणों का वर्णन करता है। उदाहरण के लिए कहें कि मेरे पास एक द्विआधारी क्लासिफायर है जो मुझे 60% की सटीकता देता है और 95% की याद दिलाता है, क्या यह एक अच्छा क्लासिफायरियर है?

शायद मेरे लक्ष्य को थोड़ा और मदद करने के लिए, आपके अनुसार सबसे अच्छा क्लासिफायर क्या है? (डेटासेट असंतुलित है। अल्पसंख्यक वर्ग में अल्पसंख्यक वर्ग के उदाहरणों की मात्रा दोगुनी है)

मैं रिसीवर ऑपरेटर वक्र के तहत क्षेत्र के कारण व्यक्तिगत रूप से 5 कहूंगा ।

(जैसा कि आप देख सकते हैं कि मॉडल 8 में एक कम परिशुद्धता है, बहुत उच्च रिकॉल है, लेकिन सबसे कम AUC_ROC में से एक है, क्या यह एक अच्छा मॉडल बनाता है? या एक बुरा?)

यहाँ छवि विवरण दर्ज करें


संपादित करें:

मेरे पास अधिक जानकारी के साथ एक एक्सेल फाइल है: https://www.dropbox.com/s/6hq7ew5qpztwbo8/comparissoninbalance.xlsx

इस दस्तावेज़ में रिसीवर ऑपरेटर वक्र के नीचे का क्षेत्र पाया जा सकता है और सटीक रिकॉल वक्र के तहत क्षेत्र। साथ में प्लॉट भी।


6
नकारात्मक वोट क्यों? यह एक दिलचस्प सवाल लगता है (निश्चित रूप से कई लोगों ने जवाब देना संभव समझा)।
गाला

प्रदर्शन उपायों की गणना में कितने परीक्षण मामले शामिल थे? इसके अलावा, यदि आप एक ही डेटा सेट पर कई क्लासिफायर की तुलना करते हैं, तो आप एक युग्मित डिज़ाइन का उपयोग कर सकते हैं (सीवी पर कई प्रश्न और उत्तर हैं जो क्लासिफायर की तुलना पर चर्चा कर रहे हैं)।
केलीलाइट्स मोनिका

मेरे पास 799 नमूने हैं (यदि आप परीक्षण मामले से यही मतलब रखते हैं)। हर बार मैं डेटा को 10 सबसेट में विभाजित करता हूं। क्लासिफायर के परीक्षण के लिए 1 सबसेट और बाकी के लिए क्लासिफायरफायर (क्लासीफायर जिनकी तुलना की जाती है, उन्हें एक ही डेटा पर प्रशिक्षित किया जाता है)।
ओलिवियर_स_ज

क्या क्लासीफायर एक द्विआधारी मूल्य का उत्पादन करते हैं, या क्या वे वास्तविक मूल्य का उत्पादन करते हैं, और फिर इसे द्विआधारी बनाने के लिए एक सीमा का उपयोग करते हैं?
गलाथ

वे बाइनरी आउटपुट का उत्पादन करते हैं।
ओलिवियर_स_ज

जवाबों:


40

क्या कोई क्लासिफायर "अच्छा" है, वास्तव में निर्भर करता है

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

एक तरफ रिकॉल / सटीक के बीच लिंक को समझने के लिए और दूसरी ओर संवेदनशीलता / विशिष्टता के लिए, भ्रम की स्थिति में वापस आना उपयोगी है:

                      Condition: A             Not A

  Test says “A”       True positive (TP)   |   False positive (FP)
                      ----------------------------------
  Test says “Not A”   False negative (FN)  |    True negative (TN)

रिकॉल टीपी / (टीपी + एफएन) है जबकि सटीक टीपी / (टीपी + एफपी) है। यह समस्या की प्रकृति को दर्शाता है: सूचना पुनर्प्राप्ति में, आप उतने प्रासंगिक दस्तावेज़ों की पहचान करना चाहते हैं जितना आप कर सकते हैं (जो याद है) और कबाड़ के माध्यम से छाँटने से बचें (यह सटीक है)।

एक ही तालिका का उपयोग करते हुए, पारंपरिक वर्गीकरण मेट्रिक्स टीपी / (टीपी + एफएन) और (2) विशिष्टता को टीएन / (एफपी + टीएन) के रूप में परिभाषित किया गया है। तो याद और संवेदनशीलता बस पर्यायवाची हैं लेकिन सटीकता और विशिष्टता को अलग-अलग तरीके से परिभाषित किया जाता है (जैसे कि रिकॉल और संवेदनशीलता, विशिष्टता को स्तंभ कुल के संबंध में परिभाषित किया गया है जबकि परिशुद्धता पंक्ति को संदर्भित करता है)। परिशुद्धता को कभी-कभी "सकारात्मक भविष्य कहनेवाला मूल्य" भी कहा जाता है, या शायद ही कभी, "झूठी सकारात्मक दर" (लेकिन सकारात्मक सकारात्मक, झूठी सकारात्मक, झूठी नकारात्मक और झूठी सकारात्मक की इस परिभाषा के आसपास भ्रम के बारे में नकारात्मक के बीच संबंध के लिए मेरा जवाब देखें) मूल्यांकन करें)।

दिलचस्प बात यह है कि सूचना पुनर्प्राप्ति मेट्रिक्स में "वास्तविक नकारात्मक" गणना शामिल नहीं है। यह समझ में आता है: सूचना पुनर्प्राप्ति में, आप प्रति से नकारात्मक उदाहरणों को सही ढंग से वर्गीकृत करने के बारे में परवाह नहीं करते हैं , आप नहीं चाहते कि उनमें से बहुत से आपके परिणाम प्रदूषित कर रहे हैं (यह भी देखें कि याद क्यों नहीं करता है? सच नकारात्मक को ध्यान में रखें? )।

इस अंतर के कारण, विशिष्टता के बिना विशिष्टता के बिना सटीकता या अन्य तरीके से जाना संभव नहीं है, अर्थात् वास्तविक नकारात्मक की संख्या या, वैकल्पिक रूप से, सकारात्मक और नकारात्मक मामलों का समग्र अनुपात। हालांकि, एक ही कॉर्पस / टेस्ट सेट के लिए, उच्च विशिष्टता हमेशा बेहतर परिशुद्धता का मतलब है इसलिए वे निकटता से संबंधित हैं।

एक सूचना पुनर्प्राप्ति संदर्भ में, लक्ष्य आमतौर पर बड़ी संख्या में दस्तावेजों से कम संख्या में मेल की पहचान करने के लिए होता है। इस विषमता के कारण, संवेदनशीलता / रिकॉल को स्थिर रखते हुए एक अच्छी विशिष्टता की तुलना में एक अच्छी परिशुद्धता प्राप्त करना वास्तव में अधिक कठिन है। चूंकि अधिकांश दस्तावेज अप्रासंगिक हैं, इसलिए आपके पास सही सकारात्मकता की तुलना में झूठे अलार्म के लिए कई और अवसर हैं और ये झूठे अलार्म सही परिणाम को बदल सकते हैं भले ही क्लासिफायर में संतुलित परीक्षण सेट पर प्रभावशाली सटीकता हो (यह वास्तव में परिदृश्यों में क्या चल रहा है? ऊपर मेरी बात 2 में वर्णित है)। नतीजतन, आपको वास्तव में सटीक अनुकूलन करने की आवश्यकता है और न केवल सभ्य विशिष्टता सुनिश्चित करने के लिए क्योंकि 99% या अधिक जैसी प्रभावशाली दिखने वाली दरें कभी-कभी कई झूठे अलार्म से बचने के लिए पर्याप्त नहीं होती हैं।

आमतौर पर संवेदनशीलता और विशिष्टता (या याद और सटीक) के बीच एक व्यापार बंद है। सहज रूप से, यदि आप एक व्यापक जाल डालते हैं, तो आप अधिक प्रासंगिक दस्तावेजों / सकारात्मक मामलों (उच्च संवेदनशीलता / रिकॉल) का पता लगाएंगे, लेकिन आपको अधिक झूठे अलार्म (कम विशिष्टता और कम परिशुद्धता) भी मिलेंगे। यदि आप सकारात्मक श्रेणी में सब कुछ वर्गीकृत करते हैं, तो आपके पास 100% रिकॉल / सेंसिटिविटी, एक खराब परिशुद्धता और एक अधिकतर बेकार क्लासिफायरफ़ायर ("ज्यादातर" है क्योंकि यदि आपके पास कोई अन्य जानकारी नहीं है, तो यह मान लेना पूरी तरह से उचित नहीं है एक रेगिस्तान में बारिश और उसके अनुसार कार्य करना ताकि हो सकता है कि उत्पादन बिल्कुल भी बेकार न हो; बेशक, आपको उसके लिए एक परिष्कृत मॉडल की आवश्यकता नहीं है)।

यह सब देखते हुए, 60% सटीक और 95% रिकॉल बहुत बुरा नहीं लगता है लेकिन, फिर से, यह वास्तव में डोमेन पर निर्भर करता है और आप इस क्लासिफायर के साथ क्या करना चाहते हैं।


नवीनतम टिप्पणियों / संपादन से संबंधित कुछ अतिरिक्त जानकारी:

फिर, आप जिस प्रदर्शन की अपेक्षा कर सकते हैं, वह विशिष्टताओं पर निर्भर करता है (इस संदर्भ में यह प्रशिक्षण सेट में मौजूद भावनाओं के सटीक सेट, चित्र / वीडियो की गुणवत्ता, चमकदारता, रोना, सिर हिलाना, अभिनय या सहज वीडियो जैसी चीजें होंगी। व्यक्ति-निर्भर या व्यक्ति-स्वतंत्र मॉडल, आदि) लेकिन F1 ओवर .7 इस प्रकार के अनुप्रयोगों के लिए अच्छा लगता है, भले ही कुछ डेटा सेटों पर बहुत अच्छे मॉडल बेहतर कर सकें [देखें Valstar, MF, Mehu, M., Jiang बी।, पेंटिक, एम।, और शियरर, के। (2012)। पहली चेहरे की अभिव्यक्ति मान्यता चुनौती का मेटा-विश्लेषण। सिस्टम, मैन, और साइबरनेटिक्स पर आईईईई लेनदेन, भाग बी: साइबरनेटिक्स, 42 (4), 966-79।]

इस तरह के एक मॉडल व्यवहार में उपयोगी है या नहीं, यह पूरी तरह से अलग सवाल है और स्पष्ट रूप से आवेदन पर निर्भर करता है। ध्यान दें कि चेहरे की "अभिव्यक्ति" अपने आप में एक जटिल विषय है और किसी भी वास्तविक जीवन की स्थिति के लिए एक विशिष्ट प्रशिक्षण सेट (प्रकट भाव) से आसान नहीं है। यह इस मंच पर नहीं बल्कि विषय है, लेकिन यह किसी भी व्यावहारिक अनुप्रयोग के लिए गंभीर परिणाम हो सकता है जिसे आप चिंतन कर सकते हैं।

अंत में, मॉडल के बीच सिर से सिर की तुलना अभी तक एक और सवाल है। आपके द्वारा प्रस्तुत किए गए नंबरों पर मेरा ध्यान है कि मॉडल के बीच कोई नाटकीय अंतर नहीं है (यदि आप ऊपर दिए गए पेपर का उल्लेख करते हैं, तो इस क्षेत्र में प्रसिद्ध मॉडल के लिए एफ 1 स्कोर की सीमा बहुत व्यापक है)। व्यवहार में, तकनीकी पहलू (मानक पुस्तकालयों की सादगी / उपलब्धता, विभिन्न तकनीकों की गति, आदि) संभवतः यह तय करेंगे कि कौन सा मॉडल लागू किया गया है, सिवाय इसके कि यदि लागत / लाभ और समग्र दर आपको दृढ़ता से या फिर याद रखने के लिए दृढ़ता से पक्ष लेते हैं।


मेरा क्लासिफायर सकारात्मक या नकारात्मक भावों में चेहरे को वर्गीकृत करता है। मैंने 10 गुना क्रॉस वैरिफिकेशन के साथ कुछ वर्गीकरण एल्गोरिदम चलाए और मुझे कभी-कभी 100% याद भी आते हैं, हालांकि सभी क्लासिफायर के लिए सटीक लगभग समान (लगभग 65%) है। मैं एक असंतुलित डेटासेट के साथ काम करता हूं (बहुमत वर्ग में अल्पसंख्यक वर्ग के नमूनों की मात्रा का दोगुना है)। इसलिए मैंने सोचा कि इसका मतलब शायद मेरे मॉडल पैटर्न नहीं सीख रहे थे।
ओलिवियर_स_ज

1
@ गाला: 'झूठे अलार्म' और 'झूठे नकारात्मक' में क्या अंतर है? क्या आपका मतलब 'झूठे अलार्म' और 'झूठे सकारात्मक' से है?
मैट ओ'ब्रायन

@ मैटो'ब्रायन एक गलत अलार्म एक गलत पॉजिटिव है (यानी सिस्टम कहता है "खबरदार!" या "कुछ मिला!" लेकिन कार्य करने की कोई आवश्यकता नहीं है, इसलिए "गलत अलार्म")। हो सकता है कि शब्दावली थोड़ी भ्रामक हो, मैं बाद में उत्तर की समीक्षा करूंगा।
गाला

@Ojtwist यदि सकारात्मकता में पूर्व संभाव्यता 67% है, तो आप 100% रिकॉल कर सकते हैं और ~ 67% सटीकता को सकारात्मक मानकर सब कुछ कर सकते हैं।
मार्क

21

बाइनरी वर्गीकरण के संदर्भ में, उदाहरण या तो सकारात्मक या नकारात्मक हैं।

  • रिकॉल प्रश्न को संबोधित करता है: "सकारात्मक उदाहरण को देखते हुए, क्या वर्गीकरणकर्ता इसका पता लगाएगा?"
  • सटीक प्रश्न को संबोधित करता है: "क्लासिफायरियर से सकारात्मक भविष्यवाणी को देखते हुए, यह सही होने की कितनी संभावना है?"

तो यह निर्भर करता है कि फोकस सकारात्मक उदाहरणों पर है या सकारात्मक भविष्यवाणियों पर।

कोई कह सकता है "कम से कम 90% को वापस बुलाने पर, उच्चतम परिशुद्धता वाला क्लासिफायर 4. है।" लेकिन अगर कम से कम 70% की सटीकता के साथ क्लासिफायर के बीच भविष्यवाणियों की गुणवत्ता क्या मायने रखती है, तो जो सबसे ज्यादा याद आती है वह 6 है।


6

निरंतर पूर्वानुमान से आगे बढ़ते हुए, जैसा कि आरओसी क्षेत्र (समरूपता संभावना; सी-इंडेक्स) को एक अनुचित अनुचित स्कोरिंग नियम (मजबूर-पसंद वर्गीकरण सटीकता) के सभी प्रकार की विसंगतियों में परिणाम देता है और गलत भविष्यवक्ताओं और / का चयन करने के लिए विश्लेषक को गुमराह करेगा। या गलत मॉडल। उचित स्कोरिंग नियमों (उदाहरण के लिए, लॉग-लाइबिलिटी / डिवैयरेंस / लॉगरिदमिक प्रायिकता स्कोरिंग नियम; बैरियर स्कोर (द्विघात संभाव्यता सटीकता स्कोर)) के आधार पर निर्णय लेना बहुत बेहतर है। इस तरह के दृष्टिकोण के कई फायदों में से एक है अवलोकनों की पहचान जिसके लिए मध्य-श्रेणी की संभावनाओं के कारण अनिश्चितता के कारण वर्गीकरण आपके स्वास्थ्य के लिए खतरनाक है।


क्या ये स्कोरिंग नियम केवल तब लागू नहीं होते जब मॉडल संभाव्य आउटपुट देता है?
ओलिवियर_स_ज

3
आपने आरओसी एयूसी का उल्लेख किया है जिसके लिए संभाव्य आउटपुट (या कुछ और जो कि एक मोनोटोनिक फ़ंक्शन है) की आवश्यकता होती है। सर्वश्रेष्ठ भविष्य कहनेवाला विधियों में हुड के तहत संभावनाएं हैं।
फ्रैंक हरेल

DxyY

आरओसी और गैर-"मजबूर-पसंद" वर्गीकरण सटीकता उपायों का उपयोग करने के साथ समस्या यह है कि वे वास्तव में आवेदन के संदर्भ में कुछ भी मतलब नहीं रखते हैं जहां किसी को वास्तव में एक व्यावसायिक मामले के अनुसार सीमा का चयन करना होगा। उदाहरण के लिए निवेश बैंकिंग के लिए एक वित्तीय अपराध का पता लगाने वाले उत्पाद में एक व्यवसाय के पास केवल एक वर्ष में 100 वर्गीकरण की जांच करने के लिए मानव संसाधन हो सकते हैं, यह एक निश्चित सीमा को प्रेरित करता है जिसे इसके खिलाफ अनुकूलित होना चाहिए। गनी, आरओसी क्षेत्र, आदि आपको यह नहीं बताएंगे कि इस सीमा पर मॉडल कितना अच्छा है। ...
samthebest

2
जांच की संख्या पर बजटीय सीमा रखना बहुत उचित है। इसके लिए कोई थ्रेसहोल्ड, कोई नया अनुकूलन, कोई वर्गीकरण, और कोई ROC विश्लेषण की आवश्यकता नहीं है। एक केवल अनुमानित जोखिम के अवरोही क्रम में टिप्पणियों को क्रमबद्ध करता है और जांच करने के लिए पहले 100 टिप्पणियों को चुनता है। यह विपणन में उपयोग किए जाने वाले लिफ्ट वक्र से संबंधित है।
फ्रैंक हरेल

5

न तो सटीक और न ही रिकॉल पूरी कहानी बताती है, और यह कहना मुश्किल है कि भविष्यवाणी करने वाले की तुलना 90% रिकॉल और 60% सटीकता के साथ की गई है। भ्रम मैट्रिक्स में 4 कोशिकाओं (tp / fp / tn / fn) में से प्रत्येक के साथ जुड़े लागत / लाभ ।

एक एकल संख्या प्राप्त करने का एक दिलचस्प तरीका ( प्रवीणता , उर्फ अनिश्चितता गुणांक ) का वर्गीकरण प्रदर्शन का वर्णन करने के लिए जानकारी का उपयोग करना है :

proficiency = I(predicted,actual) / H(actual)

यानी, यह आपको बताता है कि वास्तविक डेटा में मौजूद सूचना का कौन सा अंश क्लासिफायरियर द्वारा बरामद किया गया था। यह 0 है यदि या तो परिशुद्धता या रिकॉल 0 है और यह 100% है (और केवल अगर) दोनों सटीक और रिकॉल 100% हैं। इसमें यह एफ 1 स्कोर के समान है , लेकिन प्रवीणता का स्पष्ट सूचना-सैद्धांतिक अर्थ है जबकि एफ 1 केवल एक अर्थ के साथ दो संख्याओं का एक हार्मोनिक औसत है।

आप यहां प्रवीणता मीट्रिक की गणना करने के लिए कागज, प्रस्तुति और कोड (पायथन) पा सकते हैं: https://github.com/Magnetic/proficiency-metric


दिलचस्प! क्या आप हमें एक उदाहरण दे सकते हैं कि प्रवीणता की गणना कैसे करें? कारण मुझे अजीब लगता है।
अकेला


टिप्पणियाँ विस्तारित चर्चा के लिए नहीं हैं; इस वार्तालाप को बातचीत में स्थानांतरित कर दिया गया है ।
Scortchi - को पुनः स्थापित मोनिका
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.