Google Cloud ML Engine:创建模型版本失败

Google Cloud ML Engine: Create model version failed

我已经在 Google Cloud 的 ML Engine 上成功地训练了 TensorForestEstimator,但是当我尝试创建模型版本时,出现以下错误:

Create Version failed. Bad model detected with error: "Error loading the model: Could not load model. "

我正在使用 tensorflow 1.3 进行部署。 Experiment配置如下:

def get_experiment_fn(args):
    def _experiment(run_config, hparams):
        return Experiment(
            estimator=TensorForestEstimator(
                params=ForestHParams(
                    num_trees=args.num_trees,
                    max_nodes=10000,
                    min_split_samples=2,
                    num_features=8,
                    num_classes=args.num_projections,
                    regression=True
                ),
                model_dir=args.job_dir,
                graph_builder_class=RandomForestGraphs,
                config=run_config,
                keys_name=None,
                report_feature_importances=True
            ),
            train_input_fn=get_input_fn(
                project_name=args.project,
                data_location=args.train_data,
                dataset_size=args.train_size,
                batch_size=args.train_batch_size
            ),
            train_steps=args.train_steps,
            eval_input_fn=get_input_fn(
                project_name=args.project,
                data_location=args.eval_data,
                dataset_size=args.eval_size,
                batch_size=args.eval_batch_size
            ),
            eval_steps=args.eval_steps,
            eval_metrics=get_eval_metrics(),
            export_strategies=[
                make_export_strategy(
                    serving_input_fn,
                    default_output_alternative_key=None,
                    exports_to_keep=1
                )
            ]
        )
    return _experiment

这是什么问题?

看起来 Google Cloud ML Engine 目前仅支持使用 tensorflow 1.2.0 及以下版本生成的服务模型。看这里:https://cloud.google.com/ml-engine/docs/concepts/runtime-version-list

尽可能使用--runtime-version 1.2。如果您正在使用特定于 tensorflow 1.3 的功能,您将需要在 Google App Engine 上使用 Flask 托管您的模型,直到 ML Engine 支持 tensorflow 1.3 到来。