TensorSlow ist eine minimalistische API für maschinelles Lernen, die die TensorFlow-API nachahmt, jedoch in reinem Python (ohne C-Backend) implementiert ist. Der Quellcode wurde mit Blick auf maximale Verständlichkeit und nicht auf maximale Effizienz erstellt. Daher sollte TensorSlow ausschließlich für Bildungszwecke verwendet werden. Wenn Sie verstehen möchten, wie Deep-Learning-Bibliotheken wie TensorFlow unter der Haube funktionieren, ist dies möglicherweise die beste Möglichkeit.
Ich habe in meinem Blog auf deepideas.net einen Artikel geschrieben, der diese Bibliothek Schritt für Schritt entwickelt und dabei alle Mathematik und Algorithmen erklärt: Deep Learning From Scratch.
Import:
import tensorslow as ts
Erstellen Sie ein Rechendiagramm:
ts.Graph().as_default()
Eingabeplatzhalter erstellen:
training_features = ts.placeholder()
training_classes = ts.placeholder()
Bauen Sie ein Modell:
weights = ts.Variable(np.random.randn(2, 2))
biases = ts.Variable(np.random.randn(2))
model = ts.softmax(ts.add(ts.matmul(X, W), b))
Trainingskriterium erstellen:
loss = ts.negative(ts.reduce_sum(ts.reduce_sum(ts.multiply(training_classes, ts.log(model)), axis=1)))
Optimierer erstellen:
optimizer = ts.train.GradientDescentOptimizer(learning_rate=0.01).minimize(J)
Platzhaltereingaben erstellen:
feed_dict = {
training_features: my_training_features,
training_classes: my_training_classes
}
Sitzung erstellen:
session = ts.Session()
Zug:
for step in range(100):
loss_value = session.run(loss, feed_dict)
if step % 10 == 0:
print("Step:", step, " Loss:", loss_value)
session.run(optimizer, feed_dict)
Modellparameter abrufen:
weights_value = session.run(weigths)
biases_value = session.run(biases)
Weitere Informationen finden Sie im examples
.