Hidden Markov Model (HMM)
استكشف نماذج ماركوف الخفية (HMM) للذكاء الاصطناعي الإحصائي. تعلم كيف تعمل HMMs مع Ultralytics YOLO26 للتعرف على الأفعال، وتحليل التسلسل، والمنطق الزمني.
يعد نموذج ماركوف الخفي (HMM) إطاراً إحصائياً يُستخدم لنمذجة الأنظمة التي لا تكون فيها العملية الداخلية مرئية بشكل مباشر - ومن هنا جاءت تسمية "خفي" - ولكن يمكن استنتاجها من خلال سلسلة من الأحداث القابلة للملاحظة. على الرغم من أن التعلم العميق الحديث قد تطور للتعامل مع التسلسلات المعقدة، إلا أن HMM يظل مفهوماً أساسياً في الذكاء الاصطناعي الإحصائي ونظرية الاحتمالات. وهو فعال بشكل خاص لتحليل بيانات تحليل السلاسل الزمنية حيث يوفر ترتيب الأحداث سياقاً حاسماً، معتمداً على المبدأ الأساسي القائل بأن احتمال الحالة المستقبلية يعتمد فقط على الحالة الحالية، وليس على التاريخ الذي سبقها.
Link to this sectionالآليات الأساسية لـ HMMs#
لفهم كيفية عمل HMM، من الضروري التمييز بين طبقتين متميزتين من النموذج: الحالات غير المرئية والمخرجات المرئية. يفترض النموذج أن النظام ينتقل بين الحالات الخفية وفقاً لاحتمالات محددة، مما ينتج ملاحظة عند كل خطوة.
يتم تعريف HMM بواسطة مجموعة من المعلمات التي تحكم هذه الانتقالات والانبعاثات:
- الحالات الخفية: تمثل هذه الحالات الواقع الأساسي للنظام في وقت معين. في نموذج الكلام، قد تمثل الحالة الخفية فونيماً أو كلمة محددة.
- الأحداث القابلة للملاحظة: هذه هي نقاط البيانات التي يتم جمعها فعلياً بواسطة المستشعرات أو المدخلات. في مثال الكلام، ستكون الملاحظة عبارة عن بيانات الموجة الصوتية أو المخطط الطيفي.
- احتمالات الانتقال: تصف هذه المصفوفة احتمالية الانتقال من حالة خفية إلى أخرى. على سبيل المثال، احتمال تغير الطقس من "ممطر" إلى "مشمس".
- احتمالات الانبعاث: تحدد هذه احتمالية رؤية ملاحظة معينة بالنظر إلى حالة خفية حالية.
- الاحتمالات الأولية: التوزيع الذي يحدد الحالة التي من المرجح أن يبدأ بها النظام.
يتضمن تدريب HMM بشكل عام خوارزمية Baum-Welch لتقدير هذه المعلمات من بيانات التدريب. بمجرد التدريب، تُستخدم خوارزمية Viterbi عادةً لفك تشفير التسلسل الأكثر احتمالاً للحالات الخفية من مجموعة جديدة من الملاحظات.
Link to this sectionHMMs مقابل نماذج التسلسل الأخرى#
بينما تتشارك HMMs في أوجه التشابه مع أدوات معالجة التسلسل الأخرى، إلا أنها تختلف بشكل كبير في البنية والتطبيق:
- HMM مقابل الشبكات العصبية المتكررة (RNN): تُعد شبكات RNN وشبكات الذاكرة طويلة المدى (LSTM) نماذج تعلم عميق يمكنها التقاط التبعيات بعيدة المدى والأنماط غير الخطية، في حين أن HMMs هي نماذج احتمالية أبسط مقيدة بافتراض ماركوف (ذاكرة قصيرة المدى). ومع ذلك، تتطلب HMMs بيانات أقل بكثير وهي أكثر قابلية للتفسير.
- HMM مقابل مرشح كالمان (KF): كلاهما يُستخدم لتقدير الحالة. ومع ذلك، تم تصميم مرشحات كالمان للحالات المستمرة (مثل تتبع الموقع الدقيق لسيارة متحركة)، بينما تُستخدم HMMs للحالات المتقطعة (مثل تحديد ما إذا كانت السيارة "متوقفة" أو "تسير" أو "متوقفة تماماً").
Link to this sectionتطبيقات العالم الحقيقي#
على الرغم من صعود التعلم العميق (DL)، لا تزال نماذج ماركوف الخفية تُستخدم على نطاق واسع في السيناريوهات التي تتطلب استدلالاً احتمالياً عبر التسلسلات.
Link to this sectionالتعرف على الكلام والكتابة اليدوية#
تاريخياً، كانت HMMs هي العمود الفقري لأنظمة التعرف على الكلام. في هذا السياق، تكون الكلمات المنطوقة هي الحالات "الخفية"، والإشارات الصوتية التي يسجلها الميكروفون هي الملاحظات. تساعد HMMs في تحديد أكثر تسلسلات الكلمات احتمالاً التي أنتجت الإشارة الصوتية. وبالمثل، فهي تساعد في فك رموز الكتابة اليدوية المتصلة من خلال نمذجة الانتقال بين ضربات الأحرف.
Link to this sectionتحليل التسلسل البيولوجي#
في مجال المعلوماتية الحيوية، تُعد HMMs حاسمة للتنبؤ بالجينات ومحاذاة البروتين. فهي تحلل تسلسلات الحمض النووي أو الأحماض الأمينية لتحديد المناطق الوظيفية، مثل الجينات داخل الجينوم. قد تمثل الحالات "الخفية" مناطق الترميز أو عدم الترميز، بينما تعمل النيوكليوتيدات المحددة (A, C, G, T) كملاحظات.
Link to this sectionالتعرف على الأنشطة في رؤية الكمبيوتر#
في رؤية الكمبيوتر الحديثة، يمكن دمج HMMs مع نماذج مثل YOLO26 لإجراء التعرف على الأنشطة. بينما يكتشف YOLO الكائنات أو الأوضاع في إطارات فردية، يمكن لـ HMM تحليل تسلسل هذه الأوضاع بمرور الوقت لتصنيف إجراء ما، مثل "المشي" أو "الجري" أو "السقوط".
Link to this sectionدمج الرؤية وتحليل الحالة#
بالنسبة للمطورين الذين يستخدمون منصة Ultralytics لإدارة مجموعات البيانات والنماذج، يعد فهم المنطق التسلسلي أمراً حيوياً. يوفر نموذج الرؤية الملاحظات الأولية (الاكتشافات)، والتي يمكن بعد ذلك تغذيتها في نموذج مساحة الحالة مثل HMM لاستنتاج السياق الزمني.
يوضح المثال التالي كيفية إنشاء تسلسل من الملاحظات باستخدام تقدير الأوضاع YOLO26. يمكن أن تعمل هذه النقاط الرئيسية كمدخلات لـ "الأحداث القابلة للملاحظة" لنموذج HMM لاحق أو منطق مشابه لتصنيف السلوكيات بمرور الوقت.
from ultralytics import YOLO
# Load the YOLO26n-pose model for efficient keypoint detection
model = YOLO("yolo26n-pose.pt")
# Run inference on a video source (the 'observable' sequence)
# stream=True creates a generator for memory efficiency
results = model.predict(source="path/to/video.mp4", stream=True)
# Iterate through frames to extract observations
for result in results:
# Each 'keypoints' object is an observation for a potential HMM
keypoints = result.keypoints.xyn.cpu().numpy()
if keypoints.size > 0:
print(f"Observation (Normalized Keypoints): {keypoints[0][:5]}...")
# In a full pipeline, these points would be fed into an HMM decoderLink to this sectionالأهمية في الذكاء الاصطناعي الحديث#
على الرغم من أن المحولات ونماذج اللغات الكبيرة (LLMs) قد تفوقت على HMMs في مهام مثل معالجة اللغات الطبيعية (NLP)، إلا أن HMMs تظل ذات صلة في حوسبة الحافة والبيئات ذات زمن الوصول المنخفض. كفاءتها الحسابية تجعلها مثالية للأنظمة ذات الموارد المحدودة حيث لا يكون استخدام GPU المكثف ممكناً. علاوة على ذلك، ولأنها تستند إلى مصفوفات احتمالية شفافة، فإنها توفر قابلية مراقبة أعلى مقارنة بطبيعة "الصندوق الأسود" للعديد من الشبكات العصبية.






