© Hitachi, Ltd. 2019. All rights reserved.
Hitachi, Ltd. OSS Solution Center
Yusuke Furuyama
4/23/2019 NEAOSS WG1
AI platform surveyFeatures of Acumos AI
© Hitachi, Ltd. 2019. All rights reserved. 1
Contents
1. Why we evaluated Acumos AI?
2. What is Acumos AI?
3. Checking the Features of Acumos AI
4. Summary
© Hitachi, Ltd. 2019. All rights reserved.
1. Why we evaluated Acumos AI?
2
• AI Innovation➢ Various algorithms have been developed (ex. Deep Learning)
➢ Lots of benefits from AI.
➢ In Hitachi, the number of AI project is increasing
• Enterprise Customer’s needs and challenges for AI application development➢ Needs for on-premise deployment
• Some cloud services for AI application development / deployment
➢ Leveraging AI models developed by different libraries(ex. TensorFlow, scikit-learn)
• API is different among libraries
➢ Getting AI models trained by someone
• Not so many places / tools for sharing the models (especially for private sharing)
According to official docs, Acumos AI seems to be useful to meet these needs
© Hitachi, Ltd. 2019. All rights reserved. 3
Contents
1. Why we evaluated Acumos AI?
2. What is Acumos AI?
3. Checking the Features of Acumos AI
4. Summary
© Hitachi, Ltd. 2019. All rights reserved.
2-1. Overview of Acumos AI
4
・OSS AI platform under Linux Foundation・Makes it easy to build, share, deploy AI apps
- Package tool kits (TensorFlow, scikit-learn) and models with a common API - Provide marketplace for sharing AI models privately (among Acumos AI systems)
and publicly - Container based easy deployment to both public cloud and private environment
https://www.acumos.org/wp-content/uploads/sites/61/2018/03/acumos_open_source_ai_platform_032518.pdf
© Hitachi, Ltd. 2019. All rights reserved.
2-2. Development on Acumos AI
5
①Create the model with common API from the model trained by various ML/DL libraries②Dockerize the model and register to Acumos AI ③Combine multiple models on Design Studio (GUI dev tool) to build AI app④Deploy AI app to production environment
Common API
Pre-trainedModel
Model
Model
ML/DL libraries
Wrapped model
Portal
Creating docker image
docker imagedocker image
docker image
ML/DL libraries
Publish / Share
Developing AI application Azure / Private Kubernetes
GUI dev tool
docker container(Model)
docker container(Controller)
docker container(Model)
Onboard model
Creators of AI models
Application developers
Deployment
Infrastructure Engineers ProductionEnvironment
Additional External Dataset
AdditionalTraining
Transfer learning(Currently not implemented)
AI application
© Hitachi, Ltd. 2019. All rights reserved.
2-3. Features of Acumos AI
6
1. Difference among ML/DL libraries is wrapped by common API2. Dockerized model/apps for easy app development and easy deployment 3. GUI dev tool (Design Studio) for visual programming4. Sharing models/apps privately/publicly on the Market place
Common API
Pre-trainedModel
Model
Model
ML/DL libraries
Wrapped model
Portal
Creating docker image
docker imagedocker image
docker image
ML/DL libraries
Publish / Share
Developing AI application Azure / Private Kubernetes
GUI dev tool
docker container(Model)
docker container(Controller)
docker container(Model)
Onboard model
Creators of AI models
Application developers
Deployment
Infrastructure Engineers ProductionEnvironment
1. Common APIfor models
2. Docker container
3. GUI development tool
4. Market place
Additional External Dataset
AdditionalTraining
Currently not implemented
AI application
© Hitachi, Ltd. 2019. All rights reserved. 7
Contents
1. Why we evaluated Acumos AI?
2. What is Acumos AI?
3. Checking the Features of Acumos AI
4. Summary
© Hitachi, Ltd. 2019. All rights reserved.
3-1. Features we checked
8
• Creating models with common API
➢ Used the models for face-privacy-filter tool
• Creating docker images of models
• Development AI application with Design Studio
➢ Combined 2 models on Design Studio as a development
• Deployment of developed AI application
➢ To private Kubernetes environment
• Using the functions of developed AI application from the photo
editing application
Tried following features along the development steps on previous chapter
© Hitachi, Ltd. 2019. All rights reserved.
3-2. About photo editing application
9
Developed AI applicationFrontend web application (Web server: Python SimpleHTTPServer)
Input(Photo)
Output(Pixelatedphoto)
Face Detect Model
Face Pixelation Model
REST API
© Hitachi, Ltd. 2019. All rights reserved.
3-3. Creation the model with common API / Dockerize
10
Demo
© Hitachi, Ltd. 2019. All rights reserved.
3-4. Development AI application with Design Studio
11
Demo
© Hitachi, Ltd. 2019. All rights reserved.
3-5. Deployment of developed AI application
12
Demo
© Hitachi, Ltd. 2019. All rights reserved.
3-6. Pixelate faces on Photo
13
Demo
© Hitachi, Ltd. 2019. All rights reserved. 14
3-7. Difficulties in using Acumos AI
• Couldn’t make docker images of AI models behind proxy
environment
➢ Failed to download some files from Internet because of proxy
➢ Acumos AI (Athena release) doesn’t have any settings for proxy
• After restarting docker, we couldn’t connect Acumos AI portal
➢ To connect, we had to uninstall Acumos AI and re-install
Acumos AI project announces that features for
・ Using Acumos AI behind the proxy・ Training models
will be implemented in next release(*)
This behavior seems to be a bug, so we’re going to escalate this issue to Acumos AI project
• Training hasn’t implemented yet
(*) https://wiki.acumos.org/display/REL/Project+Status+in+Boreas+Releasehttps://jira.acumos.org/browse/ACUMOS-940
© Hitachi, Ltd. 2019. All rights reserved. 15
Contents
1. Why we evaluated Acumos AI?
2. What is Acumos AI?
3. Checking the Features of Acumos AI
4. Summary
© Hitachi, Ltd. 2019. All rights reserved.
4. Summary
16
• Confirmed following features are implemented
➢ Creation the model with common API
➢ Creation the docker image of the model
➢ GUI development tool for AI application
➢ Deployment of AI application to Azure / on-premise k8s environment
➢ Market place for sharing models and apps privately / publicly
Acumos AI is useful to meet the following needs
・ Deployment of AI apps to on-premise environment
・ Leveraging AI models developed by different DL/ML libraries
・ Getting AI models trained by someone in a organization
Training on Acumos AI and Using Acumos AI behind
proxy environment will be implemented next release
・ Confirm if these features are implemented in next release
・ If these features will be implemented, we can say Acumos AI is
suitable for AI app development of enterprise customers
© Hitachi, Ltd. 2019. All rights reserved. 17
END
© Hitachi, Ltd. 2019. All rights reserved.
Trademarks
18
• The Linux Foundation® is registered trademark of The Linux Foundation
• Other brand names and product names used in this material are trademarks,
registered trademarks, or trade names of their respective holders.
© Hitachi, Ltd. 2019. All rights reserved.
Appendix. Creation the model with common API / Dockerize
20
① Select [ON-BOARDING MODEL] from the menu of Acumos AI portal and click ”ON-BOARDING BY WEB”
② Dockerize the model by Click “Browse” and select the model → Click ”Upload”→ Click ”On-Board Model”
© Hitachi, Ltd. 2019. All rights reserved. 21
Appendix. Creation the model with common API/ Dockerize
③ If creating docker image finishes successfully, rightmost icon will be changed like below
④ Select “MY MODELS”, then we can see the docker image created from the model
© Hitachi, Ltd. 2019. All rights reserved.
Appendix. Development AI application w/ Design Studio
22
① Select the model for development from “MY MODELS” then click “Manage My Models”
② Select the “Publish to Public Marketplace” and fill out the required information then click “Submit To Publication”
© Hitachi, Ltd. 2019. All rights reserved.
Appendix. Development AI application w/ Design Studio
23
③ After registering the model to the marketplace, the rightmost icon will be changed like below
④ Select “MARCKETPLACE”, then we can see the model on the marketplace
© Hitachi, Ltd. 2019. All rights reserved.
Appendix. Development AI application w/ Design Studio
24
⑤ Select “DESIGN STUDIO”, then open “Models” tab
⑥ Develop AI app by connecting AI models on “DESIGN STUDIO”, then save the application
© Hitachi, Ltd. 2019. All rights reserved.
Appendix. Development AI application w/ Design Studio
25
⑦ Select saved AI app from “My Solutions”, then click “Validate” tab
⑧ After validation, you can see developed AI app from “MY MODELS” → “MY UNPUBLISHED MODELS”
© Hitachi, Ltd. 2019. All rights reserved.
Appendix. Deployment of developed AI application
26
② Select “Publish to Public Marketplace”, then set required fields. After setting, click “Submit to Publication”
① Select application for publish from “MY MODELS”, then click “Manage My Model”
© Hitachi, Ltd. 2019. All rights reserved.
Appendix. Deployment of developed AI application
27
③ After registering the app to Marketplace, you can see the rightmost icon is changed like below
④ Select “MARKETPLACE”, then you can see registered app
© Hitachi, Ltd. 2019. All rights reserved.
Appendix. Deployment of developed AI application
28
⑤ Select application for deployment from “MY MODELS”, then click “Manage My Model”
⑥ Select “Export/Deploy to Cloud”, then click “Export To Cloud”→”Deploy to local” and download zip file of AI application from “Download Solution Package”
© Hitachi, Ltd. 2019. All rights reserved.
Appendix. Deployment of developed AI application
29
# unzip solutin.zip -d /tmp/solution
# cd /tmp/solution
# docker login nexus3.acumos.org:10001 -u docker -p docker# ./deploy.sh . <username of docker-proxy> <password of docker-proxy>
⑦ Send downloaded zip file to the demo environment⑧ Extract the zip file on the demo environment
⑨ Deploy AI application by the following commands
Top Related