क्यों वर्गीकृत करने के लिए संवादी तंत्रिका नेटवर्क एक सपोर्ट वेक्टर मशीन का उपयोग नहीं करते हैं?


46

हाल के वर्षों में, कंप्यूटर दृष्टि में वस्तु मान्यता के लिए संवादी तंत्रिका नेटवर्क (CNNs) अत्याधुनिक हो गए हैं। आमतौर पर, एक सीएनएन में कई दृढ़ परतें होती हैं, इसके बाद दो पूरी तरह से जुड़ी हुई परतें होती हैं। इसके पीछे एक अंतर्ज्ञान यह है कि दृढ़ परतें इनपुट डेटा का बेहतर प्रतिनिधित्व सीखती हैं, और पूरी तरह से जुड़ी हुई परतें तब लेबल के एक सेट के आधार पर इस प्रतिनिधित्व को वर्गीकृत करना सीखती हैं।

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

कोई विचार?

जवाबों:


54

यह किया जा सकता है; ICML वर्कशॉप पेपर, डीप लर्निंग ने रैखिक सपोर्ट वेक्टर मशीनों , तांग (2013) का उपयोग करते हुए , ठीक यही किया और छोटे लेकिन लगातार सुधार पाए। यह कभी-कभी विशिष्ट तरीके से सीएनएन को प्रशिक्षित करने के लिए भी किया जाता है, लेकिन फिर लेट लेयर के आउटपुट को "फीचर्स" के रूप में लेते हैं और उस पर एक अलग एसवीएम को प्रशिक्षित करते हैं।

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

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


0

जहाँ तक मैं देख सकता हूँ, कम से कम कुछ अंतर हैं:

  1. सीएनएन को छवि डेटा के साथ काम करने के लिए डिज़ाइन किया गया है, जबकि एसवीएम एक अधिक सामान्य क्लासिफायरियर है;
  2. CNNs सुविधाएँ निकालता है जबकि SVM अपने इनपुट को कुछ हाई डायमेंशनल स्पेस पर मैप करता है जहाँ (उम्मीद है) क्लासेस के बीच के अंतर को प्रकट किया जा सकता है;
  3. एसवीएम उथले हैं, जबकि 2. के समान, सीएनएन गहरे आर्किटेक्चर हैं;
  4. सीखने के उद्देश्य अलग-अलग हैं: एसवीएम मार्जिन को अधिकतम करने के लिए देखते हैं, जबकि सीएनएन (अधिक जानने के लिए प्यार नहीं करेंगे)

यह कहा जा रहा है, SVM उतना ही अच्छा काम कर सकते हैं, जितना कि CNNs प्रदान करता है, एक अच्छे कर्नेल फ़ंक्शन के साथ अच्छी सुविधाओं का उपयोग किया जाता है।


4
मुझे लगता है कि आपको सवाल गलत लग सकता है; यह सीएनएन के अंत में एक "एसवीएम परत" का उपयोग करने के बारे में है।
डगल

4
मैं CNN और SVM के बीच के अंतर को समझता हूं, लेकिन @Dougal कहते हैं, मैं CNN की अंतिम परत के बारे में अधिक पूछ रहा हूं। आमतौर पर, यह पूरी तरह से जुड़ा हुआ तंत्रिका नेटवर्क है, लेकिन मुझे यकीन नहीं है कि एसवीएम का उपयोग यहां क्यों नहीं किया गया है, क्योंकि वे दो-परत तंत्रिका नेटवर्क से अधिक मजबूत होते हैं।
कर्निवास

6
@Karnivaurus अपने प्रश्न को गलत बताने के लिए क्षमा करें। विचार नया नहीं है। आमतौर पर अंतिम परत को फेंक दिया जाता है और अंतिम परत के आउटपुट का उपयोग अन्य वर्गीकरण एल्गोरिदम में सुविधाओं के रूप में किया जाता है। यह लगातार और हर जगह क्यों नहीं किया जाता है? अंतिम परत की विशेषताएं आम तौर पर इतनी भेदभावपूर्ण होती हैं कि एसवीएम के रूप में परिष्कृत ब्लैक बॉक्स की आवश्यकता नहीं होती है, एक साधारण लॉजिस्टिक प्रतिगमन काम करता है। यह मेरी चीजों की दृष्टि है।
व्लादिस्लाव्स डोवलगेक्स 16
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.