In this project we will implement an autoencoder. We provide a python starter code which contains a project and a val_grader. Please implement your encoder and decoder as two separate functions in project, as the grader will load them to encode and decode the testing images. This project is open-ended and has only two criteria:

We provide a sample grader for you to test your code:

python -m val_grader project 

We will use a hidden dataset to measure the performance of your autoencoder. The metric we will use is the L1 distance between the original and the decoded images.


Please do not save any intermediate results to disk or memory. During the actual grading we will run encode and decode in isolation.

Please load your model once when your module starts up and not every time your encode or decode.