Book Image

Hands-On Python Deep Learning for the Web

By : Anubhav Singh, Sayak Paul
Book Image

Hands-On Python Deep Learning for the Web

By: Anubhav Singh, Sayak Paul

Overview of this book

When used effectively, deep learning techniques can help you develop intelligent web apps. In this book, you'll cover the latest tools and technological practices that are being used to implement deep learning in web development using Python. Starting with the fundamentals of machine learning, you'll focus on DL and the basics of neural networks, including common variants such as convolutional neural networks (CNNs). You'll learn how to integrate them into websites with the frontends of different standard web tech stacks. The book then helps you gain practical experience of developing a deep learning-enabled web app using Python libraries such as Django and Flask by creating RESTful APIs for custom models. Later, you'll explore how to set up a cloud environment for deep learning-based web deployments on Google Cloud and Amazon Web Services (AWS). Next, you'll learn how to use Microsoft's intelligent Emotion API, which can detect a person's emotions through a picture of their face. You'll also get to grips with deploying real-world websites, in addition to learning how to secure websites using reCAPTCHA and Cloudflare. Finally, you'll use NLP to integrate a voice UX through Dialogflow on your web pages. By the end of this book, you'll have learned how to deploy intelligent web apps and websites with the help of effective tools and practices.
Table of Contents (19 chapters)
1
Artificial Intelligence on the Web
3
Using Deep Learning for Web Development
7
Getting Started with Different Deep Learning APIs for Web Development
12
Deep Learning in Production (Intelligent Web Apps)
Appendix: Success Stories and Emerging Areas in Deep Learning on the Web

Implementing a demonstration DL web environment

We will now take a deep dive into building a sample production application that uses online learning on the backend. We will be creating an application that can predict heart diseases, based on the Cleveland dataset. We will then deploy this model to Heroku, which is a cloud container-based service. Finally, we will demonstrate the online learning feature of the application.

You can find out more about Heroku by going to https://heroku.com.

Let's list the steps that we will be covering:

  1. Build a predictive model on Jupyter Notebook.
  2. Build a backend for the web application that predicts on the saved model.
  3. Build a frontend for the web application that invokes incremental learning on the model.
  4. Update the model on the server side incrementally.
  5. Deploy the application to Heroku.

We will begin with the zeroth step; that is, observing...