Hands-On Artificial Intelligence for Beginners

Book description

Grasp the fundamentals of Artificial Intelligence and build your own intelligent systems with ease

Key Features

  • Enter the world of AI with the help of solid concepts and real-world use cases
  • Explore AI components to build real-world automated intelligence
  • Become well versed with machine learning and deep learning concepts

Book Description

Virtual Assistants, such as Alexa and Siri, process our requests, Google's cars have started to read addresses, and Amazon's prices and Netflix's recommended videos are decided by AI. Artificial Intelligence is one of the most exciting technologies and is becoming increasingly significant in the modern world.

Hands-On Artificial Intelligence for Beginners will teach you what Artificial Intelligence is and how to design and build intelligent applications. This book will teach you to harness packages such as TensorFlow in order to create powerful AI systems. You will begin with reviewing the recent changes in AI and learning how artificial neural networks (ANNs) have enabled more intelligent AI. You'll explore feedforward, recurrent, convolutional, and generative neural networks (FFNNs, RNNs, CNNs, and GNNs), as well as reinforcement learning methods. In the concluding chapters, you'll learn how to implement these methods for a variety of tasks, such as generating text for chatbots, and playing board and video games.

By the end of this book, you will be able to understand exactly what you need to consider when optimizing ANNs and how to deploy and maintain AI applications.

What you will learn

  • Use TensorFlow packages to create AI systems
  • Build feedforward, convolutional, and recurrent neural networks
  • Implement generative models for text generation
  • Build reinforcement learning algorithms to play games
  • Assemble RNNs, CNNs, and decoders to create an intelligent assistant
  • Utilize RNNs to predict stock market behavior
  • Create and scale training pipelines and deployment architectures for AI systems

Who this book is for

This book is designed for beginners in AI, aspiring AI developers, as well as machine learning enthusiasts with an interest in leveraging various algorithms to build powerful AI applications.

Table of contents

  1. Title Page
  2. Copyright and Credits
    1. Hands-On Artificial Intelligence for Beginners
  3. Packt Upsell
    1. Why subscribe?
    2. Packt.com
  4. Contributors
    1. About the author
    2. About the reviewer
    3. Packt is searching for authors like you
  5. Preface
    1. Who this book is for
    2. What this book covers
    3. To get the most out of this book
      1. Download the example code files
      2. Conventions used
    4. Get in touch
      1. Reviews
  6. The History of AI
    1. The beginnings of AI –1950–1974
    2. Rebirth –1980–1987
    3. The modern era takes hold – 1997-2005
    4. Deep learning and the future – 2012-Present
    5. Summary
  7. Machine Learning Basics
    1. Technical requirements
    2. Applied math basics
      1. The building blocks – scalars, vectors, matrices, and tensors
        1. Scalars
        2. Vectors
        3. Matrices
        4. Tensors
      2. Matrix math
        1. Scalar operations
        2. Element–wise operations
    3. Basic statistics and probability theory
      1. The probability space and general theory
      2. Probability distributions
        1. Probability mass functions 
        2. Probability density functions 
      3. Conditional and joint probability
        1. Chain rule for joint probability
        2. Bayes' rule for conditional probability
    4. Constructing basic machine learning algorithms
      1. Supervised learning algorithms
        1. Random forests
      2. Unsupervised learning algorithms
    5. Basic tuning
      1. Overfitting and underfitting
        1. K-fold cross-validation
      2. Hyperparameter optimization
    6. Summary
  8. Platforms and Other Essentials
    1. Technical requirements
    2. TensorFlow, PyTorch, and Keras
      1. TensorFlow
        1. Basic building blocks
        2. The TensorFlow graph
      2. PyTorch
        1. Basic building blocks
        2. The PyTorch graph
      3. Keras
        1. Basic building blocks
      4. Wrapping up
    3. Cloud computing essentials
      1. AWS basics
        1. EC2 and virtual machines
        2. S3 Storage 
        3. AWS Sagemaker
      2. Google Cloud Platform basics
        1. GCP cloud storage
        2. GCP Cloud ML Engine
    4. CPUs, GPUs, and other compute frameworks
      1. Installing GPU libraries and drivers
        1. With Linux (Ubuntu)
        2. With Windows
      2. Basic GPU operations
      3. The future – TPUs and more
    5. Summary
  9. Your First Artificial Neural Networks
    1. Technical requirements
    2. Network building blocks
      1. Network layers
      2. Naming and sizing neural networks
        1. Setting up network parameters in our MNIST example
      3. Activation functions
        1. Historically popular activation functions
        2. Modern approaches to activation functions
      4. Weights and bias factors
        1. Utilizing weights and biases in our MNIST example
      5. Loss functions
        1. Using a loss function for simple regression
        2. Using cross-entropy for binary classification problems
        3. Defining a loss function in our MNIST example
      6. Stochastic gradient descent
        1. Learning rates
        2. Utilizing the Adam optimizer in our MNIST example
      7. Regularization
    3. The training process
      1. Putting it all together
      2. Forward propagation
      3. Backpropagation
      4. Forwardprop and backprop with MNIST
      5. Managing a TensorFlow model
        1. Saving model checkpoints
    4. Summary
  10. Convolutional Neural Networks
    1. Overview of CNNs
    2. Convolutional layers
      1. Layer parameters and structure
    3. Pooling layers
    4. Fully connected layers
    5. The training process
    6. CNNs for image tagging
    7. Summary
  11. Recurrent Neural Networks
    1. Technical requirements
    2. The building blocks of RNNs
      1. Basic structure
      2. Vanilla recurrent neural networks
        1. One-to-many
        2. Many-to-one
        3. Many-to-many
      3. Backpropagation through time
    3. Memory units – LSTMs and GRUs
      1. LSTM
      2. GRUs
    4. Sequence processing with RNNs
      1. Neural machine translation
        1. Attention mechanisms
      2. Generating image captions
    5. Extensions of RNNs
      1. Bidirectional RNNs
      2. Neural turing machines
    6. Summary
  12. Generative Models
    1. Technical requirements
    2. Getting to AI – generative models
      1. Autoencoders
        1. Network architecture
        2. Building an autoencoder
    3. Variational autoencoders
      1. Structure
        1. Encoder
        2. Decoder
        3. Training and optimizing VAEs
      2. Utilizing a VAE
    4. Generative adversarial networks
      1. Discriminator network
      2. Generator network
      3. Training GANs
    5. Other forms of generative models
      1. Fully visible belief nets
      2. Hidden Markov models
      3. Boltzmann machines
    6. Summary
    7. References
  13. Reinforcement Learning
    1. Technical requirements
    2. Principles of reinforcement learning
      1. Markov processes
      2. Rewards
      3. Policies
      4. Value functions
      5. The Bellman equation
    3. Q–learning
    4. Policy optimization
      1. Extensions on policy optimization
    5. Summary
  14. Deep Learning for Intelligent Agents
    1. Technical requirements
    2. Word embeddings
    3. Word2vec
      1. Training Word2vec models
    4. GloVe
    5. Constructing a basic agent
    6. Summary
  15. Deep Learning for Game Playing
    1. Technical requirements 
    2. Introduction
    3. Networks for board games
      1. Understanding game trees
      2. AlphaGo and intelligent game-playing AIs
        1. AlphaGo policy network
        2. AlphaGo value network
        3. AlphaGo in action
    4. Networks for video games
      1. Constructing a Deep Q–network
        1. Utilizing a target network
        2. Experience replay buffer
        3. Choosing action
        4. Training methods
        5. Training the network
        6. Running the network 
    5. Summary
  16. Deep Learning for Finance
    1. Requirements
    2. Introduction to AI in finance
    3. Deep learning in trading
      1. Building a trading platform
        1. Basic trading functions
        2. Creating an artificial trader
        3. Managing market data
        4. Price prediction utilizing LSTMs
        5. Backtesting your algorithm
      2. Event-driven trading platforms
        1. Gathering stock price data
        2. Generating word embeddings
        3. Neural Tensor Networks for event embeddings
        4. Predicting events with a convolutional neural network
    4. Deep learning in asset management
    5. Summary
  17. Deep Learning for Robotics
    1. Technical requirements
    2. Introduction
    3. Setting up your environment
      1. MuJoCo physics engine
        1. Downloading the MuJoCo binary files
        2. Signing up for a free trial of MuJoCo
        3. Configuring your MuJoCo files
        4. Installing the MuJoCo Python package
    4. Setting up a deep deterministic policy gradients model
      1. Experience replay buffer
      2. Hindsight experience replay 
      3. The actor–critic network 
        1. The actor
        2. The critic
      4. Deep Deterministic Policy Gradients
        1. Implementation of DDPG
    5. Summary
    6. References
  18. Deploying and Maintaining AI Applications
    1. Technical requirements
    2. Introduction
    3. Deploying your applications
      1. Deploying models with TensorFlow Serving
        1. Utilizing docker
        2. Building a TensorFlow client
      2. Training and deploying with the Google Cloud Platform
        1. Training on GCP 
        2. Deploying for online learning on GCP
        3. Using an API to Predict
    4. Scaling your applications
      1. Scaling out with distributed TensorFlow
    5. Testing and maintaining your applications
      1. Testing deep learning algorithms
    6. Summary
    7. References
  19. Other Books You May Enjoy
    1. Leave a review - let other readers know what you think

Product information

  • Title: Hands-On Artificial Intelligence for Beginners
  • Author(s): Patrick D. Smith
  • Release date: October 2018
  • Publisher(s): Packt Publishing
  • ISBN: 9781788991063