Zviri Mukati[Viga][Ratidza]
Mumakore achangopfuura, neural network yakakura mukuzivikanwa sezvo ivo vakaratidza kuve vakanyanya kunaka pahupamhi hwemabasa.
Vakaratidzwa kuva sarudzo huru yemufananidzo uye kucherechedzwa kwekuteerera, mutauro wechisikigo kugadzirisa, uye kunyange kutamba mitambo yakaoma seGo uye chess.
Mune ino post, ini ndinokufambisa iwe mukati mese maitiro ekudzidzisa neural network. Ini ndichataura nekutsanangura matanho ese ekudzidzisa neural network.
Kunyange ini ndichaenda pamusoro pematanho andinoda kuwedzera muenzaniso wakapfava kuti ndive nechokwadi chekuti kune muenzaniso unoshanda zvakare.
Saka, huya, uye ngatidzidze maitiro ekugadzirisa neural network
Ngatitange nyore uye tibvunze kuti chii neural networks chekutanga.
Chii Chaizvo Chinonzi Neural Networks?
Neural network isoftware yemakomputa inotevedzera kushanda kwehuropi hwemunhu. Ivo vanogona kudzidza kubva kune yakakura mavhoriyamu edhata uye mapatani emavara ayo vanhu vanogona kuwana zvakaoma kuona.
Neural network yakakura mukuzivikanwa mumakore achangopfuura nekuda kwekusiyana-siyana kwavo mumabasa akadai semufananidzo uye kucherechedzwa kwekuteerera, mutauro wechisikigo kugadzirisa, uye kufanotaura modhi.
Pakazere, neural network chishandiso chakasimba chezvakasiyana siyana zvekushandisa uye tine mukana wekushandura nzira yatinosvika nayo yakawanda yemabasa.
Nei Tichifanira Kuziva Nezvavo?
Kunzwisisa neural network kwakakosha nekuti kwakatungamira kune zvakawanikwa munzvimbo dzakasiyana siyana, kusanganisira kuona komputa, kuzivikanwa kwekutaura, uye kugadzirwa kwemutauro wechisikigo.
Neural network, semuenzaniso, iri pakati pezvichangobva kuitika mumotokari dzinozvityaira, mabasa ekushandura otomatiki, uye kunyange kuongororwa kwekurapa.
Kunzwisisa mashandiro anoita neural network uye magadzirirwo awo kunotibatsira kuvaka maapplication matsva uye ekugadzira. Uye, pamwe, zvinogona kutungamira kune zvakatowanda zviwanikwa mune ramangwana.
Chiziviso Pamusoro peChidzidzo
Sezvandambotaura pamusoro, ndinoda kutsanangura matanho ekudzidzisa neural network nekupa muenzaniso. Kuti tiite izvi, tinofanira kutaura nezve MNIST dataset. Isarudzo yakakurumbira kune vanotanga vanoda kutanga neural network.
MNIST ichidimbu chinomirira Modified National Institute of Standards and Technology. Idhijiti rakanyorwa nemaoko rinowanzo shandiswa kudzidzisa uye kuyedza mhando dzemashini dzekudzidza, kunyanya neural network.
Muunganidzwa une 70,000 greyscale mapikicha enhamba dzakanyorwa nemaoko kubva pa0 kusvika pa9.
Iyo MNIST dataset ibhenji ine mukurumbira ye mufananidzo classification mabasa. Inowanzo shandiswa pakudzidzisa nekudzidza sezvo iri compact uye iri nyore kubata nayo ichiri kuunza dambudziko rakaoma kuti muchina kudzidza algorithms kupindura.
Iyo MNIST dhatabheti inotsigirwa neakati wandei emuchina kudzidza masisitimu uye maraibhurari, anosanganisira TensorFlow, Keras, uye PyTorch.
Ikozvino tava kuziva nezve MNIST dataset, ngatitangei nematanho edu ekudzidzisa neural network.
Matanho Ekutanga Ekudzidzisa Neural Network
Isai Maraibhurari Anodiwa
Paunotanga kudzidzisa neural network, zvakakosha kuve nematurusi anodiwa ekugadzira uye kudzidzisa modhi. Nhanho yekutanga mukugadzira neural network ndeyekupinza anodiwa maraibhurari akadai seTensorFlow, Keras, uye NumPy.
Aya maraibhurari anoshanda sezvivharo zvekuvaka kusimudzira neural network uye anopa zvakakosha kugona. Iko kusanganiswa kwemaraibhurari aya kunobvumira kugadzirwa kweakaomesesa neural network dhizaini uye nekukurumidza kudzidziswa.
Kutanga muenzaniso wedu; tichapinza kunze maraibhurari anodiwa, ayo anosanganisira TensorFlow, Keras, uye NumPy. TensorFlow ndeye yakavhurika-sosi yekudzidza muchina, Keras ndeyepamusoro-level neural network API, uye NumPy inhamba yenhamba komputa Python raibhurari.
import tensorflow as tf
from tensorflow import keras
import numpy as np
Rodha iyo Dataset
Iyo dataset ikozvino inofanira kuiswa. Iyo dataset ndiyo seti yedata iyo iyo neural network ichadzidziswa. Izvi zvinogona kunge zviri chero mhando yedata, kusanganisira mafoto, odhiyo, uye zvinyorwa.
Izvo zvakakosha kupatsanura dhata muzvikamu zviviri: imwe yekudzidzisa neural network uye imwe yekuongorora iko kurongeka kweiyo yakadzidziswa modhi. Maraibhurari akati wandei, anosanganisira TensorFlow, Keras, uye PyTorch, anogona kushandiswa kuunza kunze dataset.
Kune yedu muenzaniso, isu tinoshandisa zvakare Keras kurodha iyo MNIST dataset. Kune 60,000 mapikicha ekudzidziswa uye zviuru gumi zvebvunzo mifananidzo mudhatabheti.
mnist = keras.datasets.mnist
(train_images, train_labels), (test_images, test_labels) = mnist.load_data()
Preprocess The Data
Data preprocessing inhanho yakakosha mukudzidzisa neural network. Inosanganisira kugadzirira uye kuchenesa iyo data isati yapihwa muneural network.
Kuyera pixel kukosha, normalizing data, uye kushandura mavara kune imwe-inopisa encoding mienzaniso ye preprocessing maitiro. Aya maitiro anobatsira neural network mukudzidza zvakanyanya uye nemazvo.
Kufanogadzirisa iyo data zvakare kunogona kubatsira kuderedza kuwandisa uye kugadzirisa neural network mashandiro.
Iwe unofanirwa kufanogadzirisa iyo data usati wadzidzisa iyo neural network. Izvi zvinosanganisira kushandura mavara kune imwe-inopisa encoding uye kuyera kukosha kwepixel kuve pakati pe0 ne1.
train_images = train_images / 255.0
test_images = test_images / 255.0
train_labels = keras.utils.to_categorical(train_labels, 10)
test_labels = keras.utils.to_categorical(test_labels, 10)
Tsanangura Muenzaniso
Maitiro ekutsanangura iyo neural network modhi inosanganisira kumisikidza kwayo dhizaini, senge nhamba yezvikamu, nhamba yemaneuroni padanho, activation mabasa, uye network mhando (feedforward, recurrent, kana convolutional).
Iyo neural network dhizaini yaunoshandisa inotariswa nerudzi rwedambudziko rauri kuyedza kugadzirisa. Iyo yakanyatsotsanangurwa neural network dhizaini inogona kubatsira muNeural network kudzidza nekuita kuti inyatsoita uye nemazvo.
Yave nguva yekutsanangura iyo neural network modhi panguva ino. Shandisa muenzaniso wakapfava nezvikamu zviviri zvakavanzwa, imwe neimwe ine 128 neurons, uye softmax output layer, ine 10 neurons, somuenzaniso uyu.
model = keras.Sequential([
keras.layers.Flatten(input_shape=(28, 28)),
keras.layers.Dense(128, activation='relu'),
keras.layers.Dense(128, activation='relu'),
keras.layers.Dense(10, activation='softmax')
])
Gadzirai Muenzaniso
Basa rekurasikirwa, optimizer, uye metrics zvinofanirwa kutsanangurwa panguva yekubatanidza neural network modhi. Iyo neural network kugona kufanotaura nemazvo zvinobuda kunoyerwa nebasa rekurasikirwa.
Kuwedzera neural network iko kurongeka panguva yekudzidziswa, iyo optimizer inogadzirisa huremu hwayo. Iko kushanda kweiyo neural network panguva yekudzidziswa kunoyerwa uchishandisa metrics. Iyo modhi inofanirwa kugadzirwa iyo neural network isati yadzidziswa.
Mumuenzaniso wedu, isu tinofanira ikozvino kugadzira modhi.
model.compile(optimizer='adam', loss='categorical_crossentropy', metrics=['accuracy'])
Dzidzisa Muenzaniso
Kupfuura dhata rakagadzirirwa kuburikidza neural network uku uchigadzirisa huremu hwetiweki kuti uderedze basa rekurasikirwa kunozivikanwa sekudzidzisa neural network.
Iyo dataset yekusimbisa inoshandiswa kuyedza neural network panguva yekudzidziswa kuronda kushanda kwayo uye kudzivirira kuwandisa. Maitiro ekudzidzisa anogona kutora nguva, saka zvakakosha kuve nechokwadi chekuti neural network yakadzidziswa zvakafanira kudzivirira kusakwana.
Tichishandisa iyo data yekudzidziswa, isu tinogona ikozvino kudzidzisa modhi. Kuti tiite izvi, isu tinofanirwa kutsanangura saizi yebatch (nhamba yemasampuli akagadziriswa modhi isati yagadziridzwa) uye nhamba yenguva (nhamba yekudzokororwa pane yakazara dataset).
model.fit(train_images, train_labels, epochs=10, batch_size=32)
Kuongorora Muenzaniso
Kuyedza kuita kweneural network pane dataset yebvunzo ndiyo maitiro ekuiongorora. Mune ino nhanho, iyo yakadzidziswa neural network inoshandiswa kugadzirisa iyo test dataset, uye huchokwadi hunoongororwa.
Kunyatsoita sei neural network inogona kufanotaura mhedzisiro chaiyo kubva kutsva, isina kuedzwa data chiyero chechokwadi chayo. Kuongorora modhi kunogona kubatsira kuona kuti neural network iri kushanda sei uye zvakare kupa nzira dzekuti zviite nani.
Tinogona pakupedzisira kuongorora mashandiro emuenzaniso tichishandisa data rebvunzo mushure mekudzidziswa.
test_loss, test_acc = model.evaluate(test_images, test_labels)
print('Test accuracy:', test_acc)
Ndizvo zvose! Isu takadzidzisa neural network kuona manhamba muMNIST dataset.
Kubva pakugadzirira data kusvika pakuongorora kushanda kweiyo yakadzidziswa modhi, kudzidzisa neural network kunosanganisira akati wandei maitiro. Iyi mirairo inobatsira manovices mukuvaka nemazvo uye kudzidzisa neural network.
Vanotanga vanoda kushandisa neural network kugadzirisa nyaya dzakasiyana vanogona kuzviita nekutevera iyi mirairo.
Kuona Muenzaniso
Ngatiedzei kufungidzira zvatakaita nemuenzaniso uyu kuti tinzwisise zviri nani.
Iyo Matplotlib package inoshandiswa mune iyi kodhi snippet kuronga kusarudzika kusarudzwa kwemafoto kubva kudhata rekudzidzisa. Chekutanga, isu tinopinza Matplotlib's "pyplot" module uye akariita se "plt". Zvadaro, nehupamhi hwe10 ne 10 inches, tinoita mufananidzo nemitsara ye5 uye 5 columns ye subplots.
Zvadaro, isu tinoshandisa loop kuti tiite pamusoro pezvidiki, tichiratidza mufananidzo kubva kudhata rekudzidzisa pane imwe neimwe. Kuratidza mufananidzo, basa re "imshow" rinoshandiswa, ne "cmap" sarudzo yakaiswa ku 'grey' kuratidza mafoto mu grayscale. Musoro wechikamu chimwe nechimwe wakaiswawo kune iyo label yemufananidzo wakabatana muunganidzwa.
Pakupedzisira, tinoshandisa "show" basa kuratidza mifananidzo yakarongwa mumufananidzo. Iri basa rinotitendera kuti titarise nekuona muenzaniso wemifananidzo kubva kudhataset, iyo inogona kutibatsira mukunzwisisa kwedu data uye kuzivikanwa kwechero zvingangove zvinonetsa.
import matplotlib.pyplot as plt
# Plot a random sample of images
fig, axes = plt.subplots(nrows=5, ncols=5, figsize=(10,10))
for i, ax in enumerate(axes.flat):
ax.imshow(train_images[i], cmap='gray')
ax.set_title(f"Label: {train_labels[i].argmax()}")
ax.axis('off')
plt.show()
Yakakosha Neural Network Models
- Feedforward Neural Networks (FFNN): Rudzi rwakareruka rweneural network umo ruzivo rwunongofamba nenzira imwe chete, kubva pachikamu chekuisa kusvika kune chinobuda layer kuburikidza nechikamu chimwe chete kana akawanda akavanzika.
- Convolutional Neural Networks (CNN): Neural network iyo inowanzoshandiswa mukuonekwa kwemifananidzo uye kugadzirisa. CNNs dzakagadzirirwa kuziva uye kubvisa maficha kubva pamifananidzo otomatiki.
- Recurrent Neural Networks (RNN): Neural network iyo inowanzoshandiswa mukuonekwa kwemifananidzo uye kugadzirisa. CNNs dzakagadzirirwa kuziva uye kubvisa maficha kubva pamifananidzo otomatiki.
- Memory Yenguva Ipfupi Yakareba (LSTM) Networks: Chimiro cheRNN chakagadzirwa kuti chikunde nyaya yekunyangarika gradients mumaRNN akajairwa. Kutsamira kwenguva refu mune inoteedzana data inogona kutorwa zvirinani neLSTMs.
- Autoencoders: Kusatariswa kudzidza neural network umo network inodzidziswa kuburitsa data rayo rekuisa padanho rayo rekubuda. Kudzvanywa kwedata, kutarisisa kusinganzwisisike, uye kudhirowa kwemifananidzo zvese zvinogona kuitwa neautoencoder.
- Generative Adversarial Networks (GAN): A generative neural network imhando yeneural network inodzidziswa kuburitsa data nyowani inofananidzwa nedhata rekudzidzisa. MaGAN anoumbwa nemanetiweki maviri: network yejenareta inogadzira data nyowani uye network yekusarura inoongorora kunaka kwedata rakagadzirwa.
Kupeta-Up, Chii Chinofanira Kuve Matanho Ako Anotevera?
Ongorora akati wandei online zviwanikwa uye makosi kuti udzidze zvakawanda nezve kudzidzisa neural network. Kushanda pamapurojekiti kana mienzaniso ndiyo imwe nzira yekuwana kunzwisisa kuri nani kweneural network.
Tanga nemienzaniso yakapfava senge mabhinari emhando matambudziko kana mapikicha ekuisa mabasa, wobva waenda kune mamwe mabasa akaoma sekugadziriswa kwemutauro wechisikigo kana kusimbisa kudzidza.
Kushanda pamapurojekiti kunokubatsira kuti uwane ruzivo chairwo uye uvandudze yako neural network yekudzidzisa hunyanzvi.
Iwe unogona zvakare kujoina online muchina kudzidza uye neural network mapoka uye maforamu ekudyidzana nevamwe vadzidzi nenyanzvi, kugovera basa rako, uye kugamuchira mhinduro nerubatsiro.
LSRS MONRAD-KROHN
⁶ĵNdingade kuona chirongwa chepython chekuderedza kukanganisa. Special sarudzo node dzehuremu shanduko kune inotevera layer