The mission of ThunderSVM is to help users easily and efficiently apply SVMs to solve problems. Some key features of ThunderSVM are as follows.
- Support one-class, binary and multi-class SVM classification, SVM regression, and SVMs with probability outputs.
- Have Python, R and Matlab interfaces.
- CUDA
- cmake > 2.8
- gcc > 4.8
git clone git@github.com:zeyiwen/thundersvm.git
cd thundersvm
mkdir build && cd build && cmake .. && make -j
bin\thundersvm-train -c 100 -g 0.5 ../dataset/test_dataset.txt
bin\thundersvm-predict ../dataset/test_dataset.txt test_dataset.model test_dataset.predict
You will see Accuracy = 0.98
after successful running.
If you don't have GPUs, ThunderSVM can work with CPU only.
ThunderSVM uses Eigen for matrix calculation. To use Eigen, just initialize the submodule.
# in thundersvm root directory
git submodule init eigen && git submodule update
# in thundersvm root directory
mkdir build && cd build && cmake -DUSE_CUDA=OFF -DUSE_EIGEN=ON .. && make -j
Now ThunderSVM will work solely on CPUs and does not rely on CUDA.
- integrate with interfaces