This project demonstrates the use of Spectral Clustering implemented in MATLAB, applied to synthetic datasets including circular, spherical, and spiral patterns. The goal is to cluster non-linearly separable data using graph-based clustering methods.
.
├── data/
│ ├── Circle.csv
│ ├── Sphere.csv
│ └── Spiral.csv
├── report/
│ └── spectral_clustring_report.pdf
├── src/
│ └── spectral_clustring.m
└── instruction.txt
data/
: Contains the datasets in.csv
format.src/
: MATLAB implementation of the Spectral Clustering algorithm.report/
: Detailed PDF report explaining the methodology, implementation, and results.instruction.txt
: Additional project instructions.
- Spectral clustering with adjacency and Laplacian matrix construction.
- Works on complex shapes like spirals and rings.
- Eigen decomposition-based dimensionality reduction.
- K-means clustering on spectral embedding.
- Evaluation with plots and visualizations.
- Load Data from CSV files.
- Build Similarity Graph using distance-based metrics.
- Compute Laplacian Matrix.
- Extract Eigenvectors of the Laplacian.
- Apply K-means to cluster eigenvector representation.
- Visualize Results for each dataset.
- MATLAB (tested on R2024a and R2024b)
- No additional toolboxes required
See report/spectral_clustring_report.pdf
for methodology, visuals, and analysis.
This project is licensed under the MIT License.