../../assets/image/logo-proactive-machine-learning.png

ProActive AI Orchestration (PAIO) is an interactive graphical interface that enables developers and data scientists to quickly and easily build, train, and deploy machine learning models at any scale. It provides a rich set of generic machine learning tasks that can be connected together to build basic and complex machine learning workflows for various use cases such as: fraud detection, text analysis, online offer recommendations, prediction of equipment failures, facial expression analysis, etc. These tasks are open source and can be easily customized according to your needs. PAIO can schedule and orchestrate executions while optimising the use of computational resources. Usage of resources (e.g. CPU, GPU, local, remote nodes) can be quickly monitored.

This tutorial will show you how to:

  1. Create and optimize your machine learning workflow using AutoML.
  2. Submit it to the scheduler and monitor its execution.
  3. Analyze the job results using the Job Analytics.

1 Create and optimize your Workflow Using AutoML

Following the below instructions, you will be able to learn how to create and optimize your machine learning workflow using AutoML. Slide through the images for the steps illustration.

  1. Open ProActive Workflow Studio home page.
  2. Create a new workflow using the Create button.
  3. Click on Untitled workflow 1.
  4. Change palette preset to Deep Learning.
  5. Go to Ai Auto ML Optimization bucket.
  6. Drag and drop the Python_Task.
  7. Go to https://github.com/ow2-proactive/ai-examples/blob/master/keras/mnist_cnn.py repository.
  8. Copy all code.
  9. Click in the Task Implementation menu.
  10. Click on the Edit button.
  11. Paste all the code in YOUR CODE HERE section.
  12. Go to DEFAULT PARAMETERS section in the code.
  13. Replace OPTIMIZER='Adam' variable by BATCH_SIZE=128.
  14. Go to INPUT FROM AUTOML section in the code.
  15. Replace OPTIMIZER by BATCH_SIZE.
  16. Go to OUTPUT FROM AUTOML section in the code.
  17. Find and rename 'loss=score[0]' and 'acc=score[1]'.
  18. Click on the Save & Close button.
  19. Find and click on the Workflow Variables menu.
  20. Click on SEARCH_SPACE.
  21. Put {"BATCH_SIZE": {"choice": [32, 64, 128, 512]}} in the Value.
  22. Click on the OK button to close.
  23. Click on INPUT_VARIABLES.
  24. Put {"BATCH_SIZE": 128} in the Value.
  25. Click on OK button to close.
  26. Click in the Catalog menu.
  27. Click on the Publish current Workflow to the Catalog button.
  28. Click on your bucket name (e.g. firstname_workflows).
  29. Click on Publish to save your workflow.

2 Execute and Visualize the Job

Following the below instructions, you will be able to execute your workflow and view the results. Slide through the images for the steps illustration.

  1. Click on the Execute button.
  2. Click in the Scheduling & Orchestration button to track the workflow execution progress.
  3. Click on your job id and track the progress of your workflow execution.

3 AutoML with Job Analytics

Following the below instructions, you will be able to tune your workflow and analyze the obtained results using the Job Analytics. Slide through the images for the steps illustration.

  1. Go back to ProActive Workflow Studio homepage.
  2. Create a new workflow using Create button.
  3. Click on Untitled workflow 1.
  4. Go to Ai Auto ML Optimization bucket.
  5. Drag and drop the Distributed_Auto_ML task.
  6. Find and click on the Workflow Variables menu.
  7. Click on TARGET_WORKFLOW.
  8. Put bucket and workflow name in the TARGET_WORKFLOW value (e.g. firstname_workflows/Python_Task).
  9. Click on the OK button to close.
  10. Click on MAX_ITERATIONS.
  11. Put the maximum of iterations in the MAX_ITERATIONS value.
  12. Click on the OK button to close.
  13. Click on PARALLEL_EXECUTIONS_PER_ITERATION.
  14. Put the number of parallel samples per loop of iterations PARALLEL_EXECUTIONS_PER_ITERATION value.
  15. Click on the OK button to close.
  16. Choose a TUNING_ALGORITHM (e.g. Random).
  17. Click on the Execute button.
  18. Click on the Automation Dashboard button to track the workflow execution progress.
  19. Click on the Scheduling & Orchestration menu.
  20. Click on the Analytics menu.
  21. Click on the Job Analytics menu.
  22. Click on the Search button.
  23. Visualize jobs progress and result.
When done with this tutorial, you can move on to: