Naive Bayes का कार्यान्वयन


10

मैं लाप्लासियन स्मूथिंग के साथ पाठ वर्गीकरण के लिए एक Naive Bayes एल्गोरिथ्म लागू कर रहा हूं। मेरे पास जो समस्या है, वह यह है कि संभावना शून्य के पास है क्योंकि मैं कई छोटे अंशों को गुणा कर रहा हूं। इसलिए, संभावना अंततः शून्य उपज देती है। ऐसा इसलिए है क्योंकि दस्तावेजों और प्रशिक्षण सेटों के भीतर कई शब्द हैं।

इस वजह से, मैं ग्रंथों को वर्गीकृत करने में सक्षम नहीं हूं। क्या कोई रास्ता है जिससे मैं इस समस्या से घिर सकता हूँ? क्या मैं अपने कार्यान्वयन में कुछ गलत कर रहा हूं?


... आप फ़्लोटिंग-पॉइंट अंकगणित से बच सकते हैं।

msdn.microsoft.com/en-us/magazine/jj891056.aspx आपको यहां एक आसान उत्तर मिल गया है।
रोशन मेहता

जवाबों:


14

इस अंडरफ्लो से बचने के लिए सामान्य ट्रिक को लॉगरिदम के साथ गणना करना है, पहचान

लॉगΠमैं=1nपीमैं=Σमैं=1nलॉगपीमैं

पीपी0[1,2)एक्सपी=पी02एक्स


2
इस संदर्भ में लॉगसम्यूक्स ट्रिक को नोट करना भी उपयोगी है: en.wikipedia.org/wiki/LogSumExp
Bitwise
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.