AUC एक क्लासिफायरियर के लिए उच्चतर क्यों है जो एक से अधिक सटीक है जो कि अधिक सटीक है?


29

मेरे दो क्लासिफायर हैं

  • एक: भोले Bayesian नेटवर्क
  • बी: ट्री (एकवचन-जुड़े) बायेसियन नेटवर्क

सटीकता और अन्य उपायों के संदर्भ में, A, बी से तुलनात्मक रूप से खराब प्रदर्शन करता है। हालांकि, जब मैं ROC विश्लेषण करने के लिए R संकुल ROCR और AUC का उपयोग करता हूं, तो यह पता चलता है कि A के लिए AUC B के लिए AUC से अधिक है। ऐसा क्यों है हो रहा?

सही पॉजिटिव (tp), गलत पॉजिटिव (fp), गलत negative (fn), true negative (tn), संवेदनशीलता (sen), विशिष्टता (spec), पॉजिटिव प्रेडिक्टिव वैल्यू (ppv), नेगेटिव प्रेडिक्टिव वैल्यू (nvv), और A और B के लिए सटीकता (एसीसी) निम्नानुसार हैं।

+------+---------+---------+
|      |    A    |    B    |
+------+---------+---------+
| tp   | 3601    | 769     |
| fp   | 0       | 0       |
| fn   | 6569    | 5918    |
| tn   | 15655   | 19138   |
| sens | 0.35408 | 0.11500 |
| spec | 1.00000 | 1.00000 |
| ppv  | 1.00000 | 1.00000 |
| npv  | 0.70442 | 0.76381 |
| acc  | 0.74563 | 0.77084 |
+------+---------+---------+

मार्जिन पर संवेदी और संबंधों (युक्ति और पीपीवी) को छोड़कर (tp, fn, fn और tn को छोड़कर), B, A से बेहतर प्रदर्शन करता है।

जब मैं 1-स्पेक (x- अक्ष) बनाम संवेदी (y- अक्ष) के लिए AUC की गणना करता हूं

aucroc <- auc(roc(data$prediction,data$labels));

यहाँ एयूसी तुलना है।

+----------------+---------+---------+
|                |    A    |    B    |
+----------------+---------+---------+
| sens vs 1-spec | 0.77540 | 0.64590 |
| sens vs spec   | 0.70770 | 0.61000 |
+----------------+---------+---------+

तो यहाँ मेरे सवाल हैं:

  • A, A से B के लिए बेहतर क्यों है, जब B "लगता है" सटीकता के संबंध में A से बेहतर प्रदर्शन करता है?
  • तो, मैं वास्तव में ए और बी के वर्गीकरण प्रदर्शनों का न्याय / तुलना कैसे करूं? मेरा मतलब है, क्या मैं एयूसी मूल्य का उपयोग करता हूं? क्या मैं एसीसी मूल्य का उपयोग करता हूं, और यदि ऐसा है तो क्यों?
  • इसके अलावा, जब मैं ए और बी, बी लॉपरफॉर्म ए को लॉग लॉस, क्वाड्रेटिक लॉस, और गोलाकार नुकसान (पी <0.001) के संदर्भ में उचित स्कोरिंग नियम लागू करता हूं। AUC के संबंध में वर्गीकरण प्रदर्शन को देखते हुए इनका वजन कैसे होता है?
  • ए के लिए आरओसी ग्राफ बहुत चिकना दिखता है (यह एक घुमावदार चाप है), लेकिन बी के लिए आरओसी ग्राफ कनेक्टेड लाइनों के एक सेट की तरह दिखता है। ऐसा क्यों है?

जैसा कि अनुरोध किया गया है, यहां मॉडल ए के लिए भूखंड हैं।

मॉडल एक भोली खाड़ी शुद्ध

यहां मॉडल बी के लिए भूखंड हैं।

मॉडल बी नियमित बाइस नेट

ए और बी के लिए संभावनाओं के वितरण के हिस्टोग्राम प्लॉट यहां हैं (ब्रेक 20 पर सेट हैं)।

हिस्टोग्राम प्लॉट

यहां बी बनाम ए की संभावनाओं की तितर बितर साजिश है।

स्कैटर प्लॉट


1
आपकी तालिकाओं का कोई मतलब नहीं है: आपने उस बिंदु को कैसे चुना, जिस पर आप उन प्रदर्शन मूल्यों की गणना करते हैं?
कैलीमो

3
याद रखें कि एयूसी सभी संभावित थ्रेसहोल्ड पर प्रदर्शन को मापता है । यह मदद करेगा (यदि आप भी) तो आप घटता (आदर्श रूप से एक ही भूखंड) दिखा सकते हैं।
कैलीमो

@ कैलीमो क्षमा करें, मैं उस जानकारी को शामिल करना भूल गया था, लेकिन उस उलझन मैट्रिक्स को बनाने के लिए उपयोग की जाने वाली सीमा 50% थी।
जेन वेन

आपका मतलब 0.5 है? ए और बी के अनुमानित मूल्य स्पष्ट रूप से अलग दिखते हैं, और यदि आपको संकेत अभी तक नहीं मिला है, तो आपको निश्चित रूप से हिस्टोग्राम को एक साथ रखना चाहिए ...
कैलिमो

@ कैलीमो क्या आप स्पष्ट कर सकते हैं कि किस-किस पक्ष के हिस्टोग्राम हैं?
जेन वेन

जवाबों:


27

सीडीएक्सy


6
सीसी

1
@ अल्टो, 0.5 अत्यंत मनमाना है, जो सबसे असामान्य उपयोगिता / हानि / लागत फ़ंक्शन के साथ मेल खाता है जिसमें दो प्रकार की त्रुटियां समान रूप से खराब हैं। यह शायद ही कभी मामला है। संभावित रूप से सोचने पर, जो कि ऐसा होता है जिस तरह से मेरा मानना ​​है कि जिस तरह से प्रकृति काम करती है, "गलती" जैसी कोई चीज नहीं है, बल्कि एक जोखिम भविष्यवाणी की खराबता की डिग्री है। उदाहरण के लिए, 0.6 की संभाव्यता का अनुमान लगाना और फिर किसी घटना का अवलोकन करना 0.9 की संभावना की भविष्यवाणी करने और फिर किसी घटना का अवलोकन करने से भी बदतर है। लेकिन न तो भविष्यवाणी "गलत" है। आप प्रायिकता सटीकता स्कोर का उपयोग कर सकते हैं जिसके लिए थ्रेसहोल्ड की आवश्यकता नहीं है।
फ्रैंक हरेल

3
एक अनबाउंड मॉडल जैसे कि लॉजिस्टिक किसी अन्य दृष्टिकोण की तुलना में किसी भी अधिक ओवरफिटिंग को जन्म नहीं देता है। लॉजिस्टिक परिवर्तन यह सुनिश्चित करता है कि संभाव्यता अनुमान अच्छी तरह से व्यवहार किया जाता है। एक लघुगणकीय स्कोरिंग नियम के लिए केवल नकारात्मक यह है कि यदि आप 0 या 1 के करीब संभावना की भविष्यवाणी करते हैं और आप "गलत" हैं। यह सच है कि कोई अंततः निर्णय लेता है, लेकिन यह बिल्कुल भी नहीं है कि विश्लेषक एक सीमा का उपयोग करके निर्णय करें। निर्णय निर्माता को निर्णय को स्थगित करना चाहिए। नैट सिल्वर की पुस्तक सिग्नल और शोर दस्तावेजों में संभाव्य चिंतन के महान लाभ हैं।
फ्रैंक हरेल

1
@FrankHarrell, यह निराशाजनक है कि आप मेरी राय को गलत समझ रहे हैं। मैंने कभी ब्लैक बॉक्स के दृष्टिकोण की वकालत नहीं की। मुझे लगता है कि आपका कथन "x बेकार है, केवल y का उपयोग करें" बहुत मजबूत है।
आल्टो

4
@ अल्टो जो बोधगम्य है। मुझे लगता है कि वास्तविक समय के पैटर्न की मान्यता के पास उपयोगिताओं के लिए समय नहीं है। यह वह दुनिया नहीं है जिसमें मैं काम करता हूं। लेकिन फिर भी वास्तविक समय में ऐसे मामले हैं जहां आप एक ब्लैक बॉक्स के बजाय "अनिश्चित" आपको बताएंगे कि "बनाम टैंक" आपके बीच "टैंक" पर आ रहा है। यात्री कार"।
फ्रैंक हरेल

16
  1. A, A से B के लिए बेहतर क्यों है, जब B "लगता है" सटीकता के संबंध में A से बेहतर प्रदर्शन करता है?

    सटीकता की गणना ०.५ की सीमा मूल्य पर की जाती है। जबकि AUC की गणना सभी संभावित सीमा मूल्यों के लिए गणना की गई सभी "सटीकता" को जोड़कर की जाती है। आरओसी को उन सभी सटीकता के औसत (अपेक्षित मूल्य) के रूप में देखा जा सकता है जब सभी सीमा मूल्यों के लिए गणना की जाती है।

  2. तो, मैं वास्तव में ए और बी के वर्गीकरण प्रदर्शनों की कैसे पहचान / तुलना करता हूं? मेरा मतलब है, क्या मैं एयूसी मूल्य का उपयोग करता हूं? क्या मैं एसीसी मूल्य का उपयोग करता हूं? और क्यों?

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

  3. इसके अलावा, जब मैं ए और बी में बी स्कोरिंग नियम लागू करता हूं, तो लॉग लॉस, द्विघात हानि और गोलाकार नुकसान (पी <0.001) के संदर्भ में बी आउटपरफॉर्म ए। AUC के संबंध में वर्गीकरण के प्रदर्शन को देखते हुए इनका वजन कैसे होता है?

    मुझे नहीं पता। आपको बेहतर समझना होगा कि आप किस बारे में डेटा रखते हैं। प्रत्येक मॉडल आपके डेटा से समझने में सक्षम है। और बाद में तय करें कि सबसे अच्छा समझौता कौन सा है। ऐसा होने का कारण यह है कि एक क्लासिफायरियर प्रदर्शन के बारे में कोई सार्वभौमिक मीट्रिक नहीं है।

  4. ए के लिए आरओसी ग्राफ बहुत चिकना दिखता है (यह एक घुमावदार चाप है), लेकिन बी के लिए आरओसी ग्राफ कनेक्टेड लाइनों के एक सेट की तरह दिखता है। यह क्यों है?

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


1
सटीकता को ०.५ के अलावा अन्य थ्रेशोल्ड मानों में परिकलित किया जा सकता है।
कैलिमो

बेशक आप ठीक हैं। यही कारण है कि मैंने अगले प्रस्ताव में "सटीकता" का उपयोग किया। हालांकि, जब कोई अन्य संदर्भ जानकारी के बिना सटीकता के बारे में बात करता है, तो सीमा मूल्य के लिए सबसे अच्छा अनुमान 0.5 है।
रापायो

2
यह देखना आसान है कि ऐसी प्रक्रिया कितनी मनमानी है। आंकड़ों में कुछ अनुमान लगाने वालों को बिना आलोचना या मनमानी विकल्प की आवश्यकता होती है जो भारी आलोचना के बिना बच गए हैं। और मैं कभी भी अनुपात को "सटीकता" के रूप में वर्गीकृत सही नहीं कहूंगा।
फ्रैंक हरेल

@unreasonablelearner आप अपनी धारणा पर सही हैं .. ऊपर दिया गया भ्रम मैट्रिक्स ०.५ पर गणना की गई थी। वहाँ एक अलग सीमा के लिए कोई फायदा है?
जेन वेन

1
@JaneWayne सूत्र वास्तव में वर्गीकृत सही के अनुपात के लिए है। सटीकता इसके लिए सबसे अधिक इस्तेमाल किया जाने वाला शब्द है। हालाँकि सटीकता का अर्थ बहुत अधिक है, और फ्रैंक हैरेल ने जो कुछ कहा है, उसके प्रकाश में, मुझे लगता है कि अब सटीकता उस से सर्वोत्तम शब्द नहीं है। अब मुझे लगता है कि इसका उपयोग नुकसान पहुंचा सकता है, भले ही यह लोकप्रिय हो। यह मैं गलत था।
रापायो

4

A, A से B के लिए बेहतर क्यों है, जब B "लगता है" सटीकता के संबंध में A से बेहतर प्रदर्शन करता है?

सबसे पहले, हालांकि कट-ऑफ (0.5) समान है, यह ए और बी के बीच बिल्कुल भी तुलनीय नहीं है। वास्तव में, यह आपके हिस्टोग्राम से बहुत अलग दिखता है! बी को देखें: आपकी सभी भविष्यवाणियां <0.5 हैं।

दूसरा, बी इतना सटीक क्यों है? वर्ग असंतुलन के कारण। परीक्षण बी में, आपके पास 19138 नकारात्मक उदाहरण हैं, और 6687 सकारात्मक (ए में संख्या भिन्न क्यों है मेरे लिए स्पष्ट नहीं है: लापता मान शायद?)। इसका मतलब यह है कि बस यह कहते हुए कि सब कुछ नकारात्मक है, मैं पहले से ही एक बहुत अच्छी सटीकता प्राप्त कर सकता हूं: ठीक 19138 / (19138 + 6687) = 74%। ध्यान दें कि इसके लिए इस तथ्य से परे बिल्कुल भी ज्ञान की आवश्यकता नहीं है कि कक्षाओं के बीच असंतुलन है: यहां तक ​​कि सबसे विनम्र मॉडल भी ऐसा कर सकता है!

और यह वही है जो बी परीक्षण 0.5 दहलीज पर करता है ... आपको (लगभग) केवल नकारात्मक भविष्यवाणियां मिलती हैं।

ए मिश्रित बैग के अधिक है। यद्यपि इसकी थोड़ी कम सटीकता है, ध्यान दें कि इस कट-ऑफ पर इसकी संवेदनशीलता बहुत अधिक है ...

अंत में, आप AUC (सभी संभावित थ्रेसहोल्ड पर एक औसत प्रदर्शन) के साथ सटीकता (एक सीमा पर प्रदर्शन) की तुलना नहीं कर सकते। जैसा कि ये मीट्रिक अलग-अलग चीजों को मापते हैं, यह आश्चर्य की बात नहीं है कि वे अलग हैं।

तो, मैं वास्तव में ए और बी के वर्गीकरण प्रदर्शनों की कैसे पहचान / तुलना करता हूं? मेरा मतलब है, क्या मैं AUC मूल्य का उपयोग करता हूं? क्या मैं एसीसी मूल्य का उपयोग करता हूं? और क्यों?

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

आपको सोचना होगा: यह क्या है जो आप वास्तव में करना चाहते हैं? क्या महत्वपूर्ण है? अंततः, केवल आप इस प्रश्न का उत्तर अपने ज्ञान के आधार पर दे सकते हैं। हो सकता है कि एयूसी समझ में आता है (यह वास्तव में शायद ही कभी होता है जब आप वास्तव में इसके बारे में सोचते हैं, सिवाय इसके कि जब आप खुद कोई निर्णय नहीं करना चाहते हैं लेकिन दूसरों को ऐसा करने दें - यदि आप दूसरों के उपयोग के लिए एक उपकरण बना रहे हैं तो यह सबसे अधिक संभावना है), हो सकता है सटीकता (यदि आपको एक बाइनरी की आवश्यकता है, तो गो-नो गो उत्तर), लेकिन हो सकता है कि विभिन्न थ्रेसहोल्ड पर, हो सकता है कुछ और अधिक निरंतर उपाय, हो सकता है कि फ्रैंक हार्ले द्वारा सुझाए गए उपायों में से एक ... जैसा कि पहले ही कहा गया है, कोई सार्वभौमिक सवाल नहीं है यहाँ।

ए के लिए आरओसी ग्राफ बहुत चिकना दिखता है (यह एक घुमावदार चाप है), लेकिन बी के लिए आरओसी ग्राफ कनेक्टेड लाइनों के एक सेट की तरह दिखता है। ऐसा क्यों है?

उन भविष्यवाणियों पर वापस जाएं, जिन्हें आपने हिस्टोग्राम पर दिखाया था। A आपको निरंतर, या लगभग-निरंतर भविष्यवाणी देता है। इसके विपरीत, बी केवल कुछ अलग-अलग मान देता है (जैसा कि आप "स्पाइकी" हिस्टोग्राम द्वारा देख सकते हैं)।

आरओसी वक्र में, प्रत्येक बिंदु एक दहलीज के अनुरूप होता है। ए में, आपके पास बहुत सी थ्रेसहोल्ड हैं (क्योंकि भविष्यवाणियां निरंतर हैं), इसलिए वक्र चिकना है। बी में, आपके पास केवल कुछ थ्रेसहोल्ड हैं, इसलिए वक्र एक एसएन / एसपी से दूसरे पर "कूदता" दिखता है।

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


+1, हालाँकि, ऐसा नहीं है कि AUC केवल "जब आप स्वयं निर्णय नहीं लेना चाहते, लेकिन दूसरों को ऐसा करने दें"। देखें: हाथ से वक्र (एयूसी), या सी-स्टेटिस्टिक के तहत क्षेत्र की गणना कैसे करें
गंग -
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.