Intellipaat Back

Explore Courses Blog Tutorials Interview Questions
0 votes
2 views
in Machine Learning by (19k points)
Does anyone know what is the difference between using Google Cloud Machine Learning compare to a Virtual Machine instance in the Google Cloud Engine ?

I am using Keras with Python 3 and feel like GML is more restricting (using python 2.7, older version of TensorFlow, must follow the given structure...). I guess they are benefits of using GML over a VM in GCE but I would like to know what they are.

1 Answer

0 votes
by (33.1k points)
edited by

Google Cloud ML is a fully managed service whereas Google Compute Engine is not (the latter is IaaS).

Some differences for the case when you have your own model, here you have some:

The most prominent feature of Google CloudML is the deployment itself. You don't have to take care of things like setting up your cluster, launching it, installing the packages and deploy your model for training. This is all done automatically, and you would have to do it yourself in Compute Engine although you would be unrestricted in what you can install.

All that deployment is automatized more or less, there is no magic to it. In fact, you can see in the logs of CloudML for a training job that it is quite rudimentary in the sense that a cluster of instances is launched and thereafter TF is installed and your model is run with the options you set. This is due to TensorFlow being a framework decoupled from Google systems. Thus, TensorFlow Tutorial would be quite helpful in making some changes during the duration of course.

There is a substantial difference between CloudMl vs Compute Engine when it comes to prediction. It is what you pay for most I would say with CloudML. You have deployed the model in CloudML for online and batch prediction out of the box pretty much. In Compute Engine, you would have to take care of all the quirks of TensorFlow Serving which are not that trivial.

Finally, pricing is slightly different in either service of GCP. Until recently, the pricing of CloudML was in pairs with other competitors (you would pay for computing time in both training and prediction but also per prediction which you could compare with the computing time in Compute Engine). However, now you will only pay for that computing time which probably renders the idea of managing and scaling your own cluster (with TensorFlow) in Compute Engine useless in most scenarios.

Hope this answer helps you!

If you want to study this Machine Learning Online Course then watch this video and gain some valuable insights:-

Browse Categories

...