How to Learn Deep Learning | Guide to CNNs, LSTMs, RNNs, GANs, RBFNs, MLPs, SOMs & More

If you've always been interested in AI and have questions about machine learning, and other cutting-edge concepts surrounding this complex yet super-interesting subject, then this post should help you get started on your awesome rabbit hole.

If this is the first time you've heard of AI or have only been reading about them in theory, the only way to really understand the crucial roles AI plays in our present and future is by focusing on one subject area like python, calculus, or linear algebra.

Below, we'll introduce you to some of the best career paths in neural networks and deep learning, as well as the work opportunities you can make in the real world. We also explain the fundamentals of deep learning and share these Deep Learning Course reviews to get you going.

questions and answers

Types of Deep Learning Algorithms

There are several algorithms that deep learning models can use. Some algorithms are better suited for specific tasks while others might be better for others.  

There is no perfect network and choosing the appropriate one for the task at hand requires knowledge and understanding of the types of algorithms.

Here are ten of the top algorithms in use today:

1. Convolutional Neural Networks (CNNs)

Consisting of multi-layers, CNN's, also referred to as ConvNets are primarily used for processing images. It was first developed in 1988 at Bell Labs' by Yann LeCun and was dubbed LeNet when it came out. Its primary purpose back then was to map and recognize numerals, characters, and ZIP codes.

Today, its application can be widely seen in medical imaging, satellite imaging, detailed image processing, object detection, and anomaly detection.

mind is wide

2. Long Short Term Memory Networks (LSTMs)

Long short term memory networks or LSTMs learn from retaining and recalling past information. Its default behavior is to keep information stored for extended periods of time that are ready to be accessed at any time.

LSTMs are very useful in time-series forecasting due to their capability to draw from past data inputs. Time series forecasting is the use of information from historical data. LSTMs can predict future behavior or activity. This is especially useful in analyzing trends and predicting issues of seasons.

LSTMs can be found applied to the fields of music creation and composition, pharmaceutical drug development, and speech recognition.

short term memory

3. RNNs

LTSMs are a type of recurrent neural network or RNNs. Due to their internal memory, RNNs are capable of memorizing and keeping previous data inputs. RNNs are typically applied to time-series related tasks and analysis, image-captioning, machine translation, handwriting recognition, and natural language processing.

4. Generative Adversarial Networks (GANs)

Generative adversarial networks or GANs are deep learning algorithms that build new similar data instances based on the data used for training.

GANs have contributed huge breakthroughs in the field of imaging, specifically astronomical image capture, and dark matter research due to Generative Adversarial Networks' capability to simulate gravitational lensing.  GANs have been utilized in rendering and creating 3D images and objects like in cartoons, video games, and photographs.

hacker behind the code

5. Radial Basis Function Networks (RBFNs)

RBFNs are commonly used for time-series forecasting, classifying, and regression.  RBFNs have feedforward neural networks that operate in radial basis functions. They are composed of three layers: main layers, the input layer, the output layer, and between the two, the hidden layers.

6. Multilayer Perceptrons (MLPs)

Belonging to a class of feedforward neural networks, MLPs have multiple layers of perceptrons that act as activation functions. 

The input layer and output layer of MLPs are connected entirely but multiple hidden layers may still be between the two layers. MLPs are usually the best place to start your journey in learning about deep learning. 

three pics

7. Self Organizing Maps (SOMs)

Through the self-organization of neural networks, SOMs are capable of data visualization that helps reduce the dimension of data. Self-Organizing Maps were invented by Professor Teuvo Kohonen.

Information that has high dimensional data is very hard for humans to visualize, SOMs aid in helping people process information with high-dimensions.

8. Deep Belief Networks (DBNs)

DBNs are commonly used for image, video recognition, and motion capture technology. DBN are generative models that have multiple layers that are in constant communication with each other. Passing on the previous information to the next layer. 

DBNs are a stack of Boltzmann Machines with connections between the layers, and each RBM layer communicates with both the previous and subsequent layers.

laptop and a phone

9. Restricted Boltzmann Machines( RBMs)

RBMs were developed by Geoffrey Hinton. Using probability distribution from a set of inputs to learn, Restricted Boltzmann Machines are stochastic neural networks. RBMs are a subset and building block of DBNs.  Common applications of RMBs are classification, collaborative filtering, dimensionality reduction,  regression, and topic modeling.

10. Autoencoders

Designed by Geoffrey Hinton in the 1980s, Autoencoders were primarily created to take on unsupervised tasks. 

This algorithm is a feedforward neural network, which means autoencoders have similar inputs and outputs.  The artificial neural networks copy the input layer information and pass it on to the output layer.

Autoencoders can be seen used in predictions, hi-fidelity image processing, and pharmaceutical research.

connections

How to Get Started with Learning Deep Learning

The best way to make sense of PyTorch, advanced math, and general AI is to turn the theory you read from books into practical experience.

To do this, you must first start with formal training, which could take months, years, or sometimes decades.

Here are some of your options:

School-based Courses

Pursuing a career in AI, machine learning, and deep learning is a very multidisciplinary field. It is not just one course that encompasses the entire scope of the field.  Rather, it consists of multiple subjects and areas of research and study.

The study of AI is a relatively new discipline in terms of higher learning, but more and more schools are realizing the demand and potential of AI studies. Typically offered within engineering colleges or under computer sciences, AI and deep learning studies are becoming more commonplace in more and more colleges. 

learn in school

In recent years, universities have incorporated undergraduate studies into more AI sub areas such as natural language processing, machine learning, and robotics. To be truly armed in the field of AI, one must graduate having studied philosophy, mathematics, linguistics, psychology, and computer science.

Here are some of the courses that focus on specific aspects of AI, machine learning, and deep learning:

  • Data Science Course
  • Programming Course
  • Python Course
  • Engineering Course
  • Collegiate Math, Linear Algebra, Calculus, and other Math courses
  • AI theory

If you start this route, know that you need at least one year to complete each course.

girl with books

Online Courses

Coursera is an online platform that offers an opportunity for anyone in the world with access to the internet, a quality education. It gives anyone a chance to earn a degree (even post-bachelor degrees) from top universities at his/her own pace.

In a course offered by deeplearning.ai through coursera.org, you can learn:

  • The fundamentals of deep learning in five courses
  • Examples and exercises
  • Theoretical studies
  • Firsthand experiences and career advice from leading AI experts in the industry.

The course promises to help you master deep learning and make sure you are ready for a career in  AI. 

get a degree online

Learn Deep Learning from Books

Understanding and learning AI might sound daunting and complex but with the aid of these self-help resources, it might become somewhat easy. Check out this list of good, must-read resources for beginners to advanced learners.

Deep Learning with Python by Francois Chollet

  • For beginner and intermediate.
  • A good pairing for Keras users, it has extensive coverage of the implementation of convolutional neural networks.
  • By the end of the book, you can claim to be a Keras expert and will be capable to take on deep learning projects.

Advanced Deep Learning with Keras by Rowel Atienza

  • For advanced learners. 
  • As the title may suggest, this book is a guide to Keras and more advanced deep learning techniques.

Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow by Aurélien Géron

  • For intermediate learners.
  • The book utilizes Tensorflow and Sckit to demonstrate its concepts.
  • Each chapter has exercises at the end to demonstrate practical applications of what you have just learned.
  • A programming background is definitely a requirement.

Neural Networks and Deep Learning: A Textbook by Charu C. Aggarwal

  • For Beginner, Intermediate, and Advanced.
  • Covering modern and classical models of AI, the book focuses on algorithms and theories behind deep learning.
  • Applications are also discussed to give the reader a better grasp and understanding of how each neural network is designed for specified tasks or problems.

DIY Projects

If you really want to learn artificial intelligence, there are many projects you can take on to polish your deep learning/deep neural knowledge.

Taking on projects could add heft to your resume once you look for work. So go ahead, get your hand dirty and develop your skills by challenging yourself.

Here are some deep learning and machine learning project ideas that you might want to build or work on this weekend for FREE:

  • Computer vision-based Text Scanner Project. Autonomous vehicles would not be possible if not for computer vision. This little project will help you get familiarized with computer vision by building a CV text scanner to recognize and separate the text on images.
  • Machine Learning using Python. Machine learning is when machines learn by experience and improving on those experiences to achieve better forecasts or predictions in the future. You'd have to use Python language for this machine learning project.
  • Handwritten Digits Recognition using ML Project. Using MNIST data sets, you will build a recognition algorithm to detect handwritten characters, digits, numerals, and symbols. This is a great project to get you comfortably familiar with deep learning and neural networks.
smart woman

Real World Deep Learning Applications

In recent years, due to advancements in computing power and hardware, deep learning has plunged AI further into our daily lives. What was once science fiction, like talking, intelligent devices are now a reality thanks largely to deep learning.

Some tasks that were previously impossible for machines have now been taken over by machines from humans. In some cases, outperforming humans and doing a much better and more efficient job.

It has changed the face of analytics, medicine, robotics, marketing, and finance to unprecedented bounds.  As computing power continues to get more powerful and faster, so too will deep learnings reach and applications.

The implications and applications for deep learning are almost boundless.  As deep learning continues to evolve, it will undoubtedly play a big part in our entire planet's future. 

Leave a Comment