Handleiding voor beginners met behulp van TensorFlow

TensorFlow-handleiding voor beginners

TensorFlow is een van de populairste frameworks voor deep learning en machine learning. Ontwikkeld door het Google Brain-team, wordt TensorFlow veelvuldig gebruikt in talloze onderzoeksprojecten en industriële toepassingen. Dit artikel biedt een stapsgewijze handleiding om je als beginner op weg te helpen met TensorFlow.

1. De basisprincipes van TensorFlow begrijpen

Voordat we TensorFlow gaan installeren en gebruiken, is het belangrijk om te begrijpen wat TensorFlow is en de basisprincipes ervan. TensorFlow is een open-source framework voor numerieke berekeningen en machine learning . Het maakt gebruik van dataflowgrafieken om numerieke bewerkingen uit te voeren, waarbij knooppunten in de grafiek wiskundige bewerkingen vertegenwoordigen en randen multidimensionale data-arrays (tensors) die ertussen verbonden zijn.

2. TensorFlow-installatie

De eerste stap bij het gebruik van TensorFlow is de installatie ervan. Hier lees je hoe je TensorFlow installeert met pip, de pakketbeheerder van Python.

1. Python-installatie:
Zorg ervoor dat Python op je systeem is geïnstalleerd. TensorFlow is op het moment van schrijven compatibel met Python 3.6 tot en met 3.9. Je kunt Python downloaden van de officiële Python-website.

2. Virtuele omgeving:
Het is ten zeerste aan te raden een virtuele omgeving te creëren om uw TensorFlow-project te isoleren:
"sh"
python -m venv myenv
source myenv/bin/activate Voor Mac/Linux-gebruikers
myenv\Scripts\activate Voor Windows-gebruikers
''

3. TensorFlow-installatie:
Installeer nu TensorFlow met pip:
"sh"
pip installeer tensorflow
''

3. Hello World met TensorFlow

Nu TensorFlow is geïnstalleerd, gaan we een eenvoudig Python-script maken om de installatie te controleren. Maak een nieuw Python-bestand aan en noem het `hello_tensorflow.py`.

"`python'
importeer tensorflow als tf

Maak een constante aan
hallo = tf.constant('Hallo, TensorFlow!')

Start sessie
met tf.Session() als sess:
resultaat = sess.run(hello)
afdrukken (resultaat)
''

Pas de code aan voor TensorFlow versie 2.x:

"`python'
importeer tensorflow als tf

Maak een constante aan
hallo = tf.constant('Hallo, TensorFlow!')

Uitvoeren met eager execution (standaard ingeschakeld)
print(hello.numpy())
''

Sla het bestand op en voer het vervolgens uit:
"sh"
python hello_tensorflow.py
''

4. Tensoren en basisbewerkingen begrijpen

Tensors zijn de belangrijkste datastructuur in TensorFlow; het zijn multidimensionale arrays. Hier volgen enkele voorbeelden om tensors beter te begrijpen:

"`python'
importeer tensorflow als tf

Tensors creëren
scalar = tf. constant(7) scalar
vector = tf.constant([1, 2, 3]) vector
matrix = tf.constant([[1, 2], [3, 4]]) matrix
tensor3d = tf.constant([[[1, 2, 3], [4, 5, 6]], [[7, 8, 9], [10, 11, 12]]]) 3D-tensor

print(f'Scalar: {scalar}')
print(f'Vector: {vector}')
print(f'Matrix: {matrix}')
print(f'Tensor 3D: {tensor3d}')
''

Om basisbewerkingen op tensors uit te voeren:

"`python'
a = tf.constant([[1, 2], [3, 4]])
b = tf.constant([[5, 6], [7, 8]])

Optelbewerking
add = tf.add(a, b)
Matrixvermenigvuldigingsbewerkingen
mul = tf.matmul(a, b)

print(f'Toevoeging: {add}')
print(f'Matrixvermenigvuldiging: {mul}')
''

5. Het creëren van een eenvoudig neuraal netwerkmodel

De volgende stap is het maken van een eenvoudig neuraal netwerkmodel. We gaan een beeldclassificatiemodel bouwen met behulp van de MNIST-dataset, een database met afbeeldingen van handgeschreven cijfers. Laten we beginnen:

"`python'
importeer tensorflow als tf
van tensorflow.keras import datasets, lagen, modellen

De MNIST-dataset downloaden
(train_images, train_labels), (test_images, test_labels) = datasets.mnist.load_data()

Beeldnormalisatie
trein_afbeeldingen, test_afbeeldingen = trein_afbeeldingen / 255.0, test_afbeeldingen / 255.0

Een model maken
model = modellen.Sequentieel([
lagen.Flatten(input_shape=(28, 28)),
lagen.Dense(128, activatie='relu'),
lagen.Dicht(10)
])

Modelcompilatie
model.compile(optimizer='adam',
verlies=tf.keras.losses.SparseCategoricalCrossentropy(from_logits=True),
metrics=['nauwkeurigheid'])

Het model trainen
model.fit(trein_afbeeldingen, trein_labels, tijdperken=5)

Het model testen
test_loss, test_acc = model.evaluate(test_images, test_labels)
print(f'Testnauwkeurigheid: {test_acc}')
''

Uitleg:
– Datasets: We importeren en laden de MNIST-dataset.
– Voorbewerking: Normaliseer de dataset door de pixelwaarden te delen door 255.
– Model: We definiëren een eenvoudig model met twee lagen. De eerste laag is een 'Flatten'-laag om de 2D-afbeelding om te zetten in een 1D-array. De tweede laag is een 'Dense'-laag met 128 neuronen en 'relu' als activeringsfunctie, en de laatste is een 'Dense'-laag met 10 neuronen die 10 klassen vertegenwoordigen.
– Compileren: We compileren het model met behulp van de `adam`-optimizer en `SparseCategoricalCrossentropy` als verliesfunctie.
– Trainen: Train het model gedurende 5 epochs.
– Evalueer: Evalueer het model aan de hand van testgegevens.

6. Modellen opslaan en laden

Na het trainen van een model wilt u het wellicht opslaan voor later gebruik, zonder het opnieuw te hoeven trainen. Zo kunt u een model opslaan en laden:

"`python'
Het model opslaan
model.save('my_model.h5')

Laadmodel
new_model = tf.keras.models.load_model('my_model.h5')

Het geladen model verifiëren
verlies, nauwkeurigheid = nieuw_model.evaluate(test_images, test_labels)
print(f'Nauwkeurigheid van het geladen model: {acc}')
''

conclusie

Deze handleiding biedt een gedetailleerde introductie tot TensorFlow voor beginners. We behandelen de installatie, basisbewerkingen met tensors en het bouwen van een eenvoudig neuraal netwerkmodel met behulp van de MNIST-dataset. TensorFlow biedt veel geavanceerde mogelijkheden om te ontdekken, zoals geavanceerde gegevensverwerking , complexere modellen en het gebruik van TensorFlow op apparaten zoals TPU's en GPU's. We hopen dat deze handleiding je helpt om aan de slag te gaan in de wereld van machine learning met TensorFlow.

Laat een reactie achter