Werrej[Aħbi][Uri]
F'dawn l-aħħar snin, in-netwerks newrali kibru fil-popolarità peress li wrew li huma estremament tajbin f'firxa wiesgħa ta 'kompiti.
Intwera li huma għażla kbira għar-rikonoxximent tal-immaġni u tal-awdjo, l-ipproċessar tal-lingwa naturali, u anke logħob ikkumplikat bħal Go u ċess.
F'din il-kariga, se nmexxik permezz tal-proċess kollu tat-taħriġ ta 'netwerk newrali. Se nsemmi u nispjega l-passi kollha biex jitħarreġ netwerk newrali.
Filwaqt li se ngħaddi fuq il-passi nixtieq inżid eżempju sempliċi biex niżgura li jkun hemm eżempju prattiku wkoll.
Allura, ejja, u ejja nitgħallmu kif tipproċessa n-netwerks newrali
Ejja nibdew sempliċi u nistaqsu x'inhuma netwerks newrali fl-ewwel lok.
X'inhuma eżattament Netwerks newrali?
Netwerks newrali huma softwer tal-kompjuter li jissimula l-operat tal-moħħ tal-bniedem. Jistgħu jitgħallmu minn volumi vasti ta’ dejta u mudelli ta’ spot li n-nies jistgħu jsibuha diffiċli biex jiskopru.
In-netwerks newrali kibru fil-popolarità f'dawn l-aħħar snin minħabba l-versatilità tagħhom f'ħidmiet bħar-rikonoxximent tal-istampa u tal-awdjo, l-ipproċessar tal-lingwa naturali u l-immudellar ta 'tbassir.
B'mod ġenerali, in-netwerks newrali huma għodda b'saħħitha għal firxa wiesgħa ta' applikazzjonijiet u għandhom iċ-ċans li jittrasformaw il-mod kif navviċinaw firxa wiesgħa ta' impjiegi.
Għaliex Għandna Nafu Dwarhom?
Il-fehim tan-netwerks newrali huwa kritiku għaliex wasslu għal skoperti f'varjetà ta 'oqsma, inklużi l-viżjoni bil-kompjuter, ir-rikonoxximent tad-diskors u l-ipproċessar tal-lingwa naturali.
Netwerks newrali, pereżempju, huma fil-qalba ta 'żviluppi reċenti fil-karozzi li jsuqu waħedhom, servizzi ta' traduzzjoni awtomatika, u anke dijanjostika medika.
Nifhmu kif jiffunzjonaw in-netwerks newrali u kif niddisinjawhom jgħinna nibnu applikazzjonijiet ġodda u inventivi. U, forsi, jista 'jwassal għal skoperti saħansitra akbar fil-futur.
Nota Dwar it-Tutorial
Kif għedt hawn fuq, nixtieq nispjega l-passi tat-taħriġ ta 'netwerk newrali billi nagħti eżempju. Biex tagħmel dan, għandna nitkellmu dwar id-dataset MNIST. Hija għażla popolari għal dawk li jibdew li jridu jibdew man-netwerks newrali.
MNIST huwa akronimu li jirrappreżenta l-Istitut Nazzjonali Modifikat tal-Istandards u t-Teknoloġija. Huwa sett ta 'dejta b'ċifri miktuba bl-idejn li jintuża komunement għat-taħriġ u l-ittestjar ta' mudelli ta 'tagħlim tal-magni, notevolment netwerks newrali.
Il-kollezzjoni fiha 70,000 ritratt fuq skala griża ta’ numri miktuba bl-idejn li jvarjaw minn 0 sa 9.
Is-sett tad-dejta MNIST huwa punt ta' referenza popolari għal klassifikazzjoni tal-immaġini ħidmiet. Huwa użat ta 'spiss għat-tagħlim u t-tagħlim peress li huwa kompatt u faċli biex jiġi ttrattat filwaqt li għadu joħloq sfida diffiċli għall-algoritmi tat-tagħlim tal-magni biex iwieġbu.
Is-sett tad-dejta MNIST huwa appoġġjat minn diversi oqfsa u libreriji ta' tagħlim tal-magni, inklużi TensorFlow, Keras u PyTorch.
Issa nafu dwar id-dataset MNIST, ejja nibdew bil-passi tagħna ta 'taħriġ ta' netwerk newrali.
Passi Bażiċi biex Tħarreġ Netwerk Neural
Importa Libreriji Neċessarji
Meta l-ewwel tibda tħarreġ netwerk newrali, huwa kritiku li jkollok l-għodda meħtieġa biex tiddisinja u tħarreġ il-mudell. Il-pass inizjali fil-ħolqien ta 'netwerk newrali huwa li timporta libreriji meħtieġa bħal TensorFlow, Keras, u NumPy.
Dawn il-libreriji jservu bħala blokki għall-iżvilupp tan-netwerk newrali u jipprovdu kapaċitajiet kruċjali. Il-kombinazzjoni ta 'dawn il-libreriji tippermetti l-ħolqien ta' disinji sofistikati tan-netwerk newrali u taħriġ mgħaġġel.
Biex nibdew l-eżempju tagħna; aħna se jimportaw il-libreriji meħtieġa, li jinkludu TensorFlow, Keras, u NumPy. TensorFlow huwa qafas ta 'tagħlim tal-magni open-source, Keras huwa API ta' netwerk newrali ta 'livell għoli, u NumPy hija librerija Python tal-kompjuters numeriku.
import tensorflow as tf
from tensorflow import keras
import numpy as np
Itella d-Dataset
Is-sett tad-dejta issa jrid jitgħabba. Is-sett tad-dejta huwa s-sett ta' dejta li fuqhom se jiġi mħarreġ in-netwerk newrali. Dan jista 'jkun kwalunkwe tip ta' data, inklużi ritratti, awdjo, u test.
Huwa kritiku li s-sett tad-dejta jinqasam f'żewġ partijiet: waħda għat-taħriġ tan-netwerk newrali u oħra għall-valutazzjoni tal-korrettezza tal-mudell imħarreġ. Diversi libreriji, inklużi TensorFlow, Keras, u PyTorch, jistgħu jintużaw biex jimportaw is-sett tad-dejta.
Għall-eżempju tagħna, nużaw ukoll Keras biex tagħbija d-dataset MNIST. Hemm 60,000 ritratt tat-taħriġ u 10,000 immaġini tat-test fis-sett tad-dejta.
mnist = keras.datasets.mnist
(train_images, train_labels), (test_images, test_labels) = mnist.load_data()
Ipproċessa minn qabel Id-Dejta
L-ipproċessar minn qabel tad-dejta huwa stadju importanti fit-taħriġ ta 'netwerk newrali. Dan jinvolvi t-tħejjija u t-tindif tad-dejta qabel ma tiġi mgħoddija fin-netwerk newrali.
L-iskala tal-valuri tal-pixel, in-normalizzazzjoni tad-dejta, u l-konverżjoni tat-tikketti għal kodifikazzjoni waħda sħuna huma eżempji ta 'proċeduri ta' preproċessar. Dawn il-proċessi jgħinu lin-netwerk newrali fit-tagħlim b'mod aktar effettiv u preċiż.
L-ipproċessar minn qabel tad-dejta jista 'jgħin ukoll biex jiġi minimizzat it-twaħħil żejjed u jtejjeb il-prestazzjoni tan-netwerk newrali.
Trid tipproċessa d-dejta minn qabel qabel ma tħarreġ in-netwerk newrali. Dan jinkludi t-tibdil tat-tikketti għal kodifikazzjoni waħda sħuna u l-iskala tal-valuri tal-pixel biex ikunu bejn 0 u 1.
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)
Iddefinixxi l-Mudell
Il-proċess tad-definizzjoni tal-mudell tan-netwerk newrali jinvolvi l-istabbiliment tal-arkitettura tiegħu, bħan-numru ta 'saffi, numru ta' newroni għal kull saff, funzjonijiet ta 'attivazzjoni, u tip ta' netwerk (feedforward, rikorrenti jew konvoluzzjonali).
Id-disinn tan-netwerk newrali li tuża huwa determinat mit-tip ta' problema li qed tipprova ssolvi. Disinn ta' netwerk newrali definit tajjeb jista' jgħin fit-tagħlim tan-netwerk newrali billi jagħmilha aktar effiċjenti u preċiża.
Wasal iż-żmien li tiddeskrivi l-mudell tan-netwerk newrali f'dan il-punt. Uża mudell sempliċi b'żewġ saffi moħbija, kull wieħed b'128 newroni, u saff ta 'output softmax, li għandu 10 newroni, għal dan l-eżempju.
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')
])
Iġbor il-Mudell
Il-funzjoni tat-telf, l-ottimizzatur, u l-metriċi għandhom jiġu speċifikati matul il-kumpilazzjoni tal-mudell tan-netwerk newrali. Il-kapaċità tan-netwerk newrali li jbassar b'mod korrett l-output hija mkejla mill-funzjoni tat-telf.
Biex tiżdied l-eżattezza tan-netwerk newrali waqt it-taħriġ, l-ottimizzatur jimmodifika l-piżijiet tiegħu. L-effettività tan-netwerk newrali waqt it-taħriġ titkejjel bl-użu ta 'metriċi. Il-mudell għandu jinħoloq qabel ma n-netwerk newrali jista 'jiġi mħarreġ.
Fl-eżempju tagħna, issa rridu nibnu l-mudell.
model.compile(optimizer='adam', loss='categorical_crossentropy', metrics=['accuracy'])
Ħareġ il-Mudell
Il-mogħdija tad-dataset ippreparat min-netwerk newrali filwaqt li timmodifika l-piżijiet tan-netwerk biex timminimizza l-funzjoni tat-telf hija magħrufa bħala t-taħriġ tan-netwerk newrali.
Is-sett tad-dejta tal-validazzjoni jintuża biex jittestja n-netwerk newrali waqt it-taħriġ biex issegwi l-effettività tiegħu u jipprevjeni t-twaħħil żejjed. Il-proċess tat-taħriġ jista 'jieħu ftit taż-żmien, għalhekk huwa importanti li jiġi żgurat li n-netwerk newrali huwa mħarreġ b'mod xieraq biex jipprevjeni underfitting.
Bl-użu tad-dejta tat-taħriġ, issa nistgħu nħarrġu l-mudell. Biex nagħmlu dan, irridu niddefinixxu d-daqs tal-lott (in-numru ta 'kampjuni pproċessati qabel ma l-mudell jiġi aġġornat) u n-numru ta' epoki (in-numru ta 'repetizzjonijiet madwar id-dataset komplut).
model.fit(train_images, train_labels, epochs=10, batch_size=32)
Evalwazzjoni tal-Mudell
L-ittestjar tal-prestazzjoni tan-netwerk newrali fuq is-sett tad-dejta tat-test huwa l-proċess tal-evalwazzjoni tiegħu. F'dan l-istadju, in-netwerk newrali mħarreġ jintuża biex jipproċessa s-sett tad-dejta tat-test, u l-eżattezza hija evalwata.
Kemm netwerk newrali jista' jbassar b'mod effettiv ir-riżultat it-tajjeb minn dejta ġdida fjamanta u mhux ippruvata hija miżura tal-eżattezza tagħha. L-analiżi tal-mudell tista 'tgħin biex tiddetermina kemm in-netwerk newrali qed jaħdem tajjeb u tissuġġerixxi wkoll modi biex tagħmilha aħjar.
Fl-aħħar nistgħu nevalwaw il-prestazzjoni tal-mudell billi tuża d-dejta tat-test wara t-taħriġ.
test_loss, test_acc = model.evaluate(test_images, test_labels)
print('Test accuracy:', test_acc)
Dak kollox! Aħna mħarrġa netwerk newrali biex tiskopri ċifri fis-sett tad-dejta MNIST.
Mill-preparazzjoni tad-dejta sal-valutazzjoni tal-effettività tal-mudell imħarreġ, it-taħriġ ta 'netwerk newrali jinvolvi diversi proċessi. Dawn l-istruzzjonijiet jassistu lin-novizzi fil-bini u t-taħriġ effiċjenti tan-netwerks newrali.
Dawk li jibdew li jixtiequ jużaw netwerks newrali biex jindirizzaw diversi kwistjonijiet jistgħu jagħmlu dan billi jsegwu dawn l-istruzzjonijiet.
Viżwalizzazzjoni tal-Eżempju
Ejja nippruvaw naraw dak li għamilna b’dan l-eżempju biex nifhmu aħjar.
Il-pakkett Matplotlib jintuża f'dan is-snippet tal-kodiċi biex jippjana għażla każwali ta' ritratti mis-sett tad-dejta tat-taħriġ. L-ewwel, aħna jimportaw il-modulu "pyplot" ta' Matplotlib u psewdonimu bħala "plt". Imbagħad, b'dimensjoni totali ta '10 b'10 pulzieri, nagħmlu figura b'5 ringieli u 5 kolonni ta' subplots.
Imbagħad, nużaw for loop biex itenni fuq is-subplots, u juri stampa mis-sett tad-dejta tat-taħriġ fuq kull wieħed. Biex turi l-istampa, tintuża l-funzjoni "imshow", bl-għażla "cmap" issettjata għal "griż" biex turi r-ritratti fi skala griża. It-titlu ta' kull subplot huwa ssettjat ukoll għat-tikketta tal-immaġni assoċjata fil-kollezzjoni.
Fl-aħħarnett, nużaw il-funzjoni "turi" biex nuru l-istampi plottjati fil-figura. Din il-funzjoni tippermettilna nevalwaw viżwalment kampjun ta’ ritratti mis-sett tad-dejta, li jista’ jgħin fil-fehim tagħna tad-dejta u l-identifikazzjoni ta’ kwalunkwe tħassib possibbli.
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()
Mudelli Importanti tan-Netwerk Newrali
- Netwerks newrali Feedforward (FFNN): Tip sempliċi ta’ netwerk newrali li fih l-informazzjoni tivvjaġġa biss b’mod wieħed, mis-saff tal-input għas-saff tal-ħruġ permezz ta’ saff moħbi wieħed jew aktar.
- Netwerks Newrali Konvoluzzjonali (CNN): Netwerk newrali li jintuża komunement fl-iskoperta u l-ipproċessar tal-immaġni. Is-CNNs huma maħsuba biex jirrikonoxxu u estratt karatteristiċi minn stampi awtomatikament.
- Netwerks Newrali Rikorrenti (RNN): Netwerk newrali li jintuża komunement fl-iskoperta u l-ipproċessar tal-immaġni. Is-CNNs huma maħsuba biex jirrikonoxxu u estratt karatteristiċi minn stampi awtomatikament.
- Netwerks ta' Memorja fit-Tul Qasira (LSTM): Forma ta 'RNN maħluqa biex tingħeleb il-kwistjoni ta' gradjenti li jisparixxu fl-RNNs standard. Dipendenzi fit-tul fid-dejta sekwenzjali jistgħu jinqabdu aħjar bl-LSTMs.
- Autoencoders: Netwerk newrali ta' tagħlim mhux sorveljat li fih in-netwerk jiġi mgħallem jirriproduċi d-dejta tal-input tiegħu fis-saff tal-ħruġ tiegħu. Il-kompressjoni tad-dejta, l-iskoperta ta' anomaliji, u t-tnaqqis tal-istorbju tal-istampa kollha jistgħu jitwettqu b'autoencoders.
- Netwerks Avversarji Ġenerattivi (GAN): Netwerk newrali ġenerattiv huwa forma ta 'netwerk newrali li huwa mgħallem biex jipproduċi data ġdida li hija komparabbli ma' sett ta 'data ta' taħriġ. Il-GANs huma magħmula minn żewġ netwerks: netwerk ġeneratur li joħloq dejta ġdida u netwerk diskriminatorju li jevalwa l-kwalità tad-dejta maħluqa.
Wrap-Up, X'għandhom ikunu l-passi li jmiss tiegħek?
Esplora diversi riżorsi u korsijiet onlajn biex titgħallem aktar dwar it-taħriġ ta' netwerk newrali. Il-ħidma fuq proġetti jew eżempji hija metodu wieħed biex tinkiseb ħakma aħjar tan-netwerks newrali.
Ibda b'eżempji faċli bħal problemi ta' klassifikazzjoni binarja jew kompiti ta' klassifikazzjoni ta' stampi, u mbagħad mur għal kompiti aktar diffiċli bħall-ipproċessar tal-lingwa naturali jew tagħlim tar-rinfurzar.
Il-ħidma fuq proġetti tgħinek tikseb esperjenza reali u ttejjeb il-ħiliet tiegħek fit-taħriġ tan-netwerk newrali.
Tista' wkoll tingħaqad ma' gruppi u forums ta' tagħlim tal-magni u netwerk newrali onlajn biex jinteraġixxu ma' studenti u professjonisti oħra, taqsam ix-xogħol tiegħek, u tirċievi kummenti u għajnuna.
LSRS MONRAD-KROHN
⁶ĵJixtieq jara l-programm python għall-minimizzazzjoni tal-iżbalji. Nodi ta 'għażla speċjali għal bidliet fil-piż għas-saff li jmiss