क्या हमें अभी भी रेग्युलराइजेशन एल्गोरिदम का उपयोग करते हुए फीचर चयन करने की आवश्यकता है?


20

मेरे पास सांख्यिकीय सीखने के एल्गोरिथ्म को चलाने से पहले सुविधा चयन विधियों (रैंडम फ़ॉरेस्ट्स फ़ीचर महत्व मान या Univariate सुविधा चयन विधियों आदि) का उपयोग करने की आवश्यकता के संबंध में एक प्रश्न है।

हम जानते हैं कि ओवरफिटिंग से बचने के लिए हम वेट वैक्टर पर रेगुलराइजेशन पेनल्टी लगा सकते हैं।

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

फिर क्या Lasso जैसे L1 नियमितीकरण प्रतिगमन को चलाने से पहले फीचर चयन करना आवश्यक है? तकनीकी रूप से लैस्सो मुझे एल 1 पेनल्टी द्वारा सुविधाओं को कम करने में मदद कर रहा है फिर एलो को चलाने से पहले फीचर चयन की आवश्यकता क्यों है?

मैंने एक शोध लेख पढ़ते हुए कहा कि एनोवा करना तो SVM अकेले SVM ​​का उपयोग करने से बेहतर प्रदर्शन देता है। अब सवाल यह है: एसवीएम स्वाभाविक रूप से एल 2 मानक का उपयोग करके नियमितीकरण करता है। मार्जिन को अधिकतम करने के लिए, यह वेट वेक्टर मानक को कम कर रहा है। इसलिए यह वस्तुनिष्ठ कार्य कर रहा है। फिर तकनीकी रूप से एल्गोरिदम जैसे SVM ​​को फीचर चयन विधियों के बारे में परेशान नहीं होना चाहिए? लेकिन रिपोर्ट अभी भी कहती है कि सामान्य SVM के अधिक शक्तिशाली होने से पहले Univariate Feature Selection करना।

विचारों वाला कोई?


एक प्रश्न मैं उठाऊंगा कि एसवीएम नियमितीकरण कर्नेल विधियों के साथ कैसे काम करता है? L2 मानदंड reg सामान्यीकृत होने वाले इनपुट पर निर्भर करता है। हालाँकि यदि आप कर्नेल का उपयोग करते हैं (जैसे बहुपद) तो आपके प्रभावी इनपुट (यानी बहुपद शक्तियाँ) अब सामान्यीकृत नहीं हैं।
seanv507

जवाबों:


17

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

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

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

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


नेस्टेड क्रॉस-वेलिडेशन से आपका क्या मतलब है? क्या यह के-गुना क्रॉस सत्यापन एन टाइम को लागू करता है?
yasin.yazici

5

जेβ^जे=0.0001β^जे=0

हालांकि, एक चर को पूरी तरह से हटाने के लिए अभी भी कारण हैं।

  1. कभी-कभी लक्ष्य भविष्य कहनेवाला सटीकता नहीं है, लेकिन एक विश्व घटना की व्याख्या है। कभी-कभी आप जानना चाहते हैं कि चर क्या करते हैं और एक निश्चित आश्रित चर को प्रभावित नहीं करते हैं। इस प्रकार की स्थितियों में, एक पारदर्शक मॉडल समझने और व्याख्या करने का एक पसंदीदा तरीका है
  2. आप जोखिम के लिए खुद को स्थापित कर रहे हैं। यदि आप एक चर में छोड़ते हैंβ^जे
  3. कम्प्यूटेशनल कारण - कम चर वाला एक मॉडल आम तौर पर तेजी से चलता है और आपको उन बाहरी चर के लिए डेटा संग्रहीत नहीं करना पड़ता है।

2
हाय TrynnaDoStat, मैं पूरी तरह से आपकी बात 1 और 3 से सहमत हूं। लेकिन तर्क 2 वास्तव में इस बिंदु पर हिट नहीं करता है। यदि आप डेटा के एक ही सेट के साथ फीचर का चयन करते हैं, तो आपके पास गलत फीचर सेट को चुनने का जोखिम भी है। क्योंकि एक यादृच्छिक चर डेटा में लक्ष्य चर के साथ अच्छी तरह से सहसंबद्ध हो सकता है।
gstar2002

β^जे

0

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

मैं इसके बजाय यह कहना चाहूंगा कि फीचर का चयन उन मॉडलों के लिए एक प्रीप्रोसेसिंग कदम के रूप में किया जाता है, जिनके पास अपने दम पर सुविधाओं के महत्व को निर्धारित करने की शक्ति नहीं है, या एल्गोरिदम के लिए जो बहुत कम कुशल हैं यदि उन्हें यह महत्व अपने दम पर करना है ।

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

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

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

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


3
(१) मैं आपके पहले प्रस्ताव से सहमत नहीं हूँ। फ़ीचर चयन डेटा की मात्रा को कम नहीं करता है, लेकिन सुविधाओं की संख्या कम कर देता है। उदाहरणों (नमूनों) की संख्या समान रहती है, और इससे डेटा ओवरफिट करने में मदद मिल सकती है क्योंकि, डेटा को फिट करने के लिए क्लासिफायरियर को कम मापदंडों (यदि यह एक पैरामीट्रिक मॉडल है) की आवश्यकता होती है। कम मापदंडों का मतलब कम प्रतिनिधित्व शक्ति है, इसलिए कम ओवरफिट होने की संभावना है। (२) केएनएन से पहले उपयोग करने के लिए आपने किस प्रकार की सुविधा चयन एल्गोरिथ्म का उल्लेख किया है? यह कैसे पता चलेगा कि कौन सी सुविधाएँ अधिक प्रभावी होंगी?
yasin.yazici

@ yasin.yazici: मान लीजिए कि आप हस्तलिखित अंकों का वर्गीकरण कर रहे हैं और आप सभी ऊपरी ऊपरी पिक्सेल को फेंक देते हैं। क्या आपके पास केवल आपके पास डेटा की मात्रा कम नहीं थी?
cfh

@chf नहीं, यह केवल सुविधाओं की संख्या कम करता है। ऐसा न हो कि डेटासेट MNIST है प्रत्येक नमूने के लिए 784 विशेषताएं हैं और 60000 नमूने हैं। यदि आप अपनी सुविधाओं का कुछ हिस्सा फेंक देते हैं, तो आपके पास अभी भी 60000 नमूने हैं।
yasin.yazici

@ yasin.yazici: मेरा कहना है, नमूनों की संख्या डेटा की मात्रा के समान नहीं है। डेटा "नमूने x सुविधाओं" का पूरा मैट्रिक्स है।
cfh

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

0

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

इसके अलावा कुछ विशेषताएं हो सकती हैं जो आप अपने मॉडल में नहीं चाहते हैं जो व्यापार समझ के आधार पर आप हटाना चाहते हैं।


0

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

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