2017-08-26 118 views
0

我已经成功地在谷歌Cloud的ML引擎培养了TensorForestEstimator,但是当我尝试创建一个模型版本,我得到了以下错误:谷歌云ML引擎:创建模型版本失败

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

我与部署tensorflow 1.3Experiment配置如下:

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 

什么问题?

回答

2

看起来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引擎支持tensorflow 1.3到达。