Clear Filters
Clear Filters

Default data division in trainAutoencoder

3 views (last 30 days)
Hello,
Can anyone explain why the default data division for the trainAutoencoder function (example usage here Train Stacked Autoencoders for Image Classification) uses the default data division method "dividetrain", i.e., data division is training only, rather than a training/validation/testing one (e.g., dividerand, divideint, etc.)?
Thanks.

Accepted Answer

Ayush Aniket
Ayush Aniket on 17 Jun 2024
Hi Marc,
Autoencoders are often used in unsupervised learning tasks where the goal is to learn a compressed, encoded representation of the input data. The training process doesn't require labeled data; instead, the network learns by trying to reproduce its input at its output. Hence, the traditional validation and testing processes, which rely on comparing the model's predictions to actual labels, aren't applicable in the same way they are for supervised learning tasks. This could be one fo the main reasons behind the default "dividetrain" setting in the trainAutoencoder function as it is an auto-training function.
You can define and train a custom autoencoder according to your task. Refer to the following example which shows how to train a deep learning variational autoencoder (VAE) to generate images: https://www.mathworks.com/help/deeplearning/ug/train-a-variational-autoencoder-vae-to-generate-images.html

More Answers (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!