बस कार्लोस्ड के अच्छे उत्तर में जोड़ने के लिए।
सुविधाओं है कि vowpal wabbit अलग बनाती है, और यह तेरा-सुविधा के लिए पैमाने पर करने के लिए अनुमति देते हैं में से कुछ (10) डेटा-आकार हैं:
ऑनलाइन वजन वेक्टर: vowpal wabbit मेमोरी weight-vector में रखता है जो अनिवार्य रूप से उस मॉडल के लिए वजन का वेक्टर है जो यह बना रहा है। यही वह है जिसे आप अपने प्रश्न में "राज्य" कहते हैं।
असीम डेटा का आकार: वजन वेक्टर के आकार की विशेषताएं (स्वतंत्र इनपुट चर) की संख्या के लिए आनुपातिक है, नहीं उदाहरण (उदाहरण) की संख्या। यह vowpal wabbit बनाता है, कई अन्य (गैर ऑनलाइन) शिक्षार्थियों, अंतरिक्ष में पैमाने के विपरीत। चूंकि इसे एक सामान्य बैच-शिक्षाकर्ता की तरह स्मृति में सभी डेटा लोड करने की आवश्यकता नहीं है, फिर भी यह डेटा-सेट से सीख सकता है जो स्मृति में फिट होने के लिए बहुत बड़े हैं।
क्लस्टर मोड: vowpal wabbit, एक क्लस्टर में एक से अधिक मेजबान पर चल नोड्स पर एक द्विआधारी पेड़ ग्राफ संरचना भव्य और रूट करने के लिए पत्तियों से all-reduce
कमी का उपयोग कर समर्थन करता है।
हैश चाल: vowpal wabbit को रोजगार क्या hashing trick कहा जाता है। सभी फीचर नाम murmurhash-32
का उपयोग करके एक पूर्णांक में डाले गए हैं। इसमें कई फायदे हैं: यह हैश-टेबल प्रबंधन और टकराव से निपटने के लिए बहुत आसान और समय-कुशल नहीं है, जबकि सुविधाओं को कभी-कभी टकराते हैं।यह (अभ्यास में) हजारों विशिष्ट सुविधाओं के साथ एक प्रशिक्षण सेट में फीचर टकराव की एक छोटी संख्या एक अंतर्निहित नियमितकरण अवधि जोड़ने के समान है। यह काउंटर-सहजता से, अक्सर इसे कम करने के बजाय मॉडल सटीकता में सुधार करता है। यह फीचर स्पेस के स्पर्सनेस (या घनत्व) के लिए भी अज्ञेयवादी है। आखिरकार, यह इनपुट फीचर नामों को मनमाने ढंग से स्ट्रिंग्स की अनुमति देता है, जो कि अधिकांश परंपरागत शिक्षार्थियों के विपरीत हैं जिन्हें फीचर नाम/आईडी दोनों की संख्या की आवश्यकता होती है) संख्यात्मक और बी) अद्वितीय।
समानता: vowpal wabbit पार्स चल रहा है और दो अलग-अलग धागे में शिक्षा, उसकी गति को आगे जोड़कर बहु-कोर सीपीयू दोहन करता है। यह vw
बनाता है जो डेटा को पढ़ने के रूप में तेज़ी से सीखने में सक्षम हो जाता है। यह पता चला है कि vw
में सबसे अधिक समर्थित एल्गोरिदम, सीखने की गति के बजाय, IO गति से उलझन में हैं।
checkpointing और वृद्धिशील सीखने: vowpal wabbit जब तुम सीखना आप डिस्क के लिए अपने मॉडल को बचाने के लिए, और फिर मॉडल लोड और जहां --save_resume
विकल्प के साथ दूर छोड़ दिया सीखने जारी रखने के लिए अनुमति देता है।
टेस्ट की तरह त्रुटि अनुमान: औसत नुकसान vowpal wabbit "के रूप में यह हो जाता है" (नमूना में से) अनदेखी पर हमेशा होता है डेटा (*) द्वारा गणना। यह पूर्व-नियोजित होल्ड-आउट से परेशान होने या क्रॉस सत्यापन करने की आवश्यकता को समाप्त करता है। प्रशिक्षण के दौरान आप जो त्रुटि दर देखते हैं वह 'टेस्ट-जैसी' है।
रैखिक मॉडल से परे: vowpal wabbit मैट्रिक्स गुणन (मोटे तौर पर विरल मैट्रिक्स SVD), अव्यक्त Dirichlet आवंटन (LDA), और अधिक सहित कई एल्गोरिदम, का समर्थन करता है। यह टर्म इंटरैक्शन (द्वि-रैखिक, वर्गिक, घन, और फीड-फॉरवर्ड सिग्मोइड न्यूरल-नेट की इकाइयों की निर्दिष्ट संख्या के साथ-साथ-फ्लाई पीढ़ी का भी समर्थन करता है), बहु-वर्ग वर्गीकरण (मूल प्रतिगमन और बाइनरी के अतिरिक्त वर्गीकरण), और अधिक।
गिटूब पर the official vw wiki में ट्यूटोरियल और कई उदाहरण हैं।
(*) एक अपवाद यह है कि यदि आप --passes N
विकल्प के साथ एकाधिक पास का उपयोग करते हैं।
यह निर्भर करता है कि * "[उच्च] कुल इनपुट डेटा आकार समय के साथ * * क्या है। यदि आप स्पष्ट सुविधाओं का उपयोग कर रहे हैं, तो यदि "अधिक डेटा" का अर्थ है "वर्गीकरण में अधिक स्तर", और विशेष रूप से यदि आप उच्च-आदेश इंटरैक्शन चालू करते हैं, तो आपको हैश टकराव मिलते हैं जो सटीकता को प्रभावित करते हैं, इसलिए हाँ आपको अंततः ' बी 'हैश बिटडेपथ, और इस प्रकार फीचर हैश के लिए आपकी मेमोरी आवश्यकता है। हालांकि वजन वेक्टर (जो स्मृति में रखा जाता है) अभी भी छोटा है। – smci