See also ebooksgratis.com: no banners, no cookies, totally FREE.

CLASSICISTRANIERI HOME PAGE - YOUTUBE CHANNEL
Privacy Policy Cookie Policy Terms and Conditions
Perceptron - Wikipedia, wolna encyklopedia

Perceptron

Z Wikipedii

Perceptron - sieć neuronowa najprostszego typu. Pojęcie to stosowane jest zamiennie do określenia sieci składającej się z:

  • pojedynczego neuronu McCullocha-Pittsa
  • pewnej liczby neuronów wejściowych, których wyjścia połączone są z wejściami pewnej liczby neuronów wyjściowych; mimo iż ten typ perceptronów bywa nazywany perceptronem dwuwarstwowym, zwykle określa się go mianem perceptronu jednowarstwowego, ponieważ właściwą warstwą dokonującą sumowania i obliczania wyjścia według wartości funkcji aktywacji jest tylko warstwa druga
  • wielu warstw neuronów, gdzie wyjścia poprzedniej warstwy łączą się z wejściami kolejnej; są to tak zwane perceptrony wielowarstwowe.

Działanie perceptronu polega na klasyfikowaniu danych pojawiających się na wejściu i ustawianiu stosownie do tego wartości wyjścia. Przed używaniem perceptron należy wytrenować podając mu przykładowe dane na wejście i modyfikując w odpowiedni sposób wagi wejść i połączeń między warstwami neuronów, tak aby wartość na wyjściu przybierała pożądane wartości.

Perceptrony mogą klasyfikować dane na zbiory, które są liniowo separowalne. Własność ta uniemożliwia na przykład wytrenowanie złożonego z jednego neuronu perceptronu, który wykonywałby logiczną operację XOR na wartościach wejść.

Pojęcie perceptronu zostało wprowadzone przez Franka Rosenblatta w roku 1958. Perceptron zbudowany przez niego wraz z Charlesem Wightmanem był częściowo elektromechanicznym, częściowo elektronicznym urządzeniem, którego przeznaczeniem było rozpoznawanie znaków alfanumerycznych. Innowacją było tu zastosowanie procesu uczenia się jako metody programowania systemu. W roku 1969 Marvin Minsky i Seymour Papert wykazali ograniczenia perceptronów, co spowodowało długotrwały impas w pracach nad sztucznymi sieciami neuronowymi.

[edytuj] Ograniczenia perceptronu

Jeśli potraktujemy wejście X oraz wyjście Y jako wektory liczb rzeczywistych, to warstwa neuronów zachowuje się jako macierz N:

Y = NX

Działanie każdej kolejnej wartstwy można przedstawić jako kolejne mnożenie przez pewną macierz:

Y = N5N4N3N2N1X

Wszystkie te mnożenia można zastąpić mnożeniem przez jedną macierz:

N * = N5N4N3N2N1
Y = N * X

A zatem sieć perceptronowa o dowolnie wielu warstwach potrafi wykonywać tylko te operacje, które potrafi wykonać sieć złożona z jednej warstwy neuronów – a jest to bardzo mało. Nie znaczy to jednak że wielowarstwowe perceptrony są pozbawione sensu – chociaż już działający perceptron wielowarstwowy można zastąpić jednowarstwowym, to sposób w jaki taka sieć się uczy jest zupełnie inny.

Sytuacja zmienia się całkowicie jeśli po każdej warstwie wstawimy jakąś funkcję nieliniową, taką jak:

f(x) = 1 jeśli x > 1, f(x) = 0 w przeciwnym wypadku
f(x) = 1 jeśli x > 1, f(x) = x jeśli 1 > x > 0, f(x) = 0 w przeciwnym wypadku
itd.

Takie sieci neuronowe potrafią obliczać znacznie bardziej skomplikowane funkcje. Na przykład poniższa sieć neuronowa wylicza funkcję XOR:

Wejścia: x1 i x2
Neuron 1: y1 = 2x1 − 2x2
Funkcja nieliniowa po neuronie 1: z1 = 1 jeśli y1 > 1, 0 w przeciwnym wypadku
Neuron 2: y2 = 2x2 − 2x1
Funkcja nieliniowa po neuronie 2: z2 = 1 jeśli y2 > 1, 0 w przeciwnym wypadku
Neuron 3: w = 2z1 + 2z2
Funkcja nieliniowa po neuronie 3: v = 1 jeśli w > 1, 0 w przeciwnym wypadku
Wejścia Wyjścia warstwy 1 Po funkcji nieliniowej Wyjścia warstwy 2 Po funkcji nieliniowej (ostateczny wynik)
x1 x2 y1 y2 z1 z2 w v
0 0 0 0 0 0 0 0
0 1 -2 2 0 1 2 1
1 0 2 -2 1 0 2 1
1 1 0 0 0 0 0 0


aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -