Isifundo se-TensorFlow sabaqalayo
I-TensorFlow ingenye yezinhlaka ezidumile kakhulu zokufunda okujulile nokufunda komshini. Yasungulwa yithimba le-Google Brain, i-TensorFlow isetshenziswe kabanzi kumaphrojekthi amaningi ocwaningo kanye nezinhlelo zokusebenza zezimboni. Lesi sihloko sinikeza isifundo sesinyathelo ngesinyathelo ukukusiza, njengomqali, ukuthi uqale nge-TensorFlow.
1. Ukuqonda Izisekelo ze-TensorFlow
Sebelum kita memulai instalasi dan penggunaan TensorFlow, penting untuk memahami apa itu TensorFlow dan konsep dasar di baliknya. TensorFlow adalah kerangka kerja open-source untuk komputasi numerik dan ukufunda imishini. Ia menggunakan grafik aliran data (data flow graphs) untuk melakukan operasi numerik, di mana node dalam grafik mewakili operasi matematika, dan tepi (edges) mewakili array data multidimensi (tensor) yang dihubungkan di antara mereka.
2. Ukufakwa kwe-TensorFlow
Isinyathelo sokuqala sokusebenzisa i-TensorFlow ukuyifaka. Nansi indlela yokufaka i-TensorFlow usebenzisa i-pip, umphathi wephakheji ye-Python.
1. Instalasi Python:
Qiniseka ukuthi une-Python efakiwe ohlelweni lwakho. I-TensorFlow iyahambisana ne-Python 3.6 kuya ku-3.9 ngesikhathi sokubhala lokhu. Ungalanda i-Python kuwebhusayithi esemthethweni ye-Python.
2. Virtual Environment:
Kunconywa kakhulu ukudala indawo ebonakalayo yokuhlukanisa iphrojekthi yakho ye-TensorFlow:
“`sh
i-python -m venv myenv
source myenv/bin/activate Untuk pengguna Mac/Linux
myenv\Scripts\activate Untuk pengguna Windows
``
3. Instalasi TensorFlow:
Manje, faka i-TensorFlow usebenzisa ipayipi:
“`sh
pip ukufaka tensorflow
``
3. Sawubona Mhlaba ngeTensorFlow
Manje njengoba i-TensorFlow isifakiwe, ake sakhe iskripthi se-Python esilula ukuqinisekisa ukufakwa. Dala ifayela elisha le-Python bese uliqamba ngokuthi `hello_tensorflow.py`.
"`python
ngenisa i-tensorflow njenge-tf
Dala okungaguquki
sawubona = tf.constant('Sawubona, TensorFlow!')
Qala iseshini
nge-tf.Session() njenge-sess:
umphumela = sess.run(sawubona)
phrinta(umphumela)
``
Lungisa ikhodi ngokuya ngenguqulo ye-TensorFlow 2.x:
"`python
ngenisa i-tensorflow njenge-tf
Dala okungaguquki
sawubona = tf.constant('Sawubona, TensorFlow!')
Sebenzisa usebenzisa i-eeping execution (ngokuzenzakalelayo)
phrinta(sawubona.numpy())
``
Londoloza ifayela, bese usebenzisa:
“`sh
python hello_tensorflow.py
``
4. Ukuqonda Ama-Tensor kanye Nemisebenzi Eyisisekelo
Ama-tensor ayisakhiwo sedatha esiyinhloko ku-TensorFlow, okuyi-multidimensional arrays. Nazi ezinye izibonelo ezizokusiza ukuthi uqonde ama-tensor:
"`python
ngenisa i-tensorflow njenge-tf
Ukudala ama-tensor
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
phrinta(f'Scalar: {scalar}')
phrinta(f'Vektha: {vektha}')
phrinta(f'I-Matrix: {i-matrix}')
phrinta(f'Tensor 3D: {tensor3d}')
``
Ukwenza imisebenzi eyisisekelo kuma-tensor:
"`python
a = tf.constant([[1, 2], [3, 4]])
b = tf.constant([[5, 6], [7, 8]])
Umsebenzi wokwengeza
engeza = tf.engeza(a, b)
Imisebenzi yokuphindaphinda kwe-matrix
mul = tf.matmul(a, b)
phrinta(f'Okungeziwe: {engeza}')
phrinta(f'Ukuphindaphinda kwe-Matrix: {mul}')
``
5. Ukudala Imodeli Yenethiwekhi Yezinzwa Elula
Isinyathelo esilandelayo ukudala imodeli elula yenethiwekhi ye-neural. Sizokwakha imodeli yokuhlukanisa izithombe sisebenzisa isethi yedatha ye-MNIST, isizindalwazi sezithombe zezinombolo ezibhalwe ngesandla. Ake siqale:
"`python
ngenisa i-tensorflow njenge-tf
kusuka ku-tensorflow.keras ukungenisa amasethi edatha, izendlalelo, amamodeli
Ukulanda isethi yedatha ye-MNIST
(izithombe_zesitimela, amalebula_esitimela), (izithombe_zokuhlola, amalebula_okuhlola) = amasethi edatha.mnist.load_data()
Ukwenziwa kwesithombe kube ngokwejwayelekile
izithombe_zesitimela, izithombe_zokuhlola = izithombe_zesitimela / 255.0, izithombe_zokuhlola / 255.0
Ukwenza imodeli
imodeli = amamodeli.Okulandelanayo([
izendlalelo.Ithambe (input_shape=(28, 28)),
izendlalelo.Kuminyene(128, activation='relu'),
izendlalelo. Eziqinile(10)
])
Ukuhlanganiswa kwemodeli
imodeli.hlanganisa(optimizer='adam',
ukulahlekelwa=tf.keras.ukulahlekelwa.OkuncaneIsigabaI-Crossentropy(from_logits=True),
amamethrikhi=['ukunemba'])
Ukuqeqesha imodeli
model.fit(izithombe_zesitimela, amalebula_esitimela, ama-epoch=5)
Ukuhlola imodeli
ukulahleka_kokuhlolwa, i-test_acc = imodeli.ukuhlola(izithombe_zokuhlolwa, amalebula_okuhlolwa)
phrinta(f'Ukunemba kokuhlola: {test_acc}')
``
Incazelo:
– Datasets: Kami mengimpor dan memuat dataset MNIST.
– Preprocessing: Dataset normalisasi dengan membagi nilai pixel dengan 255.
– Model: Kami mendefinisikan model sederhana dengan dua lapisan. Lapisan pertama adalah `Flatten` untuk mengubah gambar 2D menjadi array 1D. Lapisan kedua adalah `Dense` layer dengan 128 neuron dan `relu` sebagai fungsi aktivasi, dan yang terakhir `Dense` layer dengan 10 neuron mewakili 10 kelas.
– Compile: Kami mengkompilasi model menggunakan optimizer `adam` dan `SparseCategoricalCrossentropy` sebagai fungsi kerugian.
– Train: Melatih model selama 5 epoch.
– Evaluate: Mengevaluasi model terhadap data uji.
6. Amamodeli Okulondoloza Nokulayisha
Ngemva kokuqeqesha imodeli, ungase ufune ukuyilondoloza ukuze uyisebenzise kamuva ngaphandle kokuyiqeqesha kabusha. Nansi indlela yokulondoloza nokulayisha imodeli:
"`python
Ukulondoloza imodeli
model.save('my_model.h5')
Imodeli yokulayisha
imodeli_entsha = tf.keras.models.load_model('my_model.h5′)
Ukuqinisekisa imodeli elayishiwe
ukulahlekelwa, i-acc = imodeli_entsha.hlola(izithombe_zokuhlola, amalebula_okuhlola)
print(f'Ukunemba kwemodeli elayishiwe: {acc}')
``
Isiphetho
Panduan ini memberikan pengantar mendetail untuk memulai dengan TensorFlow untuk pemula. Kami telah membahas instalasi, operasi tensor dasar, dan pembuatan model neural network sederhana menggunakan dataset MNIST. TensorFlow menawarkan banyak kemampuan lebih lanjut yang bisa dieksplorasi, seperti ukucubungula idatha yang lebih lanjut, model yang lebih kompleks, dan penggunaan TensorFlow di berbagai perangkat seperti TPU dan GPU. Semoga tutorial ini membantumu memulai perjalanan dalam dunia ukufunda imishini dengan TensorFlow.