Skip to content

Ganesh-Esc/Deep-Learning---Autoencoders

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

4 Commits
Β 
Β 
Β 
Β 

Repository files navigation

Autoencoders in Keras: Denoising, Compression, and Deep Architectures

TensorFlow Keras

A hands-on lab exploring the implementation and application of autoencoders using Keras. We will cover shallow and deep architectures for tasks like image denoising, compression, and de-blurring.


πŸ“– Lab Overview

This lab provides a comprehensive walkthrough of building and utilizing autoencoders, a powerful type of unsupervised neural network. We will start by constructing a simple, shallow autoencoder using different Keras APIs and then move on to powerful, real-world applications.

As the figure below illustrates, autoencoders work by first encoding an input image into a compressed, lower-dimensional representation (latent space) and then decoding it back to its original form. This compressed data is incredibly useful, achieving dimensionality reduction while preserving the image's most important features. 🧠


🎯 Learning Objectives & Lab Structure

This lab is broken down into three main parts:

  1. Part 1: Building a Shallow Autoencoder

    • We will first review and implement a basic autoencoder.
    • You will learn to build the same model using both the flexible Keras Functional API and the fully customizable Model Sub-classing approach.
  2. Part 2: Applications of Autoencoders

    • Image Denoising: Train an autoencoder to take a noisy image as input and output a clean, reconstructed version.
    • Image Compression: Use the output of the encoder layer to get a compressed representation of an image and visualize the quality of the reconstruction.
  3. Part 3: Building Deep & Convolutional Autoencoders

    • We will use the concepts from the previous sections to build more powerful, deep autoencoders.
    • We will then implement a Convolutional Autoencoder (CAE) and compare its performance against the deep (fully-connected) version.

Key Findings & Conclusion

A key conclusion from this lab is the superior performance of Convolutional Autoencoders for image data. We demonstrate that because a CAE can effectively learn complex spatial features, it can be used to de-blur blurred images and represent features much more clearly than a standard deep autoencoder.


About

Deep Learning -> Autoencoders

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published