Mnist report

mnist report

​ Internship Report
On
​ “​MNIST Handwritten Digit Classification Challenge”
Submitted by:
Raghunandan J
(​ECK5441143C@eckovation.com​)
​ Internship carried out at
“Eckovation”
Under the guidance of
​ Mr Ritesh Singh​ ​ ​Mr Priyanshu Pandey
Mentor, Mentor,
Eckovation Eckovation
1
Index
Sl. No Contents Page Number
1 Abstract 03
2 Introduction 04
3 Introduction(Contd) 05-06
4 Layers 07-17
5 Applications 18
2
​Abstract
Artificial Intelligence has been witnessing a monumental
growth in bridging the gap between the capabilities of humans
and machines. Researchers and enthusiasts alike, work on
numerous aspects of the field to make amazing things happen.
One of many such areas is the domain of Computer Vision.
The agenda for this field is to enable machines to view the world
as humans do, perceive it in a similar manner and even use the
knowledge for a multitude of tasks such as Image & Video
recognition, Image Analysis & Classification, Media Recreation,
Recommendation Systems, Natural Language Processing, etc.
The advancements in Computer Vision with Deep Learning has
been constructed and perfected with time, primarily over one
particular algorithm — a ​Convolutional Neural Network​.
3
Introduction
A ​Convolutional Neural Network (ConvNet/CNN)​ is a
Deep Learning algorithm which can take in an input image,
assign importance (learnable weights and biases) to various
aspects/objects in the image and be able to differentiate one
from the other. The pre-processing required in a ConvNet is
much lower as compared to other classification algorithms.
While in primitive methods filters are hand-engineered, with
enough training, ConvNets have the ability to learn these
filters/characteristics.
The architecture of a ConvNet is analogous to that of the
connectivity pattern of Neurons in the Human Brain and was
inspired by the organization of the Visual Cortex. Individual
neurons respond to stimuli only in a restricted region of the
visual field known as the Receptive Field. A collection of such
fields overlap to cover the entire visual area.
4
An example of a general convolutional neural network is shown
below….
It consists of the following layers:
● Input Image
● Convolution Layer - The Kernel
● Pooling Layer
● Padding layers
● Classification - Fully Connected Layer (FC)
5
Why ConvNets over Feed-Forward Neural Nets?
An image is nothing but a matrix of pixel values. So why not
just flatten the image (e.g. 3x3 image matrix into a 9x1 vector)
and feed it to a Multi-Level Perceptron for classification
purposes? In cases of extremely basic binary images, the
method might show an average precision score while
performing prediction of classes but would have little to no
accuracy when it comes to complex images having pixel
dependencies throughout.
A ConvNet is able to ​successfully capture the Spatial and
Temporal dependencies​ in an image through the
application of relevant filters. The architecture performs a
better fitting to the image dataset due to the reduction in the
6
number of parameters involved and reusability of weights. In
other words, the network can be trained to understand the
sophistication of the image better.
​Explanation of each Layer
Input Image:
In the figure, we have an RGB image which has been separated
by its three color planes--Red, Green, Blue. There are a number
of such color spaces in which images exist-- Grayscale, RGB,
HSV, CMYK, etc.
7
For images reaching high dimensions such as 8K (7680​×4320) ,
we can see that it gets very computationally intensive.
The role of the ConvNet is to reduce the images into a form
which is easier to process, without losing features which are
critical for getting a good prediction.
Convolutional Layer - The Kernel
mage Dimensions = 5 (Height) x 5 (Breadth) x 1 (Number of
channels, eg. RGB)
In the above demonstration, the green section resembles our
5x5x1 input image, I​. The element involved in carrying out
8
the convolution operation in the first part of a Convolutional
Layer is called the ​Kernel/Filter, K​, represented in the color
yellow. We have selected ​K as a 3x3x1 matrix.
Kernel/Filter, K =
1 0 1
0 1 0
1 0 1
The Kernel shifts 9 times because of ​Stride Length = 1
(Non-Strided)​, every time performing a ​matrix
multiplication operation between K and the portion P
of the image​ over which the kernel is hovering.
9
The filter moves to the right with a certain Stride Value till it
parses the complete width. Moving on, it hops down to the
beginning (left) of the image with the same Stride Value and
repeats the process until the entire image is traversed.
10
In the case of images with multiple channels (e.g. RGB), the
Kernel has the same depth as that of the input image. Matrix
Multiplication is performed between Kn and In stack ([K1, I1];
[K2, I2]; [K3, I3]) and all the results are summed with the bias
to give us a squashed one-depth channel Convoluted Feature
Output.
The objective of the Convolution Operation is to ​extract the
high-level features​such as edges, from the input image.
ConvNets need not be limited to only one Convolutional Layer.
Conventionally, the first ConvLayer is responsible for capturing
the Low-Level features such as edges, color, gradient
11
orientation, etc. With added layers, the architecture adapts to
the High-Level features as well, giving us a network which has
the wholesome understanding of images in the dataset, similar
to how we would.
There are two types of results to the operation — one in which
the convolved feature is reduced in dimensionality as compared
to the input, and the other in which the dimensionality is either
increased or remains the same. This is done by applying ​Valid
Padding​ in case of the former, or ​Same Padding​ in the case
of the latter.
12
When we augment the 5x5x1 image into a 6x6x1 image and then
apply the 3x3x1 kernel over it, we find that the convolved
matrix turns out to be of dimensions 5x5x1. Hence the name —
Same Padding​.
On the other hand, if we perform the same operation without
padding, we are presented with a matrix which has dimensions
of the Kernel (3x3x1) itself — ​Valid Padding​.
The following repository houses many such GIFs which would
help you get a better understanding of how Padding and Stride
Length work together to achieve results relevant to our needs.
Pooling Layer
13
Similar to the Convolutional Layer, the Pooling layer is
responsible for reducing the spatial size of the Convolved
Feature. This is to ​decrease the computational power
required to process the data​through dimensionality
reduction. Furthermore, it is useful for ​extracting dominant
features​ which are rotational and positional invariant, thus
maintaining the process of effectively training of the model.
There are two types of Pooling: Max Pooling and Average
Pooling. ​Max Pooling​ returns the ​maximum value​ from the
portion of the image covered by the Kernel. On the other hand,
Average Pooling ​returns the ​average of all the values
from the portion of the image covered by the Kernel.
Max Pooling also performs as a​ Noise Suppressant​. It
discards the noisy activations altogether and also performs
de-noising along with dimensionality reduction. On the other
hand, Average Pooling simply performs dimensionality
reduction as a noise suppressing mechanism. Hence, we can say
that ​Max Pooling performs a lot better than Average
Pooling​.
14
The Convolutional Layer and the Pooling Layer, together form
the i-th layer of a Convolutional Neural Network. Depending on
the complexities in the images, the number of such layers may
be increased for capturing low-levels details even further, but at
the cost of more computational power.
After going through the above process, we have successfully
enabled the model to understand the features. Moving on, we
are going to flatten the final output and feed it to a regular
Neural Network for classification purposes.
Classification - Fully Connected Layer (FC)
15
Adding a Fully-Connected layer is a (usually) cheap way of
learning non-linear combinations of the high-level features as
represented by the output of the convolutional layer. The
Fully-Connected layer is learning a possibly non-linear function
in that space.
Now that we have converted our input image into a suitable
form for our Multi-Level Perceptron, we shall flatten the image
into a column vector. The flattened output is fed to a
feed-forward neural network and backpropagation applied to
every iteration of training. Over a series of epochs, the model is
able to distinguish between dominating and certain low-level
features in images and classify them using the Softmax
Classification technique.
16
There are various architectures of CNNs available which have been key in
building algorithms which power and shall power AI as a whole in the
foreseeable future. Some of them have been listed below:
1. LeNet
2. AlexNet
3. VGGNet
4. GoogLeNet
5. ResNet
6. ZFNet
 
Real world applications of artificial neural
networks:
Today most of the modern intelligent application uses ANN model as a
main approach to solve complicated problems. For example -the
direction feature of Google Maps, search for an image with Google
Images, the way we give voice instructions to Amazon Alexa, all these
products exploit artificial neural network model. Artificial neural
networks have broad applications in robotics, computer vision, pattern
recognition, natural language processing, self-driving cars and countless
other applications.
To sum up the blog we can say that neural networks are arguably that
technological development which has a good potential currently on the
17
horizon. And scientist are still working over it, discovering the
possibilities of this technology and we hope to see more advancement of
artificial neural network in the coming future.
 
---END---
18

Recomendados

Mnist report ppt por
Mnist report pptMnist report ppt
Mnist report pptRaghunandanJairam
424 visualizações18 slides
Deep Learning - Convolutional Neural Networks por
Deep Learning - Convolutional Neural NetworksDeep Learning - Convolutional Neural Networks
Deep Learning - Convolutional Neural NetworksChristian Perone
71.4K visualizações86 slides
Convolutional neural network por
Convolutional neural network Convolutional neural network
Convolutional neural network Yan Xu
5.3K visualizações68 slides
Image classification using CNN por
Image classification using CNNImage classification using CNN
Image classification using CNNNoura Hussein
5.3K visualizações14 slides
Convolutional Neural Network (CNN) por
Convolutional Neural Network (CNN)Convolutional Neural Network (CNN)
Convolutional Neural Network (CNN)Muhammad Haroon
832 visualizações16 slides
Resnet por
ResnetResnet
Resnetashwinjoseph95
1.6K visualizações16 slides

Mais conteúdo relacionado

Mais procurados

Deep learning por
Deep learning Deep learning
Deep learning sunilkumar4932
385 visualizações15 slides
Introduction_to_DEEP_LEARNING.ppt por
Introduction_to_DEEP_LEARNING.pptIntroduction_to_DEEP_LEARNING.ppt
Introduction_to_DEEP_LEARNING.pptSwatiMahale4
106 visualizações20 slides
Image classification using cnn por
Image classification using cnnImage classification using cnn
Image classification using cnnSumeraHangi
721 visualizações22 slides
Image Classification with Deep Learning | DevFest + GDay, George Town, Mala... por
Image Classification with Deep Learning  |  DevFest + GDay, George Town, Mala...Image Classification with Deep Learning  |  DevFest + GDay, George Town, Mala...
Image Classification with Deep Learning | DevFest + GDay, George Town, Mala...Virot "Ta" Chiraphadhanakul
1.3K visualizações52 slides
Artificial Neural Network Topology por
Artificial Neural Network TopologyArtificial Neural Network Topology
Artificial Neural Network TopologyHarshana Madusanka Jayamaha
12.8K visualizações18 slides
Convolutional Neural Network Models - Deep Learning por
Convolutional Neural Network Models - Deep LearningConvolutional Neural Network Models - Deep Learning
Convolutional Neural Network Models - Deep LearningBenha University
12.6K visualizações83 slides

Mais procurados(20)

Deep learning por sunilkumar4932
Deep learning Deep learning
Deep learning
sunilkumar4932385 visualizações
Introduction_to_DEEP_LEARNING.ppt por SwatiMahale4
Introduction_to_DEEP_LEARNING.pptIntroduction_to_DEEP_LEARNING.ppt
Introduction_to_DEEP_LEARNING.ppt
SwatiMahale4106 visualizações
Image classification using cnn por SumeraHangi
Image classification using cnnImage classification using cnn
Image classification using cnn
SumeraHangi721 visualizações
Image Classification with Deep Learning | DevFest + GDay, George Town, Mala... por Virot "Ta" Chiraphadhanakul
Image Classification with Deep Learning  |  DevFest + GDay, George Town, Mala...Image Classification with Deep Learning  |  DevFest + GDay, George Town, Mala...
Image Classification with Deep Learning | DevFest + GDay, George Town, Mala...
Virot "Ta" Chiraphadhanakul1.3K visualizações
Convolutional Neural Network Models - Deep Learning por Benha University
Convolutional Neural Network Models - Deep LearningConvolutional Neural Network Models - Deep Learning
Convolutional Neural Network Models - Deep Learning
Benha University12.6K visualizações
Convolutional Neural Networks por Ashray Bhandare
Convolutional Neural NetworksConvolutional Neural Networks
Convolutional Neural Networks
Ashray Bhandare16.2K visualizações
Densenet CNN por ArunKumar7374
Densenet CNNDensenet CNN
Densenet CNN
ArunKumar7374547 visualizações
Introduction to Deep Learning por Oleg Mygryn
Introduction to Deep LearningIntroduction to Deep Learning
Introduction to Deep Learning
Oleg Mygryn574 visualizações
Convolutional neural network from VGG to DenseNet por SungminYou
Convolutional neural network from VGG to DenseNetConvolutional neural network from VGG to DenseNet
Convolutional neural network from VGG to DenseNet
SungminYou994 visualizações
Introduction to TensorFlow 2.0 por Databricks
Introduction to TensorFlow 2.0Introduction to TensorFlow 2.0
Introduction to TensorFlow 2.0
Databricks5.8K visualizações
CNN Tutorial por Sungjoon Choi
CNN TutorialCNN Tutorial
CNN Tutorial
Sungjoon Choi5.6K visualizações
CONVOLUTIONAL NEURAL NETWORK por Md Rajib Bhuiyan
CONVOLUTIONAL NEURAL NETWORKCONVOLUTIONAL NEURAL NETWORK
CONVOLUTIONAL NEURAL NETWORK
Md Rajib Bhuiyan711 visualizações
Hardware Trojan Attacks on Neural Networks - Joseph Clements - DEF CON 26 CAA... por GeekPwn Keen
Hardware Trojan Attacks on Neural Networks - Joseph Clements - DEF CON 26 CAA...Hardware Trojan Attacks on Neural Networks - Joseph Clements - DEF CON 26 CAA...
Hardware Trojan Attacks on Neural Networks - Joseph Clements - DEF CON 26 CAA...
GeekPwn Keen228 visualizações
Introduction to Machine Learning por KmPooja4
Introduction to Machine LearningIntroduction to Machine Learning
Introduction to Machine Learning
KmPooja4775 visualizações
Convolutional Neural Networks por Tianxiang Xiong
Convolutional Neural NetworksConvolutional Neural Networks
Convolutional Neural Networks
Tianxiang Xiong308 visualizações
CNN Machine learning DeepLearning por Abhishek Sharma
CNN Machine learning DeepLearningCNN Machine learning DeepLearning
CNN Machine learning DeepLearning
Abhishek Sharma541 visualizações
Image classification using convolutional neural network por KIRAN R
Image classification using convolutional neural networkImage classification using convolutional neural network
Image classification using convolutional neural network
KIRAN R5.7K visualizações
Support Vector Machines Simply por Emad Nabil
Support Vector Machines SimplySupport Vector Machines Simply
Support Vector Machines Simply
Emad Nabil1K visualizações
MobileNet V3 por Wonbeom Jang
MobileNet V3MobileNet V3
MobileNet V3
Wonbeom Jang573 visualizações

Similar a Mnist report

Review-image-segmentation-by-deep-learning por
Review-image-segmentation-by-deep-learningReview-image-segmentation-by-deep-learning
Review-image-segmentation-by-deep-learningTrong-An Bui
166 visualizações37 slides
Saptashwa_Mitra_Sitakanta_Mishra_Final_Project_Report por
Saptashwa_Mitra_Sitakanta_Mishra_Final_Project_ReportSaptashwa_Mitra_Sitakanta_Mishra_Final_Project_Report
Saptashwa_Mitra_Sitakanta_Mishra_Final_Project_ReportSitakanta Mishra
172 visualizações6 slides
Introduction to Convolutional Neural Networks por
Introduction to Convolutional Neural NetworksIntroduction to Convolutional Neural Networks
Introduction to Convolutional Neural NetworksParrotAI
513 visualizações25 slides
A Pointing Gesture-based Signal to Text Communication System Using OpenCV in ... por
A Pointing Gesture-based Signal to Text Communication System Using OpenCV in ...A Pointing Gesture-based Signal to Text Communication System Using OpenCV in ...
A Pointing Gesture-based Signal to Text Communication System Using OpenCV in ...IRJET Journal
5 visualizações5 slides
A survey on the layers of convolutional Neural Network por
A survey on the layers of convolutional Neural NetworkA survey on the layers of convolutional Neural Network
A survey on the layers of convolutional Neural NetworkSasanko Sekhar Gantayat
57 visualizações6 slides
Classification of Images Using CNN Model and its Variants por
Classification of Images Using CNN Model and its VariantsClassification of Images Using CNN Model and its Variants
Classification of Images Using CNN Model and its VariantsIRJET Journal
2 visualizações7 slides

Similar a Mnist report(20)

Review-image-segmentation-by-deep-learning por Trong-An Bui
Review-image-segmentation-by-deep-learningReview-image-segmentation-by-deep-learning
Review-image-segmentation-by-deep-learning
Trong-An Bui166 visualizações
Saptashwa_Mitra_Sitakanta_Mishra_Final_Project_Report por Sitakanta Mishra
Saptashwa_Mitra_Sitakanta_Mishra_Final_Project_ReportSaptashwa_Mitra_Sitakanta_Mishra_Final_Project_Report
Saptashwa_Mitra_Sitakanta_Mishra_Final_Project_Report
Sitakanta Mishra172 visualizações
Introduction to Convolutional Neural Networks por ParrotAI
Introduction to Convolutional Neural NetworksIntroduction to Convolutional Neural Networks
Introduction to Convolutional Neural Networks
ParrotAI513 visualizações
A Pointing Gesture-based Signal to Text Communication System Using OpenCV in ... por IRJET Journal
A Pointing Gesture-based Signal to Text Communication System Using OpenCV in ...A Pointing Gesture-based Signal to Text Communication System Using OpenCV in ...
A Pointing Gesture-based Signal to Text Communication System Using OpenCV in ...
IRJET Journal5 visualizações
A survey on the layers of convolutional Neural Network por Sasanko Sekhar Gantayat
A survey on the layers of convolutional Neural NetworkA survey on the layers of convolutional Neural Network
A survey on the layers of convolutional Neural Network
Sasanko Sekhar Gantayat57 visualizações
Classification of Images Using CNN Model and its Variants por IRJET Journal
Classification of Images Using CNN Model and its VariantsClassification of Images Using CNN Model and its Variants
Classification of Images Using CNN Model and its Variants
IRJET Journal2 visualizações
RunPool: A Dynamic Pooling Layer for Convolution Neural Network por Putra Wanda
RunPool: A Dynamic Pooling Layer for Convolution Neural NetworkRunPool: A Dynamic Pooling Layer for Convolution Neural Network
RunPool: A Dynamic Pooling Layer for Convolution Neural Network
Putra Wanda58 visualizações
Deep Neural Network DNN.docx por jaffarbikat
Deep Neural Network DNN.docxDeep Neural Network DNN.docx
Deep Neural Network DNN.docx
jaffarbikat3 visualizações
CNN.pptx por AbrarRana10
CNN.pptxCNN.pptx
CNN.pptx
AbrarRana1013 visualizações
ImageNet Classification with Deep Convolutional Neural Networks por Willy Marroquin (WillyDevNET)
ImageNet Classification with Deep Convolutional Neural NetworksImageNet Classification with Deep Convolutional Neural Networks
ImageNet Classification with Deep Convolutional Neural Networks
Willy Marroquin (WillyDevNET)349 visualizações
Cnn por rimshailyas1
CnnCnn
Cnn
rimshailyas179 visualizações
International Journal of Computational Engineering Research(IJCER) por ijceronline
International Journal of Computational Engineering Research(IJCER)International Journal of Computational Engineering Research(IJCER)
International Journal of Computational Engineering Research(IJCER)
ijceronline375 visualizações
Conception_et_realisation_dun_site_Web_d.pdf por SofianeHassine2
Conception_et_realisation_dun_site_Web_d.pdfConception_et_realisation_dun_site_Web_d.pdf
Conception_et_realisation_dun_site_Web_d.pdf
SofianeHassine22 visualizações
Deep Learning por Pierre de Lacaze
Deep LearningDeep Learning
Deep Learning
Pierre de Lacaze1.3K visualizações
11_Saloni Malhotra_SummerTraining_PPT.pptx por SaloniMalhotra23
11_Saloni Malhotra_SummerTraining_PPT.pptx11_Saloni Malhotra_SummerTraining_PPT.pptx
11_Saloni Malhotra_SummerTraining_PPT.pptx
SaloniMalhotra2327 visualizações
M017427985 por IOSR Journals
M017427985M017427985
M017427985
IOSR Journals253 visualizações
International Journal of Computational Engineering Research(IJCER) por ijceronline
International Journal of Computational Engineering Research(IJCER)International Journal of Computational Engineering Research(IJCER)
International Journal of Computational Engineering Research(IJCER)
ijceronline501 visualizações
NUMBER PLATE IMAGE DETECTION FOR FAST MOTION VEHICLES USING BLUR KERNEL ESTIM... por paperpublications3
NUMBER PLATE IMAGE DETECTION FOR FAST MOTION VEHICLES USING BLUR KERNEL ESTIM...NUMBER PLATE IMAGE DETECTION FOR FAST MOTION VEHICLES USING BLUR KERNEL ESTIM...
NUMBER PLATE IMAGE DETECTION FOR FAST MOTION VEHICLES USING BLUR KERNEL ESTIM...
paperpublications349 visualizações
AaSeminar_Template.pptx por ManojGowdaKb
AaSeminar_Template.pptxAaSeminar_Template.pptx
AaSeminar_Template.pptx
ManojGowdaKb3 visualizações
28 01-2021-05 por AdemarAlves7
28 01-2021-0528 01-2021-05
28 01-2021-05
AdemarAlves749 visualizações

Último

Piloting & Scaling Successfully With Microsoft Viva por
Piloting & Scaling Successfully With Microsoft VivaPiloting & Scaling Successfully With Microsoft Viva
Piloting & Scaling Successfully With Microsoft VivaRichard Harbridge
13 visualizações160 slides
Data Integrity for Banking and Financial Services por
Data Integrity for Banking and Financial ServicesData Integrity for Banking and Financial Services
Data Integrity for Banking and Financial ServicesPrecisely
29 visualizações26 slides
PharoJS - Zürich Smalltalk Group Meetup November 2023 por
PharoJS - Zürich Smalltalk Group Meetup November 2023PharoJS - Zürich Smalltalk Group Meetup November 2023
PharoJS - Zürich Smalltalk Group Meetup November 2023Noury Bouraqadi
139 visualizações17 slides
The Research Portal of Catalonia: Growing more (information) & more (services) por
The Research Portal of Catalonia: Growing more (information) & more (services)The Research Portal of Catalonia: Growing more (information) & more (services)
The Research Portal of Catalonia: Growing more (information) & more (services)CSUC - Consorci de Serveis Universitaris de Catalunya
115 visualizações25 slides
Igniting Next Level Productivity with AI-Infused Data Integration Workflows por
Igniting Next Level Productivity with AI-Infused Data Integration Workflows Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration Workflows Safe Software
317 visualizações86 slides
Democratising digital commerce in India-Report por
Democratising digital commerce in India-ReportDemocratising digital commerce in India-Report
Democratising digital commerce in India-ReportKapil Khandelwal (KK)
20 visualizações161 slides

Último(20)

Piloting & Scaling Successfully With Microsoft Viva por Richard Harbridge
Piloting & Scaling Successfully With Microsoft VivaPiloting & Scaling Successfully With Microsoft Viva
Piloting & Scaling Successfully With Microsoft Viva
Richard Harbridge13 visualizações
Data Integrity for Banking and Financial Services por Precisely
Data Integrity for Banking and Financial ServicesData Integrity for Banking and Financial Services
Data Integrity for Banking and Financial Services
Precisely29 visualizações
PharoJS - Zürich Smalltalk Group Meetup November 2023 por Noury Bouraqadi
PharoJS - Zürich Smalltalk Group Meetup November 2023PharoJS - Zürich Smalltalk Group Meetup November 2023
PharoJS - Zürich Smalltalk Group Meetup November 2023
Noury Bouraqadi139 visualizações
Igniting Next Level Productivity with AI-Infused Data Integration Workflows por Safe Software
Igniting Next Level Productivity with AI-Infused Data Integration Workflows Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Safe Software317 visualizações
Democratising digital commerce in India-Report por Kapil Khandelwal (KK)
Democratising digital commerce in India-ReportDemocratising digital commerce in India-Report
Democratising digital commerce in India-Report
Kapil Khandelwal (KK)20 visualizações
iSAQB Software Architecture Gathering 2023: How Process Orchestration Increas... por Bernd Ruecker
iSAQB Software Architecture Gathering 2023: How Process Orchestration Increas...iSAQB Software Architecture Gathering 2023: How Process Orchestration Increas...
iSAQB Software Architecture Gathering 2023: How Process Orchestration Increas...
Bernd Ruecker48 visualizações
【USB韌體設計課程】精選講義節錄-USB的列舉過程_艾鍗學院 por IttrainingIttraining
【USB韌體設計課程】精選講義節錄-USB的列舉過程_艾鍗學院【USB韌體設計課程】精選講義節錄-USB的列舉過程_艾鍗學院
【USB韌體設計課程】精選講義節錄-USB的列舉過程_艾鍗學院
IttrainingIttraining69 visualizações
Evolving the Network Automation Journey from Python to Platforms por Network Automation Forum
Evolving the Network Automation Journey from Python to PlatformsEvolving the Network Automation Journey from Python to Platforms
Evolving the Network Automation Journey from Python to Platforms
Network Automation Forum17 visualizações
PRODUCT PRESENTATION.pptx por angelicacueva6
PRODUCT PRESENTATION.pptxPRODUCT PRESENTATION.pptx
PRODUCT PRESENTATION.pptx
angelicacueva618 visualizações
SAP Automation Using Bar Code and FIORI.pdf por Virendra Rai, PMP
SAP Automation Using Bar Code and FIORI.pdfSAP Automation Using Bar Code and FIORI.pdf
SAP Automation Using Bar Code and FIORI.pdf
Virendra Rai, PMP25 visualizações
"Surviving highload with Node.js", Andrii Shumada por Fwdays
"Surviving highload with Node.js", Andrii Shumada "Surviving highload with Node.js", Andrii Shumada
"Surviving highload with Node.js", Andrii Shumada
Fwdays33 visualizações
Five Things You SHOULD Know About Postman por Postman
Five Things You SHOULD Know About PostmanFive Things You SHOULD Know About Postman
Five Things You SHOULD Know About Postman
Postman38 visualizações
Business Analyst Series 2023 - Week 3 Session 5 por DianaGray10
Business Analyst Series 2023 -  Week 3 Session 5Business Analyst Series 2023 -  Week 3 Session 5
Business Analyst Series 2023 - Week 3 Session 5
DianaGray10345 visualizações
Unit 1_Lecture 2_Physical Design of IoT.pdf por StephenTec
Unit 1_Lecture 2_Physical Design of IoT.pdfUnit 1_Lecture 2_Physical Design of IoT.pdf
Unit 1_Lecture 2_Physical Design of IoT.pdf
StephenTec15 visualizações
The Forbidden VPN Secrets.pdf por Mariam Shaba
The Forbidden VPN Secrets.pdfThe Forbidden VPN Secrets.pdf
The Forbidden VPN Secrets.pdf
Mariam Shaba20 visualizações
Scaling Knowledge Graph Architectures with AI por Enterprise Knowledge
Scaling Knowledge Graph Architectures with AIScaling Knowledge Graph Architectures with AI
Scaling Knowledge Graph Architectures with AI
Enterprise Knowledge50 visualizações
SUPPLIER SOURCING.pptx por angelicacueva6
SUPPLIER SOURCING.pptxSUPPLIER SOURCING.pptx
SUPPLIER SOURCING.pptx
angelicacueva620 visualizações

Mnist report

  • 1. ​ Internship Report On ​ “​MNIST Handwritten Digit Classification Challenge” Submitted by: Raghunandan J (​ECK5441143C@eckovation.com​) ​ Internship carried out at “Eckovation” Under the guidance of ​ Mr Ritesh Singh​ ​ ​Mr Priyanshu Pandey Mentor, Mentor, Eckovation Eckovation 1
  • 2. Index Sl. No Contents Page Number 1 Abstract 03 2 Introduction 04 3 Introduction(Contd) 05-06 4 Layers 07-17 5 Applications 18 2
  • 3. ​Abstract Artificial Intelligence has been witnessing a monumental growth in bridging the gap between the capabilities of humans and machines. Researchers and enthusiasts alike, work on numerous aspects of the field to make amazing things happen. One of many such areas is the domain of Computer Vision. The agenda for this field is to enable machines to view the world as humans do, perceive it in a similar manner and even use the knowledge for a multitude of tasks such as Image & Video recognition, Image Analysis & Classification, Media Recreation, Recommendation Systems, Natural Language Processing, etc. The advancements in Computer Vision with Deep Learning has been constructed and perfected with time, primarily over one particular algorithm — a ​Convolutional Neural Network​. 3
  • 4. Introduction A ​Convolutional Neural Network (ConvNet/CNN)​ is a Deep Learning algorithm which can take in an input image, assign importance (learnable weights and biases) to various aspects/objects in the image and be able to differentiate one from the other. The pre-processing required in a ConvNet is much lower as compared to other classification algorithms. While in primitive methods filters are hand-engineered, with enough training, ConvNets have the ability to learn these filters/characteristics. The architecture of a ConvNet is analogous to that of the connectivity pattern of Neurons in the Human Brain and was inspired by the organization of the Visual Cortex. Individual neurons respond to stimuli only in a restricted region of the visual field known as the Receptive Field. A collection of such fields overlap to cover the entire visual area. 4
  • 5. An example of a general convolutional neural network is shown below…. It consists of the following layers: ● Input Image ● Convolution Layer - The Kernel ● Pooling Layer ● Padding layers ● Classification - Fully Connected Layer (FC) 5
  • 6. Why ConvNets over Feed-Forward Neural Nets? An image is nothing but a matrix of pixel values. So why not just flatten the image (e.g. 3x3 image matrix into a 9x1 vector) and feed it to a Multi-Level Perceptron for classification purposes? In cases of extremely basic binary images, the method might show an average precision score while performing prediction of classes but would have little to no accuracy when it comes to complex images having pixel dependencies throughout. A ConvNet is able to ​successfully capture the Spatial and Temporal dependencies​ in an image through the application of relevant filters. The architecture performs a better fitting to the image dataset due to the reduction in the 6
  • 7. number of parameters involved and reusability of weights. In other words, the network can be trained to understand the sophistication of the image better. ​Explanation of each Layer Input Image: In the figure, we have an RGB image which has been separated by its three color planes--Red, Green, Blue. There are a number of such color spaces in which images exist-- Grayscale, RGB, HSV, CMYK, etc. 7
  • 8. For images reaching high dimensions such as 8K (7680​×4320) , we can see that it gets very computationally intensive. The role of the ConvNet is to reduce the images into a form which is easier to process, without losing features which are critical for getting a good prediction. Convolutional Layer - The Kernel mage Dimensions = 5 (Height) x 5 (Breadth) x 1 (Number of channels, eg. RGB) In the above demonstration, the green section resembles our 5x5x1 input image, I​. The element involved in carrying out 8
  • 9. the convolution operation in the first part of a Convolutional Layer is called the ​Kernel/Filter, K​, represented in the color yellow. We have selected ​K as a 3x3x1 matrix. Kernel/Filter, K = 1 0 1 0 1 0 1 0 1 The Kernel shifts 9 times because of ​Stride Length = 1 (Non-Strided)​, every time performing a ​matrix multiplication operation between K and the portion P of the image​ over which the kernel is hovering. 9
  • 10. The filter moves to the right with a certain Stride Value till it parses the complete width. Moving on, it hops down to the beginning (left) of the image with the same Stride Value and repeats the process until the entire image is traversed. 10
  • 11. In the case of images with multiple channels (e.g. RGB), the Kernel has the same depth as that of the input image. Matrix Multiplication is performed between Kn and In stack ([K1, I1]; [K2, I2]; [K3, I3]) and all the results are summed with the bias to give us a squashed one-depth channel Convoluted Feature Output. The objective of the Convolution Operation is to ​extract the high-level features​such as edges, from the input image. ConvNets need not be limited to only one Convolutional Layer. Conventionally, the first ConvLayer is responsible for capturing the Low-Level features such as edges, color, gradient 11
  • 12. orientation, etc. With added layers, the architecture adapts to the High-Level features as well, giving us a network which has the wholesome understanding of images in the dataset, similar to how we would. There are two types of results to the operation — one in which the convolved feature is reduced in dimensionality as compared to the input, and the other in which the dimensionality is either increased or remains the same. This is done by applying ​Valid Padding​ in case of the former, or ​Same Padding​ in the case of the latter. 12
  • 13. When we augment the 5x5x1 image into a 6x6x1 image and then apply the 3x3x1 kernel over it, we find that the convolved matrix turns out to be of dimensions 5x5x1. Hence the name — Same Padding​. On the other hand, if we perform the same operation without padding, we are presented with a matrix which has dimensions of the Kernel (3x3x1) itself — ​Valid Padding​. The following repository houses many such GIFs which would help you get a better understanding of how Padding and Stride Length work together to achieve results relevant to our needs. Pooling Layer 13
  • 14. Similar to the Convolutional Layer, the Pooling layer is responsible for reducing the spatial size of the Convolved Feature. This is to ​decrease the computational power required to process the data​through dimensionality reduction. Furthermore, it is useful for ​extracting dominant features​ which are rotational and positional invariant, thus maintaining the process of effectively training of the model. There are two types of Pooling: Max Pooling and Average Pooling. ​Max Pooling​ returns the ​maximum value​ from the portion of the image covered by the Kernel. On the other hand, Average Pooling ​returns the ​average of all the values from the portion of the image covered by the Kernel. Max Pooling also performs as a​ Noise Suppressant​. It discards the noisy activations altogether and also performs de-noising along with dimensionality reduction. On the other hand, Average Pooling simply performs dimensionality reduction as a noise suppressing mechanism. Hence, we can say that ​Max Pooling performs a lot better than Average Pooling​. 14
  • 15. The Convolutional Layer and the Pooling Layer, together form the i-th layer of a Convolutional Neural Network. Depending on the complexities in the images, the number of such layers may be increased for capturing low-levels details even further, but at the cost of more computational power. After going through the above process, we have successfully enabled the model to understand the features. Moving on, we are going to flatten the final output and feed it to a regular Neural Network for classification purposes. Classification - Fully Connected Layer (FC) 15
  • 16. Adding a Fully-Connected layer is a (usually) cheap way of learning non-linear combinations of the high-level features as represented by the output of the convolutional layer. The Fully-Connected layer is learning a possibly non-linear function in that space. Now that we have converted our input image into a suitable form for our Multi-Level Perceptron, we shall flatten the image into a column vector. The flattened output is fed to a feed-forward neural network and backpropagation applied to every iteration of training. Over a series of epochs, the model is able to distinguish between dominating and certain low-level features in images and classify them using the Softmax Classification technique. 16
  • 17. There are various architectures of CNNs available which have been key in building algorithms which power and shall power AI as a whole in the foreseeable future. Some of them have been listed below: 1. LeNet 2. AlexNet 3. VGGNet 4. GoogLeNet 5. ResNet 6. ZFNet   Real world applications of artificial neural networks: Today most of the modern intelligent application uses ANN model as a main approach to solve complicated problems. For example -the direction feature of Google Maps, search for an image with Google Images, the way we give voice instructions to Amazon Alexa, all these products exploit artificial neural network model. Artificial neural networks have broad applications in robotics, computer vision, pattern recognition, natural language processing, self-driving cars and countless other applications. To sum up the blog we can say that neural networks are arguably that technological development which has a good potential currently on the 17
  • 18. horizon. And scientist are still working over it, discovering the possibilities of this technology and we hope to see more advancement of artificial neural network in the coming future.   ---END--- 18