Ich arbeite an der Cloud-integrierten Entwicklungsumgebung Cloud9. Da ich maschinelles Lernen studiere, habe ich eine Umgebung erstellt, in der ich TensorFlow auf Cloud9 studieren möchte. Ich werde diese Notiz hinterlassen.
Cloud9 Python 2.7.6 Sample Codes : GitHub
Dies ist die Prozedur, bis Sie TensorFlows Erste Schritte in Cloud9 ausführen können.
getstarted.py
import tensorflow as tf
import numpy as np
# Create 100 phony x, y data points in NumPy, y = x * 0.1 + 0.3
x_data = np.random.rand(100).astype(np.float32)
y_data = x_data * 0.1 + 0.3
# Try to find values for W and b that compute y_data = W * x_data + b
# (We know that W should be 0.1 and b 0.3, but TensorFlow will
# figure that out for us.)
W = tf.Variable(tf.random_uniform([1], -1.0, 1.0))
b = tf.Variable(tf.zeros([1]))
y = W * x_data + b
# Minimize the mean squared errors.
loss = tf.reduce_mean(tf.square(y - y_data))
optimizer = tf.train.GradientDescentOptimizer(0.5)
train = optimizer.minimize(loss)
# Before starting, initialize the variables. We will 'run' this first.
init = tf.initialize_all_variables()
# Launch the graph.
sess = tf.Session()
sess.run(init)
# Fit the line.
for step in range(201):
sess.run(train)
if step % 20 == 0:
print(step, sess.run(W), sess.run(b))
# Learns best fit is W: [0.1], b: [0.3]
Wenn das Ausführungsergebnis nahe bei 0,1 und 0,3 liegt, bedeutet dies, dass der Koeffizient der geraden Linie durch Lernen vorhergesagt werden kann. Das Ergebnis, das ich ausgeführt habe, ist unten und ich sehe Werte nahe 0,1 und 0,3.
(0, array([ 0.45364389], dtype=float32), array([ 0.13226086], dtype=float32))
(20, array([ 0.18247673], dtype=float32), array([ 0.25206894], dtype=float32))
(40, array([ 0.12017135], dtype=float32), array([ 0.28827751], dtype=float32))
(60, array([ 0.10493329], dtype=float32), array([ 0.29713303], dtype=float32))
(80, array([ 0.10120656], dtype=float32), array([ 0.29929882], dtype=float32))
(100, array([ 0.10029508], dtype=float32), array([ 0.29982853], dtype=float32))
(120, array([ 0.10007217], dtype=float32), array([ 0.29995808], dtype=float32))
(140, array([ 0.10001764], dtype=float32), array([ 0.29998976], dtype=float32))
(160, array([ 0.10000434], dtype=float32), array([ 0.29999751], dtype=float32))
(180, array([ 0.10000106], dtype=float32), array([ 0.29999939], dtype=float32))
(200, array([ 0.10000025], dtype=float32), array([ 0.29999986], dtype=float32))
Das Programm, das Zahlen aus den Bilddaten handgeschriebener Zahlen erkennt, wurde ebenfalls erfolgreich ausgeführt. Laden Sie einfach convolutional.py von [GitHub] herunter und führen Sie es aus (https://github.com/takus69/learn_tf). (Es ist das gleiche wie die Quelle auf der offiziellen Website.) Bei der Ausführung auf Cloud9 dauerte es ungefähr 100 Schritte und 2 Minuten, und ich denke, es dauerte insgesamt ungefähr 2 Stunden. Die Spezifikationen sind nicht genug. Die Spezifikationen von Cloud9 waren 1 CPU und 512 MB RAM. Das Ausführungsergebnis ist wie folgt. (Da es lang ist, wird es in der Mitte weggelassen.)
python convolutional.py
Successfully downloaded train-images-idx3-ubyte.gz 9912422 bytes.
Successfully downloaded train-labels-idx1-ubyte.gz 28881 bytes.
Successfully downloaded t10k-images-idx3-ubyte.gz 1648877 bytes.
Successfully downloaded t10k-labels-idx1-ubyte.gz 4542 bytes.
Extracting data/train-images-idx3-ubyte.gz
Extracting data/train-labels-idx1-ubyte.gz
Extracting data/t10k-images-idx3-ubyte.gz
Extracting data/t10k-labels-idx1-ubyte.gz
Initialized!
Step 0 (epoch 0.00), 7.7 ms
Minibatch loss: 12.054, learning rate: 0.010000
Minibatch error: 90.6%
Validation error: 84.6%
Step 100 (epoch 0.12), 706.3 ms
Minibatch loss: 3.287, learning rate: 0.010000
Minibatch error: 6.2%
Validation error: 7.0%
Step 200 (epoch 0.23), 713.8 ms
...
...
Step 5300 (epoch 6.17), 1937.9 ms
Minibatch loss: 1.980, learning rate: 0.007351
Minibatch error: 0.0%
Validation error: 0.9%
Step 5400 (epoch 6.28), 2089.9 ms
Ich weiß nicht, wie ich es betrachten soll, aber ich frage mich, ob es identifiziert werden kann, da der Prozentsatz des Minibatch-Fehlers und des Validierungsfehlers gering ist. Diesmal habe ich es gerade gemacht, aber ich möchte den Inhalt in Zukunft verstehen.
Nachdem TensorFlow auf Cloud9 installiert wurde, möchte ich den Inhalt in Zukunft verstehen. Übrigens scheint TensorFlow einige zu haben, die CPU verwenden, und einige, die GPU verwenden, aber es scheint, dass diejenigen, die GPU verwenden, nicht verwendet werden können. Ich habe versucht, es zu installieren, aber zur Laufzeit ist ein Fehler aufgetreten. Verwenden wir in Cloud9 die CPU.
2016/10/19
Recommended Posts