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

Open Source Deep Learning for Developers at Red Hat Summit

Open Source Deep Learning for Developers at Red Hat Summit

While we are a long way out from machines that can perform artificial general intelligence (AGI) tasks, deep learning can be used for many narrow artificial intelligence (AI) tasks including image or audio classification, facial recognition, object recognition, image caption generation, and natural language processing. We will explore how developers can easily integrate open source deep learning models into their applications.

Bradley Holt

May 08, 2019
Tweet

More Decks by Bradley Holt

Other Decks in Technology

Transcript

  1. Open Source
    Deep Learning
    for Developers

    Bradley Holt
    Program Manager, Developer Advocacy
    Center for Open-Source Data & AI Technologies
    ↳ (CODAIT)
    @BradleyHolt

    View Slide

  2. It’s a hybrid world
    Enterprises want the ability to
    span traditional IT, private and
    public clouds.
    Containers are strategic
    Enterprises need agility to meet
    the demands of their clients and
    their markets.
    Innovation is the path forward
    Mission critical projects need
    industry leading middleware
    and data.
    IBM and Red Hat Share Three Common Beliefs
    2 © 2019 IBM Corporation
    IBM and Red Hat – Partners for 20 years
    For over 20 years IBM and Red Hat have collaborated with the open source
    community to drive innovation and power businesses around the world.

    View Slide

  3. Artificial
    Intelligence
    Center for Open-Source Data & AI Technologies (CODAIT) / May 8, 2019 / © 2019 IBM Corporation
    @BradleyHolt

    View Slide

  4. ↳ General AI
    Metal Skull With Terminator Eye by L.C. Nøttaasen, on Flickr (CC BY-SA 2.0).

    View Slide

  5. ↳ Broad AI
    -[ electrIc b88Gal88 ]- by JD Hancock, on Flickr (CC BY 2.0).

    View Slide

  6. ↳ Narrow AI
    Danbo on the Lookout by IQRemix, on Flickr (CC BY-SA 2.0).

    View Slide

  7. Approaches to
    Artificial Intelligence
    Center for Open-Source Data & AI Technologies (CODAIT) / May 8, 2019 / © 2019 IBM Corporation
    Machine Learning (ML)
    • Predictive analytics
    • Data mining
    • Anomaly detection
    • Email filtering
    Deep Learning
    • Image or audio
    classification
    • Facial recognition
    • Object recognition
    • Image caption
    generation
    • Natural language
    processing
    @BradleyHolt

    View Slide

  8. https://github.com/CODAIT/magicat

    View Slide

  9. 23895621638_535be71dee_k.jpg
    37038669284_899d7784a9_k.jpg
    37489697170_31d05aa027_k.jpg
    37699459356_24fd526a5e_k.jpg
    37699976806_5ce694be36_k.jpg
    Animal photos by Susanne Nilsson, on Flickr (CC BY-SA 2.0).

    View Slide

  10. Scan Directory with magicat
    $ magicat . --contains sheep
    Scanning directory '~/tfjs-demos/magicat' for sheep...
    Sheep found in:
    37038669284_899d7784a9_k.jpg
    37489697170_31d05aa027_k.jpg
    @BradleyHolt

    View Slide

  11. Save Image Segment with magicat
    $ magicat 37699976806_5ce694be36_k.jpg --save horse
    The image '37699976806_5ce694be36_k.jpg' contains the
    following segments: background, horse.
    saved 37699976806_5ce694be36_k-horse.png
    Animal photos by Susanne Nilsson, on Flickr (CC BY-SA 2.0).

    View Slide

  12. ↳ Deep Learning Code Patterns
    @BradleyHolt

    View Slide

  13. Software Programming
    Center for Open-Source Data & AI Technologies (CODAIT) / May 8, 2019 / © 2019 IBM Corporation
    Untitled by Marcin Wichary, on Flickr (CC BY 2.0).

    View Slide

  14. Center for Open-Source Data & AI Technologies (CODAIT) / May 8, 2019 / © 2019 IBM Corporation
    01011001001011000001
    10101101010100100110
    00010110101010011100
    10101010110101010100
    10001001011101000101
    Software Program
    Business Logic
    @BradleyHolt

    View Slide

  15. Center for Open-Source Data & AI Technologies (CODAIT) / May 8, 2019 / © 2019 IBM Corporation
    01011001001011000001
    10101101010100100110
    00010110101010011100
    10101010110101010100
    10001001011101000101
    Software Program
    Input
    Program Execution
    Output
    @BradleyHolt

    View Slide

  16. Deep Learning & ML vs.
    Software Programming
    Center for Open-Source Data & AI Technologies (CODAIT) / May 8, 2019 / © 2019 IBM Corporation
    Deep Learning & ML
    • Training
    • High-quality examples
    (i.e., training data)
    • Approximation of a
    correct function
    Software Programming
    • Programming
    • Set of direct
    instructions
    • Precisely-defined
    function
    @BradleyHolt

    View Slide

  17. Center for Open-Source Data & AI Technologies (CODAIT) / May 8, 2019 / © 2019 IBM Corporation
    Input Layer Hidden Layers Output Layer
    @BradleyHolt

    View Slide

  18. Fashion-MNIST dataset by Zalando Research, on GitHub (MIT License).
    Backpropagation
    Labeled Training Data
    Coat
    Sneaker
    T-shirt Sneaker
    Pullover
    Output Errors
    Pullover
    Coat
    Coat
    Sneaker T-shirt

    ❌ ❌

    View Slide

  19. Fashion-MNIST dataset by Zalando Research, on GitHub (MIT License).
    Input Output
    Sneaker
    Neural Network Inferencing

    View Slide

  20. Center for Open-Source Data & AI Technologies (CODAIT) / May 8, 2019 / © 2019 IBM Corporation
    @BradleyHolt

    View Slide

  21. @BradleyHolt

    View Slide

  22. Applying Deep Learning
    Center for Open-Source Data & AI Technologies (CODAIT) / May 8, 2019 / © 2019 IBM Corporation
    Data Science
    Expertise
    Computing
    Resources
    High-Quality
    Training Data
    Model Deployment Time
    Model Integration
    Inferencing Code
    And more…
    @BradleyHolt

    View Slide

  23. Model Asset Exchange
    Classify
    Generate
    Recognize
    Center for Open-Source Data & AI Technologies (CODAIT) / May 8, 2019 / © 2019 IBM Corporation
    @BradleyHolt

    View Slide

  24. Microservice
    Center for Open-Source Data & AI Technologies (CODAIT) / May 8, 2019 / © 2019 IBM Corporation
    Choose deployable model
    Deep Learning asset from the Model Asset Exchange (MAX)
    Deploy
    Swagger specification Inference endpoint Metadata endpoint
    Input preprocessing, model execution, and output post-processing
    Deploy
    model
    Use
    model
    @BradleyHolt

    View Slide

  25. AI Lifecycle
    Center for Open-Source Data & AI Technologies (CODAIT) / May 8, 2019 / © 2019 IBM Corporation
    Deploy &
    Run
    Operate
    & Manage
    Prepare,
    Build &
    Train
    @BradleyHolt

    View Slide

  26. Preparing, Building,
    and Training AI Models
    Center for Open-Source Data & AI Technologies (CODAIT) / May 8, 2019 / © 2019 IBM Corporation
    Model Asset Exchange (MAX)
    @BradleyHolt

    View Slide

  27. Deploying and
    Running AI Models
    Center for Open-Source Data & AI Technologies (CODAIT) / May 8, 2019 / © 2019 IBM Corporation
    ONNX.js
    Model Asset Exchange (MAX)
    @BradleyHolt

    View Slide

  28. Operating and
    Managing AI Systems
    Fabric for Deep Learning (FfDL)
    Train and deploy deep learning models on Kubernetes using TensorFlow,
    Caffe2, PyTorch, and other frameworks
    AI Fairness 360 (AIF360)
    Comprehensive set of fairness metrics for machine learning models,
    explanations for these metrics, and algorithms to mitigate bias in models
    Adversarial Robustness Toolbox (ART)
    Python library for adversarial attacks and defenses for neural networks
    with multiple framework support
    @BradleyHolt

    View Slide

  29. IBM Data & AI Portfolio
    Center for Open-Source Data & AI Technologies (CODAIT) / May 8, 2019 / © 2019 IBM Corporation
    The Ladder to AI
    Pre-built Use Cases
    Watson Applications
    Multicloud Data & AI Platform
    IBM Cloud Platform for Data
    Hybrid Data Management
    Db2 Family
    Data Governance & Integration
    InfoSphere Family
    Open Source meets a
    multicloud, working as ONE
    Watson
    Machine
    Learning
    Watson
    Knowledge
    Catalog
    Watson
    Studio
    Watson
    OpenScale
    Prepare Build Manage
    Run
    @BradleyHolt

    View Slide

  30. Watson Data Science Platform
    Center for Open-Source Data & AI Technologies (CODAIT) / May 8, 2019 / © 2019 IBM Corporation
    Build and Deploy Upon Open Source Frameworks
    Watson
    Studio
    A universal runtime to embed,
    share and optimize AI models
    Design, build and train AI models,
    with visual modeling & generation
    Watson
    Machine
    Learning
    Watson
    OpenScale
    Operate and scaling AI value &
    usage with trust & transparency
    Unify on a Multicloud Data & AI Platform
    Watson
    Knowledge
    Catalog
    Data Discovery
    Data Preparation
    Policy-based Catalogs
    Visual Design
    Develop & Train
    Automation (AutoAI)
    Deploy & Manage
    Model-ops
    Retraining
    Optimize Outcomes
    Explainability & Lineage
    Automated Evolution
    Unified catalog to data users find,
    curate, categorize and share data
    Prep Build Run Manage
    @BradleyHolt

    View Slide

  31. What will you
    build with
    deep learning?
    Dynamic Earth - Continental Shelf by NASA Goddard Space Flight Center, on Flickr (CC BY 2.0).

    View Slide

  32. Resources: Machine Learning Libraries
    • TensorFlow
    https://www.tensorflow.org/
    • Train your first neural network: basic classification | TensorFlow
    https://www.tensorflow.org/tutorials/keras/basic_classification
    • Keras
    https://keras.io/
    • PyTorch
    https://pytorch.org/
    • Caffe2
    https://caffe2.ai/
    @BradleyHolt

    View Slide

  33. Resources: IBM Developer
    • IBM Developer
    https://developer.ibm.com/
    • IBM Cloud
    https://ibm.biz/Bd2NAr
    • Center for Open-Source Data & AI Technologies (CODAIT)
    http://codait.org/
    • IBM Developer Model Asset Exchange (MAX)
    https://developer.ibm.com/exchanges/models/
    • magicat
    https://github.com/CODAIT/magicat
    @BradleyHolt

    View Slide

  34. Resources: Preparing, Building, and
    Training AI Models
    • Project Jupyter
    https://jupyter.org/
    • IBM Developer Model Asset Exchange (MAX)
    https://developer.ibm.com/exchanges/models/
    • IBM Watson Knowledge Catalog
    https://www.ibm.com/cloud/watson-knowledge-catalog
    • IBM Watson Studio
    https://www.ibm.com/cloud/watson-studio
    @BradleyHolt

    View Slide

  35. Resources: Deploying and Running AI Models
    • Data Mining Group (PMML & PFA)
    http://dmg.org/
    • ONNX
    https://onnx.ai/
    • ONNX.js
    https://github.com/Microsoft/onnxjs
    • TensorFlow.js
    https://js.tensorflow.org/
    • TensorFlow Lite
    https://www.tensorflow.org/lite
    • Core ML
    https://developer.apple.com/machine-learning/
    • IBM Watson Machine Learning
    https://www.ibm.com/cloud/machine-learning
    @BradleyHolt

    View Slide

  36. Resources: Operating and Managing AI Systems
    • Fabric for Deep Learning (FfDL)
    https://github.com/IBM/FfDL
    • AI Fairness 360 (AIF360)
    https://github.com/IBM/AIF360
    • Adversarial Robustness Toolbox (ART)
    https://github.com/IBM/adversarial-robustness-toolbox
    • IBM Watson OpenScale
    https://www.ibm.com/cloud/watson-openscale
    @BradleyHolt

    View Slide

  37. Thank you.
    Center for Open-Source Data & AI Technologies (CODAIT) / May 8, 2019 / © 2019 IBM Corporation
    Bradley Holt
    Program Manager, Developer Advocacy
    Center for Open-Source Data & AI Technologies (CODAIT)

    ibm.com
    @BradleyHolt

    View Slide

  38. Center for Open-Source Data & AI Technologies (CODAIT) / May 8, 2019 / © 2019 IBM Corporation

    View Slide