वर्गीकरण मॉडल का आकलन करने के लिए सटीकता सबसे अच्छा उपाय क्यों नहीं है?


107

यह एक सामान्य प्रश्न है जिसे यहां परोक्ष रूप से कई बार पूछा गया था, लेकिन इसमें एक भी आधिकारिक उत्तर का अभाव है। संदर्भ के लिए इसका विस्तृत उत्तर देना बहुत अच्छा होगा।

सटीकता , सभी वर्गीकरणों के बीच सही वर्गीकरण का अनुपात बहुत सरल और बहुत "सहज" उपाय है, फिर भी यह असंतुलित डेटा के लिए एक खराब उपाय हो सकता है । हमारा अंतर्ज्ञान हमें यहाँ गुमराह क्यों करता है और क्या इस उपाय से कोई अन्य समस्या है?

जवाबों:


112

अधिकांश अन्य उत्तर असंतुलित कक्षाओं के उदाहरण पर ध्यान केंद्रित करते हैं। हां, यह महत्वपूर्ण है। हालांकि, मेरा तर्क है कि संतुलित वर्गों के साथ सटीकता भी समस्याग्रस्त है।

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

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

  • कक्षा 1 बनाम 0 के रूप में एक नए अवलोकन का इलाज करने का निर्णय लेने के परिणाम क्या हैं? क्या तब मैं सभी 1s को एक सस्ता मार्केटिंग मेल भेज सकता हूँ? या क्या मैं बड़े दुष्प्रभावों के साथ एक आक्रामक कैंसर उपचार लागू करता हूं?
  • एक "सच" 0 को 1 के रूप में मानने के क्या परिणाम हैं, और इसके विपरीत? क्या मैं एक ग्राहक को टिकटिक दूंगा? किसी को अनावश्यक चिकित्सा उपचार के अधीन करें?
  • क्या मेरे "वर्ग" वास्तव में असतत हैं? या क्या वास्तव में एक निरंतरता (जैसे, रक्तचाप) है, जहां नैदानिक ​​थ्रेसहोल्ड वास्तव में संज्ञानात्मक शॉर्टकट हैं? यदि ऐसा है, तो मैं अभी "थ्रेडिफ़ाइंग" की दहलीज से कितनी दूर हूं?
  • या कक्षा 1 होने के लिए कम-लेकिन-सकारात्मक संभावना है वास्तव में "अधिक डेटा प्राप्त करें", "एक और परीक्षण चलाएं"?

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

भविष्यवाणी की संभावनाओं का आकलन करने का सही तरीका है नहीं उन्हें, एक सीमा से तुलना उनके लिए मैप करने के लिए सीमा के आधार पर और उसके बाद का आकलन तब्दील वर्गीकरण। इसके बजाय, व्यक्ति को उचित उपयोग करना चाहिए । ये नुकसान कार्य हैं जो नक्शे की संभावनाओं की भविष्यवाणी करते हैं और संबंधित मान हानि के परिणामों के अनुसार होते हैं, जो कि वास्तविक संभावनाओं द्वारा अपेक्षा में कम से कम किए जाते हैं । विचार यह है कि हम स्कोरिंग नियम के अपेक्षा के अनुमान के रूप में, एकाधिक (सर्वोत्तम: कई) देखे गए परिणामों और संबंधित अनुमानित वर्ग सदस्यता संभावनाओं पर मूल्यांकन किए गए स्कोरिंग नियम पर औसत लेते हैं।(p^,1p^)(0,1)(0,1)(p,1p)

ध्यान दें कि यहां "उचित" का एक सटीक अर्थ है - अनुचित स्कोरिंग नियमों के साथ-साथ उचित स्कोरिंग नियम भी हैं और अंत में कड़े उचित नियम हैं । इस तरह के स्कोरिंग नियम पूर्वानुमानात्मक घनत्व और परिणामों के नुकसान कार्य हैं। उचित स्कोरिंग नियम स्कोरिंग नियम हैं जो अपेक्षा में कम से कम होते हैं यदि भविष्य कहनेवाला घनत्व सही घनत्व है। कड़ाई से उचित स्कोरिंग नियम नियम स्कोरिंग हैं जो केवल उम्मीद में कम से कम किए जाते हैं यदि भविष्य कहनेवाला घनत्व सही घनत्व है।

फ्रैंक हरेल के रूप में , सटीकता एक अनुचित स्कोरिंग नियम है। (अधिक सटीक रूप से, सटीकता भी एक स्कोरिंग नियम नहीं है : मेरे उत्तर को देखें सटीकता क्या एक द्विआधारी वर्गीकरण सेटिंग में अनुचित स्कोरिंग नियम है? ) यह देखा जा सकता है, उदाहरण के लिए, अगर हमारे पास कोई भविष्यवाणियां नहीं हैं और सिर्फ एक फ्लिप है? संभावनाओं के साथ एक अनुचित सिक्का । सटीकता को अधिकतम किया जाता है यदि हम सब कुछ प्रथम श्रेणी के रूप में वर्गीकृत करते हैं और पूरी तरह से 40% संभावना को अनदेखा करते हैं कि कोई भी परिणाम दूसरी कक्षा में हो सकता है। (यहाँ हम देखते हैं कि सटीकता भी संतुलित कक्षाओं के लिए समस्याग्रस्त है।) उचित एक का चुनाव करेगा करने के लिए भविष्यवाणी(0.6,0.4)(0.6,0.4)(1,0) अपेक्षा में एक। विशेष रूप से, सटीकता थ्रेशोल्ड में बंद है: थ्रेशोल्ड को थोड़ा-थोड़ा हिलाने से एक (या एकाधिक) भविष्यवाणियां कक्षाएं बदल सकती हैं और पूरी सटीकता को असतत राशि से बदल सकती हैं। यह थोड़ा समझ में आता है।

अधिक जानकारी फ्रैंक से जुड़े दो ब्लॉग पोस्ट में पाई जा सकती है, साथ ही फ्रैंक हार्ल के प्रतिगमन मॉडल स्ट्रैटेजिज के अध्याय 10 में भी ।

(यह बेशर्मी से मेरे पहले के जवाब से घबरा गया है ।)


संपादित करें। उदाहरण के लिए मेरा जवाब जब सटीकता के रूप में एक परिणाम के उपाय का उपयोग कर एक गलत निष्कर्ष के लिए नेतृत्व करेंगे एक उम्मीद उदाहरण उदाहरण देता है जहां सटीकता अधिकतम करने से संतुलित वर्गों के लिए भी गलत निर्णय हो सकते हैं ।


6
@ टिम फ्रैंक की बात (कि उन्होंने हमारी साइट और अन्य जगहों पर कई उत्तरों में चर्चा की), जैसा कि मैं इसे समझता हूं, यह है कि यदि कोई वर्गीकरण एल्गोरिथ्म संभावनाओं को वापस नहीं करता है, तो यह कचरा है और इसका उपयोग नहीं किया जाना चाहिए। ईमानदार होने के लिए, आमतौर पर उपयोग किए जाने वाले एल्गोरिदम में से अधिकांश संभावनाएं लौटाते हैं।
अमीबा

6
मैं कहूंगा कि एक एल्गोरिथ्म जो अतीत के अवलोकन लेता है और केवल ऊपर के बिंदुओं को ध्यान में रखे बिना वर्गीकरणों को आउटपुट करता है (उदाहरण के लिए, गलत निर्णयों की लागत) सांख्यिकीय और निर्णय पहलू को उजागर करता है। यह ऐसा है जैसे कोई व्यक्ति बिना किसी विशेष प्रकार की कार की सिफारिश किए बिना आपसे यह पूछे कि क्या आप एक छोटी लीग बेसबॉल टीम, निर्माण सामग्री का एक गुच्छा, या केवल अपने आप को परिवहन करना चाहते हैं। तो मैं यह भी कहूंगा कि ऐसा एल्गोरिथम कचरा होगा।
स्टीफन कोलासा 9:17

8
मैं एक उत्तर लिखने जा रहा था, लेकिन तब इसकी आवश्यकता नहीं थी। वाहवाही। मैं अपने छात्रों के साथ सांख्यिकीय मॉडलिंग और निर्णय लेने के बीच "चिंताओं के अलगाव" के रूप में चर्चा करता हूं। इस प्रकार की अवधारणा इंजीनियरिंग संस्कृति में बहुत गहराई से निहित है।
मैथ्यू

8
@ कोच: यदि आपका क्लासिफायर (याद रखें, यह उच्चतम सटीकता वाला है ) कहता है कि "इस नमूने में हर कोई स्वस्थ है", तो क्या डॉक्टर या विश्लेषक यह मानेंगे कि कहानी में कुछ और है? मैं मानता हूं कि अंत में, यह विश्लेषक के लिए एक आह्वान है, लेकिन "हर कोई स्वस्थ है" विश्लेषक की तुलना में कहीं कम उपयोगी है, जो 95% / 5% भविष्यवाणी की तरह अवशिष्ट अनिश्चितता पर ध्यान आकर्षित करता है।
स्टीफन कोलासा

11
@StephanKolassa के उत्तर और टिप्पणियाँ शानदार हैं। किसी और ने टिप्पणी की कि इस बात पर मतभेद है कि यह किस संस्कृति के आधार पर देखा जाता है। यह वास्तव में मामला नहीं है; यह सिर्फ इतना है कि कुछ क्षेत्रों ने साहित्य को समझने के लिए परेशान किया और दूसरों ने नहीं किया। मौसम का पूर्वानुमान, उदाहरण के लिए, सबसे आगे रहा है और कम से कम 1951 के बाद से फोरकास्टर सटीकता का आकलन करने के लिए उचित स्कोरिंग नियमों का उपयोग किया है।
फ्रैंक हरेल

78

जब हम सटीकता का उपयोग करते हैं, तो हम झूठी सकारात्मक और झूठी नकारात्मक के बराबर लागत देते हैं। जब उस डेटा सेट को असंतुलित किया जाता है - तो कहें कि इसमें एक कक्षा में 99% उदाहरण हैं और दूसरे में केवल 1% - लागत को कम करने का एक शानदार तरीका है। भविष्यवाणी करें कि हर उदाहरण बहुसंख्यक वर्ग का है, 99% की सटीकता प्राप्त करें और जल्दी घर जाएं।

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

सामान्य तौर पर, कोई सामान्य सर्वोत्तम उपाय नहीं है। सबसे अच्छा उपाय आपकी आवश्यकताओं से लिया गया है। एक मायने में, यह मशीन सीखने का सवाल नहीं है, बल्कि एक व्यावसायिक प्रश्न है। यह सामान्य है कि दो लोग एक ही डेटा सेट का उपयोग करेंगे, लेकिन विभिन्न लक्ष्यों के कारण अलग-अलग मैट्रिक्स का चयन करेंगे।

सटीकता एक महान मीट्रिक है। वास्तव में, अधिकांश मैट्रिक्स महान हैं और मुझे कई मैट्रिक्स का मूल्यांकन करना पसंद है। हालांकि, कुछ बिंदु पर आपको मॉडल ए या बी का उपयोग करने के बीच तय करने की आवश्यकता होगी। वहां आपको एक ही मीट्रिक का उपयोग करना चाहिए जो आपकी ज़रूरत के लिए सबसे उपयुक्त हो।

अतिरिक्त क्रेडिट के लिए, विश्लेषण से पहले इस मीट्रिक को चुनें, ताकि निर्णय लेते समय आप विचलित न हों।


3
महान जवाब - मैंने मशीन सीखने में शुरुआती लोगों के लिए सिर्फ कोशिश करने और बिंदु को स्पष्ट करने के लिए संपादन के एक जोड़े का प्रस्ताव किया है (जिस पर यह प्रश्न लक्षित है)।
nekomatic

1
मैं असहमत हूँ कि यह मशीन सीखने की समस्या नहीं है। लेकिन इसे संबोधित करते हुए मेटा समस्या पर मशीन लर्निंग करना और मशीन को बुनियादी वर्गीकरण जानकारी से परे किसी तरह के डेटा तक पहुंच की आवश्यकता होती है।
Shufflepants

3
मैं इसे केवल डेटा के एक फ़ंक्शन के रूप में नहीं देखता हूं क्योंकि विभिन्न लक्ष्य अलग-अलग लागत / मॉडल / प्रदर्शन / मेट्रिक्स को लाद सकते हैं। मैं सहमत हूँ कि सामान्य तौर पर, लागत का प्रश्न गणितीय रूप से संभाला जा सकता है। हालांकि मरीजों के इलाज की लागत जैसे सवाल पूरी तरह से अलग जानकारी पर निर्भर करते हैं। मेटा डेटा के लिए आवश्यक यह जानकारी आमतौर पर मशीन लर्निंग पद्धति के लिए उपयुक्त नहीं है, इसलिए अधिकांश समय इसे विभिन्न तरीकों से नियंत्रित किया जाता है।
DaL

2
"बीमारी के साथ एक व्यक्ति को गलत तरीके से समझना" से, आपका मतलब है "उस व्यक्ति को गलत तरीके से समझना जिसके पास बीमारी है (बीमारी नहीं है)", सही है? क्योंकि उस वाक्यांश की व्याख्या किसी भी तरह से की जा सकती है।
टान्नर स्विट

आप सही हैं टेनर। मैंने इसे स्पष्ट करने के लिए परीक्षण को बदल दिया।
दाएल

20

सटीकता के साथ समस्या

मानक सटीकता को सही वर्गीकरण के अनुपात में वर्गीकृत वर्गीकरण की संख्या के रूप में परिभाषित किया गया है।

accuracy:=correct classificationsnumber of classifications

यह इस प्रकार सभी वर्गों पर समग्र माप पर है और जैसा कि हम जल्द ही देखेंगे कि यह एक वास्तविक उपयोगी परीक्षण के अलावा एक ओरेकल को बताने के लिए एक अच्छा उपाय नहीं है। एक ओरेकल एक वर्गीकरण फ़ंक्शन है जो प्रत्येक नमूने के लिए एक यादृच्छिक अनुमान देता है। इसी तरह, हम अपने वर्गीकरण फ़ंक्शन के वर्गीकरण प्रदर्शन को रेट करने में सक्षम होना चाहते हैं। यदि हमारे पास प्रति वर्ग नमूनों की समान मात्रा है, लेकिन यदि हमारे पास नमूनों की सटीकता का असंतुलित सेट है, तो सटीकता \ textit {can} एक उपयोगी उपाय हो सकता है। इससे भी अधिक, एक परीक्षण में उच्च सटीकता हो सकती है लेकिन वास्तव में कम सटीकता के साथ परीक्षण से भी बदतर प्रदर्शन होता है।

यदि हमारे पास नमूनों का वितरण ऐसा है कि 90 \% नमूने वर्ग , तो 5 \% संबंधित और दूसरे 5 \% तो निम्न वर्गीकरण कार्य सटीकता होगी :ABC0.9

classify(sample):={Aif 

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

classify(sample):=guess{Awith p =0.96Bwith p =0.02Cwith p =0.02

की सटीकता है जो और हमेशा की भविष्यवाणी नहीं होगा लेकिन अभी भी दिया हम जानते हैं कि कैसे काम करता है यह स्पष्ट है कि यह कक्षाएं अलग नहीं बता सकता। इस मामले में सटीकता ही हमें बताती है कि अनुमान लगाने में हमारा वर्गीकरण कार्य कितना अच्छा है। इसका मतलब है कि एक उपयोगी परीक्षण के अलावा एक ओरेकल को बताने के लिए सटीकता एक अच्छा उपाय नहीं है।0.960.9+0.020.052=0.866Aclassify

प्रति कक्षा सटीकता

हम अपने वर्गीकरण फ़ंक्शन को एक ही कक्षा से केवल नमूने देकर व्यक्तिगत रूप से सटीकता की गणना कर सकते हैं और सही वर्गीकरण और गलत वर्गीकरण की संख्या को याद कर सकते हैं और फिर गणना कर सकते हैं । हम हर वर्ग के लिए इसे दोहराते हैं। हम एक वर्गीकरण समारोह को सटीक ढंग से वर्ग को पहचान कर सकते हैं लेकिन होगा उत्पादन अन्य वर्गों के लिए एक यादृच्छिक अनुमान तो यह की सटीकता में परिणाम के लिए और की सटीकताaccuracy:=correct/(correct+incorrect)A1.00A0.33अन्य वर्गों के लिए। यह पहले से ही हमें हमारे वर्गीकरण समारोह के प्रदर्शन का न्याय करने के लिए एक बेहतर तरीका प्रदान करता है। हमेशा एक ही कक्षा का अनुमान लगाने वाला एक वर्ग उस कक्षा के लिए की प्रति कक्षा सटीकता का उत्पादन करेगा , लेकिन अन्य वर्ग के लिए । यदि हमारा परीक्षण उपयोगी है तो प्रति क्लास सभी सटीकता । होनी चाहिए । अन्यथा, हमारा परीक्षण संयोग से बेहतर नहीं है। हालांकि, प्रति कक्षा सटीकता सटीकता झूठी सकारात्मकता को ध्यान में नहीं रखती है। भले ही हमारे वर्गीकरण समारोह में क्लास लिए 100% सटीकता है, फिर भी (जैसे कि एक रूप में गलत तरीके से एक ) के लिए गलत सकारात्मकता होगी ।1.000.00>0.5AABA

संवेदनशीलता और विशिष्टता

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

बाइनरी वर्गीकरण

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

sensitivity:=TPTP+FNspecificity:=TNTN+FP

TP सच्ची सकारात्मकता होने के नाते झूठी नकारात्मक होने के नाते, सही नकारात्मक होने के नाते और झूठी सकारात्मक होने के नाते। । हालांकि, नकारात्मक और सकारात्मक के संदर्भ में सोचना चिकित्सा परीक्षणों के लिए ठीक है, लेकिन बेहतर अंतर्ज्ञान प्राप्त करने के लिए हमें नकारात्मक और सकारात्मक के संदर्भ में नहीं सोचना चाहिए, लेकिन सामान्य कक्षाओं और । फिर, हम कह सकते हैं कि नमूने सही ढंग से करने के लिए संबंधित के रूप में पहचान की राशि है और नमूने की राशि वास्तव में से संबंध रखते हैं कि हैFNTNFPαβαTααTα+Fβ। नमूने सही ढंग से संबंधित नहीं के रूप में पहचान की राशि है और नमूने वास्तव में से संबंधित नहीं की राशि है । यह हमें लिए संवेदनशीलता और विशिष्टता प्रदान करता है, लेकिन हम क्लास लिए भी यही बात लागू कर सकते हैं । नमूने सही ढंग से करने के लिए संबंधित के रूप में पहचान की राशि है और वास्तव में से संबंधित नमूने की राशि है । सही तरीके से पहचाने जाने वाले नमूनों की मात्रा से संबंधित नहीं हैαTβαTβ+FααββTββTβ+FαβTαऔर नमूने वास्तव में से संबंधित नहीं की राशि है । इस प्रकार हम प्रति वर्ग संवेदनशीलता और विशिष्टता प्राप्त करते हैं:βTα+Fβ

sensitivityα:=TαTα+Fβspecificityα:=TβTβ+Fαsensitivityβ:=TβTβ+Fαspecificityβ:=TαTα+Fβ

हालांकि हम उस और निरीक्षण करते । इसका मतलब है कि अगर हमारे पास केवल दो वर्ग हैं तो हमें प्रति कक्षा संवेदनशीलता और विशिष्टता की आवश्यकता नहीं है।sensitivityα=specificityβspecificityα=sensitivityβ

एन-आर्य वर्गीकरण

प्रति वर्ग संवेदनशीलता और विशिष्टता उपयोगी नहीं है यदि हमारे पास केवल दो कक्षाएं हैं, लेकिन हम इसे कई वर्गों तक बढ़ा सकते हैं। संवेदनशीलता और विशिष्टता के रूप में परिभाषित किया गया है:

sensitivity:=true positivestrue positives+false negativesspecificity:=true negativestrue negatives+false-positives

सच्ची सकारात्मकता बस , झूठी नकारात्मकता बसTni(Fn,i)i(Fi,n)ni(Ti)T(n)nni(k(Fi,k))nni(Fn,i)ni(Fi,n)i(Ti)T(n)+i(k(Fn,i))i(Fn,i)i(Fi,n)। सारांश के रूप में हमारे पास है:

true positives:=Tntrue negatives:=i(Ti)T(n)+i(k(Fn,i))i(Fn,i)i(Fi,n)false positives:=i(Fi,n)false negatives:=i(Fn,i)

sensitivity(n):=TnTn+i(Fn,i)specificity(n):=i(Ti)Tn+i(k(Fi,k))i(Fn,i)i(Fi,n)i(Ti)Tn+i(k(Fi,k))i(Fn,i)

पेश है आत्मविश्वास

हम एक को परिभाषित जो इस बात का माप है कि हम कितने आश्वस्त हो सकते हैं कि हमारे वर्गीकरण फ़ंक्शन का उत्तर वास्तव में सही है। वे सभी मामले हैं जिनमें वर्गीकरण फ़ंक्शन ने साथ उत्तर दिया था, लेकिन उनमें से केवल सही हैं। हम इस प्रकार परिभाषित करते हैंconfidenceTn+i(Fi,n)nTn

confidence(n):=TnTn+i(Fi,n)

लेकिन क्या हम एक को परिभाषित कर सकते हैं जो इस बात का एक उपाय है कि हम कितने आश्वस्त हो सकते हैं कि यदि हमारा वर्गीकरण फ़ंक्शन से भिन्न वर्ग के साथ प्रतिक्रिया करता है कि यह वास्तव में नहीं था ?confidencenn

ठीक है, हम जिनमें से सभी सही हैं सिवाय , हम परिभाषित करते हैं।i(k(Fi,k))i(Fi,n)+i(Ti)Tni(Fn,i)

confidence(n)=i(k(Fi,k))i(Fi,n)+i(Ti)Tni(Fn,i)i(k(Fi,k))i(Fi,n)+i(Ti)Tn


क्या आप भ्रम मैट्रिक्स का उपयोग करके मीन सटीकता की गणना करने का कोई उदाहरण प्रदान कर सकते हैं।
अदनान फारूक ए

आप यहाँ उदाहरणों के साथ अधिक विस्तृत विवरण पा सकते हैं: mroman.ch/guides/sensspec.html
mroman

इसके माध्यम से पढ़ना फिर से confidence_false की परिभाषा में एक त्रुटि है। मुझे आश्चर्य है कि किसी ने भी नहीं देखा। मैं अगले कुछ दिनों में इसे ठीक कर दूंगा।
मरमैन

8

आपके डेटासेट में असंतुलित कक्षाएं

संक्षिप्त होने के लिए: कल्पना करें, एक कक्षा का 99% (सेब कहो) और 1% अन्य वर्ग आपके डेटा सेट (केले को कहें) में है। मेरे सुपर डुपर एल्गोरिदम को इस डेटा सेट के लिए एक आश्चर्यजनक 99% सटीकता मिलती है, इसे देखें:

return "it's an apple"

वह समय का सही 99% होगा और इसलिए 99% सटीकता प्राप्त करता है। क्या मैं आपको अपना एल्गोरिथ्म बेच सकता हूं?

समाधान: एक निरपेक्ष माप (सटीकता) का उपयोग न करें, लेकिन एक रिश्तेदार-से-प्रत्येक वर्ग माप (वहाँ बहुत सारे हैं, जैसे आरओसी यूयूसी)


नहीं, AUC भी असंतुलित डेटासेट के लिए उपयुक्त नहीं है।
SiXUlm

@SiXUlm, क्या आप उस पर विस्तार कर सकते हैं?
Mayou36

AUC ROC वक्र के अंतर्गत आने वाला क्षेत्र है। ROC वक्र TPR बनाम FPR का प्लॉट है। अब, बायेसियन सेटिंग में, असंतुलन पूर्व संभाव्यता का विषम है: । TPR को रूप में देखा जा सकता है और FPR को रूप में देखा जा सकता है । पूर्व संभाव्यता का इस संभावना से कोई लेना-देना नहीं है। P ( T | D ) P ( F | D C )P(D)/P(DC)P(T|D)P(F|DC)
SiXUlm

एक स्पष्ट चित्रण यहाँ पाया जा सकता है: quora.com/… । जेरी मा के जवाब पर एक नजर।
SiXUlm

मुझे अब भी आपकी बात समझ नहीं आ रही है। नहीं है (Quora सहित) जो मैं समाधान में कह रहा हूं और मेरे जवाब का बिल्कुल समर्थन कर रहा हूं? मुद्दा यह है कि नेटवर्क के प्रदर्शन को मापने वाले मीट्रिक को पुजारियों को प्रभावित नहीं करना चाहिए। उपयुक्त क्या है यह पूरी तरह से आपकी समस्या पर निर्भर करता है, उदाहरण के लिए हर संभव कटौती के लिए सबसे अच्छा है । तो मुझे पता है: क) चूंकि यह पुजारियों के लिए अपरिवर्तनीय है, लेकिन प्रदर्शन के प्रति संवेदनशील है, यह अनुचित क्यों है ? ख) और क्या आपको लगता है होता है उचित या जो विशेषताओं की आवश्यकता है?
Mayou36

2

DaL का उत्तर बस यही है। मैं इसे एक बहुत ही सरल उदाहरण के साथ समझाता हूँ ... अंडे बेचना।

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

आप एक वेब कैमरा प्लग करते हैं, जो "अंडे सूँघता है", "ऑमलेट रेसिपी के साथ एक पुस्तक" जैसी विशेषताओं के साथ ग्राहक के व्यवहार का विश्लेषण करता है ... और उन्हें " डॉलर में खरीदना चाहता है " (सकारात्मक) और " खरीदना चाहता है" में वर्गीकृत करता है। केवल डॉलर पर "(नकारात्मक) निकलने से पहले।21

यदि आपका क्लासिफायर कोई गलती नहीं करता है, तो आप अधिकतम राजस्व प्राप्त कर सकते हैं जो आप उम्मीद कर सकते हैं। अगर यह सही नहीं है, तो:

  • हर झूठे सकारात्मक के लिए आप डॉलर ढीला करते हैं क्योंकि ग्राहक छोड़ देता है और आपने एक सफल छूट बनाने की कोशिश नहीं की1
  • हर झूठे नकारात्मक के लिए आप डॉलर ढीला करते हैं क्योंकि आप एक बेकार छूट बनाते हैं1

तब आपके क्लासिफायर की सटीकता ठीक यही है कि आप अधिकतम राजस्व के कितने करीब हैं। यह अचूक उपाय है।

लेकिन अब अगर डिस्काउंट डॉलर है। लागत हैं:a

  • झूठी सकारात्मक:a
  • गलत नकारात्मक:2a

फिर आपको क्लासिफायर की दक्षता के माप के रूप में इन नंबरों के साथ भारित सटीकता की आवश्यकता होती है। यदि उदाहरण के लिए , उपाय पूरी तरह से अलग है। यह स्थिति असंतुलित डेटा से संबंधित होने की संभावना है: कुछ ग्राहक भुगतान करने के लिए तैयार हैं , जबकि अधिकांश भुगतान करेंगे । आप कुछ और अधिक सकारात्मक सकारात्मक पाने के लिए कई झूठे सकारात्मक होने की परवाह नहीं करते हैं। आप इसके अनुसार क्लासिफायर की दहलीज को समायोजित कर सकते हैं।2 0.001a=0.00120.001

यदि क्लासिफायर उदाहरण के लिए किसी डेटाबेस में प्रासंगिक दस्तावेज़ खोजने के बारे में है, तो आप एक प्रासंगिक दस्तावेज़ पढ़ने की तुलना में "कितना" समय बर्बाद कर सकते हैं एक प्रासंगिक दस्तावेज़ की तुलना कर सकते हैं।


1

वर्गीकरण सटीकता सही अनुमानों की संख्या है जो भविष्यवाणियों की कुल संख्या से विभाजित है।

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


-3

आप वर्गीकरण के के रूप में सटीकता देख सकते हैं : एक प्रारंभिक रूप से अपील करने वाला मीट्रिक जिसके साथ मॉडल की तुलना करना, विस्तृत परीक्षा के तहत कम हो जाता है।R2

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

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


2
हम। (1) मुझे लगता है कि सटीकता या किसी अन्य मीट्रिक आउट-ऑफ-सैंपल का मूल्यांकन किया जाना चाहिए, इसलिए मुझे वास्तव में यह नहीं दिखता है कि सटीकता एक विशिष्ट ओवरफ़िटिंग समस्या से कैसे अधिक है । (२) यदि आप जनसंख्या A पर प्रशिक्षित मॉडल को एक अलग जनसंख्या B पर लागू करते हैं, तो आप सेब की तुलना संतरे से कर रहे हैं, और मैं वास्तव में नहीं देखता कि यह सटीकता के लिए एक विशिष्ट समस्या कैसे है ।
Stephan Kolassa

(1) यह फिर भी सटीकता के लिए एक समस्या है, और सवाल एक स्वर्ण-मानक के रूप में सटीकता का उपयोग करने के बारे में है। (२) एक क्लासिफायर बनाने की बात यह है कि इसे संतरे पर इस्तेमाल करना है, न कि सिर्फ सेब पर। यह आपके प्रशिक्षण डेटा के लिए catechism होने के बजाय डेटा में आवश्यक संकेतों (जैसे वे मौजूद हैं) को पकड़ने के लिए पर्याप्त होना चाहिए।
जेम्स
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.