Support Vector Machine (SVM)
استكشف آلات المتجهات الداعمة (SVM). تعرّف على المستويات الفاصلة المثلى وخدعة النواة، وكيف تقارن SVMs بالنماذج الحديثة مثل Ultralytics YOLO26.
تُعد آلة المتجهات الداعمة (SVM) خوارزمية قوية ومتعددة الاستخدامات من التعلّم الخاضع للإشراف، وتُستخدم على نطاق واسع في تحديات التصنيف والانحدار. وعلى عكس العديد من الخوارزميات التي تهدف ببساطة إلى تقليل أخطاء التدريب، تركز SVM على إيجاد الحد الأمثل —المسمى المستوى الفائق— الذي يفصل نقاط البيانات بأفضل شكل إلى فئات متميزة. ويتمثل الهدف الأساسي في تعظيم الهامش، أي المسافة بين حد القرار هذا وأقرب نقاط البيانات من كل فئة. ومن خلال إعطاء الأولوية لأوسع فصل ممكن، يحقق النموذج تعميمًا أفضل على البيانات الجديدة غير المرئية، مما يقلل بفاعلية من خطر فرط التكيّف مقارنةً بأساليب أبسط مثل الانحدار الخطي القياسي.
الآليات والمفاهيم الأساسية#
لفهم كيفية عمل SVM، من المفيد تصور البيانات المرسومة في فضاء متعدد الأبعاد، حيث يمثل كل بُعد سمة محددة. تتنقل الخوارزمية في هذا الفضاء لاكتشاف أكثر طرق الفصل فاعلية بين المجموعات.
- المستوى الفائق الأمثل: يتمثل الهدف الأساسي في تحديد مستوى مسطح (أو مستوى فائق في الأبعاد الأعلى) يقسم فضاء الإدخال. في مجموعة بيانات بسيطة ثنائية الأبعاد، يظهر هذا المستوى على هيئة خط؛ أما في ثلاثة أبعاد، فيصبح سطحًا مسطحًا. ويكون المستوى الفائق الأمثل هو الذي يحافظ على أكبر مسافة ممكنة من أقرب نقاط البيانات من أي فئة، بما يضمن تمييزًا واضحًا.
- المتجهات الداعمة: هي نقاط البيانات المهمة التي تقع بالقرب من حد القرار. وتُسمى «المتجهات الداعمة» لأنها تدعم موضع المستوى الفائق واتجاهه أو تحددهما فعليًا. وغالبًا لا يؤثر تعديل نقاط البيانات الأخرى أو إزالتها في النموذج، لكن تحريك متجه داعم يغيّر الحد بدرجة كبيرة. ويُعد هذا المفهوم أساسيًا لكفاءة SVM، كما هو موضح بالتفصيل في دليل SVM الخاص بـ Scikit-learn.
- حيلة النواة: نادرًا ما تكون بيانات العالم الحقيقي، مثل مجموعات بيانات معالجة اللغة الطبيعية (NLP) المعقدة، قابلة للفصل خطيًا. وتعالج SVM هذا القيد باستخدام تقنية تُسمى «حيلة النواة»، التي تُسقط البيانات في فضاء أعلى أبعادًا، حيث يمكن لفاصل خطي تقسيم الفئات بفاعلية. وتشمل النوى الشائعة دالة الأساس الشعاعي (RBF) والنوى متعددة الحدود، مما يتيح للنموذج التقاط العلاقات المعقدة غير الخطية.
SVM مقارنةً بالخوارزميات ذات الصلة#
يساعد تمييز SVM عن تقنيات تعلّم الآلة الأخرى الممارسين على اختيار الأداة المناسبة لمشروعات النمذجة التنبؤية الخاصة بهم.
- الانحدار اللوجستي: كلاهما مصنفان خطيان، لكن أهداف التحسين تختلف بينهما اختلافًا كبيرًا. فالانحدار اللوجستي احتمالي، إذ يعظّم احتمالية البيانات المرصودة، بينما تكون SVM هندسية، إذ تعظّم الهامش بين الفئات. وتميل SVM إلى تحقيق أداء أفضل مع الفئات المنفصلة جيدًا، في حين يوفر الانحدار اللوجستي مخرجات احتمالية معايرة.
- خوارزمية أقرب الجيران (KNN): إن KNN متعلّم غير معلمي قائم على الحالات، يصنّف النقطة استنادًا إلى الفئة الغالبة بين جيرانها. وعلى النقيض من ذلك، فإن SVM نموذج معلمي يتعلم حدًا عامًا. وتوفر SVM عمومًا زمن استجابة استدلال أسرع بعد التدريب، لأنها لا تحتاج إلى تخزين مجموعة البيانات بأكملها والبحث فيها أثناء التشغيل.
- أشجار القرار: تقسم شجرة القرار فضاء البيانات إلى مناطق مستطيلة باستخدام قواعد هرمية. ويمكن لـ SVM إنشاء حدود قرار معقدة ومنحنية عبر النوى، وقد تواجه أشجار القرار صعوبة في تقريبها من دون أن تصبح عميقة بشكل مفرط وعرضة لفرط التكيّف.
- التعلّم العميق الحديث (مثل YOLO26): تعتمد SVM عادةً على هندسة السمات اليدوية، حيث يختار الخبراء المدخلات ذات الصلة. وتتفوّق النماذج المتقدمة مثل Ultralytics YOLO26 في استخراج السمات تلقائيًا مباشرةً من الصور الخام، مما يجعلها أفضل بكثير للمهام الإدراكية المعقدة مثل اكتشاف الكائنات في الوقت الفعلي وتجزئة المثيلات.
التطبيقات الواقعية#
لا تزال آلات المتجهات الداعمة ذات صلة كبيرة في مختلف القطاعات بفضل دقتها وقدرتها على التعامل مع البيانات عالية الأبعاد.
- المعلوماتية الحيوية: تُستخدم SVM على نطاق واسع في التنبؤ ببنية البروتين وتصنيف الجينات. ومن خلال تحليل التسلسلات البيولوجية المعقدة، يستطيع الباحثون تحديد الأنماط المرتبطة بأمراض محددة، مما يساعد في التشخيص المبكر والطب الشخصي.
- تصنيف النصوص: في مجال تلخيص النصوص وترشيح الرسائل غير المرغوب فيها، تتفوّق SVM في التعامل مع الأبعاد العالية لمتجهات النصوص. ويمكنها تصنيف رسائل البريد الإلكتروني بفاعلية إلى «مزعجة» أو «غير مزعجة»، وتصنيف المقالات الإخبارية حسب الموضوع بدقة عالية.
مثال على التنفيذ#
في حين تستخدم مهام الرؤية الحاسوبية الحديثة غالبًا نماذج شاملة مثل Ultralytics YOLO26، لا تزال SVM قوية في تصنيف السمات المستخرجة من هذه النماذج. فعلى سبيل المثال، يمكن استخدام نموذج YOLO لاكتشاف الكائنات واستخراج سماتها، ثم تدريب SVM لتصنيف متجهات السمات المحددة تلك لمهمة متخصصة.
فيما يلي مثال موجز يستخدم مكتبة scikit-learn الشائعة لتدريب مصنف بسيط على بيانات اصطناعية.
from sklearn import svm
from sklearn.datasets import make_classification
from sklearn.model_selection import train_test_split
# Generate synthetic classification data
X, y = make_classification(n_features=4, random_state=0)
X_train, X_test, y_train, y_test = train_test_split(X, y, random_state=0)
# Initialize and train the Support Vector Classifier
clf = svm.SVC(kernel="linear", C=1.0)
clf.fit(X_train, y_train)
# Display the accuracy on the test set
print(f"Accuracy: {clf.score(X_test, y_test):.2f}")بالنسبة إلى الفرق التي تتطلع إلى إدارة مجموعات بيانات أكبر أو تدريب نماذج تعلّم عميق يمكنها استبدال سير عمل SVM أو تعزيزه، توفر منصة Ultralytics أدوات لـوسم البيانات ونشر النماذج بسلاسة. ويمكن للمهتمين بالأسس الرياضية الرجوع إلى الورقة الأصلية التي أعدها Cortes وVapnik (1995)، والتي توضح بالتفصيل تحسين الهامش المرن الذي يتيح لـ SVM التعامل بفاعلية مع البيانات الواقعية المشوشة.









