Book Image

Python: Advanced Guide to Artificial Intelligence

By : Giuseppe Bonaccorso, Rajalingappaa Shanmugamani
Book Image

Python: Advanced Guide to Artificial Intelligence

By: Giuseppe Bonaccorso, Rajalingappaa Shanmugamani

Overview of this book

This Learning Path is your complete guide to quickly getting to grips with popular machine learning algorithms. You'll be introduced to the most widely used algorithms in supervised, unsupervised, and semi-supervised machine learning, and learn how to use them in the best possible manner. Ranging from Bayesian models to the MCMC algorithm to Hidden Markov models, this Learning Path will teach you how to extract features from your dataset and perform dimensionality reduction by making use of Python-based libraries. You'll bring the use of TensorFlow and Keras to build deep learning models, using concepts such as transfer learning, generative adversarial networks, and deep reinforcement learning. Next, you'll learn the advanced features of TensorFlow1.x, such as distributed TensorFlow with TF clusters, deploy production models with TensorFlow Serving. You'll implement different techniques related to object classification, object detection, image segmentation, and more. By the end of this Learning Path, you'll have obtained in-depth knowledge of TensorFlow, making you the go-to person for solving artificial intelligence problems This Learning Path includes content from the following Packt products: • Mastering Machine Learning Algorithms by Giuseppe Bonaccorso • Mastering TensorFlow 1.x by Armando Fandango • Deep Learning for Computer Vision by Rajalingappaa Shanmugamani
Table of Contents (31 chapters)
Title Page
About Packt
Tensor Processing Units

Simple Recurrent Neural Network

Here is what a simple neural network with loops looks like:

RNN Network

In this diagram, a Neural Network N takes input

 to produce output

. Due to the loop, at the next time step

, it takes the input

 along with input

 to produce output

. Mathematically, we represent this as the following equation:

When we unroll the loop, the RNN architecture looks as follows at time step


Unrolled RNN at timestep t1

As the time steps evolve, this loop unrolls as follows at time step 5:

Unrolled RNN at timestep t5

At every time step, the same learning function,

, and the same parameters, w and b, are used.

The output y is not always produced at every time step. Instead, an output h is produced at every time step, and another activation function is applied to this output h to produce the output y. The equations for the RNN look like this now:


  • is the weight vector for x inputs that are connected to the hidden layer
  • is the weight vector for the value of h from the previous time...