Example of Support Vector Machine (SVM) Classifier w/ Cross-Compilation for CUDA & CPU. The Pegasos method for sub-gradient optimization has been implemented.
As of the time of this writing, CUDA-SVM supports three compilation modes:
- CPU Version: By running the
make
command. Ifclang
is available, it will be used as the default compiler. Otherwise,gcc
will be adopted. - CUDA GPU Version: By running the
make cuda
command. - Debug Mode (Currently only supported in CPU): By running the
make debug
command.
In order to generate the datasets (i.e, either the small binary Mushrooms dataset, or the large multilabel RCV1), run the ./fetch_data.sh
command followed by the argument mush
or rcv1
.
Note: As of right now, the RCV1 version has not been implemented.