2012-04-25 10 views
43

मैं विभिन्न डेटा खनन तकनीकों के बारे में कुछ शोध कर रहा हूं और कुछ ऐसी चीज में आया जिसे मैं समझ नहीं पाया। यदि किसी के पास कोई विचार है तो यह बहुत अच्छा होगा।निर्णय पेड़ बनाम बेवकूफ बेयस वर्गीकृत

जिसमें मामलों में एक निर्णय पेड़ और अन्य मामलों में एक अनुभवहीन Bayes वर्गीकारक उपयोग करने के लिए बेहतर है?

कुछ मामलों में उनमें से एक का उपयोग क्यों करें? और दूसरे अलग-अलग मामलों में?

किसी को भी कुछ स्पष्टीकरण या इस बारे में संदर्भ हो (, अपनी कार्यक्षमता को देखकर एल्गोरिथ्म पर नहीं करके)?

+1

यह सवाल बंद हो गया लगता है -topic क्योंकि यह आंकड़े – finnw

+3

के बारे में है, मैं इस प्रश्न को ऑफ-विषय के रूप में बंद करने के लिए मतदान कर रहा हूं क्योंकि यह datascience.stackexchange.com – jopasserat

उत्तर

126

निर्णय पेड़ बहुत लचीला समझने में आसान, और डिबग करने के लिए आसान कर रहे हैं। वे वर्गीकरण समस्याओं और प्रतिगमन समस्याओं के साथ काम करेंगे। तो यदि आप एक लाल मूल्य, लाल, हरा, ऊपर, नीचे) की भविष्यवाणी करने की कोशिश कर रहे हैं या यदि आप 2.9, 3.4 आदि जैसे निरंतर मूल्य की भविष्यवाणी करने की कोशिश कर रहे हैं तो निर्णय पेड़ दोनों समस्याओं को संभालेगा। संभवत: निर्णय पेड़ के बारे में सबसे अच्छी चीजों में से एक है कि उन्हें केवल डेटा की एक तालिका की आवश्यकता है और वे उस डेटा से सीधे क्लासिफायरफायर तैयार किए बिना किसी भी आगे के डिजाइन के काम की आवश्यकता के बिना। कुछ डिग्री गुणों के लिए जो कोई फर्क नहीं पड़ता है उन्हें विभाजन के रूप में नहीं चुना जाएगा और अंततः उन्हें छीन लिया जाएगा, इसलिए यह बकवास का बहुत सहनशील है। इसे शुरू करने के लिए इसे सेट करें और इसे भूल जाएं।

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

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

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

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

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

कुछ स्रोत:

कार्ट आधारित निर्णय पेड़ पर मैनुअल। इस पुस्तक का कार्ट एल्गोरिथ्म आदि http://www.amazon.com/Classification-Regression-Wadsworth-Statistics-Probability/dp/0412048418

कार्ट एल्गोरिदम के https://www.youtube.com/watch?v=p17C9q2M00Q

तुलना करने के लिए एक विनम्र परिचय को शामिल किया गया, लेकिन यह भी निर्णय वृक्ष, वजन, लापता मूल्यों, किराए की विभाजन की चर्चा, बढ़ाने, - ध्यान दें कि KNN, निर्णय पेड़, सी 4.5, और एसवीएम अधिकांश परीक्षणों पर काफी अच्छा प्रदर्शन करते हैं। http://www4.ncsu.edu/~arezaei2/paper/JCIT4-184028_Camera%20Ready.pdf

एल्गोरिदम का एक अन्य तुलना - बढ़ाया निर्णय पेड़ों और यादृच्छिक शीर्ष बीच में KNN साथ सूची: http://www.cs.cornell.edu/~caruana/ctp/ct.papers/caruana.icml06.pdf

विभिन्न तकनीकों के नीचे एक और अच्छा रन: http://www.quora.com/What-are-the-advantages-of-different-classification-algorithms

+9

से अधिक है, इसे लिखने के लिए समय निकालने के लिए धन्यवाद। बिंदु के लिए साफ़ और सीधे। – Youssef

+8

पाठकों को सावधान रहना चाहिए --- इनमें से कुछ सही नहीं है। उदाहरण के लिए, टैब्यूलर डेटा से एक बेवकूफ बेयस मॉडल बनाने के लिए यह पूरी तरह से, संभवतः संभव है। मैंने पिछले हफ्ते लगभग 20 मिनट में ऐसा किया था, और इससे पहले कई बार ऐसा किया है। केएनएन आम तौर पर सभी निर्णय पेड़ मॉडल, सामान्य रूप से, या यहां तक ​​कि नैवे बेयस को सामान्य रूप से निष्पादित नहीं करता है, हालांकि यह विशिष्ट डेटासेट के लिए हो सकता है। हालांकि, पोस्ट उपयोगी है क्योंकि आलसी छात्रों ने इसे तथ्य के रूप में लिया है, और यहां तक ​​कि इसे चोरी भी किया है। वे आसानी से पकड़े गए थे। +1। –

+0

मुझे स्पष्टीकरण देने की अनुमति दें, मैं यह नहीं कह रहा हूं कि टैब्यूलर डेटा से एक बेवकूफ बेयस (एनबी) मॉडल बनाना असंभव है, लेकिन एनबी में एक एल्गोरिदम शामिल नहीं है जो इसे टैब्यूलर डेटा खिलाता है और यह इससे एक बेवकूफ बेयस मॉडल का निर्माण करेगा । जब आप कहते हैं कि आपने इसे बनाया है तो आपने टैबलेट डेटा बनाम देखने के लिए एक बेवकूफ बेयस मॉडल तैयार किया है। कंप्यूटर को टैब्यूलर डेटा से आपके लिए बेवकूफ बेयस मॉडल बनाने की इजाजत दी गई है। केएनएन हमेशा जीत नहीं पाता है, लेकिन कुछ मामलों में यह दोनों मॉडलों से बेहतर प्रदर्शन दिखाया गया है। मुझे लगता है कि मुझे भाषा को नरम बनाना चाहिए ताकि वहां कोई भ्रम न हो। – chubbsondubs

संबंधित मुद्दे