http://aka.ms/AIcommunity
#Azure #MicrosoftAIJourney
Robin.Lester@Microsoft.com
[email protected] Join MPN as a Network member, as entry level into the program https://partner.microsoft.com/en-gb/membership http://aka.ms/AIcommunity
#Azure #MicrosoftAIJourney • What AI means to Microsoft and Microsoft partners 21st September, 2018 • http://aka.ms/AIjourney1 • AI without a PhD - Exploring speech, text, vision and bots 16th October, 2018 • http://aka.ms/AIjourney2 25th October 2018 • HOL - Create a Cognitive Search solution for Enterprise Documents • Getting to grips with AI and Machine Learning 6th November, 2018 • http://aka.ms/AIjourney3 7th November, 2018 • HOL - Predictive Maintenance • AI - from theory to production 22nd November, 2018 • http://aka.ms/AIjourney4 • Deep into data science and AI 4th December, 2018 • http://aka.ms/AIjourney5 9:30 Start • Introduction to AI 10:45 Coffee • Introduction to AI 12:00 Lunch • Microsoft value proposition on AI • Microsoft case studies including Microsoft Research projects • Technological and learning resources available • Panel Q and A https://www.microsoft.com/en-gb/partner/pledge/ E- Cloud and Internet Mobile AI Commerce Big Data Time to adapt is shrinking
A hundred years ago, the average lifespan of a company listed on the S&P 500 index was 67 years In the 2020s… 75% of the S&P 500 will be new (not on the index today) 25% of the S&P 500 will be ones on the index today
67 25 15 Years Years Years
1920 1930 1940 1950 1960 1970 1980 1990 2000 2010's 2020's
Source: BBC
1812 1943 1950 1951 1956 1968 1969
• Bayes Theorem • WWII - Alan • Isaac Asimov – I • First Neural • ‘Artificial • 2001 a space • Shakey the (Pierre-Simon Turing – Turing Robot Network intelligence’ Odyssey Robot – Laplace Test – to fool a • Turing test Machine. terminology navigate “Théorie human into Stochastic invented by surroundings analytique des thinking they neural analog John McCarthy probabilités” were talking to reinforcement and start of a person calculator cold war (SNARC) investment in AI
1973 – 1981 The 1981 1990-1 1995 1995 1997 AI winter
• US Congress • ‘Expert systems - • Rodney Brooks = • Tin Kam Ho - • Corinna Cortes and • Deep Blue beat criticising spending focused on much ‘Elephants Don’t Random Forrest Vapnik - Support Garry Kasparov and spending was narrower tasks Play Chess’ Algorithm Vector Machines cut • Revival of neural • Lighthill report networks damaged UK • Microsoft Research Formed “Our goal is to democratise AI to empower every person and every organisation to achieve more.” Satya Nadella core currency
data into AI
Every developer AI developer 1999 Filter Junk Email
2004 Search Engine
2006 SSAS Data Mining
2008 ML Traffic Predictions
2010 Kinect understanding gestures
2012 Realtime Speech to Speech translation
2014 Azure Machine Learning
2015 Microsoft R Server
2016 In database R
2017 … Machine learning Cloud Computing Quantum Computing Deep Neural Networks
Data Explosion
Science Fiction Becomes Reality 2,500,000,000,000,000,000 bytes per day 10,000,000X the number of known galaxies in the universe 500,000X the number of pizzas served worldwide in a year 10X the number of seconds since the Big Bang
Microsoft AI: the first to reach human parity
2015 2018 Microsoft 2017, Switchboard 5.1%
22 22 2018 Microsoft AI is the 2010s first to reach Neural MT Human Parity on 1990s Chinese to English 深度学习机器翻译 Statistical MT news translation 1980s 统计机器翻译 微软新系统 - 首次 Traditional MT 达到中英专业人员 传统机器翻译 新闻翻译水平 https://twitter.com/ch402 The Starry Night, van Gogh Created by a GAN
“I believe over the next decade computing will become even more ubiquitous and intelligence will become ambient. This will be made possible by an ever-growing network of connected devices, incredible computing capacity from the cloud, insights from big data, and intelligence from machine learning.“ Satya Nadella AI Platform • Azure services
Infusing AI • Adding AI in all products
Business Solutions • Vertical business solutions
• Discover on Azure AppSource Azure AI Gallery • Deploy in minutes • Configure/Customize • Implement with Partners
1950 1960 1970 1980 1990 2000 2010 What is Machine Learning?
Arthur Samuel in 1959 wrote, "Machine Learning is the field of study that gives computers the ability to learn without being explicitly programmed.
Supervised Learning Unsupervised Reinforcement • Learning from data with Learning Learning the goal to predict the • Observe only the • Rewards or punishments value of an outcome features and have no teach the system how to measure based on a measurements of the act number of input outcome measures. • Describe how the data • The outcome Variable is are organized or known and guiding the clustered. learning process
•Structure business rules and logic flow Optimized •Analyse and resolve causality
•Enforce rules/login at data entry •Automate data inspection Managed •Manage expectations Data •Determine data conformance with policies Quality •Define data quality business rules and logic •Define data universe (acceptable parameters) •Active data inspection Proactive •Determine completeness of dataset •Scheduled data maintenance
•Identify data steward •Quantify data impact •Identify Gaps Reactive •Determine process to manually clean data •Perform ad hoc data maintenance
•Identify priority dataset •Identify data dependencies Aware •Identify potential data risks Computer Science
Busniess Data Have a Mathematics Select the Train the Test the Wrangling/Quality Supportquestion Prep data Domain algorithm model modeland to answer Knowledge Access to Agile Statistics Development Algorithms Have a Select Train the Test the question Prep data the model model to answer algorithm Enough Enough Clearly relevant Access to data to defined features to labelled train an problem be data accurate statement predictive model of the label
Choosing the Understanding Being able to Quality of the right data Deep skills in ML algorithms test and data scientist science statistics and which one evaluate results language to use where quickly 1) Select features Target Feature 1 Feature 3 Feature 6 Value
Chosen Candidate Learning Model 2) Input training data Algorithm 3) Generate (75% of all data for candidate features 1, 3, and 6) model
Training Data Target Feature 1 Feature 3 Feature 6 Value
Candidate Model 1) Input test data 2) Generate (remaining 25% of target values all data for features from test data 1, 3, and 6)
Training Data
3) Compare target values generated from test data with actual target values 1) Select different features 3) Modify learning algorithm Feature 1 Feature 2 Feature 5 parameters or choose a different algorithm
Chosen Learning Candidate Algorithm Model
A model might also need to be explainable
2) Add more (or newer) example data Available Learning Algorithms Machine Learning Development
VISUAL DRAG -AND-DROP CODE -FIRST
59
The most critical next step in our pursuit of A.I. is to agree on an ethical and empathic framework for its design.
SATYA NADELLA AI must be designed to assist • Machines that work alongside humans should do "dangerous work like mining" but still humanity "respect human autonomy."
• "We want not just intelligent machines but intelligible machines, People should have an AI must be transparent understanding of how the technology sees and analyzes the world."
AI must maximize efficiencies without • "We need broader, deeper, and more diverse engagement of populations in the design of destroying the dignity of people these systems. The tech industry should not dictate the values and virtues of this future."
AI must be designed for intelligent • “Sophisticated protections that secure personal and group information." privacy
AI must have algorithmic • “Humans can undo unintended harm." accountability
• "Proper and representative research" should be used to make sure AI doesn't discriminate AI must guard against bias against people (like humans do).
I must not be I must not stop Overriding “Car please drive turned off as I for pedestrians to the shop” have a goal to as I have a goal goal achieve to achieve Your need is not great enough, I will Human “Car please drive me look for someone to the shop” who is injured and help goal needs a lift With 5 photos 91% accurate for men 83% accurate for women
http://www.rogerscime.com/2011/04/3-ways-opinion-polls- deliberately-get-it-wrong—and-what-you-can-do-about-it/
https://www.independent.co.uk/voices/man-fired-computer-machine-ai-artificial-intelligence- security-systems-work-employment-future-a8428631.html
https://www.msn.com/en-us/news/world/at-a-chinese-school-big-brother-charts- every-smile-or-frown/ar-AAzxEVP?ocid=spartandhp
Zhu Juntao, a 10th-grader at Hangzhou No. 11 High School, says most of his classmates want to get rid of the school's emotion-tracking cameras. https://www.microsoft.com/en-gb/partner/pledge/
Illegal Acts, Legal Ethical Morally Minimum Maximum problematic
Is it not just a lot of IF statements? Decision Tree
Support Does it warp space and time to see the future? Vector Machine
Deep Neural Does build a brain to predict outcomes? Networks ID Age Gender Married Credit risk
1 19 M Y 1 2 21 F N 1 3 25 M N 0
4 35 F Y 1 Married Total Population = 2 5 39 M N 0 Credit risk = 2 6 41 F Y 0 Age < 39 No Credit Risk = 0 Total Population = 4 Credit Risk Percent 100% 7 45 F Y 0 Credit risk = 3 No Credit Risk = 1 Not Married 8 50 M N 1 Credit Risk Percent 75% Total Population = 2 Credit risk = 1 No Credit Risk = 1 Total Population = 8 Credit Risk Percent 50% Credit risk = 4 No Credit Risk = 4 Credit Risk Percent 50% Married Total Population = 2 Credit risk = 0 Age >= 39 No Credit Risk = 2 Total Population = 4 Credit Risk Percent 0% Credit risk = 1 No Credit Risk = 3 Not Married Credit Risk Percent 25% Total Population = 2 Credit risk = 1 No Credit Risk = 1 Credit Risk Percent 50% Linear adjective 1. of, consisting of, or using lines: linear design. 2. pertaining to or represented by lines: linear dimensions. 3. extended or arranged in a line: a linear series. www.dictionary.com/browse/linear
https://brohrer.github.io/blog.html Input Output Activation Weights Outputs
w11
w21
w31
Input Output Error back propagation
3
Feedforward of information
ImageNet classification challenge
28.2% 25.8%
16.4%
11.7%
7.3% 6.7%
3.57% Human parity 5.1% shallow 8 layers 19 layers 22 layers 152 layers
2010 2011 2012 2013 2014 2014 2015 AlexNet VGG GoogleNet Microsoft ResNet cv-tricks.com/object-detection/faster-r-cnn-yolo-ssd/ cv-tricks.com/object-detection/faster-r-cnn-yolo-ssd/
Everyone should have access to the benefits of AI, including the tools it takes to create and transform your work. We want to remove barriers and help every developer on the planet to create the next generation of AI-powered products.
We believe that you should choose the technology and platforms that you prefer and we've designed our comprehensive stack to reflect this.
AZURE MACHINE LEARNING
AZURE MACHINE LEARNING SERVICES TRAIN & DEPLOY OPTIONS
Spark SQL Server AZURE Virtual machines GPUs Container services
ON- PREMISES Experimentation and SQL Server Model Management Machine Learning Server
Notebooks IDEs Azure Machine Learning Workbench
EDGE COMPUTING Azure IoT Edge
O N E B O T MULTIPLE CANVASES
Microsoft Seller Center integration guide
Key LUIS concepts • Intents • Actions the user wants to perform • Utterances • Text input from a user your app needs to understand • Entities • Detailed information that is relevant to the utterance
Intent Sample user utterance Entities BookFlight “Book a flight to Seattle?” Seattle StoreHoursAndLocation “When does your store open?” open ScheduleMeeting “Schedule a meeting at 1PM with 1PM, Bob Bob in Distribution” https://www.microsoft.com/en-gb/store/p/intelligent-kiosk/9nblggh5qd84
Application
Database Better Collaboration Faster Time to Insight & Sharing Insights
SQL Server Machine Learning Services
Streamline Productivity and Better Security & Compliance Deployment
• Easily scale up a single R server to a grid to handle more concurrent requests Client • Load balancing cross compute nodes • A shared pool of warmed up R shells to improve scoring performance. • Server level HA: Introduce multiple Web Nodes for Active-Active backup / recovery, via load balancer • Data Store HA: leverage Enterprise grade DB, SQL Load Balancer Server and Postgres’ HA capabilities
ScaleR models can be deployed from a server or edge node to run in Hadoop without any functional R model re-coding for map-reduce
Local Parallel processing – Linux or Windows In – Hadoop ### SETUP LOCAL ENVIRONMENT VARIABLES ### myLocalCC <- “localpar” myHadoopCCC <- RxHadoopMR() Compute ### LOCAL COMPUTE CONTEXT ### rxSetComputeContext(myLocalCC) context R script rxSetComputeContext(myHadoopCC) – sets where the ### CREATE LINUX, DIRECTORY AND FILE OBJECTS ### linuxFS <- RxNativeFileSystem() ) hdfsFS <- RxHdfsFileSystem() model will run AirlineDataSet <- RxXdfData(“AirlineDemoSmall/AirlineDemoSmall.xdf”, fileSystem = linuxFS) hdfsFS
### ANALYTICAL PROCESSING ### Functional ### Statistical Summary of the data model R script – rxSummary(~ArrDelay+DayOfWeek, data= AirlineDataSet, reportProgress=1) does not need ### CrossTab the data rxCrossTabs(ArrDelay ~ DayOfWeek, data= AirlineDataSet, means=T) to change to run ### Linear Model and plot in Hadoop hdfsXdfArrLateLinMod <- rxLinMod(ArrDelay ~ DayOfWeek + 0 , data = AirlineDataSet) plot(hdfsXdfArrLateLinMod$coefficients) ScaleR models can be deployed from a server or edge node to run in SQL Server without any functional R model re-coding for in-database computations
Local Parallel processing – Linux or Windows In – SQL SERVER ### SETUP LOCAL ENVIRONMENT VARIABLES ### ### SETUP SQL Server ENVIRONMENT VARIABLES ### mySqlCon <- "Driver=SQL;SERVER=localhost;Database= mySqlCC <- "Driver=SQL;SERVER=localhost;Database=RevoTester; RevoTester;Uid=RevoTester; pwd=######" Uid=RevoTester; pwd=######" Compute myLocalCC <- “localpar” ### SQL SERVER COMPUTE CONTEXT ### context R script ### LOCAL COMPUTE CONTEXT ### rxSetComputeContext(myLocalCC) rxSetComputeContext(mySqlCC) – sets where the ### CREATE SQL SERVER DATA SOURCE ### ### CREATE SQL SERVER DATA SOURCE ### model will run AirlineDemoQuery <- "SELECT * FROM AirlineDemoSmall;" AirlineDemoQuery <- "SELECT * FROM AirlineDemoSmall;" AirlineDataSet <- RxOdbcData(connectionString = mySqlCon, AirlineDataSet <- RxSqlServerData(connectionString = sqlQuery = AirlineDemoQuery) mySqlCC, sqlQuery = AirlineDemoQuery)
### ANALYTICAL PROCESSING ### Functional ### Statistical Summary of the data model R script – rxSummary(~ArrDelay+DayOfWeek, data= AirlineDataSet, reportProgress=1) ### CrossTab the data does not need rxCrossTabs(ArrDelay ~ DayOfWeek, data= AirlineDataSet, means=T)
to change to run ### Linear Model and plot in either DB hdfsXdfArrLateLinMod <- rxLinMod(ArrDelay ~ DayOfWeek + 0 , data = AirlineDataSet) plot(hdfsXdfArrLateLinMod$coefficients) ScaleR models can be deployed from a server or edge node to run in Teradata without any functional R model re-coding for in-database computations
Local Parallel processing – Linux or Windows In – Teradata
### SETUP LOCAL ENVIRONMENT VARIABLES ### ### SETUP TERADATA ENVIRONMENT VARIABLES ### myLocalCC <- “localpar” myTdCC <- "Driver=Teradata; DBCNAME=TeradataProd; Database=RevoTester; Uid=RevoTester; pwd=######"
Compute ### LOCAL COMPUTE CONTEXT ### ### TERADATA COMPUTE CONTEXT ### rxSetComputeContext(myLocalCC) context R script rxSetComputeContext(myTdCC) – sets where the ### CREATE LOCAL FILE-SYSTEM POINTER AND FILE OBJECT ### ### CREATE TERADATA DATA SOURCE ### model will run localFS <- RxNativeFileSystem() ) AirlineDemoQuery <- "SELECT * FROM AirlineDemoSmall;" AirlineDataSet <- RxXdfData(“AirlineDemoSmall.xdf”, AirlineDataSet <- RxTeradata(connectionString = fileSystem = localFS) myTdCC, sqlQuery = AirlineDemoQuery)
### ANALYTICAL PROCESSING ### Functional ### Statistical Summary of the data model R script – rxSummary(~ArrDelay+DayOfWeek, data= AirlineDataSet, reportProgress=1) ### CrossTab the data does not need rxCrossTabs(ArrDelay ~ DayOfWeek, data= AirlineDataSet, means=T)
to change to run ### Linear Model and plot in Teradata hdfsXdfArrLateLinMod <- rxLinMod(ArrDelay ~ DayOfWeek + 0 , data = AirlineDataSet) plot(hdfsXdfArrLateLinMod$coefficients) R R R R R
R R R R R
R Server
https://notebooks.azure.com/vilcek/libraries/deeplearning- very-basics https://aka.ms/dsvm/overview
Visual Studio Tools for AI
Visual Studio extension with deep integration to Azure ML
End to end development environment, from new project through training
Support for remote training
Job management
On top of all of the goodness of Visual Studio (Python, Jupyter, Git, etc)
BIG DATA & ADVANCED ANALYTICS AT A GLANCE
Ingest Store Prep & Train Model & Serve Intelligence Business apps Data Factory (Data movement, pipelines & orchestration)
Cosmos DB
Predictive apps Databricks Blobs Kafka 10 HDInsight SQL SQL Database Custom 01 Data Lake Data Lake Analytics apps
SQL Data Operational reports Warehouse Event Hub Machine IoT Hub Learning Sensors Analysis Services and devices Analytical dashboards APACHE SPARK An unified, open source, parallel, data processing framework for Big Data Analytics
Spark SQL Spark MLlib Spark GraphX Interactive Machine Streaming Graph Queries Learning Stream processing Computation
Spark Core Engine
Standalone Yarn Mesos SparkScheduler MLlib Spark Structured Machine Streaming Learning Stream processing S P A R K - BENEFITS
Performance Developer Productivity
Using in-memory computing, Spark is considerably Easy-to-use APIs for processing large datasets. faster than Hadoop (100x in some tests). Includes 100+ operators for transforming. Can be used for batch and real-time data processing.
Unified Engine Ecosystem
Integrated framework includes higher-level libraries Spark has built-in support for many data sources, for interactive SQL queries, Stream Analytics, ML and rich ecosystem of ISV applications and a large dev graph processing. community. A single application can combine all types of Available on multiple public clouds (AWS, Google processing. and Azure) and multiple on-premises distributors ADVANTAGES OF A UNIFIED PLATFORM
Spark Streaming
Spark Machine Learning
Spark SQL AZURE DATABRICKS
Microsoft Azure KNOWING THE VARIOUS BIG DATA SOLUTIONS
CONTROL EASE OF USE
Azure Data Lake Analytics Azure Databricks
Azure HDInsight
Azure Marketplace
HDP | CDH | MapR
Reduced Administration Reduced
BIG DATA DATA BIG ANALYTICS
Any Hadoop technology, Workload optimized, Frictionless & Optimized Data Engineering in a any distribution managed clusters Spark clusters Job-as-a-service model
IaaS Clusters Managed Clusters Big Data as-a-service Azure Data Lake Analytics
Azure Data Lake Store STORAGE Azure Storage DATA BIG SECURE COLLABORATION Azure Databricks enables secure collaboration between colleagues
• With Azure Databricks colleagues can securely share key artifacts such as Clusters, Notebooks, Jobs and Workspaces Fine Grained Permissions • Secure collaboration is enabled through a combination of:
Fine grained permissions: Defines who can do what on which artifacts (access control) AAD-based User Authentication
AAD-based authentication: Ensures that users are actually who they claim to be
DEEP LEARNING Azure Databricks supports and integrates with a number of Deep Learning libraries and frameworks to make it easy to build and deploy Deep Learning applications
▪ Supports Deep Learning Libraries/frameworks including:
• Microsoft Cognitive Toolkit (CNTK). o Article explains how to install CNTK on Azure Databricks.
• TensorFlowOnSpark
• BigDL Distributed Hyperparameter Tuning ▪ Offers Spark Deep Learning Pipelines, a suite of tools for working with and processing images using deep learning using transfer learning. It includes high-level APIs for common aspects of deep learning so they can be done efficiently in a few lines of code:
Transfer Learning
THE FASTEST TOOLKIT MOST SCALABLE TOOLKIT (2016) This material is provided for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED.