TensorFlow-vejledning for begyndere
TensorFlow er et af de mest populære frameworks til deep learning og machine learning. TensorFlow er udviklet af Google Brain-teamet og er blevet brugt i vid udstrækning i adskillige forskningsprojekter og industrielle applikationer. Denne artikel indeholder en trinvis vejledning, der hjælper dig som nybegynder med at komme i gang med TensorFlow.
1. Forståelse af TensorFlows grundlæggende principper
Før vi begynder at installere og bruge TensorFlow, er det vigtigt at forstå, hvad TensorFlow er, og de grundlæggende koncepter bag det. TensorFlow er et open source-framework til numerisk databehandling og maskinlæring . Det bruger dataflowgrafer til at udføre numeriske operationer, hvor noder i grafen repræsenterer matematiske operationer, og kanter repræsenterer flerdimensionelle dataarrays (tensorer), der er forbundet mellem dem.
2. TensorFlow-installation
Det første trin i at bruge TensorFlow er at installere det. Sådan installerer du TensorFlow ved hjælp af pip, Python-pakkehåndteringen.
1. Python-installation:
Sørg for at du har Python installeret på dit system. TensorFlow er kompatibel med Python 3.6 til 3.9 på tidspunktet for denne skrivning. Du kan downloade Python fra den officielle Python-hjemmeside.
2. Virtuelt miljø:
Det anbefales kraftigt at oprette et virtuelt miljø for at isolere dit TensorFlow-projekt:
"'sh
python -m venv myenv
kilde myenv/bin/activate For Mac/Linux-brugere
myenv\Scripts\activate For Windows-brugere
”`
3. TensorFlow-installation:
Installer nu TensorFlow ved hjælp af pip:
"'sh
pip installer tensorflow
”`
3. Hej Verden med TensorFlow
Nu hvor TensorFlow er installeret, lad os oprette et simpelt Python-script for at verificere installationen. Opret en ny Python-fil og navngiv den `hello_tensorflow.py`.
"'python
importer tensorflow som tf
Opret en konstant
hej = tf.constant('Hej, TensorFlow!')
Start session
med tf.Session() som sess:
resultat = sess.run(hej)
print (resultat)
”`
Tilpas koden i henhold til TensorFlow version 2.x:
"'python
importer tensorflow som tf
Opret en konstant
hej = tf.constant('Hej, TensorFlow!')
Kør med eager execution (slået til som standard)
print(hello.numpy())
”`
Gem filen, og kør derefter:
"'sh
python hello_tensorflow.py
”`
4. Forståelse af tensorer og grundlæggende operationer
Tensorer er den primære datastruktur i TensorFlow, som er flerdimensionelle arrays. Her er nogle eksempler, der kan hjælpe dig med at forstå tensorer:
"'python
importer tensorflow som tf
Oprettelse af tensorer
skalar = tf. konstant(7) skalar
vektor = tf. konstant([1, 2, 3]) vektor
matrix = tf. konstant([[1, 2], [3, 4]]) matrix
tensor3d = tf.constant([[[1, 2, 3], [4, 5, 6]], [[7, 8, 9], [10, 11, 12]]]) 3D-tensor
print(f'Skalar: {skalar}')
print(f'Vektor: {vektor}')
print(f'Matrix: {matrix}')
print(f'Tensor 3D: {tensor3d}')
”`
For at udføre grundlæggende operationer på tensorer:
"'python
a = tf.constant([[1, 2], [3, 4]])
b = tf.constant([[5, 6], [7, 8]])
Additionsoperation
add = tf.add(a, b)
Matrixmultiplikationsoperationer
mul = tf.matmul(a, b)
print(f'Tilføjelse: {add}')
print(f'Matrixmultiplikation: {mul}')
”`
5. Oprettelse af en simpel neural netværksmodel
Det næste trin er at oprette en simpel neural netværksmodel. Vi vil opbygge en billedklassificeringsmodel ved hjælp af MNIST-datasættet, en database med håndskrevne cifferbilleder. Lad os komme i gang:
"'python
importer tensorflow som tf
importer datasæt, lag og modeller fra tensorflow.keras
Download af MNIST-datasættet
(togbilleder, togmærker), (testbilleder, testmærker) = datasæt.mnist.indlæs_data()
Billednormalisering
tog_billeder, test_billeder = tog_billeder / 255.0, test_billeder / 255.0
At lave en model
model = models.Sekventiel([
lag.Flatten(input_shape=(28, 28)),
layers.Dense(128, activation='relu'),
lag.Tæt(10)
])
Modelkompilering
model.compile(optimizer='adam',
tab=tf.keras.tab.SparseCategoricalCrossentropy(from_logits=True),
metrics=['nøjagtighed'])
Træning af modellen
model.fit(tog_billeder, tog_etiketter, epoker=5)
Test af modellen
test_loss, test_acc = model.evaluate(test_images, test_labels)
print(f'Testnøjagtighed: {test_acc}')
”`
Forklaring:
– Datasæt: Vi importerer og indlæser MNIST-datasættet.
– Forbehandling: Normaliser datasættet ved at dividere pixelværdier med 255.
– Model: Vi definerer en simpel model med to lag. Det første lag er et `Flatten`-lag, der konverterer 2D-billedet til et 1D-array. Det andet lag er et `Dense`-lag med 128 neuroner og `relu` som aktiveringsfunktion, og det sidste er et `Dense`-lag med 10 neuroner, der repræsenterer 10 klasser.
– Kompilering: Vi kompilerer modellen ved hjælp af `adam`-optimeringsværktøjet og `SparseCategoricalCrossentropy` som tabsfunktion.
– Træn: Træn modellen i 5 epoker.
– Evaluer: Evaluer modellen i forhold til testdata.
6. Lagring og indlæsning af modeller
Efter du har trænet en model, kan du gemme den til senere brug uden at skulle træne den igen. Sådan gemmer og indlæser du en model:
"'python
Gemmer modellen
model.gem('min_model.h5')
Indlæser model
ny_model = tf.keras.models.load_model('min_model.h5')
Bekræftelse af den indlæste model
tab, acc = new_model.evaluate(test_images, test_labels)
print(f'Nøjagtighed af indlæst model: {acc}')
”`
Konklusion
Denne guide giver en detaljeret introduktion til at komme i gang med TensorFlow for begyndere. Vi har dækket installation, grundlæggende tensoroperationer og opbygning af en simpel neural netværksmodel ved hjælp af MNIST-datasættet. TensorFlow tilbyder mange avancerede funktioner at udforske, såsom avanceret databehandling , mere komplekse modeller og brug af TensorFlow på enheder som TPU'er og GPU'er. Vi håber, at denne vejledning hjælper dig med at komme i gang med maskinlæringens verden med TensorFlow.