Autoencoders Mostafa Heidarpour In the name of god Autoencoders Mostafa Heidarpour
Autoencoders An auto-encoder is an artificial neural network used for learning efficient codings The aim of an auto-encoder is to learn a compressed representation (encoding) for a set of data This means it is being used for dimensionality reduction
Autoencoders Auto-encoders use three or more layers: An input layer. For example, in a face recognition task, the neurons in the input layer could map to pixels in the photograph. A number of considerably smaller hidden layers, which will form the encoding. An output layer, where each neuron has the same meaning as in the input layer.
Autoencoders
Autoencoders Encoder Decoder Where h is feature vector or representation or code computed from x Decoder maps from feature space back into input space, producing a reconstruction attempting to incur the lowest possible reconstruction error Good generalization means low reconstruction error at test examples, while having high reconstruction error for most other x configurations
Autoencoders
Autoencoders
Autoencoders In summary, basic autoencoder training consists in finding a value of parameter vector minimizing reconstruction error: This minimization is usually carried out by stochastic gradient descent
regularized autoencoders To capture the structure of the data-generating distribution, it is therefore important that something in the training criterion or the parameterization prevents the autoencoder from learning the identity function, which has zero reconstruction error everywhere. This is achieved through various means in the different forms of autoencoders, we call these regularized autoencoders.
Autoencoders Denoising Auto-encoders (DAE) learning to reconstruct the clean input from a corrupted version. Contractive auto-encoders (CAE) robustness to small perturbations around the training points reduce the number of effective degrees of freedom of the representation (around each point) making the derivative of the encoder small (saturate hidden units) Sparse Autoencoders Sparsity in the representation can be achieved by penalizing the hidden unit biases or by directly penalizing the output of the hidden unit activations
Example ورودی خروجی 10000000 01000000 00100000 00010000 00001000 00000100 00000010 00000001 Hidden nodes
Example net=fitnet([3]);
Example net=fitnet([8 3 8]);
Example
Introduction the auto-encoder network has not been utilized for clustering tasks To make it suitable for clustering, proposed a new objective function embedded into the auto-encoder model
Proposed Model
Proposed Model Suppose one-layer auto-encoder network as an example (minimizing the reconstruction error) Embed objective function:
Proposed Algorithm
Experiments All algorithms are tested on 3 databases: MNIST contains 60,000 handwritten digits images (0∼9) with the resolution of 28 × 28. USPS consists of 4,649 handwritten digits images (0∼9) with the resolution of 16 × 16. YaleB is composed of 5,850 faces image over ten categories, and each image has 1200 pixels. Model: a four-layers auto-encoder network with the structure of 1000-250-50-10.
Experiments Baseline Algorithms: Compare with three classic and widely used clustering algorithms K-means Spectral clustering N-cut Evaluation Criterion Accuracy (ACC) Normalized mutual information (NMI)
Quantitative Results
Visualization
Difference of Spaces
Thanks for attention Any question ?