भोले बेसेसियन क्लासिफायर इतने अच्छे प्रदर्शन क्यों करते हैं?


38

वर्गीकरण समस्याओं के लिए Naive Bayes classifiers एक लोकप्रिय विकल्प है। इसके कई कारण हैं, जिनमें शामिल हैं:

  • "Zeitgeist" - लगभग दस साल पहले स्पैम फिल्टर की सफलता के बाद व्यापक जागरूकता
  • लिखना आसान है
  • क्लासिफायर मॉडल बनाने में तेज है
  • मॉडल के पुनर्निर्माण के बिना मॉडल को नए प्रशिक्षण डेटा के साथ संशोधित किया जा सकता है

हालांकि, वे 'भोले' हैं - यानी वे मानते हैं कि विशेषताएं स्वतंत्र हैं - यह अन्य क्लासिफायर जैसे कि अधिकतम एंट्रॉपी क्लासिफायर (जो गणना करने में धीमी हैं) के साथ इसके विपरीत है।

स्वतंत्रता की धारणा को आम तौर पर नहीं माना जा सकता है, और कई (अधिकांश?) मामलों में, स्पैम फ़िल्टर उदाहरण सहित, यह बस गलत है।

तो क्यों Naive Bayes Classifier अभी भी ऐसे अनुप्रयोगों में बहुत अच्छा प्रदर्शन करता है, भले ही सुविधाएँ एक दूसरे से स्वतंत्र न हों?

जवाबों:


23

यह कागज साबित होता है (मैं गणित का पालन नहीं कर सकता) कि बेयस न केवल तब अच्छा होता है जब सुविधाएँ स्वतंत्र हों, बल्कि यह भी कि जब एक दूसरे से सुविधाओं की निर्भरता सुविधाओं के बीच समान हो:

इस पत्र में, हम भोले बेयस के शानदार उत्तम दर्जे के performance प्रदर्शन पर एक उपन्यास विवरण प्रस्तुत करते हैं। हम बताते हैं कि, अनिवार्य रूप से, निर्भरता वितरण; यानी, नोड की स्थानीय निर्भरता प्रत्येक वर्ग में समान रूप से या असमान रूप से कैसे वितरित होती है, और सभी नोड्स की स्थानीय निर्भरताएं एक साथ कैसे काम करती हैं, लगातार (एक निश्चित क्लासी ation cation का समर्थन) या असंगत (एक दूसरे को रद्द करना), एक महत्वपूर्ण भूमिका निभाता है। इसलिए, कोई फर्क नहीं पड़ता कि विशेषताओं के बीच निर्भरता कितनी मजबूत है, भोले बे अभी भी इष्टतम हो सकते हैं यदि निर्भरता कक्षाओं में समान रूप से वितरित करते हैं, या यदि निर्भरता एक दूसरे को रद्द करती है


1
गुणात्मक रूप से, यह समझ में आता है। आश्रित सुविधाओं का परिणाम भार में होता है - इसलिए एक समान वितरण या एक वितरण जो रद्द करता है, इस भार को रद्द कर देगा। हालांकि, "लोप-साइडेड" निर्भरताएं शायद अभी भी खराब प्रदर्शन करने वाली हैं? मैं स्पैम उदाहरण के लिए अनुमान लगाता हूं, हमें + स्पैम सुविधाओं के लिए बहुत अधिक निर्भरता की उम्मीद करनी चाहिए, लेकिन सामान्य मामले में यह आवश्यक नहीं है। हालाँकि, किसी व्यक्ति को किसी विशिष्ट विषय पर बहुत सारे वैध ईमेल प्राप्त हो सकते हैं, इसलिए उस मामले में बहुत सारी निर्भर सुविधाएँ होंगी - जो + स्पैम सुविधाओं को संतुलित करेंगी।
21

3
मैं इस पत्र की भी सिफारिश करता हूं: cs.stanford.edu/people/ang/papers/…
Dov

25

अधिकांश मशीन लर्निंग समस्याएं आसान हैं!

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

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

कठिन nonlinear समस्याओं के तरीकों के लिए जो nonlinearites से निपट सकते हैं, निश्चित रूप से आवश्यक हैं। लेकिन यह भी एक अपेक्षाकृत सरल कार्य हो सकता है जब कर्नेल तरीके नियोजित होते हैं। यह सवाल अक्सर "मैं अपने डेटा के लिए एक प्रभावी कर्नेल फ़ंक्शन कैसे डिज़ाइन करता हूं" के बजाय "मुझे किस क्लासिफायर का उपयोग करना चाहिए" बन जाता है।


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

1
हाँ, यह सापेक्ष है, और भी बहुत सारी समस्याएं हैं, इसलिए वहाँ अभी भी बहुत सारे कठिन हैं! और मुझे लगता है कि एमएल और मानव सीखने के बीच की सीमा हमेशा धुंधली होती है ... यदि आप कुछ सुपर-फैंसी संभावनावादी मॉडल बना रहे हैं तो आप वही काम कर रहे हैं। अच्छा पुराना एनएफएलटी हमें बताता है कि एक विधि सभी समस्याओं को हल नहीं कर सकती है, हालांकि उस पद्धति को जटिल है, इसलिए हमें हमेशा मनुष्यों को मॉडल / गुठली / एल्गोरिदम डिजाइन करने की आवश्यकता होगी या आपके डेटा से अधिक प्राप्त करने के लिए जो भी आवश्यक हो।
tdc

सच - निश्चित रूप से एक धुंधली रेखा!
winwaed

1
क्यों होता है पतन? टिप्पणी करने के लिए परवाह है?
tdc

7

विभाजन वर्गीकरण के साधनों में बड़े पैमाने पर Naive Bayesian क्लासिफायर का उपयोग करने के बाद, मेरा अनुभव NBC को दिखाने वाले प्रकाशित पत्रों के अनुरूप है, जो कि रेखीय विभेदक और CART / CHAID की सटीकता में तुलनीय होने के साथ ही जब सभी भविष्यवक्ता चर उपलब्ध होते हैं।

(सटीकता से दोनों "हिट रेट" को सही समाधान की भविष्यवाणी करने में सबसे अधिक संभावना है, साथ ही अंशांकन, जिसका अर्थ है, कहते हैं, 75% सदस्यता का अनुमान 70% -80% मामलों में सही है।)

मेरा दो सेंट है कि एनबीसी इतनी अच्छी तरह से काम करता है:

  • भविष्यवक्ता चर के बीच अंतर-सहसंबंध उतना मजबूत नहीं होता जितना कि कोई सोच सकता है (0.05 से 0.15 के पारस्परिक सूचना स्कोर विशिष्ट हैं)
  • एनबीसी असतत पॉलीटोमस वैरिएबल्स को अच्छी तरह से हैंडल कर सकता है, न कि हमें उन्हें गंभीर रूप से द्विगुणित करने या कार्डिनल के रूप में ऑर्डिनल वैरिएबल का इलाज करने की आवश्यकता है।
  • NBC एक साथ सभी चर का उपयोग करता है जबकि CART / CHAID कुछ ही उपयोग करता है

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

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