![Loading...](https://link.springer.com/static/c4a417b97a76cc2980e3c25e2271af3129e08bbe/images/pdf-preview/spacer.gif)
-
Chapter
Building Blocks
There are four main types of NN topologies used in commercial applications: multilayer perceptrons (MLPs), convolution neural networks (CNNs), recurrent neural networks (RNNs), and transformer-based topologies...
-
Chapter
Compiler Optimizations
At the core of the software stack are compilers to transform the programmer’s high-level code into executable code that runs efficiently on a target device. Programmers use a variety of languages to code at va...
-
Chapter
Opportunities and Challenges
In this concluding chapter, we discuss some of the opportunities and challenges ahead. The opportunities include using ML techniques to improve various aspects of the overall DL system. The challenges include ...
-
Chapter
Distributed Training
The number of computations required to train state-of-the-art models is growing exponentially, doubling every ~ 3:4 months (far below the glory days of Moore’s Law 1.5–2 years) [DH18]. Training a large model c...
-
Chapter
Training a Model
Training a model to achieve high statistical performance within a computational and power budget requires several design considerations. These include defining a topology, preparing the dataset, properly initi...
-
Chapter
Reducing the Model Size
Computers represent real numerical values as a set of binary digits or bits, usually with 8, 16, 32, or 64 bits. The more bits used, the higher the numerical range and precision or representation of the numeri...
-
Chapter
Introduction
A deep learning (DL) model is a function that maps input data to an output prediction. To improve the accuracy of the prediction in complex tasks, DL models are increasingly requiring more compute, memory, ban...
-
Chapter
Models and Applications
The main types of workloads where DL models are used in production are recommender systems, computer vision, and NLP.
-
Chapter
Hardware
The primary components in a DL platform are multitudinous multiplication and addition units, sufficient memory capacity, high memory bandwidth to feed the compute units, high inter-node and inter-server bandwi...
-
Chapter
Frameworks and Compilers
A framework has multiple types of compilers: the computation graph optimizer, the primitive libraries JIT to select the best schedule, the code generation path for operations not supported by the primitive lib...