PRIYANKA: Hi, I'm Priyanka [INAUDIBLE],,
and this is AI Simplified, where we
will take the journey from data sets
all the way to deployed machine learning models.
No matter which service you offer today,
it is crucial to use the data you have to make predictions
so you can improve your apps and the user experience.
But most teams have varying levels of machine
learning expertise, ranging from novice all the way to experts.
To accelerate AI innovation, you need a platform
that can help you build expertise for those novice
users, and provide a seamless and flexible environment
for those experts.
This is where Vertex AI comes in.
It provides tools for every step of the machine learning
workflow across different model types,
for varying levels of machine learning expertise.
Before we take a look at Vertex AI,
though, let's understand the typical machine
learning workflow.
After defining your prediction task, the first thing you do
is ingest the data, analyze it, and then transform it.
Then you create and train the model.
Evaluate that model for efficiency and optimization.
And then deploy it to make predictions.
Now, with Vertex AI, you get a simplified machine learning
workflow in one central place.
Ingestion, analysis, and transforming
is really all about data preparation.
And you do that using managed data sets within Vertex AI.
You have tools to create the data set
by importing your data using the console, or just the API.
You can also label and annotate the data right
from within the console.
For model training, you have two options--
AutoML or custom.
With varying machine learning expertise on the team,
for some use cases such as images or videos, text files,
and tabular data, AutoML works great.
With AutoML, you don't need to write any of the model code.
Vertex AI will take care of finding
the best model for that task.
And for other use cases where you
would like more control over your model's architecture,
use custom models.
Now, custom models are great for frameworks and architectures
and code that you want to write yourself.
So this works great for TensorFlow or PyTorch code.
Once that model is trained, you have the ability
to assess that model, optimize it, and even understand
the signals behind your model's predictions.
And you do that with explainable AI.
And explainable AI lets you dive deeper into your model
and understand which factors are playing a role in defining
what that model is predicting.
Once you're happy with the model,
you deploy it to an endpoint to serve it
for online predictions using the API or the console.
Now, this deployment includes all the physical resources
and the scalable hardware that's needed
to scale that model for lower latency and online predictions.
You can, of course, use the undeployed model
for batch predictions.
Once the model is deployed, you can
get the predictions using either the command line
interface, or the console UI, or the SDK and the APIs.
At this point, you might be wondering
how this looks in the console and where to find it.
So let me give you a little tour of the dashboard.
In the console, when we click on Vertex AI,
we land on the dashboard, where you
can see the recent data sets, recent models,
and get predictions.
On the left, you have all the steps that
are involved in the machine learning workflow,
all the way from data sets to predictions.
In the data sets, you can create your data sets,
depending on the type of data and your prediction task.
Supported data types include image, tabular, text,
or videos.
If your prediction test doesn't fall into one of these use
cases, don't worry.
You can still use Vertex AI for your custom model training
and prediction.
Once you have created a data set,
you can see it listed in the data set list.
In the Notebook section of the console,
you can create your customized notebook instances
with the type of environment and GPUs you want.
The Training tab, you can see and create your training jobs.
The beauty is that you can have one data set,
but you can train it in different ways.
With AutoML, you can train a high quality model
with minimal effort.
AutoML Edge for models that are optimized for Edge devices.
And with the Custom Training option,
you can train models built with any framework,
via pre-built or custom containers.
Pre-built containers are available
for supported frameworks such as TensorFlow, PyTorch,
scikit-learn, and XGBoost.
You provide your code as a Python package.
The Custom Containers option allows
you to train models built with any framework or language
by putting your training application code in a Docker
container, push it to Container Registry,
and run training on Vertex.
You can accelerate the training with GPUs,
and also apply hyperparameter tuning.
In the Models tab, you can see all the models
you have created.
Here, you can also import models trained outside of Google Cloud
to serve it for online and batch predictions.
In order to use a model, you create an endpoint, which
brings us to our next step.
Creating an endpoint is how you serve your models
for online predictions.
Each model can have multiple endpoints.
Enter the compute resources so your endpoint can
auto scale the resources based on your traffic.
You can even split traffic across endpoints
and send model logs to Cloud Logging.
Once the model is live, we can make predictions in the UI
or through the SDK.
In the Batch Predictions tab, you
can make predictions on the batch
of data from Cloud Storage.
This was a pretty high-level overview
where we saw that Vertex AI provides the tools to support
your entire machine learning workflow from data management
all the way to predictions.
In the next episodes, we will dive much deeper
into all of these steps and build end-to-end machine
learning workflow.
In the meantime, let's continue our discussion
in the comments below.
I'm excited to hear all about your machine
learning use case and workflow.