स्नातक बूस्टिंग पेड़ (GBM) और Adaboost के बीच अंतर की सहज व्याख्या


48

मैं GBM और Adaboost के बीच के अंतरों को समझने की कोशिश कर रहा हूँ।

ये वही हैं जिन्हें मैंने अब तक समझा है:

  • दोनों बूस्टिंग एल्गोरिदम हैं, जो पिछले मॉडल की त्रुटियों से सीखते हैं और अंत में मॉडल का भारित योग बनाते हैं।
  • GBM और Adaboost अपने नुकसान कार्यों को छोड़कर काफी समान हैं।

लेकिन फिर भी मेरे लिए उनके बीच मतभेद का एक विचार पकड़ना मुश्किल है। क्या कोई मुझे सहज स्पष्टीकरण दे सकता है?

जवाबों:


34

मैंने पाया कि यह परिचय कुछ सहज स्पष्टीकरण प्रदान कर सकता है।

  • ग्रैडिएंट बूस्टिंग में, 'कमियों' (मौजूदा कमजोर शिक्षार्थियों की) को ग्रेडिएंट द्वारा पहचाना जाता है
  • Adaboost में, 'कमियों' की पहचान उच्च वजन वाले डेटा बिंदुओं द्वारा की जाती है

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

  1. इन्वेंट एडबॉस्ट, पहला सफल बूस्टिंग एल्गोरिथ्म [फ्रायड एट अल।, 1996, फ्रायंड और शेपायर, 1997]
  2. Adaboost को एक विशेष नुकसान फ़ंक्शन के साथ ढाल वंश के रूप में तैयार करें [ब्रेमेन एट अल।, 1998, ब्रेमेन, 1999
  3. विभिन्न प्रकार के नुकसान कार्यों को संभालने के लिए ग्रैडिएस्ट बूस्टिंग को एडबाओस्ट को सामान्य करें [फ्रीडमैन एट अल, 2000, फ्रीडमैन, 2001]।

11

AdaBoost एल्गोरिदम की एक सहज व्याख्या

मुझे निम्नलिखित बिंदु के दृष्टांत के साथ @ रान्डेल के उत्कृष्ट उत्तर का निर्माण करने दें


  • Adaboost में, 'कमियों' की पहचान उच्च वजन वाले डेटा बिंदुओं द्वारा की जाती है

AdaBoost फिर से शुरू

चलो कमजोर वर्ग के अनुक्रम का क्रम हो, हमारा उद्देश्य निम्नलिखित का निर्माण करना है:Gm(x) m=1,2,...,M

G(x)=sign(α1G1(x)+α2G2(x)+...αMGM(x))=sign(m=1MαmGm(x))
  • अंतिम भविष्यवाणी एक भारित बहुसंख्यक वोट के माध्यम से सभी वर्गीकरणकर्ताओं की भविष्यवाणियों का एक संयोजन है

  • गुणांक को बूस्टिंग एल्गोरिथ्म द्वारा गणना की जाती है, और प्रत्येक संबंधित के योगदान का वजन होता है । प्रभाव अनुक्रम में अधिक सटीक classifiers को उच्च प्रभाव देने के लिए है।αmGm(x)

  • प्रत्येक बूस्टिंग स्टेप पर, प्रत्येक प्रशिक्षण अवलोकन के लिए को लागू करके डेटा को संशोधित किया जाता है । कदम जो अवलोकन पहले गलत थे , उनके वजन में वृद्धि हुई हैw1,w2,...,wNm
  • ध्यान दें कि पहले चरण में का वजन एक समान रूप सेm=1wi=1/N

एक खिलौना उदाहरण पर AdaBoost

खिलौना डेटा सेट पर विचार करें जिस पर मैंने निम्नलिखित सेटिंग्स के साथ AdaBoost लागू किया है: पुनरावृत्तियों की संख्या , कमजोर क्लासिफायर = गहराई 1 और 2 पत्ती नोड्स का निर्णय ट्री। लाल और नीले डेटा बिंदुओं के बीच की सीमा स्पष्ट रूप से गैर रेखीय है, फिर भी एल्गोरिथ्म बहुत अच्छी तरह से करता है।M=10

यहाँ छवि विवरण दर्ज करें

कमजोर शिक्षार्थियों और नमूना भार के अनुक्रम की कल्पना करना

पहले 6 कमजोर शिक्षार्थी नीचे दिखाए गए हैं। तितर बितर बिंदुओं को प्रत्येक पुनरावृत्ति पर उनके संबंधित नमूना वजन के अनुसार बढ़ाया जाता हैm=1,2...,6

यहाँ छवि विवरण दर्ज करें

पहला पुनरावृत्ति:

  • निर्णय सीमा बहुत सरल (रैखिक) है क्योंकि ये बुनने वाले हैं
  • सभी बिंदु समान आकार के होते हैं, जैसा कि अपेक्षित था
  • 6 नीले बिंदु लाल क्षेत्र में हैं और मिसकॉलिफाइड हैं

दूसरा पुनरावृत्ति:

  • रैखिक निर्णय सीमा बदल गई है
  • पहले के गलत नीले बिंदु अब बड़े (बड़े नमूना_वेट) हैं और निर्णय सीमा को प्रभावित किया है
  • 9 नीले बिंदु अब मिसकॉलिफ़ाइड हैं

10 पुनरावृत्तियों के बाद अंतिम परिणाम

सभी क्लासिफायर में विभिन्न स्थितियों में एक रैखिक निर्णय सीमा होती है। पहले 6 पुनरावृत्तियों के परिणाम गुणांक हैं:αm

((1.041, 0.875, 0.837, 0.781, 1.04, 0.938 ...

जैसा कि अपेक्षित था, पहले पुनरावृत्ति में सबसे बड़ा गुणांक है क्योंकि यह सबसे कम गलत वर्गीकरण के साथ एक है।

अगला कदम

ढाल बढ़ाने का सहज ज्ञान युक्त स्पष्टीकरण - पूरा होना

स्रोत और आगे पढ़ने:

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