SlideShare uma empresa Scribd logo
1 de 35
Baixar para ler offline
1© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved | 1© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved |
With Deep Java Library
Hermann Burgmeier
Mikhail Shapirov
Qing Lan
Vaibhav Goel
Integrate Machine Learning into
Your Spring Boot Application in
Less than an Hour
2© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved |
Put machine learning in the hands of all developers
3© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved |
MACHINE LEARNING IN 2020
• ML is a top priority for many organizations in 2020
• ML pulls through more compute and data
(it can pull it away to another cloud too)
• Tens of thousands of customers are already running ML on AWS. It’s real
and happening now in your accounts.
4© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved |
COMMON CHALLENGES
• Skills gap—not enough people can build ML models
• ML model building is a time-consuming and complex process
• Finding the right business use cases that could benefit from ML
5© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved |
Easier to build Easier to scale Easier to apply
6© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved |
The AWS ML Stack
Broadest and most complete set of Machine Learning capabilities
VISION SPEECH TEXT SEARCH CHATBOTS PERSONALIZATION FORECASTING FRAUD DEVELOPMENT CONTACT CENTERS
Ground
Truth
Augmented
AI
ML
Marketplace
Neo
Built-in
algorithms
Notebooks Experiments
Model
training &
tuning
Debugger Autopilot
Model
hosting
Model Monitor
Deep Learning
AMIs & Containers
GPUs &
CPUs
Elastic
Inference
Inferentia
(Inf1 instance)
FPGA
Amazon
Rekognition
Amazon
Polly
Amazon
Transcribe
+Medical
Amazon
Comprehend
+Medical
Amazon
Translate
Amazon
Lex
Amazon
Personalize
Amazon
Forecast
Amazon
Fraud Detector
Amazon
CodeGuru
AI SERVICES
ML SERVICES
ML FRAMEWORKS & INFRASTRUCTURE
Amazon
Textract
Amazon
Kendra
Contact Lens
For Amazon Connect
SageMaker Studio IDE
NEW
NEW! NEW! NEW! NEW!
NEW!
NEW! NEW! NEW! NEW! NEW!
Amazon SageMaker
7© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved |
The AWS ML Stack
Broadest and most complete set of Machine Learning capabilities
VISION SPEECH TEXT SEARCH CHATBOTS PERSONALIZATION FORECASTING FRAUD DEVELOPMENT CONTACT CENTERS
Ground
Truth
Augmented
AI
ML
Marketplace
Neo
Built-in
algorithms
Notebooks Experiments
Model
training &
tuning
Debugger Autopilot
Model
hosting
Model Monitor
Deep Learning
AMIs & Containers
GPUs &
CPUs
Elastic
Inference
Inferentia
(Inf1 instance)
FPGA
Amazon
Rekognition
Amazon
Polly
Amazon
Transcribe
+Medical
Amazon
Comprehend
+Medical
Amazon
Translate
Amazon
Lex
Amazon
Personalize
Amazon
Forecast
Amazon
Fraud Detector
Amazon
CodeGuru
AI SERVICES
ML SERVICES
ML FRAMEWORKS & INFRASTRUCTURE
Amazon
Textract
Amazon
Kendra
Contact Lens
For Amazon Connect
SageMaker Studio IDE
NEW
NEW! NEW! NEW! NEW!
NEW!
NEW! NEW! NEW! NEW! NEW!
Amazon SageMaker
8© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved | 8© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved |
Deep Learning in Java with DJL
9© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved |
DJL – The Machine Learning framework in Java
• API - Designed for Java
• Multithread support and memory control
• Engine Agnostic: Write Once, Run Anywhere (MXNet, PyTorch, TensorFlow)
• ModelZoo: 70+ pretrained models for out of box deployment
• AWS actively contributes to Open Source ML projects
10© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved |
DJL – Build AI Application with no ML Experience
• DJL on Android device
• Easy Deployment
• 70+ models out of box
deployment in applications
11© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved |
Why should you use DJL?
• Most enterprise customers using Java
• Existing Java API for Deep Learning is painful
• Deploy ML in Java is challenging - Hard to maintain
• Java community lacks DL standard
• No single standard in Java DL packages
• DL with strongly typed language
• Service code - readability and reliability
12© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved |
DJL – Key advantage
• Easy: 10 line inference setup
• Minimum dependency requirement
• Fast: up to 2x performance boost on small model inference. Used by Ads,
query understanding and image classification
• Large scale: Offline data processing with 800M inference load on Apache
Spark. Online streaming real-time processing (AWS Kinesis, Apache Flink …)
• Stable: 100+ hour benchmark test on continuous inference call.
13© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved |
DJL – Easy Interface for Java Developers
• DJL Live Jshell
• DJL interactive console
14© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved |
DJL for training
• Engine ready: MXNet and PyTorch
• Built-in metrics: Built-in metrics system to easy collect training information
• Dataset ready: Built-in dataset for CV and NLP
• Model ready: Built-in CV and NLP models
• Multi-GPU support: Support training on Multi-GPU
• Transfer learning: Use your existing models to do transfer learning
• Jupyter Notebook Support (CPU/GPU)
15© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved | 15© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved |
DJL Customer Study
16© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved |
Amazon Advertising
• Multiple offerings on and off Amazon pages
• Sponsored ads (Sponsored Brands, Sponsored Display, Sponsored Products,
Stores)
• Display ads
• Video ads
• Amazon DSP
• Sponsored Products
• Help shoppers discover and find products across Amazon's vast
product selection.
• Advertisers promote their products on search result and product
pages to help increase reach and grow their business.
17© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved |
Sponsored Products
18© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved |
Machine Learning in Sponsored Products
• 100s of machine learning (ML) models deployed globally for many use
cases like click-through rate prediction.
• More use cases require ML in advertising. New data science teams and
models emerge constantly.
• Different teams prefer different ML frameworks.
• Models are hosted in a Java-based model hosting service.
• Modern software engineering techniques like strong typing and
dependency Injection.
• Java stack is well integrated in the operational safety frameworks.
19© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved |
DJL Usage in Sponsored Products
• With DJL the scientists building the model can choose the best ML
framework for them and their needs.
• New ML frameworks supported by DJL can be easily integrated into our
stack.
• DJL enables us to run models built with different ML frameworks side-
by-side in the same JVM without infrastructure changes.
• DJL Translators allows us to keep feature generation independent of ML
framework used for a model.
20© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved |
Amazon Customer Behavior Analytics
• Provides best-in-class targeting for any Amazon product or service to drive
customer engagement
• Helps to provide personalized marketing to customers
• Email campaigns
• Social Ads
• Website banners
• Identify customer’s propensity to take action in various product categories
21© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved |
Machine Learning in Customer Behavior Analytics
• Uses a multi-label classification model in MXNet for building propensity models
• A single model is used for thousand of product categories
• Use high dimensional feature data
• Hundreds of Thousands of features per customer
• The team consists of a mix of software development engineers and research scientists
• Science team prefers using Python
• Engineering team prefers using Java/Scala
22© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved |
DJL Usage in Customer Behavior Analytics
• With DJL
• Science team can use MXNet Python APIs to build the model
• Engineering team uses DJL to run inference using Apache Spark with
Scala
• DJL decoupled our system from ML framework
• DJL easily handled high dimensional data
• DJL reduced batch inference time by 85%
• From 24 hours to 3.5 hours
23© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved |
DJL Spring Boot Starter
• Provides more native experience for Spring Developers
• Handles dependency management for inference
• Auto-configuration option for model look up and predictor wiring
24© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved |
DJL Spring Boot Dependency Management
<parent>
<artifactId>spring-boot-starter-parent</artifactId>
<groupId>org.springframework.boot</groupId>
</parent>
<properties>
<jna.version>5.3.0</jna.version> <!--Required to override default JNA
version for Spring Boot parent-->
</properties>
<dependencies>
<dependency>
<groupId>ai.djl.spring</groupId>
<artifactId>djl-spring-boot-starter-mxnet-linux_86_64</artifactId>
<version>{djl.version}</version>
</dependency>
</dependencies>
25© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved |
DJL Spring Boot Auto <Platform> Dependency
plugins {
id("org.springframework.boot")
}
repositories {
mavenCentral()
}
dependencies {
implementation("ai.djl.spring:djl-spring-boot-starter-pytorch-auto")
...
}
26© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved |
DJL Spring Boot Auto-Configuration
Maven:
<dependency>
<groupId>ai.djl.spring</groupId>
<artifactId>djl-spring-boot-starter-autoconfigure</artifactId>
<version>{djl.version}</version>
</dependency>
Gradle:
dependencies {
implementation("ai.djl.spring:djl-spring-boot-starter-autoconfigure
:${djl.starter.version}")
...
}
27© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved |
DJL Spring Boot Configuration
- application.yml/application.properties
Access to the model zoo allows selection of application types (or inference
types) from the following set:
• QUESTION_ANSWER(NLP.QUESTION_ANSWER),
TEXT_CLASSIFICATION(NLP.TEXT_CLASSIFICATION),
IMAGE_CLASSIFICATION(CV.IMAGE_CLASSIFICATION),
OBJECT_DETECTION(CV.OBJECT_DETECTION),
ACTION_RECOGNITION(CV.ACTION_RECOGNITION),
INSTANCE_SEGMENTATION(CV.INSTANCE_SEGMENTATION),
POSE_ESTIMATION(CV.POSE_ESTIMATION),
SEMANTIC_SEGMENTATION(CV.SEMANTIC_SEGMENTATION);
28© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved |
DJL Spring Boot Configuration
djl:
# Define application type
application-type: OBJECT_DETECTION
# Define input data type, a model may accept multiple input data
type
input-class: ai.djl.modality.cv.Image
# Define output data type, a model may generate different out put
output-class: ai.djl.modality.cv.output.DetectedObjects
# Define filters that matches your application's need
model-filter:
size: 512
backbone: mobilenet1.0
# Override default pre-processing/post-processing behavior
arguments:
threshold: 0.7
29© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved |
DJL Spring Boot: Using Predictors
Inject predictor given for the specified model and input/output:
@Resource
private Supplier<Predictor<Image, DetectedObjects>> predictorProvider;
@Resource
private ImageFactory imageFactory; // convenience factory for images
Use with try-with-resources:
try (var predictor = predictorProvider.get()) {
var results = predictor.predict(imageFactory.fromFile(("/myimage.jpg")));
for(var result : results.items()) {
LOG.info("results: {}", result.toString());
}
}
30© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved |
Containerize your Spring Boot Application
jib {
from.image = "adoptopenjdk/openjdk13:debian"
to.image = "{repository-spec}/djl- spring-boot-app"
to.tags = setOf(version.toString().plus("-")
.plus(inferredClassifier).plus("-")
.plus(commitHash))
}
---
$./gradlew jib
31© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved |
CD Cycle
1. Build
2. Upload to Container Registry
3. Run on Kubernetes (staged)
32© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved |
GitOps with EKS and Team Collaboration
ArgoCD
GitHub Repos
App of apps
33© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved |
DJL Spring Boot: What is next?
- Integrate DJL functionality
- Include training (and transfer learning) with DJL Spring Boot Starter
- Create solutions and workshops with full CI/CD and training/inference
feedback loop and multi-tenancy
- Running on EKS with GPU optimized instances
34© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved |
DJL - Future
• Android Support: Creating Android-based training and inference apps with
DJL
• Book – Dive into Deep Learning (Java Edition)
• Integrate with more AWS Services (EMR, Lambda, etc…)
• Federate Learning with DJL (Work in Progress)
• Reinforcement Learning with DJL (work in Progress)
• Distributed Inference on GPU support
35© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved |
References
Resources and Documentation:
https://djl.ai/
https://docs.djl.ai/
Source Code:
https://github.com/awslabs/djl/
https://github.com/awslabs/djl-spring-boot-starter
https://github.com/awslabs/djl-spring-boot-starter-demo

Mais conteúdo relacionado

Mais procurados

Modernizing the Analytics and Data Science Lifecycle for the Scalable Enterpr...
Modernizing the Analytics and Data Science Lifecycle for the Scalable Enterpr...Modernizing the Analytics and Data Science Lifecycle for the Scalable Enterpr...
Modernizing the Analytics and Data Science Lifecycle for the Scalable Enterpr...
Data Con LA
 
MLOps for production-level machine learning
MLOps for production-level machine learningMLOps for production-level machine learning
MLOps for production-level machine learning
cnvrg.io AI OS - Hands-on ML Workshops
 
Apache Kafka in the Automotive Industry (Connected Vehicles, Manufacturing 4....
Apache Kafka in the Automotive Industry (Connected Vehicles, Manufacturing 4....Apache Kafka in the Automotive Industry (Connected Vehicles, Manufacturing 4....
Apache Kafka in the Automotive Industry (Connected Vehicles, Manufacturing 4....
Kai Wähner
 
Kappa vs Lambda Architectures and Technology Comparison
Kappa vs Lambda Architectures and Technology ComparisonKappa vs Lambda Architectures and Technology Comparison
Kappa vs Lambda Architectures and Technology Comparison
Kai Wähner
 

Mais procurados (20)

Kafka Tutorial - Introduction to Apache Kafka (Part 1)
Kafka Tutorial - Introduction to Apache Kafka (Part 1)Kafka Tutorial - Introduction to Apache Kafka (Part 1)
Kafka Tutorial - Introduction to Apache Kafka (Part 1)
 
Core Banking System on Apache Kafka
Core Banking System on Apache KafkaCore Banking System on Apache Kafka
Core Banking System on Apache Kafka
 
LanGCHAIN Framework
LanGCHAIN FrameworkLanGCHAIN Framework
LanGCHAIN Framework
 
Speed-Up Kafka Delivery with AsyncAPI & Microcks | Hugo Guerrero, Red Hat
Speed-Up Kafka Delivery with AsyncAPI & Microcks | Hugo Guerrero, Red HatSpeed-Up Kafka Delivery with AsyncAPI & Microcks | Hugo Guerrero, Red Hat
Speed-Up Kafka Delivery with AsyncAPI & Microcks | Hugo Guerrero, Red Hat
 
Service Mesh with Apache Kafka, Kubernetes, Envoy, Istio and Linkerd
Service Mesh with Apache Kafka, Kubernetes, Envoy, Istio and LinkerdService Mesh with Apache Kafka, Kubernetes, Envoy, Istio and Linkerd
Service Mesh with Apache Kafka, Kubernetes, Envoy, Istio and Linkerd
 
MLOps Using MLflow
MLOps Using MLflowMLOps Using MLflow
MLOps Using MLflow
 
What is MLOps
What is MLOpsWhat is MLOps
What is MLOps
 
Modernizing the Analytics and Data Science Lifecycle for the Scalable Enterpr...
Modernizing the Analytics and Data Science Lifecycle for the Scalable Enterpr...Modernizing the Analytics and Data Science Lifecycle for the Scalable Enterpr...
Modernizing the Analytics and Data Science Lifecycle for the Scalable Enterpr...
 
Financial Event Sourcing at Enterprise Scale
Financial Event Sourcing at Enterprise ScaleFinancial Event Sourcing at Enterprise Scale
Financial Event Sourcing at Enterprise Scale
 
MLOps in action
MLOps in actionMLOps in action
MLOps in action
 
Introduction to Google Cloud Platform and APIs
Introduction to Google Cloud Platform and APIsIntroduction to Google Cloud Platform and APIs
Introduction to Google Cloud Platform and APIs
 
Introduction to actor model with examples on Akka.NET
Introduction to actor model with examples on Akka.NETIntroduction to actor model with examples on Akka.NET
Introduction to actor model with examples on Akka.NET
 
MLOps for production-level machine learning
MLOps for production-level machine learningMLOps for production-level machine learning
MLOps for production-level machine learning
 
Microservices, DevOps & SRE
Microservices, DevOps & SREMicroservices, DevOps & SRE
Microservices, DevOps & SRE
 
Apache Kafka in the Automotive Industry (Connected Vehicles, Manufacturing 4....
Apache Kafka in the Automotive Industry (Connected Vehicles, Manufacturing 4....Apache Kafka in the Automotive Industry (Connected Vehicles, Manufacturing 4....
Apache Kafka in the Automotive Industry (Connected Vehicles, Manufacturing 4....
 
Kappa vs Lambda Architectures and Technology Comparison
Kappa vs Lambda Architectures and Technology ComparisonKappa vs Lambda Architectures and Technology Comparison
Kappa vs Lambda Architectures and Technology Comparison
 
Apache Beam: A unified model for batch and stream processing data
Apache Beam: A unified model for batch and stream processing dataApache Beam: A unified model for batch and stream processing data
Apache Beam: A unified model for batch and stream processing data
 
“Houston, we have a model...” Introduction to MLOps
“Houston, we have a model...” Introduction to MLOps“Houston, we have a model...” Introduction to MLOps
“Houston, we have a model...” Introduction to MLOps
 
How to govern and secure a Data Mesh?
How to govern and secure a Data Mesh?How to govern and secure a Data Mesh?
How to govern and secure a Data Mesh?
 
Microservices Architecture - Cloud Native Apps
Microservices Architecture - Cloud Native AppsMicroservices Architecture - Cloud Native Apps
Microservices Architecture - Cloud Native Apps
 

Semelhante a Integrate Machine Learning into Your Spring Application in Less than an Hour

Semelhante a Integrate Machine Learning into Your Spring Application in Less than an Hour (20)

Enabling Deep Learning in IoT Applications with Apache MXNet
Enabling Deep Learning in IoT Applications with Apache MXNetEnabling Deep Learning in IoT Applications with Apache MXNet
Enabling Deep Learning in IoT Applications with Apache MXNet
 
Supercharge your Machine Learning Solutions with Amazon SageMaker
Supercharge your Machine Learning Solutions with Amazon SageMakerSupercharge your Machine Learning Solutions with Amazon SageMaker
Supercharge your Machine Learning Solutions with Amazon SageMaker
 
Machine Learning with Amazon SageMaker
Machine Learning with Amazon SageMakerMachine Learning with Amazon SageMaker
Machine Learning with Amazon SageMaker
 
Data meets AI - ATP Roadshow India
Data meets AI - ATP Roadshow IndiaData meets AI - ATP Roadshow India
Data meets AI - ATP Roadshow India
 
Work with Machine Learning in Amazon SageMaker - BDA203 - Atlanta AWS Summit
Work with Machine Learning in Amazon SageMaker - BDA203 - Atlanta AWS SummitWork with Machine Learning in Amazon SageMaker - BDA203 - Atlanta AWS Summit
Work with Machine Learning in Amazon SageMaker - BDA203 - Atlanta AWS Summit
 
Build, train and deploy ML models with SageMaker (October 2019)
Build, train and deploy ML models with SageMaker (October 2019)Build, train and deploy ML models with SageMaker (October 2019)
Build, train and deploy ML models with SageMaker (October 2019)
 
WhereML a Serverless ML Powered Location Guessing Twitter Bot
WhereML a Serverless ML Powered Location Guessing Twitter BotWhereML a Serverless ML Powered Location Guessing Twitter Bot
WhereML a Serverless ML Powered Location Guessing Twitter Bot
 
Perform Machine Learning at the IoT Edge using AWS Greengrass and Amazon Sage...
Perform Machine Learning at the IoT Edge using AWS Greengrass and Amazon Sage...Perform Machine Learning at the IoT Edge using AWS Greengrass and Amazon Sage...
Perform Machine Learning at the IoT Edge using AWS Greengrass and Amazon Sage...
 
Deep Dive Amazon SageMaker
Deep Dive Amazon SageMakerDeep Dive Amazon SageMaker
Deep Dive Amazon SageMaker
 
Building Deep Learning Applications with TensorFlow and SageMaker on AWS - Te...
Building Deep Learning Applications with TensorFlow and SageMaker on AWS - Te...Building Deep Learning Applications with TensorFlow and SageMaker on AWS - Te...
Building Deep Learning Applications with TensorFlow and SageMaker on AWS - Te...
 
深入淺出 AWS AI
深入淺出 AWS AI深入淺出 AWS AI
深入淺出 AWS AI
 
Deploy PyTorch models in Production on AWS with TorchServe
Deploy PyTorch models in Production on AWS with TorchServeDeploy PyTorch models in Production on AWS with TorchServe
Deploy PyTorch models in Production on AWS with TorchServe
 
Grokking Techtalk #40: AWS’s philosophy on designing MLOps platform
Grokking Techtalk #40: AWS’s philosophy on designing MLOps platformGrokking Techtalk #40: AWS’s philosophy on designing MLOps platform
Grokking Techtalk #40: AWS’s philosophy on designing MLOps platform
 
From Notebook to production with Amazon SageMaker
From Notebook to production with Amazon SageMakerFrom Notebook to production with Amazon SageMaker
From Notebook to production with Amazon SageMaker
 
From notebook to production with Amazon Sagemaker
From notebook to production with Amazon SagemakerFrom notebook to production with Amazon Sagemaker
From notebook to production with Amazon Sagemaker
 
Integrating Amazon SageMaker into your Enterprise - AWS Online Tech Talks
Integrating Amazon SageMaker into your Enterprise - AWS Online Tech TalksIntegrating Amazon SageMaker into your Enterprise - AWS Online Tech Talks
Integrating Amazon SageMaker into your Enterprise - AWS Online Tech Talks
 
AWS Toronto Summit 2019 - AIM302 - Build, train, and deploy ML models with Am...
AWS Toronto Summit 2019 - AIM302 - Build, train, and deploy ML models with Am...AWS Toronto Summit 2019 - AIM302 - Build, train, and deploy ML models with Am...
AWS Toronto Summit 2019 - AIM302 - Build, train, and deploy ML models with Am...
 
MLOPS By Amazon offered and free download
MLOPS By Amazon offered and free downloadMLOPS By Amazon offered and free download
MLOPS By Amazon offered and free download
 
World Artificial Intelligence Conference Shanghai 2018
World Artificial Intelligence Conference Shanghai 2018World Artificial Intelligence Conference Shanghai 2018
World Artificial Intelligence Conference Shanghai 2018
 
Amazon SageMaker workshop
Amazon SageMaker workshopAmazon SageMaker workshop
Amazon SageMaker workshop
 

Mais de VMware Tanzu

Mais de VMware Tanzu (20)

What AI Means For Your Product Strategy And What To Do About It
What AI Means For Your Product Strategy And What To Do About ItWhat AI Means For Your Product Strategy And What To Do About It
What AI Means For Your Product Strategy And What To Do About It
 
Make the Right Thing the Obvious Thing at Cardinal Health 2023
Make the Right Thing the Obvious Thing at Cardinal Health 2023Make the Right Thing the Obvious Thing at Cardinal Health 2023
Make the Right Thing the Obvious Thing at Cardinal Health 2023
 
Enhancing DevEx and Simplifying Operations at Scale
Enhancing DevEx and Simplifying Operations at ScaleEnhancing DevEx and Simplifying Operations at Scale
Enhancing DevEx and Simplifying Operations at Scale
 
Spring Update | July 2023
Spring Update | July 2023Spring Update | July 2023
Spring Update | July 2023
 
Platforms, Platform Engineering, & Platform as a Product
Platforms, Platform Engineering, & Platform as a ProductPlatforms, Platform Engineering, & Platform as a Product
Platforms, Platform Engineering, & Platform as a Product
 
Building Cloud Ready Apps
Building Cloud Ready AppsBuilding Cloud Ready Apps
Building Cloud Ready Apps
 
Spring Boot 3 And Beyond
Spring Boot 3 And BeyondSpring Boot 3 And Beyond
Spring Boot 3 And Beyond
 
Spring Cloud Gateway - SpringOne Tour 2023 Charles Schwab.pdf
Spring Cloud Gateway - SpringOne Tour 2023 Charles Schwab.pdfSpring Cloud Gateway - SpringOne Tour 2023 Charles Schwab.pdf
Spring Cloud Gateway - SpringOne Tour 2023 Charles Schwab.pdf
 
Simplify and Scale Enterprise Apps in the Cloud | Boston 2023
Simplify and Scale Enterprise Apps in the Cloud | Boston 2023Simplify and Scale Enterprise Apps in the Cloud | Boston 2023
Simplify and Scale Enterprise Apps in the Cloud | Boston 2023
 
Simplify and Scale Enterprise Apps in the Cloud | Seattle 2023
Simplify and Scale Enterprise Apps in the Cloud | Seattle 2023Simplify and Scale Enterprise Apps in the Cloud | Seattle 2023
Simplify and Scale Enterprise Apps in the Cloud | Seattle 2023
 
tanzu_developer_connect.pptx
tanzu_developer_connect.pptxtanzu_developer_connect.pptx
tanzu_developer_connect.pptx
 
Tanzu Virtual Developer Connect Workshop - French
Tanzu Virtual Developer Connect Workshop - FrenchTanzu Virtual Developer Connect Workshop - French
Tanzu Virtual Developer Connect Workshop - French
 
Tanzu Developer Connect Workshop - English
Tanzu Developer Connect Workshop - EnglishTanzu Developer Connect Workshop - English
Tanzu Developer Connect Workshop - English
 
Virtual Developer Connect Workshop - English
Virtual Developer Connect Workshop - EnglishVirtual Developer Connect Workshop - English
Virtual Developer Connect Workshop - English
 
Tanzu Developer Connect - French
Tanzu Developer Connect - FrenchTanzu Developer Connect - French
Tanzu Developer Connect - French
 
Simplify and Scale Enterprise Apps in the Cloud | Dallas 2023
Simplify and Scale Enterprise Apps in the Cloud | Dallas 2023Simplify and Scale Enterprise Apps in the Cloud | Dallas 2023
Simplify and Scale Enterprise Apps in the Cloud | Dallas 2023
 
SpringOne Tour: Deliver 15-Factor Applications on Kubernetes with Spring Boot
SpringOne Tour: Deliver 15-Factor Applications on Kubernetes with Spring BootSpringOne Tour: Deliver 15-Factor Applications on Kubernetes with Spring Boot
SpringOne Tour: Deliver 15-Factor Applications on Kubernetes with Spring Boot
 
SpringOne Tour: The Influential Software Engineer
SpringOne Tour: The Influential Software EngineerSpringOne Tour: The Influential Software Engineer
SpringOne Tour: The Influential Software Engineer
 
SpringOne Tour: Domain-Driven Design: Theory vs Practice
SpringOne Tour: Domain-Driven Design: Theory vs PracticeSpringOne Tour: Domain-Driven Design: Theory vs Practice
SpringOne Tour: Domain-Driven Design: Theory vs Practice
 
SpringOne Tour: Spring Recipes: A Collection of Common-Sense Solutions
SpringOne Tour: Spring Recipes: A Collection of Common-Sense SolutionsSpringOne Tour: Spring Recipes: A Collection of Common-Sense Solutions
SpringOne Tour: Spring Recipes: A Collection of Common-Sense Solutions
 

Último

%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
masabamasaba
 
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
masabamasaba
 
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
VictoriaMetrics
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
masabamasaba
 
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
masabamasaba
 

Último (20)

%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
 
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
 
WSO2CON 2024 - How to Run a Security Program
WSO2CON 2024 - How to Run a Security ProgramWSO2CON 2024 - How to Run a Security Program
WSO2CON 2024 - How to Run a Security Program
 
WSO2Con2024 - GitOps in Action: Navigating Application Deployment in the Plat...
WSO2Con2024 - GitOps in Action: Navigating Application Deployment in the Plat...WSO2Con2024 - GitOps in Action: Navigating Application Deployment in the Plat...
WSO2Con2024 - GitOps in Action: Navigating Application Deployment in the Plat...
 
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
 
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
WSO2CON 2024 Slides - Unlocking Value with AI
WSO2CON 2024 Slides - Unlocking Value with AIWSO2CON 2024 Slides - Unlocking Value with AI
WSO2CON 2024 Slides - Unlocking Value with AI
 
Artyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptxArtyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptx
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
Announcing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK SoftwareAnnouncing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK Software
 
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open SourceWSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
 
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
 
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
 
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
 
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
 
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
 
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
 

Integrate Machine Learning into Your Spring Application in Less than an Hour

  • 1. 1© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved | 1© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved | With Deep Java Library Hermann Burgmeier Mikhail Shapirov Qing Lan Vaibhav Goel Integrate Machine Learning into Your Spring Boot Application in Less than an Hour
  • 2. 2© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved | Put machine learning in the hands of all developers
  • 3. 3© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved | MACHINE LEARNING IN 2020 • ML is a top priority for many organizations in 2020 • ML pulls through more compute and data (it can pull it away to another cloud too) • Tens of thousands of customers are already running ML on AWS. It’s real and happening now in your accounts.
  • 4. 4© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved | COMMON CHALLENGES • Skills gap—not enough people can build ML models • ML model building is a time-consuming and complex process • Finding the right business use cases that could benefit from ML
  • 5. 5© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved | Easier to build Easier to scale Easier to apply
  • 6. 6© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved | The AWS ML Stack Broadest and most complete set of Machine Learning capabilities VISION SPEECH TEXT SEARCH CHATBOTS PERSONALIZATION FORECASTING FRAUD DEVELOPMENT CONTACT CENTERS Ground Truth Augmented AI ML Marketplace Neo Built-in algorithms Notebooks Experiments Model training & tuning Debugger Autopilot Model hosting Model Monitor Deep Learning AMIs & Containers GPUs & CPUs Elastic Inference Inferentia (Inf1 instance) FPGA Amazon Rekognition Amazon Polly Amazon Transcribe +Medical Amazon Comprehend +Medical Amazon Translate Amazon Lex Amazon Personalize Amazon Forecast Amazon Fraud Detector Amazon CodeGuru AI SERVICES ML SERVICES ML FRAMEWORKS & INFRASTRUCTURE Amazon Textract Amazon Kendra Contact Lens For Amazon Connect SageMaker Studio IDE NEW NEW! NEW! NEW! NEW! NEW! NEW! NEW! NEW! NEW! NEW! Amazon SageMaker
  • 7. 7© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved | The AWS ML Stack Broadest and most complete set of Machine Learning capabilities VISION SPEECH TEXT SEARCH CHATBOTS PERSONALIZATION FORECASTING FRAUD DEVELOPMENT CONTACT CENTERS Ground Truth Augmented AI ML Marketplace Neo Built-in algorithms Notebooks Experiments Model training & tuning Debugger Autopilot Model hosting Model Monitor Deep Learning AMIs & Containers GPUs & CPUs Elastic Inference Inferentia (Inf1 instance) FPGA Amazon Rekognition Amazon Polly Amazon Transcribe +Medical Amazon Comprehend +Medical Amazon Translate Amazon Lex Amazon Personalize Amazon Forecast Amazon Fraud Detector Amazon CodeGuru AI SERVICES ML SERVICES ML FRAMEWORKS & INFRASTRUCTURE Amazon Textract Amazon Kendra Contact Lens For Amazon Connect SageMaker Studio IDE NEW NEW! NEW! NEW! NEW! NEW! NEW! NEW! NEW! NEW! NEW! Amazon SageMaker
  • 8. 8© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved | 8© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved | Deep Learning in Java with DJL
  • 9. 9© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved | DJL – The Machine Learning framework in Java • API - Designed for Java • Multithread support and memory control • Engine Agnostic: Write Once, Run Anywhere (MXNet, PyTorch, TensorFlow) • ModelZoo: 70+ pretrained models for out of box deployment • AWS actively contributes to Open Source ML projects
  • 10. 10© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved | DJL – Build AI Application with no ML Experience • DJL on Android device • Easy Deployment • 70+ models out of box deployment in applications
  • 11. 11© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved | Why should you use DJL? • Most enterprise customers using Java • Existing Java API for Deep Learning is painful • Deploy ML in Java is challenging - Hard to maintain • Java community lacks DL standard • No single standard in Java DL packages • DL with strongly typed language • Service code - readability and reliability
  • 12. 12© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved | DJL – Key advantage • Easy: 10 line inference setup • Minimum dependency requirement • Fast: up to 2x performance boost on small model inference. Used by Ads, query understanding and image classification • Large scale: Offline data processing with 800M inference load on Apache Spark. Online streaming real-time processing (AWS Kinesis, Apache Flink …) • Stable: 100+ hour benchmark test on continuous inference call.
  • 13. 13© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved | DJL – Easy Interface for Java Developers • DJL Live Jshell • DJL interactive console
  • 14. 14© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved | DJL for training • Engine ready: MXNet and PyTorch • Built-in metrics: Built-in metrics system to easy collect training information • Dataset ready: Built-in dataset for CV and NLP • Model ready: Built-in CV and NLP models • Multi-GPU support: Support training on Multi-GPU • Transfer learning: Use your existing models to do transfer learning • Jupyter Notebook Support (CPU/GPU)
  • 15. 15© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved | 15© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved | DJL Customer Study
  • 16. 16© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved | Amazon Advertising • Multiple offerings on and off Amazon pages • Sponsored ads (Sponsored Brands, Sponsored Display, Sponsored Products, Stores) • Display ads • Video ads • Amazon DSP • Sponsored Products • Help shoppers discover and find products across Amazon's vast product selection. • Advertisers promote their products on search result and product pages to help increase reach and grow their business.
  • 17. 17© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved | Sponsored Products
  • 18. 18© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved | Machine Learning in Sponsored Products • 100s of machine learning (ML) models deployed globally for many use cases like click-through rate prediction. • More use cases require ML in advertising. New data science teams and models emerge constantly. • Different teams prefer different ML frameworks. • Models are hosted in a Java-based model hosting service. • Modern software engineering techniques like strong typing and dependency Injection. • Java stack is well integrated in the operational safety frameworks.
  • 19. 19© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved | DJL Usage in Sponsored Products • With DJL the scientists building the model can choose the best ML framework for them and their needs. • New ML frameworks supported by DJL can be easily integrated into our stack. • DJL enables us to run models built with different ML frameworks side- by-side in the same JVM without infrastructure changes. • DJL Translators allows us to keep feature generation independent of ML framework used for a model.
  • 20. 20© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved | Amazon Customer Behavior Analytics • Provides best-in-class targeting for any Amazon product or service to drive customer engagement • Helps to provide personalized marketing to customers • Email campaigns • Social Ads • Website banners • Identify customer’s propensity to take action in various product categories
  • 21. 21© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved | Machine Learning in Customer Behavior Analytics • Uses a multi-label classification model in MXNet for building propensity models • A single model is used for thousand of product categories • Use high dimensional feature data • Hundreds of Thousands of features per customer • The team consists of a mix of software development engineers and research scientists • Science team prefers using Python • Engineering team prefers using Java/Scala
  • 22. 22© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved | DJL Usage in Customer Behavior Analytics • With DJL • Science team can use MXNet Python APIs to build the model • Engineering team uses DJL to run inference using Apache Spark with Scala • DJL decoupled our system from ML framework • DJL easily handled high dimensional data • DJL reduced batch inference time by 85% • From 24 hours to 3.5 hours
  • 23. 23© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved | DJL Spring Boot Starter • Provides more native experience for Spring Developers • Handles dependency management for inference • Auto-configuration option for model look up and predictor wiring
  • 24. 24© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved | DJL Spring Boot Dependency Management <parent> <artifactId>spring-boot-starter-parent</artifactId> <groupId>org.springframework.boot</groupId> </parent> <properties> <jna.version>5.3.0</jna.version> <!--Required to override default JNA version for Spring Boot parent--> </properties> <dependencies> <dependency> <groupId>ai.djl.spring</groupId> <artifactId>djl-spring-boot-starter-mxnet-linux_86_64</artifactId> <version>{djl.version}</version> </dependency> </dependencies>
  • 25. 25© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved | DJL Spring Boot Auto <Platform> Dependency plugins { id("org.springframework.boot") } repositories { mavenCentral() } dependencies { implementation("ai.djl.spring:djl-spring-boot-starter-pytorch-auto") ... }
  • 26. 26© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved | DJL Spring Boot Auto-Configuration Maven: <dependency> <groupId>ai.djl.spring</groupId> <artifactId>djl-spring-boot-starter-autoconfigure</artifactId> <version>{djl.version}</version> </dependency> Gradle: dependencies { implementation("ai.djl.spring:djl-spring-boot-starter-autoconfigure :${djl.starter.version}") ... }
  • 27. 27© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved | DJL Spring Boot Configuration - application.yml/application.properties Access to the model zoo allows selection of application types (or inference types) from the following set: • QUESTION_ANSWER(NLP.QUESTION_ANSWER), TEXT_CLASSIFICATION(NLP.TEXT_CLASSIFICATION), IMAGE_CLASSIFICATION(CV.IMAGE_CLASSIFICATION), OBJECT_DETECTION(CV.OBJECT_DETECTION), ACTION_RECOGNITION(CV.ACTION_RECOGNITION), INSTANCE_SEGMENTATION(CV.INSTANCE_SEGMENTATION), POSE_ESTIMATION(CV.POSE_ESTIMATION), SEMANTIC_SEGMENTATION(CV.SEMANTIC_SEGMENTATION);
  • 28. 28© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved | DJL Spring Boot Configuration djl: # Define application type application-type: OBJECT_DETECTION # Define input data type, a model may accept multiple input data type input-class: ai.djl.modality.cv.Image # Define output data type, a model may generate different out put output-class: ai.djl.modality.cv.output.DetectedObjects # Define filters that matches your application's need model-filter: size: 512 backbone: mobilenet1.0 # Override default pre-processing/post-processing behavior arguments: threshold: 0.7
  • 29. 29© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved | DJL Spring Boot: Using Predictors Inject predictor given for the specified model and input/output: @Resource private Supplier<Predictor<Image, DetectedObjects>> predictorProvider; @Resource private ImageFactory imageFactory; // convenience factory for images Use with try-with-resources: try (var predictor = predictorProvider.get()) { var results = predictor.predict(imageFactory.fromFile(("/myimage.jpg"))); for(var result : results.items()) { LOG.info("results: {}", result.toString()); } }
  • 30. 30© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved | Containerize your Spring Boot Application jib { from.image = "adoptopenjdk/openjdk13:debian" to.image = "{repository-spec}/djl- spring-boot-app" to.tags = setOf(version.toString().plus("-") .plus(inferredClassifier).plus("-") .plus(commitHash)) } --- $./gradlew jib
  • 31. 31© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved | CD Cycle 1. Build 2. Upload to Container Registry 3. Run on Kubernetes (staged)
  • 32. 32© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved | GitOps with EKS and Team Collaboration ArgoCD GitHub Repos App of apps
  • 33. 33© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved | DJL Spring Boot: What is next? - Integrate DJL functionality - Include training (and transfer learning) with DJL Spring Boot Starter - Create solutions and workshops with full CI/CD and training/inference feedback loop and multi-tenancy - Running on EKS with GPU optimized instances
  • 34. 34© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved | DJL - Future • Android Support: Creating Android-based training and inference apps with DJL • Book – Dive into Deep Learning (Java Edition) • Integrate with more AWS Services (EMR, Lambda, etc…) • Federate Learning with DJL (Work in Progress) • Reinforcement Learning with DJL (work in Progress) • Distributed Inference on GPU support
  • 35. 35© 2020 Amazon Web Services, Inc. or its affiliates. All rights reserved | References Resources and Documentation: https://djl.ai/ https://docs.djl.ai/ Source Code: https://github.com/awslabs/djl/ https://github.com/awslabs/djl-spring-boot-starter https://github.com/awslabs/djl-spring-boot-starter-demo