Naive Bayes बनाम आवर्तक तंत्रिका नेटवर्क (LSTM) के बीच अंतर


8

मैं पाठ पर भावुक विश्लेषण करना चाहता हूं, कई लेखों के माध्यम से चला गया हूं, उनमें से कुछ "Naive Bayes" का उपयोग कर रहे हैं और अन्य "Recurrent Neural Network (LSTM)" हैं , दूसरी तरफ मैंने भावना विश्लेषण के लिए एक पायथन लाइब्रेरी देखी है जो nltk है। यह "Naive Bayes" का उपयोग करता है क्या कोई यह बता सकता है कि दोनों के उपयोग में क्या अंतर है?

मैं भी इस पद से गुज़रा हूं, लेकिन उन दोनों के बारे में स्पष्ट नहीं है।

बेय्स नेटवर्क, न्यूरल नेटवर्क, डिसीजन ट्री और पेट्री नेट के बीच अंतर

जवाबों:


14

Naive Bayes और Recurrent Neural Networks के बीच अंतर पर

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

दो मॉडल जो इस कार्य को हल कर सकते हैं वे हैं नैवे बेस क्लासिफायर और रिकरंट न्यूरल नेटवर्क।

Naive Bayes
पाठ विश्लेषण के लिए इस वर्गीकरण का उपयोग करने के लिए, आप आमतौर पर पाठ ( शब्दों का बैग + tf-tdf ) को पूर्व-प्रक्रिया करते हैं ताकि आप इसे संख्यात्मक मान वाले वैक्टर में बदल सकें। ये वैक्टर एनबी मॉडल के इनपुट के रूप में काम करते हैं।
यह क्लासिफायर मानता है कि आपकी विशेषताएं (हमारे द्वारा उत्पादित वैक्टर की विशेषताएं) एक दूसरे से स्वतंत्र हैं। जब यह धारणा होती है, तो यह एक बहुत मजबूत क्लासिफायरियर है जिसे काम करने के लिए बहुत कम डेटा की आवश्यकता होती है।

आवर्तक तंत्रिका नेटवर्क
ये वे नेटवर्क हैं जो आपके डेटा को क्रमिक रूप से पढ़ते हैं, जबकि उन्होंने जो पहले पढ़ा है उसकी "मेमोरी" रखते हैं। ये वास्तव में उपयोगी होते हैं जब पाठ के साथ काम करते हैं क्योंकि सहसंबंध शब्दों के बीच होता है।

दो मॉडल (एनबी और आरएनएन) इस वर्गीकरण को करने के प्रयास में बहुत भिन्न होते हैं:

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

  • दूसरी ओर आरएनएन एक भेदभावपूर्ण मॉडल है। यह पता लगाने की कोशिश करता है कि वर्गीकरण करने के लिए आपके सकारात्मक और नकारात्मक उदाहरणों के बीच क्या अंतर हैं।

मैं सुझाव देता हूं कि अगर आप मायर सीखना चाहते हैं तो "भेदभावपूर्ण बनाम जेनरेटिव एल्गोरिदम" को उद्धृत करें

जबकि एनबी दशकों से लोकप्रिय है, आरएनएन उच्च कम्प्यूटेशनल संसाधनों की आवश्यकता के कारण पिछले एक दशक में आवेदन खोजने लगे हैं। RNN का अधिकांश समय समर्पित GPUs (जो CPU की तुलना में बहुत तेज़ गणना करते हैं) पर प्रशिक्षित किया जाता है।

tl; dr: वे एक ही कार्य को हल करने के दो बहुत अलग तरीके हैं

पुस्तकालय

क्योंकि दो एल्गोरिदम बहुत लोकप्रिय हैं, उनके पास कई पुस्तकालयों में कार्यान्वयन है। जब से आपने इसका उल्लेख किया है, मैं कुछ अजगर पुस्तकालयों का नाम लूंगा:

NB के लिए:

  • scikit-learn : पाइथन लाइब्रेरी का उपयोग करना बहुत आसान है, जिसमें कई मशीन लर्निंग एल्गोरिदम के कार्यान्वयन शामिल हैं, जिसमें Naive Bayes शामिल हैं।

  • NaiveBayes : इसका इस्तेमाल नहीं किया है, लेकिन मुझे लगता है कि यह नाम से प्रासंगिक न्याय है।

क्योंकि RNN को एक गहरी शिक्षण एल्गोरिथ्म माना जाता है , उनके पास सभी प्रमुख गहरी शिक्षण पुस्तकालयों में कार्यान्वयन हैं:

  • TensorFlow : इस समय सबसे लोकप्रिय डीएल लाइब्रेरी है। Google द्वारा प्रकाशित और अनुरक्षित।

  • थीनो : मॉन्ट्रियल विश्वविद्यालय द्वारा प्रकाशित, पुराने, tf के समान पुस्तकालय।

  • keras : Tf और theano के लिए आवरण। बहुत आसान। यदि आप कभी भी RNN को लागू करना चाहते हैं तो मैं आपको क्या उपयोग करने का सुझाव देता हूं।

  • कैफ : डीएल लाइब्रेरी यूसी बर्कले द्वारा प्रकाशित। अजगर एपीआई है।

यदि आपके पास CUDA सक्षम NVIDIA GPU है, तो उपरोक्त सभी GPU सहायता प्रदान करते हैं।

पायथन का एनएलटीके मुख्य रूप से नेचुरल लैंग्वेज प्रोसेसिंग (स्टेमिंग, टोकन, पार्ट-ऑफ-स्पीच टैगिंग) के लिए एक लाइब्रेरी है । हालांकि इसमें सेंटीमेंट पैकेज है, यह फोकस बिंदु नहीं है। मुझे पूरा यकीन है कि NLTK सेंटीमेंट विश्लेषण के लिए NB का उपयोग करता है।

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