# Introduction

The main idea of this toolbox is to allow people who want to do spectral clustering to find all the most common algorithms in the literature in one package.

Spectral clustering is first of all a way to group data together, to perform a labeling, using similarities (or dissimilarities). If data are similar between them, then the same label is assigned to them. This allows to obtain in results data that can now be distinguished from each other. As for the spectral clustering, it is the same as the classical clustering in many points. Except that this one does not label the data anymore by positioning itself in the starting space, but by projecting itself in a new space. This new space is constructed from eigenvectors derived and selected from a Laplacian matrix computed from a data similarity matrix. Depending on the algorithm, the calculation of this laplacian differs, but the objective remains the same: to project the data in a space where it is easier to separate them linearly and to obtain the globular form which also allows a better cutting.

The package and the interface contain exactly 9 clustering algorithms which are the following : * Hierarchical clustering * Hierarchical spectral clustering * Bi-parted clustering of Perona and Freeman * Bi-parted clustering of Shi and Malik * Von Luxburg spectral clustering * Unormalized spectral clustering * Partition Around Medoids spectral clustering * Multi-level spectral clustering * Fast multi-level spectral clustering

The package also contains additional interesting tools that allow to go further with the previous algorithms : * A function that calculate the similarity matrix * A function that makes any algorithm in multi-level clustering * A function that makes any algorithm in fast clustering * ...