5

उपयोग मामले:छोटे डेटा सेट के लिए एसवीएम वर्गीकरण की संभावना (आत्मविश्वास) की गणना कैसे करें?

मैं प्रत्येक वर्ग में 3-10 के बारे में नमूने के साथ एक छोटे डाटासेट है। मैं आरबीएफ कर्नेल के साथ वर्गीकृत करने के लिए sklearn एसवीसी का उपयोग कर रहा हूं। I भविष्यवाणी कक्षा के साथ पूर्वानुमान के आत्मविश्वास की आवश्यकता है। मैंने predict_proba एसवीसी की विधि का उपयोग किया। मुझे इसके साथ अजीब परिणाम मिल रहे थे। मैंने थोड़ी सी खोज की और पाया कि यह केवल बड़े डेटासेट के लिए समझ में आता है।

इस प्रश्न को स्टैक Scikit-learn predict_proba gives wrong answers पर मिला।

प्रश्न के लेखक ने डेटासेट को गुणा करके सत्यापित किया, जिससे डेटासेट को डुप्लिकेट किया गया।

मेरे सवालों का:

1) अगर मैं के आधार पर अपने डाटासेट गुणा 100 कहते हैं, प्रत्येक नमूने 100 गुना होने की सुविधा देता है, यह "predict_proba" के "शुद्धता" बढ़ जाती है। इसके किन दुष्प्रभाव होंगे? Overfitting?

2) क्या कोई अन्य तरीका है कि मैं वर्गीकरण के विश्वास की गणना कर सकता हूं? हाइपरप्लेन से दूरी की तरह?

3) इस छोटे नमूना आकार के लिए, एसवीएम एक अनुशंसित एल्गोरिदम है या मुझे कुछ और चुनना चाहिए?

+1

"आत्मविश्वास" से आपका क्या मतलब है?"वैसे भी, केवल 3 नमूने के साथ, आपके द्वारा चुने गए किसी भी चीज़ में आशा करने के लिए बहुत कुछ नहीं है। –

+3

@ जुआनपा.र्रिविल्लगा क्लासिफायर कितना आश्वस्त है कि यह नमूना इस वर्ग से संबंधित है। प्लेट स्केलिंग या हाइपरप्लेन से दूरी? –

+0

@juanpa के रूप में ने कहा - 3 नमूनों के साथ वास्तव में कुछ भी करने के लिए उचित नहीं है। विशेष रूप से एसवीएम को कोई समझ नहीं आता है (और अन्य सांख्यिकीय तरीकों का 99%)। आप 1-एनएन का उपयोग कर सकते हैं, जो कि बस "निकटतम लेबल को संलग्न करने का नियम है बिंदु ", लेकिन फिर से - प्रति वर्ग के 3 नमूने किसी भी सभ्य विश्लेषण के लिए बहुत छोटा रास्ता है। जब तक आपके पास हजारों वर्ग नहीं हैं, और उनके बीच एक संरचना है। – lejlot

उत्तर

0

सबसे पहले: आपका डेटा सेट किसी भी व्यावहारिक उद्देश्यों के लिए बहुत छोटा लगता है। कहा जा रहा है, चलो देखते हैं कि हम क्या कर सकते हैं।

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

आपके डेटा को ओवरसैम्पलिंग एसवीएम का उपयोग करके एक दृष्टिकोण के लिए थोड़ा कम करेगा। एसवीएम समर्थन वैक्टर की धारणा पर आधारित है, जो मूल रूप से कक्षा के बहिष्कार हैं जो परिभाषित करते हैं कि कक्षा में क्या है और क्या नहीं है। Oversampling नए समर्थन वेक्टर का निर्माण नहीं करेगा (मुझे लगता है कि आप पहले से ही ट्रेन सेट के रूप में ट्रेन सेट का उपयोग कर रहे हैं)।

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

अंत में, आप हाइपरप्लेन की दूरी के साथ विश्वास का अनुमान लगा सकते हैं। कृपया देखें: https://stats.stackexchange.com/questions/55072/svm-confidence-according-to-distance-from-hyperline

संबंधित मुद्दे