ओवरसैंपलिंग, अंडरसमैंपिंग और SMOTE से क्या समस्या हल होती है?


25

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

उत्कीर्ण उत्तरों की सामान्य समझ यह है कि "यह कम से कम यदि आप अपने मॉडलिंग में विचारशील हैं तो नहीं है"। एम। हेनरी एल।, एक स्वीकृत जवाब के लिए एक अप-वोट वाली टिप्पणी में, कहते हैं

[...] असंतुलित डेटा का उपयोग करने के साथ निम्न स्तर की समस्या नहीं है। मेरे अनुभव में, "असंतुलित डेटा से बचने" की सलाह या तो एल्गोरिथ्म-विशिष्ट है, या विरासत में मिली ज्ञान है। मैं एडमो से सहमत हूं कि सामान्य तौर पर, असंतुलित डेटा एक अच्छी तरह से निर्दिष्ट मॉडल के लिए कोई वैचारिक समस्या नहीं है।

एडमो का तर्क है कि वर्ग संतुलन के साथ "समस्या" वास्तव में वर्ग दुर्लभता में से एक है

इसलिए, कम से कम प्रतिगमन में (लेकिन मुझे सभी परिस्थितियों में संदेह है), असंतुलित डेटा के साथ एकमात्र समस्या यह है कि आपके पास प्रभावी रूप से छोटा नमूना आकार है। यदि कोई विधि दुर्लभ वर्ग के लोगों की संख्या के लिए उपयुक्त है, तो कोई अनुपात नहीं होना चाहिए अगर उनकी अनुपात सदस्यता असंतुलित हो।

यदि हाथ में यह वास्तविक मुद्दा है, तो यह एक खुला प्रश्न छोड़ देता है: डेटासेट को संतुलित करने के उद्देश्य से सभी रीसम्पलिंग के तरीकों का उद्देश्य क्या है: ओवरसैंपलिंग, अंडरसमैंपिंग, एसएमओटीई, आदि। स्पष्ट रूप से वे एक छोटे से नमूने के आकार के होने की समस्या का समाधान नहीं करते हैं, आप कुछ भी नहीं कर सकते हैं!


यह वही है जो मैंने इसे बदल दिया है ... धन्यवाद। यह आपके प्रश्न के पूरे दायरे को कवर नहीं करता है, लेकिन शीर्षक नहीं है - यह स्पष्ट रूप से इस बात पर मिलता है कि आप किस तरह की चीज के बारे में पूछ रहे हैं।
Glen_b -Reinstate मोनिका

निश्चित रूप से ऐसी स्थितियां हैं जहां बूटस्ट्रैप और सबसम्प्लिंग तरीके जो उपयोगी होते हैं और कभी-कभी अन्य गैर-पैरामीट्रिक विधियों की तुलना में बेहतर होते हैं। बूटस्ट्रैप और सबसम्प्लिंग पर पुस्तकें इसे कवर करती हैं। इस साइट पर चर्चाएँ हैं जो अपेक्षाकृत छोटे नमूनों में भी विवेकाधीन विश्लेषण में छुट्टी-एक से अधिक बूटस्ट्रैप की श्रेष्ठता पर चर्चा करती हैं। निश्चित रूप से कुछ परिस्थितियां हैं जहां बूटस्ट्रैप विफल रहता है और जिनका उल्लेख मेरी पुस्तक में भी किया गया है।
माइकल आर। चेरनिक

@MichaelChernick मैं बूटस्ट्रैप के बारे में बात नहीं कर रहा हूं, यही ग्लेन के बारे में टिप्पणी कर रहा था। मैं "क्लास बैलेंसिंग" के बारे में बात कर रहा हूं, जैसे कि ओवर सैंपलिंग और अंडर सैम्पलिंग ताकि पॉजिटिव से नेगेटिव क्लास तक समान रूप से डेटा सेट में प्रतिनिधित्व हो।
मैथ्यू डॉरी

क्या आप सबसामलिंग शामिल हैं? क्या आप केवल असमान नमूने के आकार की बात कर रहे हैं? आप कितना सामान्य वक्तव्य दे रहे हैं?
माइकल आर। चर्निक

@MichaelChernick मैंने पहले और आखिरी पैराग्राफ में कुछ स्पष्ट टिप्पणियां जोड़ीं, मुझे आशा है कि इससे मदद मिलेगी।
मैथ्यू ड्र्यू

जवाबों:


0

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


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


0

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


2
मैं आपका जवाब नहीं समझता।
माइकल आर। चेरनिक

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

0

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

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

L(xi~,yi)=α(yi)ln(xi~)β(1yi)ln(1xi~)

β>αβα


0

मैं इस आधार से असहमत हूं कि असंतुलित डेटा मशीन सीखने में कोई समस्या नहीं है। शायद प्रतिगमन में इतना कम है, लेकिन यह निश्चित रूप से वर्गीकरण में है।

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

कक्षा ए 'बनाम' क्लास बी 'के प्रशिक्षण उदाहरणों के 25: 1 अनुपात के साथ एक सरल बाइनरी वर्गीकरण समस्या लें। अनुसंधान से पता चला है कि प्रशिक्षण डेटा के अनुपात में कमी के कारण कक्षा बी के वर्गीकरण से संबंधित सटीकता बस एक हिट लेती है। समझ में आता है, आपके पास जितने कम # प्रशिक्षण उदाहरण हैं, आपका क्लासिफायर उस डेटा पर प्रशिक्षण देगा। जैसा कि टिप्पणीकारों में से एक ने कहा, आप कुछ भी नहीं कर सकते हैं। मैंने जिन पेपरों को देखा है, उनमें से मल्टीस्केल्स वर्गीकरण समस्याओं में, ऐसा लगता है कि आपको अल्पसंख्यक वर्ग की सटीकता पर महत्वपूर्ण प्रभाव डालने के लिए 10: 1 अनुपात प्राप्त करने की आवश्यकता है। शायद मैंने जो देखा है, उससे अलग साहित्य पढ़ने वाले लोगों की राय अलग है।

तो, प्रस्तावित समाधान इस प्रकार हैं: अल्पसंख्यक वर्ग को ओवरलैप करना, बहुसंख्यक वर्ग को रेखांकित करना या अल्पसंख्यक वर्ग पर एसएमओटीई का उपयोग करना। हां, आप वास्तव में कहीं से भी डेटा नहीं बना सकते (SMOTE सॉर्ट-ऑफ करता है, लेकिन बिल्कुल नहीं) जब तक कि आप अल्पसंख्यक वर्ग (कोई सरल विधि) के लिए सिंथेटिक डेटा निर्माण में नहीं आ रहे हैं। मिक्सअप जैसी अन्य तकनीक और संभावित रूप से इस अवधारणा में आते हैं, लेकिन मुझे लगता है कि वे वर्ग असंतुलन समाधानों की तुलना में अधिक नियमित हैं। मैंने जो पेपर्स पढ़े हैं, उनमें ओवरस्पीडिंग> SMOTE> अंडरसमैपलिंग।

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

तो सवाल का जवाब देने के लिए:

tl / dr: ओवर-अंडरसम्पलिंग और एसएमओटीई (और सिंथेटिक डेटा) जैसे क्लास-बैलेंसिंग ऑपरेशन मशीन के एल्गोरिथ्म (क्लासिफायर) के प्रदर्शन में सुधार करने के लिए मौजूद हैं, जो कि असंतुलन के कारण होने वाले एल्गोरिथम में निहित प्रदर्शन हिट को हल करके है

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.