J'ai besoin d'un package qui peut me donner l'équation d'un modèle SVM linéaire. Actuellement, j'utilise e1071 comme ceci:
library(e1071)
m = svm(data, labels, type='C', kernel='linear', cost=cost, probability=FALSE, scale=scale)
w = t(m$coefs) %*% data[m$index,] #Weight vector
b = -model$rho #Offset
Cependant, je ne sais pas comment e1071::svm()
sélectionne les classes positives et négatives, donc je pense que cela pourrait bousiller avec différents ensembles de données. Quelqu'un peut-il confirmer comment cette fonction décide quelle classe est positive et laquelle est négative?
Existe-t-il également un meilleur package pour cela?
Réponses:
newdata
ou
Soyez prudent lorsque vous utilisez SVM à partir du package e1071, voir Problème avec libsvm e1071? question. Plusieurs autres packages SVM pour R sont kernlab, klaR et svmpath, voir cet aperçu: Prise en charge des machines vectorielles dans R par A. Karatzoglou et D. Meyer.
la source