Displaying 2 results from an estimated 2 matches for "mysvm".
Did you mean:
mysum
2006 Feb 02
0
crossvalidation in svm regression in e1071 gives incorre ct results (PR#8554)
...ystem for contributed packages.
2. This is _not_ a bug in svm() in `e1071'. I believe you forgot to take
sqrt.
3. You really should use the `tot.MSE' component rather than the mean of
the `MSE' component, but this is only a very small difference.
So, instead of spread[i] <- mean(mysvm$MSE), you should have spread[i] <-
sqrt(mysvm$tot.MSE). I get:
> spread <- rep(0,20)
> for (i in 1:20) {
+ spread[i] <- svm(y ~ x,data, cross=10)$tot.MSE
+ }
> summary(sqrt(spread[i]))
Min. 1st Qu. Median Mean 3rd Qu. Max.
0.2679 0.2679 0.2679 0.2679 0.2679...
2006 Feb 02
0
crossvalidation in svm regression in e1071 gives incorrect results (PR#8554)
...e e1071 package from CRAN:
Version: 1.5-11
Date: 2005-09-19
(3) Example code illustrating the problem
library(e1071)
set.seed(42)
# create data
x <- seq(0.1, 5, by = 0.05)
y <- log(x) + rnorm(x, sd = 0.2)
data <- as.data.frame(cbind(y,x))
# estimate model and predict input values
mysvm <- svm(y ~ x,data)
result <- predict(mysvm, data)
(rmse <- sqrt(mean((result-data[,1])**2)))
# 0.2390489
# built-in 10-fold CV estimate of prediction error
spread <- rep(0,20)
for (i in 1:20) {
mysvm <- svm(y ~ x,data,cross=10)
spread[i] <- mean(mysvm$MSE)
}
summary...