Skip to content

기계학습 SVM #
Find similar titles

You are seeing an old version of the page. Go to latest version

Structured data

Category
Programming
Computer science
Algorithm



Introduction #

In Machine Learning, Support Vector Machines (SVMs) are a popular algorithm with many usages. First, we will talk about what SVMs do.

Suppose, we have 2 kind classed with different data points:

Image

출처 : A quick look at Support Vector Machiones

SVM takes all data which is shown in the picture and tries to find a line that separates it. It is called decision boundary. There might be many lines but which one could be the best? SVM will choose the line which maximises the margin. Margin is the distance between the separating line and the nearest point of either of the two classes.

Image

출처 : A quick look at Support Vector Machiones

Decision boundary which has smaller margin is more prone to over fitting, while large margins can give more robust results.

But, how about other complex data? In this picture, we can see this that SVM can not help us to separate data, as it has very complex data points.

Image

출처 : A quick look at Support Vector Machiones

But, there should be a solution. Now we have 2 features on this data, which are x and y, how about if we can add one more feature to it? Let's choose a value for the new feature which may work: x^2 + y^2. Now we have 3 dimensions and the z axis has value x^2 + y^2. This is equal to the distance of each point from the origin.

Image

출처 : A quick look at Support Vector Machiones

Then we can separate data with line.

Image

출처 : A quick look at Support Vector Machiones

Let's take this solution and go back to our original 2 dimensional space. Since we have z axis has an equation of x^2 + y^2, it corresponds to a circle:

Image

출처 : A quick look at Support Vector Machiones

References #

  1. Wikipedia-Support vector machine
  2. A quick look at Support Vector Machiones
0.0.1_20210630_7_v33