This repository contains Python implementations of two manifold-based dimensionality reduction methods based on the following research papers:
- Sparsity Preserving Projections with Applications to Face Recognition
- Discriminant Sparse Neighborhood Preserving Embedding for Face Recognition
These implementations were reconstructed as part of my thesis work.
- Description: My thesis paper explores the implementation and applications of sparsity-preserving projections and discriminant sparse neighborhood preserving embedding for face recognition. It provides in-depth insights into the methods and their performance.
- Link to My Thesis Paper (Greek)
- Published in: IKEE AUTh (GRI-2023-41084)
- Overview: This presentation offers a visual walkthrough of the key concepts, methodologies, and findings presented in my thesis. It serves as a supplementary resource to better understand the implemented dimensionality reduction methods.
-
Sparsity Preserving Projections (SPP):
- Description: SPP is a dimensionality reduction method that preserves the sparsity structure of data, which is particularly useful for face recognition applications.
- Implementation: SPP_method.py
-
Discriminant Sparse Neighborhood Preserving Embedding (DSNPE):
- Description: DSNPE is a technique designed for face recognition that combines discriminant analysis with sparsity preserving projections.
- Implementation: DSNPE_method.py
To use these dimensionality reduction methods in your Python projects, you can simply import the respective modules:
from SPP_method import SPP
from DSNPE_method import DSNPE
#SPP use
spp = SPP(n_components=50, epsilon=0.05)
spp.fit(X)
X_spp = dsnpe.transform(X)
#DSNPE use
dsnpe = DSNPE(n_components=50, epsilon=0.05, gamma=1.0)
dsnpe.fit(X, y)
X_dsnpe = dsnpe.transform(X)