Inteligjenca Artificiale - Mësimi i thelluar
Hyrje
Në këto çaste togfjalëshi më i përfolur në internetin komercial të rrjeteve sociale dhe të portaleve mediatike është dyshja “Inteligjencë Artificiale”. Duke gjykuar prej tonit nëpërmjet të cilit përcillet, për disa mund të përfytyrohet si një imazh i një roboti tiranik prej çeliku, i cili zotëron fuqi mbinjerëzore përtej kapacitetit imagjinar të njeriut të thjeshtë, ndërsa për të tjerë - që mund të konsiderohen më së thjeshti si “moskokëçarës” - asgjë veçse një zhurmë publicitare. Por kam besimin që të dyja “palët” e kanë njëfarë interesi për të ditur më thellë se çfarë fshihet pas kësaj teknologjie, pavarësisht nga shpjegimet thjeshtuese dhe reduktuese që mund të kënaqin veshët në dëgjimin e parë. Ajo që mund të thuhet pa dyshim dhe me bindje, është se tani për tani ‘po shijon namin’, kjo e krijuar nga faktorë të ndryshëm, qofshin këta mediatikë, ekonomikë apo socio-kulturorë.
Si për të zhgënjyer ndonjë lexues që po lëçit këta rreshta, dua të qartësoj se ky shkrim nuk ka aspak si qëllim të informojë me kuriozitete apo me lajme të bujshme me atë lloj tendence për të shtënë dyshime ekzistenciale. E them këtë, sepse ky shkrim dhe kjo faqe synojnë që të japin vetëm informata dhe të trajtojnë çështje tërësisht shkencore dhe serioze, e jo të shkitet në imagjinata që jo pak herë përdoren si “burim” për mendimet e rëndomta dhe të dobëta fantastiko-shkencore, me synimin e arritjes së një audience sa më të gjerë, duke ulur rrjedhimisht në dobi të sasisë cilësinë e informacionit të dhënë. Tendenca e këtij shkrimi është të kthejë perceptimin tiranik apo skeptik të shfaqur në imazhin e dhënë më lartë në formulën e mëposhtme matematikore:
Nëse ky imazhi i ri (pra formula) shfaqet më tiranik apo përcjell më tepër pështjellim, atëherë ndoshta ky shkrim nuk ishte në pritshmëritë tuaja. Sidoqoftë, nëse “zjarri i kureshtjes” sapo u ndez, dhe si për t’i rritur flakët guximisht do të them që gjithçka rreth jush shprehet në modele të ngjashme matematikore. Psh. Fizika - siç mund ta dini nga ajo çka keni mësuar dhe zhvilluar përgjatë edukimit para-universitar - është shkenca që merret me gjetjen e modeleve të shprehura nëpërmjet gjuhës matematikore, të cilat përshkruajnë në mënyrë gjithëpërmbledhëse fenomenet e botës fizike. Fizikantët tradicionalisht kanë qenë gjithmonë në një përpjekje rritëse për të analizuar një pjesë të vogël të botës në çdo kohë, duke u munduar të gjejnë ligje të thjeshta që përshkruajnë vrojtimet e tyre më mirë se ligji i kaluar; në thelb për të gjetur një program që përmbledh (kompreson) të dhënat e vrojtuara më mirë sesa programi i kaluar. Për shembull, ligji i gravitetit i Isak Njutonit mund të shprehet në disa rreshta kod programimi në të cilat mund të përmblidhen shumë sekuenca vrojtimesh, ku përfshihet rënia e mollëve apo sendeve të tjerë të ndodhur pranë kësaj force gravitacionale. Megjithëse, fuqia e tij parashikuese e Njutonit ishte e kufizuar - për shembull nuk merrte parasysh luhatjet e atomeve të mollës - ka ende vend për të reduktuar numrin e biteve për të përshkruar këtë rrymë të dhënash së bashku me përjashtimet e këtij ligji. Teoria e përgjithshme e relativitetit e Albert Ajnshtajnit solli përparim shtesë në përmbledhjen (kompresimin) e tyre, duke shpjeguar disa rrjedhime që nuk ishin përshkruar më parë nga parashikimet e Njutonit. Kufiri përfundimtar, i cili është dhe programi më i shkurtër që përshkruan një fenomen që ndjek një rregullsi jepet sipas Kompleksitetit Kolmogorov. Por, le të mbetet kjo tematikë për një shkrim tjetër.
Në këtë shkrim do të parashtroj një ide të përgjithshme të koncepteve bazë të Inteligjencës Artificiale me vëmendje kryesore në “Mësimin e Thelluar” (ang. Deep Learning). Nëse ky shkrim do të shkruhej në vitet 1980, temat që do të theksoheshin më tepër do të ishin ato të vërtetimit të teoremave, programimit logjik, sistemet eksperte apo kërkimet heuristike. Këto tema do të ishin në përputhje me atë çka Xhon MekKarthi quajti në gjuhën angleze “Artificial Intelligence” në konferencën e Dartmuthit në 1956. Megjithatë teoria e Inteligjencës Artificiale (më tej e referuar shkurtimisht si “IA”) daton edhe më herët, madje që në vitet ‘31-‘34 kur Kurt Gëdel identifikoi limitetet/kufijtë kryesorë të çdo sistemi IA të bazuar në përllogaritje (computation). Nëse ky shkrim do të shkruhej në vitet 2000, temat më me rëndësi do të ishin Makinat me Vektorë Mbështetës (Support Vector Machines) ose metodat e kernelit, arsyetimi Bajesian dhe koncepte të tjera të teorisë së probabilitetit dhe statistikës, pemët vendimmarrëse, metodat ansambël dhe inteligjenca e tufës. Përse? Arsyeja është sepse këto teknika ishin zbatime mjaft të suksesshme në problemet e atëhershme ku inteligjenca artiificiale mund të ishte e dobishme. Ndërsa sot, në vitet 2020 është e nevojshme të theksohen koncepte të reja si arkitektura Transformer (Shndërrues), Rrjetet Kundërvënës Prodhues, por dhe të vjetra si rregulli zinxhir i derivatit dhe rrjetet e thelluara nervore jolineare (ANN) që zakonisht stërviten nga metodat e zbritjes stokastike të gradientit. Përse? Sepse zbatimet më të fundit tregtare të inteligjencës artificiale janë mishërim i pikërisht kësaj bashkësie teknologjike.
Përgjatë një serie shkrimesh do të shkoqiten pikërisht këta elementë një nga një. Dëshira e mirë është që këto shkrime të vlejnë si një burim i vlefshëm për ata të cilët kërkojnë të dinë më tepër për këtë fushë apo dhe për ata që edhe pse kanë një ide të përgjithshme, sërish kërkojnë ta zgjerojnë atë më tej. Për këtë arsye, ky blog është dhe do të jetë përherë i hapur dhe mirëpritës për të gjithë të interesuarit që synojnë të përforcojnë më tej dijet e tyre mbi Inteligjencën Artificiale, apo dhe në shkencën e Teknologjisë së Informacionit më gjerasi, si dhe do të shërbejë edhe si një ftesë për këdo që ka kureshtje mbi temat që këto shkrime do të trajtojnë me shpresën dhe synimin që kërshëria mbi to të shtohet vijimisht si në rrafshin sasior ashtu edhe në atë cilësor.
Mësimi makinerik
Në thelbin e mësimit makinerik shkenca - por dhe pak arti - i parashikimit, i cili mund të shihet si problemi i zbulimit të rregullsive apo motiveve në proceset natyrore përmes hamendësimeve mbi përfundimet e ngjarjeve të pavrojtuara më parë. Ajo çka nevojitet është zotërimi i një koleksioni vrojtimesh me supozimin se mes tyre ekzistojnë mjaftueshëm tregues me të cilët mund të krijojmë një model parashikues. Tre janë qasjet apo teknikat që zakonisht ndiqen në mësimin makinerik:
1) Mësimi makinerik klasik, i cili bën parashikime nga një bashkësi treguesish të paravrojtuar
2) Mësimi përfaqësues, i cili i shndërron këto tregues në një përfaqësim të ndërmjetëm përpara se t’i lidhë ato me parashikimin përfundimtar
3) Mësimi i thelluar, i cili është ne vetvete një formë e mësimit përfaqësues, e që përdor disa hapa shndërrues të njëpasnjëshëm për të krijuar disa veçori më të ndërlikuara të të dhënave të vrojtuara. Në këtë shkrim përqendrimi do të vihet te zbërthimi i koncepteve kryesore të mësimit të thelluar, mbase i parë gjithashtu në një këndvështrim tjetër nga çfarë gjendet zakonisht në tekste apo burime të tjera në internet.
Rrjetet nervore të mësimit të thelluar
Në vitin 1962 Hubeli dhe Vizeli dhanë përshkrimin e parë të qelizave të thjeshta dhe të qelizave komplekse në korteksin vizual, i cili shërbeu si frymëzim për arkitekturat e ndryshme të rrjeteve nervore të mësimit të thelluar. Truri i njeriut përmban me qindra miliarda neurone, ku secila prej tyre lidhet mesatarisht me 10 mijë neurone të tjerë. Disa prej këtyre neuroneve ushqejnë pjesën tjetër me të dhëna (zë, shikim, prekje, nuhatje, dhimbje), ndërsa një pjesë tjetër janë neurone dalëse të cilat kontrollojnë muskujt. Ndërkohë pjesa më e madhe e tyre janë të fshehura diku ndërmjet, në zonën ku ndodhin mendimet. Mënyra sesi truri ynë mëson është duke ndryshuar fortësinë apo peshën midis këtyre lidhjeve, i cili është gjithashtu tregues se sa ndikim kanë neuronet te njëra-tjetra, edhe njëkohësisht të përfaqësojnë të gjithë përvojën tonë jetësore. Në të njëjtën menyrë, rrjetet nervore artificale mundohen të mësojnë sesi të dallojnë shikimin, shqiptimin apo shkrimin, të minimizojnë dhimbjen, të ngasin makina, etj.
Qëllimi i këtyre rrjeteve nervorë është të ndërkodojnë informacionin që gjendet në një grup të dhënash në një bashkësi prej n veçorish që karakterizojnë natyrën e këtyre të dhënave. Mund të bëhet këtu një analogji me teorinë e informacionit, dhe të themi se përpjekja është e ngjashme me përfaqësimin e këtij informacion përmes n-bitesh. Duke përdorur një bashkësi shtresash neuronesh të njëpasnjëshme, rrjetet nervore të të mësuarit të thellë shndërrojnë këto të dhëna në një formë në të cilën parashikimi bëhet më i lehtë. Ndryshe rezultatet e këtyre shndërrimeve quhen dhe si përfaqësimet e të dhënave. Natyra e këtyre interpretimeve është në trajtën e koeficientëve, po ashtu si ndezjet e neuroneve në trurin tonë, dhe pikërisht ky numër i madh koeficentësh (thellësia e rrjetit) u jep rrjeteve nervore fuqinë e lartë shprehëse. Si rrjedhim, për shkak të veçorisë së mirë përgjithësuese, këta modele kanë korrur sukses në shumë aplikime të ndryshme në industri.
Ja cilët janë elementët përbërës kryesorë të tyre:
Neuroni
Në vetvete një neuron nuk është gjë tjetër veçse një element përllogaritës i rrjetit 1, i cili merr disa të dhëna të peshuara, zbaton një funksion aktivizimi, dhe kthen një përfundim. Këto të dhëna burojnë nga veçoritë e të dhënave ushtruese apo të shtresave të mëparshme të rrjetit nervor. Peshat aplikohen mbi hyrjen ndërkohë që kalojnë nëpër sinapse derisa mbërrin te neuroni. Neuroni më pas aplikon një funksion aktivizimi mbi “shumën e të dhënave hyrëse të peshuara” për çdo sinaps dhe e tejçon rezultatin në të gjithë neuronet e shtresës së radhës.
Sinapsi
Sinapset mund të imagjinohen si rrugët lidhëse të rrjetit nervor, të cilat lidhin hyrjen fillestare me neuronet, neuronet ndërmjet njëri-tjetrit dhe neuronet me daljen përfundimtare. Midis dy neuroneve ekziston një “lidhje sinaptike” me një vlerë peshe të caktuar. Përditësimi i peshave në një rrjet përgjatë stërvitjes së rrjetit, cila nuk është asgjë tjetër veçse përshtatja e këtyre peshave në sinapse.
Peshat
Siç u lartpërmend, peshat janë vlerat që përcaktojnë fortësinë e lidhjes midis dy neuroneve. Duke shumëzuar matricën e peshave me hyrjen, përcaktohet ndikimi i kësaj të fundit mbi rezultatin përfundimtar. Mbi këtë vlerë shtohet dhe një vlerë koeficenti e lirë, e cila në vazhdim do të referohet si anshmëria (ang. bias).
Anshmëria
Anshmëra është një konstante shtesë, e cila i bashkangjitet neuronit dhe që shtohet mbi hyrjen e peshuar përpara se funksioni i aktivizimit të aplikohet. Ky koeficent i lirë ndihmon në shprehjen e modeleve që jo detyrimisht kalojnë nga origjina 0. Për shembull, nëse të gjitha veçoritë që përshkruajnë të dhënat do të ishin 0, atëherë dhe dalja e funksionit do të ishte 0. Ky gjithashtu është një parametër tjetër që zakonisht shoqëron peshën dhe duhet të mësohet prej modelit.
Shtresat
Shtresa e hyrjes mban të dhënat mbi të cilat modeli do të stërvitet. Çdo neuron në shtresën hyrëse përfaqëson një veçori unike të grupit të të dhënave.
Shtresa e fshehur qëndron midis shtresave të hyrjes dhe të daljes dhe zbaton një funksion aktivizimi përpara se të tejçojë më tej rezultatet. Zakonisht një rrjet ka disa shtresa të fshehta. Në rrjetet tradicionale, shtresat e fshehta janë zakonisht shtresa plotësisht të lidhura - pra çdo neuron merr hyrje prej të gjithë neuroneve të shtresës së kaluar dhe dërgon dalje drejt çdo neuroni të shtresës pasardhëse. Megjithatë kjo nuk ndodh njëlloj për të gjithë rrjetet nervore, në shkrime të tjera do të trajtojmë rrjetet nervore thurëse (konvolucionale) ku neuronet e tejçojnë daljen vetëm drejt disa neuroneve në shtresën tjetër.
Shtresa e daljes është shtresa e fundit e rrjetit nervor, e cila ashtu si shtresa e fshehur e merr daljen e shtresës së kaluar dhe rezultati i llogaritur pas zbatimit të funksionit të aktivizimit përfaqëson pikërisht rezultatin e parashikimit të modelit.
Funksionet e aktivizimit
Funksionet e aktivizimit janë të ndërfutura brenda shtresave të rrjetit nervor dhe modifikojnë të dhënat që marrin përpara se t’i kalojnë ato në shtresën tjetër. Funksionet e aktivizimit u japin rrjeteve nervore fuqinë e tyre - duke i lejuar ata të modelojnë marrëdhënie komplekse jolineare. Duke zbatuar mbi hyrjet funksione jolineare, rrjetet nervore mund të modelojnë marrëdhënie shumë komplekse midis veçorive të të dhënave. Ndër disa funksione të njohura aktivizimi mund të përmendim ReLU, Softmax dhe Sigmoid.
Funksionet e aktivizimit zakonisht kanë karakteristikat e mëposhtme:
Jolineare - për shembull, siç mund ta dini, në regresionin linear jemi të kufizuar në një ekuacion parashikimi që duket si një vijë e drejtë. Kjo na e lehtëson mjaft punën për grupe të dhënash të thjeshta me një marrëdhënie lineare midis hyrjeve dhe daljeve. Problemi lind kur dëshirojmë të modelojmë një model jolinear për grupin e të dhënave që kemi në dispozicion. Për të modeluar këtë marrëdhënie, nevojitet një ekuacion përshkrues jolinear, i cili sigurohet pikërisht përmes këtyre funksioneve të aktivizimit.
I derivueshëm monoton - për të përmirësuar modelin përmes algoritmit të gradientit zbritës, nevojitet që rezultati të ketë një vlerë pjerrësie të favorshme për llogaritjen e derivatit të gabimit në lidhje me peshat, dhe kjo nuk do të ishte e mundur nëse dalja e neuronit do të ishtë 0 ose 1.
Shtrirje fikse - funksionet e aktivizimit zakonisht kufizojnë të dhënat hyrëse në një shtrirje më të ngushtë të vlerave që e bën trajnimin e modelit më të qëndrueshëm dhe efikas.
Funksioni i humbjes
Një funksion i humbjes, ose ndryshe “funksioni i kostos”, është një njehsor i funksionit të parashikimit të modelit tonë që mat “se sa i suksesshëm” është modeli në bërjen e parashikimeve për një grup të caktuar parametrash të rrjetit. Funksioni i humbjes ka kurbën dhe derivatet e veta, dhe pjerrësia e kësaj kurbe tregon se si të ndryshohen parametrat për ta bërë modelin më të saktë në parashikimin e shpërndarjes së të dhënave. Nëse detyra e funksionit të modelit është për të bërë parashikime, detyra e funksionit të kostos është për të përditësuar parametrat e tij. Funksioni i kostos mund të marrë forma të ndryshme sipas natyrës së të dhënave apo problemit që kërkojmë të zgjidhim. Funksione statistikore të humbjes ndër më të njohura mund të përmendim: gabimi i katrorit të mesatares aritmetike (humbja L2) dhe gabimi ndërentropik.
Epilog
Këto elementë kryesorë afërmendsh konsiderohen si themelet e asaj çka njihet si Mësimi i Thelluar përmes rrjeteve nervore. Sigurisht që secili prej tyre është në vetvete një botë e pashtershme idesh dhe mendimesh, e ardhur si rrjedhojë e nje pune të vazhdueshme shumë-vjeçare nga hulumtuesit shkencorë. Prandaj është thuajse e pamundur që të përshkruhet gjithë historia përmirësuese e tyre në një shkrim të tillë, por edhe pse synimi nuk është i tillë. Hap pas hapi pikat kryesore do të trajtohen në shkrime të tjera.
Shpresoj që ky shkrim fillestar të shërbejë si një nxitës për ata mjeshtra, të cilët të harruar në rehatinë e veglave aplikative i marrin shumë koncepte për të mirëqena, për t’iu rikthyer përsëri dijeve parimore dhe të reflektojnë mbi përdorimin dhe vlefshmërinë e tyre. Ndërsa për të tjerët të cilët nuk janë ende shumë të familjarizuar mbi këto koncepte, më poshtë gjenden disa referime në gjuhën angleze, të cilat mund të ndihmojnë në një shpjegim më të detajuar të tyre si dhe në një rifreskim të njohurive bazë statistikore. Gjithashtu, ky shkrim në mënyrë jo të drejtpërdrejtë është një formë për të propozuar dhe parashtruar në publik një fjalor teknik të shqipëruar të terminologjisë që rrethon Inteligjencën Artificiale, por edhe më gjerësisht në fushën e Teknologjisë së Informacionit.
1Në një shkrim tjetër do të shohim se si Jurgen Shmidhuberi sugjeron që neuronet të shihen si programe.
Falenderoj Aurel Bekteshin dhe Kristo Vilën për redaktimin dhe sugjerimet gjuhësore dhe stilistikore