它看起來Cloud ML已經遷移到TensorFlow 0.12.0。 (我從導出的模型文件中確認了它,我需要使用0.12.0導入在Cloud ML上生成的模型)。Cloud ML中的訓練和預測版本不一致
但是我懷疑Cloud ML的預測功能仍然在先前版本上運行,因爲它返回503在線預測服務不可用)當我使用最近在Cloud ML上生成的導出模型時。
Google的某人可以證實這種情況嗎?
它看起來Cloud ML已經遷移到TensorFlow 0.12.0。 (我從導出的模型文件中確認了它,我需要使用0.12.0導入在Cloud ML上生成的模型)。Cloud ML中的訓練和預測版本不一致
但是我懷疑Cloud ML的預測功能仍然在先前版本上運行,因爲它返回503在線預測服務不可用)當我使用最近在Cloud ML上生成的導出模型時。
Google的某人可以證實這種情況嗎?
在線預測目前是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)
快速記下雲ML引擎現在是一個V1產品在Beta版它的在線預測的一部分。
如果使用v1端點(而不是v1beta1),默認行爲是在訓練和預測中使用TensorFlow 1.0。所以事情應該是一致的,更可靠的。
啊,我確認在線預測錯誤與模型版本無關。批量預測適用於v1和v2。在線預測不適用於其中任何一個。所以在線預測中有些東西被打破了。 – etusji