Feature selection for SVMs
However, all is not lost on feature selection and I want to take some space to show you a quick way of how to begin exploring this matter. It will require some trial and error on your part. Again, the caret
package helps out in this matter as it will run a cross-validation on a linear SVM based on the kernlab
package.
To do this, we will need to set the random seed, specify the cross-validation method in the caret's rfeControl()
function, perform a recursive feature selection with the rfe()
function, and then test how the model performs on the test
set. In rfeControl()
, you will need to specify the function based on the model being used. There are several different functions that you can use. Here we will need lrFuncs
. To see a list of the available functions, your best bet is to explore the documentation with ?rfeControl
and ?caretFuncs
. The code for this example is as follows:
> set.seed(123) > rfeCNTL <- rfeControl(functions = lrFuncs, method = "cv",...