robbyjo

SVM with out of bound RSquared

Aug 4th, 2024
419
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
R 0.62 KB | Source Code | 0 0
  1. library(e1071)
  2. set.seed(100)
  3.  
  4. df <- data.frame(x = cumsum(rnorm(100)),
  5.                  y = cumsum(rnorm(100)))
  6. #df <- df[sample(1:NROW(df), size=NROW(df)), ] # Shuffler
  7. train_df <- df[1:80,]
  8. test_df <- df[81:100,]
  9. train <- svm(y ~ x, data=train_df)
  10. r2 <- function(data, model, response) {
  11.    preds <- predict(model, data)
  12.    y <- data[, response]
  13.    null_mse <- mean( (y - mean(y))^2)
  14.    model_mse <- mean( (y - preds))
  15.    return((null_mse - model_mse) / null_mse)
  16. }
  17. r2(train_df, train, "y") # Unshuffled: 1.005112, Shuffled: 1.007262
  18. r2(test_df, train, "y") # Unshuffled: -0.09819974, Shuffled: 1.123228
  19.  
  20.  
Tags: svm RSquared
Advertisement
Add Comment
Please, Sign In to add comment