Reputation: 1092
I was exploring kubeflow pipelines and Vertex AI pipelines. From what I understand, Vertex AI pipelines is a managed version of kubeflow pipelines so one doesn't need to deploy a full fledged kubeflow instance. In that respect, pricing aside, Vertex AI pipelines is a better choice. But then, in kubeflow, one can create experiments, an equivalent for which I have not found in Vertex AI pipelines. The only kubeflow features that Vertex AI does not support that I have been able to spot in the documentation are "Cache expiration" and "Recursion" but they do not mention anything about experiments. Makes me wonder if there are other differences that are worth considering when deciding between the two.
Upvotes: 17
Views: 11028
Reputation: 425
From my understanding, the feature you are mentioning should be obtained in VertexAI with:
So at first Tensorboard is very basic so it needs to be customized with custom variables (like learning rate) and other custom graphs.
Although, the very first step is obviously to enable it. As it won't be seen or be greyed out using Iris classification example.
Upvotes: 1
Reputation: 303
The team I work with has been investigating Vertex AI and comparing with KubeFlow for the past few months. As you pointed out, Vertex AI experiments are not the same as KubeFlow's. Vertex's experiments are just an interface for Tensorboard instances and Vizier hyperparameter tuning.
There seems to be no equivalent in Vertex AI for grouping pipeline runs into experiments. However, as even the authors of KubeFlow for Machine Learning point out, KubeFlow's own experiment tracking features are pretty limited, which is why they favor using KubeFlow alongside MLflow instead.
Some other differences I have noticed:
Other than these and what you already mentioned, Vertex seems to be at feature parity with KubeFlow in pipeline execution features, with the great advantage of not having to manage a Kubernetes cluster.
Upvotes: 14
Reputation: 1955
Actually, Vertex AI is a serverless platform to execute pipelines built in:
Kubeflow Pipelines SDK v1.8.9 or higher, or TensorFlow Extended v0.30.0 or higher.
In fact, almost any Kubeflow pipeline you are used to create will run pretty well in Vertex AI, You just have to take into consideration the aspects you already mentioned in the docs (io, dsl and storge) (which kind of common sense, since you can't from disk and have to use an external file source).
So, basically is just where you run it. The development does not change in fact if you use kubeflow (i.e import kfp
).
UPDATE: Experiments are supported also as almost all features. Just check here at: Experiments – Vertex AI – Google Cloud Platform
some references:
Building a pipeline | Vertex AI | Google Cloud
Running an Experiment | Kubeflow
Experiments – Vertex AI – Google Cloud Platform
Upvotes: 4