Digital Developer Conference: Hybrid Cloud. On Sep 22 & 24, start your journey to OpenShift certification. Free registration

Accelerate your deep learning and machine learning

This article is part of the Learning path: Get started with Watson Machine Learning Accelerator series.

Level Topic Type
100 An introduction to Watson Machine Learning Accelerator Article
101 Classify images with Watson Machine Learning Accelerator Article + notebook
201 Elastic Distributed Training in Watson Machine Learning Accelerator Article + notebook
202 Drive higher GPU utilization and throughput Tutorial
301 Accelerate your deep learning and machine learning Article + notebook

Introduction

IBM Watson® Studio and IBM Watson Machine Learning (WML) in IBM Cloud Pak® for Data combine with IBM Watson Machine Learning Accelerator to form an enterprise AI platform for accelerating the model training process. The platform provides you with greater speed and accuracy to drive value and reduce the time it takes to bring a model to market. Model training with WML Accelerator is GPU-accelerated and can scale up automatically, which allows for the allocation of more GPUs when needed. A data scientist can get results faster and reach the accuracy level needed with our enterprise AI platform. The technologies work in concert, as follows:

  • IBM Watson Studio and WML in IBM Cloud Pak for Data provide the tools you need to build, train, and deploy models.
  • WML Accelerator optimizes the speed of training by automating hyperparameter searches in parallel.
  • WML Accelerator includes an elastic distributed training engine, which helps with distributing model training across multiple GPUs and compute nodes. The distribution of training jobs is elastic, meaning that GPUs are dynamically allocated, and adding or removing GPUs does not interrupt running jobs. Because the scheduler dynamically allocates GPUs, you do not need to code GPU topology into the model. Instead, elastic distributed training handles the distribution for models that are built on standalone systems and makes the distribution apparent to the data scientist.

In this article, you will learn how to:

  • Configure and enable the link between IBM Watson Studio in IBM Cloud Pak for Data and IBM WML Accelerator.
  • Use methods for submitting deep learning workload from IBM Watson Studio to IBM WML Accelerator, including automating model hyperparameter search through the WML Accelerator Rest API, elastically distributing training with the elastic distributed training engine through the Experiment Builder UI in Watson Studio, and training and deploying a model through the WML Python client using the WML API.

Installing and configuring

To install and configure IBM Watson Studio and IBM WML Accelerator, consider these options. Learn about Installing with WML or Watson Studio and configuring the link between IBM Watson Studio in IBM Cloud Pak for Data and IBM WML Accelerator.

Figure 1. Set up and configuration Setup and configuration

How to use it

Depending on how your WML Accelerator cluster is set up, there are multiple methods for taking advantage of WML Accelerator when it comes to deep learning workload submission. If you simply have a WML Accelerator cluster without linking it to Watson Studio and Watson Machine Learning, you can access the WML Accelerator API directly. However, if your WML Accelerator cluster is linked to Watson Studio and WML in IBM Cloud Pak for Data, you will have additional deep learning workload submission methods available.

Figure 2. Best practice Best practice

The key differences between these methods are the underlying access to WML Accelerator. It might be WML Accelerator API direct or through the WML API.

Watson Machine Learning Accelerator API

If using the WML Accelerator REST API directly, you can launch your Jupyter Notebook by accessing the WML Accelerator cluster using a network connection established by the WML Accelerator Rest API directly. This Jupyter Notebook can be on any platform, such as locally on your laptop or part of a wider set up as Watson Studio in Cloud Pak for Data.

Try out the attached notebook, which demonstrates the automation of model hyperparameter search through WML Accelerator Rest API.

You can find more details about the WML Accelerator Rest API in IBM Knowledge Center:

Watson Machine Learning API

The next two methods are available only where there is a connection between IBM Cloud Pak for Data and WML Accelerator. Both these methods use the WML API indirectly, either using the Watson ML Python client or the Experiments Builder in Watson Studio.

Watson ML Python client

This method is based on a Jupyter Notebook as part of Watson Studio in Cloud Pak for Data. This uses the WML API, which can be accessed either directly through the API code or the Python client.

Try out the CPD 2.5.0 notebook and CPD 3.0.1 notebook, which executes the WML Python client for training the model with WML Accelerator and deploying the model with WML scoring service.

You can find more details on the WML Python client in the Watson ML documentation.

Experiment Builder in Watson Studio

This method uses the WML API indirectly. It is a method that uses the Watson Studio UI — where, once the data is in place and the code for the training workload has been created — models can be created from the Experiment Builder UI in Watson Studio. With the right metric-sharing libraries in place, it is even possible to see reports of accuracy from training runs.

Check out the Watson Deep Learning Experiment UI for submitting distributed training for more information.

Conclusion

IBM Watson Studio and IBM WML in IBM Cloud Pak for Data 3.0.1 and IBM WML Accelerator together 1.2.2 form a strong enterprise AI platform foundation. This foundation can help you get results faster and improve the accuracy level of models. In this article, we described how you can accelerate model training with WML Accelerator using multiple methodologies. For more details, refer to the IBM Cloud Pak for Data 3.0.1 and Watson Machine Learning Accelerator 1.2.2 documentation.