0Pricing
Learn AI with Python · درس

نظرية SVM: الهوامش ومتجهات الدعم

مصنّف الهامش الأقصى، والهامش الصلب مقابل الهامش المرن (المعامل C)، ومتجهات الدعم

نظرية SVM: الهوامش ومتجهات الدعم درس مجاني في Learn AI with Python على CoddyKit. هذا هو الدرس 1 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Learn AI with Python، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Learn AI with Python 4 دروس في المجموع.

ما هو SVM

إن آلة متجهات الدعم هي مُصنِّف يبحث عن الحد الفاصل الأفضل بين فئتين. وبدلًا من اختيار أي خط فاصل، يبحث عن الخط الذي يحقق أوسع فجوة بين الفئتين.

المستوى الفائق الفاصل

في بُعدين يكون الحد الفاصل خطًا، أما في الأبعاد الأعلى فهو مستوى فائق. ويعرّفه SVM بالصيغة w . x + b = 0، ثم يصنّف النقاط وفق الجانب الذي تقع فيه.

الهامش

إن الهامش هو المسافة بين المستوى الفائق وأقرب النقاط من كل فئة. تعمل SVMs على تعظيم هذا الهامش، لأن الفجوة الأوسع تعمم عادةً بصورة أفضل على البيانات الجديدة.

المستوى الفائق ذو الهامش الأقصى

من بين جميع الحدود الفاصلة الصحيحة، يختار SVM المستوى الفائق ذو الهامش الأقصى: أي المستوى الأبعد عن أقرب النقاط على جانبيه. وهذه هي الفكرة الأساسية التي تجعل SVMs قوية.

متجهات الدعم

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

from sklearn.svm import SVC

model = SVC(kernel="linear")
model.fit(X, y)
print("Support vectors:\n", model.support_vectors_)
print("Indices:", model.support_)

أهمية متجهات الدعم

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

الهامش الصارم

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

مشكلة الهوامش الصارمة

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

الهامش المرن

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

المعلمة C

تحدّد C عقوبة الانتهاكات. فـالقيمة الأكبر لـ C تعاقب الأخطاء بشدة، وتنتج هامشًا أصغر يلائم بيانات التدريب بدقة (مع خطر فرط التكيّف). أما القيمة الأصغر لـ C فتسمح بمرونة أكبر وهامش أوسع (ومزيد من الانتظام).

from sklearn.svm import SVC

strict = SVC(C=100, kernel="linear")   # narrow margin, fits closely
relaxed = SVC(C=0.1, kernel="linear")  # wide margin, more tolerant

ضبط C عمليًا

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

from sklearn.model_selection import GridSearchCV
from sklearn.svm import SVC

gs = GridSearchCV(SVC(kernel="linear"), {"C": [0.01, 0.1, 1, 10, 100]}, cv=5)
gs.fit(X, y)
print("Best C:", gs.best_params_)

اختبار سريع

اختبر فهمك لنظرية SVM.

مراجعة

مراجعة: تبحث SVMs عن المستوى الفائق ذي الهامش الأقصى الذي يفصل بين الفئات. وتمثل متجهات الدعم أقرب النقاط، وهي وحدها تحدد الحد الفاصل. ويحتاج الهامش الصارم إلى فصل مثالي، بينما يسمح الهامش المرن بالانتهاكات التي تتحكم فيها C (كلما زادت C صغر الهامش وقلّ الانتظام).

الأسئلة الشائعة

هل درس «نظرية SVM: الهوامش ومتجهات الدعم» مجاني؟

نعم — نص درس «نظرية SVM: الهوامش ومتجهات الدعم» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Learn AI with Python، انتقل إلى CoddyKit PRO. تتضمن دورة Learn AI with Python 4 دروس في المجموع.

ماذا ستتعلم في «نظرية SVM: الهوامش ومتجهات الدعم»؟

مصنّف الهامش الأقصى، والهامش الصلب مقابل الهامش المرن (المعامل C)، ومتجهات الدعم تتمرن على Learn AI with Python مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.

هل أحتاج إلى خبرة سابقة لأبدأ Learn AI with Python؟

لا تُشترط خبرة سابقة. Learn AI with Python على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 1 من أصل 4.

كم من الوقت يستغرق درس «نظرية SVM: الهوامش ومتجهات الدعم»؟

معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.

هل يمكنني كتابة وتشغيل أكواد في درس Learn AI with Python هذا؟

نعم. كل درس في Learn AI with Python يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.

جميع الدروس في هذه الدورة

  1. نظرية SVM: الهوامش ومتجهات الدعم
  2. حيلة النواة: RBF ومتعددة الحدود وSigmoid
  3. استخدام SVM للتصنيف مع sklearn
  4. استخدام SVM للانحدار (SVR)
← العودة إلى Learn AI with Python