एक वर्ग एसवीएम बनाम अनुकरणीय एसवीएम


16

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

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

जवाबों:


20

(आप पहले नीचे "तालिका" देखना चाह सकते हैं)

चलो "क्लासिक" समर्थन वेक्टर मशीनों के साथ शुरू करते हैं। ये दो श्रेणियों के बीच भेदभाव करना सीखते हैं। आप श्रेणी ए, श्रेणी बी के कुछ उदाहरण एकत्र करते हैं और उन दोनों को एसवीएम प्रशिक्षण एल्गोरिथ्म में पास करते हैं, जो लाइन / प्लेन / हाइपरप्लेन को ढूंढता है जो ए को बी से अलग करता है। यह काम करता है - और यह अक्सर काफी अच्छा काम करता है - जब आप अच्छी तरह से परिभाषित और पारस्परिक रूप से अनन्य वर्गों के बीच अंतर करना चाहते हैं: पुरुष बनाम महिला, वर्णमाला के अक्षर, और इसी तरह।

हालाँकि, मान लीजिए कि आप इसके बजाय "ए" की पहचान करना चाहते हैं। आप इसे एक वर्गीकरण समस्या के रूप में मान सकते हैं: मैं "ए" को "न-ए" से कैसे अलग करता हूं। कुत्तों के चित्रों से मिलकर एक प्रशिक्षण सेट को इकट्ठा करना काफी आसान है, लेकिन कुत्तों के नहीं आपके प्रशिक्षण सेट में क्या जाना चाहिए? चूंकि अनंत संख्या में चीजें हैं जो कुत्ते नहीं हैं, इसलिए आपके पास सभी गैर-कैनाइन चीजों के व्यापक और अभी तक प्रतिनिधि प्रशिक्षण सेट का निर्माण करने में मुश्किल समय हो सकता है। इसके बजाय, आप एक वर्गीय क्लासिफायरफ़ायर का उपयोग करने पर विचार कर सकते हैं। पारंपरिक, दो-श्रेणी का क्लासिफायर एक (हाइपर) प्लेन पाता है, जो A को B. से अलग करता है। वन-क्लास SVM इसके बजाय लाइन / प्लेन / हाइपरप्लेन ढूंढता है, जो सभी इन-क्लास पॉइंट्स ("A" s) को मूल से अलग करता है। ;

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

सारांश में, मुख्य अंतर हैं:

प्रशिक्षण जानकारी

  • दो वर्ग एसवीएम: सकारात्मक और नकारात्मक उदाहरण
  • एक वर्ग एसवीएम: केवल सकारात्मक उदाहरण
  • एसवीएम "सिस्टम" को इकट्ठा करें: सकारात्मक और नकारात्मक उदाहरण। प्रत्येक सबयूनिट को एक सकारात्मक उदाहरण और कई नकारात्मक उदाहरणों पर प्रशिक्षित किया जाता है।

मशीनों की संख्या

  • दो वर्ग एसवीएम: एक
  • एक वर्ग एसवीएम: एक
  • एसवीएम "सिस्टम" को इकट्ठा करें: कई (सकारात्मक उदाहरण के लिए एक सबयूनिट मशीन)

प्रति वर्ग (प्रति मशीन) उदाहरण

  • दो वर्ग एसवीएम: कई / कई
  • एक वर्ग एसवीएम: कई / एक (मूल में तय)
  • एसवीएम "सिस्टम" को इकट्ठा करें: कई / कई
  • एसवीएम "सबयूनिट" को इकट्ठा करें: एक / कई

प्रोसेसिंग के बाद

  • दो वर्ग एसवीएम: आवश्यक नहीं
  • एक वर्ग एसवीएम: आवश्यक नहीं है
  • एसवीएम को जोड़ना: प्रत्येक एसवीएम के आउटपुट को क्लास-स्तरीय भविष्यवाणी में फ्यूज करने की आवश्यकता।

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


महान और व्यापक उत्तर के लिए धन्यवाद। बस स्पष्ट होने के लिए, कुछ स्थानों पर आप वास्तव में एक्समप्लार एसवीएम के "एनसेंबल" का मतलब रखते हैं, लेकिन दूसरों में, बस "एग्जम्पलर" एसवीएम? मुझे लगता है कि निष्पक्ष होना चाहिए, या तो (1) एक SINGLE OSVM के साथ SINGLE ESVM, या (2) ESVMs के ENSEMBLE के साथ OSVMs का ENSEMBLE होना चाहिए।
bjou

मुझे आशा है कि यह भी विषय से यह पूछने के लिए नहीं है कि यह कई वर्गों के लिए कितना सामान्य है? अगर मेरे पास बिल्लियाँ, कुत्ते, और पक्षी हैं, तो क्या इससे एस्वेम को फिडो के लिए एक "एलिमेंट" एसवीएम की आवश्यकता होती है? प्रत्येक कैटिगरी के लिए एसवीएम और फ़िडो के लिए एक "एलिमेंट" एसवीएम? यदि मेरे पास 3 श्रेणियों में से प्रत्येक के लिए 10 डेटा पॉइंट्स हैं, तो इसका मतलब होगा कि मेरे पास 20 तत्व SVM का "डॉग" है या 200 तत्वों से मिलकर बना हुआ पहनावा है? क्या होगा अगर मेरे पास 300 डेटा पॉइंट्स और 20 डाइमेंशन्स, या 50k डेटा पॉइंट्स और 50k डाइमेंशन्स हैं। यदि मैं एसवीएम का एक यादृच्छिक वन बना रहा था, तो क्या मैं "डिमेनिटी के अभिशाप" के प्रभाव को कम करने के लिए यादृच्छिक सबसेट का उपयोग कर सकता हूं?
EngrStudent - मोनिका जूल

@bjou, मैं ईएसवीएम शब्दावली के साथ थोड़ा मैला था, इसलिए मैंने वापस जाकर इसे साफ किया। मुझे लगता है कि आप OSVM की तरह ESVM प्रणाली के "सबयूनिट" के बारे में सोच सकते हैं, सिवाय इसके कि समन्वय प्रणाली को फिर से केंद्रित किया गया है ताकि सकारात्मक उदाहरण मूल में निहित हो।
मैट क्रुज

1
@EngrStudent, यह वास्तव में वास्तव में अच्छी तरह से सामान्यीकृत करता है। कागज में, वे पास्कल वीओसी कार्य का उपयोग करते हैं, जिसमें ~ 20 श्रेणियां हैं। हमारे पशु उदाहरण का विस्तार करने के लिए, आपके पास "फ़िडो" बनाम (सभी पक्षी, बिल्लियाँ, और मछली) के लिए एक सबयूनिट होगा, "रेक्स" बनाम सभी गैर-कुत्तों के लिए एक और सबयूनिट, और प्रत्येक कुत्ते के लिए। पक्षियों के लिए, आप "ट्वीटी" बनाम (सभी बिल्लियों, कुत्तों, मछलियों), "पोली" बनाम सभी गैर-पक्षियों और इतने पर प्रशिक्षित करेंगे। प्रत्येक बिल्ली और मछली उदाहरण के लिए एक सबयूनिट भी होगा, क्रमशः सभी गैर-बिल्लियों और गैर-मछली के खिलाफ प्रशिक्षित। वर्गों की संख्या की परवाह किए बिना, आप प्रति लेबल उदाहरण के साथ 1 एसवीएम समाप्त करते हैं।
मैट क्राउज

यह बूस्टिंग के चचेरे भाई की तरह लगता है (ग्रेडिएंट बूस्टेड पेड़ों के अर्थ में)। पहनावा, क्या यह आउटपुट त्रुटि भारित है, या समान रूप से भारित है?
EngrStudent -

2

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

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

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