The Shark-ML library has a more low-level approach to the multi-class classification problem. Logistic regression and SVM classifiers are implemented as binary classifiers. The user therefore has to explicitly train classifiers and configure the object of the OneVersusOneClassifier class to combine them in a multi-class classifier. The kNN algorithm is a multi-class classifier by nature.