TensorFlow erabiltzeko tutoriala hasiberrientzat

TensorFlow Tutoriala Hasiberrientzat

TensorFlow ikaskuntza sakonerako eta makina-ikaskuntzarako framework ezagunenetako bat da. Google Brain taldeak garatua, TensorFlow ikerketa-proiektu eta aplikazio industrial ugaritan erabili izan da. Artikulu honek urratsez urratseko tutorial bat eskaintzen dizu, hasiberri gisa TensorFlow-ekin hasteko.

1. TensorFlow-en oinarriak ulertzea

TensorFlow instalatzen eta erabiltzen hasi aurretik, garrantzitsua da TensorFlow zer den eta haren atzean dauden oinarrizko kontzeptuak ulertzea. TensorFlow kalkulu numerikorako eta ikaskuntza automatikorako kode irekiko esparru bat da. Datu-fluxu grafikoak erabiltzen ditu eragiketa numerikoak egiteko, non grafikoko nodoek eragiketa matematikoak adierazten dituzten, eta ertzek haien artean konektatutako datu-matrize multidimentsionalak (tentsoreak).

2. TensorFlow instalazioa

TensorFlow erabiltzeko lehen urratsa instalatzea da. Hona hemen TensorFlow nola instalatu pip erabiliz, Python pakete kudeatzailea.

1. Python instalazioa:
Ziurtatu Python instalatuta duzula zure sisteman. TensorFlow Python 3.6tik 3.9ra bitartekoekin bateragarria da hau idazteko unean. Python deskargatu dezakezu Python webgune ofizialetik.

2. Ingurune Birtuala:
Oso gomendagarria da ingurune birtual bat sortzea zure TensorFlow proiektua isolatzeko:
"Bux"
python -m venv myenv
iturburua myenv/bin/activate Mac/Linux erabiltzaileentzat
myenv\Scripts\activate Windows erabiltzaileentzat
"`

3. TensorFlow instalazioa:
Orain, instalatu TensorFlow pip erabiliz:
"Bux"
pip instalatu tensorflow
"`

3. Kaixo Mundua TensorFlow-ekin

Orain TensorFlow instalatuta dagoenez, sor dezagun Python script sinple bat instalazioa egiaztatzeko. Sortu Python fitxategi berri bat eta jarri izena `hello_tensorflow.py`.

"`python"
inportatu tentsore-fluxua tf gisa

Konstante bat sortu
kaixo = tf.constant('Kaixo, TensorFlow!')

Hasi saioa
tf.Session()-ekin sess gisa:
emaitza = sess.run(kaixo)
inprimatu (emaitza)
"`

READ  SQL ikasteko lineako baliabide onenak

Egokitu kodea TensorFlow 2.x bertsioaren arabera:

"`python"
inportatu tentsore-fluxua tf gisa

Konstante bat sortu
kaixo = tf.constant('Kaixo, TensorFlow!')

Exekutatu exekuzio bizkorra erabiliz (lehenespenez aktibatuta)
inprimatu(kaixo.numpy())
"`

Gorde fitxategia, eta ondoren exekutatu:
"Bux"
python kaixo_tensorflow.py
"`

4. Tentsoreak eta oinarrizko eragiketak ulertzea

Tensoreak TensorFlow-en datu-egitura nagusia dira, eta dimentsio anitzeko matrizeak dira. Hona hemen tentsoreak ulertzen laguntzeko adibide batzuk:

"`python"
inportatu tentsore-fluxua tf gisa

Tentsoreak sortzea
eskalar = tf. konstantea(7) eskalar
bektorea = tf konstantea([1, 2, 3]) bektorea
matrizea = tf konstantea([[1, 2], [3, 4]]) matrizea
tentsorea3d = tf.konstantea([[1, 2, 3], [4, 5, 6]], [[7, 8, 9], [10, 11, 12]]]) 3D tentsorea

inprimatu(f'Eskalarra: {eskalarra}')
inprimatu(f'Bektorea: {bektorea}')
inprimatu(f'Matrizea: {matrizea}')
inprimatu(f'Tentsore 3D: {tensor3d}')
"`

Tentsoreekin oinarrizko eragiketak egiteko:

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

Gehikuntza eragiketa
gehitu = tf.add(a, b)
Matrizeen biderketa eragiketak
mul = tf.matmul(a, b)

inprimatu(f'Batuketa: {gehitu}')
inprimatu(f'Matrizearen Biderketa: {mult}')
"`

5. Sare Neuronal Sinple baten Eredua Sortzea

Hurrengo urratsa sare neuronal eredu sinple bat sortzea da. Irudien sailkapen eredu bat eraikiko dugu MNIST datu-multzoa erabiliz, eskuz idatzitako digituen irudien datu-base bat. Has gaitezen:

"`python"
inportatu tentsore-fluxua tf gisa
tensorflow.keras-etik inportatu datu-multzoak, geruzak, modeloak

MNIST datu-multzoa deskargatzea
(tren_irudiak, tren_etiketak), (proba_irudiak, proba_etiketak) = datu-multzoak.mnist.load_data()

Irudien normalizazioa
tren_irudiak, proba_irudiak = tren_irudiak / 255.0, proba_irudiak / 255.0

Modelo bat egitea.
eredua = ereduak.Sekuentziala([
geruzak.Laudu(sarrera_forma=(28, 28)),
layers.Dense(128, activation='relu'),
geruzak.Densitatea(10)
])

Modeloen konpilazioa
model.compile(optimizatzailea='adam',
galera=tf.keras.galerak.SparseKategoricalCrossentropia(from_logits=True),
metrikak=['zehaztasuna'])

Modeloa entrenatzen
model.fit(tren_irudiak, tren_etiketak, aroak=5)

Modeloa probatzea
proba_galera, proba_akzioa = eredua.ebaluatu(proba_irudiak, proba_etiketak)
inprimatu(f'Probaren zehaztasuna: {test_acc}')
"`

Azalpena:
– Datu-multzoak: MNIST datu-multzoa inportatu eta kargatzen dugu.
– Aurreprozesamendua: Datu-multzoa normalizatzea pixelen balioak 255ez zatituz.
– Eredua: Bi geruza dituen eredu sinple bat definitzen dugu. Lehenengo geruza `Flatten` geruza bat da, 2D irudia 1D array batean bihurtzeko. Bigarren geruza `Dense` geruza bat da, 128 neurona dituena eta `relu` aktibazio funtzio gisa duena, eta azkena `Dense` geruza bat da, 10 neurona dituena, 10 klase ordezkatuz.
– Konpilatu: Eredua `adam` optimizatzailea eta `SparseCategoricalCrossentropy` galera-funtzio gisa erabiliz konpilatzen dugu.
– Entrenatu: Eredua 5 aroetarako entrenatu.
– Ebaluatu: Eredua proba-datuekin alderatu.

READ  Enpresa txikietan sareko segurtasunerako jardunbide egokiak

6. Modeloak gordetzea eta kargatzea

Modelo bat entrenatu ondoren, gorde nahi izango duzu geroago erabiltzeko, berriro entrenatu beharrik gabe. Hona hemen modelo bat nola gorde eta kargatu:

"`python"
Modeloa gordetzea.
model.save('nire_eredua.h5')

Eredua kargatzen
modelo_berria = tf.keras.modeloak.modeloa_kargatu('nire_modeloa.h5′)

Kargatutako eredua egiaztatzea
galera, akt = eredu_berria.ebaluatu(proba_irudiak, proba_etiketak)
print(f'Kargatutako ereduaren zehaztasuna: {acc}')
"`

Ondorioa

Gida honek TensorFlow-ekin hasteko sarrera zehatza eskaintzen du hasiberrientzat. Instalazioa, oinarrizko tentsore eragiketak eta MNIST datu-multzoa erabiliz sare neuronalaren eredu sinple bat eraikitzea landu ditugu. TensorFlow-ek gaitasun aurreratu asko eskaintzen ditu aztertzeko, hala nola datuen prozesamendu aurreratua, eredu konplexuagoak eta TensorFlow TPU eta GPU bezalako gailuetan erabiltzea. Tutorial honek TensorFlow-ekin makina-ikaskuntzaren munduan hasten lagunduko dizula espero dugu.

Utzi iruzkina