In SVM classification, the hyper-plane that best separate the two classes in the training dataset is constructed by maximizing the distance between training instances belonging to different classes (margin). As this hyper-plane does not always exist, a limited number of errors is allowed using a "cost" hyperparameter to control the relation between the training errors and the margin size. If linear separation of training classes is not possible in a given feature space, kernel functions are applied to project the data into a higher dimensional space where linear separation is possible. For this algorithm, "cost" was optimized using candidate values of 0.01, 0.1, 1.0, 10.0 and 100.0, and the kernel type to be used was selected from three options being non-kernel ("linear"), radial basis functions ("rbf"), and hyperbolic tangent ("sigmoid").