Upgrade to Pro — share decks privately, control downloads, hide ads and more …

End-to-End Machine Learning (ML) For Developers

End-to-End Machine Learning (ML) For Developers

Talk presented at Google Developers' Group Festival 2019 in Port Harcourt city, Nigeria with over 1,000 developers gathered.

This presentation walks through;

- High-level overview of Machine Learning.

- What ML is NOT vs what ML is,

- How ML "learns",

- Why you would need ML as a developer.

- Visual comparison between ML and traditional software programming.

- Scenarios You Would Probably Need ML, as A Developr.

- Most Common ML Tools and Frameworks for
Developers.

- Constraints for Using ML as Developers.

- Important ML Notes to Consider…

- Should you learn ML as a Developer? (Answered in slides.)

Stephen Oladele

December 23, 2020
Tweet

More Decks by Stephen Oladele

Other Decks in Technology

Transcript

  1. What to Expect from This Prezzy? High-level overview of Machine

    Learning Why you would need ML as a developer ML resources, best practices, tools, platforms, and frameworks for developers. Demo session on using ML for developers (time-constrained) [OPTIONAL] Link to the slides for the prezzy.
  2. Why Machine Learning Input What is the biggest dessert in

    the world? ML Software Learns from the input; in this case, infers ‘desert’ instead of ‘dessert’. Output “Antarctic Desert” To deal with the complexity and uncertainty of the users of our products… For example;
  3. No be “Juju” Cannot magically solve all problems you throw

    at it. No be “Terminator” No be “job snatcher” Does not have what it takes to take over the world and hold it captive. Can only take on repetitive tasks that are in jobs rather than full jobs themselves.
  4. ML is simply computers using data to answer questions. Machine

    Learning Model (Or Algorithm). Machine Learning Generated Answers.
  5. Input Output “Bole” Recognizes and learns the patterns that are

    common across and associate the inputs. A lot of Bole images taken at varying angles and in varying styles. Learns the feature common across each and every image, and how they associate with each other. Can recognize entirely new Bole images it hasn’t learnt about before and tag them “Bole”. •Text •Number •Audio •Videos •Images
  6. Machine Learning is All Around You… Virtual Assistants; Siri, Cortana,

    Google Assistant, Alexa… Recommendation Systems; YouTube, Netflix, Twitter, Facebook… Search engine results; Google search, Bing…
  7. ML has been around for a while. It became better,

    because… Big Data Better Computing Infrastructure Improved Learning Algorithms Accessible Tools & Frameworks
  8. Requirements Engineering Design (Get Data and preprocess it) Implementation (Learning

    Algorithm; ML Model) Evaluation And Fine-tuning Outputs Production (Continuous monitoring & Maintenance) Machine Learning Engineering Typical Workflow Machine Learning
  9. Requirements for a Typical Machine Learning Engr./Dev Mathematics Statistics Coding

    Skills Python, R, Julia Software Engineering Principles, tools, and best practices .
  10. Scenario 1 Boss asks “Hey, so we have a bunch

    of data on customer transactions. Can you help us build a model that can predict which of our customers will buy our products? Easy, right?” One-off Model
  11. Scenario 2 PM: “Hey, so we are building this software

    and I think this facial recognition feature would be too complex for us to program by rules. You could embed some ML into the software so we won’t have to kill ourselves, yes?” Embedded Model
  12. Scenario 3 Boss: “Hey, so we noticed that this Machine

    Learning is the next software revolution. We kind off want you to become a full-time ML engineer for the company’s new AI division. Too much to ask?” Full-time Beast Model
  13. Frameworks/Libraries 1. TensorFlow ▪ TensorFlow APIs ▪ TensorFlow.js ▪ TensorFlow

    Lite 3. Scikit-Learn 2. Keras 1. Google ML Tool Kit 2. iOS CoreML 4. Weka 4. Apache Spark ML Lib 5. MLflow 5. AWS ML APIs Tools 3. Google Cloud ML APIs
  14. Cloud/Serverless ML Platforms 1. Microsoft Azure ML Studio 2. Google

    Cloud AutoML 3. Google BigQueryML 5. Amazon AI/SageMaker 4. Google Cloud AI Platform
  15. Constraints for Using ML for Developers… You need *lots* of

    data and compute infrastructure to get it to work quite well. It is quite difficult to operationalize ML software and get them to production, they break drastically if not monitored. It is a rapidly evolving field, new tools and techniques are emerging almost every time. It’s hard to keep up. Need to explain results and data privacy of the software becomes extremely important for the developers.
  16. Important ML Notes to Consider… 1. Machine Learning is way

    more than just the tools. 2. ML models must be built responsibly. 3. ML solutions need to be iteratively monitored and updated. 4. MLOps (Machine Learning operationalization) is possible. 5. Explainability and data privacy are extremely important ML practices. Credits: Jade Abbott (@alienelf)
  17. Another Important Point to Note as a Developer... To get

    it to work for your product users, it still needs to integrate with other existing solutions like your; • Mobile applications, • Website or web applications, • IoT or Edge devices. Machine Learning isn’t always stand-alone solution for your users!!!
  18. Uhm.. Steve, So Should I learn ML as a Developer?

    As a developer, if there is no absolute requirement for you to learn it, then you should not. Treat ML as a set of tools. Like any other tool, be aware of the problems it can solve and those it cannot.
  19. ML is about helping algorithms understand our problems, and then

    take the most efficient steps to solve the problems—this is the new age of software where systems are smart and adaptable to the complex world around us.
  20. Where to Learn More? Google Machine Learning Crash Course Google

    Cloud AI Hub Microsoft Azure Machine Learning TensorFlow Learning Hub AWS Machine Learning University Fast.ai Need hands-on practice? Use Developers’ Codelabs ML Terminologies & and Glossaries.