Clár na nÁbhar[Folaigh][Taispeáin]
Le blianta beaga anuas, tá méadú tagtha ar an éileamh atá ar líonraí néaracha ó léirigh siad go bhfuil siad thar a bheith maith ag raon leathan tascanna.
Léiríodh gur rogha iontach iad maidir le haitheantas íomhá agus fuaime, próiseáil teanga nádúrtha, agus fiú ag imirt cluichí casta mar Téigh agus fichille.
Sa phost seo, beidh mé ag siúl leat tríd an bpróiseas iomlán oiliúna líonra néareolaíoch. Luafaidh agus míneoidh mé na céimeanna go léir chun líonra néareolaíoch a oiliúint.
Cé go rachaidh mé thar na céimeanna ba mhaith liom sampla simplí a chur leis chun a chinntiú go bhfuil sampla praiticiúil ann freisin.
Mar sin, tar linn, agus foghlaimímid conas líonraí néaracha a phróiseáil
Let tús simplí agus a iarraidh ar cad iad líonraí neural sa chéad áit.
Cad iad na Líonraí Néaracha?
Is bogearraí ríomhaireachta iad líonraí néaracha a shamhlaíonn oibriú na hinchinne daonna. Is féidir leo foghlaim ó líon mór sonraí agus patrúin a aimsiú a d’fhéadfadh a bheith deacair do dhaoine a bhrath.
Tá méadú tagtha ar an éileamh atá ar líonraí néaracha le blianta beaga anuas mar gheall ar a n-ilúsáideacht i dtascanna mar aitheantas pictiúr agus fuaime, próiseáil teanga nádúrtha, agus samhaltú réamh-mheastacháin.
Tríd is tríd, is uirlis láidir iad líonraí néaracha le haghaidh raon leathan feidhmchlár agus tá deis acu an bealach ina dtugaimid faoi raon leathan post a athrú ó bhonn.
Cén Fáth ar Chóir dúinn Fhios Agat?
Tá sé ríthábhachtach líonraí néaracha a thuiscint toisc go bhfuil fionnachtana i réimsí éagsúla mar thoradh orthu, lena n-áirítear fís ríomhaire, aithint cainte, agus próiseáil teanga nádúrtha.
Tá líonraí néaracha, mar shampla, ag croílár na bhforbairtí le déanaí maidir le gluaisteáin féintiomána, seirbhísí aistriúcháin uathoibríocha, agus fiú diagnóisic leighis.
Cuidíonn tuiscint ar an gcaoi a bhfeidhmíonn líonraí néaracha agus conas iad a dhearadh linn feidhmchláir nua agus airgtheacha a thógáil. Agus, b'fhéidir, d'fhéadfadh fionnachtana níos mó fós a bheith mar thoradh air sa todhchaí.
Nóta Faoin Teagaisc
Mar a dúirt mé thuas, ba mhaith liom na céimeanna a bhaineann le líonra neural a oiliúint a mhíniú trí shampla a thabhairt. Chun seo a dhéanamh, ba cheart dúinn labhairt faoi thacar sonraí MNIST. Is rogha coitianta é do thosaitheoirí atá ag iarraidh tosú le líonraí néaracha.
Is acrainm é MNIST a sheasann don Institiúid Náisiúnta Athraithe um Chaighdeáin agus Teicneolaíocht. Is tacar sonraí digite lámhscríofa é a úsáidtear go coitianta chun samhlacha meaisínfhoghlama a thraenáil agus a thástáil, go háirithe líonraí néaracha.
Tá 70,000 grianghraf liathscála d’uimhreacha lámhscríofa idir 0 agus 9 sa bhailiúchán.
Is tagarmharc coitianta é tacar sonraí MNIST do aicmiú íomhá tascanna. Úsáidtear go minic é don teagasc agus don fhoghlaim ós rud é go bhfuil sé dlúth agus éasca le déileáil leis agus é fós ina dhúshlán deacair do halgartaim meaisínfhoghlama a fhreagairt.
Tacaíonn go leor creataí meaisínfhoghlama agus leabharlanna le tacar sonraí MNIST, lena n-áirítear TensorFlow, Keras, agus PyTorch.
Anois go bhfuil a fhios againn faoi thacar sonraí MNIST, cuirimis tús lenár gcéimeanna chun líonra néarúil a oiliúint.
Céimeanna Bunúsacha chun Líonra Néarúil a Thraenáil
Leabharlanna Riachtanacha a Iompórtáil
Agus tú ag tosú ar ghréasán néarach a thraenáil ar dtús, tá sé ríthábhachtach na huirlisí riachtanacha a bheith agat chun an tsamhail a dhearadh agus a oiliúint. Is é an chéad chéim chun líonra néarúil a chruthú ná leabharlanna riachtanacha a allmhairiú mar TensorFlow, Keras, agus NumPy.
Feidhmíonn na leabharlanna seo mar bhlocanna tógála d'fhorbairt an líonra néaraigh agus cuireann siad cumais ríthábhachtacha ar fáil. Trí na leabharlanna seo a chomhcheangal is féidir dearaí sofaisticiúla líonraí néaracha agus oiliúint thapa a chruthú.
Chun tús a chur lenár sampla; Déanfaimid na leabharlanna riachtanacha a allmhairiú, lena n-áirítear TensorFlow, Keras, agus NumPy. TensorFlow Is creat foghlama meaisín foinse oscailte é, is API líonra néarúil ardleibhéil é Keras, agus is leabharlann uimhriúil Python í NumPy.
import tensorflow as tf
from tensorflow import keras
import numpy as np
Íoslódáil an tacar sonraí
Ní mór an tacar sonraí a luchtú anois. Is é atá sa tacar sonraí ná an tacar sonraí ar a gcuirfear oiliúint ar an ngréasán néarúil. D'fhéadfadh sé seo a bheith de chineál ar bith sonraí, lena n-áirítear grianghraif, fuaime, agus téacs.
Tá sé ríthábhachtach an tacar sonraí a roinnt ina dhá chuid: ceann amháin chun an líonra néarúil a oiliúint agus cuid eile chun cruinneas na samhla oilte a mheas. Is féidir go leor leabharlanna, lena n-áirítear TensorFlow, Keras, agus PyTorch, a úsáid chun an tacar sonraí a iompórtáil.
Mar shampla, úsáidimid Keras freisin chun an tacar sonraí MNIST a luchtú. Tá 60,000 grianghraf oiliúna agus 10,000 íomhá tástála sa tacar sonraí.
mnist = keras.datasets.mnist
(train_images, train_labels), (test_images, test_labels) = mnist.load_data()
Réamhphróiseáil na Sonraí
Is céim thábhachtach é réamhphróiseáil sonraí in oiliúint líonra néarúil. Is éard atá i gceist leis na sonraí a ullmhú agus a ghlanadh sula gcuirtear isteach sa líonra néarúil é.
Is samplaí de nósanna imeachta réamhphróiseála iad luachanna picteilín a scálaiú, sonraí a normalú, agus lipéid a thiontú go ionchódú aon-te. Cabhraíonn na próisis seo leis an líonra néareolaíoch foghlaim ar bhealach níos éifeachtaí agus níos cruinne.
Is féidir le réamhphróiseáil na sonraí cuidiú freisin le rófheisteas a íoslaghdú agus le feabhas a chur ar fheidhmíocht an líonra néaraigh.
Ní mór duit na sonraí a réamhphróiseáil roimh oiliúint a chur ar an líonra néarúil. Áirítear leis seo na lipéid a athrú go ionchódú aon-te agus na luachanna picteilín a scálú le bheith idir 0 agus 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)
Sainmhínigh an Múnla
Is éard atá i gceist leis an bpróiseas chun an tsamhail líonra néaraigh a shainiú ná a ailtireacht a bhunú, mar shampla líon na sraitheanna, líon na néaróin in aghaidh an tsraith, feidhmeanna gníomhachtaithe, agus cineál líonra (saoil, athfhillteach, nó conbhlóideach).
Is é an cineál faidhbe atá tú ag iarraidh a réiteach a shocraíonn dearadh an líonra néaraigh a úsáideann tú. Is féidir le dearadh líonra néarach dea-shainithe cuidiú le foghlaim líonraí néaracha trína dhéanamh níos éifeachtaí agus níos cruinne.
Tá sé in am cur síos a dhéanamh ar mhúnla an líonra néaraigh ag an bpointe seo. Bain úsáid as múnla simplí le dhá shraith i bhfolach, gach ceann acu le 128 néaróin, agus ciseal aschuir softmax, a bhfuil 10 néaróin, don sampla seo.
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')
])
Tiomsaigh an Múnla
Ní mór an fheidhm chaillteanais, an t-optimizer, agus an mhéadracht a shonrú le linn thiomsú an tsamhail líonra néaraigh. Déantar cumas an líonra néaraigh an t-aschur a thuar i gceart a thomhas ag feidhm an chaillteanais.
Chun cruinneas an líonra néaraigh a mhéadú le linn na hoiliúna, athraíonn an optimizer a meáchain. Déantar éifeachtacht an líonra néaraigh le linn oiliúna a thomhas ag baint úsáide as méadracht. Ní mór an tsamhail a chruthú sular féidir an líonra neural a oiliúint.
Inár sampla, ní mór dúinn anois an tsamhail a thógáil.
model.compile(optimizer='adam', loss='categorical_crossentropy', metrics=['accuracy'])
Traein an Múnla
An tacar sonraí ullmhaithe a chur tríd an líonra néarúil agus meáchain an líonra á mhodhnú chun an fheidhm chaillteanais a íoslaghdú, tugtar oiliúint ar an líonra néarúil.
Úsáidtear an tacar sonraí bailíochtaithe chun an líonra néarúil a thástáil le linn na hoiliúna chun a éifeachtúlacht a rianú agus chun rófheisteas a chosc. Féadfaidh an próiseas oiliúna roinnt ama a ghlacadh, dá bhrí sin tá sé tábhachtach a chinntiú go bhfuil an líonra néareolaíoch oilte go cuí chun tearcfheistiú a chosc.
Agus na sonraí oiliúna á n-úsáid againn, is féidir linn an tsamhail a oiliúint anois. Chun seo a dhéanamh, ní mór dúinn méid an bhaisc a shainiú (líon na samplaí a phróiseáiltear sula ndéantar an tsamhail a nuashonrú) agus líon na n-athrá (líon na n-athrá ar fud an tacar sonraí iomlán).
model.fit(train_images, train_labels, epochs=10, batch_size=32)
Measúnú ar an Múnla
Is é an próiseas chun feidhmíocht an líonra néaraigh a thástáil ar an tacar sonraí tástála ná é a mheas. Sa chéim seo, úsáidtear an líonra neural oilte chun an tacar sonraí tástála a phróiseáil, agus déantar cruinneas a mheas.
Is tomhas ar a chruinneas é cé chomh héifeachtach agus is féidir le líonra néarúil an toradh ceart a thuar ó shonraí úrnua neamhtriailte. D'fhéadfadh anailís a dhéanamh ar an tsamhail cuidiú le fáil amach cé chomh maith agus atá an líonra néarúil ag obair agus d'fhéadfadh sé go molfaí bealaí chun é a dhéanamh níos fearr fós.
Is féidir linn feidhmíocht an mhúnla a mheas ar deireadh ag baint úsáide as na sonraí tástála tar éis oiliúna.
test_loss, test_acc = model.evaluate(test_images, test_labels)
print('Test accuracy:', test_acc)
Sin é an méid! Chuireamar oiliúint ar líonra néarúil chun digití a bhrath i dtacar sonraí MNIST.
Ó ullmhú na sonraí go dtí measúnú a dhéanamh ar éifeachtacht na samhla oilte, tá roinnt próiseas i gceist le hoiliúint a chur ar líonra néarúil. Cabhraíonn na treoracha seo le daoine nua líonraí neural a thógáil agus a oiliúint go héifeachtach.
Is féidir le tosaitheoirí atá ag iarraidh líonraí néaracha a úsáid chun dul i ngleic le saincheisteanna éagsúla é sin a dhéanamh trí na treoracha seo a leanúint.
Amharc ar an Sampla
Déanaimis iarracht an méid atá déanta againn leis an sampla seo a shamhlú chun tuiscint níos fearr a fháil.
Úsáidtear an pacáiste Matplotlib sa mhír chóid seo chun rogha randamach grianghraf a bhreacadh ón tacar sonraí oiliúna. Ar dtús, déanaimid modúl “pyplot” Matplotlib a allmhairiú agus é a úsáid mar “plt”. Ansin, le gné iomlán de 10 faoi 10 orlach, déanaimid figiúr le 5 sraitheanna agus 5 cholún de fhophlota.
Ansin, bainimid úsáid as lúb chun athrá a dhéanamh ar na fophlotaí, ag taispeáint pictiúr ón tacar sonraí oiliúna ar gach ceann acu. Chun an pictiúr a thaispeáint, úsáidtear an fheidhm “imshow”, agus an rogha “cmap” socraithe go ‘liath’ chun na grianghraif a thaispeáint i liathscála. Cuirtear teideal gach fophlota ar lipéad na híomhá gaolmhar sa bhailiúchán freisin.
Ar deireadh, úsáidimid an fheidhm “seó” chun na pictiúir breactha san fhíor a thaispeáint. Ligeann an fheidhm seo dúinn sampla de ghrianghraif ón tacar sonraí a mheas go radharcach, rud a d’fhéadfadh cabhrú lenár dtuiscint ar na sonraí agus aon imní a d’fhéadfadh a bheith orainn a aithint.
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()
Samhlacha Tábhachtacha Líonra Néarachais
- Líonraí Néaracha Abhartha (FFNN): Cineál simplí de líonra néaraigh ina dtaistealaíonn faisnéis ar bhealach amháin, ón gciseal ionchuir go dtí an ciseal aschuir trí shraith fholaithe amháin nó níos mó.
- Líonraí Néaracha Comhdhlúite (CNN): Líonra néarúil a úsáidtear go coitianta i mbrath agus próiseáil íomhá. Tá sé mar aidhm ag CNNanna gnéithe a aithint agus a bhaint as pictiúir go huathoibríoch.
- Líonraí Néaracha Athfhillteacha (RNN): Líonra néarúil a úsáidtear go coitianta i mbrath agus próiseáil íomhá. Tá sé mar aidhm ag CNNanna gnéithe a aithint agus a bhaint as pictiúir go huathoibríoch.
- Líonraí Cuimhne Fhadtéarmaigh Ghearrthéarmaigh (LSTM): Cruthaíodh foirm RNN chun an cheist maidir le grádáin imithe i léig i RNNanna caighdeánacha a shárú. Is féidir spleáchais fhadtéarmacha ar shonraí seicheamhacha a ghabháil níos fearr le LSTManna.
- Uath-ionchódóirí: Líonra neural foghlama gan mhaoirseacht ina múintear don líonra a shonraí ionchuir a atáirgeadh ag a chiseal aschuir. Is féidir comhbhrú sonraí, braite aimhrialtachta, agus díspeagadh pictiúr a bhaint amach le huath-ionchódóirí.
- Líonraí Sáraíochta Ginidiúla (GAN): Is cineál de líonra néarúil é líonra néar giniúna a mhúintear chun sonraí nua a tháirgeadh atá inchomparáide le tacar sonraí oiliúna. Tá GAN comhdhéanta de dhá líonra: líonra gineadóra a chruthaíonn sonraí úra agus líonra idirdhealaithe a dhéanann measúnú ar cháilíocht na sonraí cruthaithe.
Críochnaigh, Cad iad na Chéad Chéimeanna Eile Ar Chóir Leat?
Déan iniúchadh ar roinnt acmhainní agus cúrsaí ar líne chun tuilleadh a fhoghlaim faoi líonra néarúil a oiliúint. Is modh amháin é oibriú ar thionscadail nó ar shamplaí chun tuiscint níos fearr a fháil ar líonraí néaracha.
Tosaigh le samplaí éasca cosúil le fadhbanna aicmithe dénártha nó tascanna rangaithe pictiúr, agus ansin téigh go dtí tascanna níos deacra mar phróiseáil teanga nádúrtha nó foghlaim a threisiú.
Cuidíonn obair ar thionscadail leat fíorthaithí a fháil agus do scileanna oiliúna líonra néaraigh a fheabhsú.
Is féidir leat páirt a ghlacadh freisin i ngrúpaí agus fóraim mheaisínfhoghlama agus néarlíonra ar líne chun idirghníomhú le foghlaimeoirí agus daoine gairmiúla eile, do chuid oibre a roinnt, agus tuairimí agus cabhair a fháil.
LSRS MONRAD-KROHN
⁶ĵBa mhaith leis an clár python a fheiceáil chun earráidí a íoslaghdú. Nóid roghnúcháin speisialta le haghaidh athruithe meáchain go dtí an chéad chiseal eile