Comparison of GRU and LSTM in keras with an example

This recipe explains the key points of GRU and LSTM also the difference between GRU and LSTM using Keras in python is given

Recipe Objective

Difference between a GRU and LSTM. Explaining with an example.

The key difference between GRU and LSTM is that GRU's bag has two gates that are reset and update while LSTM has three gates that are input, output, forget. GRU is less complex than LSTM because it has less number of gates.

If the dataset is small then GRU is preferred otherwise LSTM for the larger dataset.

GRU exposes the complete memory and hidden layers but LSTM doesn't.

Get Closer To Your Dream of Becoming a Data Scientist with 70+ Solved End-to-End ML Projects

Step 1- Importing Libraries

import keras from keras.models import Sequential from keras.layers import GRU, LSTM import numpy as np

Step 2- Defining two different models

We will define two different models and Add a GRU layer in one model and an LSTM layer in the other model.

# define model where GRU is also output layer model_1 = Sequential() model_1.add(GRU(1, input_shape=(20,1))) model_1.compile(optimizer='adam', loss='mse') # define model where LSTM is also output layer model_2 = Sequential() model_2.add(LSTM(1, input_shape=(50,1))) model_2.compile(optimizer='adam', loss='mse')

 

Explore More Data Science and Machine Learning Projects for Practice. Fast-Track Your Career Transition with ProjectPro

Step 3- Define a sample array.

We will define a sample array to run in both models.

# input time steps y = np.array([[1, 2, 3, 4, 5, 6, 7, 8, 9, 10], [9, 8, 7, 6, 5, 4, 3, 2, 1, 0], [11, 12, 13, 14, 15, 16, 17, 18, 19, 20], [21, 22, 23, 24, 25, 26, 27, 28, 29, 30], [31, 32, 33, 34, 35, 36, 37, 38, 39, 40]]).reshape((5,10,1)) # make and show prediction print(model_1.predict(y))

[[6.1044526e-01]
 [4.0416101e-01]
 [1.4171210e-02]
 [1.2617696e-04]
 [8.3446486e-07]]

# input time steps y = np.array([[1, 2, 3, 4, 5, 6, 7, 8, 9, 10], [9, 8, 7, 6, 5, 4, 3, 2, 1, 0], [11, 12, 13, 14, 15, 16, 17, 18, 19, 20], [21, 22, 23, 24, 25, 26, 27, 28, 29, 30], [31, 32, 33, 34, 35, 36, 37, 38, 39, 40]]).reshape((5,10,1)) # make and show prediction print(model_2.predict(y))

[[-1.9881524e-02]
 [-5.2695298e-01]
 [-3.5639611e-04]
 [-3.7144428e-06]
 [-2.5736982e-08]]

Join Millions of Satisfied Developers and Enterprises to Maximize Your Productivity and ROI with ProjectPro - Read ProjectPro Reviews Now!

What Users are saying..

profile image

Ameeruddin Mohammed

ETL (Abintio) developer at IBM
linkedin profile url

I come from a background in Marketing and Analytics and when I developed an interest in Machine Learning algorithms, I did multiple in-class courses from reputed institutions though I got good... Read More

Relevant Projects

FEAST Feature Store Example for Scaling Machine Learning
FEAST Feature Store Example- Learn to use FEAST Feature Store to manage, store, and discover features for customer churn prediction machine learning project.

BigMart Sales Prediction ML Project in Python
The goal of the BigMart Sales Prediction ML project is to build and evaluate different predictive models and determine the sales of each product at a store.

BERT Text Classification using DistilBERT and ALBERT Models
This Project Explains how to perform Text Classification using ALBERT and DistilBERT

Build Regression Models in Python for House Price Prediction
In this Machine Learning Regression project, you will build and evaluate various regression models in Python for house price prediction.

Many-to-One LSTM for Sentiment Analysis and Text Generation
In this LSTM Project , you will build develop a sentiment detection model using many-to-one LSTMs for accurate prediction of sentiment labels in airline text reviews. Additionally, we will also train many-to-one LSTMs on 'Alice's Adventures in Wonderland' to generate contextually relevant text.

Ensemble Machine Learning Project - All State Insurance Claims Severity Prediction
In this ensemble machine learning project, we will predict what kind of claims an insurance company will get. This is implemented in python using ensemble machine learning algorithms.

Build a Speech-Text Transcriptor with Nvidia Quartznet Model
In this Deep Learning Project, you will leverage transfer learning from Nvidia QuartzNet pre-trained models to develop a speech-to-text transcriptor.

PyTorch Project to Build a GAN Model on MNIST Dataset
In this deep learning project, you will learn how to build a GAN Model on MNIST Dataset for generating new images of handwritten digits.

Build Deep Autoencoders Model for Anomaly Detection in Python
In this deep learning project , you will build and deploy a deep autoencoders model using Flask.

Deploying Machine Learning Models with Flask for Beginners
In this MLOps on GCP project you will learn to deploy a sales forecasting ML Model using Flask.