0Pricing
Learn AI with Python · درس

استخدام SVM للانحدار (SVR)

أنبوب epsilon في SVR، وnu-SVR، ومقارنة SVR بالانحدار الخطي على البيانات غير الخطية

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

يمكن لـ SVM تنفيذ الانحدار أيضًا

يمتد مفهوم الهامش إلى الانحدار. يعمل الانحدار بالمتجهات الداعمة (SVR) على ملاءمة دالة مع إبقاء التنبؤات ضمن نطاق من التفاوت، متجاهلًا الأخطاء الصغيرة.

أنبوب epsilon غير الحساس

يرسم SVR أنبوب epsilon حول الدالة المتوقعة. لا تسهم النقاط داخل الأنبوب في الخسارة؛ ولا تُعاقَب إلا النقاط الموجودة خارجه. وهذا يركّز النموذج على الأخطاء المهمة.

لماذا يفيد الأنبوب

بتجاهله الانحرافات الطفيفة، يقاوم SVR فرط ملاءمة الضوضاء وينتج ملاءمة أكثر سلاسة ومتانة. فالتذبذبات الصغيرة الواقعة ضمن نطاق التفاوت لا تؤثر ببساطة في النموذج.

الاستخدام الأساسي لـ SVR

يحاكي SVR واجهة SVC ويدعم النوى نفسها. ويُعد RBF الخيار الافتراضي الشائع للانحدار غير الخطي.

from sklearn.svm import SVR

model = SVR(kernel="rbf", C=100, epsilon=0.1, gamma="scale")
model.fit(Xtr, ytr)
print(model.score(Xte, yte))

المعامل epsilon

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

from sklearn.svm import SVR

wide = SVR(epsilon=1.0)   # tolerant, simpler
tight = SVR(epsilon=0.01) # fits closely

المعامل C في SVR

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

from sklearn.svm import SVR

flexible = SVR(C=1000)  # fits training closely
smooth = SVR(C=0.1)     # more regularized

epsilon مقابل C: معامِلان مختلفان

تذكروا الفرق: يتحكم epsilon في عرض الأنبوب (مقدار الخطأ الذي يجب تجاهله)، بينما يتحكم C في العقوبة على الأخطاء الواقعة خارج الأنبوب. اضبطوا كليهما.

التحجيم مهم في SVR أيضًا

مثل جميع نماذج SVM، يعتمد SVR على المسافات ويتأثر بمقياس البيانات. احرصوا دائمًا على تقييس الميزات، وفكروا أيضًا في تقييس الهدف لتحقيق تدريب مستقر.

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

pipe = make_pipeline(StandardScaler(), SVR(kernel="rbf"))
pipe.fit(Xtr, ytr)

ضبط SVR

أجروا بحثًا شبكيًا على C وgamma وepsilon للعثور على أفضل ملاءمة. استخدموا مقياسًا خاصًا بالانحدار للتقييم، مثل سالب متوسط مربع الخطأ.

from sklearn.model_selection import GridSearchCV
from sklearn.svm import SVR

param = {
    "C": [1, 10, 100],
    "gamma": [0.01, 0.1, 1],
    "epsilon": [0.01, 0.1, 0.5],
}
gs = GridSearchCV(SVR(), param, cv=5, scoring="neg_mean_squared_error")
gs.fit(Xtr, ytr)

تنويعة nu-SVR

يستبدل NuSVR المعامل epsilon بالمعامل nu (بين 0 و1)، الذي يتحكم مباشرةً في نسبة متجهات الدعم وأخطاء التدريب؛ وهو تمثيل بديل يراه بعض المستخدمين أسهل للفهم.

from sklearn.svm import NuSVR

model = NuSVR(nu=0.5, C=100, kernel="rbf")
model.fit(Xtr, ytr)

متى تستخدمون SVR

يعمل SVR جيدًا على مجموعات البيانات الصغيرة إلى المتوسطة ذات الأنماط غير الخطية، وعندما تكون المتانة أمام الضوضاء مهمة. أما مع البيانات الضخمة جدًا، ففضّلوا النماذج الخطية أو التعزيز بالتدرج، إذ تتوسع هذه النماذج بكفاءة أكبر.

تحقق سريع

اختبروا معرفتكم بـ SVR.

خلاصة

الخلاصة: يلاءم SVR دالة داخل أنبوب غير حساس لـ epsilon تكون تكلفة النقاط داخله صفرًا. يحدد epsilon عرض الأنبوب (الأكبر يعني نموذجًا أبسط)، بينما يفرض C عقوبة على النقاط الواقعة خارجه. احرصوا دائمًا على تحجيم الميزات، واضبطوا C/gamma/epsilon، وفكروا في NuSVR كتمثيل بديل.

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

هل درس «استخدام SVM للانحدار (SVR)» مجاني؟

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

ماذا ستتعلم في «استخدام SVM للانحدار (SVR)»؟

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

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

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

كم من الوقت يستغرق درس «استخدام SVM للانحدار (SVR)»؟

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