2016-12-24 112 views
1

它看起來Cloud ML已經遷移到TensorFlow 0.12.0。 (我從導出的模型文件中確認了它,我需要使用0.12.0導入在Cloud ML上生成的模型)。Cloud ML中的訓練和預測版本不一致

但是我懷疑Cloud ML的預測功能仍然在先前版本上運行,因爲它返回503在線預測服務不可用)當我使用最近在Cloud ML上生成的導出模型時。

Google的某人可以證實這種情況嗎?

+0

啊,我確認在線預測錯誤與模型版本無關。批量預測適用於v1和v2。在線預測不適用於其中任何一個。所以在線預測中有些東西被打破了。 – etusji

回答

0

在線預測目前是alpha,所以它需要一些特殊的醬才能正確使用。這是一個有效的例子。請注意使用'實例','示例'以及目標列存在虛擬值(在我的案例中爲'fare_amount')。

from googleapiclient import discovery 
from oauth2client.client import GoogleCredentials 
import json 

import google.cloud.ml.features as features 
from google.cloud.ml import session_bundle 

credentials = GoogleCredentials.get_application_default() 
api = discovery.build('ml', 'v1beta1', credentials=credentials, 
      discoveryServiceUrl='https://storage.googleapis.com/cloud-ml/discovery/ml_v1beta1_discovery.json') 

request_data = {'instances': 
    [ 
    {'examples': 
     { 
     'pickup_longitude': -73.885262, 
     'pickup_latitude': 40.773008, 
     'dropoff_longitude': -73.987232, 
     'dropoff_latitude': 40.732403, 
     'passenger_count': 2, 
     'fare_amount': -999 
     } 
    } 
    ] 
} 

parent = 'projects/%s/models/%s/versions/%s' % ('cloud-training-demos', 'taxifare', 'v1') 
response = api.projects().predict(body=request_data, name=parent).execute() 
print "response={0}".format(response) 
0

快速記下雲ML引擎現在是一個V1產品在Beta版它的在線預測的一部分。

如果使用v1端點(而不是v1beta1),默認行爲是在訓練和預測中使用TensorFlow 1.0。所以事情應該是一致的,更可靠的。

相關問題