This project is a comprehensive implementation of Principal Component Analysis (PCA) and Kernel PCA algorithms from scratch. It includes practical examples using various datasets, showcasing the applications of PCA in data visualization, dimensionality reduction, and image processing.
- PCA on Datasets: Explore how PCA transforms synthetic and real-world datasets like blobs, circles, and the Iris dataset to reduce dimensions while preserving essential data structures.
- Kernel PCA: Dive into non-linear data transformations with Kernel PCA, particularly effective on datasets where linear PCA falls short.
- Image Processing: Implement PCA and Kernel PCA for tasks like image compression and denoising, analyzing how these algorithms help in reducing data size while maintaining quality.
To use the project, Make sure to install necessary dependencies by running pip install numpy matplotlib before executing the code in the notebook.
The project welcomes contributions from other users. They can open an issue or submit a pull request with their ideas or changes.
The project is licensed under the terms of the MIT license.