خوارزمية EM للتجميع

خوارزمية EM هي أداة مفيدة لنمذجة البيانات عند تعظيم احتمال "على الجبهة" من خلال التمايز غير ممكن. التكتل هو أحد المهام حيث تأتي هذه الخوارزمية للإنقاذ. تقدم المقالة استنتاجًا عامًا لخوارزمية EM للتجميع.


مهمة


العديد من النقاط X={xi,i1..N}بحاجة إلى تقسيمها إلى Kعناقيد المجموعات.


فكرة الحل


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


نموذج البيانات


نقدم سلسلة من الرموز المستعارة من الدورة .


p(x)- احتمالية ملاحظة نقطة x.


p(X)=i=1Np(xi)- احتمالية ملاحظة الكثيرين X.


pj(x)=φ(x;θj)- احتمالية تلبية نقطة xفي كتلة j. يتم توزيع هذا التوزيع بواسطة معلمة (أو ناقل معلمة)θjخاص بالكتلة j.


wj- احتمال الكتلة j، بمعنى آخر. احتمال أن تنتمي نقطة مختارة عشوائيًا إلى مجموعةj. تشير النقطة المختارة عشوائيًا بالضبط إلى كتلة ، لذلكj=1Kwj=1.


من التعريفات أعلاه يتبع ذلك p(x)=j=1Kwjpj(x)=j=1Kwjφ(x;θj)، بمعنى آخر. توزيع النقاط على غرار مزيج من توزيعات الكتلة.


ونتيجة لذلك ، النموذج الاحتمالي لمجموعة النقاط X:


p(X)=i=1N(j=1Kwjφ(xi;θj))


بحث المعلمات


معلمات النموذج wو θ، كما هو موضح أعلاه ، يجب أن يوفر أقصى احتمال لبياناتنا:


w,θ=argmax p(X)=argmax logp(X)=argmaxw,θi=1Nlog(j=1Kwjφ(xi;θj))


يتداخل المجموع تحت علامة اللوغاريتم مع حل المشكلة بشكل تحليلي. حدودj=1Kwj=1 (, TensorFlow PyTorch).


:


L :=   log p(X)
while log p(X)  :
     L  log p(X)
    w, theta = argmax L

, logp(X), . L:


  1. L: "" , logp(X).
  2. wθ, L.

, "" , .


L


:


logp(X)=i=1Nlog(j=1Kwjφ(xi;θj))


. gixi:


gi(j)p( j| i)


:


i=1Nlog(j=1Kwjφ(xi;θj))=i=1Nlog(j=1Kgi(j)gi(j)wjφ(xi;θj))


. :


log(iqixi)iqilogxi


, qi1.


gi(j): j=1Kgi(j)=1. :


i=1Nlog(j=1Kgi(j)gi(j)wjφ(xi;θj))i=1Nj=1Kgi(j)log(wjφ(xi;θj)gi(j))


:


L(g,w,θ)i=1Nj=1Kgi(j)log(wjφ(xi;θj)gi(j))


L(E-)


L(g,w,θ)logp(X). wθ, Lg.


logp(X)L, , :


logp(X)L(g,w,θ)=i=1Nlogp(xi)i=1Nj=1Kgi(j)log(wjφ(xi;θj)gi(j))=


=i=1N(logp(xi)j=1Kgi(j)j=1Kgi(j)logwjφ(xi;θj)gi(j))=i=1Nj=1Kgi(j)logp(xi)gi(j)wjφ(xi;θj)


, j:


p(j|xi)=φ(xi;θj)wjp(xi)


:


i=1Nj=1Kgi(j)logp(xi)gi(j)wjφ(xi;θj)=i=1Nj=1Kgi(j)loggi(j)p(j|xi)=i=1NEgigip(j|xi)


: . - ( KL-) "" .


, logp(X)L— KL-:


logp(X)L(g,w,θ)=i=1NKL(gi||p(j|xi))


KL- , , — KL- . : KL- , — . gi(j)p(j|xi):


gi(j)=p(j|xi)=wjφ(xi;θj)p(xi)


gi(j)Llogp(X).


L(M-)


: . :


  • gثابت؛
  • المعلمات wو θتخضع للتحسين.

تبسيط قبل التحسين L:


L(g,θ)=i=1N(j=1Kgi(j)logwjp(xi;θj)gi(j))=


=i=1Nj=1Kgi(j)log(wjp(xi;θj))i=1Nj=1Kgi(j)loggi(j)


المصطلح الثاني مستقل عن المعلمات wو θوبالتالي ، سنقوم بتحسين المصطلح الأول فقط:


w,θ=argmaxw,θi=1Nj=1Kgi(j)log(wjφ(xi;θj))


نحن نحلل لوغاريتم المنتج في مجموع اللوغاريتمات ونحصل على:


w=argmaxwi=1Nj=1Kgi(j)logwj,   j=1wj=1


θj=argmaxi=1Ngi(j)logφ(xi;θj)


يتم حل المشكلة الأولى عن طريق طريقة مضاعفة Lagrange. نتيجة:


wj=1Ni=1Ngi(j)


يعتمد حل المشكلة الثانية على نوع توزيع الكتلة المحدد φ(xi;θj). كما ترى ، بالنسبة للحل الخاص به ، لم يعد عليك التعامل مع المجموع تحت علامة اللوغاريتم ، وبالتالي ، على سبيل المثال ، للتوزيعات الغوسية ، يمكن كتابة الحل بشكل تحليلي.


مجموع


اكتشفنا جوهر تكرارات خوارزمية EM للتجميع ، وشاهدنا كيف يتم اشتقاق صيغها بطريقة عامة.


All Articles