Bonjour,

J'ai exécuté avec succès le SVM sur mes données. Mais maintenant j'aimerais reconstituer la formule litterale pour pouvoir l'utiliser par la suite dans un programme dans un autre langage. Je dois donc retomber sur les valeur de predict avec ma fonction calculSVM mais je n'y parviens pas et je ne comprend pas pourquoi

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
library(e1071)
model <- svm(cote ~ .,data,kernel='radial')
predict(model, subset(data, select = - c(cote))) #première valeur 7.859053
 
alpha=model$coefs
SV=model$SV
gamma=model$gamma
 
calculSVM <- function(alphaI,gammaI,SVI,X,rho){
   ret=0
   for(i in 1:length(alphaI))
   {
      ret=ret+ alphaI[i] * exp(-gammaI*norm(as.matrix(SVI[i,]-X))^2)
   }
   ret-rho
}
 
calculSVM(alpha,gamma,SV,data[1,1:13],model$rho) #renvoit  0.8267699   (!=7.859053)