Местный прогноз GCMLE в блокноте Jupyter - PullRequest
0 голосов
/ 27 июня 2018

Есть ли способ выполнить эквивалент gcloud ml-engine local predict --model-dir=$MODEL_DIR --json-instances=$JSON_INSTANCE в ноутбуке Jupyter?

1 Ответ

0 голосов
/ 27 июня 2018

Позвольте мне дать быстрый ответ; тот, который может быть обновлен в какой-то момент в будущем. В основном, этот ответ должен применяться. Например:

import json
from tensorflow.contrib import predictor

def columnarize(instancse):
  out = {}
  for instance in instances:
    for k, v in instance.items():
      out.setdefault(k, []).append(v)
  return out

def mapify(outputs, fetch_tensors):
    return dict(zip(fetch_tensors.iterkeys(), outputs))

def rowify(columns):
  out = []
  num_instances = len(next(columns.itervalues()))
  for row in range(num_instances):
    out.append({
        name: output[row, ...].tolist()
        for name, output in columns.iteritems()
    })
  return out    

instances = [
    {"x": [6.4, 3.2, 4.5, 1.5], "y": -1},
    {"x": [5.8, 3.1, 5.0, 1.7], "y": 5},
]

predict_fn = predictor.from_saved_model(export_dir)
outputs = predict_fn(columnarize(instances))
predictions = rowify(mapify(outputs, predictor._fetch_tensors))
print(predictions)
...