मैं एक डिवाइस के लिए दोष और बिना गलती की स्थिति को वर्गीकृत करना चाहता हूं। फॉल्ट के लिए लेबल ए और नो-फॉल्ट के लिए बी लेबल।

scikit-learn मुझे वर्गीकरण मैट्रिक्स के लिए एक रिपोर्ट इस प्रकार देता है:

        precision    recall   f1-score   support
A       0.82         0.18     0.30       2565
B       0.96         1.00     0.98       45100

अब मॉडल ऑपरेशन को निर्दिष्ट करने के लिए मुझे A या B में से किस परिणाम का उपयोग करना चाहिए?

2
Ali Ok 17 अक्टूबर 2019, 11:49

1 उत्तर

सबसे बढ़िया उत्तर

परिचय

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

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

समाधान

यह मानते हुए कि यह धारणा (दोषों के लिए याद करना सबसे महत्वपूर्ण मीट्रिक है) आपके मामले में है, तो आपको लेबल ए (दोष) के लिए याद करना देखना चाहिए। इन मानकों के अनुसार, आपका मॉडल काफी खराब प्रदर्शन कर रहा है: उसे केवल 18% दोष मिलते हैं। संभवतः बहुत कुछ इस तथ्य से उपजा है कि दोषों की संख्या गैर-दोषों की तुलना में ~ 20x छोटी है, जो भारी पूर्वाग्रह का परिचय देती है (जिससे निपटने की आवश्यकता है)।

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

मैट्रिक्स

पूर्णता के लिए, मैं शर्तों की व्याख्या करूंगा। इन परिभाषाओं पर विचार करें:

enter image description here

  • टीपी - सच्चा सकारात्मक (वास्तविक दोष)
  • टीएन - सच नकारात्मक (यह कोई गलती नहीं है)
  • fp - झूठी सकारात्मक (गलती का पता चला, जबकि यह ठीक है)
  • fn - गलत नकारात्मक (ठीक पाया गया, जबकि यह एक गलती है)

यहां एक लेख है जो अच्छी तरह से यह समझाने का प्रयास करता है कि सटीक क्या है, याद करें और एफ1.

1
Lukasz Tracewski 17 अक्टूबर 2019, 12:38