SlideShare a Scribd company logo
1 of 45
Keras: A Python framework for Deep Learning
CA-691
Mohit Kumar
Roll No. - 20961
M.Sc. (Comp. Applications)
(Course Seminar)
INDIANAGRICULTURALSTATISTICSRESEARCH
INSTITUTE,NEWDELHI
1
Contents
• Introduction
• Keras models
• Keras layers
• Image data augmentation
• Keras applications
• Transfer learning
• Keras datasets
• Keras callbacks
• Case study
• Summary
• References
2
Introduction
• Francois Chollet, the author of Keras, says:
“The framework was developed with a focus on enabling fast experimentation.
Being able to go from idea to result with the least possible delay is key to doing
good research.”
• Keras is open source framework written in Python
• ONEIROS ( Open Ended Neuro-Electronic Intelligent Robot OS)
• Released on 27 March 2015 by Francois Chollet
• Contains neural-network building blocks like layers, optimizer,
activation functions
• Support CNN and RNN
3
Introduction …
• Contains datasets and some pre-trained deep learning applications.
• Model check-pointing, early stopping
• Uses libraries TensorFlow, Theano, CNTK as backend, only one at a time
• Backend does all computations
• Keras call backend functions
• Works for both CPU and GPU
Fig: Keras architecture
4
Keras features
• Rapid prototyping-
1. Build neural network with minimal lines of code
2. Build simple or complex neural networks within a few minutes
• Flexibility-
1. Sometime it is desired to define own metrics, layers, a cost
function, Keras provide freedom for the same.
5
Keras models
• Two types of built in models
1. Sequential
2. Functional
All models have following common properties
1. Inputs that contain a list of input tensors
2. Layers, which comprise the model graph
3. Outputs, a list of output tensors.
6
Sequential Model
• It is linear stack of layers
• Output of previous layer is input
to the next layer.
• Create models by stacking one
layer on top of other
• Useful in situation where task is
not complex
• Provides higher level of
abstraction
Fig: An example of sequential model
7
Functional Model
• It define more complex models
• Such as directed acylic graphs
• Multi input output models
• Model with shared layers
• Possible to connect a layer with
any other layer
Fig: An example of functional model 8
Steps in building a model
9
Model methods
1. Compile: It is used to configure model. It accept following parameters
• Optimizer:
• This specifies type of optimiser to use in back-propagation algorithm
• SGD, Adadelta, Adagrad , Adam , Nadam optimizer and many others.
• Loss:
• It is the objective function
• It track losses or the drift from the function during training the model.
• For regression: mean squared error, mean absolute error etc.
• For classification: Categorical cross-entropy, binary cross entropy
• Different loss functions for different outputs
10
Model methods…
• Metrics:
• It is similar to objective function.
• Results from metric aren’t used when training model.
• It specifies the list of metrics that model evaluate during training and testing.
• The commonly used metric is the accuracy metric.
• Possible to specify different metrics for different output
11
Model methods…
2. Fit
 This is the second important method
 It train the model for specified epochs
 It accept the following important arguments
• x: numpy array of training data
• y: numpy array of target data
• batch_size:
1. It specifies the number of samples per gradient update ,by default 32.
2. 32 samples of training data are fed into the model at a single time.
12
Model methods…
• epochs:
• An epoch is an iteration
• It specifies number of times training data is feed to the model.
• validation_split:
• Fraction of the data that is used as validation.
• Validation data is selected from the end samples
• At the end of each epoch, loss and metrics are calculated for this data.
• validation_data:
• shuffle:
13
Keras layers
• It consist of different types of layers used in deep learning such as:
1. Dense layer:
• A Dense layer is fully connected neural network layer
(Ramchoun et al, 2016)
14
Keras Layers…
2. Convolutional layer:
• Mostly used in computer vision.
• It extract features from the input image.
• It preserves the spatial relationships between pixels
• It learn image features using small squares of input data
• Finally, the obtained matrix is known as the feature map
15
Keras Layers …
Figure: Convolutional in Practice
16
Keras Layers…
3. Pooling layer
• Also called as subsampling or down-sampling layer
• Pooling reduces the dimensionality of feature map
• Retains the most important information
• There are many types of pooling layers such as
• MaxPooling and AveragePooling
• In case of max pooling, take the largest element from the rectified feature
map within that window.
• In average pooling, average of all elements in that window is taken.
17
Keras Layers …
Figure: Max Pooling Concept
18
Keras Layers …
4. Recurrent layer
• Basic building block of RNN
• This is mostly used in sequential and time series modelling.
5. Embedding layers
• Required when input is text
• These are mostly used in Natural Language Processing.
6. Batch Normalisation layer
• Normalize the activations of the previous layer at each batch
• Applies a transformation that maintains the mean activation close to 0 and
the activation standard deviation close to 1.
19
Image Data Augmentation
• Performance of deep learning neural networks often improves with
the amount of data available
• It artificially expand training dataset by creating modified versions of
images
• It create transformed versions of images in the training dataset that
belong to the same class as the original image.
• Transformation include operations from the field of image
manipulation such as shifts, flips, zooms, rotation etc.
20
21
Keras Applications
• Keras applications are deep learning models
• All these are image classifiers
• These applications are available with pre-trained weights
• Weights are downloaded automatically when instantiating application
• Stored at ~/. Keras/models
• These are different variation of pre-trained neural networks
• Each has its architecture, size, speed, accuracy etc.
22
Keras Applications….
Source: https://keras.io/applications/ 23
Keras Applications…
1. VGGNET:
• Introduced by Simonyan and Zisserman in their 2014 paper
• Very deep convolutional networks for large scale image recognition
• 3×3 convolutional layers stacked on top of each other in increasing depth.
• Reducing volume size is handled by max pooling.
• Two fully-connected layers, each with 4,096 nodes are then followed by a
softmax classifier
24
Keras Applications…
(Simonyan and Zisserman, 2014)
25
Continued
2. RESNET
• Introduced by He et. al in their 2015 paper deep residual learning for image
recognition.
• works on the core idea “identity shortcut connection”
• Add the original input to the output of the convolution block
26
Source He et al.(2015)
27
Keras Applications…
3. INCEPTION:
• The “Inception” architecture was first introduced by Szegedy et al.
in their 2014 paper- Going Deeper with convolutions
• It is a convolutional neural network (CNN) which is 27 layers deep
• It has some interesting layers called the inception layers
• The inception layer is a combination of various layers such as :
• 1×1 Convolutions layers
• 3×3 Convolutional layer and 5×5 layer
• Output filter concatenated into single output vector forming the input of
the next image
28
Keras Applications…
Fig: The idea of an inception module
29
Transfer learning
• A model that have been trained for a particular task is reused as a
base or starting point for other model
• Some smart researchers built models on large image datasets like
ImagNet, Open images, and COCO
• They decided to share their models to the public for reuse
• This prevents the need to train an Image Classifier from scratch again
30
Transfer learning …
• To train an Image classifier that will achieve near or above human
level accuracy on image classification, it is required to have
1. Massive amount of data
2. Large computational power
3. Lots of time
• Since this is a big problem for people with little or no resources
• There is no need for transfer learning if we have
• Large dataset that is quite different from the ones above
• Have large computational power
31
Keras Datasets
• Keras contains various datasets that are used to build neural
networks. The datasets are described below
1. Boston House Pricing dataset:
• It contains 13 attributes of houses of Boston suburbs in the late 1970s
• Used in regression problems
2. CIFAR10:
• It is used for classification problems.
• This dataset contains 50,000 32×32 colour images
• Images are labelled over 10 categories
• 10,000 test images.
32
Keras Datasets …
3. CIFAR100: Same as CIFAR10 but it has 100 categories
4. MNIST:
• This dataset contains 60,000 28×28 greyscale images of 10 digits
• Also include 10,000 test images.
5. Fashion-MNIST:
• This dataset is used for classification problems.
• This dataset contains 60,000 28×28 greyscale images of 10 categories, along
with 10,000 test images
6. IMDB movie reviews data:
• Dataset of 25,000 movies reviews from IMDB
• labelled by sentiment (positive/negative).
7. Reuters newswire topics classification:
• Dataset of 11,228 newswires from Reuters, labelled over 46 topics
33
Keras Callbacks
• A callback is a set of functions to be applied at any given stages of the
training procedure
• Used to get an internal view or statistics of the model during training
• A list of callbacks are passed to the fit method of Sequential or Model
class
• There are different types of callbacks performing different operations
1. History:
 1. This call-back is automatically applied to every keras model
 2. History object is returned by the fit method of model.
34
Keras callbacks …
2. ModelCheckPoint:
 This callback save the model after every epoch to a specified path
 The advantage of this callback is that if model training is stopped due to any
reason, then model will automatically saved to the disk.
3. EarlyStopping:
 1. This callback stop training when a monitored quantity stopped improving
 2. Important parameter are
• Quantity to be monitored
• Patience, number of epochs with no improvement after which training will stop.
35
Keras Callbacks …
4. TensorBoard:
 It is a visualization tool
 This callback write a log for TensorBoard which allow to visualize dynamic
graph of training and test metrics
36
Case Study
• Image classifier developed using keras
• Web application is developed using Python’s flask framework
• Dataset contains 8032 images belongs to 8 classes such as
• Banana, Corn, Daisy, Fig, Jackfruit, Lemon, Orange, and Pomegranate
• ResNet50 model is used for transfer learning
• This model is image classifier for 1000 classes
• Above 8 classes also belongs to these 1000 classes.
• ResNet50 model’s last layer is used for classification
• To develop new model, last layer’s trainable property is set to False
• Then a new dense layer is added with 8 units 37
Case Study…
Fig: ResNet50 model’s architecture 38
Case Study…
• Keras callbacks early stopping and model checkpoints are applied
• Validation loss is monitored with patience value 3
• An epoch with minimum validation loss value, will be saved to disk
• During training of model image data is augmented
• Model was set to run for 15 epochs
• Model was early stopped at 10th epoch because validation loss didn’t
decrease for 3 successive epochs from 8, 9 and 10th
• Model achieved training accuracy 0.7930 and validation accuracy
0.8418
39
Case Study …
Fig: Model Accuracy Fig: Model Loss
40
Case Study…
Fig: Parameters of developed model
41
Summary
• Keras is open source framework written in Python
• Easy and fast prototyping
• Runs seamlessly on both CPU and GPU
• Support both CNN and RNN
• Keras models
• Image data augmentation
• Keras callbacks
42
Summary…
• Keras applications
• Transfer learning
• Keras datasets
43
References
• Chollet, F. (2017). Xception: Deep learning with depthwise separable
convolutions. In Proceedings of the IEEE conference on computer vision and
pattern recognition (pp. 1251-1258).
• F. Chollet. Keras. https://github.com/fchollet/keras, 2015.
• Gulli, A., & Pal, S. (2017). Deep Learning with Keras. Packt Publishing Ltd.
• He, K., Zhang, X., Ren, S., & Sun, J. (2016). Deep residual learning for image
recognition. In Proceedings of the IEEE conference on computer vision and pattern
recognition (pp. 770-778).
• J. Deng, W. Dong, R. Socher, L.-J. Li, K. Li, and L. Fei-Fei. ImageNet: A Large-Scale
Hierarchical Image Database. In CVPR09, 2009
44
References
• Ioffe, S., & Szegedy, C. (2015). Batch normalization: Accelerating deep network
training by reducing internal covariate shift. arXiv preprint arXiv:1502.03167.
• Perceptron: Architecture Optimization and Training. IJIMAI, 4(1), 26-30.
• Ramchoun, H., Idrissi, M. A. J., Ghanou, Y., & Ettaouil, M. (2016). Multilayer
Perceptron: Architecture Optimization and Training. IJIMAI, 4(1), 26-30.
• Simonyan, K., & Zisserman, A. (2014). Very deep convolutional networks for large-
scale image recognition. arXiv preprint arXiv:1409.1556.
• Szegedy, C., Liu, W., Jia, Y., Sermanet, P., Reed, S., Anguelov, D., ... & Rabinovich, A.
(2015). Going deeper with convolutions. In Proceedings of the IEEE conference on
computer vision and pattern recognition (pp. 1-9).
45

More Related Content

What's hot

Supervised and unsupervised learning
Supervised and unsupervised learningSupervised and unsupervised learning
Supervised and unsupervised learningParas Kohli
 
Landscape of AI/ML in 2023
Landscape of AI/ML in 2023Landscape of AI/ML in 2023
Landscape of AI/ML in 2023HyunJoon Jung
 
PyTorch Python Tutorial | Deep Learning Using PyTorch | Image Classifier Usin...
PyTorch Python Tutorial | Deep Learning Using PyTorch | Image Classifier Usin...PyTorch Python Tutorial | Deep Learning Using PyTorch | Image Classifier Usin...
PyTorch Python Tutorial | Deep Learning Using PyTorch | Image Classifier Usin...Edureka!
 
Introduction to Deep Learning, Keras, and TensorFlow
Introduction to Deep Learning, Keras, and TensorFlowIntroduction to Deep Learning, Keras, and TensorFlow
Introduction to Deep Learning, Keras, and TensorFlowSri Ambati
 
An introduction to Deep Learning
An introduction to Deep LearningAn introduction to Deep Learning
An introduction to Deep LearningJulien SIMON
 
Introduction to Machine Learning
Introduction to Machine LearningIntroduction to Machine Learning
Introduction to Machine LearningShahar Cohen
 
PyTorch Introduction
PyTorch IntroductionPyTorch Introduction
PyTorch IntroductionYash Kawdiya
 
Machine Learning with PyCarent + MLflow
Machine Learning with PyCarent + MLflowMachine Learning with PyCarent + MLflow
Machine Learning with PyCarent + MLflowDatabricks
 
Deep Learning Tutorial
Deep Learning TutorialDeep Learning Tutorial
Deep Learning TutorialAmr Rashed
 
Intro to Deep learning - Autoencoders
Intro to Deep learning - Autoencoders Intro to Deep learning - Autoencoders
Intro to Deep learning - Autoencoders Akash Goel
 
Restricted Boltzmann Machine | Neural Network Tutorial | Deep Learning Tutori...
Restricted Boltzmann Machine | Neural Network Tutorial | Deep Learning Tutori...Restricted Boltzmann Machine | Neural Network Tutorial | Deep Learning Tutori...
Restricted Boltzmann Machine | Neural Network Tutorial | Deep Learning Tutori...Edureka!
 
Introduction of Deep Learning
Introduction of Deep LearningIntroduction of Deep Learning
Introduction of Deep LearningMyungjin Lee
 
Keras Tutorial For Beginners | Creating Deep Learning Models Using Keras In P...
Keras Tutorial For Beginners | Creating Deep Learning Models Using Keras In P...Keras Tutorial For Beginners | Creating Deep Learning Models Using Keras In P...
Keras Tutorial For Beginners | Creating Deep Learning Models Using Keras In P...Edureka!
 
TensorFlow and Keras: An Overview
TensorFlow and Keras: An OverviewTensorFlow and Keras: An Overview
TensorFlow and Keras: An OverviewPoo Kuan Hoong
 
Deep Learning, Keras, and TensorFlow
Deep Learning, Keras, and TensorFlowDeep Learning, Keras, and TensorFlow
Deep Learning, Keras, and TensorFlowOswald Campesato
 
Deep Learning as a Cat/Dog Detector
Deep Learning as a Cat/Dog DetectorDeep Learning as a Cat/Dog Detector
Deep Learning as a Cat/Dog DetectorRoelof Pieters
 
AI vs Machine Learning vs Deep Learning | Machine Learning Training with Pyth...
AI vs Machine Learning vs Deep Learning | Machine Learning Training with Pyth...AI vs Machine Learning vs Deep Learning | Machine Learning Training with Pyth...
AI vs Machine Learning vs Deep Learning | Machine Learning Training with Pyth...Edureka!
 
Deep Learning: Application & Opportunity
Deep Learning: Application & OpportunityDeep Learning: Application & Opportunity
Deep Learning: Application & OpportunityiTrain
 

What's hot (20)

Supervised and unsupervised learning
Supervised and unsupervised learningSupervised and unsupervised learning
Supervised and unsupervised learning
 
Landscape of AI/ML in 2023
Landscape of AI/ML in 2023Landscape of AI/ML in 2023
Landscape of AI/ML in 2023
 
PyTorch Python Tutorial | Deep Learning Using PyTorch | Image Classifier Usin...
PyTorch Python Tutorial | Deep Learning Using PyTorch | Image Classifier Usin...PyTorch Python Tutorial | Deep Learning Using PyTorch | Image Classifier Usin...
PyTorch Python Tutorial | Deep Learning Using PyTorch | Image Classifier Usin...
 
Introduction to Deep Learning, Keras, and TensorFlow
Introduction to Deep Learning, Keras, and TensorFlowIntroduction to Deep Learning, Keras, and TensorFlow
Introduction to Deep Learning, Keras, and TensorFlow
 
An introduction to Deep Learning
An introduction to Deep LearningAn introduction to Deep Learning
An introduction to Deep Learning
 
Introduction to Machine Learning
Introduction to Machine LearningIntroduction to Machine Learning
Introduction to Machine Learning
 
Deep learning
Deep learningDeep learning
Deep learning
 
PyTorch Introduction
PyTorch IntroductionPyTorch Introduction
PyTorch Introduction
 
Machine Learning with PyCarent + MLflow
Machine Learning with PyCarent + MLflowMachine Learning with PyCarent + MLflow
Machine Learning with PyCarent + MLflow
 
Deep Learning Tutorial
Deep Learning TutorialDeep Learning Tutorial
Deep Learning Tutorial
 
Intro to Deep learning - Autoencoders
Intro to Deep learning - Autoencoders Intro to Deep learning - Autoencoders
Intro to Deep learning - Autoencoders
 
Restricted Boltzmann Machine | Neural Network Tutorial | Deep Learning Tutori...
Restricted Boltzmann Machine | Neural Network Tutorial | Deep Learning Tutori...Restricted Boltzmann Machine | Neural Network Tutorial | Deep Learning Tutori...
Restricted Boltzmann Machine | Neural Network Tutorial | Deep Learning Tutori...
 
Introduction of Deep Learning
Introduction of Deep LearningIntroduction of Deep Learning
Introduction of Deep Learning
 
Keras Tutorial For Beginners | Creating Deep Learning Models Using Keras In P...
Keras Tutorial For Beginners | Creating Deep Learning Models Using Keras In P...Keras Tutorial For Beginners | Creating Deep Learning Models Using Keras In P...
Keras Tutorial For Beginners | Creating Deep Learning Models Using Keras In P...
 
TensorFlow and Keras: An Overview
TensorFlow and Keras: An OverviewTensorFlow and Keras: An Overview
TensorFlow and Keras: An Overview
 
Deep Learning, Keras, and TensorFlow
Deep Learning, Keras, and TensorFlowDeep Learning, Keras, and TensorFlow
Deep Learning, Keras, and TensorFlow
 
Deep learning
Deep learningDeep learning
Deep learning
 
Deep Learning as a Cat/Dog Detector
Deep Learning as a Cat/Dog DetectorDeep Learning as a Cat/Dog Detector
Deep Learning as a Cat/Dog Detector
 
AI vs Machine Learning vs Deep Learning | Machine Learning Training with Pyth...
AI vs Machine Learning vs Deep Learning | Machine Learning Training with Pyth...AI vs Machine Learning vs Deep Learning | Machine Learning Training with Pyth...
AI vs Machine Learning vs Deep Learning | Machine Learning Training with Pyth...
 
Deep Learning: Application & Opportunity
Deep Learning: Application & OpportunityDeep Learning: Application & Opportunity
Deep Learning: Application & Opportunity
 

Similar to Keras: A Python framework for deep learning

Deep learning summary
Deep learning summaryDeep learning summary
Deep learning summaryankit_ppt
 
YU CS Summer 2021 Project | TensorFlow Street Image Classification and Object...
YU CS Summer 2021 Project | TensorFlow Street Image Classification and Object...YU CS Summer 2021 Project | TensorFlow Street Image Classification and Object...
YU CS Summer 2021 Project | TensorFlow Street Image Classification and Object...JacobSilbiger1
 
NVIDIA 深度學習教育機構 (DLI): Medical image segmentation using digits
NVIDIA 深度學習教育機構 (DLI): Medical image segmentation using digitsNVIDIA 深度學習教育機構 (DLI): Medical image segmentation using digits
NVIDIA 深度學習教育機構 (DLI): Medical image segmentation using digitsNVIDIA Taiwan
 
Facial Emotion Detection on Children's Emotional Face
Facial Emotion Detection on Children's Emotional FaceFacial Emotion Detection on Children's Emotional Face
Facial Emotion Detection on Children's Emotional FaceTakrim Ul Islam Laskar
 
Transfer Learning (20230516)
Transfer Learning (20230516)Transfer Learning (20230516)
Transfer Learning (20230516)FEG
 
Transfer Learning and Fine Tuning for Cross Domain Image Classification with ...
Transfer Learning and Fine Tuning for Cross Domain Image Classification with ...Transfer Learning and Fine Tuning for Cross Domain Image Classification with ...
Transfer Learning and Fine Tuning for Cross Domain Image Classification with ...Sujit Pal
 
Computer Vision for Beginners
Computer Vision for BeginnersComputer Vision for Beginners
Computer Vision for BeginnersSanghamitra Deb
 
JRs presentation-few-shot-learning-overview @ AI4Media WP5 workshop
JRs presentation-few-shot-learning-overview @ AI4Media WP5 workshopJRs presentation-few-shot-learning-overview @ AI4Media WP5 workshop
JRs presentation-few-shot-learning-overview @ AI4Media WP5 workshopHannes Fassold
 
Teach a neural network to read handwriting
Teach a neural network to read handwritingTeach a neural network to read handwriting
Teach a neural network to read handwritingVipul Kaushal
 
Image Segmentation Using Deep Learning : A survey
Image Segmentation Using Deep Learning : A surveyImage Segmentation Using Deep Learning : A survey
Image Segmentation Using Deep Learning : A surveyNUPUR YADAV
 
Distilling dark knowledge from neural networks
Distilling dark knowledge from neural networksDistilling dark knowledge from neural networks
Distilling dark knowledge from neural networksAlexander Korbonits
 
10 Things I Wish I Dad Known Before Scaling Deep Learning Solutions
10 Things I Wish I Dad Known Before Scaling Deep Learning Solutions10 Things I Wish I Dad Known Before Scaling Deep Learning Solutions
10 Things I Wish I Dad Known Before Scaling Deep Learning SolutionsJesus Rodriguez
 
Handwritten Digit Recognition and performance of various modelsation[autosaved]
Handwritten Digit Recognition and performance of various modelsation[autosaved]Handwritten Digit Recognition and performance of various modelsation[autosaved]
Handwritten Digit Recognition and performance of various modelsation[autosaved]SubhradeepMaji
 
Convolutional Neural Networks : Popular Architectures
Convolutional Neural Networks : Popular ArchitecturesConvolutional Neural Networks : Popular Architectures
Convolutional Neural Networks : Popular Architecturesananth
 
Introduction to Convolutional Neural Networks
Introduction to Convolutional Neural NetworksIntroduction to Convolutional Neural Networks
Introduction to Convolutional Neural NetworksHannes Hapke
 
Introduction to Mahout and Machine Learning
Introduction to Mahout and Machine LearningIntroduction to Mahout and Machine Learning
Introduction to Mahout and Machine LearningVarad Meru
 

Similar to Keras: A Python framework for deep learning (20)

Deep learning summary
Deep learning summaryDeep learning summary
Deep learning summary
 
YU CS Summer 2021 Project | TensorFlow Street Image Classification and Object...
YU CS Summer 2021 Project | TensorFlow Street Image Classification and Object...YU CS Summer 2021 Project | TensorFlow Street Image Classification and Object...
YU CS Summer 2021 Project | TensorFlow Street Image Classification and Object...
 
Mnist soln
Mnist solnMnist soln
Mnist soln
 
NVIDIA 深度學習教育機構 (DLI): Medical image segmentation using digits
NVIDIA 深度學習教育機構 (DLI): Medical image segmentation using digitsNVIDIA 深度學習教育機構 (DLI): Medical image segmentation using digits
NVIDIA 深度學習教育機構 (DLI): Medical image segmentation using digits
 
Facial Emotion Detection on Children's Emotional Face
Facial Emotion Detection on Children's Emotional FaceFacial Emotion Detection on Children's Emotional Face
Facial Emotion Detection on Children's Emotional Face
 
Transfer Learning (20230516)
Transfer Learning (20230516)Transfer Learning (20230516)
Transfer Learning (20230516)
 
Transfer Learning and Fine Tuning for Cross Domain Image Classification with ...
Transfer Learning and Fine Tuning for Cross Domain Image Classification with ...Transfer Learning and Fine Tuning for Cross Domain Image Classification with ...
Transfer Learning and Fine Tuning for Cross Domain Image Classification with ...
 
Computer Vision for Beginners
Computer Vision for BeginnersComputer Vision for Beginners
Computer Vision for Beginners
 
JRs presentation-few-shot-learning-overview @ AI4Media WP5 workshop
JRs presentation-few-shot-learning-overview @ AI4Media WP5 workshopJRs presentation-few-shot-learning-overview @ AI4Media WP5 workshop
JRs presentation-few-shot-learning-overview @ AI4Media WP5 workshop
 
Teach a neural network to read handwriting
Teach a neural network to read handwritingTeach a neural network to read handwriting
Teach a neural network to read handwriting
 
Image Segmentation Using Deep Learning : A survey
Image Segmentation Using Deep Learning : A surveyImage Segmentation Using Deep Learning : A survey
Image Segmentation Using Deep Learning : A survey
 
Distilling dark knowledge from neural networks
Distilling dark knowledge from neural networksDistilling dark knowledge from neural networks
Distilling dark knowledge from neural networks
 
cnn ppt.pptx
cnn ppt.pptxcnn ppt.pptx
cnn ppt.pptx
 
10 Things I Wish I Dad Known Before Scaling Deep Learning Solutions
10 Things I Wish I Dad Known Before Scaling Deep Learning Solutions10 Things I Wish I Dad Known Before Scaling Deep Learning Solutions
10 Things I Wish I Dad Known Before Scaling Deep Learning Solutions
 
TensorFlow.pptx
TensorFlow.pptxTensorFlow.pptx
TensorFlow.pptx
 
Handwritten Digit Recognition and performance of various modelsation[autosaved]
Handwritten Digit Recognition and performance of various modelsation[autosaved]Handwritten Digit Recognition and performance of various modelsation[autosaved]
Handwritten Digit Recognition and performance of various modelsation[autosaved]
 
Convolutional Neural Networks : Popular Architectures
Convolutional Neural Networks : Popular ArchitecturesConvolutional Neural Networks : Popular Architectures
Convolutional Neural Networks : Popular Architectures
 
Introduction to Convolutional Neural Networks
Introduction to Convolutional Neural NetworksIntroduction to Convolutional Neural Networks
Introduction to Convolutional Neural Networks
 
ppt.pdf
ppt.pdfppt.pdf
ppt.pdf
 
Introduction to Mahout and Machine Learning
Introduction to Mahout and Machine LearningIntroduction to Mahout and Machine Learning
Introduction to Mahout and Machine Learning
 

Recently uploaded

Consent & Privacy Signals on Google *Pixels* - MeasureCamp Amsterdam 2024
Consent & Privacy Signals on Google *Pixels* - MeasureCamp Amsterdam 2024Consent & Privacy Signals on Google *Pixels* - MeasureCamp Amsterdam 2024
Consent & Privacy Signals on Google *Pixels* - MeasureCamp Amsterdam 2024thyngster
 
RA-11058_IRR-COMPRESS Do 198 series of 1998
RA-11058_IRR-COMPRESS Do 198 series of 1998RA-11058_IRR-COMPRESS Do 198 series of 1998
RA-11058_IRR-COMPRESS Do 198 series of 1998YohFuh
 
PKS-TGC-1084-630 - Stage 1 Proposal.pptx
PKS-TGC-1084-630 - Stage 1 Proposal.pptxPKS-TGC-1084-630 - Stage 1 Proposal.pptx
PKS-TGC-1084-630 - Stage 1 Proposal.pptxPramod Kumar Srivastava
 
专业一比一美国俄亥俄大学毕业证成绩单pdf电子版制作修改
专业一比一美国俄亥俄大学毕业证成绩单pdf电子版制作修改专业一比一美国俄亥俄大学毕业证成绩单pdf电子版制作修改
专业一比一美国俄亥俄大学毕业证成绩单pdf电子版制作修改yuu sss
 
办理学位证纽约大学毕业证(NYU毕业证书)原版一比一
办理学位证纽约大学毕业证(NYU毕业证书)原版一比一办理学位证纽约大学毕业证(NYU毕业证书)原版一比一
办理学位证纽约大学毕业证(NYU毕业证书)原版一比一fhwihughh
 
科罗拉多大学波尔得分校毕业证学位证成绩单-可办理
科罗拉多大学波尔得分校毕业证学位证成绩单-可办理科罗拉多大学波尔得分校毕业证学位证成绩单-可办理
科罗拉多大学波尔得分校毕业证学位证成绩单-可办理e4aez8ss
 
How we prevented account sharing with MFA
How we prevented account sharing with MFAHow we prevented account sharing with MFA
How we prevented account sharing with MFAAndrei Kaleshka
 
B2 Creative Industry Response Evaluation.docx
B2 Creative Industry Response Evaluation.docxB2 Creative Industry Response Evaluation.docx
B2 Creative Industry Response Evaluation.docxStephen266013
 
GA4 Without Cookies [Measure Camp AMS]
GA4 Without Cookies [Measure Camp AMS]GA4 Without Cookies [Measure Camp AMS]
GA4 Without Cookies [Measure Camp AMS]📊 Markus Baersch
 
Predictive Analysis - Using Insight-informed Data to Determine Factors Drivin...
Predictive Analysis - Using Insight-informed Data to Determine Factors Drivin...Predictive Analysis - Using Insight-informed Data to Determine Factors Drivin...
Predictive Analysis - Using Insight-informed Data to Determine Factors Drivin...ThinkInnovation
 
Dubai Call Girls Wifey O52&786472 Call Girls Dubai
Dubai Call Girls Wifey O52&786472 Call Girls DubaiDubai Call Girls Wifey O52&786472 Call Girls Dubai
Dubai Call Girls Wifey O52&786472 Call Girls Dubaihf8803863
 
RadioAdProWritingCinderellabyButleri.pdf
RadioAdProWritingCinderellabyButleri.pdfRadioAdProWritingCinderellabyButleri.pdf
RadioAdProWritingCinderellabyButleri.pdfgstagge
 
Amazon TQM (2) Amazon TQM (2)Amazon TQM (2).pptx
Amazon TQM (2) Amazon TQM (2)Amazon TQM (2).pptxAmazon TQM (2) Amazon TQM (2)Amazon TQM (2).pptx
Amazon TQM (2) Amazon TQM (2)Amazon TQM (2).pptxAbdelrhman abooda
 
Kantar AI Summit- Under Embargo till Wednesday, 24th April 2024, 4 PM, IST.pdf
Kantar AI Summit- Under Embargo till Wednesday, 24th April 2024, 4 PM, IST.pdfKantar AI Summit- Under Embargo till Wednesday, 24th April 2024, 4 PM, IST.pdf
Kantar AI Summit- Under Embargo till Wednesday, 24th April 2024, 4 PM, IST.pdfSocial Samosa
 
毕业文凭制作#回国入职#diploma#degree澳洲中央昆士兰大学毕业证成绩单pdf电子版制作修改#毕业文凭制作#回国入职#diploma#degree
毕业文凭制作#回国入职#diploma#degree澳洲中央昆士兰大学毕业证成绩单pdf电子版制作修改#毕业文凭制作#回国入职#diploma#degree毕业文凭制作#回国入职#diploma#degree澳洲中央昆士兰大学毕业证成绩单pdf电子版制作修改#毕业文凭制作#回国入职#diploma#degree
毕业文凭制作#回国入职#diploma#degree澳洲中央昆士兰大学毕业证成绩单pdf电子版制作修改#毕业文凭制作#回国入职#diploma#degreeyuu sss
 
9654467111 Call Girls In Munirka Hotel And Home Service
9654467111 Call Girls In Munirka Hotel And Home Service9654467111 Call Girls In Munirka Hotel And Home Service
9654467111 Call Girls In Munirka Hotel And Home ServiceSapana Sha
 
Indian Call Girls in Abu Dhabi O5286O24O8 Call Girls in Abu Dhabi By Independ...
Indian Call Girls in Abu Dhabi O5286O24O8 Call Girls in Abu Dhabi By Independ...Indian Call Girls in Abu Dhabi O5286O24O8 Call Girls in Abu Dhabi By Independ...
Indian Call Girls in Abu Dhabi O5286O24O8 Call Girls in Abu Dhabi By Independ...dajasot375
 
VIP Call Girls Service Miyapur Hyderabad Call +91-8250192130
VIP Call Girls Service Miyapur Hyderabad Call +91-8250192130VIP Call Girls Service Miyapur Hyderabad Call +91-8250192130
VIP Call Girls Service Miyapur Hyderabad Call +91-8250192130Suhani Kapoor
 
Data Science Jobs and Salaries Analysis.pptx
Data Science Jobs and Salaries Analysis.pptxData Science Jobs and Salaries Analysis.pptx
Data Science Jobs and Salaries Analysis.pptxFurkanTasci3
 

Recently uploaded (20)

Consent & Privacy Signals on Google *Pixels* - MeasureCamp Amsterdam 2024
Consent & Privacy Signals on Google *Pixels* - MeasureCamp Amsterdam 2024Consent & Privacy Signals on Google *Pixels* - MeasureCamp Amsterdam 2024
Consent & Privacy Signals on Google *Pixels* - MeasureCamp Amsterdam 2024
 
RA-11058_IRR-COMPRESS Do 198 series of 1998
RA-11058_IRR-COMPRESS Do 198 series of 1998RA-11058_IRR-COMPRESS Do 198 series of 1998
RA-11058_IRR-COMPRESS Do 198 series of 1998
 
PKS-TGC-1084-630 - Stage 1 Proposal.pptx
PKS-TGC-1084-630 - Stage 1 Proposal.pptxPKS-TGC-1084-630 - Stage 1 Proposal.pptx
PKS-TGC-1084-630 - Stage 1 Proposal.pptx
 
专业一比一美国俄亥俄大学毕业证成绩单pdf电子版制作修改
专业一比一美国俄亥俄大学毕业证成绩单pdf电子版制作修改专业一比一美国俄亥俄大学毕业证成绩单pdf电子版制作修改
专业一比一美国俄亥俄大学毕业证成绩单pdf电子版制作修改
 
办理学位证纽约大学毕业证(NYU毕业证书)原版一比一
办理学位证纽约大学毕业证(NYU毕业证书)原版一比一办理学位证纽约大学毕业证(NYU毕业证书)原版一比一
办理学位证纽约大学毕业证(NYU毕业证书)原版一比一
 
科罗拉多大学波尔得分校毕业证学位证成绩单-可办理
科罗拉多大学波尔得分校毕业证学位证成绩单-可办理科罗拉多大学波尔得分校毕业证学位证成绩单-可办理
科罗拉多大学波尔得分校毕业证学位证成绩单-可办理
 
How we prevented account sharing with MFA
How we prevented account sharing with MFAHow we prevented account sharing with MFA
How we prevented account sharing with MFA
 
B2 Creative Industry Response Evaluation.docx
B2 Creative Industry Response Evaluation.docxB2 Creative Industry Response Evaluation.docx
B2 Creative Industry Response Evaluation.docx
 
GA4 Without Cookies [Measure Camp AMS]
GA4 Without Cookies [Measure Camp AMS]GA4 Without Cookies [Measure Camp AMS]
GA4 Without Cookies [Measure Camp AMS]
 
Predictive Analysis - Using Insight-informed Data to Determine Factors Drivin...
Predictive Analysis - Using Insight-informed Data to Determine Factors Drivin...Predictive Analysis - Using Insight-informed Data to Determine Factors Drivin...
Predictive Analysis - Using Insight-informed Data to Determine Factors Drivin...
 
Dubai Call Girls Wifey O52&786472 Call Girls Dubai
Dubai Call Girls Wifey O52&786472 Call Girls DubaiDubai Call Girls Wifey O52&786472 Call Girls Dubai
Dubai Call Girls Wifey O52&786472 Call Girls Dubai
 
RadioAdProWritingCinderellabyButleri.pdf
RadioAdProWritingCinderellabyButleri.pdfRadioAdProWritingCinderellabyButleri.pdf
RadioAdProWritingCinderellabyButleri.pdf
 
Amazon TQM (2) Amazon TQM (2)Amazon TQM (2).pptx
Amazon TQM (2) Amazon TQM (2)Amazon TQM (2).pptxAmazon TQM (2) Amazon TQM (2)Amazon TQM (2).pptx
Amazon TQM (2) Amazon TQM (2)Amazon TQM (2).pptx
 
Call Girls in Saket 99530🔝 56974 Escort Service
Call Girls in Saket 99530🔝 56974 Escort ServiceCall Girls in Saket 99530🔝 56974 Escort Service
Call Girls in Saket 99530🔝 56974 Escort Service
 
Kantar AI Summit- Under Embargo till Wednesday, 24th April 2024, 4 PM, IST.pdf
Kantar AI Summit- Under Embargo till Wednesday, 24th April 2024, 4 PM, IST.pdfKantar AI Summit- Under Embargo till Wednesday, 24th April 2024, 4 PM, IST.pdf
Kantar AI Summit- Under Embargo till Wednesday, 24th April 2024, 4 PM, IST.pdf
 
毕业文凭制作#回国入职#diploma#degree澳洲中央昆士兰大学毕业证成绩单pdf电子版制作修改#毕业文凭制作#回国入职#diploma#degree
毕业文凭制作#回国入职#diploma#degree澳洲中央昆士兰大学毕业证成绩单pdf电子版制作修改#毕业文凭制作#回国入职#diploma#degree毕业文凭制作#回国入职#diploma#degree澳洲中央昆士兰大学毕业证成绩单pdf电子版制作修改#毕业文凭制作#回国入职#diploma#degree
毕业文凭制作#回国入职#diploma#degree澳洲中央昆士兰大学毕业证成绩单pdf电子版制作修改#毕业文凭制作#回国入职#diploma#degree
 
9654467111 Call Girls In Munirka Hotel And Home Service
9654467111 Call Girls In Munirka Hotel And Home Service9654467111 Call Girls In Munirka Hotel And Home Service
9654467111 Call Girls In Munirka Hotel And Home Service
 
Indian Call Girls in Abu Dhabi O5286O24O8 Call Girls in Abu Dhabi By Independ...
Indian Call Girls in Abu Dhabi O5286O24O8 Call Girls in Abu Dhabi By Independ...Indian Call Girls in Abu Dhabi O5286O24O8 Call Girls in Abu Dhabi By Independ...
Indian Call Girls in Abu Dhabi O5286O24O8 Call Girls in Abu Dhabi By Independ...
 
VIP Call Girls Service Miyapur Hyderabad Call +91-8250192130
VIP Call Girls Service Miyapur Hyderabad Call +91-8250192130VIP Call Girls Service Miyapur Hyderabad Call +91-8250192130
VIP Call Girls Service Miyapur Hyderabad Call +91-8250192130
 
Data Science Jobs and Salaries Analysis.pptx
Data Science Jobs and Salaries Analysis.pptxData Science Jobs and Salaries Analysis.pptx
Data Science Jobs and Salaries Analysis.pptx
 

Keras: A Python framework for deep learning

  • 1. Keras: A Python framework for Deep Learning CA-691 Mohit Kumar Roll No. - 20961 M.Sc. (Comp. Applications) (Course Seminar) INDIANAGRICULTURALSTATISTICSRESEARCH INSTITUTE,NEWDELHI 1
  • 2. Contents • Introduction • Keras models • Keras layers • Image data augmentation • Keras applications • Transfer learning • Keras datasets • Keras callbacks • Case study • Summary • References 2
  • 3. Introduction • Francois Chollet, the author of Keras, says: “The framework was developed with a focus on enabling fast experimentation. Being able to go from idea to result with the least possible delay is key to doing good research.” • Keras is open source framework written in Python • ONEIROS ( Open Ended Neuro-Electronic Intelligent Robot OS) • Released on 27 March 2015 by Francois Chollet • Contains neural-network building blocks like layers, optimizer, activation functions • Support CNN and RNN 3
  • 4. Introduction … • Contains datasets and some pre-trained deep learning applications. • Model check-pointing, early stopping • Uses libraries TensorFlow, Theano, CNTK as backend, only one at a time • Backend does all computations • Keras call backend functions • Works for both CPU and GPU Fig: Keras architecture 4
  • 5. Keras features • Rapid prototyping- 1. Build neural network with minimal lines of code 2. Build simple or complex neural networks within a few minutes • Flexibility- 1. Sometime it is desired to define own metrics, layers, a cost function, Keras provide freedom for the same. 5
  • 6. Keras models • Two types of built in models 1. Sequential 2. Functional All models have following common properties 1. Inputs that contain a list of input tensors 2. Layers, which comprise the model graph 3. Outputs, a list of output tensors. 6
  • 7. Sequential Model • It is linear stack of layers • Output of previous layer is input to the next layer. • Create models by stacking one layer on top of other • Useful in situation where task is not complex • Provides higher level of abstraction Fig: An example of sequential model 7
  • 8. Functional Model • It define more complex models • Such as directed acylic graphs • Multi input output models • Model with shared layers • Possible to connect a layer with any other layer Fig: An example of functional model 8
  • 9. Steps in building a model 9
  • 10. Model methods 1. Compile: It is used to configure model. It accept following parameters • Optimizer: • This specifies type of optimiser to use in back-propagation algorithm • SGD, Adadelta, Adagrad , Adam , Nadam optimizer and many others. • Loss: • It is the objective function • It track losses or the drift from the function during training the model. • For regression: mean squared error, mean absolute error etc. • For classification: Categorical cross-entropy, binary cross entropy • Different loss functions for different outputs 10
  • 11. Model methods… • Metrics: • It is similar to objective function. • Results from metric aren’t used when training model. • It specifies the list of metrics that model evaluate during training and testing. • The commonly used metric is the accuracy metric. • Possible to specify different metrics for different output 11
  • 12. Model methods… 2. Fit  This is the second important method  It train the model for specified epochs  It accept the following important arguments • x: numpy array of training data • y: numpy array of target data • batch_size: 1. It specifies the number of samples per gradient update ,by default 32. 2. 32 samples of training data are fed into the model at a single time. 12
  • 13. Model methods… • epochs: • An epoch is an iteration • It specifies number of times training data is feed to the model. • validation_split: • Fraction of the data that is used as validation. • Validation data is selected from the end samples • At the end of each epoch, loss and metrics are calculated for this data. • validation_data: • shuffle: 13
  • 14. Keras layers • It consist of different types of layers used in deep learning such as: 1. Dense layer: • A Dense layer is fully connected neural network layer (Ramchoun et al, 2016) 14
  • 15. Keras Layers… 2. Convolutional layer: • Mostly used in computer vision. • It extract features from the input image. • It preserves the spatial relationships between pixels • It learn image features using small squares of input data • Finally, the obtained matrix is known as the feature map 15
  • 16. Keras Layers … Figure: Convolutional in Practice 16
  • 17. Keras Layers… 3. Pooling layer • Also called as subsampling or down-sampling layer • Pooling reduces the dimensionality of feature map • Retains the most important information • There are many types of pooling layers such as • MaxPooling and AveragePooling • In case of max pooling, take the largest element from the rectified feature map within that window. • In average pooling, average of all elements in that window is taken. 17
  • 18. Keras Layers … Figure: Max Pooling Concept 18
  • 19. Keras Layers … 4. Recurrent layer • Basic building block of RNN • This is mostly used in sequential and time series modelling. 5. Embedding layers • Required when input is text • These are mostly used in Natural Language Processing. 6. Batch Normalisation layer • Normalize the activations of the previous layer at each batch • Applies a transformation that maintains the mean activation close to 0 and the activation standard deviation close to 1. 19
  • 20. Image Data Augmentation • Performance of deep learning neural networks often improves with the amount of data available • It artificially expand training dataset by creating modified versions of images • It create transformed versions of images in the training dataset that belong to the same class as the original image. • Transformation include operations from the field of image manipulation such as shifts, flips, zooms, rotation etc. 20
  • 21. 21
  • 22. Keras Applications • Keras applications are deep learning models • All these are image classifiers • These applications are available with pre-trained weights • Weights are downloaded automatically when instantiating application • Stored at ~/. Keras/models • These are different variation of pre-trained neural networks • Each has its architecture, size, speed, accuracy etc. 22
  • 24. Keras Applications… 1. VGGNET: • Introduced by Simonyan and Zisserman in their 2014 paper • Very deep convolutional networks for large scale image recognition • 3×3 convolutional layers stacked on top of each other in increasing depth. • Reducing volume size is handled by max pooling. • Two fully-connected layers, each with 4,096 nodes are then followed by a softmax classifier 24
  • 25. Keras Applications… (Simonyan and Zisserman, 2014) 25
  • 26. Continued 2. RESNET • Introduced by He et. al in their 2015 paper deep residual learning for image recognition. • works on the core idea “identity shortcut connection” • Add the original input to the output of the convolution block 26
  • 27. Source He et al.(2015) 27
  • 28. Keras Applications… 3. INCEPTION: • The “Inception” architecture was first introduced by Szegedy et al. in their 2014 paper- Going Deeper with convolutions • It is a convolutional neural network (CNN) which is 27 layers deep • It has some interesting layers called the inception layers • The inception layer is a combination of various layers such as : • 1×1 Convolutions layers • 3×3 Convolutional layer and 5×5 layer • Output filter concatenated into single output vector forming the input of the next image 28
  • 29. Keras Applications… Fig: The idea of an inception module 29
  • 30. Transfer learning • A model that have been trained for a particular task is reused as a base or starting point for other model • Some smart researchers built models on large image datasets like ImagNet, Open images, and COCO • They decided to share their models to the public for reuse • This prevents the need to train an Image Classifier from scratch again 30
  • 31. Transfer learning … • To train an Image classifier that will achieve near or above human level accuracy on image classification, it is required to have 1. Massive amount of data 2. Large computational power 3. Lots of time • Since this is a big problem for people with little or no resources • There is no need for transfer learning if we have • Large dataset that is quite different from the ones above • Have large computational power 31
  • 32. Keras Datasets • Keras contains various datasets that are used to build neural networks. The datasets are described below 1. Boston House Pricing dataset: • It contains 13 attributes of houses of Boston suburbs in the late 1970s • Used in regression problems 2. CIFAR10: • It is used for classification problems. • This dataset contains 50,000 32×32 colour images • Images are labelled over 10 categories • 10,000 test images. 32
  • 33. Keras Datasets … 3. CIFAR100: Same as CIFAR10 but it has 100 categories 4. MNIST: • This dataset contains 60,000 28×28 greyscale images of 10 digits • Also include 10,000 test images. 5. Fashion-MNIST: • This dataset is used for classification problems. • This dataset contains 60,000 28×28 greyscale images of 10 categories, along with 10,000 test images 6. IMDB movie reviews data: • Dataset of 25,000 movies reviews from IMDB • labelled by sentiment (positive/negative). 7. Reuters newswire topics classification: • Dataset of 11,228 newswires from Reuters, labelled over 46 topics 33
  • 34. Keras Callbacks • A callback is a set of functions to be applied at any given stages of the training procedure • Used to get an internal view or statistics of the model during training • A list of callbacks are passed to the fit method of Sequential or Model class • There are different types of callbacks performing different operations 1. History:  1. This call-back is automatically applied to every keras model  2. History object is returned by the fit method of model. 34
  • 35. Keras callbacks … 2. ModelCheckPoint:  This callback save the model after every epoch to a specified path  The advantage of this callback is that if model training is stopped due to any reason, then model will automatically saved to the disk. 3. EarlyStopping:  1. This callback stop training when a monitored quantity stopped improving  2. Important parameter are • Quantity to be monitored • Patience, number of epochs with no improvement after which training will stop. 35
  • 36. Keras Callbacks … 4. TensorBoard:  It is a visualization tool  This callback write a log for TensorBoard which allow to visualize dynamic graph of training and test metrics 36
  • 37. Case Study • Image classifier developed using keras • Web application is developed using Python’s flask framework • Dataset contains 8032 images belongs to 8 classes such as • Banana, Corn, Daisy, Fig, Jackfruit, Lemon, Orange, and Pomegranate • ResNet50 model is used for transfer learning • This model is image classifier for 1000 classes • Above 8 classes also belongs to these 1000 classes. • ResNet50 model’s last layer is used for classification • To develop new model, last layer’s trainable property is set to False • Then a new dense layer is added with 8 units 37
  • 38. Case Study… Fig: ResNet50 model’s architecture 38
  • 39. Case Study… • Keras callbacks early stopping and model checkpoints are applied • Validation loss is monitored with patience value 3 • An epoch with minimum validation loss value, will be saved to disk • During training of model image data is augmented • Model was set to run for 15 epochs • Model was early stopped at 10th epoch because validation loss didn’t decrease for 3 successive epochs from 8, 9 and 10th • Model achieved training accuracy 0.7930 and validation accuracy 0.8418 39
  • 40. Case Study … Fig: Model Accuracy Fig: Model Loss 40
  • 41. Case Study… Fig: Parameters of developed model 41
  • 42. Summary • Keras is open source framework written in Python • Easy and fast prototyping • Runs seamlessly on both CPU and GPU • Support both CNN and RNN • Keras models • Image data augmentation • Keras callbacks 42
  • 43. Summary… • Keras applications • Transfer learning • Keras datasets 43
  • 44. References • Chollet, F. (2017). Xception: Deep learning with depthwise separable convolutions. In Proceedings of the IEEE conference on computer vision and pattern recognition (pp. 1251-1258). • F. Chollet. Keras. https://github.com/fchollet/keras, 2015. • Gulli, A., & Pal, S. (2017). Deep Learning with Keras. Packt Publishing Ltd. • He, K., Zhang, X., Ren, S., & Sun, J. (2016). Deep residual learning for image recognition. In Proceedings of the IEEE conference on computer vision and pattern recognition (pp. 770-778). • J. Deng, W. Dong, R. Socher, L.-J. Li, K. Li, and L. Fei-Fei. ImageNet: A Large-Scale Hierarchical Image Database. In CVPR09, 2009 44
  • 45. References • Ioffe, S., & Szegedy, C. (2015). Batch normalization: Accelerating deep network training by reducing internal covariate shift. arXiv preprint arXiv:1502.03167. • Perceptron: Architecture Optimization and Training. IJIMAI, 4(1), 26-30. • Ramchoun, H., Idrissi, M. A. J., Ghanou, Y., & Ettaouil, M. (2016). Multilayer Perceptron: Architecture Optimization and Training. IJIMAI, 4(1), 26-30. • Simonyan, K., & Zisserman, A. (2014). Very deep convolutional networks for large- scale image recognition. arXiv preprint arXiv:1409.1556. • Szegedy, C., Liu, W., Jia, Y., Sermanet, P., Reed, S., Anguelov, D., ... & Rabinovich, A. (2015). Going deeper with convolutions. In Proceedings of the IEEE conference on computer vision and pattern recognition (pp. 1-9). 45