Book Image

Applied Deep Learning with Python

By : Alex Galea, Luis Capelo
Book Image

Applied Deep Learning with Python

By: Alex Galea, Luis Capelo

Overview of this book

Taking an approach that uses the latest developments in the Python ecosystem, you’ll first be guided through the Jupyter ecosystem, key visualization libraries and powerful data sanitization techniques before you train your first predictive model. You’ll then explore a variety of approaches to classification such as support vector networks, random decision forests and k-nearest neighbors to build on your knowledge before moving on to advanced topics. After covering classification, you’ll go on to discover ethical web scraping and interactive visualizations, which will help you professionally gather and present your analysis. Next, you’ll start building your keystone deep learning application, one that aims to predict the future price of Bitcoin based on historical public data. You’ll then be guided through a trained neural network, which will help you explore common deep learning network architectures (convolutional, recurrent, and generative adversarial networks) and deep reinforcement learning. Later, you’ll delve into model optimization and evaluation. You’ll do all this while working on a production-ready web application that combines TensorFlow and Keras to produce meaningful user-friendly results. By the end of this book, you’ll be equipped with the skills you need to tackle and develop your own real-world deep learning projects confidently and effectively.
Table of Contents (9 chapters)

Jupyter Fundamentals

Jupyter Notebooks are one of the most important tools for data scientists using Python. This is because they're an ideal environment for developing reproducible data analysis pipelines. Data can be loaded, transformed, and modeled all inside a single Notebook, where it's quick and easy to test out code and explore ideas along the way. Furthermore, all of this can be documented "inline" using formatted text, so you can make notes for yourself or even produce a structured report. Other comparable platforms - for example, RStudio or Spyder - present the user with multiple windows, which promote arduous tasks such as copy and pasting code around and rerunning code that has already been executed. These tools also tend to involve Read Eval Prompt Loops (REPLs) where code is run in a terminal session that has saved memory. This type of development environment is bad for reproducibility and not ideal for development either. Jupyter Notebooks solve all these issues by giving the user a single window where code snippets are executed and outputs are displayed inline. This lets users develop code efficiently and allows them to look back at previous work for reference, or even to make alterations.

We'll start the chapter by explaining exactly what Jupyter Notebooks are and continue to discuss why they are so popular among data scientists. Then, we'll open a Notebook together and go through some exercises to learn how the platform is used. Finally, we'll dive into our first analysis and perform an exploratory analysis in the section Basic Functionality and Features.

By the end of this chapter, you will be able to:

  • Learn what a Jupyter Notebook is and why it's useful for data analysis
  • Use Jupyter Notebook features
  • Study Python data science libraries
  • Perform simple exploratory data analysis
All the codes from this book are available as chapter-specific IPython notebooks in the code bundle. All color plots from this book are also available in the code bundle.