0% found this document useful (0 votes)
31 views7 pages

Deep Learning

Introduction of Deep learning
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
31 views7 pages

Deep Learning

Introduction of Deep learning
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 7

Course Course Title: Deep Learning

Code:
CSE 6001 Type of Course: Program Core L-P-C 2 2 3
Theory and Laboratory Integrated

Version No. 2.0


Course Pre-  Data Mining and Machine Learning fundamentals
requisites  Basic working knowledge of Statistics and Probability
 Familiarity with programming languages and hands on
coding
Anti- NIL
requisites
Course The course introduces the core intuitions behind Deep
Description Learning, an advanced branch of Machine Learning involved
in the development and application of Artificial Neural
Networks that function by simulating the working principle of
human brain. Deep learning algorithms extract layered high-
level representations of data in a way that maximizes
performance on a given task. The course includes theory
and lab components which emphasizes on understanding
the implementation and application of deep neural networks
in various prominent problem domains like speech
recognition, sentiment analysis, recommendations, and
computer vision etc. The course facilitates the students to
interpret and appreciate the successful application of deep
neural nets in various prediction and classification tasks of
ML.
The objective of the course is to familiarize the learners with the concepts of
Course Deep Learning and attain SKILL DEVELOPMENT through Experiential
Objective Learning techniques

Course Out On successful completion of the course the students shall be able
Comes to:
CO1: Apply basic concepts of Deep Learning to develop feed
forward models
CO2: Apply Supervised and Unsupervised Deep Learning
techniques to build effective models for prediction or
classification tasks
CO3: Identify the deep learning algorithms which are more
appropriate for various types of learning tasks in various domains
of Machine Learning and Machine vision.
CO4: Analyze performance of implemented Deep Neural models
Course
Content:

Introduction to Deep 10
Module 1 Assignment Programming
Learning Sessions
Topics:

Machine Learning in a nutshell, Fundamentals of deep learning and neural


networks, Deep Neural Network, Feedforward Neural Network, Perceptron,
Activation Functions, Loss Functions, Gradient Descent, Back-propagation,
Training Neural Networks Building your Deep Neural Network: Step by Step,
Introduction to CNN
Improving Deep 09
Module 2 Assignment Programming
Neural Networks Sessions
Topics:

Hyperparameter tuning, Initialization, Overfitting and Underfitting,


Regularization and Optimization, Dropout, Batch Normalization

Deep Supervised 10
Module 3 Assignment Programming
Learning Models Sessions
Topics:

Convolutional neural network with pooling flattening, Prediction of image using


Convolutional Neural Networks, Deep learning in Sequential Data, RNN & LSTM,
GRU,
Deep Unsupervised 10
Module 4 Assignment Programming
Learning Sessions
Topics:

Basics of Deep unsupervised learning, Auto encoders, Recommender systems,


computer vision

List of Laboratory Tasks:

Experiment No. 1: Programming assignment to implement a single layer feed


forward neural network from scratch (Application: A basic neural network).

Level 1: Programming scenario to implement a basic single layer feed-forward


neural network perceptron.

Level 2: Programming scenario to implement a basic single layer feed-forward


neural network with a single hidden layer having ReLU activation function and
sigmoid in the output layer.

Experiment No. 2: Programming assignment to build an Artificial Neural


Network by implementing the Backpropagation algorithm and test the same
using appropriate data sets.

Level 1: Programming scenario to use the Backpropagation algorithm to build


an ANN and run it on a dataset for few epochs.

Level 2: Programming scenario to use the Backpropagation algorithm to build


an ANN and run it on a dataset for few epochs and interpret the accuracy, loss
and other evaluation parameters.

Experiment No. 3: Programming assignment to build a multiple layer neural


network with specific model parameters and hyperparameters on a given real
life dataset.

Level 1: Programming assignment to implement a MLP with


o possibility to use 2-4 layers
o ReLU for the hidden layer
o Sigmoid in the output layer
o optimization via gradient descent (GD)
Level 2: Programming assignment to implement the neural network and add
some more hyperparameters in the perceptron model
o softmax output layer
o optimization via stochastic gradient descent (SGD)
o Gradient checking code (!!!)
Generate the confusion matrix

Experiment No. 4: Programming assignment to implement classification of


linearly separable Data with a Deep neural network (Application: Binary
classification).

Level 1: Programming scenarios to build a binary classifier with a deep ANN.

Level 2: Programming scenarios to build a binary classifier with a deep ANN


o Weight initialization with random noise (!!!) (use normal distribution
with
changing std. deviation for now)
o implement dropout, l2 regularization
o implement a different optimization scheme (RPROP, RMSPROP,
ADAGRAD)
o employ batch normalization

Experiment No. 5: Programming assignment to implement a basic Convolution


Neural Network.

Level 1: Programming scenarios which use the concept of convolution and


pooling to implement a CNN.

Level 2: Programming scenarios which use the concept of convolution and


pooling to implement a CNN and also specify some parameters like number of
filters, length of feature detector, stride etc.

Experiment No. 6: Programming assignment to perform image segmentation


and object detection using CNNs.

Level 1: Programming assignment to instantiate a CNN (that uses


FullyConnectedLayers) and train the neural network using the training data from
MNIST data set.

Level 2: Programming assignment to instantiate a CNN (that uses


FullyConnectedLayers) and train the neural network using the training data from
MNIST data set. Choose appropriate hyper parameters for the training of the
neural network. Plot the cost versus training iterations using different mini-batch
sizes: 16; 64; 256; 1024. Record the test accuracy in percentage and total
training time you spent in seconds. Implement Adam Optimizer. To obtain full
marks, the network should be able to achieve a test accuracy of 90% or more
across many different random seeds.

Experiment No. 7: Programming assignment to employ CNN in image


classification from given dataset.
Level 1: Programming scenario to instantiate a CNN (with at least one
convolutional layer) and train the neural network using the training data from
CIFAR10 data. Choose appropriate hyperparameters for the training of the neural
network. The network should be able to achieve a test accuracy of at least 50%
within 10 training epochs.

Level 2: Programming scenario to build a CNN (with more than one


convolutional layer) and train the neural network using the training data from
CIFAR10 data. Choose appropriate hyperparameters for the training of the neural
network. The network should be able to achieve a test accuracy of at least 50%
within 10 training epochs. Continue to train further and examine training and
testing performance. Report hyperparameters (learning rate, number of hidden
layers, number of nodes in each hidden layer, batch size and number of epochs)
of the Deep Neural Network. Also, explain the observations.

Experiment No. 8: Programming assignment to perform Sentence (text)


Classification using Convolutional Neural Networks.

Level 1: Programming Scenarios to utilize CNN to categorize text data in given


datasets like SST movie reviews.

Level 2: Programming Scenarios to utilize CNN to categorize text data in given


datasets like SST and MR movie reviews.

Experiment No. 9: Programming assignment to apply Recurrent Neural


Networks for sentiment analysis of text data.

Level 1: Programming scenario to build a model to perform sentiment analysis


of IMDB movie reviews using. Reviews are categorized into two polarities:
positive and negative.

Level 2: Programming scenario to build a model to perform sentiment analysis


of IMDB movie reviews. Reviews are categorized into three polarities: positive,
negative and neutral.

Experiment No. 10: Programming assignment to create a generative model for


text, character-by-character using Recurrent neural networks.

Level 1: Programming scenario to implement a multi-layer Recurrent Neural


Network like LSTM for training/sampling from character-level language models,
which takes one text file as input and trains an RNN that learns to predict the
next character in a sequence. The RNN can then be used to generate text
character by character that will look like the original training data.

Level 2: Programming scenario to implement a multi-layer Recurrent Neural


Network utilizing both LSTM and GRU in turns for training/sampling from
character-level language models, which takes one text file as input and trains an
RNN that learns to predict the next character in a sequence. The RNN can then
be used to generate text character by character that will look like the original
training data. Train the model and use it to generate new text.
Experiment No. 11: Programming assignment to implement RNN models for
multivariate time series forecasting.

Level 1: Programming scenario to implement a many-to-one Recurrent Neural


Network for Stock Price forecasting, i.e. trained with a certain number of day’s
data, the model should predict the stock price of the next day.
Level 2: Programming scenario to implement a many-to-one Recurrent Neural
Network for Stock Price forecasting, i.e. trained with a certain number of day’s
data, the model should predict the stock price of the next day. Students are free
to use RNN, GRU, or LSTM (or compare between) and any number of layers and
architecture. In the testing, plot the ground truth and your predicted values for
100 days.

Experiment No. 12: Programming assignment to implement Autoencoders


and deep Boltzmann’s machines.

Level 1: Programming scenario to implement a basic recommender system


using deep Boltzmann’s machines.
Level 2: Programming scenario to build a recommender system with
Collaborative filtering algorithm using deep Boltzmann’s machines,

Targeted Application & Tools that can be used:

Targeted employment sector is not restricted to any single domain. Today, ML


and Dl have been employed for data analysis and improved business intelligence
in every sector. Targeted job profiles include Data Analyst, Data Scientist, Data
Engineer, Neuroinformatician, Bioinformatician, Image Recognition, Research
Analyst, Full Stack Developer for Deep Learning, Natural Language Process
Engineer, Business Analyst etc. Few of the top recruiters are Amazon, NVIDIA.
Microsoft, IBM, Accenture, Facebook, Intel, Samsung, Lenovo, Adobe etc., among
numerous others.

Tools: Neural Designer, AutoML, AutoDL, Keras, TensorFlow, Torch, Google


Colaboratory, Spider, Jupiter Notebook
Project work/Assignment:

Throughout the progression in each module, students will have to submit


scenario based programming Assignments/Experiments as listed in “List of Lab
Tasks”. On completion of each module, students will be asked to develop a Mini
Project, similar to the following:

 Music genre classification system


This is one of the interesting deep learning project ideas. This is an
excellent project to nurture and improve one’s deep learning skills. The
aim is to create a deep learning model that uses neural networks to
classify the genre of music automatically. For this project, students will
use an FMA (Free Music Archive) dataset. FMA is an interactive library
comprising high-quality and legal audio downloads. It is an open-source
and easily accessible dataset.
However, it is noteworthy that before one can use the model to classify
audio files by genre, he/she will have to extract the relevant information
from the audio samples (like spectrograms, MFCC, etc.)
 Image Caption generator
This is one of the trending deep learning project ideas. This is a Python-
based deep learning project that leverages Convolutional Neural Networks
and LTSM (a type of Recurrent Neural Network) to build a deep learning
model that can generate captions for an image. An Image caption
generator combines both computer vision and natural language
processing techniques to analyze and identify the context of an image and
describe them accordingly in natural human languages (for example,
English, Spanish, Danish, etc.). This project will strengthen one’s
knowledge of CNN and LSTM, and one will learn how to implement them in
real-world applications as this.

 Visual tracking system


A visual tracking system is designed to track and locate moving object(s)
in a given time frame via a camera. It is a handy tool that has numerous
applications such as security and surveillance, medical imaging,
augmented reality, traffic control, video editing and communication, and
human-computer interaction. This system uses a deep learning algorithm
to analyze sequential video frames, after which it tracks the movement of
target objects between the frames. The two core components of this
visual tracking system are Target representation and localization

 Traffic Signal Classification


The traffic sign classification project is useful for all autonomous vehicles.
Machines are able to identify traffic signs from the image. Students can
use the GTSRB dataset that contains 43 different traffic sign classes. This
is a good project to understand image classification.

 Driver Drowsiness Detection


The driver drowsiness detection is a project which can detect whether a
person is sleeping or not while driving. We can implement a model for
drivers and it can also prevent accidents from happening.

 Autocolouring old Black and white images


The idea of this project is to make a model that is capable of colorizing
old black and white
images to colorful images. Digital artists take a few hours to color the
image but now with
Deep Learning, it is possible to color an image within seconds.

Text Book

T1. Ian Goodfellow, Yoshua Bengio, Aaron Courville, “Deep Learning”, MIT Press,
2017

References
R1. Duda, R.O., Hart, P.E., and Stork, D.G. Pattern Classification. Wiley-
Inderscience, 2nd Edition. 2013
R2. Theodoridis, S. and Koutroumbas, K. Pattern Recognition. Edition 4,
Academic Press, 2015
R3. Russell, S. and Norvig, N. Artificial Intelligence: A Modern Approach. Prentice
Hall Series in Artificial Intelligence, 2013
R4. Bishop, C. M. Neural Networks for Pattern Recognition, Oxford University
Press, 2008.

Weblinks
W1.https://presiuniv.knimbus.com/user#/home
W2.https://www.ibm.com/in-en/topics/deep-learning#:~:text=Deep%20learning%20is%20a
%20subset,from%20large%20amounts%20of%20data.
Topics relevant to development of “SKILL DEVELOPMENT”: Real time
Data Analysis using Deep learning. for developing SKILL DEVELOPMENT
through Experiential Learning techniques. This is attained through
assessment component mentioned in course handout

Catalogue
prepared by Prof.Tapas Guha, Prof.Nappa Lakshmi
Recommende
d by the
BOS NO: 1, BOS held on 22/12/2022
Board of
Studies on
Date of
Approval by Academic Council Meeting No. 20, Dated 15/02/2023
the Academic
Council

You might also like