Machine Learning, Neural Networks, TensorFlow, Pca.
it is so much more fun And also, it is a good intro to the topic. There are different types of neural networks that can be applied to the same idea. If Restricted Boltzmann Machine is used instead, the same idea can highly outperform PCA and introduce very successful Semantic Hashing algorithm for