Допустим, у тебя на столе лежат синие и красные шарики и ты хочешь их разделить по цветам.
Их можно разделить довольно хорошо, если положить палочку:
Но вот какой-то негодяй пришёл и накидал ещё шариков, получилось так, что теперь наша прямая не очень хорошо справляется с работой:
Метод опорных векторов, дальше SVM, делает так, чтобы палочка разделяла шарики таким образом, чтобы расстояние от палочки до ближайших шариков было бы максимальным:
Вот теперь, если этот подлец придёт и повторит свою шалость, у него меньше шансов, что всё получится:
SVM умеет делать ещё одну крутую штуку. Предположим, наш негодяй видит, что так дела не делаются и делает вот такую бяку:
Что вы делаете в порыве ярости? Конечно же разворачиваете стол, на котором лежали шарики! Но тут вы замечаете, что между шариками в какой-то момент можно очень круто просунуть лист картона и шарики будут разделены!
А вот со стороны нашего бедокура всё будет выглядеть так, будто ты разделил шарики какой-то замысловатой кривой:
Чтобы это всё звучало крутово и по-взрослому, шарики называют данными, поиск максимального расстояния на четвёртой картинке оптимизацией, разворот стола - трюком с ядром (kernelling), а картонку - гиперплоскостью.
Переведен топовый ответ вот тут: https://www.reddit.com/r/MachineLearning/comments/15zrpp/please_explain_support_vector_machines_svm_like_i