Dirbtinis neuroninis tinklas

Straipsnis iš Vikipedijos, laisvosios enciklopedijos.

Dirbtinis neuroninis tinklas – tarpusavyje sujungtų dirbtinių neuronų grupė. Ši technologija mėgdžioja žmogaus galvos smegenų darbą – tiksliau neuronų veikimą. Tiksliau, pirmosios idėjos kilo mąstant apie gyvas smegenis. Šiuo metu neuroniniai tinklai kuriami jau nelabai žiūrint, kaip ten yra gamtoje.[1]

Dirbtiniai neuroniniai tinklai yra tam tikros struktūros matematinės funkcijos, kurios naudojamos kaip funkcijų aproksimatoriai. Tai reiškia, jog neuroniniam tinklui suteikiant pavyzdinę informaciją (funkcijos įvestį ir rezultatą), jis geba išmokti imituoti pavyzdinę funkciją.

Dirbtinis neuronas[redaguoti | redaguoti vikitekstą]

Dirbtinio neurono schema

Dirbtinis neuronas – biologinio neurono abstrakcija, pagrindinis dirbtinių neuroninių tinklų komponentas.

Dirbtinis neuronas turi keletą įėjimų (x0, x1, x2, …, xn) ir vieną išėjimą (y). Įėjimų reikšmės padauginamos iš paprasčiausiu atveju kiekvienam neuronui (ir kiekvienam įėjimui) atskirų svorio koeficientų, sudedamos ir apskaičiuojama sumos aktyvacijos funkcija. Neuroniniai tinklai tapo tinkami naudoti praktiškai suradus efektyvius algoritmus šiems svorio koeficientams surasti.

Išėjimo reikšmė gaunama pagal formulę:

Koeficientai vadinami įėjimų svoriais, o funkcija  – aktyvacijos funkcija.

Aktyvacijos funkcija yra būtina, nes be jos visas tinklas supaprastėja į tiesinę regresiją. Toks tinklas negali išmokti daugelio akivaizdžių užduočių, pavyzdžiui, pasakyti ar dvi reikšmės lygios tarpusavyje. Sakoma jog tinklas apribotas tik tiesiškai atskiriamomis (angl. lineraly separable) užduotimis - vien tuo, ką ir tiesinė regresija gali padaryti.

Dažni aktyvacijos funkcijų pasirinkimai yra šie:

- žingsninė funkciją. Ši funkcija naudota ankstyvojoje dirbtinių neuroninių tinklų stadijoje bet dabar ji mažai naudojama. arba .

- vadinamoji „lygintuvo“ funkcija (angl. Rectified Linear Unit (ReLU). Nulis neigiamoms reikšmėms, x kartojimas teigiamoms. Apie 2016 metus buvo viena dažniausiai naudojamų.[1]

- vadinamoji sigmoidė, kuri „suploja“ įėjimą į intervalą . Tai yra lyg tam tikra visur diferencijuojama žingsninė funkcija. Praeityje atrodė labai svarbu jog funkcija visur būtų diferencijuojama, bet vėliau buvo patebėta jog tai nelabai būtina. [1]

- hiperbolinio tangento funkcija. Tai - ta pati sigmoidė, tačiau turinti išėjimą intervale .

- minkštojo maksimumo (angl. softmax) funkcija. Ji paverčia visas išėjimo komponentes į tikimybes, t. y. sunormuoja išėjimo vektorių į . Ji daugiausia naudojama tinkluose kurie ką nors klasifikuoja. Tuomet kiekvienai komponentei priskirs klasės tikimybę.

Neuroninių tinklų klasifikacija[redaguoti | redaguoti vikitekstą]

Esama įvairių rūšių neuroninių tinklų. Vieni iš jų apmokomi su mokytoju (žinant reikiamas tinklo išėjimų reikšmes), kiti – be mokytojo. Istoriškai pirmi neuroniniai tinklai buvo vienasluoksniai perceptronai. Šiuo metu plačiausiai taikomi konvoliuciniai neuroniniai tinklai, ypač su vaizdo aprodojimu susijusiose užduotyse [2].

Taikymas[redaguoti | redaguoti vikitekstą]

Dirbtiniai neuroniniai tinklai taikomi šiose srityse:

  • grafinių vaizdų atpažinimas[3];
  • bioinformatikoje – dalinai kintančių, tačiau biologiškai reikšmingų nukleotidų bei aminorūgščių sekų fragmentų paieška. Sistema apmokoma naudojant žinomų sekų rinkinį ir randa naujas, panašiai atrodančias sekas.
  • finansuose – analizuojant, prognozuojant akcijų kitimo kursus;
  • procesams modeliuoti ir valdyti: fizinės sistemos neuroninių tinklų modelis taikomas geriausiems valdymo parametrams nustatyti;
  • mašinų diagnostikai: stebi mašiną ir jai sugedus įspėja sistemą;
  • taikiniui atpažinti: karinėse programose padeda apdoroti paprastą arba infraraudonųjų spindulių vaizdą priešo taikiniui nustatyti.
  • medicininei diagnozei[4]: analizuodami simptomus ir vaizdo duomenis, pavyzdžiui, rentgeno nuotraukas, tinklai padeda gydytojams nustatyti diagnozę.


Šaltiniai[redaguoti | redaguoti vikitekstą]