ho sintonizzato uno SVM con diversi valori di costo e di gamma per un datasetCome creare una trama di contorno in R
> library(e1071)
> library(foreign)
> dataframe <- read.arff("/diabetes.arff")
> index <- seq_len(nrow(dataframe))
> trainindex <- sample(index, trunc(length(index)/2))
> trainset <- dataframe[trainindex, ]
> testset <- dataframe[-trainindex, ]
> tunedsvm <- tune.svm(class ~ ., data = trainset, gamma = 2^(seq(-15,3,by=2)), cost = 2^(seq(-5,15,by=2)))
> tunedsvm
Parameter tuning of ‘svm’:
- sampling method: 10-fold cross validation
- best parameters:
gamma cost
0.0001220703 2048
- best performance: 0.2187029
> head(tunedsvm$performances)
gamma cost error dispersion
1 3.051758e-05 0.03125 0.351546 0.06245835
2 1.220703e-04 0.03125 0.351546 0.06245835
3 4.882812e-04 0.03125 0.351546 0.06245835
4 1.953125e-03 0.03125 0.351546 0.06245835
5 7.812500e-03 0.03125 0.351546 0.06245835
6 3.125000e-02 0.03125 0.351546 0.06245835
> nrow(tunedsvm$performances)
[1] 110
Voglio creare una trama di contorno simile a quello che genera MATLAB (qui di seguito è un esempio)
ho provato il comando plot
ma il contorno non può dedurre molto dal terreno che genera.
> plot(tunedsvm)
forse gli esempi nella pagina di aiuto 'plot.svm' aiuterà? – ckluss
Non ti piace 'graphics :: contour'? –
@CarlWitthoft Non sono a conoscenza di quel pacchetto che ho provato per il contorno (tunesvm) ma ha detto che non è stata specificata la corretta matrice 'z' – birdy