Search
  • Elona Shatri

Çfarë janë Rrjetat Nervore Kompjuterike (Neural Networks)?

In order to get more Albanian speakers interested in Machine learning some of the articles in my blog will be in this language.


Përmbajtja:

1. Përkufizimi i rrjetave nervore kompjuterike

2. Shembuj

3. Elementet e rrjetave nervore kompjuterike

4. Konceptet baze të rrjetave nervore të thella


Pëkufizimi i rrjetave nervore kompjuterike


Rrjetat nervore kompjuterike (Neural Networks) janë një bashkësi e algoritmeve përllogaritës, të modeluar sipas trurit të njeriut, e të projektuar që të njohin motive apo rregullsi. Çfarëdo qofshin të dhënat në hyrje: fotografi, tekst, seri kohore, këto rrjeta së pari i përkthejnë këto të dhëna në të dhëna numerike, që më pas vendosen nëpër vektorë, e në fund gjendet motivi.


Rrjetat nervore kompjuterike na ndihmojnë duke klasifikuar dhe grumbulluar (classifying and clustering). Këtë mund ta imagjinoni si një shtresë klasifikimi e grumbullimi në krye të të dhënave që posedoni. Këto janë të afta të njohin e identifikojnë të dhëna që nuk i ka parë më herët, pa etiketë, në baze të ngjashmërive që ka me të dhenat e tjera që i ka parë më herët. Për shembull: të imagjinojmë që gjatë jetës sonë kemi parë mollë të gjelbërta dhe të kuqe. Sot dikush na ofron një mollë të verdhë dhe ne shohim ngjyren, por ngjyra nuk na ndihmon ta identifikojmë cili frut është, shohim formën dhe tani e krahasojmë me të gjitha frutat që kemi parë më herët. Gjejmë frutin më të ngjashëm në formë, ose edhe në shije e ky frut do të ishte molla. Pra ne edhe pse kurre nuk kemi pare mollë të verdhë, prap jemi në gjendje të tregojmë se është mollë. I njejti parim vlen edhe për këto rrjeta. Në këtë rast, dy atributet e përmendura të pemës janë ngjyra dhe forma.


Deep learning (shqip: të mësuarit e thellë) përdor një bashkësi të dhënash të etiketuara për t’u trajnuar apo për të mësuar. Këtë mësim apo trajnim do t’a përdorë më vonë për të krahasuar me të dhëna të paetiketuara.


Tani të mendojmë për çfarë problemesh mund të përdoren këto rrjeta, dhe a mund të aplikohen në problemet që ju mund të keni. Për të ditur përgjigjen, duhen bërë më shumë pyetje, për shembull:


· Për çfarë rezultate jemi të interesuar? Rëndesi e madhe duhet t’i kushtohet etiketave. Shembull kemi, emailet që marrim çdo ditë e që shpesh janë spam. Në këtë rast etiketat mund të jenë spam dhe jo_spam, dhe kjo do të ndihmonte në filtrimin e emaileve. Për dikë që ka nje biznes dhe interesohet në atë se sa janë të lumtur klientët, etiketat mund të jenë klient_i_zemruar apo klient_i_kënaqur apo edhe etiketa tjera më neutrale.


· Pastaj duhet menduar a kemi të dhëna të mjaftushme për të mbështetur këto etiketa. A mund të gjejmë të dhëna të etiketuara, apo a mund të etiketojmë këto të dhëna vetë.


Disa Shembuj


Deep learning harton të dhënat që i merr në hyrje deri në rezultatet, duke gjetur korrelacione. Njihet ndryshe edhe si “universal approximator” (përafrues universal), kjo sepse mund të mësojë të përafrojë një funksion të panjohur f(x) = y, midis një hyrje x dhe një dalje y duke supozuar që të dyja kanë njëfarë korrelacioni. Gjatë procesit të të mësuarit, rrjeti nervor mund ta përshtati këtë funksion, duke gjetur funksionin më të përshtatshem për transformimin më të mirë të mundshëm të x y. Pra ky funksion lehtë mund të ndryshojë nga f(x) = 2x +3f(x)= 6x+0.2.



Klasifikimi

Në një artikull të mëhershëm kam diskutuar më shumë mbi Supervised dhe Unsupervised Learning (të mësuarit me mbikqyrje dhe pa mbikqyrje) prandaj për më shumë mund të lexoni ketu:

Të gjitha operacionet e klasifikimit janë plotësisht të varura nga të dhënat e etiketuara. Kjo do të thotë se njeriu është burimi i parë dhe i vetëm i këtyre të dhënave të etiketuara; njeriu me njohurinë e tij siguron të dhena të etiketuara për këtë model. Kjo quhet ndryshe Supervised Learning (të mesuarit e mbikeqyrur). Klasifikimi mund të përdoret në:


1. Detektimin e fytyrave, njohjen e njerëzve në imazhe (p.sh. shpesh Facebook na kërkon të verifikojmë nëse fytyrat në foto janë të personave përkates), pastaj, njohjen e emocioneve nga shprehjet e fytyrës

2. Mund të identifikojë objekte në fotografi (shenja të komunikimit, këmbesorë në lëvizje etj.)

3. Detekton zëra, identifikon folësit, mund të përkthejë nga zëri në tekst, mund të njohë emocione në zë

4. Mund të dallojë apo klasifikojë emaile që janë spam (email mashtrues), mund të njohë emocione në tekst (p.sh. reagimet e klientëve)



Grumbullimi


Grumbullimi, apo në Anglisht “Clustering”, është detektimi i ngjashmërive mes të dhënave që posedojmë. Kjo metode nuk kërkon që të dhënat të kenë etiketa, prandaj dhe quhet Unsupervised Learning (të mesuarit pa mbikqyrje).


Të dhëna e paetiketuara janë shumica e të dhënave në botë. Parimi i “machine learning” është: sa më shumë të dhëna që algoritmi përdor gjatë fazës së trajnimit, aq më i saktë do të jetë. Prandaj grumbullimi ka potencial për të prodhuar një algoritëm më të saktë. Rastet ku grumbullimi përdoret më shumë janë:


- Kërkimi: krahasimi i dokumentave, fotografive, zërave apo të ngjashme

- Detektimi i anomalive: detektimi i sjelljeve të pazakonshme


Elementet e rrjetave nervore kompjuterike


Çdo rrjetë nervore kompjuterike është e përbërë prej disa shtresave. Këto shtresa janë të përbëra prej nyjeve (nodes). Nyjet janë pikërisht pikat ku zhvillohet përpunimi apo përllogaritja, që deri diku imitojnë neuronet në trurin e njeriut të cilat “ndizen” me stimulim të mjaftueshëm. Ato kombinojnë një bashkësi koeficientësh, peshash të cilat mund ta amplifikojnë apo dobësojnë hyrjen (inputin), duke përcaktuar kështu rëndësinë e hyrjeve në lidhje me detyrën që algoritmi përpiqet të mësojë; për shembull, cila hyrje është më e rëndësishme në klasifikimin e të dhënave me gabim më të vogël.


Prodhimet e peshave me hyrjet mblidhen e pastaj shuma kalon nëpër të ashtuquajturat funksione aktivizimi (activation function) të nyjeve, për të përcaktuar nëse ky sinjal duhet të kalojë më tutje nëpër rrjet, në mënyrë që të ndikojë te dalja përfundimtare, për shembull gjatë klasifikimit. Nëse këto sinjale arrijnë të kalojnë nëpër këto nyje, mund të themi se neuroni është aktivizuar. Shikoni fotografinë e mëposhtme se si funksionon ky model.



Procesi i vendosjes se peshave dhe funksioni aktivizimit

Me x janë paraqitur hyrjet, me w peshat e hyrjeve që më tej kalojnë nëpër një shumëzues për të arritur tek funksioni aktivizimit, që në fund të gjenerojë një dalje.


Një shtresë neuronesh është një rresht me ndërprerës që punojnë si neurone që ndizen e fiken për aq kohë sa rrjeta ushqehet me hyrje. Çdo dalje nga një shtresë është në të njëjtën kohë hyrje për shtresën tjetër, duke filluar nga shtresa fillestare ku rrjeti ushqehet me të dhëna.


Për të përcaktuar domethënien apo rëndësinë që atributet e të dhënave në hyrje kanë, duhet çiftëzuar peshat e modelit me atributet në fjalë.


Konceptet bazë të rrjetave nervore kompjuterike


Rrjetet e të mesuarit të thellë (deep learning) dallohen nga rrjetet njështresore të fshehura nga thellësia e tyre; kjo thellësi përfaqëson numrin e shtresave me nyje nëpër të cilat të dhenat duhet të kalojnë deri sa rrjeti të arrijë të njohi një motiv.


Versione më të hershme të këtyre rrjetave kanë qenë më të cekta, duke përmbajtur vetëm një shtresë në hyrje, një në dalje, dhe vetëm një në mes. Prandaj çdo rrjetë që posedon më shumë se tri shtresa (duke numëruar hyrjen e daljen) kualifikohet si “e thelle” (“deep”).

Në këto rrjete, çdo shtresë e nyjeve trajnohet në atribute te ndryshme nga ajo se në çfarë është trajnuar shtresa para saj. Sa më shumë shtresa kalojnë, atributet që nyjet njohin janë më komplekse, kjo pasi që arrijnë të agregojnë dhe kombinojnë atribute nga shtresat e mëparshme. Ky proces njihet ndryshe si hierarki e atributeve, dhe eshte hierarki e rritjes së kompleksitetit edhe abstraksionit. Kjo i mundëson këtyre rrjetave të përballojnë një sasi shumë të madhe të të dhënave, me dimensione të larta me miliarda parametra që kalojnë nëpër funksione jolineare.


Mbi të gjitha, këto rrjete janë të afta të zbulojnë struktura të fshehura edhe në të dhëna të paetiketuara e pa strukturë, e që janë shumica e të dhënave në botë. Një emër tjetër për këto lloje të të dhënave është burime të paperpunuara (raw data), për shembull: fotografitë, tekstet, videot dhe audio inçizimet. Prandaj, një nga problemet që “deep learning” mundohet të zgjidh është gjetja e një metode më të mirë për përpunim dhe grumbullim të të dhënave të papërpunuara, e të paetiketuara.


Për shembull, “deep learning” mund të marrë një milion imazhe dhe t’i grumbullojë sipas ngjashmërive nëpër grupe. Si shembull keni telefonin tuaj të mençur që grumbullon fotografitë sipas personave apo kafshëve në foto. I njëjti parim vlen edhe me tekstet. Tekstet që kanë emocione apo fjalë të ngjashme do të grumbullohen nëpër grupe të veçanta. Kur të dhënat në hyrje jane seri kohore, të dhënat mund të mblidhen në dy grupe: normale (të shëndetshme), ose anomali (të rrezikshme). Nëse këto seri kohore gjenerohen nga një telefon i mençur, do të jepen më shumë njohuri mbi shëndetin e zakonet e përdoruesit; ka raste kur kjo ndihmon në parandalimin e katastrofave.


Rrjetat “Deep Learning” janë të afta të ekstraktojnë atribute në mënyrë automatike, pa ndërhyrjen e njeriut, ndryshe nga disa metoda më tradicionale në “machine learning” të cilat kanë algoritma më fiks. Kjo ndikon në zvogëlimin e numrit të punetorëve nëpër kompani që deri më tani janë marrë me analizim të të dhënave.


Gjatë trajnimit të të dhënave të paetiketuara, çdo shtresë nyjesh mëson atribute në mënyrë automatike, duke tentuar vazhdimisht të rindërtojë hyrjen që e marrin nga mostrat, dhe duke tentuar të zvoglojnë diferencën në mes të supozimeve të rrjetës dhe shpërndarjes së probabilitetit të të dhënave në hyrje. Në këtë proces, këto rrjete mësojnë të njohin korrelacione në mes të atributeve relevante dhe rezultateve optimale.


Avantazhi i këtyre rrjeteve është se mund të përdorim një rrjetë të trajnuar në të dhëna të etiketuara, për të testuar një bashkësi tjetër të të dhënave të paetiketuara. Në këtë mënyrë, arrihet performancë më e lartë: sa më shumë të dhëna që kemi në fazën e trajnimit, aq më shumë shance për saktësi më të lartë ka modeli. Aftësia e deep learning për të përpunuar sasi shumë të mëdha të të dhënave të paetiketuara është një avantazh krahasuar me algoritmat e tjerë.

11 views

© 2019 by Elona Shatri

  • https://github.com/penestia
  • Black Twitter Icon
  • Black LinkedIn Icon
This site was designed with the
.com
website builder. Create your website today.
Start Now