Skip to content

Instantly share code, notes, and snippets.

@EvanOman
Last active May 26, 2018 17:20
Show Gist options
  • Star 2 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save EvanOman/9b7f5659b5de988a0da21e1e3389e864 to your computer and use it in GitHub Desktop.
Save EvanOman/9b7f5659b5de988a0da21e1e3389e864 to your computer and use it in GitHub Desktop.
Please explain Support Vector Machines (SVM) like I am a 5 year old.

Please explain Support Vector Machines (SVM) like I am a 5 year old.

Not my work, source: r/copperking on reddit

We have 2 colors of balls on the table that we want to separate.

We get a stick and put it on the table, this works pretty well right?

Some villain comes and places more balls on the table, it kind of works but one of the balls is on the wrong side and there is probably a better place to put the stick now.

SVMs try to put the stick in the best possible place by having as big a gap on either side of the stick as possible.

Now when the villain returns the stick is still in a pretty good spot.

There is another trick in the SVM toolbox that is even more important. Say the villain has seen how good you are with a stick so he gives you a new challenge.

There’s no stick in the world that will let you split those balls well, so what do you do? You flip the table of course! Throwing the balls into the air. Then, with your pro ninja skills, you grab a sheet of paper and slip it between the balls.

Now, looking at the balls from where the villain is standing, they balls will look split by some curvy line.

Boring adults the call balls data, the stick a classifier, the biggest gap trick optimization, call flipping the table kernelling and the piece of paper a hyperplane.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment