
Introduction to Deep Learning and Neural Networks with Python™
A Practical Guide
- 1st Edition - November 25, 2020
- Imprint: Academic Press
- Authors: Ahmed Fawzy Gad, Fatima Ezzahra Jarmouni
- Language: English
- Paperback ISBN:9 7 8 - 0 - 3 2 3 - 9 0 9 3 3 - 4
- eBook ISBN:9 7 8 - 0 - 3 2 3 - 9 0 9 3 4 - 1
Introduction to Deep Learning and Neural Networks with Python™: A Practical Guide is an intensive step-by-step guide for neuroscientists to fully understand, practice, and build… Read more

Purchase options

Institutional subscription on ScienceDirect
Request a sales quoteIntroduction to Deep Learning and Neural Networks with Python™: A Practical Guide is an intensive step-by-step guide for neuroscientists to fully understand, practice, and build neural networks. Providing math and Python™ code examples to clarify neural network calculations, by book’s end readers will fully understand how neural networks work starting from the simplest model Y=X and building from scratch. Details and explanations are provided on how a generic gradient descent algorithm works based on mathematical and Python™ examples, teaching you how to use the gradient descent algorithm to manually perform all calculations in both the forward and backward passes of training a neural network.
- Examines the practical side of deep learning and neural networks
- Provides a problem-based approach to building artificial neural networks using real data
- Describes Python™ functions and features for neuroscientists
- Uses a careful tutorial approach to describe implementation of neural networks in Python™
- Features math and code examples (via companion website) with helpful instructions for easy implementation
Neuroscientists, especially those who work in systems and computational neuroscience who want to build artificial neural networks. Additional researchers who use Python™ or want to learn how. Researchers in biomedical engineering and neural engineering
- Cover image
- Title page
- Table of Contents
- Copyright
- Dedication
- Preface
- Acknowledgments
- Ahmed Fawzy Gad
- Fatima Ezzahra Jarmouni
- Chapter 1: Preparing the development environment
- Abstract
- Downloading and installing Python™ 3
- Installing required libraries
- Preparing Ubuntu® virtual machine for Kivy
- Preparing Ubuntu® virtual machine for PyPy
- Conclusion
- Chapter 2: Introduction to artificial neural networks (ANN)
- Abstract
- Simplest model Y = X
- Error calculation
- Introducing weight
- Optimizing the parameter
- Introducing bias
- Optimizing the weight and the bias
- From mathematical to graphical form of a neuron
- Neuron with multiple inputs
- Sum of products
- Activation function
- Conclusion
- Chapter 3: ANN with 1 input and 1 output
- Abstract
- Network architecture
- Forward pass
- Forward pass math calculations
- Backward pass
- Chain rule
- Backward pass math calculations
- Python™ implementation
- Conclusion
- Chapter 4: Working with any number of inputs
- Abstract
- ANN with 2 inputs and 1 output
- Math example
- Python™ implementation
- ANN with 10 inputs and 1 output
- ANN with any number of inputs
- Inputs assignment
- Weights initialization
- Calculating the SOP
- Calculating the SOP to weights derivatives
- Calculating the weights gradients
- Updating the weights
- Conclusion
- Chapter 5: Working with hidden layers
- Abstract
- ANN with 1 hidden layer with 2 neurons
- Forward pass
- Forward pass math calculations
- Backward pass
- Backward pass math calculations
- Python™ implementation
- Conclusion
- Chapter 6: Using any number of hidden neurons
- Abstract
- ANN with 1 hidden layer with 5 neurons
- Forward pass
- Backward pass
- Hidden layer gradients
- Python™ implementation
- Any number of hidden neurons in 1 layer
- ANN with 8 hidden neurons
- Conclusion
- Chapter 7: Working with 2 hidden layers
- Abstract
- ANN with 2 hidden layers with 5 and 3 neurons
- Editing Chapter 6 implementation to work with an additional layer
- ANN with 2 hidden layers with 10 and 8 neurons
- Conclusion
- Chapter 8: ANN with 3 hidden layers
- Abstract
- ANN with 3 hidden layers with 5, 3, and 2 neurons
- Editing Chapter 7 implementation to work with 3 hidden layers
- Python™ implementation
- ANN with 10 inputs and 3 hidden layers with 8, 5, and 3 neurons
- Conclusion
- Chapter 9: Working with any number of hidden layers
- Abstract
- What to do for a generic gradient descent implementation?
- Generic approach for gradients calculation
- Python™ implementation
- backward_pass() method
- Example: Training the network
- Making predictions
- Conclusion
- Chapter 10: Generic ANN
- Abstract
- Preparing initial weights for any number of outputs
- Calculating gradients for all output neurons
- Working with multiple training samples
- Implementing ReLU
- New implementation for MLP class
- Example for training network with multiple samples
- Using bias
- Stochastic and batch gradient descent
- Conclusion
- Chapter 11: Running neural networks in Android
- Abstract
- Building the first Kivy app
- Getting started with KivyMD
- Training network in a thread
- Neural network KivyMD app
- Building the Android app
- Conclusion
- Index
- Edition: 1
- Published: November 25, 2020
- Imprint: Academic Press
- No. of pages: 300
- Language: English
- Paperback ISBN: 9780323909334
- eBook ISBN: 9780323909341
AG
Ahmed Fawzy Gad
Dr. Gad is a data neuroscientist who is passionate about artificial intelligence, machine learning, deep learning, computer vision, and Python with over 7 projects in the fields. He is a researcher at both the University of Ottawa, Canada and Menoufia University, Egypt and also serves in a teaching capacity as an Assistant Lecturer. He has contributed to over 80 original articles and additional tutorials in addition to his previous 3 books. He hopes to continue adding value to the neural data science community by sharing his writings, recorded tutorials, and consultation with new trainees in the field.
Affiliations and expertise
Researcher and Assistant Lecturer, Menoufia University, EgyptFJ
Fatima Ezzahra Jarmouni
Fatima Ezzahra Jarmouni is an M.Sc. junior data scientist interested in statistics, data science, machine learning, and deep learning. Currently enrolled in a PhD program in machine learning at ENSIAS. She codes with Python and has experience in Python data science libraries including NumPy, Scikit-Learn, TensorFlow, and Keras.
Affiliations and expertise
Ecole Nationale Superieure d'Informatique et d'Analyse des Systemes, Rabat, MoroccoRead Introduction to Deep Learning and Neural Networks with Python™ on ScienceDirect