الوحدة 4 — أقرب الجيران والآلات ذات المتّجهات الداعمة
بعد النماذج الخطّية، مقاربتان هندسيتان للتصنيف. تُراهن أقرب الجيران على القرب كلّه: المتشابهُ يُشبِه المتشابه. أمّا SVM فتبحث عن الحدّ الذي يفصل الأصناف بأكبر هامش أمان. فلسفتان متضادّتان — لا تعلّم البتّة مقابل تحسين دقيق — ودروسٌ متكاملة.
أقرب الجيران: التنبّؤ بالنظر إلى الجيران
تختصر خوارزمية أقرب الجيران في جملة: لتصنيف نقطة جديدة، ابحث عن أقرب نقاط تدريبية وخذ التصويت بالأغلبية. لا مرحلة تدريب بالمعنى المعتاد — النموذج هو مجموعة البيانات. والمسافة (الإقليدية غالباً — معايير دورة الرياضيات) تقوم بالعمل كلّه.
from sklearn.neighbors import KNeighborsClassifier
from sklearn.preprocessing import StandardScaler
X_train_s = StandardScaler().fit_transform(X_train) # حتمي: المقياس نفسه
model = KNeighborsClassifier(n_neighbors=5).fit(X_train_s, y_train)
التقييس غير قابل للتفاوض هنا: فمتغيّر ذو مقياس كبير سيسحق البقية في حساب المسافة.
اختيار k: مقايضة الانحياز والتباين من جديد
- k صغيرة (1 أو 3): حدٌّ شديد المرونة، حسّاسٌ للضجيج ← إفراط في التعلّم (تباين مفرط).
- k كبيرة: حدٌّ مُنعَّم، يُغرِق التصويتُ البنيةَ المحلّية ← قصور في التعلّم (انحياز مفرط).
نضبط بالتحقّق المتقاطع. وهناك حدّان بنيويان يجب معرفتهما: التنبّؤ بطيء على مجموعات البيانات الكبيرة (يجب المقارنة بكلّ نقطة)، والأداء ينهار في الأبعاد العالية — لعنة الأبعاد حي ث تفقد المسافات معناها، كما رأينا في دورة الرياضيات.
SVM: حدّ الهامش الأوسع
من بين كلّ المستقيمات التي تفصل صنفين، أيّها أفضل؟ تُجيب SVM: ذاك الذي يمرّ بأبعد ما يمكن عن نقاط الصنفين معاً — حدّ الهامش الأقصى. والحدس: كلّما اتّسع ممرّ الأمان، تحمّل الحدُّ التغيّراتِ الصغيرة للبيانات الجديدة على نحوٍ أفضل، فتحسّن التعميم.
تُسمّى النقاط التي تلامس حافّة الهامش المتّجهات الداعمة: هي وحدها تُحدّد الحدّ. احذف أيّ نقطة أخرى ولا يتغيّر شيء — اقتصادٌ لافت.
from sklearn.svm import SVC
model = SVC(kernel="rbf", C=1.0).fit(X_train_s, y_train)
يضبط المعامل C صرامة الهامش: C كبيرة لا تتحمّل أيّ نقطة داخل الهامش (خطر الإفراط في التعلّم)، وC صغيرة تقبل مخالفات مقابل هامش أوسع وأمتن. المِزلاج نفسه كـ في الوحدة 2، لكن معكوساً.
حيلة النواة: فصل ما لا يُفصَل
حين لا يفصل أيّ مستقيمٍ الأصناف، تلعب SVM ورقتها الرابحة: حيلة النواة. الفكرة — إسقاط البيانات في فضاء أعلى بُعداً حيث تصبح قابلة للفصل الخطّي، دون حساب ذلك الإسقاط صراحةً قطّ. ونواة RBF (الغوسية) هي الافتراض متعدّد الاستعمالات، القادر على رسم حدودٍ مرنة بأيّ درجة في الفضاء الأصلي.
أقرب الجيران: مجموعة صغيرة، أبعاد قليلة، حاجةٌ إلى نموذج قابل للشرح («حالتك تُشبِه هذه الحالات الخمس المعروفة»). SVM: مجموعة متوسّطة، حدٌّ معقّد، متغيّرات مُقيَّسة. وعلى المجموعات الضخمة جدّاً يُفسِح الاثنان المجال للأشجار والتعزيز في الوحدات القادمة — ولهذا تتّجه الدورة الآن نحو الأشجار.
الخلاصة
- تُصنّف أقرب الجيران بالتصويت بالأغلبية بين أقرب جيران: لا تدريب، لكن التقييس واجبٌ والتنبّؤ بطيء.
- اختيار يُعيد مقايضة الانحياز والتباين: صغيرة تُفرِط، وكبيرة تُنعّم أكثر ممّا ينبغي.
- تبحث SVM عن حدّ الهامش الأقصى، المُحدَّد بالمتّجهات الداعمة وحدها؛ و
Cتضبط الصرامة. - تسمح حيلة النواة (RBF) بفصل أصنافٍ غير خطّية دون إسقاطٍ صريح.
الوحدة التالية: أشجار القرار — نماذج مقروءة تقسّم الفضاء بقواعد «إذا/عندئذٍ».