التحسين1977متوسط12 دقيقة قراءة

تقدير الأرجحية القصوى من بيانات ناقصة عبر خوارزمية EM

Maximum Likelihood from Incomplete Data via the EM Algorithm

Dempster, A. P. · Laird, N. M. · Rubin, D. B. — Journal of the Royal Statistical Society, Series B

المشكلة

في كثير من المسائل الإحصائية الواقعية تكون بعض البيانات مفقودة أو مخفيّة. مستشفى يتابع نتائج المرضى لكن بعضهم ينسحب قبل انتهاء الدراسة. مستشعر يُرسل قراءات لكن بعضها أضعف من عتبة الكشف. مجموعة بيانات فيها أرصاد من عدة فئات لكن لا أحد صنَّف أيّ رصد يتبع أيّ فئة. في كل هذه الحالات لا يمكن حساب للمعلمات مباشرةً — لأن دالة تتضمن تكاملات أو مجاميع على البيانات المفقودة لا تقبل الحلّ بصيغة مغلقة.

الإسهام

خوارزمية التوقع-التعظيم (EM): طريقة تكرارية من خطوتين تحوِّل مسألة المستعصية إلى سلسلة من مسائل بيانات كاملة سهلة الحل. في (E) تحسب القيمة المتوقعة على ، مستنداً إلى البيانات المرصودة وتقديرات المعلمات الحالية — أي أنك «تملأ» الفراغات احتمالياً. في (M) تبحث عن المعلمات التي تُعظِّم هذه الأرجحية المتوقعة. كل تكرار يضمن أن الأرجحية المرصودة لا تقلّ، والخوارزمية تتقارب نحو نقطة مستقرة. وحّدت الورقة عشرات الطرق المتفرقة السابقة ضمن إطار منهجي واحد.

الأثر

ثاني أكثر ورقة بحثية استشهاداً في تاريخ الإحصاء، بأكثر من 80,000 استشهاد. صارت الخوارزمية الأداة المعتمدة لملاءمة نماذج المزيج، ومعالجة البيانات المفقودة، وتدريب نماذج ماركوف المخفية، وإعادة بناء الصور الطبية (PET/CT)، وعشرات التطبيقات الأخرى. ألهمت مباشرةً الاستدلال المتغيري في التعلم الآلي البايزي وآلية تدريب المرمِّز التلقائي المتغيّر. كلّما تعامل نظام تعلّم آلي حديث مع متغيرات كامنة — سواء في نمذجة الموضوعات أو أو — فإن مبدأ EM هو المحرّك الأساسي.

تخيّل أنك مُعلّم يصحّح مقالات وصلتك مبعثرة وبعض صفحاتها ضائع. لا تستطيع إعطاء درجات دقيقة والصفحات ناقصة. فتبدأ بـتخمين محتوى الصفحات الضائعة من أسلوب الكتابة في الصفحات الموجودة — هذه هي خطوة التوقع. ثم تُعيد التصحيح لكل مقالة وكأنك تملك النص الكامل — وهذه هي خطوة التعظيم. كلّما حسّنت الدرجات تحسّنت تخميناتك للصفحات الناقصة، وكلّما تحسّنت التخمينات زادت دقة درجاتك، وهكذا حتى يستقر كل شيء. هذه هي خوارزمية التوقع-التعظيم.

المشكلة: تعظيم الأرجحية في ظل بيانات مفقودة

في الإحصاء، حين تملك بيانات مرصودة XX ونموذجاً بمعلمات θ\theta، فأنت تبحث عن قيم المعلمات التي تجعل هذه البيانات أكثر احتمالاً — وهذا ما يُعرف بـتقدير الأرجحية القصوى. حين تكون البيانات كاملة، يكون لهذا التقدير في الغالب مباشر.

لكن ماذا لو كان جزء من البيانات مفقوداً؟ مفهوم «البيانات المفقودة» أوسع مما يبدو، فهو يشمل:

  • قيم مفقودة فعلاً — مرضى انسحبوا من تجربة سريرية، أو قراءات مستشعرات دون عتبة الكشف، أو استبيانات لم تُستكمل.
  • — كتسميات العنقَدة في نماذج المزيج، أو في النماذج التتابعية، أو الأسباب غير المرصودة في الرسوم البيانية السببية.
  • — تعرف مثلاً أن مكوِّناً صمد أكثر من 1,000 ساعة، لكنك لا تعرف متى تعطّل بالضبط.

في كل هذه الحالات تتضمن الأرجحية المرصودة L(θX)L(\theta | X) جمعاً أو تكاملاً على جميع القيم الممكنة للبيانات المفقودة — وهذا الجمع أو التكامل يكون في العادة مستعصياً تحليلياً.

افتح في المختبر
بدِّل العملات بين «مرصودة» و«مخفية» لترى كيف تُصعِّب البيانات المفقودة عملية تحسين سطح الأرجحية.
تستيقظ التجربة عند وصولك…

الفكرة: خمِّن ثم حسِّن

الفكرة وراء الخوارزمية بسيطة جداً: إذا كانت البيانات الكاملة ستجعل المسألة سهلة، فـتصرَّف كأنك تملكها. استخدم أفضل تقدير حالي لـ θ\theta لتحديد ما يُرجَّح أن تكونه البيانات المفقودة — لا بملء قيمة واحدة، بل بحساب الاحتمالي الكامل لتلك البيانات. ثم استخدم هذا التقدير الاحتمالي لتحديث θ\theta وكأن البيانات لم تكن ناقصة أصلاً.

لنُحدّد الرموز:

  • XX = البيانات المرصودة (الناقصة)
  • ZZ = البيانات المفقودة (غير المرصودة)
  • (X,Z)(X, Z) = البيانات الكاملة
  • θ\theta = المُراد تقديرها

لوغاريتم الأرجحية للبيانات الكاملة logp(X,Zθ)\log p(X, Z | \theta) عادةً سهل التعامل معه. المشكلة أن ZZ مجهول. الخوارزمية تتغلب على ذلك بالعمل مع لوغاريتم الأرجحية المتوقع للبيانات الكاملة — أي حساب التوقع على ZZ بالنظر إلى ما نرصده فعلاً وتقديرنا الحالي للمعلمات.

الخطوتان: التوقع والتعظيم

تتناوب الخوارزمية بين خطوتين، انطلاقاً من تخمين مبدئي θ(0)\theta^{(0)}:

خطوة التوقع (E): احسب القيمة المتوقعة للوغاريتم الأرجحية على البيانات الكاملة، مع التعامل مع البيانات المفقودة بوصفها متغيرات عشوائية يتحدّد توزيعها بحسب المعلمات الحالية θ(t)\theta^{(t)} والبيانات المرصودة XX. نُعرِّف ما يُسمى :

Q(θθ(t))=EZX,θ(t)[logp(X,Zθ)]Q(\theta | \theta^{(t)}) = E_{Z|X,\theta^{(t)}} \left[ \log p(X, Z | \theta) \right]
الدالة Q — لوغاريتم الأرجحية المتوقعة للبيانات الكاملةخذ لوغاريتم الأرجحية الذي *كنت ستحسبه* لو عرفت Z، ثم أوجد متوسطه على كل قيم Z الممكنة، مرجَّحاً باحتمالية كل Z بحسب ما تعتقده حالياً

يمكنك تخيُّل خطوة التوقع وكأنها تسأل: «بحسب ما أعرفه الآن عن المعلمات، ما أفضل تصوُّر يمكنني بناؤه عن البيانات المفقودة؟» الأمر أشبه بمُحقّق يُعيد تركيب مسرح جريمة من أدلة جزئية — لا يختار سيناريو واحداً بل يُوزّع الاحتمالات على كل السيناريوهات الممكنة.

خطوة التعظيم (M): أوجد المعلمات التي تُعظِّم الدالة Q:

θ(t+1)=argmaxθ  Q(θθ(t))\theta^{(t+1)} = \arg\max_{\theta} \; Q(\theta | \theta^{(t)})
خطوة التعظيم — عظِّم Q للحصول على معلمات أفضلاختر θ\theta التي تجعل البيانات «المُكتمَلة» أكثر احتمالاً. ولأن Q تتفكك بسهولة في حالة العائلات الأُسِّية، غالباً ما يوجد حل مُغلق

تخيّل خطوة التعظيم كطالب أكمل الفراغات في ورقة إجابة ناقصة (هذا ما فعلته خطوة التوقع)، ثم أعاد حساب أفضل نموذج بناءً على الورقة المكتملة. ولأن التعامل مع بيانات كاملة أسهل بكثير، فإن هذه الخطوة غالباً مباشرة.

الخطوتان تُغذّيان بعضهما: معلمات أفضل تُعطيك صورة أدق عن البيانات المفقودة، وصورة أدق عن البيانات المفقودة تُعطيك معلمات أفضل. تستمر هذه الحلقة حتى تستقر المعلمات ويتحقق .

افتح في المختبر
تابع تكرارات خطوتي التوقع والتعظيم على نموذج مزيج غاوسي ثنائي. شاهد المعلمات وهي تتقارب.
تستيقظ التجربة عند وصولك…

لماذا تنجح: الأرجحية لا تتناقص أبداً

النتيجة النظرية المركزية في الورقة هي خاصية : كل تكرار يضمن أن لوغاريتم الأرجحية المرصودة لا يتناقص:

logp(Xθ(t+1))logp(Xθ(t))\log p(X | \theta^{(t+1)}) \geq \log p(X | \theta^{(t)})
الصعود الرتيب — كل تكرار يصعد أو يثبتلوغاريتم الأرجحية المرصودة لا ينخفض عبر التكرارات مما يضمن التقارب الحسابي نحو نقطة مستقرة (وإن لم تكن بالضرورة القيمة العظمى المطلقة)

يقوم البرهان على تفكيك لوغاريتم الأرجحية إلى حدّين: الدالة Q وحدّ . خطوة التوقع تُثبِّت حدّ الإنتروبيا عند أقصى قيمه (باستخدام الحقيقي للبيانات المفقودة)، وخطوة التعظيم ترفع Q. المحصلة: لوغاريتم الأرجحية المرصودة لا بدّ أن يرتفع.

لكن هناك تحفّظ مهم: التقارب يكون نحو أو ، وليس بالضرورة نحو القيمة العظمى المطلقة. كذلك فإن سرعة التقارب خطية — أي متناسبة مع نسبة المعلومات المفقودة. فإذا كان الجزء الأكبر من البيانات مفقوداً، قد يكون التقارب بطيئاً للغاية. لذا يُشغّل الممارسون الخوارزمية عادةً من عدة نقاط بداية عشوائية ويختارون الحل الذي يُعطي أعلى أرجحية.

افتح في المختبر
شاهد لوغاريتم الأرجحية يصعد مع كل تكرار. جرب نقاط بداية مختلفة لترى كيف تؤثر التهيئة على التقارب الحسابي.
تستيقظ التجربة عند وصولك…

مثال عملي: نموذج المزيج الغاوسي

أشهر تطبيق للخوارزمية هو ملاءمة . تخيّل نقاطاً مبعثرة في فضاء تبدو وكأنها تتجمّع في عناقيد، لكنك لا تعرف لأيّ عنقود تنتمي كل نقطة. تفترض أن البيانات جاءت من KK توزيعات غاوسية، لكل منها متوسطه μk\mu_k ومصفوفة تباينه المشترك Σk\Sigma_k ووزنه في المزيج πk\pi_k.

المتغير الكامن هنا لكل نقطة xix_i هو تسمية العنقود zi{1,,K}z_i \in \{1, \ldots, K\} — أي أنك لا تعرف أيّ غاوسي ولَّد كل نقطة. هذا يجعل تقدير الأرجحية القصوى المباشر مستعصياً. لكن الخوارزمية تحلّه بأناقة:

خطوة التوقع — لكل نقطة xix_i وكل عنقود kk، احسب γik\gamma_{ik}: وهي الاحتمال البَعدي بأن العنقود kk هو الذي ولَّد النقطة xix_i بالنظر إلى المعلمات الحالية. هذا ببساطة تطبيق لـ:

γik=πkN(xiμk,Σk)j=1KπjN(xiμj,Σj)\gamma_{ik} = \frac{\pi_k \, \mathcal{N}(x_i | \mu_k, \Sigma_k)}{\sum_{j=1}^{K} \pi_j \, \mathcal{N}(x_i | \mu_j, \Sigma_j)}
المسؤولية — مقدار «مطالبة» العنقود k بالنقطة iكل نقطة تحصل على انتساب ناعم: متجه من K احتمالات مجموعها 1. بخلاف خوارزمية K-means لا تُجبر أي نقطة على الانتماء لعنقود واحد بالضبط

خطوة التعظيم — حدّث معلمات كل عنقود مستخدماً المسؤوليات كأوزان: المتوسط الجديد للعنقود kk هو المتوسط المرجَّح بالمسؤوليات لجميع النقاط، والتباين المشترك الجديد هو التباين المرجَّح بالمسؤوليات كذلك. أما أوزان المزيج فتُحدَّث لتساوي متوسط المسؤولية لكل عنقود.

تتكرر الخطوتان، وتبدأ المسؤوليات ضبابية ثم تصير أوضح كلما تمايزت العناقيد. شاهد ذلك مباشرةً في المحاكاة أدناه.

افتح في المختبر
اضغط "شغّل EM" لتشاهد العناقيد تتشكل من بيانات غير مُصنَّفة. القطوع الناقصة تُظهر تباين كل غاوسي.
تستيقظ التجربة عند وصولك…

ما وراء الكواليس: لماذا تعظيم Q يعظّم L

المحرّك الرياضي وراء تقارب الخوارزمية هو تفكيك لوغاريتم الأرجحية المرصودة. لأيّ توزيع q(Z)q(Z) على البيانات المفقودة يمكننا كتابة:

logp(Xθ)=Q(θθ(t))+H(θθ(t))\log p(X | \theta) = Q(\theta | \theta^{(t)}) + H(\theta | \theta^{(t)})
تفكيك لوغاريتم الأرجحية — الدالة Q زائد حدّ الإنتروبياHH هو حدّ تباعد كولباك-لايبلر السالب. خطوة التوقع تُثبّته عند أقصى قيمه، وخطوة التعظيم ترفع QQ. المحصلة: لا بدّ أن يرتفع logp(Xθ)\log p(X|\theta)

يكشف هذا التفكيك أمراً جوهرياً: الخوارزمية لا تُحسِّن الأرجحية المرصودة مباشرةً، بل تبني يلامس الأرجحية عند المعلمات الحالية ثم تُعظِّمه. خطوة التوقع تُحكِم هذا الحدّ (تجعله يلامس الأرجحية)، وخطوة التعظيم تدفعه إلى أعلى — وبالتالي تدفع الأرجحية معه. هذا المبدأ نفسه ألهم لاحقاً و** (ELBO)** في البايزي الحديث.

الفكرة نفسها في الكود

خوارزمية التوقع-التعظيم لنموذج المزيج الغاوسي — كاملاًpython

مبسَّط لإظهار الفكرة — ليس التنفيذ الحقيقي.

import numpy as np
from scipy.stats import multivariate_normal

def em_gmm(X, K, max_iter=100, tol=1e-6):
    """ملاءمة نموذج مزيج غاوسي ذي K مكونات باستخدام خوارزمية التوقع-التعظيم.
    X: مصفوفة بيانات (N, D) — عدد N من النقاط في D بُعد.
    يُرجع: المتوسطات والتباينات المشتركة وأوزان المزيج."""
    N, D = X.shape

    # --- التهيئة: متوسطات عشوائية، تباينات وحدوية، أوزان متساوية ---
    means = X[np.random.choice(N, K, replace=False)]
    covs = [np.eye(D) for _ in range(K)]
    weights = np.ones(K) / K

    log_likelihood_old = -np.inf

    for iteration in range(max_iter):
        # === خطوة التوقع: حساب المسؤوليات ===
        # لكل نقطة، ما احتمالية كل عنقود؟
        resp = np.zeros((N, K))
        for k in range(K):
            resp[:, k] = weights[k] * multivariate_normal.pdf(X, means[k], covs[k])
        resp /= resp.sum(axis=1, keepdims=True)  # حوّل كل صف ليُجمع إلى 1

        # === خطوة التعظيم: تحديث المعلمات بالانتساب الناعم ===
        Nk = resp.sum(axis=0)  # العدد الفعّال للنقاط لكل عنقود
        for k in range(K):
            means[k] = (resp[:, k] @ X) / Nk[k]
            diff = X - means[k]
            covs[k] = (resp[:, k:k+1] * diff).T @ diff / Nk[k]
        weights = Nk / N

        # فحص التقارب
        log_likelihood = np.sum(np.log(
            sum(weights[k] * multivariate_normal.pdf(X, means[k], covs[k])
                for k in range(K))
        ))
        if abs(log_likelihood - log_likelihood_old) < tol:
            break
        log_likelihood_old = log_likelihood

    return means, covs, weights

# هذا كل شيء. خطوة التوقع مصفوفة واحدة من تطبيقات مبرهنة بايز.
# خطوة التعظيم متوسطات مُرجَّحة. والباقي مجرد تنظيم حسابي.

ما وراء نماذج المزيج: أين تظهر الخوارزمية في الذكاء الاصطناعي

عبقرية الورقة في أنها كشفت أن عشرات الخوارزميات المتفرقة ما هي إلا حالات خاصة من مبدأ واحد. تظهر الخوارزمية كلما احتوى النموذج على متغيرات كامنة:

  • — خوارزمية باوم-ويلش المستخدمة في التعرّف على الكلام هي حالة خاصة من EM على حالات خفية متتابعة.
  • التصوير الطبي — خوارزميات إعادة بناء صور PET وCT تستخدم EM لاستنتاج شدّة الانبعاث من عدّادات كاشفات ناقصة.
  • نماذج الموضوعات — نموذج تخصيص ديريكليه الكامن يستخدم نسخة متغيّرية من الخوارزمية لاكتشاف الموضوعات في المستندات.
  • وتقدير الحركة والمطابقة الفراغية كلها تعتمد على أشكال مختلفة من EM.
  • — المرمِّز التلقائي المتغيّر يُعظّم حداً أدنى على لوغاريتم الأرجحية، وهو امتداد مباشر لإطار الدالة Q.

القاعدة العامة: كلما كانت لديك بيانات مرصودة وبنية مخفية، وكانت المسألة مع البيانات الكاملة أسهل منها مع الناقصة، فإن EM هي الأداة الطبيعية.

افتح في المختبر
انقر على كل تطبيق لترى كيف تتخصص خطوتا التوقع والتعظيم لكل مسألة.
تستيقظ التجربة عند وصولك…

الخصائص والمحدوديات

نقاط القوة:

  • البساطة. كل خطوة تملك عادةً حلاً مغلقاً في نماذج .
  • الاستقرار العددي. لا تحتاج إلى عكس مصفوفة الكاملة (بخلاف طريقة نيوتن-رافسون).
  • التقارب الرتيب. الأرجحية لا تتناقص أبداً — إما أن تتقدّم أو تثبت.
  • التعامل الطبيعي مع القيود. معلمات مثل أوزان المزيج (التي يجب أن يكون مجموعها 1) تنبثق تلقائياً من خطوة التعظيم.

المحدوديات:

  • القمم المحلية. لا بدّ من تشغيل الخوارزمية عدة مرات بتهيئات مختلفة.
  • التقارب الخطي. أبطأ من طرق نيوتن بالقرب من الحل، خصوصاً حين تكون نسبة المعلومات المفقودة مرتفعة.
  • غياب الأخطاء المعيارية. الخوارزمية تُنتج تقديرات نقطية فقط؛ للحصول على مقاييس عدم اليقين تحتاج إلى خوارزمية SEM التكميلية أو أساليب إعادة المعاينة.
  • اختيار النموذج. الخوارزمية تفترض أنك حدّدت النموذج الصحيح مسبقاً (مثل عدد مكونات المزيج KK). اختيار النموذج يتطلب أدوات منفصلة كمعيار BIC أو .

لماذا كانت ذات أهميّة بالغة

  1. 1886

    مسألة المزيج لنيوكمب

    حاول سيمون نيوكمب ملاءمة مزيج من توزيعين طبيعيين يدوياً — بما يُشبه نسخة غير رسمية من EM — مما أشار مبكراً إلى الحاجة لخوارزمية منهجية.

  2. 1958

    خوارزمية هارتلي التكرارية لتقدير الأرجحية القصوى

    اقترح هـ. أو. هارتلي طريقة تكرارية لـتقدير الأرجحية القصوى في نماذج المزيج، وتُعدّ من أبكر السلائف المعروفة لخوارزمية EM.

  3. 1970

    خوارزمية باوم-ويلش

    طوّر باوم وزملاؤه إجراءً تكرارياً لإعادة تقدير نماذج ماركوف المخفية — وتبيّن لاحقاً أنه حالة خاصة من EM.

  4. 1977

    ديمبستر ولايرد وروبين

    وحّدت هذه الورقة جميع الطرق المتفرقة السابقة تحت مبدأ واحد، وأثبتت التقارب الرتيب، ومنحت الخوارزمية اسمها. صارت ثاني أكثر ورقة استشهاداً في تاريخ الإحصاء.

  5. 1983

    نظرية وو للتقارب

    وضع سي. إف. جيف وو شروط تقارب صارمة للخوارزمية، ممّا عزّز ضمانات الورقة الأصلية وأرسى الأساس الرياضي المتين لها.

  6. 1993

    التوقع-التعظيم المتغيري ونظرية المجال المتوسط

    أعاد نيل وهينتون صياغة EM كصعود إحداثي على دالّة الطاقة الحرة، مما فتح الباب لـالاستدلال المتغيري البايزي والتقريب الاحتمالي.

  7. 2014

    المرمّز التلقائي المتغير الاحتمالي

    استخدم كينغما وويلنغ الحد الأدنى للدليل — وهو امتداد لمبدأ الحد الأدنى في EM — مع مُرمِّزات ومفكِّكات عصبية، فربط بين الإحصاء الكلاسيكي والنماذج التوليدية العميقة.

لم يخترع ديمبستر ولايرد وروبين أيّاً من هذه التطبيقات — فكثير منها وُجد بشكل مستقل. إسهامهم الحقيقي كان في إدراك أن كل هذه الخوارزميات تتشارك المبدأ نفسه، ثم أثبتوا أنه يعمل وأعطوه اسماً. هذا التوحيد هو ما جعل بالإمكان تطبيق الإطار فوراً على أي مسألة جديدة فيها بيانات ناقصة.

المرجعDempster, Laird, Rubin. Maximum Likelihood from Incomplete Data via the EM Algorithm. Journal of the Royal Statistical Society, Series B, 1977.

مصطلحات هذه الورقة