Data & AI

2nd Feb 2023

Machine Learning using Google’s Vertex AI

Share:

Machine Learning using Google’s Vertex AI

What is Vertex AI ?

“Vertex AI is Google’s platform which provides many Machine learning services such as training models using AutoML or Custom Training.”


Image by Google

Features of Vertex AI

We use Vertex AI to perform the following tasks in the ML workflow

  • Creation of dataset and Uploading data
  • Training ML model
  • Evaluate model accuracy
  • Hyperparameters tuning (custom training only)
  • Storing model in Vertex AI.
  • Deploying trained model to endpoint for predictions.
  • Send prediction requests to endpoint.
  • Managing models and endpoints.

To know the workflow of Vertex AI we will train a Classification model “Dogs vs Cat” using Vertex AI’s AutoML feature.

Step 1: Creating Dataset

We will download the dataset from Kaggle. In the downloaded zip file there are two zip files train.zip and test.zip. Train.zip contains the labelled images for training.

There are about 25,000 images in the train.zip file and 12,500 in the test.zip file. For this project we will only use 200 cat and 200 dog images to train. We will use the test set to evaluate the performance of our model.

After extracting the data, I uploaded the images to the google cloud storage bucket called dogs_cats_bucket1 which I have created at us-central1 region. Images are stored in two folders train and test in the bucket.

Best Read: Top 10 AI Challenges

Now we need to create a csv file with the images address and label for that I have written the following lines of code.

from google.cloud import storage

import pandas as pd

import os

#Authentication using service account.

os.environ[‘GOOGLE_APPLICATION_CREDENTIALS’] =”/content/dogs-vs-cats-354105-19b7b157b2b8.json”

BUCKET=’dogs_cats_bucket1′

DELIMITER=’/’

TRAIN_PREFIX=’train/’

TRAIN_BASE_PATH = f’gs://{BUCKET}/{TRAIN_PREFIX}’

print(“Starting the import file generation process”)

print(“Process Details”)

print(f”BUCKET : {BUCKET}”)

storage_client = storage.Client()

data = []

print(“Fetchig list of Train objects”)

train_blobs = storage_client.list_blobs(BUCKET, prefix=TRAIN_PREFIX, delimiter=DELIMITER)

for blob in train_blobs:

label = “cat” if “cat” in blob.name else “dog”

full_path = f”gs://{BUCKET}/{blob.name}”

data.append({

‘GCS_FILE_PATH’: full_path,

‘LABEL’: label

})

df = pd.DataFrame(data)

df.to_csv(‘train.csv’, index=False, header=False)

After running the script on Jupyter Notebook, we have the required csv file, we will upload the file to the same storage bucket as well.

Now in the Vertex AI section go to Datasets and enable the Vertex AI API.

Click Create Dataset and name it. I have named it cat_dog_classification. We will select Image Classification (Single-label). Make sure the region is us-central1. Hit Create.

In the next section mark Select import files from Cloud Storage and select the train.csv from Browse. Hit Continue


 

Vertex AI tool 16 minutes to import data. Now we can see the data the Browse and Analyse tab.


 

Now we can train the model.

Step 2: Model Training

Go to Vertex AI, then to Training section and click Create. Make sure the region is us-central1.

In the Dataset select cat_dog_classification and keep default for everything else with Model Training Method as AutoML.

Click continue for the Model Details and Explainability with the default settings.

For Compute and Pricing give 8 maximum node hours.

Hit Start Training.

 

The model training is completed after 29 mins.

Step 3: Model Evaluation

By clicking on trained model, it will take us to the model stats page. Where we have stats like Precision-recall curve, Precision-recall by threshold and Confusion matrix.

With the above stats the model looks good.

Step 4: Model Deployment

Go to Vertex AI, then to the Endpoints section and click Create Endpoint. Make sure the region is us-central1.

Give dogs_cats as the name of Endpoint and click Continue.

In the Model Settings select cat_dog_classification as Model NameVersion 1 as Version and 2 as number of compute nodes.

Click Done and Create.

It takes about 10 minutes to deploy the model.

With this our model is deployed.

Step 5: Testing Model

Once the model is deployed, we can test the model by uploading the test image or creating Batch Prediction.

To Test the Model, we go to the Deploy and Test section on the Model page.

Click on the Upload Image to upload the test, Image.

With this we can see our model is working good on test images.

We can also connect to the Endpoint using Python and get the results.

For more details on our AI and ML services

Visit this link

This is the end of my blog. We have learned how to train an image classification model on Google’s Vertex AI using Auto ML feature. I have enjoyed every minute while working on it.

For the next article we will see how to train custom model on Vertex AI with TensorFlow.

Stay Tuned.

Author

Ganesh Ghadge

Share:

Latest Blogs

Staying Ahead in AI and Data: Leela’s Journey at Indium

Talent

14th Nov 2025

Staying Ahead in AI and Data: Leela’s Journey at Indium

Read More
Celebrating 15 Years of Engineering Possibilities: Padma Raja’s Story at Indium

Talent

14th Nov 2025

Celebrating 15 Years of Engineering Possibilities: Padma Raja’s Story at Indium

Read More
Modernize 3x Faster: A Smarter Path to Application Modernization with LIFTR.ai 

Product Engineering

12th Nov 2025

Modernize 3x Faster: A Smarter Path to Application Modernization with LIFTR.ai 

Read More

Related Blogs

Decentralized Inference: A Dual-Layer Architecture for Future AI Workloads

Data & AI

23rd Sep 2025

Decentralized Inference: A Dual-Layer Architecture for Future AI Workloads

Large Language Models (LLMs) have transformed natural language processing and generative AI solutions, but at...

Read More
Causal AI in Manufacturing: Tracing the ‘Why’ Behind Manufacturing Failures

Data & AI

19th Sep 2025

Causal AI in Manufacturing: Tracing the ‘Why’ Behind Manufacturing Failures

If you’ve ever stared at a Pareto chart that won’t stop reshuffling its bars every...

Read More
Under the Hood of Agentic AI: A Technical Perspective

Data & AI

19th Sep 2025

Under the Hood of Agentic AI: A Technical Perspective

The evolution from traditional AI to agentic AI is more than a shift in terminology-...

Read More