2010-03-02 11 views
6

क्या कोई बेयसियन नेटवर्क के लिए (लूपी) विश्वास के लिए योग-उत्पाद एल्गोरिदम के एक कार्य कोड उदाहरण के बारे में जानता है? मैंने धरती को दो दिनों तक खराब कर दिया है लेकिन मुझे बहुत भाग्य नहीं मिला है। मैं इस भाषा में उदासीन हूं किलूपी विश्वास प्रचार कोड उदाहरण

इस विषय पर मिले सभी दस्तावेज आर्केन और बेतुका अस्पष्ट गणित से भरे हुए हैं। यह एक कठिन एल्गोरिदम की तरह प्रतीत नहीं होता है, लेकिन मुझे यकीन नहीं है क्योंकि कुछ मुश्किल बिट्स इतने ज्यादा चमकदार हैं।

वैकल्पिक रूप से, वास्तविक उदाहरण (परिवर्तनीय नामों के बजाय) का उपयोग करने वाला एक उदाहरण शायद चाल भी करेगा।

उत्तर

2

मैंने बेयसियन नेटवर्क के लिए पर्ल के विश्वास प्रचार एल्गोरिदम लागू किया है। यह लूप प्रचार का भी समर्थन करता है, क्योंकि जब यह सूचित विश्वास मूल्य 0.001 के भीतर परिवर्तित हो जाता है तो यह समाप्त हो जाएगा।

सभी कोड जावा में है, और यह मेरी Google code pen-ui svn repo.

में पाया जा सकता यह स्पष्ट रूप से एक कारक ग्राफ नहीं है।

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

2

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

मैं अभी भी एक छोटे संख्यात्मक उदाहरण की तलाश में हूं, इसलिए यदि आपको कोई ऐसा लगता है तो मुझे बहुत दिलचस्पी होगी।

इस बीच आप libDAI पर एक ओपन सोर्स लाइब्रेरी देख सकते हैं जो बीपी लागू करता है।

+0

पुस्तक: नीपोलिटन द्वारा "लर्निंग बेयसियन नेटवर्क" एल्गोरिदम के दो संस्करण देता है। कोई विवरण नहीं छोड़ा गया है, हालांकि इसमें कुछ क्रूर गणित वाक्यविन्यास है। वह एल्गोरिदम चलाने पर क्या होता है इसके बारे में * जटिल * संख्यात्मक उदाहरण भी देता है। यदि आप चाहते हैं तो मैं आपको पीडीएफ भेज सकता हूं (700 पृष्ठों से अधिक, ब्लीह)। यह स्पष्ट रूप से लूप प्रचार को संबोधित नहीं करता है, लेकिन ऐसा कुछ है जिसे मैं शायद समझ सकता हूं। यहां अच्छे संसाधन: http://www.mcs.vuw.ac.nz/courses/COMP421/2008T1/documents/marcus/ मैं इसे स्वयं (जावा में) कार्यान्वित कर रहा हूं, इसलिए जब यह काम करता है तो मैं कुछ पोस्ट करूंगा और डीबग किया गया है –

+0

इसके अलावा, एक पायथन कार्यान्वयन के लिए http://www.mcs.vuw.ac.nz/courses/COMP421/2008T1/code/GM/markov.py देखें। हालांकि मुझे विश्वास है कि यह छोटी है, और मुझे समझ में नहीं आता है। –

+1

लाइब्रेरी से नीपोलिटन द्वारा पुस्तक मिली। कुछ अच्छे उदाहरण होने के लिए वाकई अच्छा लगा! पारितोषिक के लिए धन्यवाद। दुर्भाग्यवश यह बेयसियन नेटवर्क, मार्कोव जाल और कारक ग्राफ के संबंधों की व्याख्या नहीं करता है जो कि लिंक होने लगते हैं, मैं वर्तमान में लूप बीपी को पूरी तरह से समझने के लिए अनुपलब्ध हूं। कुछ अन्य संसाधन जो मुझे कुछ हद तक उपयोगी पाया गया: http://www.stanford.edu/~montanar/BOOK/partD.pdf http://www.kyb.tuebingen.mpg.de/bs/people/jorism /articles/thesis-mooij-hyperref.pdf – dudemeister

0

मैं क्लोजर में एक कारक ग्राफ/विश्वास प्रचार एल्गोरिदम लागू कर रहा हूं, लेकिन कोड अभी तक तैयार नहीं है। (मेरे कोड भी प्रोपोज़िशनल तर्क को पहले क्रम/उच्च क्रम तर्क से बायेसियन नेटवर्क लिफ्टों।)

वैसे भी, मैं कुछ सुझाव साझा करना चाहते हैं:,

  1. सबसे पहले ध्यान दें कि हाशिये हालांकि संक्षेप के रूप में दर्शाया गया है, इसकी संपत्ति संक्षेप से अलग हैं। विशेष रूप से, यह संभाव्यता तालिकाओं (संभावित के रूप में जाना जाता है) के उत्पादों के साथ आता है। यही कारण है कि गणितीय व्युत्पन्न में, रकम और उत्पादों का आदान-प्रदान किया जा सकता है, जबकि सामान्य अंकगणित में वे नहीं कर सकते हैं।

  2. ध्यान दें कि पर्ल के एल्गोरिदम में, अपस्ट्रीम और डाउनस्ट्रीम जाने वाले संदेश अलग-अलग होते हैं - संभावनाएं ऊपर की ओर जाती हैं और संभावनाएं नीचे की ओर जाती हैं। (यही वजह है कि बेयस का शासन विश्वास प्रचार के व्युत्पन्न में काम करता है)।

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

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