Printer-friendly version### Introduction

#### Separating Hyperplanes

#### Review of Vector Algebra

#### Rosenblatt’s Perceptron Learning

#### Stochastic Gradient Descent

#### Issues

#### Optimal Separating Hyperplanes

Construct linear decision boundaries that explicitly try to separate the data into different classes as well as possible.

Good separation is defined in a certain form mathematically.

Even when the training data can be perfectly separated by hyperplanes, LDA or other linear methods developed under a statistical framework may not achieve perfect separation.

A hyperplane or affine set L is defined by the linear equation:

For any two points *x*_{1} and *x*_{2} lying in *L*, *β ^{T}*(

For any point *x*_{0} in *L*,* β ^{T}*

The signed distance of any point *x* to *L* is given by:

Hence *f *(*x*) is proportional to the signed distance from *x* to the hyperplane defined by *f *(*x*) = 0 .

Goal: find a separating hyperplane by minimizing the distance of misclassified points to the decision boundary.

Code the two classes by *y _{i}* = 1, -1.

If *y _{i}* = 1 is misclassified,

Since the signed distance from x ito the decision boundary is , the distance from a misclassified *x _{i}* to the decision boundary is .

Denote the set of misclassified points by *M* .

The goal is to minimize:

To minimize *D*( *β*, *β*_{0}), compute the gradient (assuming *M* is fixed):

Stochastic gradient descent is used to minimize the piecewise linear criterion.

Adjustment on *β*, *β*_{0} is done after each misclassified point is visited.

The update is:

Here ρ is the learning rate, which in this case can be taken to be 1 without loss of generality. (Note: if *β ^{T}x*+

If the classes are linearly separable, the algorithm converges to a separating hyperplane in a finite number of steps.

A number of problems with the algorithm:

– When the data are separable, there are many solutions, and which one is found depends on the starting values.

– The number of steps can be very large. The smaller the gap, the longer it takes to find it.

– When the data are not separable, the algorithm will not converge, and cycles develop. The cycles can be long and therefore hard to detect.

Suppose the two classes can be linearly separated.

The *optimal separating hyperplane* separates the two classes and maximizes the distance to the closest point from either class.

There is a unique solution.

Tend to have better classification performance on test data.

The optimization problem:

subject to .

Every point is at least *C* away from the decision boundary *β ^{T}x*+

For any solution of the optimization problem, any positively scaled multiple is a solution as well. We can set || *β* || = 1 / *C*. The optimization problem is equivalent to:

subject to *y _{i }*(

This is a convex optimization problem.

The Lagrange sum is:

Setting the derivatives to zero, we obtain:

Substitute into *L _{P}*, we obtain the Wolfe dual:

subject to *a _{i}* ≥ 0.

This is a simpler convex optimization problem.

The Karush-Kuhn-Tucker conditions require:

– If *a _{i}* > 0, then

– If *y _{i }*(

The points *x _{i}* on the boundary of the slab are called support points.

The solution vector *β* is a linear combination of the support points: