0Pricing
Learn AI with Python · درس

حيلة النواة: RBF ومتعددة الحدود وSigmoid

سبب فعالية النوى، ومعامل gamma لنواة RBF، واختيار النوى لأشكال البيانات المختلفة

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

عندما لا تكفي الخطوط

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

الإسقاط إلى أبعاد أعلى

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

حيلة النواة

تحسب حيلة النواة التشابه K(x, z) بين النقاط كما لو أنها أُسقطت في أبعاد عالية، من دون تنفيذ عملية الإسقاط المكلفة فعليًا. وهذا يجعل SVMs غير الخطية فعّالة.

ما هي دالة النواة

إن النواة K(x, z) هي دالة تُرجع الضرب النقطي للمتجهين x وz في فضاء سمات عالي الأبعاد. وتؤدي النوى المختلفة إلى تحويلات مختلفة للسمات وأشكال مختلفة للحدود الفاصلة.

نواة RBF

تُعد نواة RBF (الغوسية) الإعداد الافتراضي الأكثر شيوعًا: K(x, z) = exp(-gamma * ||x - z||^2). وهي تقيس تشابهًا يتناقص مع المسافة، مما يسمح بحدود فاصلة مرنة ومنحنية.

from sklearn.svm import SVC

model = SVC(kernel="rbf", gamma="scale", C=1.0)
model.fit(X, y)

المعلمة gamma

تتحكم gamma في عرض نواة RBF. تعني القيمة الكبيرة لـ gamma أن تأثير كل نقطة ضيق، مما ينتج حدًا فاصلًا متعرجًا قد يؤدي إلى فرط التكيّف. أما القيمة الصغيرة لـ gamma فتعني تأثيرًا واسعًا وحدًا فاصلًا أكثر سلاسة.

from sklearn.svm import SVC

wiggly = SVC(kernel="rbf", gamma=10)    # tight, can overfit
smooth = SVC(kernel="rbf", gamma=0.01)  # broad, may underfit

استخدام gamma وC معًا

تعتمد SVMs بنواة RBF على كل من gamma (مرونة الحد الفاصل) وC (التسامح مع الأخطاء). وتتفاعل المعلمتان، لذلك تضبطهما عادةً معًا باستخدام البحث الشبكي.

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

param = {"C": [0.1, 1, 10], "gamma": [0.01, 0.1, 1]}
gs = GridSearchCV(SVC(kernel="rbf"), param, cv=5)
gs.fit(X, y)

نواة Polynomial

تنمذج نواة Polynomial K(x, z) = (gamma * x . z + r)^degree التفاعلات حتى درجة محددة. استخدمها عندما تتوقع تفاعلات بين السمات من رتبة معروفة.

from sklearn.svm import SVC

model = SVC(kernel="poly", degree=3, coef0=1, gamma="scale")
model.fit(X, y)

نواة Sigmoid

تتصرف نواة Sigmoid K(x, z) = tanh(gamma * x . z + r) مثل دالة تنشيط في شبكة عصبية. وهي أقل شيوعًا، وليست نواة صالحة دائمًا، لذلك نادرًا ما تكون الخيار الأول.

from sklearn.svm import SVC

model = SVC(kernel="sigmoid", gamma="scale", coef0=0)

اختيار النواة

إرشادات:

  • Linear للبيانات عالية الأبعاد أو البيانات النصية
  • RBF كخيار افتراضي قوي عمومًا للبيانات غير الخطية
  • Polynomial عندما تكون التفاعلات من درجة معروفة مهمة
  • Sigmoid نادرًا، وفي الحالات المتخصصة

احرص دائمًا على تحجيم السمات

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

from sklearn.pipeline import make_pipeline
from sklearn.preprocessing import StandardScaler
from sklearn.svm import SVC

pipe = make_pipeline(StandardScaler(), SVC(kernel="rbf"))
pipe.fit(X, y)

اختبار سريع

اختبر معرفتك بالنوى.

مراجعة

مراجعة: تحسب حيلة النواة K(x, z) بوصفها ضربًا نقطيًا في أبعاد عالية من دون تكلفة الإسقاط، مما يتيح إنشاء حدود فاصلة غير خطية. وتستخدم RBF الصيغة exp(-gamma * ||x-z||^2)، حيث تؤدي القيمة الكبيرة لـ gamma إلى فرط التكيّف. وتلتقط Polynomial التفاعلات حتى الدرجة d. احرص دائمًا على تحجيم السمات قبل استخدام SVMs بنواة.

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

هل درس «حيلة النواة: RBF ومتعددة الحدود وSigmoid» مجاني؟

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

ماذا ستتعلم في «حيلة النواة: RBF ومتعددة الحدود وSigmoid»؟

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

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

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

كم من الوقت يستغرق درس «حيلة النواة: RBF ومتعددة الحدود وSigmoid»؟

معظم دروس 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