Ein sehr einfaches Beispiel in Tensorflow: min (x + 1)^2
wo x
ist ein Skalar. Der Code ist:Wird der Gradient im Diagramm des Tensorflusses falsch berechnet?
import tensorflow as tf
x = tf.Variable(initial_value=3.0)
add = tf.add(x, 1)
y = tf.square(add)
optimizer = tf.train.GradientDescentOptimizer(learning_rate=0.01)
train = optimizer.minimize(y)
dann Graph auf der Festplatte
graph = tf.get_default_graph()
writer = tf.summary.FileWriter("some/dir/to/write/events")
writer.add_graph(graph=graph)
schließlich visualisieren es in tensorboard schreiben, es sieht aus wie dieses
Frage ist, warum Knoten "Hinzufügen" ist mit Gradienten verbunden? Ich denke, da ich versuche, y zu minimieren, Knoten "Sqaure" sollte sein, ist es ein Fehler? kann jemand das erklären?
Sehr cooles Beispiel! endlich kann ich den sogenannten * symbolischen * gradienten verstehen! Vielen Dank! –
@ Jie.Zhou Ja, ich denke, das ist eine sehr gute Frage, die viele wichtige Themen beleuchtet: 1) wie der Graph erstellt wird, 2) wie die Gradienten in Mathematik berechnet werden und wie sie auf TF anwendbar ist –