Ich habe TensorFlows Grundlegende Verwendung in Cloud9 überprüft. Ich werde die Grundidee und Verwendung bei der Verwendung von TensorFlow zusammenfassen. GPU oder interaktive Nutzung sind nicht enthalten. Zunächst werde ich die anderen nach Bedarf untersuchen, um grundlegenden Code zu erstellen.
Cloud9 Python 2.7.6 Sample Codes : GitHub Informationen zum Erstellen von Umgebungen finden Sie unter "TensorFlow in Cloud Integrated Development Environment Cloud9 verwenden".
Es sind zwei wichtige Punkte zu beachten.
Graphs ist eine Klasse, die Werte und Berechnungen festlegt. Werte können Konstanten, Variablen, Tensoren (Matrix in 2D, definiert in mehrdimensionalen Arrays) usw. sein. Es sind auch Diagramme, die die Berechnung dieses Werts festlegen (z. B. Addition oder Multiplikation).
Sitzungen sind eine Klasse, die Diagrammwerte und Berechnungen ausführt. TensorFlow scheint in der Lage zu sein, die GPU zu verwenden, aber es scheint sie automatisch über Sitzungen zu verwenden.
Setzen Sie daher Werte und Berechnungen in Diagramme => führen Sie Berechnungen in Sitzungen aus Es wird der Fluss sein. Schauen wir uns unten ein konkretes Beispiel an. GitHub basic_usage.py Ich werde die Ausführungsergebnisse von erklären.
import tensorflow as tf
# Graphs
matrix1 = tf.constant([[3., 3.]])
matrix2 = tf.constant([[2.], [2.]])
product = tf.matmul(matrix1, matrix2)
# Sessions
sess = tf.Session()
result = sess.run(product)
print(result)
# Output: [[12.]]
sess.close()
Es ist wichtig, Diagramme einzurichten und dann Berechnungen in Sitzungen auszuführen.
# Graphs
state = tf.Variable(0)
one = tf.constant(1)
new_value = tf.add(state, one)
update = tf.assign(state, new_value)
init_op = tf.initialize_all_variables()
# Sessions
with tf.Session() as sess:
sess.run(init_op)
print(sess.run(state))
for _ in range(3):
sess.run(update)
print(sess.run(state))
# Output: 0 1 2 3
Die Variablen werden nacheinander aktualisiert.
# Graphs
input1 = tf.constant([3.0])
input2 = tf.constant([2.0])
input3 = tf.constant([5.0])
intermed = tf.add(input2, input3)
mul = tf.mul(input1, intermed)
# Sessions
with tf.Session() as sess:
result = sess.run([mul, intermed])
print(result)
# Output: [array([ 21.], dtype=float32), array([ 7.], dtype=float32)]
Der Inhalt des Codes ist der gleiche wie zuvor, sodass Sie ihn verstehen können. Wichtig ist, dass run ([mul, intermed]) mehrere Berechnungen gleichzeitig ausführt und die Ausgabe des Ergebnisses gleichzeitig ausgegeben wird.
# Graphs
input1 = tf.placeholder(tf.float32)
input2 = tf.placeholder(tf.float32)
output = tf.mul(input1, input2)
# Sessions
with tf.Session() as sess:
print(sess.run([output], feed_dict={input1:[7.], input2:[2.]}))
# Output: [array([ 14.], dtype=float32)]
Der Wert kann von tf.placeholder (tf.float32) zugewiesen werden. Sie wird durch Ersetzen durch run berechnet ([Ausgabe], feed_dict = {Eingabe1: [7.], Eingabe2: [2.]}).
Ich denke, es ist wichtig, Diagramme einzurichten und dann Berechnungen in Sitzungen auszuführen. Es gibt kein Problem mit einfachem Code, aber es ist nicht bekannt, was bei komplizierten Berechnungen passiert. Wenn Sie den Beispielcode ändern und verschiedene Dinge ausprobieren, erhalten Sie ein besseres Verständnis.
Ich lerne noch. Wenn Sie also einen Fehler machen, lassen Sie es mich bitte in den Kommentaren wissen. Ich möchte weiter lernen, wie man TensorFlow verwendet, und Korrekturen und Korrekturen vornehmen.