O kernel RBF

Support Vector Machines em R

Kailash Awati

Instructor

RBF em poucas palavras

  • Função decrescente da distância entre dois pontos no conjunto de dados.
  • Simula o algoritmo k-NN.
Support Vector Machines em R

Capítulo 4.3 - Kernel RBF - influência em função da distância entre pontos

Support Vector Machines em R

Construindo um SVM com kernel RBF

  • Construa um SVM com kernel RBF para um conjunto de dados complexo
svm_model <- svm(y ~ ., 
                data = trainset, 
                type = "C-classification",
                kernel = "radial")
  • Calcule a acurácia de treino/teste e faça o gráfico usando o conjunto de treino.
pred_train <- predict(svm_model, trainset)
mean(pred_train == trainset$y)
0.93125
pred_test <- predict(svm_model, testset)
mean(pred_test == testset$y)
0.9416667
#plot decision boundary
plot(svm_model, trainset)
Support Vector Machines em R

Capítulo 4.3 - conjunto complexo, kernel RBF padrão, gráfico com svm.plot

Support Vector Machines em R

Refinando a fronteira de decisão

  • Ajuste gamma e cost com tune.svm()
# Ajustar hiperparâmetros
tune_out <- tune.svm(x = trainset[,-3],
                     y = trainset[,3],
                     gamma = 5 * 10 ^ (-2:2),
                     cost = c(0.01, 0.1, 1, 10, 100),
                     type = "C-classification",
                     kernel = "radial")
  • Exiba os melhores parâmetros
# Mostrar os melhores valores de cost e gamma
tune_out$best.parameters$cost
1
tune_out$best.parameters$gamma
5
Support Vector Machines em R

O modelo ajustado

  • Construa o modelo ajustado usando best.parameters
svm_model <- svm(y ~ ., data = trainset, 
              type = "C-classification", 
              kernel = "radial",
              cost = tune_out$best.parameters$cost,
              gamma = tune_out$best.parameters$gamma)
  • Calcule a acurácia de teste
mean(pred_test == testset$y)
0.95
  • Faça o gráfico da fronteira de decisão
plot(svm_model, trainset)
Support Vector Machines em R

Capítulo 4.3 - conjunto complexo, kernel RBF ajustado, gráfico com svm.plot

Support Vector Machines em R

Vamos praticar!

Support Vector Machines em R

Preparing Video For Download...