Deep Learning Frameworks
Dr. Dinesh K. Vishwakarma
PROFESSOR, DEPARTMENT OF INFORMATION TECHNOLOGY
DELHI TECHNOLOGICAL UNIVERSITY, DELHI.
Webpage: http://www.dtu.ac.in/Web/Departments/InformationTechnology/faculty/dkvishwakarma.php
Email: dinesh@dtu.ac.in
Outlines
Dinesh K. Vishwakarma, Ph.D.
2
4/29/26
Objectives
Dinesh K. Vishwakarma, Ph.D.
3
4/29/26
Introduction
Dinesh K. Vishwakarma, Ph.D.
4
4/29/26
TensorFlow | Google Brain, 2015 (rewritten DistBelief) |
Keras | François Chollet, 2015 (now at Google) |
PyTorch/Torch | |
Caffe | Berkeley Vision and Learning Center (BVLC), 2013 |
MaxNet |
TensorFlow: Introduction
Dinesh K. Vishwakarma, Ph.D.
5
4/29/26
TensorFlow: Architecture
Dinesh K. Vishwakarma, Ph.D.
6
4/29/26
TensorFlow: Computational Graph
Dinesh K. Vishwakarma, Ph.D.
7
4/29/26
TensorBoard
Why is TensorFlow popular?
Dinesh K. Vishwakarma, Ph.D.
8
4/29/26
Keras
Dinesh K. Vishwakarma, Ph.D.
9
4/29/26
Keras: Features
Dinesh K. Vishwakarma, Ph.D.
10
4/29/26
Keras: Simplicity
kernel = tf.Variable(tf.truncated_normal([3, 3, 64, 64], type=tf.float32,stddev=1e-1), name='weights')
conv = tf.nn.conv2d(self.conv1_1, kernel, [1, 1, 1, 1], padding='SAME')
biases = tf.Variable(tf.constant(0.0, shape=[64], dtype=tf.float32), trainable=True, name='biases')
out = tf.nn.bias_add(conv, biases)
self.conv1_2 = tf.nn.relu(out, name=’block1_conv2’)
x = Convolution2D(64, 3, 3, activation='relu', border_mode='same', name='block1_conv2')(x)
Dinesh K. Vishwakarma, Ph.D.
11
4/29/26
Keras: Simplicity
Dinesh K. Vishwakarma, Ph.D.
12
4/29/26
PyTorch
Dinesh K. Vishwakarma, Ph.D.
13
4/29/26
Used: Facebook and Twitter
PyTorch …
Dinesh K. Vishwakarma, Ph.D.
14
4/29/26
Caffe
Dinesh K. Vishwakarma, Ph.D.
15
4/29/26
Caffe…
Dinesh K. Vishwakarma, Ph.D.
16
4/29/26
Caffe: Features
+Easy to code
+Easy to include different libraries
+Good Python and Matlab interfaces
+Compatible to layer written in Python
+Fastest library on CPU
+Easy to compile and install
+Easy to fine tune
-no auto differentiation
-less suitable for Text, Sound and time series data analysis
Dinesh K. Vishwakarma, Ph.D.
17
4/29/26
MxNet Apache
Dinesh K. Vishwakarma, Ph.D.
18
4/29/26
MxNet Apache…
Dinesh K. Vishwakarma, Ph.D.
19
4/29/26
Benefit of MxNet
Dinesh K. Vishwakarma, Ph.D.
20
4/29/26
Comparison of Frameworks
DL Library | K80/CUDA 8/CuDNN 6 | P100/CUDA 8/CuDNN 6 |
148 | 54 | |
162 | 69 | |
163 | 53 | |
152 | 57 | |
194 | 76 | |
241 | 76 | |
269 | 93 | |
173 | 57 | |
253 | 65 | |
145 | 52 | |
169 | 51 | |
159 | ?? | |
205 | 72 |
Training Time: CNN (VGG-style, 32bit) on CIFAR-10
DL Library | K80/CUDA 8/CuDNN 6 | P100/CUDA 8/CuDNN 6 |
14.1 | 7.9 | |
9.3 | 2.7 | |
8.5 | 1.6 | |
| 1.7 | |
21.7 | 5.9 | |
10.2 | 2.9 | |
6.5 | 1.8 | |
7.7 | 1.6 | |
7.7 | 1.9 | |
6.3 | ??? | |
??? | ??? | |
17 | 7.4 |
Avg. Feature Extraction Time: ResNet-50; 1000 Images
Source: https://github.com/ilkarman/DeepLearningFrameworks
Selection of Framework
Dinesh K. Vishwakarma, Ph.D.
22
4/29/26
Selection of Framework…
Dinesh K. Vishwakarma, Ph.D.
23
4/29/26
Good deep learning framework
Dinesh K. Vishwakarma, Ph.D.
24
4/29/26
Conclusion
Dinesh K. Vishwakarma, Ph.D.
25
4/29/26
References
Dinesh K. Vishwakarma, Ph.D.
26
4/29/26
Thank You�Contact: dinesh@dtu.ac.in �Mobile: +91-9971339840
Dinesh K. Vishwakarma, Ph.D.
27
4/29/26