If you like what we're working on, please  star us on GitHub.
DEEPCHECKS GLOSSARY

# Hyperplane

## Hyperplane in Machine Learning

In Machine Learning, a hyperplane is a decision boundary that divides the input space into two or more regions, each corresponding to a different class or output label. In a 2D space, a hyperplane is a straight line that divides the space into two halves. In a 3D space, however, a hyperplane is a plane that divides the space into two halves. Meanwhile in higher-dimensional spaces, a hyperplane is a subspace of one dimension less than the input space.

Hyperplanes are often used in classification algorithms such as support vector machines (SVMs) and linear regression to separate data points belonging to different classes. They are also used in clustering algorithms to identify clusters of data points in the input space.

In order to find the optimal hyperplane for a classification task, algorithms often seek to maximize the margin between the hyperplane and the nearest data points from each class. This is because a larger margin generally leads to a more robust and generalizable model.

Hyperplanes can also be used in regression tasks where the goal is to predict a continuous output value rather than a class label. In this case, the hyperplane represents the line of best fit that minimizes the sum of the squared errors between the predicted values and the true values.

Overall, hyperplanes play a central role in many Machine Learning algorithms and are an important concept to understand in order to effectively apply these algorithms to real-world problems.

The equation for a hyperplane in an n-dimensional space is given by:

• w_1x_1 + w_2x_2 + … + w_nx_n + b = 0

where w is a vector of weights and b is the bias term. The weights and bias determine the orientation and position of the hyperplane in the input space.

## Hyperplane separation theorem

The hyperplane separation theorem states that, given two classes of data points that are linearly separable, there exists a hyperplane that perfectly separates the two classes. This theorem is important because it guarantees the existence of a solution for many classification algorithms that aim to find a hyperplane that separates the classes.

## Supporting hyperplane

A supporting hyperplane is a hyperplane that touches at least one data point from each class. In a two-class classification problem, there may be multiple hyperplanes that separate the classes, but only one of these — the maximum margin hyperplane  — has the maximum distance between the hyperplane and the nearest data points from each class. This maximum distance is called the margin. The maximum margin hyperplane is often preferred because it has the largest separation between the classes and is therefore less prone to overfitting and more generalizable to unseen data.

In support vector machines (SVMs), the maximum margin hyperplane is found by solving a convex optimization problem that seeks to maximize the margin while also ensuring that all data points are classified correctly. This optimization problem can be solved efficiently using techniques such as the gradient descent algorithm or the primal-dual optimization algorithm.

Testing. CI/CD. Monitoring.

## Hyperplanning

Hyperplanning is the process of finding a hyperplane in a Machine Learning model. In classification tasks, the goal of hyperplanning is to find a hyperplane that accurately separates the different classes of data points in the input space. In regression tasks, the goal is to find a hyperplane that accurately predicts the continuous output values based on the input data.

• Careful hyperplanning can help improve the accuracy and generalizability of the model.

These algorithms use different approaches to find the optimal hyperplane, such as minimizing the sum of squared errors in linear regression or maximizing the margin between the hyperplane and the nearest data points in SVMs.

Hyperplanning is an important step in the Machine Learning process because the hyperplane determines how the model will classify or predict output values for new data points.