O'Reilly logo

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Building Intelligent Cloud Applications

Book Description

Serverless computing is radically changing the way we build and deploy applications. With cloud providers running servers and managing machine resources, companies now can focus solely on the application’s business logic and functionality. This hands-on book shows experienced programmers how to build and deploy scalable machine learning and deep learning models using serverless architectures with Microsoft Azure.

You’ll learn step-by-step how to code machine learning into your projects using Python and pre-trained models that include tools such as image recognition, speech recognition, and classification. You’ll also examine issues around deployment and continuous delivery including scaling, security, and monitoring.

This book is divided into four parts:

  • Cloud-based development: learn the basics of serverless computing with machine learning, functions as a service (FaaS), and the use of APIs
  • Adding intelligence: create serverless applications using Azure Functions; learn how to use pre-built machine-learning and deep-learning models
  • Deployment and continuous delivery: get up to speed with Azure Kubernetes Service, as well as Azure Security Center, and Azure Monitoring
  • Application examples: deliver data at the edge, build conversational interfaces, and use convolutional neural networks for image classification

Table of Contents

  1. Preface
    1. Intelligent Serverless Applications
    2. How This Book Is Organized
    3. Who This Book Is For
    4. Goals for the Book
    5. Using Python in Our Code Examples
    6. Conventions Used in This Book
    7. O’Reilly Online Learning
    8. How to Contact Us
  2. I. Cloud-Based Development
  3. 1. Machine Learning and Deep Learning Models in the Cloud
    1. An Introduction to Machine Learning
    2. An Introduction to Deep Learning
    3. Neural Networks
    4. Difficulties Defining Structure and Training Machine Learning Models
    5. An Introduction to Serverless Machine Learning
    6. Using Containers with Machine Learning Models
    7. The Benefits of Serverless Computing for Machine Learning
  4. 2. Functions-as-a-Service and Event-Driven Programming
    1. Software-as-a-Service, Cloud Computing, and Serverless
    2. Microservices Architecture
    3. The Rise of Functional Programming
      1. Using Functions Instead of Objects
      2. Asynchronous Programming
    4. Serverless
    5. Implementing Functions
    6. Event-Driven Architecture
    7. Implications of Real-Time Processing
    8. Summary and Look Ahead
  5. 3. Serverless Application Programming Interfaces in Microsoft Azure
    1. APIs in Serverless Platforms
    2. An Introduction to Azure
    3. Azure General Services
  6. II. Adding Intelligence
  7. 4. Getting Started with Microsoft Azure Functions
    1. Azure Functions
      1. Creating a Function App by Using Azure Portal
      2. Local Development Environment
      3. Creating a Functions Project Using Core Tools
      4. Using Visual Studio Code
      5. Debugging Python by Using Visual Studio Code
    2. Azure Blob Storage
      1. Creating a Storage Account
      2. Transferring Blobs
    3. Summary and Look Ahead
  8. 5. Using Machine Learning and Deep Learning Models
    1. Azure Cognitive Services
      1. Setting Up and Using a Service in Cognitive Services
      2. Using a Cognitive Service from a Serverless Azure Functions Project
    2. General Machine Learning Tools, Libraries, and Frameworks
      1. Microsoft Cognitive Toolkit
      2. ML.NET
      3. Jupyter Notebook
      4. TensorFlow
      5. Keras
      6. Scikit-learn
    3. Cloud Machine Learning Solutions with Azure
      1. Microsoft Machine Learning Studio
      2. Azure Machine Learning Service
  9. III. Deployment and Continuous Delivery
  10. 6. Deployment and Scaling
    1. Deployment Options
      1. Azure DevOps
      2. Docker
      3. Azure Container Registry
      4. Kubernetes
      5. Machine Learning Tools for Kubernetes
      6. Single-Container Machine Learning
      7. Distributed Machine Learning with TFJob
  11. 7. Security
    1. Azure Functions Authorization Levels
    2. API Management
    3. Azure Security
      1. Operations
      2. Applications
      3. Storage
      4. Network Layer Controls
      5. Networking
  12. 8. Monitoring
    1. Azure Monitor
    2. Metrics and Logs
    3. Data Sources
    4. Application Insights
      1. Insights for Containers (and VMs)
    5. Log Analytics
      1. Data Explorer Query Language
      2. Alerts
      3. Smart Groups
      4. Autoscale and Metrics Alerts
  13. Index