Tracking Experiments with Vertex AI

Apr 13, 2023
Machine LearningVertex AIGoogle Cloud
Experiments

About Project

Objective

Keep track and analyze different ML model architectures, hyperparameters, and training environments.

Tools & Technologies

Vertex AI, Google Cloud, Machine Learning, Scikit-learn, LGBM, XGBoost, Boosted trees

Project Context and Sample Shared Details

I developed this code sample to support my team (Google engineers) in the technical delivery for a project I was leading. The project objective was to advise an FSI customer in migrating their ML platform from on-prem to Google Cloud. The seven-month project involved guiding the customer in building the cloud-based ML Platform where dozens of use cases would live, including the deployment of the first three use cases. I led the project, managed the customer relationship, oversaw the Google team's work, and ensured on-time, on-budget delivery with 100% customer satisfaction (as measured by the CSAT survey).
The project spanned many areas of the MLOps lifecycle, but my primary technical contribution was in Experiments and Explainable AI. This particular sample focuses on Experiments Tracking. The customer needed to track and analyze different ML model architectures, hyperparameters, and training environments. I decided to use Vertex AI Experiments autologging feature, a one-line code SDK capability which leverages MLflow to provide automatic metrics and parameters tracking, to fulfill this need. I delivered a technical workshop where I showed the customer how to use the feature and performed a live demo. Then, we did a hands-on session where each engineer from the customer side created a new experiment, trained a model for a real use case on the customer data, logged and analyzed the results.
The live demo was conducted with the notebook present in the below repo. It's a modified version of a Google Cloud official tutorial, where I adapted the models trained to make it more realistic and useful for the customer. The original tutorial trains three models: a scikit-learn one, a Tensorflow one, and a PyTorch one, and logs the results of the training experiments. This customer didn't have expertise in Deep Learning and wanted an example of logging experiments with frameworks they were familiar with. I adapted a Jupyter Notebook that uses the Vertex AI Python SDK to create a new experiment, train five simple models (one scikit-learn, one LGBM, and three XGBoost models with different hyperparameters), and log the results to be reviewed later in the Vertex AI Experiments UI.

Follow me

© 2025