Skip to main content
Top

2021 | Book

Programming with TensorFlow

Solution for Edge Computing Applications

insite
SEARCH

About this book

This practical book provides an end-to-end guide to TensorFlow, the leading open source software library that helps you build and train neural networks for deep learning, Natural Language Processing (NLP), speech recognition, and general predictive analytics. The book provides a hands-on approach to TensorFlow fundamentals for a broad technical audience—from data scientists and engineers to students and researchers. The authors begin by working through some basic examples in TensorFlow before diving deeper into topics such as CNN, RNN, LSTM, and GNN. The book is written for those who want to build powerful, robust, and accurate predictive models with the power of TensorFlow, combined with other open source Python libraries. The authors demonstrate TensorFlow projects on Single Board Computers (SBCs).

Table of Contents

Frontmatter
Introduction to Tensorflow Package
Abstract
Developed by Google Brain team, tensor flow in an open source library package originally created for the tasks in heavy numerical computations (Learning TensorFlow [Authors: Tom Hope, Yehezkel S. Resheff & Itay Lieder]). Its main application is machine learning and deep learning where a computer learns from experience and the world is understood in the form of hierarchy of concepts, each concept defining its relation to simpler concepts (Deep Learning Pipeline: Building A Deep Learning Model With TensorFlow [Authors: Hisham El-Amir, Mahmoud Hamdy]). Drawing the hierarchy graph built on top of each other, the graph is deep with many layers and computation costly. Tensorflow provides faster computation and an excellent functionality compared to other popular deep learning frameworks/library. It also supports Central Processing Unit (CPUs), Graphics Processing Unit (GPUs) and distributed processing in a cluster.
Kolla Bhanu Prakash, Adarsha Ruwali, G. R. Kanagachidambaresan
Tensorflow Basics
Abstract
Tensorflow programs (Learning TensorFlow [Authors: Tom Hope, Yehezkel S. Resheff&Itay Lieder]) are basically run in a chunk while you can also use the interactive session in tensorflow. Firstly, the tensorflow is to be imported in Python using:
  • import tensorflow as tf
  • tf is just a variable declared to define tensorflow class.
Abhilash Kumar Jha, Adarsha Ruwali, Kolla Bhanu Prakash, G. R. Kanagachidambaresan
Visualizations
Abstract
Matplotlib is a library package for plotting graphs of 2D and 3D. Modules inside matplotlib like pyplot and pylab make the plotting of the graphs easier (Learning TensorFlow [Authors: Tom Hope, Yehezkel S. Resheff&Itay Lieder]). Pyplot and pylab provide features to control line styles, font, formatting axes, etc. (Deep Learning Pipeline: Building A Deep Learning Model With TensorFlow [Authors: Hisham El-Amir, Mahmoud Hamdy]). Overall, matplotlib supports a wide variety of graphs and graphs like histograms, bar charts, power spectra, polar graph, etc. (TensorFlow for Machine Intelligence_ A Hands-On Introduction to Learning Algorithms [Authors: Sam Abrahams, DanijarHafner, Erik Erwitt, Ariel Scarpinelli]). Matplotlib and numpy provide a best environment for handling and visualizing the data.
G. R. Kanagachidambaresan, G. Manohar Vinoothna
Regression
Abstract
Regression is a procedure to (Paige and Saunders, ACM Trans Math Soft 8:43–71, 1982; Abramowitz and Stegun, Handbook of mathematical functions. In National bureau of standards series, vol. 55, Dover Publications, USA, 1964) induce the statistical correlation among two or more variables where a change in a dependent variable is linked with and relies on a change in 1 or more (Hocking, Methods and applications of linear models. In Wiley series in probability and statistics, Wiley-Interscience, New York, 1996) independent variables. Coefficients describe these changes.
Kolla Bhanu Prakash, Adarsha Ruwali, G. R. Kanagachidambaresan
Neural Network
Abstract
How are you able to recognize different digits written in a different way? Well, all of these crazy smart activities are done by our visual cortex and are inherited (mimicked) by the means of neural network (Python Deep Learning: Exploring deep learning techniques, neural network architectures and GANs with PyTorch, Keras and TensorFlow. [Authors: Ivan Vasilev, Daniel Slater, GianmarioSpacagna, Peter Roelants, Valentino Zocca]). In other words, neural networks are inspired by the human brain that contains neurons and synapses to perform their own task (Hands-On Transfer Learning with Python Implement Advanced Deep Learning and Neural Network Models Using TensorFlow and Keras [Authors: DipanjanSarkar, Raghav Bali, TamoghnaGhosh]).
Pradeep Kumar Vadla, Adarsha Ruwali, Kolla Bhanu Prakash, M. V. Prasanna Lakshmi, G. R. Kanagachidambaresan
Convolutional Neural Network
Abstract
Convolutional neural network (CNN) is a (Agrawal and Roy, IEEE Trans Magn 55:1–7, 2019) class of deep neural network. CNNs are what we call the most representative supervised model in the theory of deep learning is the technique that nowadays (Akinaga and Shima, Proc IEEE 98:2237–2251, 2010) is producing a lot of outstanding results especially in the field of pattern recognition in analyzing images.
Y. V. R. Nagapawan, Kolla Bhanu Prakash, G. R. Kanagachidambaresan
Recurrent Neural Network
Abstract
Recurrent neural networks (RNN) are very powerful types of neural networks and are the most promising algorithm because they are the only ones with an internal memory (Boca Raton Mhaskar et al. Learning functions: when is deep better than shallow. arXiv:1603.00988, 2016). RNN is the most preferred algorithm for sequential data that includes speech, text, financial data, audio, video, weather, and much more as it can provide a deeper understanding of sequence and its meaning compared to other algorithms (Deep Learning for Computer Vision: Expert techniques to train advanced neural networks using TensorFlow and Keras. [Authors: RajalingappaaShanmugamani]). It is generally used to obtain predictive results in sequential data.
G. R. Kanagachidambaresan, Adarsha Ruwali, Debrup Banerjee, Kolla Bhanu Prakash
Application of Machine Learning and Deep Learning
Abstract
This booming field of machine learning (ML) along with deep learning (DL) that comes under artificial intelligence has wide real-time applications to resolve the problems faced in the real world. These technologies are widely used in the world of gaming, healthcare, linguistics, biology, automobile, etc.
Enireddy Vamsidhar, G. R. Kanagachidambaresan, Kolla Bhanu Prakash
Chatbot
Abstract
A chatbot is a piece of software that performs a conversation through auditory or textual methods. Such systems are (Deep Learning with Applications Using Python: Chatbots and Face, Object, and Speech Recognition with Tensorflow and Keras. [Authors: Navin Kumar Manaswi]) often programmed to convincingly mimic how a human will behave as a conversational partner, but they are far from being able to pass the Turing test as of 2019.
Kolla Bhanu Prakash, A. J. Sravan Kumar, G. R. Kanagachidambaresan
PyTorch
Abstract
PyTorch is a library for Python programs that encourages deep learning programs. With this receptiveness and convenience found in (Deep Learning for Computer Vision: Expert techniques to train advanced neural networks using TensorFlow and Keras. [Authors: RajalingappaaShanmugamani]), PyTorch makes it useful in developing deep neural networks. It has an expansive scope and is applied for various applications. As Python is for programming, PyTorch is both a magnificent prologue to profound learning just as an instrument usable in proficient real-world applications.
Sagar Imambi, Kolla Bhanu Prakash, G. R. Kanagachidambaresan
Pattern Recognition and Machine Learning
Abstract
Support vector machine (SVM) is one of the most widely used classification algorithms. It uses supervised learning method (Aizerman et al., Auto Remote Cont 25:821–837, 1964) for training. The SVM classifier is mostly used in multi-classification problems. SVM differs from the traditional classifiers as it uses “decision boundary,” which separates the classes. The decision boundary maximizes distances of data points belongs to different classes .in this; decision boundary is the optimum that is Most optimal (Baron and Ensley, Opportunity recognition as the detection of meaningful patterns: evidence from the prototypes of novice and experienced entrepreneurs. Manuscript under review, 2005) decision boundary has maximum margin. The data points which are nearer to the boundary are called support vectors. The most important thing in SVM is its hyper plane, where for a N-dimensional space it is an (N-1)-dimensional subspace. To better understand, the hyper plane is just a line in one dimension for a two-dimensional space. It is a two-dimensional plane that separates the classes for a three-dimensional space.
Bharadwaj, Kolla Bhanu Prakash, G. R. Kanagachidambaresan
Programming Tensor Flow with Single Board Computers
Abstract
Single board computer (SBC) is a compact built-in circuit with processing unit, memory access, and general purpose input and output units (Deep Learning Pipeline: Building A Deep Learning Model With TensorFlow [Authors: Hisham El-Amir, Mahmoud Hamdy]; Deep Learning with TensorFlow: Explore neural networks with Python [Authors: Giancarlo Zaccone, Md. RezaulKarim, Ahmed Menshawy]; Goodfellow et al., Deep learning, vol 1. MIT Press, Cambridge, 2016). The SBC is mainly compatible and portable in nature; these SBCs are the perfect option for ready-to-mount devices and for prototyping. Some of the famous SBCs in the present market include Raspberry pi, Ordroid, Jetson Nano, NVIDIA XAVIER, etc. Table 1 illustrates the comparison of important commonly used single board computers, capable to compute and import tensor flow packages. The NVIDIA SBCs are also enabled with GPU cores to make GPU coding Compute Unified Device Architecture (CUDA). The process runs in GPU framework for faster computation.
G. R. Kanagachidambaresan, Kolla Bhanu Prakash, V. Mahima
Backmatter
Metadata
Title
Programming with TensorFlow
Editors
Dr. Kolla Bhanu Prakash
Dr. G. R. Kanagachidambaresan
Copyright Year
2021
Electronic ISBN
978-3-030-57077-4
Print ISBN
978-3-030-57076-7
DOI
https://doi.org/10.1007/978-3-030-57077-4