Working with Kernels in TensorFlow
The prior SVMs worked with linear separable data. If we would like to separate non-linear data, we can change how we project the linear separator onto the data. This is done by changing the kernel in the SVM loss function. In this chapter, we introduce how to changer kernels and separate non-linear separable data.
Getting ready
In this recipe, we will motivate the usage of kernels in support vector machines. In the linear SVM section, we solved the soft margin with a specific loss function. A different approach to this method is to solve what is called the dual of the optimization problem. It can be shown that the dual for the linear SVM problem is given by the following formula:
Where:
Here, the variable in the model will be the b vector. Ideally, this vector will be quite sparse, only taking on values near 1
and -1
for the corresponding support vectors of our dataset. Our data point vectors are indicated by and our targets (1
or -1
) are represented by ...