Google Cloud - 计算引擎与机器学习

smi*_*aud 14 python machine-learning google-compute-engine tensorflow google-cloud-ml-engine

有谁知道使用Google Cloud Machine Learning与Google Cloud Engine中的虚拟机实例相比有什么区别?

我正在使用Keras和Python 3并且感觉GML更受限制(使用python 2.7,旧版本的TensorFlow,必须遵循给定的结构......).我猜他们在GCE中使用GML而不是VM的好处,但我想知道它们是什么.

Gui*_*lle 12

Google Cloud ML是完全托管服务,而Google Compute Engine则不是(后者是IaaS).

假设您只是想知道自己拥有自己的模型时的情况,这里有一些:

  • Google CloudML最引人注目的功能是部署本身.您不必处理诸如设置群集(即扩展),启动它,安装包和部署模型以进行培训之类的事情.这一切都是自动完成的,您必须自己在Compute Engine中自己完成,尽管您可以不受限制地安装.

    虽然所有部署都可以或多或少地自动化,但它没有任何魔力.实际上,您可以在CloudML的日志中看到一个培训作业,它是一个非常基础的,因为启动了一组实例,然后安装了TF并且您的模型使用您设置的选项运行.这是因为TensorFlow是一个与Google系统分离的框架.

  • 但是,在预测方面,CloudMl与计算引擎存在差异.这就是你付出的代价,主要是我会说CloudML.您可以在CloudML中部署模型,以便在线和批量预测开箱即用.在计算引擎中,您必须处理TensorFlow服务的所有怪癖, 这些不是那么简单(与训练模型相比).

  • CloudML的另一个优点是超参数调整.它只不过是一个有点智能的强制工具,可以找到给定模型的最佳参数组合,并且您可以在计算引擎中自动进行此操作,但您必须完成这一部分来确定优化算法找到可以改善目标函数的参数和值的组合(通常可以最大化您的准确性或减少您的损失).

  • 最后,两种服务的定价略有不同.直到最近,CloudML的定价与其他竞争对手成对(您可以在培训和预测中支付计算时间,但也可以根据计算引擎中的计算时间进行预测.)但是,现在您只需支付该计算时间(并且它甚至比以前便宜),这可能会使计算引擎中管理和扩展您自己的集群(使用TensorFlow)的想法在大多数情况下无效.