Skip to content

Latest commit

 

History

History
68 lines (44 loc) · 2.15 KB

README.md

File metadata and controls

68 lines (44 loc) · 2.15 KB

LibSVMsharp

LibSVMsharp is a simple and easy-to-use C# wrapper for Support Vector Machines. This library uses LibSVM version 3.23 with x64 support, released on 15th of July in 2018.

For more information visit the official libsvm webpage.

How to Install

To install LibSVMsharp, download the Nuget package or run the following command in the Package Manager Console:

PM> Install-Package LibSVMsharp

License

LibSVMsharp is released under the MIT License and libsvm is released under the modified BSD Lisence which is compatible with many free software licenses such as GPL.

Example Codes

Simple Classification

SVMProblem problem = SVMProblemHelper.Load(@"dataset_path.txt");
SVMProblem testProblem = SVMProblemHelper.Load(@"test_dataset_path.txt");

SVMParameter parameter = new SVMParameter();
parameter.Type = SVMType.C_SVC;
parameter.Kernel = SVMKernelType.RBF;
parameter.C = 1;
parameter.Gamma = 1;

SVMModel model = SVM.Train(problem, parameter);

double[] target = new double[testProblem.Length];
for (int i = 0; i < testProblem.Length; i++)
  target[i] = SVM.Predict(model, testProblem.X[i]);

double accuracy = SVMHelper.EvaluateClassificationProblem(testProblem, target);

Simple Classification with Extension Methods

SVMProblem problem = SVMProblemHelper.Load(@"dataset_path.txt");
SVMProblem testProblem = SVMProblemHelper.Load(@"test_dataset_path.txt");

SVMParameter parameter = new SVMParameter();

SVMModel model = problem.Train(parameter);

double[] target = testProblem.Predict(model);
double accuracy = testProblem.EvaluateClassificationProblem(target);

Simple Regression

SVMProblem problem = SVMProblemHelper.Load(@"dataset_path.txt");
SVMProblem testProblem = SVMProblemHelper.Load(@"test_dataset_path.txt");

SVMParameter parameter = new SVMParameter();

SVMModel model = problem.Train(parameter);

double[] target = testProblem.Predict(model);
double correlationCoeff;
double meanSquaredErr = testProblem.EvaluateRegressionProblem(target, out correlationCoeff);