# Optimal Classification/clustering

Many people consider clustering the most important unsupervised learning problem. Clustering deals with finding structure in a collection of unlabeled data.

Clustering has many practical applications.

Many clustering algorithms ( k-clustering algorithms ) require a human to specify ahead of time how many buckets (categories, labels, classes, etc.) to divide up the input into.

- Median cut clustering -- perhaps the fastest clustering algorithm
- K-means clustering -- a very fast clustering algorithm, with the disadvantage that it does not provide the same result with each run.
- QT clustering algorithm
- expectation-maximization algorithm
- canopy clustering algorithm
- constrained clustering
- Fuzzy clustering by Local Approximation of MEmberships (FLAME clustering)
- self-organizing map
- vector quantization
- Learning Vector Quantization