2017-11-29 1 views
0

Ich verwende Google Cloud ML Engine, um ein Modell mit tensorflow.contrib.learn.Experiment zu trainieren. Standardmäßig scheint Tensorflow vom Master-Server die Auswertungen ausgeführt zu haben. Ich laufe nur nach Abschluss des Trainings evals (min_eval_frequency = 0), und mein Master hat eine große Anzahl von Kernen und RAM, aber keine GPU (also ist das Eval sehr langsam im Vergleich zu den P100-Arbeitern). Kann ich die Bewertung für einen Arbeiter ausführen lassen?Wie verteilt man die Tensorflow-Testlaufbewertung auf den Worker statt auf den Master?

Antwort

1

Bei der Verwendung von learn_runner.run gibt es keine Möglichkeit, die Auswertung für normale Worker auszuführen. Hier sind ein paar Alternativen:

  1. Verwenden Sie eine GPU auf Ihrem Master.
  2. Verwenden Sie nicht learn_runner.run. Stattdessen müssen Sie diese Funktionalität reproduzieren. Zu vermelden:

Instanziieren Sie eine Instanz von RunConfig(). Überprüfen Sie die task_type und rufen Sie Experiment.train, Experiment.evaluate oder Experiment.continuous_eval wie erforderlich auf.

Das gesagt, da der Meister im Grunde nur ein anderer Arbeiter ist, der auch eine Bewertung macht, gibt es irgendeinen Grund, keine GPU auf dem Meister zu verwenden?

Verwandte Themen