बॉम-वेल्च एल्गोरिथ्म और विटर्बी प्रशिक्षण के बीच अंतर क्या हैं?


18

मैं वर्तमान में एक छवि विभाजन समस्या के लिए Viterbi प्रशिक्षण का उपयोग कर रहा हूं । मैं जानना चाहता था कि विटर्बी प्रशिक्षण के बजाय बॉम-वेल्च एल्गोरिथ्म का उपयोग करने के क्या फायदे / नुकसान हैं।


3
'विटर्बी ट्रेनिंग' से आपका क्या मतलब है?
बर्मगुलिज

2
मेरी समस्या में मेरे पास वास्तविक मूल्यवान डेटा की एक सरणी है जिसे मैं एक एचएमएम के रूप में मॉडलिंग कर रहा हूं (अज्ञात मापदंडों के साथ प्रत्येक से कई घनत्व कार्यों का एक क्रमिक रूप से मिश्रण)। अभी के लिए मुझे लगता है कि मुझे पता है कि राज्य संक्रमण संभाव्यता है। Viterbi Trainig से मेरा मतलब निम्नलिखित एल्गोरिथम है। 1) प्रत्येक डेटा पॉइंट (इनिशियलाइज़ेशन) पर एक राज्य को मनमाने ढंग से असाइन करें 2) घनत्व फ़ंक्शन पैरामीटर के MLE प्रदर्शन करें। 3) प्रत्येक बिंदु के लिए फिर से अनुमान लगाने की स्थिति (विटर्बी अल्ग के साथ किया जा सकता है)। 4) गोटो चरण 2 और दोहराएं जब तक कि मापदंड को पूरा नहीं किया जाता है।
डिजिटल गैल

1
स्टैक ओवरफ्लो पर एक ही सवाल पूछा गया था: viterbi प्रशिक्षण बनाम
बॉम

जवाबों:


21

बॉम-वेल्च एल्गोरिथ्म और विटर्बी एल्गोरिथम अलग-अलग चीजों की गणना करते हैं।

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

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

यदि आप अपने मॉडल को जानते हैं और सिर्फ अव्यक्त स्थिति चाहते हैं, तो बॉम-वेल्च एल्गोरिथ्म का उपयोग करने का कोई कारण नहीं है। यदि आप अपने मॉडल को नहीं जानते हैं, तो आप Viterbi एल्गोरिथ्म का उपयोग नहीं कर सकते हैं।

जोड़ने के लिए संपादित: पीटर स्मिट की टिप्पणी देखें; नामकरण में कुछ ओवरलैप / अस्पष्टता है। "पैटर्न रिकॉग्निशन एंड इमेज एनालिसिस" (आईएसबीएन 978-3-540-40217-6, पीपी 845-857) में लुइस जेवियर रोड्रिग्ज और इनेस टॉरेस द्वारा एक अध्याय के आसपास कुछ पोकिंग ने मुझे प्रेरित किया, जिसमें गति बनाम सटीकता व्यापार-बंद की चर्चा है। दो एल्गोरिदम।

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

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


7
अगर मैं सही हूँ तो आप Viterbi प्रशिक्षण और Viterbi डिकोडिंग को मिलाएँ।
पीटर स्मिट

1
आप सही हे। मुझे पता नहीं था कि एक ऐसी प्रक्रिया थी जो केवल संक्रमण संभावनाओं की गणना करने के लिए Viterbi एल्गोरिथ्म का उपयोग करती थी। यह दिखता है - आगे पढ़ने पर - जैसे असतत समय / असतत राज्य एचएमएम विश्लेषण के बीच नामकरण का कुछ ओवरलैप है, और गौसियन मिश्रण वितरण का उपयोग करके समय / निरंतर राज्य विश्लेषण को असतत करता है। मेरा जवाब DTDS HMM सेटअप से बात करता है, न कि मिश्रण मॉडल सेटअप से।
रिच

@Rich: क्या आप मुझे Viterbi प्रशिक्षण पर कुछ सुलभ सामग्री (जैसे Rabiner के मूल HMM ट्यूटोरियल) की ओर इशारा कर सकते हैं?
याकूब

4
@ जैकोब विटर्बी प्रशिक्षण सेग्मेंटल के-मीन्स नाम से भी जाता है, इस पेपर को जुआंग और राबिनर द्वारा देखें ।
ऑल्टो

1
@Anoldmaninthesea। युगों के बीच संभावना को देखते हुए अभिसरण का आकलन करने का सामान्य तरीका है (संभावना को हमेशा प्रत्येक युग में बढ़ाना चाहिए और तब रुकना चाहिए जब आप स्थानीय मैक्सीमा में पहुंच गए हों)। ईएम के दौरान उपयोग किए जाने वाले डेटा की संभावना की निगरानी के द्वारा आप जो दूसरी चीज कर सकते हैं वह है।
ऑल्टो

0

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

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