Concepts, tools, and techniques to explore deep learning architectures and methodologies Key Features Explore advanced deep learning architectures using various datasets and frameworks Implement deep architectures for neural network models such as CNN, RNN, GAN, and many more Discover design patterns and different challenges for various deep learning architectures Book Description Deep learning architectures are composed of multilevel nonlinear operations that represent high-level abstractions; this allows you to learn useful feature representations from the data. This book will help you learn and implement deep learning architectures to resolve various deep learning research problems. Hands-On Deep Learning Architectures with Python explains the essential learning algorithms used for deep and shallow architectures. Packed with practical implementations and ideas to help you build efficient artificial intelligence systems (AI), this book will help you learn how neural networks play a major role in building deep architectures. You will understand various deep learning architectures (such as AlexNet, VGG Net, GoogleNet) with easy-to-follow code and diagrams. In addition to this, the book will also guide you in building and training various deep architectures such as the Boltzmann mechanism, autoencoders, convolutional neural networks (CNNs), recurrent neural networks (RNNs), natural language processing (NLP), GAN, and more―all with practical implementations. By the end of this book, you will be able to construct deep models using popular frameworks and datasets with the required design patterns for each architecture. You will be ready to explore the potential of deep architectures in today's world. What you will learn Implement CNNs, RNNs, and other commonly used architectures with Python Explore architectures such as VGGNet, AlexNet, and GoogLeNet Build deep learning architectures for AI applications such as face and image recognition, fraud detection, and many more Understand the architectures and applications of Boltzmann machines and autoencoders with concrete examples Master artificial intelligence and neural network concepts and apply them to your architecture Understand deep learning architectures for mobile and embedded systems Who this book is for If you're a data scientist, machine learning developer/engineer, or deep learning practitioner, or are curious about AI and want to upgrade your knowledge of various deep learning architectures, this book will appeal to you. You are expected to have some knowledge of statistics and machine learning algorithms to get the best out of this book Table of Contents Getting Started with Deep Learning Deep Feedforward Networks Restricted Boltzmann Machines and Autoencoders CNN Architecture Mobile Neural Networks and CNNs Recurrent Neural Networks Generative Adversarial Networks New Trends of Deep Learning Cover Title Page Copyright and Credits About Packt Contributors Table of Contents Preface Section 1: The Elements of Deep Learning Chapter 1: Getting Started with Deep Learning Artificial intelligence Machine learning Supervised learning Regression Classification Unsupervised learning Reinforcement learning Deep learning Applications of deep learning Self-driving cars Image translation Machine translation Encoder-decoder structure Chatbots Building the fundamentals Biological inspiration ANNs Activation functions Linear activation Sigmoid activation Tanh activation ReLU activation Softmax activation TensorFlow and Keras Setting up the environment Introduction to TensorFlow Installing TensorFlow CPU Installing TensorFlow GPU Testing your installation Getting to know TensorFlow Building a graph Creating a Session Introduction to Keras Sequential API Functional API Summary Chapter 2: Deep Feedforward Networks Evolutionary path to DFNs Architecture of DFN Training Loss function Regression loss Mean squared error (MSE) Mean absolute error Classification loss Cross entropy Gradient descent Types of gradient descent Batch gradient descent Stochastic gradient descent Mini-batch gradient descent Backpropagation Optimizers Train, test, and validation Training set Validation set Test set Overfitting and regularization L1 and L2 regularization Dropout Early stopping Building our first DFN MNIST fashion data Getting the data Visualizing data Normalizing and splitting data Model parameters One-hot encoding Building a model graph Adding placeholders Adding layers Adding loss function Adding an optimizer Calculating accuracy Running a session to train The easy way Summary Chapter 3: Restricted Boltzmann Machines and Autoencoders What are RBMs? The evolution path of RBMs RBM architectures and applications RBM and their implementation in TensorFlow RBMs for movie recommendation DBNs and their implementation in TensorFlow DBNs for image classification What are autoencoders? The evolution path of autoencoders Autoencoders architectures and applications Vanilla autoencoders Deep autoencoders Sparse autoencoders Denoising autoencoders Contractive autoencoders Summary Exercise Acknowledgements Section 2: Convolutional Neural Networks Chapter 4: CNN Architecture Problem with deep feedforward networks Evolution path to CNNs Architecture of CNNs The input layer The convolutional layer The maxpooling layer The fully connected layer Image classification with CNNs VGGNet InceptionNet ResNet Building our first CNN CIFAR Data loading and pre-processing Object detection with CNN R-CNN Faster R-CNN You Only Look Once (YOLO) Single Shot Multibox Detector TensorFlow object detection zoo Summary Chapter 5: Mobile Neural Networks and CNNs Evolution path to MobileNets Architecture of MobileNets Depth-wise separable convolution The need for depth-wise separable convolution Structure of MobileNet MobileNet with Keras MobileNetV2 Motivation behind MobileNetV2 Structure of MobileNetV2 Linear bottleneck layer Expansion layer Inverted residual block Overall architecture Implementing MobileNetV2 Comparing the two MobileNets SSD MobileNetV2 Summary Section 3: Sequence Modeling Chapter 6: Recurrent Neural Networks What are RNNs? The evolution path of RNNs RNN architectures and applications Architectures by input and output Vanilla RNNs Vanilla RNNs for text generation LSTM RNNs LSTM RNNs for text generation GRU RNNs GRU RNNs for stock price prediction Bidirectional RNNs Bidirectional RNNs for sentiment classification Summary Section 4: Generative Adversarial Networks (GANs) Chapter 7: Generative Adversarial Networks What are GANs? Generative models Adversarial – training in an adversarial manner The evolution path of GANs GAN architectures and implementations Vanilla GANs Deep convolutional GANs Conditional GANs InfoGANs Summary Section 5: The Future of Deep Learning and Advanced Artificial Intelligence Chapter 8: New Trends of Deep Learning New trends in deep learning Bayesian neural networks What our deep learning models don't know – uncertainty How we can obtain uncertainty information – Bayesian neural networks Capsule networks What convolutional neural networks fail to do Capsule networks – incorporating oriental and relative spatial relationships Meta-learning One big challenge in deep learning – training data Meta-learning – learning to learn Metric-based meta-learning Summary Other Books You May Enjoy Index **Concepts, tools, and techniques to explore deep learning architectures and methodologies** ## Key Features * Explore advanced deep learning architectures using various datasets and frameworks * Implement deep architectures for neural network models such as CNN, RNN, GAN, and many more * Discover design patterns and different challenges for various deep learning architectures Deep learning architectures are composed of multilevel nonlinear operations that represent high-level abstractions; this allows you to learn useful feature representations from the data. This book will help you learn and implement deep learning architectures to resolve various deep learning research problems. Hands-On Deep Learning Architectures with Python explains the essential learning algorithms used for deep and shallow architectures. Packed with practical implementations and ideas to help you build efficient artificial intelligence systems (AI), this book will help you learn how neural networks play a major role in building deep architectures. You will understand various deep learning architectures (such as AlexNet, VGG Net, GoogleNet) with easy-to-follow code and diagrams. In addition to this, the book will also guide you in building and training various deep architectures such as the Boltzmann mechanism, autoencoders, convolutional neural networks (CNNs), recurrent neural networks (RNNs), natural language processing (NLP), GAN, and more―all with practical implementations. By the end of this book, you will be able to construct deep models using popular frameworks and datasets with the required design patterns for each architecture. You will be ready to explore the potential of deep architectures in today's world. ## What you will learn * Implement CNNs, RNNs, and other commonly used architectures with Python * Explore architectures such as VGGNet, AlexNet, and GoogLeNet * Build deep learning architectures for AI applications such as face and image recognition, fraud detection, and many more * Understand the architectures and applications of Boltzmann machines and autoencoders with concrete examples * Master artificial intelligence and neural network concepts and apply them to your architecture * Understand deep learning architectures for mobile and embedded systems If you're a data scientist, machine learning developer/engineer, or deep learning practitioner, or are curious about AI and want to upgrade your knowledge of various deep learning architectures, this book will appeal to you. You are expected to have some knowledge of statistics and machine learning algorithms to get the best out of this book ## Table of Contents 1. Getting Started with Deep Learning 2. Deep Feedforward Networks 3. Restricted Boltzmann Machines and Autoencoders 4. CNN Architecture 5. Mobile Neural Networks and CNNs 6. Recurrent Neural Networks 7. Generative Adversarial Networks 8. New Trends of Deep Learning This book explains the essential learning algorithms used for deep and shallow architectures. Packed with practical implementations to help you understand the concepts and ideas required to build efficient artificial intelligence systems, this book will help you construct deep models using popular frameworks and datasets.