Skip to content

FelipeAugustoMachado/Curvilinear-Component-Analysis-Python

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 

Repository files navigation

Curvilinear-Component-Analysis-Python

Curvilinear Component Analysis implementation for Python.

This code was implemented using the following article https://ieeexplore.ieee.org/document/554199 and the book "Nonlinear Dimensionality Reduction" by Michel Verleysen, John A. R. Lee.

The Algorithm

Curvilinear Component Analysis (CCA) is a Non-linear Dimensionality Reduction technic, basead on the distance betweens the points: it tries to create a new space, with a small dimension, which the distance betweens points are equal in the original space (if this distance is smaller than Lambda, one of the parameters of the algorithm).

Results

The author from the article tests the algorithm in 3 artificials examples, with 500 points each: sphere, U-fold and two circles. All these tests tries to reduce a 3 dimensional data to a 2 dimensional data. The results from my implementation are show in the following subsections.

Sphere

The original space:

Sphere original

The dy dx representation after CCA training:

dydx Sphere

The reduced space: Sphere reduced

U-fold

The original space:

U-fold original

The dy dx representation after CCA training:

dydx U-fold

The reduced space: U-fold reduced

Two Circle

The original space:

Two Circle original

The dy dx representation after CCA training:

dydx Two Circle

The reduced space: Two Circle reduced

About

Curvilinear Component Analysis implementation for Python.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages