خوارزمية أمامية

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

مقدمة

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

بالنسبة لنموذج ماركوف المخفي (HMM) مثل هذا:

التطور الزمني لنموذج ماركوف المخفي
التطور الزمني لنموذج ماركوف المخفي

يُكتب هذا الاحتمال على النحو التالي:ص(xت|y1:ت){\displaystyle p(x_{t}|y_{1:t})}. هناx(ت){\displaystyle x(t)}هي الحالة الخفية التي تُختصر إلىxت{\displaystyle x_{t}}وy1:ت{\displaystyle y_{1:t}}هي الملاحظات1{\displaystyle 1}لت{\displaystyle t}.

تُكمّل الخوارزمية العكسية الخوارزمية الأمامية من خلال مراعاة التاريخ المستقبلي إذا رغبنا في تحسين التقدير للأوقات الماضية. يُشار إلى هذا باسم التنعيم، وتقوم الخوارزمية الأمامية/العكسية بحساب...ص(xت|y1:تي){\displaystyle p(x_{t}|y_{1:T})}ل1<ت<تي{\displaystyle 1<t<T}وبالتالي، تأخذ خوارزمية التقديم/التراجع الكاملة جميع الأدلة في الحسبان. تجدر الإشارة إلى أنه يمكن حساب حالة الاعتقاد في كل خطوة زمنية، ولكن هذا لا يُنتج، بالمعنى الدقيق، تسلسل الحالات الأكثر احتمالاً ، بل يُنتج الحالة الأكثر احتمالاً في كل خطوة زمنية، بالنظر إلى التاريخ السابق. ولتحقيق التسلسل الأكثر احتمالاً، يلزم استخدام خوارزمية فيتربي . فهي تحسب تسلسل الحالات الأكثر احتمالاً بالنظر إلى تاريخ الملاحظات، أي تسلسل الحالات الذي يُعظّم قيمة .ص(x0:ت|y0:ت){\displaystyle p(x_{0:t}|y_{0:t})}.

الخوارزمية

الهدف من الخوارزمية الأمامية هو حساب الاحتمال المشتركص(xت،y1:ت){\displaystyle p(x_{t},y_{1:t})}، حيث قمنا باختصارها تسهيلاً للرموزx(ت){\displaystyle x(t)}مثلxت{\displaystyle x_{t}}و(y(1)،y(2)،...،y(ت)){\displaystyle (y(1),y(2),...,y(t))}مثلy1:ت{\displaystyle y_{1:t}}بمجرد تحديد الاحتمال المشتركص(xت،y1:ت){\displaystyle p(x_{t},y_{1:t})}يتم حساب الاحتمالات الأخرىص(xت|y1:ت){\displaystyle p(x_{t}|y_{1:t})}وص(y1:ت){\displaystyle p(y_{1:t})}يمكن الحصول عليها بسهولة.

كلا الولايتينxت{\displaystyle x_{t}}والملاحظةyت{\displaystyle y_{t}}يُفترض أن تكون متغيرات عشوائية منفصلة ومحدودة. احتمالات انتقال الحالة لنموذج ماركوف المخفيص(xت|xت-1){\displaystyle p(x_{t}|x_{t-1})}احتمالات الرصد/الانبعاثص(yت|xت){\displaystyle p(y_{t}|x_{t})}، والاحتمالية الأولية المسبقةص(x0){\displaystyle p(x_{0})}يُفترض أن تكون هذه المعلومات معروفة. علاوة على ذلك، فإن تسلسل الملاحظاتy1:ت{\displaystyle y_{1:t}}يفترض أن تكون هذه المعلومات معطاة.

الحوسبةص(xت،y1:ت){\displaystyle p(x_{t},y_{1:t})}يتطلب الأمر ببساطة إجراء عملية تهميش على جميع تسلسلات الحالة الممكنة{x1:ت-1}{\displaystyle \{x_{1:t-1}\}}، والتي يزداد عددها بشكل كبير معت{\displaystyle t}بدلاً من ذلك، تستفيد الخوارزمية الأمامية من قواعد الاستقلال الشرطي لنموذج ماركوف المخفي (HMM) لإجراء الحساب بشكل متكرر.

لتوضيح التكرار، دع

α(xت)=ص(xت،y1:ت)=xت-1ص(xت،xت-1،y1:ت){\displaystyle \alpha (x_{t})=p(x_{t},y_{1:t})=\sum _{x_{t-1}}p(x_{t},x_{t-1},y_{1:t})}.

استخدام قاعدة السلسلة للتوسيعص(xت،xت-1،y1:ت){\displaystyle p(x_{t},x_{t-1},y_{1:t})}ثم يمكننا أن نكتب

α(xت)=xت-1ص(yت|xت،xت-1،y1:ت-1)ص(xت|xت-1،y1:ت-1)ص(xت-1،y1:ت-1){\displaystyle \alpha (x_{t})=\sum _{x_{t-1}}p(y_{t}|x_{t},x_{t-1},y_{1:t-1})p(x_{t}|x_{t-1},y_{1:t-1})p(x_{t-1},y_{1:t-1})}.

لأنyت{\displaystyle y_{t}}مستقل شرطيًا عن كل شيء، لكنxت{\displaystyle x_{t}}، وxت{\displaystyle x_{t}}مستقل شرطيًا عن كل شيء، لكنxت-1{\displaystyle x_{t-1}}، وهذا يتبسط إلى

α(xت)=ص(yت|xت)xت-1ص(xت|xت-1)α(xت-1){\displaystyle \alpha (x_{t})=p(y_{t}|x_{t})\sum _{x_{t-1}}p(x_{t}|x_{t-1})\alpha (x_{t-1})}.

وبالتالي، بما أنص(yت|xت){\displaystyle p(y_{t}|x_{t})}وص(xت|xت-1){\displaystyle p(x_{t}|x_{t-1})}إذا تم تحديدها بواسطة توزيعات انبعاثات النموذج واحتمالات الانتقال ، والتي يُفترض أنها معروفة، فيمكن حسابها بسرعة.α(xت){\displaystyle \alpha (x_{t})}منα(xت-1){\displaystyle \alpha (x_{t-1})}وتجنب تكبد وقت حسابي هائل.

يمكن كتابة صيغة الاستدعاء الذاتي المذكورة أعلاه بشكل أكثر اختصارًا. لنفترضأأناج=ص(xت=أنا|xت-1=ج){\displaystyle a_{ij}=p(x_{t}=i|x_{t-1}=j)}لتكن احتمالات الانتقال وبأناج=ص(yت=أنا|xت=ج){\displaystyle b_{ij}=p(y_{t}=i|x_{t}=j)}إذا كانت احتمالات الانبعاث هي ،

αت=بتتيأαت-1{\displaystyle \mathbf {\alpha } _{t}=\mathbf {b} _{t}^{T}\odot \mathbf {A} \mathbf {\alpha } _{t-1}}

أينأ=[أأناج]{\displaystyle \mathbf {A} =[a_{ij}]}هي مصفوفة احتمالية الانتقال،بت{\displaystyle \mathbf {b} _{t}}يمثل الصف i من مصفوفة احتمالية الانبعاثب=[بأناج]{\displaystyle \mathbf {B} =[b_{ij}]}وهو ما يتوافق مع الملاحظة الفعليةyت=أنا{\displaystyle y_{t}=i}في ذلك الوقتت{\displaystyle t}، وαت=[α(xت=1)،...،α(xت=ن)]تي{\displaystyle \mathbf {\alpha } _{t}=[\alpha (x_{t}=1),\ldots ,\alpha (x_{t}=n)]^{T}}هو متجه ألفا.{\displaystyle \odot }هو حاصل ضرب هادامارد بين منقولةبت{\displaystyle \mathbf {b} _{t}}وأαت-1{\displaystyle \mathbf {A} \mathbf {\alpha } _{t-1}}.

يتم تحديد الشرط الأولي وفقًا للاحتمال المسبق علىx0{\displaystyle x_{0}}مثل

α(x0)=ص(y0|x0)ص(x0){\displaystyle \alpha (x_{0})=p(y_{0}|x_{0})p(x_{0})}.

بمجرد الاحتمال المشتركα(xت)=ص(xت،y1:ت){\displaystyle \alpha (x_{t})=p(x_{t},y_{1:t})}بعد حسابها باستخدام خوارزمية التقديم الأمامي، يمكننا بسهولة الحصول على الاحتمال المشترك ذي الصلةص(y1:ت){\displaystyle p(y_{1:t})}مثل

ص(y1:ت)=xتص(xت،y1:ت)=xتα(xت){\displaystyle p(y_{1:t})=\sum _{x_{t}}p(x_{t},y_{1:t})=\sum _{x_{t}}\alpha (x_{t})}

والاحتمال الشرطي المطلوبص(xت|y1:ت){\displaystyle p(x_{t}|y_{1:t})}مثل

ص(xت|y1:ت)=ص(xت،y1:ت)ص(y1:ت)=α(xت)xتα(xت).{\displaystyle p(x_{t}|y_{1:t})={\frac {p(x_{t},y_{1:t})}{p(y_{1:t})}}={\frac {\alpha (x_{t})}{\sum _{x_{t}}\alpha (x_{t})}}.}

بمجرد حساب الاحتمال الشرطي ، يمكننا أيضًا إيجاد التقدير النقطي لـxت{\displaystyle x_{t}}على سبيل المثال، تقدير MAP لـxت{\displaystyle x_{t}}يُعطى بواسطة

x^تمأP=argالأعلىxتص(xت|y1:ت)=argالأعلىxتα(xت)،{\displaystyle {\widehat {x}}_{t}^{MAP}=\arg \max _{x_{t}}\;p(x_{t}|y_{1:t})=\arg \max _{x_{t}}\;\alpha (x_{t}),}

بينما تقدير MMSE لـxت{\displaystyle x_{t}}يُعطى بواسطة

x^تممSهـ=هـ[xت|y1:ت]=xتxتص(xت|y1:ت)=xتxتα(xت)xتα(xت).{\displaystyle {\widehat {x}}_{t}^{MMSE}=\mathbb {E} [x_{t}|y_{1:t}]=\sum _{x_{t}}x_{t}p(x_{t}|y_{1:t})={\frac {\sum _{x_{t}}x_{t}\alpha (x_{t})}{\sum _{x_{t}}\alpha (x_{t})}}.}

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

الشفرة الزائفة

  1. تهيئة
    ت=0{\displaystyle t=0}،
    احتمالات الانتقال،ص(xت|xت-1){\displaystyle p(x_{t}|x_{t-1})}،
    احتمالات الانبعاث،ص(yت|xت){\displaystyle p(y_{t}|x_{t})}،
    التسلسل المرصود،y1:تي{\displaystyle y_{1:T}}
    الاحتمال المسبق،α(x0){\displaystyle \alpha (x_{0})}
  2. لت=1{\displaystyle t=1}لتي{\displaystyle T}
    α(xت)=ص(yت|xت)xت-1ص(xت|xت-1)α(xت-1){\displaystyle \alpha (x_{t})=p(y_{t}|x_{t})\sum _{x_{t-1}}p(x_{t}|x_{t-1})\alpha (x_{t-1})}.
  3. يعودص(xتي|y1:تي)=α(xتي)xتيα(xتي){\displaystyle p(x_{T}|y_{1:T})={\frac {\alpha (x_{T})}{\sum _{x_{T}}\alpha (x_{T})}}}

مثال

هذا مثال على رصد حالات الطقس المحتملة من خلال رصد حالة الأعشاب البحرية. لدينا ملاحظات عن حالة الأعشاب البحرية لثلاثة أيام متتالية، حيث كانت جافة، رطبة، ومغمورة بالماء على التوالي. يمكن أن تكون حالات الطقس المحتملة مشمسة، غائمة، أو ممطرة. إجمالاً، يمكن أن يكون هناك33=27{\displaystyle 3^{3}=27}مثل هذه التسلسلات الجوية. يُعد استكشاف جميع تسلسلات الحالة المحتملة هذه مكلفًا حسابيًا للغاية. ولتقليل هذا التعقيد، تُصبح خوارزمية التقدّم الأمامي مفيدة، حيث تكمن الحيلة في استخدام الاستقلال الشرطي لخطوات التسلسل لحساب الاحتمالات الجزئية.α(xت)=ص(xت،y1:ت)=ص(yت|xت)xت-1ص(xت|xت-1)α(xت-1){\displaystyle \alpha (x_{t})=p(x_{t},y_{1:t})=p(y_{t}|x_{t})\sum _{x_{t-1}}p(x_{t}|x_{t-1})\alpha (x_{t-1})}كما هو موضح في الاشتقاق أعلاه. وبالتالي، يمكننا حساب الاحتمالات كحاصل ضرب احتمال الملاحظة/الانبعاث المناسب.ص(yت|xت){\displaystyle p(y_{t}|x_{t})}(احتمالية الحالة)yت{\displaystyle y_{t}}(كما هو موضح في الوقت t من الملاحظة السابقة) مع مجموع احتمالات الوصول إلى تلك الحالة في الوقت t، المحسوبة باستخدام احتمالات الانتقال. هذا يقلل من تعقيد المشكلة من البحث في فضاء البحث بأكمله إلى استخدام القيم المحسوبة مسبقًا فقط.α{\displaystyle \alpha }احتمالات الانتقال.

تعقيد

تعقيد الخوارزمية الأمامية هوΘ(نم2){\displaystyle \Theta (nm^{2})}، أينم{\displaystyle m}يمثل عدد الحالات الممكنة لمتغير كامن (مثل عدد الظروف الجوية في المثال أعلاه)، ون{\displaystyle n} يمثل طول التسلسل المرصود. وهذا يُعدّ اختزالاً واضحاً عن الطريقة المخصصة لاستكشاف جميع الحالات الممكنة، والتي تتسم بتعقيد قدرهΘ(نمن){\displaystyle \Theta (nm^{n})}.

أنواع مختلفة من الخوارزمية

  • الخوارزمية الأمامية الهجينة : [ 1 ] تُستخدم خوارزمية أمامية هجينة (HFA)، وهي نوع مُعدّل من الخوارزمية الأمامية، لبناء شبكات عصبية ذات دوال أساسية شعاعية (RBF) بعُقد قابلة للضبط. تُبنى شبكة RBF العصبية باستخدام خوارزميات اختيار المجموعات الفرعية التقليدية. ويُحدد هيكل الشبكة من خلال الجمع بين تكوين الشبكة الأمامي التدريجي والتحسين المستمر لمعاملات RBF. تُستخدم هذه الخوارزمية لإنتاج شبكة RBF عصبية مُقتصدة ذات قدرة عالية على التعميم بكفاءة وفعالية. ويتحقق ذلك من خلال التحديد المتزامن لهيكل الشبكة وتحسين المعاملات في فضاء المعاملات المستمر . تعالج خوارزمية HFA مشكلة الأعداد الصحيحة المختلطة الصعبة باستخدام إطار تحليلي متكامل، مما يؤدي إلى تحسين أداء الشبكة وتقليل استخدام الذاكرة اللازمة لبنائها.
  • خوارزمية التوجيه الأمامي للتحكم الأمثل في الأنظمة الهجينة : [ 2 ] يستند هذا النوع من خوارزمية التوجيه الأمامي إلى بنية بيئات التصنيع التي تدمج التحكم في العمليات والتشغيل. نستنتج خاصية جديدة لبنية مسار الحالة الأمثل، والتي تتحقق في ظل شرط مُعدَّل على دالة التكلفة. يتيح لنا ذلك تطوير خوارزمية منخفضة التعقيد وقابلة للتوسع لتحديد عناصر التحكم الأمثل بشكل صريح، والتي قد تكون أكثر كفاءة من خوارزمية التوجيه الأمامي.
  • خوارزمية التمرير الأمامي المستمر : [ 3 ] يمكن استخدام خوارزمية التمرير الأمامي المستمر (CFA) للنمذجة غير الخطية وتحديدها باستخدام الشبكات العصبية ذات الدوال الأساسية الشعاعية (RBF). تُنفذ الخوارزمية المقترحة مهمتي بناء الشبكة وتحسين المعلمات ضمن إطار تحليلي متكامل، وتوفر ميزتين هامتين. أولاً، يمكن تحسين أداء النموذج بشكل ملحوظ من خلال التحسين المستمر للمعلمات. ثانياً، يمكن بناء التمثيل العصبي دون توليد وتخزين جميع المتغيرات المرشحة، مما يؤدي إلى تقليل استخدام الذاكرة والتعقيد الحسابي بشكل كبير.

تاريخ

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

التطبيقات

تُستخدم خوارزمية التنبؤ الأمامي في الغالب في التطبيقات التي تتطلب تحديد احتمالية التواجد في حالة معينة عند معرفة تسلسل الملاحظات. يمكن تطبيق هذه الخوارزمية في أي مكان يُمكن فيه تدريب نموذج عند تلقي البيانات باستخدام خوارزمية باوم-ويلش [ 5 ] أو أي خوارزمية EM عامة . ستُخبرنا خوارزمية التنبؤ الأمامي باحتمالية البيانات بالنسبة لما هو متوقع من نموذجنا. أحد تطبيقاتها هو المجال المالي ، حيث تُساعد في اتخاذ قرارات شراء أو بيع الأصول الملموسة.

يمكن تطبيقها في جميع المجالات التي تُستخدم فيها نماذج ماركوف المخفية (HMMs). ومن أبرز تطبيقاتها مجالات معالجة اللغة الطبيعية ، مثل تحديد أجزاء الكلام والتعرف على الكلام . [ 4 ] كما تُستخدم مؤخرًا في مجال المعلوماتية الحيوية .

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

انظر أيضاً

مراجع

  1. بينغ، جيان-شون، كانغ لي، ودي-شوانغ هوانغ. "خوارزمية أمامية هجينة لبناء شبكة عصبية RBF." مجلة IEEE للمعاملات في الشبكات العصبية 17.6 (2006): 1439-1451.
  2. تشانغ، بينغ، وكريستوس جي. كاساندراس. "خوارزمية أمامية محسنة للتحكم الأمثل في فئة من الأنظمة الهجينة." معاملات التحكم الآلي، IEEE 47.10 (2002): 1735-1739.
  3. بينغ، جيان-شون، كانغ لي، وجورج دبليو إيروين. "خوارزمية جديدة مستمرة للأمام لنمذجة الشبكات العصبية RBF." معاملات التحكم الآلي، IEEE 52.1 (2007): 117-122.
  4. 1 2 لورانس ر. رابينر ، "دليل تعليمي حول نماذج ماركوف المخفية وتطبيقات مختارة في التعرف على الكلام". وقائع معهد مهندسي الكهرباء والإلكترونيات ، 77 (2)، ص 257-286، فبراير 1989. 10.1109/5.18626
  5. تشانغ، يانشيو، دونغمي تشاو، وجينكسينغ ليو. "تطبيق خوارزمية باوم-ويلش في الهجوم متعدد الخطوات". مجلة العالم العلمي 2014.

للمزيد من القراءة

  • يقدم كتاب راسل ونورفيج " الذكاء الاصطناعي: منهج حديث" ، بدءًا من الصفحة 570 من طبعة 2010، عرضًا موجزًا ​​لهذا الموضوع والمواضيع ذات الصلة.
  • سميث، بادريك، ديفيد هيكرمان، ومايكل آي. جوردان. "شبكات الاستقلال الاحتمالي لنماذج ماركوف الاحتمالية المخفية." الحوسبة العصبية 9.2 (1997): 227-269.
  • ريد، جوناثان. "نماذج ماركوف المخفية والبرمجة الديناميكية". جامعة أوسلو (2011).
  • كولشاين، كريستيان، مقدمة في نماذج ماركوف المخفية
  • مانغانييلو، فابيو، وميركو ماركيتي، وميشيل كولاجاني. الكشف عن الهجمات متعددة المراحل وربط التنبيهات في أنظمة كشف التسلل. أمن المعلومات وضمانها. سبرينغر برلين هايدلبرغ، 2011. 101-110.
  • تشانغ، بينغ، وكريستوس جي. كاساندراس. "خوارزمية أمامية محسنة للتحكم الأمثل في فئة من الأنظمة الهجينة." معاملات التحكم الآلي، IEEE 47.10 (2002): 1735-1739.
  • ستراتونوفيتش، آر إل "عمليات ماركوف الشرطية". نظرية الاحتمالات وتطبيقاتها 5، العدد 2 (1960): 156178.

البرامج