Deep Learning Architectures and Tools: A Comprehensive Survey

Deep Learning Architectures and Tools: A Comprehensive Survey

K. Bhargavi (Siddaganga Institute of Technology, India)
DOI: 10.4018/978-1-7998-2108-3.ch002
OnDemand PDF Download:
No Current Special Offers


Deep learning is one of the popular machine learning strategies that learns in a supervised or unsupervised manner by forming a cascade of multiple layers of non-linear processing units. It is inspired by the way of information processing and communication pattern of the typical biological nervous system. The deep learning algorithms learn through multiple levels of abstractions and hierarchy of concepts; as a result, it is found to be more efficient than the conventional non-deep machine learning algorithms. This chapter explains the basics of deep learning by highlighting the necessity of deep learning over non-deep learning. It also covers discussion on several recently developed deep learning architectures and popular tools available in market for deep learning, which includes Tensorflow, PyTorch, Keras, Caffe, Deeplearning4j, Pylearn2, Theano, CuDDN, CUDA-Convnet, and Matlab.
Chapter Preview


Most of the companies are trending towards deep learning to solve most complex problems in an efficient way by training the network sufficient labeled or unlabelled data samples (Pulkit 2018; Angelov, and Sperduti 2016). It has become one of the important in digitalization era due to the following characteristics.

  • Stronger synaptic connection among the neurons

  • Lower dependencies on the input data samples

  • Able to handle both labeled and unlabelled data samples.

  • Used to train the machines to make cognitively intelligent.

  • Explores the power of depth in machine learning.

  • Fast training as it deals with fewer parameters.

  • Distributed representation can handle higher dimensions easily.

Some of the applications of deep learning include coloring black and white images, generation of image captions, automatic game playing, audio recognition, designing drug, filtering social network data, inspection of composite materials, giving sound effects for silent movies, diagnosis of medical images, handwriting recognition and so on (Bhargavi, and Babu 2017; Deng, and Yu 2014).).

However deep learning involves several challenges (Chen, and Lin 2014; Falcini, and Lami 2017), some of them are listed below.

  • The learning speed of the deep learning algorithms is very slow.

  • The desired accuracy is achieved only when the algorithm is trained with more number of training samples.

  • More number of input parameters is required for better tuning of the deep learning network.

  • The efficiency of the model is trained by the ability of the model to perform better over the unseen data samples.

  • Hyper parameters are sensitive towards the outliers.

  • To train and test the deep learning algorithms the hardware devices must have high computational ability.

  • The power consumption rate of the multi core GPUs used for training deep learning algorithms is high.

  • The deep learning algorithms lacks flexibility as it does not provide precise solution to specific problems.

  • The rate of retraining and retuning of the models is more even when small changes happen in the type of application.

  • The noise in the training data causes overfitting problem which declines the performance of the network towards real world applications.

  • The deep learning models cannot be generalized easily outside the training space of the problem.

In literature several works are available on deep learning tools and steps to install the tools for working is covered which includes hands-on sessions information about the deep learning tools, visualization tool available for machine learning, Python packages frequently used for deep learning, popular tools for modeling artificial intelligence components, and so on. However the works carried out have limitations as it does not discusses in-depth about the deep learning architectures and the deep learning tools. And the existing works concentrate more on the installation procedure to use the tools and advantages and disadvantages of each of the tools are not mentioned clearly. So in this chapter the basics of deep learning, comparison between deep learning and non-deep learning techniques, deep learning tools along with their advantages and disadvantages are discussed.


Deep Learning Versus Non-Deep Learning

A comparison between deep learning and non-deep learning is given in Table 1.

Complete Chapter List

Search this Book: