Perform an unsupervised dimensionality reduction of data using power-law SNE, generalized SNE, spherical SNE, and t-SNE, where the generalized SNE allows us to adjust the loss function from the Kullback–Leibler divergence to a general alpha-divergence.
- Download the repository.
- Add path (both pSNE-master & subfolder techniques) to the MATLAB.
- Download 3 image datasets, MNIST, COIL-20, Olivetti faces, for demonstration.
- Open main script
SNE_display.m
& set path for the 3 datasets in the beginning section. For example, placing folderDataset
insideGeneralizedSNE
:
MNIST_file = './Dataset/MNIST/train-images-idx3-ubyte' ; % MNIST images
MNIST_label_file = './Dataset/MNIST/train-labels-idx1-ubyte' ; % MNIST labels
COIL20_folder = './Dataset/coil-20-proc' ; % COIL-20
Olivetti_folder = './Dataset' ; % Olivetti faces
- Run several SNEs in
SNE_display.m
.
The source code of the pSNE & generalized SNE are mostly based on that of Laurens van der Maaten