प्रत्याशा-अधिकतमकरण एल्गोरिथ्म

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



इतिहास
EM एल्गोरिथ्म को आर्थर डेम्पस्टर, नान लेयर्ड और डोनाल्ड रुबिन द्वारा 1977 के एक क्लासिक पेपर में समझाया गया और इसका नाम दिया गया था। उन्होंने बताया कि यह विधि पहले के लेखकों द्वारा "विशेष परिस्थितियों में कई बार प्रस्तावित" की गई थी। सेड्रिक स्मिथ द्वारा एलील आवृत्तियों का अनुमान लगाने के लिए जीन-गिनती विधि सबसे शुरुआती में से एक है। दूसरा प्रस्ताव 1958 में एचओ हार्टले और 1977 में हार्टले और हॉकिंग द्वारा दिया गया था, जिससे डेम्पस्टर-लेयर्ड-रुबिन पेपर में कई विचारों की उत्पत्ति हुई। 1977 में एस.के. एनजी, त्रियंबकम कृष्णन और जी.जे. मैकलाचलन द्वारा एक और उत्पत्ति हुई। हार्टले के विचारों को किसी भी समूहीकृत पृथक वितरण तक विस्तारित किया जा सकता है। पेर मार्टिन-लोफ और एंडर्स मार्टिन-लोफ के साथ उनके सहयोग के बाद, रोल्फ़ सुंडबर्ग ने अपनी थीसिस और कई पत्रों में घातीय परिवारों के लिए EM पद्धति का एक बहुत विस्तृत उपचार प्रकाशित किया था,      1977 में डेम्पस्टर-लेयर्ड-रुबिन पेपर ने विधि को सामान्यीकृत किया और समस्याओं के एक व्यापक वर्ग के लिए एक अभिसरण विश्लेषण का खाका तैयार किया। डेम्पस्टर-लेयर्ड-रुबिन पेपर ने EM पद्धति को सांख्यिकीय विश्लेषण के एक महत्वपूर्ण उपकरण के रूप में स्थापित किया। मेंग और वैन डायक (1997) भी देखें।

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

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

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

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

प्रतीक
सांख्यिकीय मॉडल को देखते हुए, जो देखे गए डेटा का एक सेट $$\mathbf{X}$$, न देखे गए अव्यक्त डेटा का एक सेट या लुप्त मान $$\mathbf{Z}$$ उत्पन्न करता है, और अज्ञात पैरामीटर $$\boldsymbol\theta$$ का एक वेक्टर, एक संभाविता फ़ंक्शन $$L(\boldsymbol\theta; \mathbf{X}, \mathbf{Z}) = p(\mathbf{X}, \mathbf{Z}\mid\boldsymbol\theta)$$ के साथ, अज्ञात पैरामीटर की अधिकतम संभाविता अनुमान (MLE) देखे गए डेटा की सीमांत संभाविता को अधिकतम करके निर्धारित किया जाता है


 * $$L(\boldsymbol\theta; \mathbf{X}) = p(\mathbf{X}\mid\boldsymbol\theta) = \int p(\mathbf{X},\mathbf{Z} \mid \boldsymbol\theta) \, d\mathbf{Z} = \int  p(\mathbf{X} \mid \mathbf{Z}, \boldsymbol\theta) p(\mathbf{Z} \mid \boldsymbol\theta) \, d\mathbf{Z} $$

हालाँकि, यह मात्रा प्रायः कठिन होती है क्योंकि $$\mathbf{Z}$$ का अवलोकन नहीं किया जाता है और $$\boldsymbol\theta$$ प्राप्त करने से पहले $$\mathbf{Z}$$ का वितरण अज्ञात है।

EM एल्गोरिदम
EM एल्गोरिदम इन दो चरणों को पुनरावृत्त रूप से लागू करके सीमांत संभाविता के MLE को ढूंढना चाहता है:
 * प्रत्याशा चरण (E चरण): $$Q(\boldsymbol\theta\mid\boldsymbol\theta^{(t)})$$परिभाषित करें log संभाविता फ़ंक्शन के प्रत्याशा मान $$\boldsymbol\theta$$ के रूप में, की वर्तमान सशर्त संभाव्यता वितरण के संबंध में $$\mathbf{Z}$$ दिया गया $$\mathbf{X}$$ और पैरामीटर $$\boldsymbol\theta^{(t)}$$ का वर्तमान अनुमान:
 * $$Q(\boldsymbol\theta\mid\boldsymbol\theta^{(t)}) = \operatorname{E}_{\mathbf{Z} \sim p(\cdot | \mathbf{X},\boldsymbol\theta^{(t)})}\left[ \log p (\mathbf{X},\mathbf{Z} | \boldsymbol\theta) \right] \,$$
 * अधिकतमकरण चरण (M चरण): इस मात्रा को अधिकतम करने वाले पैरामीटर ढूंढें:
 * $$\boldsymbol\theta^{(t+1)} = \underset{\boldsymbol\theta}{\operatorname{arg\,max}} \ Q(\boldsymbol\theta\mid\boldsymbol\theta^{(t)}) \, $$

अधिक संक्षेप में, हम इसे एक समीकरण के रूप में लिख सकते हैं:$$\boldsymbol\theta^{(t+1)} = \underset{\boldsymbol\theta}{\operatorname{arg\,max}} \operatorname{E}_{\mathbf{Z} \sim p(\cdot | \mathbf{X},\boldsymbol\theta^{(t)})}\left[ \log p (\mathbf{X},\mathbf{Z} | \boldsymbol\theta) \right] \, $$

चरों की व्याख्या
जिन विशिष्ट मॉडलों पर EM लागू किया जाता है $$\mathbf{Z}$$ समूहों के किसी एक समूह में सदस्यता को दर्शाने वाले एक गुप्त चर के रूप में: हालाँकि, EM को अन्य प्रकार के मॉडलों पर लागू करना संभव है।
 * 1) अवलोकित डेटा बिंदु $$\mathbf{X}$$ असतत यादृच्छिक चर (एक परिमित या गणनीय अनंत समुच्चय में मान लेना) या निरंतर यादृच्छिक चर (एक बेशुमार अनंत समुच्चय में मान लेना) हो सकता है। प्रत्येक डेटा बिंदु के साथ अवलोकनों का एक वेक्टर जुड़ा हो सकता है।
 * 2) अनुपलब्ध मान (उर्फ अव्यक्त चर) $$\mathbf{Z}$$ असतत यादृच्छिक चर होते हैं, जो निश्चित संख्या में मानों से तैयार किए जाते हैं, और प्रति प्रेक्षित इकाई में एक अव्यक्त चर होता है।
 * 3) पैरामीटर निरंतर हैं, और दो प्रकार के होते हैं: पैरामीटर जो सभी डेटा बिंदुओं से जुड़े होते हैं, और वे पैरामीटर जो एक अव्यक्त चर के विशिष्ट मान से जुड़े होते हैं (यानी, उन सभी डेटा बिंदुओं से जुड़े होते हैं जिनके संबंधित अव्यक्त चर का वह मान होता है)।

प्रेरणा इस प्रकार है. यदि पैरामीटर का मान $$\boldsymbol\theta$$ ज्ञात है, आमतौर पर अव्यक्त चर का मूल्य $$\mathbf{Z}$$ के सभी संभावित मानों पर log-संभाविता को अधिकतम करके पाया जा सकता है $$\mathbf{Z}$$, या तो बस बार-बार दोहराकर $$\mathbf{Z}$$ या छिपे छिपा हुआ मार्कोव मॉडल के लिए विटर्बी एल्गोरिदम जैसे एल्गोरिदम के माध्यम से। इसके विपरीत, यदि हम अव्यक्त चरों का मान जानते हैं $$\mathbf{Z}$$, हम पैरामीटर का अनुमान पा सकते हैं $$\boldsymbol\theta$$ काफी आसानी से, आम तौर पर देखे गए डेटा बिंदुओं को संबंधित अव्यक्त चर के मूल्य के अनुसार समूहीकृत करके और प्रत्येक समूह में बिंदुओं के मूल्यों, या मूल्यों के कुछ फ़ंक्शन का औसत निकालकर। यह एक पुनरावृत्त एल्गोरिथ्म का सुझाव देता है, उस स्थिति में जब दोनों $$\boldsymbol\theta$$ और $$\mathbf{Z}$$ अज्ञात हैं: जैसा कि अभी बताया गया है, एल्गोरिथ्म नीरस रूप से लागत फ़ंक्शन के स्थानीय न्यूनतम तक पहुंचता है।
 * 1) सबसे पहले, पैरामीटर्स $$\boldsymbol\theta$$ को इनिशियलाइज़ करें  कुछ यादृच्छिक मूल्यों के लिए है।
 * 2) प्रत्येक संभावित मान $$\mathbf{Z}$$ की संभाविता की गणना करें, $$\boldsymbol\theta$$ दिया गया है।
 * 3) फिर, अभी-अभी गणना किए गए मानों $$\mathbf{Z}$$ का उपयोग करें पैरामीटर $$\boldsymbol\theta$$ के लिए बेहतर अनुमान की गणना करना है।
 * 4) अभिसरण होने तक चरण 2 और 3 को दोहराएँ।

गुण
हालाँकि एक EM पुनरावृत्ति प्रेक्षित डेटा (यानी, सीमांत) संभाविता फ़ंक्शन को बढ़ाती है, लेकिन कोई प्रत्याभूति नहीं है कि अनुक्रम अधिकतम संभाविता अनुमानक में परिवर्तित हो जाता है। मल्टीमॉडल वितरण के लिए, इसका मतलब यह है कि एक EM एल्गोरिदम प्रारंभिक मूल्यों के आधार पर, देखे गए डेटा संभाविता फ़ंक्शन के स्थानीय अधिकतम में परिवर्तित हो सकता है। स्थानीय अधिकतम से बचने के लिए विभिन्न प्रकार के अनुमानी या मेटाह्यूरिस्टिक दृष्टिकोण मौजूद हैं, जैसे कि यादृच्छिक-पुनरारंभ पहाड़ी चढ़ाई (कई अलग-अलग यादृच्छिक प्रारंभिक अनुमानों $$\boldsymbol\theta^{(t)}$$ से शुरू करना, या सिम्युलेटेड एनीलिंग विधियों को लागू करना)।

EM विशेष रूप से तब उपयोगी होता है जब संभाविता एक घातीय परिवार होती है, व्यापक उपचार के लिए सुंदरबर्ग (2019, अध्याय 8) देखें: E चरण पर्याप्त आंकड़ों की अपेक्षाओं का योग बन जाता है, और M चरण में एक रैखिक फ़ंक्शन को अधिकतम करना शामिल होता है. ऐसे मामले में, आमतौर पर सुंदरबर्ग सूत्र का उपयोग करके प्रत्येक चरण के लिए बंद-फॉर्म अभिव्यक्ति अपडेट प्राप्त करना संभव है (प्रति मार्टिन-लोफ और एंडर्स मार्टिन-लोफ के अप्रकाशित परिणामों के आधार पर रॉल्फ सुंदरबर्ग द्वारा सिद्ध और प्रकाशित)।

डेम्पस्टर, लैयर्ड और रुबिन द्वारा मूल पेपर में बायेसियन अनुमान के लिए अधिकतम पोस्टीरियरी (MAP) अनुमानों की गणना करने के लिए EM विधि को संशोधित किया गया था।

अधिकतम संभाविता का अनुमान लगाने के लिए अन्य विधियाँ मौजूद हैं, जैसे कि ग्रेडिएंट डिसेंट, संयुग्म ग्रेडिएंट, या गॉस-न्यूटन एल्गोरिथ्म के वेरिएंट। EM के विपरीत, ऐसे तरीकों को आमतौर पर संभाविता फ़ंक्शन के पहले और/या दूसरे डेरिवेटिव के मूल्यांकन की आवश्यकता होती है।

शुद्धता का प्रमाण
अपेक्षा-अधिकतमीकरण सीधे $$\log p(\mathbf{X}\mid\boldsymbol\theta)$$ में श्रेष्ठतर करने के बजाय $$Q(\boldsymbol\theta\mid\boldsymbol\theta^{(t)})$$ में श्रेष्ठतर करने के लिए काम करता है। यहां यह दिखाया गया है कि पहले में श्रेष्ठतर से बाद में श्रेष्ठतर होता है।

किसी के लिए $$\mathbf{Z}$$ गैर-शून्य संभाविता के साथ $$p(\mathbf{Z}\mid\mathbf{X},\boldsymbol\theta)$$, हम लिख सकते हैं

\log p(\mathbf{X}\mid\boldsymbol\theta) = \log p(\mathbf{X},\mathbf{Z}\mid\boldsymbol\theta) - \log p(\mathbf{Z}\mid\mathbf{X},\boldsymbol\theta). $$ हम अज्ञात डेटा के संभावित मूल्यों पर प्रत्याशा रखते हैं $$\mathbf{Z}$$ वर्तमान पैरामीटर $$\theta^{(t)}$$अनुमान के तहत दोनों पक्षों को गुणा करके $$p(\mathbf{Z}\mid\mathbf{X},\boldsymbol\theta^{(t)})$$ और सारांशित करना (या एकीकृत करना)। $$\mathbf{Z}$$. बाईं ओर एक स्थिरांक की प्रत्याशा है, इसलिए हमें मिलता है:

\begin{align} \log p(\mathbf{X}\mid\boldsymbol\theta) & = \sum_{\mathbf{Z}} p(\mathbf{Z}\mid\mathbf{X},\boldsymbol\theta^{(t)}) \log p(\mathbf{X},\mathbf{Z}\mid\boldsymbol\theta) - \sum_{\mathbf{Z}} p(\mathbf{Z}\mid\mathbf{X},\boldsymbol\theta^{(t)}) \log p(\mathbf{Z}\mid\mathbf{X},\boldsymbol\theta) \\ & = Q(\boldsymbol\theta\mid\boldsymbol\theta^{(t)}) + H(\boldsymbol\theta\mid\boldsymbol\theta^{(t)}), \end{align} $$ जहाँ $$H(\boldsymbol\theta\mid\boldsymbol\theta^{(t)})$$ इसे उस नकारात्मक राशि से परिभाषित किया जाता है जिसे वह प्रतिस्थापित कर रहा है।

यह अंतिम समीकरण प्रत्येक मान $$\boldsymbol\theta$$ शामिल $$\boldsymbol\theta = \boldsymbol\theta^{(t)}$$ के लिए मान्य है,

\log p(\mathbf{X}\mid\boldsymbol\theta^{(t)}) = Q(\boldsymbol\theta^{(t)}\mid\boldsymbol\theta^{(t)}) + H(\boldsymbol\theta^{(t)}\mid\boldsymbol\theta^{(t)}), $$ और इस अंतिम समीकरण को पिछले समीकरण से घटाने पर प्राप्त होता है

\log p(\mathbf{X}\mid\boldsymbol\theta) - \log p(\mathbf{X}\mid\boldsymbol\theta^{(t)}) = Q(\boldsymbol\theta\mid\boldsymbol\theta^{(t)}) - Q(\boldsymbol\theta^{(t)}\mid\boldsymbol\theta^{(t)}) + H(\boldsymbol\theta\mid\boldsymbol\theta^{(t)}) - H(\boldsymbol\theta^{(t)}\mid\boldsymbol\theta^{(t)}). $$ हालाँकि, गिब्स की असमानता हमें यह बताती है $$H(\boldsymbol\theta\mid\boldsymbol\theta^{(t)}) \ge H(\boldsymbol\theta^{(t)}\mid\boldsymbol\theta^{(t)})$$, तो हम यह निष्कर्ष निकाल सकते हैं

\log p(\mathbf{X}\mid\boldsymbol\theta) - \log p(\mathbf{X}\mid\boldsymbol\theta^{(t)}) \ge Q(\boldsymbol\theta\mid\boldsymbol\theta^{(t)}) - Q(\boldsymbol\theta^{(t)}\mid\boldsymbol\theta^{(t)}). $$ शब्दों में, $$Q(\boldsymbol\theta\mid\boldsymbol\theta^{(t)})$$ को सुधारने के लिए $$\boldsymbol\theta$$ चुनने से $$\log p(\mathbf{X}\mid\boldsymbol\theta)$$में कम से कम उतना ही श्रेष्ठतर होता है।

अधिकतमीकरण-अधिकतमकरण प्रक्रिया के रूप में
EM एल्गोरिदम को दो वैकल्पिक अधिकतमकरण चरणों के रूप में देखा जा सकता है, यानी समन्वित अवतरण के उदाहरण के रूप में। फ़ंक्शन पर विचार करें:
 * $$ F(q,\theta) := \operatorname{E}_q [ \log L (\theta ; x,Z) ] + H(q), $$ जहां q, न देखे गए डेटा z पर एक यादृच्छिक संभाव्यता वितरण है और H(q) वितरण q की एन्ट्रॉपी है। इस फ़ंक्शन को इस प्रकार लिखा जा सकता है
 * $$ F(q,\theta) = -D_{\mathrm{KL}}\big(q \parallel p_{Z\mid X}(\cdot\mid x;\theta ) \big) + \log L(\theta;x), $$

जहाँ $$p_{Z\mid X}(\cdot\mid x;\theta )$$ देखे गए डेटा को देखते हुए न देखे गए डेटा का सशर्त वितरण $$x$$ है और $$D_{KL}$$ कुल्बैक-लीब्लर विचलन है।

फिर EM एल्गोरिथम के चरणों को इस प्रकार देखा जा सकता है:
 * प्रत्याशा चरण: चुनें $$q$$ बढ़ाने के लिए $$F$$:
 * $$ q^{(t)} = \operatorname{arg\,max}_q \ F(q,\theta^{(t)}) $$
 * अधिकतमीकरण चरण: अधिकतम $$F$$ के लिए $$\theta$$ चुनें:
 * $$ \theta^{(t+1)} = \operatorname{arg\,max}_\theta \ F(q^{(t)},\theta) $$

अनुप्रयोग
EM का प्रयोग अक्सर मिश्रित मॉडलों के पैरामीटर आकलन के लिए किया जाता है, विशेष रूप से मात्रात्मक आनुवंशिकी में।

साइकोमेट्रिक्स में, विषय प्रतिक्रिया सिद्धांत मॉडल के विषय मापदंडों और अव्यक्त क्षमताओं का आकलन करने के लिए EM एक महत्वपूर्ण उपकरण है।

लापता डेटा से निपटने और अज्ञात चर का निरीक्षण करने की क्षमता के साथ, EM एक पोर्टफोलियो के मूल्य निर्धारण और जोखिम का प्रबंधन करने के लिए एक उपयोगी उपकरण बन रहा है।

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

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

EM का उपयोग डेटा क्लस्टरिंग के लिए भी किया जाता है। प्राकृतिक भाषा प्रसंस्करण में, एल्गोरिदम के दो प्रमुख उदाहरण छिपे हुए मार्कोव मॉडल के लिए बॉम-वेल्च एल्गोरिदम हैं, और संभाव्य संदर्भ-मुक्त व्याकरणों के अनियंत्रित प्रेरण के लिए अंदर-बाहर एल्गोरिदम हैं।

इंटरट्रेड प्रतीक्षा समय के विश्लेषण में यानी स्टॉक एक्सचेंज में स्टॉक के शेयरों में बाद के ट्रेडों के बीच का समय, EM एल्गोरिदम बहुत उपयोगी साबित हुआ है।

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

इस दो-चरणीय प्रक्रिया को दोहराकर EM एल्गोरिदम को फ़िल्टर करना और चिकना करना उत्पन्न होता है:


 * E-चरण
 * अद्यतन स्थिति अनुमान प्राप्त करने के लिए वर्तमान पैरामीटर अनुमानों के साथ डिज़ाइन किया गया कलमैन फ़िल्टर या न्यूनतम-विचरण स्मूथ संचालित करें।


 * M-चरण
 * अद्यतन पैरामीटर अनुमान प्राप्त करने के लिए अधिकतम-संभाविता गणना के भीतर फ़िल्टर किए गए या सुचारू राज्य अनुमानों का उपयोग करें।

मान लीजिए कि एक कलमैन फ़िल्टर या न्यूनतम-विचरण स्मूथर एकल-इनपुट-एकल-आउटपुट सिस्टम के माप पर काम करता है जिसमें एडिटिव व्हाइट ध्वनि होता है। अधिकतम संभाविता गणना से एक अद्यतन माप ध्वनि विचरण अनुमान प्राप्त किया जा सकता है
 * $$\widehat{\sigma}^2_v = \frac{1}{N} \sum_{k=1}^N {(z_k-\widehat{x}_k)}^2,$$

जहाँ $$\widehat{x}_k$$ स्केलर आउटपुट अनुमान एन स्केलर माप से फ़िल्टर या स्मूथ $$z_k$$ द्वारा गणना किए जाते हैं उपरोक्त अद्यतन को पॉइसन माप ध्वनि तीव्रता को अद्यतन करने के लिए भी लागू किया जा सकता है। इसी प्रकार, प्रथम-क्रम ऑटो-रिग्रेसिव प्रक्रिया के लिए, एक अद्यतन प्रक्रिया ध्वनि विचरण अनुमान की गणना की जा सकती है
 * $$\widehat{\sigma}^2_w =  \frac{1}{N} \sum_{k=1}^N {(\widehat{x}_{k+1}-\widehat{F}\widehat_k)}^2,$$

जहाँ $$\widehat{x}_k$$ और $$\widehat{x}_{k+1}$$ स्केलर स्थिति अनुमान एक फिल्टर या स्मूथ द्वारा गणना किए जाते हैं। अद्यतन मॉडल गुणांक अनुमान के माध्यम से प्राप्त किया जाता है
 * $$\widehat{F} = \frac{\sum_{k=1}^N {(\widehat{x}_{k+1}-\widehat{F} \widehat{x}_k)}^2}{\sum_{k=1}^N \widehat{x}_k^2}.$$

उपरोक्त जैसे पैरामीटर अनुमानों के अभिसरण का अच्छी तरह से अध्ययन किया गया है।

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

पैरामीटर-विस्तारित अपेक्षा अधिकतमीकरण (PX-EM) एल्गोरिदम अक्सर M चरण के विश्लेषण को सही करने के लिए "us[ing] एक 'सहप्रसरण समायोजन' द्वारा गति प्रदान करता है, जो कि आरोपित संपूर्ण डेटा में कैप्चर की गई अतिरिक्त जानकारी का लाभ उठाता है"।

प्रत्याशा सशर्त अधिकतमीकरण (ECM) प्रत्येक M चरण को सशर्त अधिकतमीकरण (सीएम) चरणों के अनुक्रम से प्रतिस्थापित करता है जिसमें प्रत्येक पैरामीटर θi को व्यक्तिगत रूप से अधिकतम किया जाता है, सशर्त रूप से शेष अन्य मापदंडों पर। स्वयं को एक्सपेक्टेशन कंडीशनल मैक्सिमाइज़ेशन (ECME) एल्गोरिदम में बढ़ाया जा सकता है।

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

EM एल्गोरिदम को एमएम (संदर्भ के आधार पर मेजराइज/मिनिमाइज या माइनराइज/मैक्सिमाइज) एल्गोरिदम के उपवर्ग के रूप में मानना भी संभव है, और इसलिए अधिक सामान्य मामले में विकसित किसी भी मशीनरी का उपयोग करें।

α-EM एल्गोरिथ्म
EM एल्गोरिदम में प्रयुक्त Q-फ़ंक्शन log संभाविता पर आधारित है। इसलिए, इसे log-EM एल्गोरिदम माना जाता है। log संभाविता के उपयोग को α-log संभाविता अनुपात के लिए सामान्यीकृत किया जा सकता है। फिर, देखे गए डेटा के α-log संभाविता अनुपात को α-log संभाविता अनुपात और α-विचलन के Q-फ़ंक्शन का उपयोग करके समानता के रूप में व्यक्त किया जा सकता है। इस Q-फ़ंक्शन को प्राप्त करना एक सामान्यीकृत E चरण है। इसका अधिकतमीकरण एक सामान्यीकृत M चरण है। इस जोड़ी को α-EM एल्गोरिथम कहा जाता है जिसमें इसके उपवर्ग के रूप में log-EM एल्गोरिदम शामिल है। इस प्रकार, यासुओ मात्सुयामा द्वारा α-EM एल्गोरिथ्म log-EM एल्गोरिथ्म का एक सटीक सामान्यीकरण है। ग्रेडिएंट या हेसियन मैट्रिक्स की कोई गणना की आवश्यकता नहीं है। α-EM उचित α चुनकर log-EM एल्गोरिदम की तुलना में तेज़ अभिसरण दिखाता है। α-EM एल्गोरिदम हिडन मार्कोव मॉडल आकलन एल्गोरिदम α-HMM के तेज़ संस्करण की ओर ले जाता है।

परिवर्तनशील बेयस विधियों से संबंध
EM आंशिक रूप से गैर-बायेसियन, अधिकतम संभाविता विधि है। इसका अंतिम परिणाम θ के लिए एक बिंदु अनुमान (या तो अधिकतम संभाविता अनुमान या पश्च मोड) के साथ अव्यक्त चर (बायेसियन शैली में) पर संभाव्यता वितरण देता है। इसका एक पूर्ण बायेसियन संस्करण वांछित हो सकता है, जो θ और अव्यक्त चर पर संभाव्यता वितरण देता है। अनुमान के लिए बायेसियन दृष्टिकोण केवल θ को एक अन्य अव्यक्त चर के रूप में मानने के लिए है। इस प्रतिमान में, E और M चरणों के बीच का अंतर लुप्त हो जाता है। यदि ऊपर बताए अनुसार गुणनखंडित Q सन्निकटन (वैरिएबल बेयस) का उपयोग किया जाता है, तो समाधान प्रत्येक अव्यक्त चर (अब θ सहित) पर पुनरावृत्त हो सकता है और उन्हें एक समय में एक अनुकूलित कर सकता है। अब, प्रति पुनरावृत्ति k चरणों की आवश्यकता है, जहाँ k अव्यक्त चर की संख्या है। चित्रमय मॉडल के लिए यह करना आसान है क्योंकि प्रत्येक चर का नया Q केवल उसके मार्कोव ब्लैंकेट पर निर्भर करता है, इसलिए कुशल अनुमान के लिए स्थानीय संदेश पासिंग (बहुविकल्पी) का उपयोग किया जा सकता है।

ज्यामितीय व्याख्या
सूचना ज्यामिति में, E चरण और M चरण की व्याख्या दोहरे एफ़िन कनेक्शन के तहत प्रक्षेपण के रूप में की जाती है, जिसे E-कनेक्शन और M-कनेक्शन कहा जाता है; कुल्बैक-लीब्लर विचलन को इन शब्दों में भी समझा जा सकता है।

गाऊसी मिश्रण


होने देना $$\mathbf{x} = (\mathbf{x}_1,\mathbf{x}_2,\ldots,\mathbf{x}_n)$$ का एक नमूना हो $$n$$ आयाम के दो बहुभिन्नरूपी सामान्य वितरणों के मिश्रण मॉडल से स्वतंत्र अवलोकन $$d$$, और जाने $$\mathbf{z} = (z_1,z_2,\ldots,z_n)$$ वे अव्यक्त चर हों जो उस घटक को निर्धारित करते हैं जिससे अवलोकन उत्पन्न होता है। : $$X_i \mid(Z_i = 1) \sim \mathcal{N}_d(\boldsymbol{\mu}_1,\Sigma_1)$$ और $$X_i \mid(Z_i = 2) \sim \mathcal{N}_d(\boldsymbol{\mu}_2,\Sigma_2),$$ जहाँ
 * $$\operatorname{P} (Z_i = 1 ) = \tau_1 \, $$ और $$\operatorname{P} (Z_i=2) = \tau_2 = 1-\tau_1.$$

इसका उद्देश्य गाऊसी और प्रत्येक के साधन और सहप्रसरण के बीच मिश्रण मूल्य का प्रतिनिधित्व करने वाले अज्ञात पैरामीटर का अनुमान लगाना है:
 * $$\theta = \big( \boldsymbol{\tau},\boldsymbol{\mu}_1,\boldsymbol{\mu}_2,\Sigma_1,\Sigma_2 \big),$$

जहां अपूर्ण-डेटा संभाविता फ़ंक्शन है
 * $$L(\theta;\mathbf{x}) = \prod_{i=1}^n \sum_{j=1}^2 \tau_j \ f(\mathbf{x}_i;\boldsymbol{\mu}_j,\Sigma_j),$$

और पूर्ण-डेटा संभाविता फ़ंक्शन है
 * $$L(\theta;\mathbf{x},\mathbf{z}) = p(\mathbf{x},\mathbf{z} \mid \theta) = \prod_{i=1}^n \prod_{j=1}^2  \ [f(\mathbf{x}_i;\boldsymbol{\mu}_j,\Sigma_j) \tau_j] ^{\mathbb{I}(z_i=j)},$$

या


 * $$L(\theta;\mathbf{x},\mathbf{z}) = \exp \left\{ \sum_{i=1}^n \sum_{j=1}^2 \mathbb{I}(z_i=j) \big[ \log \tau_j -\tfrac{1}{2} \log |\Sigma_j| -\tfrac{1}{2}(\mathbf{x}_i-\boldsymbol{\mu}_j)^\top\Sigma_j^{-1} (\mathbf{x}_i-\boldsymbol{\mu}_j) -\tfrac{d}{2} \log(2\pi) \big] \right\},$$

जहाँ $$\mathbb{I}$$ एक सूचक कार्य है और $$f$$ बहुभिन्नरूपी सामान्य का संभाव्यता घनत्व फलन है।

अंतिम समानता में, प्रत्येक के लिए $i$, एक सूचक $$\mathbb{I}(z_i=j)$$ शून्य के बराबर है, और एक सूचक एक के बराबर है। इस प्रकार आंतरिक योग एक पद तक कम हो जाता है।

E चरण
पैरामीटर्स के हमारे वर्तमान अनुमान को देखते हुए θ(t), Z का सशर्त वितरणi बेयस प्रमेय द्वारा τ द्वारा भारित सामान्य संभाव्यता घनत्व फ़ंक्शन की आनुपातिक ऊंचाई निर्धारित की जाती है:
 * $$T_{j,i}^{(t)} := \operatorname{P}(Z_i=j \mid X_i=\mathbf{x}_i ;\theta^{(t)}) = \frac{\tau_j^{(t)} \ f(\mathbf{x}_i;\boldsymbol{\mu}_j^{(t)},\Sigma_j^{(t)})}{\tau_1^{(t)} \ f(\mathbf{x}_i;\boldsymbol{\mu}_1^{(t)},\Sigma_1^{(t)}) + \tau_2^{(t)} \ f(\mathbf{x}_i;\boldsymbol{\mu}_2^{(t)},\Sigma_2^{(t)})}.$$

इन्हें सदस्यता संभावनाएं कहा जाता है, जिन्हें आम तौर पर E चरण का आउटपुट माना जाता है (हालांकि यह नीचे का Q फ़ंक्शन नहीं है)।

यह E चरण Q के लिए इस फ़ंक्शन को समुच्चय करने से मेल खाता है:
 * $$\begin{align}Q(\theta\mid\theta^{(t)})

&= \operatorname{E}_{\mathbf{Z}\mid\mathbf{X}=\mathbf{x};\mathbf{\theta}^{(t)}} [\log L(\theta;\mathbf{x},\mathbf{Z}) ] \\ &= \operatorname{E}_{\mathbf{Z}\mid\mathbf{X}=\mathbf{x};\mathbf{\theta}^{(t)}} [\log \prod_{i=1}^{n}L(\theta;\mathbf{x}_i,Z_i) ] \\ &= \operatorname{E}_{\mathbf{Z}\mid\mathbf{X}=\mathbf{x};\mathbf{\theta}^{(t)}} [\sum_{i=1}^n \log L(\theta;\mathbf{x}_i,Z_i) ] \\ &= \sum_{i=1}^n\operatorname{E}_{Z_i\mid X_i=x_i;\mathbf{\theta}^{(t)}} [\log L(\theta;\mathbf{x}_i,Z_i) ] \\ &= \sum_{i=1}^n \sum_{j=1}^2 P(Z_i =j \mid X_i = \mathbf{x}_i; \theta^{(t)}) \log L(\theta_j;\mathbf{x}_i,j) \\ &= \sum_{i=1}^n \sum_{j=1}^2 T_{j,i}^{(t)} \big[ \log \tau_j -\tfrac{1}{2} \log |\Sigma_j| -\tfrac{1}{2}(\mathbf{x}_i-\boldsymbol{\mu}_j)^\top\Sigma_j^{-1} (\mathbf{x}_i-\boldsymbol{\mu}_j) -\tfrac{d}{2} \log(2\pi) \big]. \end{align}$$ की प्रत्याशा $$\log L(\theta;\mathbf{x}_i,Z_i)$$ योग के अंदर संभाव्यता घनत्व फ़ंक्शन के संबंध में लिया जाता है $$P(Z_i \mid X_i = \mathbf{x}_i; \theta^{(t)})$$, जो प्रत्येक के लिए भिन्न हो सकता है $$\mathbf{x}_i$$ प्रशिक्षण समुच्चय का. E चरण में सब कुछ चरण उठाए जाने से पहले ही ज्ञात हो जाता है सिवाय इसके $$T_{j,i}$$, जिसकी गणना E चरण अनुभाग की शुरुआत में समीकरण के अनुसार की जाती है।

इस पूर्ण सशर्त प्रत्याशा की गणना एक चरण में करने की आवश्यकता नहीं है, क्योंकि τ और 'μ'/'Σ' अलग-अलग रैखिक शब्दों में दिखाई देते हैं और इस प्रकार इन्हें स्वतंत्र रूप से अधिकतम किया जा सकता है।

M चरण
Q(θ | θ(टी)) रूप में द्विघात होने का मतलब है कि θ के अधिकतम मूल्यों को निर्धारित करना अपेक्षाकृत सरल है। इसके अलावा, τ, ('μ'1,एस1) और (μ2,एस2) सभी को स्वतंत्र रूप से अधिकतम किया जा सकता है क्योंकि वे सभी अलग-अलग रैखिक शब्दों में दिखाई देते हैं।

आरंभ करने के लिए, τ पर विचार करें, जिसमें बाधा τ है1 + टी2=1:
 * $$\begin{align}\boldsymbol{\tau}^{(t+1)}

&= \underset{\boldsymbol{\tau}} {\operatorname{arg\,max}}\ Q(\theta \mid \theta^{(t)} ) \\ &= \underset{\boldsymbol{\tau}} {\operatorname{arg\,max}} \ \left\{ \left[ \sum_{i=1}^n T_{1,i}^{(t)} \right] \log \tau_1 + \left[  \sum_{i=1}^n T_{2,i}^{(t)} \right] \log \tau_2  \right\}. \end{align}$$ इसका रूप द्विपद वितरण के लिए MLE के समान है
 * $$\tau^{(t+1)}_j = \frac{\sum_{i=1}^n T_{j,i}^{(t)}}{\sum_{i=1}^n (T_{1,i}^{(t)} + T_{2,i}^{(t)} ) } = \frac{1}{n} \sum_{i=1}^n T_{j,i}^{(t)}.$$

(μ) के अगले अनुमानों के लिए1,एस1):
 * $$\begin{align}(\boldsymbol{\mu}_1^{(t+1)},\Sigma_1^{(t+1)})

&= \underset{\boldsymbol{\mu}_1,\Sigma_1} \operatorname{arg\,max}\ Q(\theta \mid \theta^{(t)} ) \\ &= \underset{\boldsymbol{\mu}_1,\Sigma_1} \operatorname{arg\,max}\ \sum_{i=1}^n T_{1,i}^{(t)} \left\{ -\tfrac{1}{2} \log |\Sigma_1| -\tfrac{1}{2}(\mathbf{x}_i-\boldsymbol{\mu}_1)^\top\Sigma_1^{-1} (\mathbf{x}_i-\boldsymbol{\mu}_1) \right\} \end{align}.$$ इसका रूप सामान्य वितरण के लिए भारित MLE के समान है
 * $$\boldsymbol{\mu}_1^{(t+1)} = \frac{\sum_{i=1}^n T_{1,i}^{(t)} \mathbf{x}_i}{\sum_{i=1}^n T_{1,i}^{(t)}} $$ और $$\Sigma_1^{(t+1)} = \frac{\sum_{i=1}^n T_{1,i}^{(t)} (\mathbf{x}_i - \boldsymbol{\mu}_1^{(t+1)}) (\mathbf{x}_i - \boldsymbol{\mu}_1^{(t+1)})^\top }{\sum_{i=1}^n T_{1,i}^{(t)}} $$

और, समरूपता से,
 * $$\boldsymbol{\mu}_2^{(t+1)} = \frac{\sum_{i=1}^n T_{2,i}^{(t)} \mathbf{x}_i}{\sum_{i=1}^n T_{2,i}^{(t)}} $$ और $$\Sigma_2^{(t+1)} = \frac{\sum_{i=1}^n T_{2,i}^{(t)} (\mathbf{x}_i - \boldsymbol{\mu}_2^{(t+1)}) (\mathbf{x}_i - \boldsymbol{\mu}_2^{(t+1)})^\top }{\sum_{i=1}^n T_{2,i}^{(t)}}.$$

समाप्ति
यदि पुनरावृत्तीय प्रक्रिया समाप्त करें $$ E_{Z\mid\theta^{(t)},\mathbf{x}}[\log L(\theta^{(t)};\mathbf{x},\mathbf{Z})] \leq E_{Z\mid\theta^{(t-1)},\mathbf{x}}[\log L(\theta^{(t-1)};\mathbf{x},\mathbf{Z})] + \varepsilon$$ के लिए $$ \varepsilon $$ कुछ पूर्व निर्धारित सीमा से नीचे.

सामान्यीकरण
ऊपर चित्रित एल्गोरिदम को दो से अधिक बहुभिन्नरूपी सामान्य वितरणों के मिश्रण के लिए सामान्यीकृत किया जा सकता है।

काट-छाँट और सेंसर किया गया प्रतिगमन
EM एल्गोरिदम को उस मामले में लागू किया गया है जहां एक अंतर्निहित रैखिक प्रतिगमन मॉडल कुछ मात्रा की भिन्नता को समझाता है, लेकिन जहां वास्तव में देखे गए मान मॉडल में दर्शाए गए मूल्यों के सेंसर किए गए या काट दिए गए संस्करण हैं। इस मॉडल के विशेष मामलों में एक सामान्य वितरण से सेंसर किए गए या काटे गए अवलोकन शामिल हैं।

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

यह भी देखें

 * मिश्रण वितरण
 * यौगिक वितरण
 * घनत्व अनुमान
 * प्रमुख कंपोनेंट विश्लेषण
 * कुल अवशोषण स्पेक्ट्रोस्कोपी
 * EM एल्गोरिदम को एमएम एल्गोरिदम | मेजराइज-मिनिमाइजेशन (एमएम) एल्गोरिदम के एक विशेष मामले के रूप में देखा जा सकता है।

अग्रिम पठन

 * gives an easier explanation of EM algorithm as to lowerbound maximization.
 * A well-written short book on EM, including detailed derivation of EM for GMMs, HMMs, and Dirichlet.
 * includes a simplified derivation of the EM equations for Gaussian Mixtures and Gaussian Mixture Hidden Markov Models.
 * A well-written short book on EM, including detailed derivation of EM for GMMs, HMMs, and Dirichlet.
 * includes a simplified derivation of the EM equations for Gaussian Mixtures and Gaussian Mixture Hidden Markov Models.

बाहरी संबंध

 * Various 1D, 2D and 3D demonstrations of EM together with Mixture Modeling are provided as part of the paired SOCR activities and applets. These applets and activities show empirically the properties of the EM algorithm for parameter estimation in diverse settings.
 * Class hierarchy in C++ (GPL) including Gaussian Mixtures
 * The on-line textbook: Information Theory, Inference, and Learning Algorithms, by David J.C. MacKay includes simple examples of the EM algorithm such as clustering using the soft k-means algorithm, and emphasizes the variational view of the EM algorithm, as described in Chapter 33.7 of version 7.2 (fourth edition).
 * Variational Algorithms for Approximate Bayesian Inference, by M. J. Beal includes comparisons of EM to Variational Bayesian EM and derivations of several models including Variational Bayesian HMMs (chapters).
 * The Expectation Maximization Algorithm: A short tutorial, A self-contained derivation of the EM Algorithm by Sean Borman.
 * The EM Algorithm, by Xiaojin Zhu.
 * EM algorithm and variants: an informal tutorial by Alexis Roche. A concise and very clear description of EM and many interesting variants.