sqlworkshops/SQLServerAndAzureMachineLea...
Buck Woody ebdc49e7ef Updated the SQL Server ML Services course with pre-reqs 2019-05-01 09:20:07 -04:00
..
ML Services for SQL Server Updated the SQL Server ML Services course with pre-reqs 2019-05-01 09:20:07 -04:00
graphics Updated the SQL Server ML Services course with pre-reqs 2019-05-01 09:20:07 -04:00
LearnAI_Hybrid_Machine_Learning.code-workspace Refactoring ML Courses 2019-04-26 09:40:53 -04:00
README.md Updated the SQL Server ML Services course with pre-reqs 2019-05-01 09:20:07 -04:00

README.md

Hybrid Machine Learning

A Microsoft Course from the Learn AI team

About this Course

Welcome to this Microsoft Solutions course on Hybrid Machine Learning. In this course, you'll learn how to implement a complete solution from start to finish using a defined Data Science process leveraging the Microsoft AI platform and SQL Server, and you'll also learn the skills you need to create other solutions on your own. This README.MD file explains how the course is laid out, what you will learn, and the technologies you will use in this solution.

(You can view all of the source files for this course on our github site. And you can find more courses there as well. Open this link in a new tab to find out more.)

Course Goals

In this course you'll learn how to take a model that was trained on another system and operationalize it using SQL Server, maintaining the local predictions of the data while allowing powerful training in another system. Using machine telemetry data, you'll take a trained model from an external system that uses anomalies in collected data to perform predictive maintenance. You'll then apply the model using SQL Server Machine Learning Services and create a prediction table of the systems that require maintenance. You'll also learn how to leverage various features of Azure Machine Learning to extend the solution, such as model management with CI/CD. You'll visualize the output as a Power BI report from on-premises systems. Optionally, you can also change this solution to a complete virtual environment in Microsoft Azure.

Data Science and Business Applications of this course

Businesses require critical equipment to be running at peak efficiency and utilization to realize their return on capital investments. These assets could range from aircraft engines, turbines, elevators, or industrial chillers - that cost millions - down to everyday appliances like photocopiers, coffee machines, or water coolers.

By default, most businesses rely on corrective maintenance, where parts are replaced as and when they fail. Corrective maintenance ensures parts are used completely (therefore not wasting component life), but costs the business in downtime, labor, and unscheduled maintenance requirements (off hours, or inconvenient locations).

At the next level, businesses practice preventive maintenance, where they determine the useful lifespan for a part, and maintain or replace it before a failure. Preventive maintenance avoids unscheduled and catastrophic failures. But the high costs of scheduled downtime, under-utilization of the component before its full lifetime of use, and labor still remain.

The goal of predictive maintenance (PdM) is to optimize the balance between corrective and preventative maintenance, by enabling just in time replacement of components. This approach only replaces those components when they are close to a failure. By extending component lifespans (compared to preventive maintenance) and reducing unscheduled maintenance and labor costs (over corrective maintenance), businesses can gain cost savings and competitive advantages.

Businesses face high operational risk due to unexpected failures and have limited insight into the root cause of problems in complex systems. Some of the key business questions are:

Detecting anomalies in equipment or system performance or functionality.
Predicting whether an asset may fail in the near future.
Estimating the remaining useful life of an asset.
Identifying the main causes of failure of an asset.
Identifying what maintenance actions need to be done, by when, on an asset.

Typical goal statements from PdM are:

Reduce operational risk of mission critical equipment.
Increase rate of return on assets by predicting failures before they occur.
Control cost of maintenance by enabling just-in-time maintenance operations.
Lower customer attrition, improve brand image, and lost sales.
Lower inventory costs by reducing inventory levels by predicting the reorder point.
Discover patterns connected to various maintenance problems.
Provide KPIs (key performance indicators) such as health scores for asset conditions.
Estimate remaining lifespan of assets.
Recommend timely maintenance activities.
Enable just in time inventory by estimating order dates for replacement of parts.

These goal statements are the starting points for:

Data Scientists, to analyze and solve specific predictive problems.
Solution Architects and Developers, to put together an end to end solution.

Solution Diagram

This solution uses a model to do predictive "Remaining Useful Life" (RUL) industry-standard predictions on an mechanical engine of almost any type, but it has many applications.

In this diagram, the solution is divided into two sections: The model training, which is done in Azure, and the model operationalization, which is done on-premises. Both parts of the solution are kept under the management of the DevOps function in an organization.

Sample Solution Output

As an example, when applied to an aircraft engine, a Power BI report can indicate the specifics and location of a particular component that requires maintenance:

Many other outputs and API calls are available, from alerting via SMS, intelligent assistant, web interfaces and more. Another example is an interactive Power BI Report on plant-floor-based processing equipment:

Technologies

This solution includes the following technologies - although you are not limited to these, they form the basis of the course. At the end of the course you will learn how to extrapolate these components into other solutions.

Technology Use
Microsoft Data Science Process (TDSP) Project, Development, Control and Management framework
Microsoft Azure Development environment, and/or as training/operationalize environment, security, IoT hub, telemetry, monitoring and management
Azure Data Science Virtual Machine (DSVM) Development environment, and/or as training/operationalize target
ONNX and Other Serializing Technologies Model translation/transport
SQL Server 2017 Machine Learning Services Operationalize environment, hybrid data
Azure ML SDK AutoML, CI/CD (Model Management)
Power BI Visualization
Python ML/AI programming, Model creation, Data Generator Simulation
SciKit Learn (Optional if training done in SQL Server ML)
Jupyter Notebook with Python Used for Model Training.

Industries

This solution uses a single industry for learning the tools and concepts, but it extrapolates to many industries.

Industry Examples of relevant scenarios
Aerospace - Flight delay and cancellationsFlight route information in the form of flight legs and page logs. Flight leg data includes routing details such as departure/arrival date, time, airport, layovers etc. Page log includes a series of error and maintenance codes recorded by the ground maintenance personnel.
Aerospace - Aircraft engine parts failureData collected from sensors in the aircraft that provide information on the condition of the various parts. Maintenance records help identify when component failures occurred and when they were replaced.
Finance - ATM FailureSensor readings for each transaction (depositing cash/check) and dispensing of cash. Information on gap measurement between notes, note thickness, note arrival distance, check attributes etc. Maintenance records that provide error codes, repair information, last time the cash dispenser was refilled.
Public Utilities - Wind turbine or line Power failureSensors monitor turbine conditions such as temperature, wind direction, power generated, generator speed etc. Data is gathered from multiple wind turbines from wind farms located in various regions. Typically, each turbine will have multiple sensor readings relaying measurements at a fixed time interval.
Public Utilities - Circuit breaker failuresMaintenance logs that include corrective, preventive, and systematic actions. Operational data that includes automatic and manual commands sent to circuit breakers such as for open and close actions. Device metadata such as date of manufacture, location, model, etc. Circuit breaker specifications such as voltage levels, geolocation, ambient conditions.
Facilities - Door and other automatic surfaces failuresDoor metadata such as type of elevator, manufactured date, maintenance frequency, building type, and so on. Operational information such as number of door cycles, average door close time. Failure history with causes.
Manufacturing - Component failuresSensor data that measures acceleration, braking instances, distance, velocity etc. Static information on wheels like manufacturer, manufactured date. Failure data inferred from part order database that track order dates and quantities.
Transportation - Subway train door failures/Bus component failuresDoor opening and closing times, other operational data such as current condition of train or bus components. Static data would include asset identifier, time, and condition value columns.

Before Taking this Course

You must have a Microsoft Azure account with the ability to create assets. You will use an Azure Data Science Virtual Machine (DSVM) for this course, and use Jupyter Notebooks running Python to create an experiment for the model generation.

Skills

This course expects that you understand data structures and working with SQL Server. This course does not expect the reader to have any prior data science knowledge. For the Data Science content, basic knowledge of statistics and data science is helpful. Knowledge of SQL Server, Azure Data and AI services, Python, and Jupyter Notebooks is recommended. AI techniques are implemented in Python packages. Solution templates are implemented using Azure services, development tools, and SDKs. You should have a basic understanding of working with the Microsoft Azure Platform.

If you are new to these, here are a few references you should complete prior to class:

Setup

A full pre-requisites document is located here. These instructions should be completed the day before the course starts, since we will not have time to cover these in class. Remember to turn off the DSVM from the Azure Portal when not taking the class so that you do encure charges (shutting down the machine in the VM itself is not sufficient).

Course Details

The "hybrid Machine Learning with SQL Server ML and Azure ML" course is taught using Microsoft Azure, SQL Server, and Visual Studio/Visual Studio Code/Jupyter Notebooks, with a focus on Python and Azure ML.

Primary Audience System Architects and Data Professionals tasked with developing hybrid Machine Learning and AI solutions
Secondary Audience Security Architects, Developers, and Data Scientists
Level 300
Type In-Person
Length 8 hours

Related Courses

Technical guide to the Cortana Intelligence Solution Template for predictive maintenance in aerospace and other businesses

Course Outline

This is a modular course, and in each section, you'll learn technologies and processes to help you complete the solution.

Modules in this course:
1 Project Methodology and Data Science
2 Business Understanding
3 Data Acquisition and Understanding
4 Modeling
5 Deployment
6 Customer Acceptance and Model Retraining

Next Steps

Next, Continue to Pre-Requisites.