Quick start: Build and deploy a machine learning model with AutoAI
You can automate the process of building a machine learning model with the AutoAI tool. Read about the AutoAI tool, then watch a video and take a tutorial that’s suitable for beginners and does not require coding.
Your basic workflow includes these tasks:
- Open your sandbox project. Projects are where you can collaborate with others to work with data.
- Add your data to the project. You can add CSV files or data from a remote data source through a connection.
- Create an AutoAI experiment in the project.
- Review the model pipelines and save the desired pipeline as a model to deploy or as a notebook to customize.
- Deploy and test your model.
Read about AutoAI
The AutoAI graphical tool automatically analyzes your data and generates candidate model pipelines customized for your predictive modeling problem. These model pipelines are created iteratively as AutoAI analyzes your dataset and discovers data transformations, algorithms, and parameter settings that work best for your problem setting. Results are displayed on a leaderboard, showing the automatically generated model pipelines ranked according to your problem optimization objective.
Watch a video about creating a model using AutoAI
Watch this video to see how to create and run an AutoAI experiment based on the bank marketing sample.
This video provides a visual method to learn the concepts and tasks in this documentation.
Try a tutorial to create a model using AutoAI
This tutorial guides you through training a model to predict if a customer is likely subscribe to a term deposit based on a marketing campaign.
In this tutorial, you will complete these tasks:
- Task 1: Open a project.
- Task 2: Build and train the model.
- Task 3: Promote the model to a deployment space and deploy the trained model
- Task 4: Test the deployed model.
- Task 5: Create a batch job to score the model.
This tutorial will take approximately 30 minutes to complete.
Sample data
The sample data that is used in the guided experience is UCI: Bank marketing data used to predict whether a customer enrolls in a marketing promotion.
Tips for completing this tutorial
Here are some tips for successfully completing this tutorial.
Use the video picture-in-picture
The following animated image shows how to use the video picture-in-picture and table of contents features:
Get help in the community
If you need help with this tutorial, you can ask a question or find an answer in the watsonx Community discussion forum.
Set up your browser windows
For the optimal experience completing this tutorial, open Cloud Pak for Data in one browser window, and keep this tutorial page open in another browser window to switch easily between the two applications. Consider arranging the two browser windows side-by-side to make it easier to follow along.
Task 1: Open a project
You need a project to store the data and the AutoAI experiment. You can use your sandbox project or create a project.
-
From the Navigation Menu , choose Projects > View all projects
-
Open your sandbox project. If you want to use a new project:
-
Click New project.
-
Select Create an empty project.
-
Enter a name and optional description for the project.
-
Choose an existing object storage service instance or create a new one.
-
Click Create.
-
-
When the project opens, click the Manage tab and select the Services and integrations page.
-
On the IBM services tab, click Associate service.
-
Select your watsonx.ai Runtime instance. If you don't have a watsonx.ai Runtime service instance provisioned yet, follow these steps:
-
Click New service.
-
Select watsonx.ai Runtime.
-
Click Create.
-
Select the new service instance from the list.
-
-
Click Associate service.
-
If necessary, click Cancel to return to the Services & Integrations page.
-
For more information or to watch a video, see Creating a project.
Check your progress
The following image shows the new project.
Task 2: Build and train the model
To preview this task, watch the video beginning at 00:08.
Now that you have a project, you are ready to build and train the model using AutoAI. Follow these steps to create the AutoAI experiment, review the model pipelines, and select a pipeline to save as a model:
-
Click the Assets tab in your project, and then click New asset > Build machine learning models automatically.
-
On the Build machine learning models automatically page, complete the basic fields:
-
Click the Resource hub sample panel.
-
Select Bank marketing sample data, and click Next. The project name and description will be filled in for you.
-
Confirm that the watsonx.ai Runtime service instance that you associated with your project is selected in the watsonx.ai Runtime Service Instance field.
-
-
Click Create.
-
In this sample AutoAI experiment, you will see that the Bank marketing sample data is already selected for your experiment.
-
Review the preset experiment settings. Based on the data set and the selected column to predict, AutoAI analyzes a subset of the data and chooses a prediction type and metric to optimize. In this case, the prediction type is Binary Classification, the positive class is Yes, and the optimized metric is ROC AUC & run time.
-
Click Run experiment. As the model trains, you see an infographic that shows the process of building the pipelines.
For a list of algorithms, or estimators, available with each machine learning technique in AutoAI, see: AutoAI implementation detail.
-
After the experiment run is complete, you can view and compare the ranked pipelines in a leaderboard.
-
You can click Pipeline comparison to see how they differ.
-
Click the highest ranked pipeline to see the pipeline details.
-
Click Save as, select Model, and click Create. This saves the pipeline as a model in your project.
-
When the model is saved, click the View in project link in the notification to view the model in your project. Alternatively, you can navigate to the Assets tab in the project, and click the model name in the Models section.
Check your progress
The following image shows the model.
Task 3: Promote the model to a deployment space and deploy the trained model
To preview this task, watch the video beginning at 04:57.
Before you can deploy the model, you need to promote the model to a deployment space. Follow these steps to promote the model to a deployment space to deploy the model:
-
Click the Promote to deployment space icon .
-
Choose an existing deployment space. If you don't have a deployment space:
-
Click Create a new deployment space.
-
Provide a space name and optional description.
-
Select a storage service.
-
Select a machine learning service.
-
Click Create.
-
Click Close.
-
-
Select your new deployment space from the list.
-
Select the Go to the model in the space after promoting it option.
-
Click Promote.
Note: If you didn't select the option to go to the model in the space after promoting it, you can use the navigation menu to navigate to Deployments to select your deployment space and model. -
With the model open, click New deployment.
-
Select Online as the Deployment type.
-
Specify a name for the deployment.
-
Click Create.
-
-
When the deployment is complete, click the deployment name to view the deployment details page.
Check your progress
The following image shows the new deployment.
Task 4: Test the deployed model
To preview this task, watch the video beginning at 06:22.
Now that you have the model deployed, you can test that that online deployment using the user interface or through the watsonx.ai Runtime APIs. Follow these steps to use the user interface to test the model with new data:
-
Click the Test tab. You can test the deployed model from the deployment details page in two ways: test with a form or test with JSON code.
-
Click the JSON input tab, copy the following test data, and paste it to replace the existing JSON text:
{ "input_data": [ { "fields": [ "age", "job", "marital", "education", "default", "balance", "housing", "loan", "contact", "day", "month", "duration", "campaign", "pdays", "previous", "poutcome" ], "values": [ [ 27, "unemployed", "married", "primary", "no", 1787, "no", "no", "cellular", 19, "oct", 79, 1, -1, 0, "unknown" ] ] } ] }
-
Click Predict to predict whether a customer with the specified attributes is likely to sign up for a particular kind of account. The resulting prediction indicates that this customer has a high probability of not enrolling in the marketing promotion.
-
Click the X to close the Prediction results window.
Check your progress
The following image shows the results of testing the deployment. The values for your prediction might differ from the values in the following image.
Task 5: Create a batch job to score the model
Now that you have tested the deployed model with a single prediction, you can create a batch deployment to score multiple records at the same time.
Task 5a: Set up batch deployment
To preview this task, watch the video beginning at 07:00.
For a batch deployment, you provide input data, also known as the model payload, in a CSV file. The data must be structured like the training data, with the same column headers. The batch job processes each row of data and creates a corresponding prediction. Follow these steps to upload the payload data to the deployment space:
-
Copy and paste the following text into a text editor, and save the file as
bank-payload.csv
.age,job,marital,education,default,balance,housing,loan,contact,day,month,duration,campaign,pdays,previous,poutcome 30,unemployed,married,primary,no,1787,no,no,cellular,19,oct,79,1,-1,0,unknown 33,services,married,secondary,no,4789,yes,yes,cellular,11,may,220,1,339,4,failure 35,management,single,tertiary,no,1350,yes,no,cellular,16,apr,185,1,330,1,failure 30,management,married,tertiary,no,1476,yes,yes,unknown,3,jun,199,4,-1,0,unknown 59,blue-collar,married,secondary,no,0,yes,no,unknown,5,may,226,1,-1,0,unknown 35,management,single,tertiary,no,747,no,no,cellular,23,feb,141,2,176,3,failure 36,self-employed,married,tertiary,no,307,yes,no,cellular,14,may,341,1,330,2,other 39,technician,married,secondary,no,147,yes,no,cellular,6,may,151,2,-1,0,unknown 41,entrepreneur,married,tertiary,no,221,yes,no,unknown,14,may,57,2,-1,0,unknown 43,services,married,primary,no,-88,yes,yes,cellular,17,apr,313,1,147,2,failure 39,services,married,secondary,no,9374,yes,no,unknown,20,may,273,1,-1,0,unknown 43,admin.,married,secondary,no,264,yes,no,cellular,17,apr,113,2,-1,0,unknown 36,technician,married,tertiary,no,1109,no,no,cellular,13,aug,328,2,-1,0,unknown 20,student,single,secondary,no,502,no,no,cellular,30,apr,261,1,-1,0,unknown 31,blue-collar,married,secondary,no,360,yes,yes,cellular,29,jan,89,1,241,1,failure 40,management,married,tertiary,no,194,no,yes,cellular,29,aug,189,2,-1,0,unknown 56,technician,married,secondary,no,4073,no,no,cellular,27,aug,239,5,-1,0,unknown 37,admin.,single,tertiary,no,2317,yes,no,cellular,20,apr,114,1,152,2,failure 25,blue-collar,single,primary,no,-221,yes,no,unknown,23,may,250,1,-1,0,unknown 31,services,married,secondary,no,132,no,no,cellular,7,jul,148,1,152,1,other
-
Click your deployment space in the navigation trail.
-
Click the Assets tab.
-
Drag the bank-payload.csv file into the side panel, and wait for the file to upload.
Check your progress
The following image shows the Assets tab in the deployment space.
Task 5b: Create the batch deployment
To preview this task, watch the video beginning at 07:30.
To process a batch of inputs and have the output written to a file instead of displayed in real time, create a batch deployment job.
-
Go to the Assets tab in the deployment space.
-
Click the Overflow menu for your model, and choose Deploy.
-
For the Deployment type, select Batch.
-
Type a name for the deployment.
-
Choose the smallest hardware specification.
-
Click Create.
Check your progress
The following image shows batch deployment.
Task 5c: Create the batch job
To preview this task, watch the video beginning at 07:44.
The batch job runs the deployment. To create the job, you specify the input data and the name for the output file. You can set up a job to run on a schedule, or run immediately. Follow these steps to create a batch job:
-
On the deployment page, click New job.
-
Specify a name for the job, and click Next.
-
Select the smallest hardware specification, and click Next.
-
Optional: Set a schedule, and click Next.
-
Optional: Choose to receive notifications, and click Next.
-
On the Choose data screen, select the Input data:
-
Click Select data source.
-
Select Data asset > bank-payload.csv.
-
Click Confirm.
-
-
Back on the Choose data screen, specify the Output file:
-
Click Add.
-
Click Select data source.
-
Ensure that the Create new tab is selected.
-
For the Name, type
bank-output.csv
. -
Click Confirm.
-
-
Click Next for the final step.
-
Review the settings, and click Create and run to run the job immediately.
Check your progress
The following image shows the job details for the batch deployment.
Task 5d: View the output
To preview this task, watch the video beginning at 08:42.
Follow these steps to review the output file from the batch job.
-
Click the job name to see the status.
-
When the status changes to Completed, click your deployment space name in the navigation trail.
-
Click the Assets tab.
-
Click the bank-output.csv file to review the prediction results for the customer information that is submitted for batch processing. For each case, the prediction returned these customers are unlikely to subscribe to the bank promotion.
Check your progress
The following image shows the results of the batch deployment job.
Next steps
Now you can use this data set for further analysis. For example, you or other users can do any of these tasks:
Additional resources
-
Try these additional tutorials to get more hands-on experience with building models using AutoAI:
-
Try these other methods to build models:
-
View more videos.
-
Find sample data sets, projects, models, prompts, and notebooks in the Resource hub to gain hands-on experience:
Notebooks that you can add to your project to get started analyzing data and building models.
Projects that you can import containing notebooks, data sets, prompts, and other assets.
Data sets that you can add to your project to refine, analyze, and build models.
Prompts that you can use in the Prompt Lab to prompt a foundation model.
Foundation models that you can use in the Prompt Lab.
Parent topic: Quick start tutorials