eval () und run () im Tensorflow

7

Ich beziehe mich auf das Deep MNIST for Experts-Tutorial , das vom Tensorflow vorgegeben wird. Ich habe ein Problem in trainieren und auswerten Teil dieses Tutorials. Dort haben sie einen Beispielcode wie folgt angegeben.

%Vor%

Also haben sie in diesem Code-Segment accuracy.eval() gleichzeitig benutzt. Und andere Zeit train_step.run() . Wie ich von beiden weiß, sind Tensor-Variablen.

Und in einigen Fällen habe ich gesehen wie

%Vor%

Also meine Frage ist, was sind die Unterschiede zwischen diesen 3 Implementierungen. Und wie kann ich wissen, was ich benutzen soll, wenn ..?

Danke !!

    
Ramesh-X 17.08.2016, 03:05
quelle

2 Antworten

16

Wenn Sie nur eine Standardsitzung haben, sind sie im Grunde gleich.

Von Ссылка :

  

op.run () ist eine Verknüpfung zum Aufruf von tf.get_default_session (). run (op)

Von Ссылка :

  

t.eval () ist eine Abkürzung für den Aufruf von tf.get_default_session (). run (t)

Warum diese Unterschiede zwischen Tensor und Operation? Von Ссылка :

  

Hinweis: Die Tensor-Klasse wird in Zukunft durch Ausgabe ersetzt. Derzeit sind diese beiden Aliasnamen für einander.

    
fwalch 17.08.2016, 07:43
quelle
2

Der Unterschied liegt in Operationen vs. Tensoren. Operationen verwenden run () und Tensors verwenden eval ().

Es scheint einen Verweis auf diese Frage in TensorFlow FAQ zu geben: Ссылка

Der Abschnitt behandelt die folgende Frage: Was ist der Unterschied zwischen Session.run () und Tensor.eval ()?

    
idnavid 19.04.2017 01:08
quelle

Tags und Links