Dirbtinis neuroninis tinklas: Skirtumas tarp puslapio versijų
Ištrintas turinys Pridėtas turinys
S Pridėjau du šaltinius į populiarius straipsnius iliustruojančius jau surašytus taikymus |
Papildyta |
||
Eilutė 1:
'''Dirbtinis neuroninis tinklas''' – tarpusavyje sujungtų [[dirbtinis neuronas|dirbtinių neuronų]] grupė. Ši technologija mėgdžioja žmogaus [[Galvos smegenys|galvos smegenų]] darbą – tiksliau [[Neuronas|neuronų]] veikimą. Tiksliau, pirmosios idėjos kilo mąstant apie gyvus smegenis. Šiuo metu neuroniniai tinklai kuriami jau nelabai žiūrint, kaip ten yra gamtoje. <ref name='ian'>Ian Goodfellow (2016). Deep Learning (Adaptive Computation and Machine Learning series), 800 p.. ISBN-13: 978-0262035613.</ref>
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 ==
[[Vaizdas:NeuronModel deutsch.svg|thumb|Dirbtinio neurono schema]]
Dirbtinis neuronas – biologinio neurono abstrakcija, pagrindinis dirbtinių neuroninių tinklų komponentas.
Dirbtinis neuronas turi keletą įėjimų (''x<sub>0</sub>'', ''x<sub>1</sub>'', ''x<sub>2</sub>'', …, ''x<sub>n</sub>'') 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 algorimus šiems svorio koeficientas surasti.
Išėjimo reikšmė gaunama pagal formulę:
: <math>y = \varphi \left( \sum_{j=0}^n w_{j} x_j \right)</math>
eilutė 10 ⟶ 16:
Koeficientai <math>\omega</math> vadinami įėjimų svoriais, o [[funkcija]] <math>\varphi</math> – aktyvacijos funkcija.
Aktyvacijos funkcija yra būtina, nes be jos visas tinklas supaprastėja į [[Tiesinė lygtis|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 ({{en|lineraly separable}}) užduotimis - vien tuo, ką ir tiesinė regresija gali padaryti.
Dažni aktyvacijos funkcijų pasirinkimai yra šie:
<math>\varphi(x) = \begin{cases} 0 & x \leq 0, \\ 1 & x > 0 \end{cases}</math> - žingsninė funkciją. Ši funkcija naudota ankstyvojoje dirbtinių neuroninių tinklų stadijoje bet dabar ji mažai naudojama. <math>0</math> arba <math>1</math>.
<math>\varphi(x) = \begin{cases} 0 & x \leq 0, \\
<math>\varphi(x) = \frac{1}{1+e^{-x}}</math> - vadinamoji sigmoidė, kuri „suploja“ įėjimą į intervalą <math>[0;1]</math>. 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. <ref name='ian'/>
<math>\varphi(x) = \tanh(x)</math> - hiperbolinio tangento funkcija. Tai - ta pati sigmoidė, tačiau turinti išėjimą intervale <math>[-1;1]</math>.
<math>\varphi(x)_i = \frac{e^{x_i}}{\sum_n e^{x_n}}</math>- minkštojo maksimumo (angl. softmax) funkcija. Ji paverčia visas išėjimo komponentes į tikimybes, t. y. sunormuoja išėjimo vektorių į <math>1</math>.
== Neuroninių tinklų klasifikacija ==
|