Note: you may have to disable your adblocker for this demo to work.



Upps, something went wrong...


Add points to each of the two classes by left- and right-clicking inside the canvas to trigger the computation of a SVM model.


  • Left- and right-click to add points belonging to either one of two classes to the canvas. Use the “Toggle” button to swap the classes associated with primary and secondary click if right-click is not an option (e.g. on mobile).
  • At least one point in each class is necessary to “learn” an SVM model.
  • Adjust the regularization parameter \(\nu\) between 0 and 1. Small values correspond to a hard margin, i.e. low tolerance towards misclassified data and may lead to overfitting of noisy data. Large values correspond to a soft margin and may ignore features in the data.
  • Large values of \(\nu\) that are approaching 1 may cause the SVM optimization to fail.
  • Select a kernel from the drop down menu. The definition of the currently selected kernel is displayed next to the drop down.
  • As far as applicable, alter the parameters \(\gamma\) and \(c_0\) that enter the definition of the kernel.
  • For the quadratic kernel, the decision boundary is a conic section.
  • A modern browser is required, capable of executing WebAssembly.