कर्नेल ट्रिक

R में Support Vector Machines

Kailash Awati

Instructor

मूल विचार

  • ऐसी ट्रांसफॉर्मेशन सोचें जो समस्या को लाइनियरली सेपेरेबल बना दे।
  • हम इसे एक रेडियली सेपेरेबल डेटासेट पर करेंगे।
R में Support Vector Machines

अध्याय 3.3 - निर्णय सीमा सहित रेडियली सेपेरेबल डेटासेट

R में Support Vector Machines

समस्या का रूपांतरण

  • सीमा का समीकरण $x_1 ^ 2 + x_2 ^ 2 = 0.49$
  • $x_1 ^ 2$ को नया वैरिएबल $X_1$ और $x_2 ^ 2$ को $X_2$ में मैप करें
  • $X_1 - X_2$ स्पेस में सीमा का समीकरण बनता है...
  • $X_1 + X_2 = 0.49$ (एक सीधी रेखा!!)
R में Support Vector Machines

X1-X2 स्पेस में प्लॉट - कोड

  • $X_1 - X_2$ स्पेस में डेटासेट प्लॉट करने के लिए ggplot() उपयोग करें
  • सीमा का समीकरण $X_2 = -X_1 + 0.49$:
    • $slope = -1$
    • $yintercept = 0.49$
p <- ggplot(data = df4, aes(x = x1sq, y = x2sq, color = y)) + 
  geom_point() + 
  scale_color_manual(values = c("red", "blue")) +
  geom_abline(slope = -1, intercept = 0.49)

p
R में Support Vector Machines

अध्याय 3.3 - रूपांतरित रेडियली सेपेरेबल डेटासेट, निर्णय सीमा सहित

R में Support Vector Machines

Polynomial Kernel - भाग 1

  • Polynomial kernel: (gamma * (u.v) + coef0) ^ degree
    • degree बहुपद की डिग्री है
    • gamma और coef0 ट्यूनिंग पैरामीटर हैं
    • u, v डेटासेट के वेक्टर (डेटापॉइंट) हैं
  • हम अनुमान लगा सकते हैं कि 2nd डिग्री पॉलिनोमियल चाहिए (ट्रांसफॉर्मेशन)
R में Support Vector Machines

Kernel functions

  • SVM की गणितीय संरचना को कुछ गुणों वाली ट्रांसफॉर्मेशन चाहिए।
  • जो फंक्शन इन गुणों को पूरा करें उन्हें kernel functions कहते हैं
  • Kernel functions, वेक्टर डॉट प्रोडक्ट का सामान्यीकरण हैं
  • मूल विचार - ऐसा कर्नेल चुनें जो डेटा को अच्छी तरह अलग करे!
R में Support Vector Machines

रेडियली सेपेरेबल डेटासेट - क्वाड्रेटिक कर्नेल

  • 80/20 train/test split
  • रेडियली सेपेरेबल डेटासेट पर क्वाड्रेटिक SVM बनाएँ:
    • degree = 2 सेट करें
    • cost, gamma और coef0 के डिफॉल्ट मान रखें (1, 1/2 और 0)
svm_model <- svm(y ~ ., data = trainset, type = "C-classification", kernel = "polynomial", degree = 2)
# Predictions
pred_test <- predict(svm_model, testset)
mean(pred_test == testset$y)
0.9354839
# Visualize model
plot(svm_model, trainset)
R में Support Vector Machines

अध्याय 3.3 - रेडियली सेपेरेबल डेटासेट, डिफॉल्ट कॉस्ट क्वाड्रेटिक कर्नेल, svm.plot से प्लॉट

R में Support Vector Machines

अभ्यास करने का समय!

R में Support Vector Machines

Preparing Video For Download...