Artificial Intelligence (AI) wis entuk popularitas sing signifikan ing taun-taun pungkasan.
Yen sampeyan minangka insinyur piranti lunak, ilmuwan komputer, utawa penggemar ilmu data umume, mula sampeyan bakal kepengin weruh aplikasi pangolahan gambar, pangenalan pola lan deteksi obyek sing apik banget sing diwenehake dening lapangan iki.
Subbidang AI sing paling penting sing mbokmenawa sampeyan krungu yaiku Deep Learning. Bidang iki fokus ing algoritma kuat (instruksi program komputer) model sawise fungsi otak manungsa dikenal minangka Jaringan saraf.
Ing artikel iki, kita bakal ngrembug babagan konsep Jaringan Syaraf lan carane mbangun, nyusun, pas lan ngevaluasi model kasebut nggunakake Python.
Jaringan saraf
Neural Networks, utawa NNs, minangka seri algoritma sing dimodelake miturut aktivitas biologis otak manungsa. Neural Networks kasusun saka node, uga disebut neuron.
Koleksi node vertikal dikenal minangka lapisan. Model kasebut kalebu siji input, siji output, lan sawetara lapisan sing didhelikake. Saben lapisan kasusun saka node, uga disebut neuron, ing ngendi petungan ditindakake.
Ing diagram ing ngisor iki, bunderan makili simpul lan koleksi vertikal simpul makili lapisan. Ana telung lapisan ing model iki.
Node saka siji lapisan disambungake menyang lapisan sabanjure liwat saluran transmisi kaya sing katon ing ngisor iki.
Dataset kita kasusun saka data berlabel. Iki tegese saben entitas data wis diwenehi nilai jeneng tartamtu.
Dadi kanggo dataset klasifikasi kewan kita bakal duwe gambar kucing lan asu minangka data kita, kanthi label 'kucing' lan 'asu'.
Wigati dicathet menawa label kudu diowahi dadi angka numerik supaya model kita bisa ngerteni, mula label kewan dadi '0' kanggo kucing lan '1' kanggo asu. Data lan label kasebut dilewati liwat model kasebut.
Learning
Data diwenehake menyang model siji entitas sekaligus. Data iki dipérang dadi potongan-potongan lan ngliwati saben simpul model. Node nindakake operasi matematika ing potongan kasebut.
Sampeyan ora perlu ngerti fungsi matematika utawa petungan kanggo tutorial iki, nanging iku penting kanggo duwe idea umum carane model iki bisa. Sawise sawetara petungan ing siji lapisan, data diterusake menyang lapisan sabanjure lan sateruse.
Sawise rampung, model kita prédhiksi label data ing lapisan output (contone, ing masalah klasifikasi kewan, kita entuk prediksi '0' kanggo kucing).
Model kasebut banjur nerusake mbandhingake nilai sing diprediksi karo nilai label sing nyata.
Yen nilai cocog, model kita bakal njupuk input sabanjuré nanging yen nilai beda model bakal ngetung prabédan antarane loro nilai, disebut mundhut, lan nyetel petungan simpul kanggo gawé label cocog wektu sabanjuré.
Kerangka Kerja Deep Learning
Kanggo mbangun Neural Networks ing kode, kita kudu ngimpor kerangka Deep Learning dikenal minangka perpustakaan nggunakake Integrated Development Environment (IDE).
Kerangka iki minangka kumpulan fungsi sing wis ditulis sing bakal mbantu kita ing tutorial iki. Kita bakal nggunakake kerangka Keras kanggo mbangun model kita.
Keras minangka perpustakaan Python sing nggunakake backend sinau jero lan intelijen buatan sing diarani aliran tensor kanggo nggawe NNs ing wangun model sequential prasaja karo ease.
Keras uga dilengkapi model sing wis ana sing bisa digunakake uga. Kanggo tutorial iki, kita bakal nggawe model dhewe nggunakake Keras.
Sampeyan bisa sinau luwih lengkap babagan kerangka Deep Learning iki saka situs web Keras.
Nggawe Jaringan Syaraf (Tutorial)
Ayo dadi nerusake kanggo mbangun Neural Network nggunakake Python.
Pernyataan Masalah
Jaringan Syaraf minangka jinis solusi kanggo masalah berbasis AI. Kanggo tutorial iki, kita bakal ngrembug Data Diabetes Pima Indians, sing kasedhiya kene.
UCI Machine Learning wis nyusun dataset iki lan ngemot cathetan medis pasien India. Model kita kudu prédhiksi apa pasien ngalami diabetes sajrone 5 taun utawa ora.
Loading Dataset
Dataset kita minangka file CSV siji sing diarani 'diabetes.csv' sing bisa gampang dimanipulasi nggunakake Microsoft Excel.
Sadurunge nggawe model, kita kudu ngimpor dataset kita. Nggunakake kode ing ngisor iki sampeyan bisa nindakake iki:
ngimpor pandas kaya pd
data = pd.read_csv('diabetes.csv')
x = data.drop(“Hasil”)
y = data["Hasil"]
Ing kene kita nggunakake Pandas perpustakaan kanggo bisa kanggo ngapusi data file CSV kita, read_csv () punika fungsi dibangun ing Pandas sing ngijini kita kanggo nyimpen nilai ing file kanggo variabel disebut 'data'.
Variabel x ngemot dataset kita tanpa data asil (label). We entuk iki karo data.drop () fungsi sing mbusak labels kanggo x, nalika y mung ngandhut kasil (label) data.
Model Sekuensial Bangunan
Langkah 1: Ngimpor Pustaka
Kaping pisanan, kita kudu ngimpor TensorFlow lan Keras, bebarengan karo paramèter tartamtu sing dibutuhake kanggo model kita. Kode ing ngisor iki ngidini kita nindakake iki:
impor tensorflow minangka tf
from tensorflow import keras
saka tensorflow.keras.models ngimpor Sequential
saka tensorflow.keras.layers import Activation, Dense
saka tensorflow.keras.optimizers ngimpor Adam
saka tensorflow.keras.metrics ngimpor categorical_crossentropy
Kanggo model kita ngimpor lapisan sing padhet. Iki minangka lapisan sing disambungake kanthi lengkap; yaiku, saben simpul ing lapisan disambungake kanthi lengkap karo simpul liyane ing lapisan sabanjure.
Kita uga ngimpor a aktifitas fungsi sing dibutuhake kanggo data skala sing dikirim menyang simpul. Optimizers uga wis diimpor kanggo nyuda kerugian.
Adam minangka pangoptimal sing misuwur sing nggawe petungan simpul nganyari model luwih efisien, bebarengan karo categorical_crossentropy kang jinis fungsi mundhut (ngetung prabédan antarane nilai label nyata lan mbadek) sing bakal digunakake.
Langkah 2: Ngrancang Model Kita
Model aku nggawe duwe siji input (karo 16 Unit), siji didhelikake (karo 32 Unit) lan siji output (karo 2 Unit) lapisan. Nomer iki ora tetep lan bakal gumantung ing masalah tartamtu.
Nyetel jumlah unit lan lapisan sing tepat minangka proses sing bisa nambah lembur liwat latihan. Aktivasi cocog karo jinis skala sing bakal ditindakake ing data sadurunge ngliwati simpul.
Relu lan Softmax minangka fungsi aktivasi sing misuwur kanggo tugas iki.
model = Sekuensial([
Kandhel(unit = 16, input_shape = (1,), aktivasi = 'relu'),
Kandhel(unit = 32, aktivasi = 'relu'),
Kandhel (unit = 2, aktivasi = 'softmax')
])
Mangkene ringkesan model kasebut:
Latihan Model
Model kita bakal dilatih ing rong langkah, sing pisanan yaiku nyusun model (nglebokake model bebarengan) lan sabanjure nyepetake model ing set data sing diwenehake.
Iki bisa rampung nggunakake model.compile () fungsi ngiring dening model.fit () fungsi.
model.compile(optimizer = Adam(learning_rate = 0.0001), mundhut = 'binary_crossentropy', metrik = ['akurasi'])
model.fit(x, y, jaman = 30, batch_size = 10)
Nemtokake metrik 'akurasi' ngidini kita mirsani akurasi model nalika latihan.
Amarga label kita ana ing wangun 1 lan 0, kita bakal nggunakake fungsi mundhut binar kanggo ngitung prabédan antarane label nyata lan prediksi.
Dataset uga dipérang dadi kumpulan 10 (batch_size) lan bakal dilewati liwat model kaping 30 (jaman). Kanggo dataset tartamtu, x bakal dadi data lan y bakal dadi label sing cocog karo data kasebut.
Model Pengujian Nggunakake Prediksi
Kanggo ngevaluasi model kita, kita nggawe prediksi ing data test nggunakake fungsi prediksi ().
prediksi = model.prediksi(x)
Lan iku!
Sampeyan saiki kudu duwe pangerten apik babagan Learning Deep aplikasi, Neural Networks, carane padha bisa ing umum lan carane mbangun, olahraga lan test model ing kode Python.
Mugi tutorial iki menehi kickstart kanggo nggawe lan masang model Deep Learning dhewe.
Ayo ngerti ing komentar yen artikel kasebut migunani.
Ninggalake a Reply