Neurokomputery - wczoraj, dziś, jutro

May 25, 2017 | Autor: Ryszard Tadeusiewicz | Categoría: Computer Science, Artificial Neural Networks
Share Embed


Descripción

Mapa mózgu pozwala wyróżnić obszary o odmiennei budowie i różnym przeznaczeniu

Jednym z najbardzie1 fascynujących osiągnięć biocybernetyki jest neurokomputer. Na jego ternat

istnieje wiele pogłosek i stosunkowo mało pewnych, szeroko znanych wiadomości. W artykule sprobujemy przyĘliżyc wszystkim zainteresowanym tę bardzo interesującą maszynę, W tym celu musimy prześledzić, jak zbudowany jest neurokomputer i jak działa, a lakże jak się go programuje i do czego moze się

B:rJ:il,"y Się

RYSZARD TADEUSIEWICZ

tez

Wczorai, dziŚ i jutro

-

dokonać przeglądu najwazniejszych osiągnięć

Po co nam neurokomputery? Wspołczesne komputery budzą powszechny zachwyt. ich szybkośći dokładnoścdziałania, aIakże ich wszechstronne zastosowania uzasadniają tezę o cywilizacyjnej roli tych maszyn. Jednak równolegle do narastającej fascynacji upowszechnia się także świadomośćograniczeń, wią-

neu roinformatyki,

aby na tej podstawie zaryzykować szkic prognozy na n ajbliższą p rzys zło ść. Problematyka neurokomputerów ma

z modelowaniem, informatyką i neuroliziologią

ił4FaRłłŃ!{ll

związek

sY§iEtl$tr'ł

lł3lYttOt-ĘGŁYtr1 .:V

Ą;

-c*1 ^n§o§ę$,-

-"s"""e'

ŃeS*",

^łJ .rr ńV

Ę:ł" ,})

żących się z funkcjonowaniem współczesnych komputerów. Te skomplikowane maszyny są

całej swojej współczesnej -zlozoności i technologicznej maprzy

estrii- potomkamiw prostej linii zwykłych liczydeł. Nie przeszka§za nam to w ich zastosowaniach bankowych lub przemysłowych, ale bardzo utrudnia wykorzystanie komputerów do zadań, które mało precyzyjnie, lecz suges-tywnie się sztuczną - nazywa inteligencją. Tam, gdzie maszyna ma zastępować mózg człowieka i powinna być wzorowa-na moze na budowie tego mózgu. Taką maszyną jest właśnieneurokomputer.

Sama jego nazwa brzmi fascynująco. Komputer wzorowany na mózgu człowieka - to przeciez nawiązuje do lansowanego u zarania informatyki terminu mozg elektronowy

i odkurza stare marzenia o Golemie czy ,,, Fran-

19

Z ŻYClA KOMPUTEROW

cia

Z każdym sygnałem weiściowym zw!ązany |est

N e u r o n |est technicznym modelem ko m ó rk i n erwowe|. Budowa la,

sygnałem wyiściowymy.

somę oraz liczne wypustki. Wśród wypustek na uwagę zasługuje poiedynczy akson, służącydo wyprowadzania sygnałów z komórki. Pozostałe Wypustki nazywa §ię dendryta m i doprowadzają one do somy sygnały od innych komórek. Dokładne

gnały wejściowe przez odpowiadające im wagi i sumuiąc |e: E = wrx, * wlx, * ,.. ł ws,,Sygnałwyiśeiowy y zależy od E otaz od dodatkowego palametru neuronu, tak zwanego progu p, W najprostszym wypadku zakłada się, że y przyimuie wartość 1 ieśliE > p ołazwallość0 w przeciwnym wypadku. Zmieniając wańości wag w, yb .,., wnolażpróg p uzyskuie się realizację różnych zadań przetwarzania sygnałów za pomocą tego samego neuronu.

kiei komórki bywa rozmaila, różne są także rozmiary komórek w różnych częściach mózgu, Ogólnie można wy,

różnić

opisanie wszystkich tunkcii komórki

nerwowej iest bardzo trudne, iednak używany w neurokompulerach sztuczny neuron wykorzyslule iedynie Charakpodstawowe jej właściwości. teryzuie się on wieloma §ygnałami weiściowymi x19 x2 ...l xnolaz jednym

kensteinie! Ale nasz wiek wyleczył się z romanlyzmu i opiera wszystkie decyzje na rachunku ekonomicznym. Każde osią9nięcie techniki może liczyó na akceptację jedynie wtedy, gdy gwaranco dają tuje zyski. A więc odpowieAby neurokomputery?

parametr zwany w a g ąi wI wż ,.., wn, łączne zaśpobudzenae neuronu oblicza się mnożąc poszczególne sy-

poznać.

Co to jest neurokomputer? Najprościej można odpowiedziec, że jest to maszyna przetw

arzająca nformacj e, zbudowai

na z elementów naśladujących działanie komórek nerwowych

nałów wejścigwych do wartości

§

niż kompute_ry

20

podstawowy skład-

- w nie| zachodzące nik mózgu. Procesy

dzieć musimy najpierw bliżej je

tak zwanego progu.

Mózg sprawniei przetwarza inlormacie

Komórka nerwowa

można naśladowaćw neurokomputerach

(patrz ramka 1), Te imitacje komórek nerwowych, nazywane neuronami, mają bardzo prostą budowę: każda z nich ma wiele weiść i pojedyncze wyjście. Sygnały docierające do wejśćkażdego neuronu są w nim sumowane, a następnie na wyjściuneuronu pojawia się sygnał o wartościzależnej od stosunku uzyskanej sumy syg-

§

neuronu może mieć inny wpłyV na jego pracę, niż taki sam sygnał pochodzący z innego źródła i docierający do innego wejścia, W neurokomputerze neurony są połączone ze sobą, tworząc sieć (patrz ramka na s. 21). Ponadto niektóre neurony są łączone z wejściamisystemu, a inne są dołączone do jego wyjść.Te pierwsze odbierają sygnały wprowadzane do neurokomputera jako dane do obliczeń, a drugie dostarczają ostatecznych wyników, będących rezultatem pracy całej maszyny. Jednak większośćneuronów połączonych jest ze sobą nawzajem. Struktura tych połączeń wraz z wartościami wag

Aby zróżn ic ow ać znaczenie poszczególnych sygnałów wejściowych są one w neuronie przed sumowaniem mnożone przez tak zwane wagi, Dzięki wagom sygnał docierający do jednego wejś-

wejśćłączonych neuronów decyduje o tym, co neurokomputer robi.

Jakie zalety maią neurokomputery? Zasadniczą zaletą neurokom-

putera jest jego zdolnośćdo pracy równoIegłej. Zwykły komputer,

mając

do

wykonania zadanie

składające się z wielu części,musi wykonywać wszystkie wymaga-

ne operacje kolejno, jedna

po

drugiej. Dlatego nawet bardzo szybkie komputery wymagają wiele czasu, jeślirozwiązywane zadanie jest bardzo skompliko-

wane. w odróznieniu od nich neurokomputery mają możliwośćwy-

konywania wielu czynnościrównocześnie,ponieważ składają się z wielu niezależnie pracujących neuronów. Pomysł zwiększania mocy obliczeniowej komputerów poprzez stosowanie wielu równocześnie pracujących jednostek nie jest

ZŻYClA KOMPUTERÓW nowy: realizują go superkomputery, opierają się na nim transputery, wykorzystuje się go w procesorach wektorowych iw maszynach systolicznych. Jednak nowością,jaką wnoszą neurokomputery, jest stopień równoległości. Transputer podwaja możliwości komputera, do którego jest podłączony, komputer wektorowy pozwala zwielokrotnić obliczenia poprzez równoczesne stosowanie kilkunastu lub kilkudziesięciu jednostek, natomiast neurokomputer może angażować tysiące niezależnie pracujących neuronów,

Wszystko to brzmi bardzo zachęcająco, jednak zgodnie z zapowiedzią podaną na początku

-

porozmawiajmy o pieniądzach... Nauka zna wiele znakomitych rozwiązań, które nie odegrały

znaczącej roliw rozwoju cywilizacji, ponieważ były za drogie. Na szczęścieneurokomputery są a raczej będą, gdyż obecnie -tworzone są głownie wersje badawcze, z reguły wielokrotnie droższe niż seryjnie produkowane tanie. Atut neuro- bardzo komputera ikwi w minimalnym koszcie pojedynczego elementu. Jeden transputer kosztuje więcej niż kilka mikrokomputerów, procesory wektorowe są także bardzo drogie, natomiast koszt układu scalonego, zdolnego do mode-

lowania tysięcy neuronów, jest

drobnym ułamkiem tych sum. Tak więc złożone zadania można za pomocą neurokomputerów

rozwiązywać szybciej i taniej niż a to jest juz innymi melodami - Przekonamy konkretny argument. się zaraz, że nie jest to argument ostatni.

Program dla neurokomputera Każda maszyna przelw arzająca informacje musi być progra-

mowana. Typowe komputery proram ujemy określaj {,c czynności,

g

które trzeba wykonać, aby uzyskać poządany wynik. Dodatkowo programista musi zazwyczaj opisać dane wejściowe i poszukiwa-

ne wyniki, co w pewnych językach programowania (np. Prolog) odgrywa bardziej istotną rolę, niż opis czynności, jakie komputer

Neurony lworzące neurokomputer lączą się ze sobą tworząc s i e ć. Struk-

sl€Ć o do§olm|,trukfum

lura tei sieei może być dowolna, na|częścieiiednak |est ona w a r 9 t w o w a. Składa się na to wiele przyczyn. Łatwo ią zbudować z elementóW elek_ tronicznych lub zasymulować za pomocą kompulera. W prośtyi logiczny sposób można |ą opisać matematycznie oraz stosunkow tanio można ją wykonać w formie speciólizowanego urządzenia. Neurony poszczególnych warstw kontaktuią się głównie w laki sposób, że zapewnia to określony kierunek przepływu sygnałów w sieci.

Wyróżnić więc można

warstwę

w e i śc i o w ą, do którei dociera|ą sy-

gnaĘ podawane z zewnątrz (stanowiące zadania rozwiązywane przez neurokomputer) olaz warslwę wy j ści ową, dostarczaiącą odpo_

wiedzi neurokomputera (rozwiązania zadań). W najprostszym (i najlatwieiszym do analizy) przypadku te dwie warstwy wyslarczają. Czasem do uzyskania wymaganych form zachowania

neurokomputera potrzeba |ednak

większei liczby warstw. W takim wypadku częśćtych war§tw jesl ukryta

przed użytkownikiem, gdyż nie ma on dostępu ani do ich wejść,ani do ich wyjść,Takie ukryle war§twy §twarzaią duże trudności przy programowaniu neurokomputera. Sposób połączenia neuronów decyduie o tym, iakie zadania mogą być rozwiązywane na danym neurokomputerze. Najczęściei neurony iednei warstwy sieci otrzymuią sygnały we|ściowez warstwy poprzedniej a wysy-

łaią §woie sygnały do War§twy na-

stępnei. Czasami uwzg!ędnia się dodatkowo polączenia sięgaiące dalej (o kilka warstw wstecz lub o kilka warstw naprzód), nieco rzadziej bierze się pod uwagę możliwośćtworze-

ma wykonać. Pisanie programów

jest jednak uciążliwe i czasojeślikomchłonne - zwłaszcza program ma puter wykonujący

działac równolegle. W istocie stosowanie komputerów wieloprocesorowych jest dziślimitowane brakiem stosownego oprogramowania, gdyz problemy sprzętowe zostały j uż właściwierozwi ązane, Neu rokom putery także dzi ałają według określopegoprogramu,

jednak ich program zawarty jest w slrukturze połączeń elementów sieci oraz w parametrach tych połączeń, czyli wspomnianych wyżejwańościach wag (ramka na s. 22) Jednak tego specyficznego programu nie musi układać człowiek, gdyż neurokomputer po prostu się uczy. Jest to właściwośćniezwykle atrakcyjna, po-

nia sprzężeń zwrolnych w sieci lub obecnośćpowiązań pomiędzy elemenlami jedne| warstwy. lm bardziei

zlożona struktura sleci, tym bardzie| różnorodne §ą możliwe lunkcie neu-

rokompulera, ale tym lrudniejszy |ego opis. Liczba moźliwych kombinacii połączeń elemenlów neurokomputera niesĘchanie szybko rośnleze wzroslem liczby neuronów. Dla 4 neuronów mamy zaledwie 200 możliwości,dla 6 |uż ponad półtora miliona, a dla

20-

109G.

Tymczasem mózg człowieka zawiera 10r0 komórek nerwowych!

nieważ brak obecnie skutecznej

techniki programowania systemów równoległych.

Uczenie neurokomputerów

Zasada uczenia polega na preneurokomputerowi zadań, dla których znane są poprawne rozwiązania i korygowaniu jego parametrów w taki sposób, by odpowiedź neurokomputera była zgodna z wymaganym wynikiem. Ponieważ o zachowaniu każdego neuronu decydują wspomniane wyżej wagi sygnałów wejściowybh, przeto w praktyce uczenie polega na zmianie wartościtychwag. Ogólna zasada uczenia może być zawarla w dwóch punktach:

zentowaniu

21

nia: znany jest sygnał wejściowy, znany jest sygnał wyjściowy, wy-

generowany przez neuron oraz

kompuler

kpnpl!pr

to |odne,

baldzo koszlouna |€dnorlka, dośćpowolny

znany jest wymagany (poprawny) sygnał wyjściowy danego neuronu. Poprzez porównanie aktualnego wyjścianeuronu z tym, jakiego oczekujemy, mozliwe jest określenie sygnału błędu, który wraz z sygnałem wejściowym

Program dla neurokompute-

ra różni się od programów pisanych

dla normalnych komputerów. Dzia-

łanie neurokomputera polega system wlelopr(rcesolowy lo kllka bardzo kosrtownych lednostek,

szybkl ale drogl

*+s*+

wvvv www /\ /\ /L vvęY

\/\/\/\/

§tt

połączenia, czyli struktura sieci (por. ramka na s. 2'l). Zmieniaiąc

neu?okompute. lo §losunkowo wolnych alo tanlch |ednoslek

tlele

łłłł

Porównanie neurokomputera z innymi systemami

l

korygowane są Wagi tylko tych neuronów, które działały

weiść,które miały realny wpływ

wielkośćkorekty wagi jest

Uczenie neurokomputera jest stosunkowo proste, jeślisieć jest najWyżej dwuwarstwowa, to Zna-

błędnie;

proporcjonalna do Wielkości sygnału, jaki był podawany na

wejścieneuronu w

§

§

chwili popełnienia błędu; Warto zauważyć, ze te zasady poza tym, ze są mateuczenia - wyprowadzone z pew; matycznie nych bardzo ogolnych twierdzeń mogą być akceptowane róW-nież,,zdfoworozsądkowo". Na przykład, sensowne jest to, ze korygowane są wagi tylko tych

22

wartości weiśparametrów: wag iego ciowych i progu. Zmieniając te parametry programuiemy poneuron decyduie zestaw

szczególne neurony. O roli tych neuronów w caĘm zadaniu, iakie rozwiązuie neurokomputer, decydują

\/\/\/

l

bowiem na równoczesnei pracy wszystkich neuronów, o tym, co robi każdy

na powstanie błędu. (patrz ramka

na s, 23)

czy występuje warstwa wejściowa, będąca nadajnikiem informa-

cji (stawiająca zadania) iwarstwa wyjściowa,będąca elementem Wynikowym, dostarczającym wymaganych odpowiedzi, W takiej

sieci dla każdego wejścia moz-

liwe jest skompletowanie wszystkich informacji, pozwalających na

ocenę poprawności jego dziala-

połączenia można także programować neurokomputer, iest to jednak

metoda trudnieisza

do

realizacii

i niepraktyczna przy czę§tych zmia,

nach zadań. Z tego względu struktura neurokomputera i schemat połączeń iego elementów §ą zadawane raz, podczas jego budowy. Natomiast programowania maszyny do realizacji konkretnych zadań doko,

nuje się wyłącznie za pośrednict_ wem zmian parameirów, W ten spo-

sób w programie neurokomputera wyróżnić można częśćstałą, zada, wanąpJzez producenta, oraz część zmienną, możliwą do §wobodnego kształtowania przez użytkownika. Nie iest to zresztą nic niezwykłego, gdyż we wszystkich komputerach częśćoprogramowania jest wbudo-

na przykład wywana w maszynę ROM-BlOS w popularnych komputerach klasy lBM PC,

Metoda uczenia neuronu opiera się zwykle koncepcii tzw. algorytmu

z prosiszych stormułowań tego algorytmu, pochodzące z klasycznej (1960) pracy Bernarda delta, Jedno

Widrowa i Marciana E. Hofla iest następuiące, Załóżmy, że znamy wszystkie sygnały wejściowe neulonu Ą, X? ..., xn olaz wiemy, jaki powinien być jego sygnał wyiściowy y', Wówczas odejmuiąc prawdziwy sygnał wyjściowy y (wyznaczony automatycznie

przez neuron) od wymaganego

się błąd ó : y _

r

otrzymuie f'. Mnożąc wielkośćbłędu d przez aktualny sygnał wejściowy każdego koleinego weiścia 4 otrzymuje się czynnik pozwalaiący na określenie wielko-

ścizmiany odpowiedniei wagi Qw,

zatem Waga każdego weiściazmienia się w każdym kroku procesu uczenia

według zależności:

wi:wi

+

Qw,:

w,

ł óx,:

w, +

(y-y')xt

Wspomniana procedura rnoże być rozważana iako gradientowa

procedura optymalizacyina, pozwalaiąca na uzyskanie takiego zestawu wag który gwarantuie poprawną realizację postawionego przed neurokomputerem zadania.

} .o !

!}

al

s

numer pokazu

Wskazywała, że możliwoścata_ kich sieci są ograniczone, Wynik ten, prawdziwy dla sieci dwuwarstwowych, nie obowiązuje dla sieci wielowarstwowych, Decydujące znaczenie ma tu stopień podobieństwa pomiędzy sygnałami wejściowymi wywołującymi po-

dobne wartościsygnałow wyj-

ściowych, Jeślipodobne (w okre-

ślonym sensie) sygnały wejścioWe mają WyWołyWaĆ identyczne reakcje neurokomputera, wówczas wystarcza sieć dwuwarstwowa. Jeślijednak sieć musi identycznie reagować na zupełnie niepodobne sygnały wejściowe, wówczas konieczne jest wprowadzenie dodatkowych warstw, których sygnały wyjściowe mogą być interpretowane jako wewnętrzna re p reze ntacj a syg nałów wejściowych, Naturalnie ta wewnętrzna reprezentacja nie może być dojej trafny wolna, przeciwnie i celowy wybór decyduje o sukcesie całeg o przetwarzania. Często zresztą postać odwzorowania wejściowejinformacji w warstwie pośredniej może być bardzo interesującym przedmiotem badań będzie jeszi refleksji - o czym cze dalej mowa. Chwilowo jednak trzeba ustalic, jak mozna uczyć sieć wielowarstwową,

Uczenie neurokomputerów wie!owarstwowych zadanie uczenia sieci wielowarstwowej okazało się trudne,

Sieć ta ma bowiem warstwy wewnętrzne (tak zwane ukryte), które takze wymagają uczenia. W odniesieniu do ,warstw wewnętrznych brak jednak podstaw do orzekania, czy lworzące ie neurony działają poprawnie, czy nie. Pierwsze proby uczenia sieci wielowarstwowych nie były zbyt zachęcające. Już wczesne prace K. S. Lashley'a (1950) pokazywały pewien prosty sposób uczenia takich sieci, jednak uczenie to było pozbawione możliwościcelowego ukierunkowania na rozwiązywanie konkretnych zadań. lnne podejście polegało na poszukiwaniu heurystycznych reguł tworzenia struktury warstw ukrytych bez uczenia (W. A. Little i G. L. Shaw w 1975 oraz McOleand i D, E. Rumelhard w 1981 roku). Próbowano takze podejśćstochasty-

cznych (Barto

i

Anadan

1985),

logicznych (Parker 1985) i uo9ólnionej reguły delta (Le Cun, '1985). Zasadniczy postęp w tych badaniach dała reguła back propagation Rumelharda (1986), której zasady omówimy dalej.

Wsteczna propagacia błędów W wielowarstwowym neurokomputerze mozna (w trakcie które uczenia) łatwo okreśłłć, z neuronów wyjściowych dostarczają poprawnych odpowiedzi,

a ktore popełniają błędy, Błędy te

W wyniku uczenaa neurokomputer re, alizuie zadane lunkcje z coraz mniei-

szym błędem

§y|ścb h9mu|ące

tworzy komplet informacji wymaganych do tego, aby dokonać korekty Wagi.

Ta prosta i wygodna sytuacja nie dotyczy jednak niestety sieci

wielowarstwowych.

Dlaczego stosuje się neurokomputery wielowarstwowe? dwuwarstwowych Właściwości neurokomputerów badane były przezM, Minsky'ego iS. Paperta. Konkluzja z tych badań, zawarta

w książce Perceptrons

(1969)

ry|ścbpob.rdatte

§y|śclo pobud4|ąą z lolowanlam

wylścte pobudla|ąco

z blołowgn|m

Układ elektroniczny, który może modelować działanie komórki nerwowei

23

z ŻYclA KOMPUTERoW sYlir.

pobudtdące

ry|ftr.

pobudze|ące e

blokouanbm

ły|iie hamuhce

oeee€oó(99o e(a€6€6ąeo3 b

r.gubd..bł.| ct.ror.l

lorofanla

o

r.gul.q! U.gl re|óó

r*rźnll ćrlrilny

EHE=lEElEE

EĘHĘHHHH

potonc|om.by

r.guladl plotu

§TTITTIT lllidok panelu sleruiącego elektronicznego modelu komórki nerwowej

mogą być wynikiem błędnej pracy

neuronów wyjściowych,mogą jednak wynikać z nieprawidłowego funkcjonowania neuronów wcześniejszych warstw. Wiedząc jednak, skąd te błądzące neurony czerpały informacje, można doko-

F'tl

nać (na drodze obliczeniowej)

rzutowania błędów, identyfikując z kolei pomyłki neuronów wcześ-

niejszych warstw. Pozwala to uczyć kolejno neurony wszystkich

początku. - od końca do Ponieważ to rzutowanie błędów przebiega w kierunku przeciwnym.do normalnego przepływu

warstw

sygnałow w neurokomputerze (od

neuronów wejściowych do wyjścia) mowi się tu o wstbcznej - błędów: propagacji Metoda uczenia z wsteczną propagacją błędów jest stosunkowo powolna i dlatego szuka się

wciąż metod doskonalszych

tmpuls nerwowy modelowany pęez komputer z.

N

-l/\

Ę

ll\ z -]

U) l!

t& aJ

)

.l 3-]

ż l\

\

\

31-----r '

0o0

-| OJ

-] o

'0

24

światowamoda! Przejawy tej mody na

neuro-

pętała" wspomnianą

modę,

komputery są rozmaite. Wydawane są coraz liczniejsze, poświęcone tej problematyce, artykuły naukowe, studia i rozprawy. lch omawian ie zdecydowanie wykracza poza ramy tego artykułu, jednak warto wskazać na ksiązkę, która w znacznym stopniu ,,roza mianowicie na dużą monografię

\

o-

i

szybszych. Jest to jednak metoda na tyle skuteczna, że w dziesiątkach zastosowań neurokomputerów nie ma dla niej obecnie alternatywy. A jest tych zastosowań sporo, ponieważ na neurokomputery zapanowała

Jamesa Andersona i Edwarda Rosenfelda Neurocomputing. Często organizowane są międzynarodowe konferencje poświęcone problematyce modeli sieci nerprzykład zwoływawowych - na połrocznych lnne w odstępach ternational Joint conference on Neural Networks (ostatnia odbyła się w Waszyngtonie w dniach od 15 do 19 stycznia 1990). W 1987 roku powstało międzynarodowe towarzystwo nazwane lnternational Neural Network Society i wydawany jest pod jego auspicjami międzynarodowy periodyk naukowy zatytułowany ,,Neural Networks". Wykorzystuje się neuro-

zŻYcl^ KoMPUTERoW komputery do rozpoznawania obrazów, mowy, sygnałów radarowych, sonaru, sygnałów biomedycznych, wibroakustycznych itp. Znane prace Teuovo Kohonena dotyczą wyko rzystan a neu ronów

do tworzenia

i

samoorganizujących się map, co wykorzystano w obliczeniach aerodynamicznych. Bardzo wiele ukazuje się prac wskazujących na możliwości wykorzystania neurokomputerów jako inteligentnych pamięci. Wzrastające zainteresowanie metodami przetwarzania informacji za pomocą neurokomputerów wynika z faktu wytworzenia w postaci specjalizowanych -układów scalonych, a więc w silikonie, jak mawiają Amerykanie neuronów, Układy tego -typutanich są oferowane przez tirmę Hecht-Nielsen Neurocomputer Corp. pod handlową nazwą Anza Plus oraz przezlirmę Human Devices pod nazwą Paralłon 2. rak jest dzisiaj, a jakie były początki?

Trochę historii Pierwszym neurokomputerem

był Perceptron zbudowany w 1957

roku przez Franka Rosenblatta i Charlesa Wightmana w Cornell Aeronautical Laboratory. Przeznaczeniem perceptronu było rozpoznawanie znaków alfanumerycznych z procesem uczenia

jako metodą pro9ramowania systemu. Nie był duży, zawierał zaledwie 8 neuronów i 512 połączeń, ale struktura połączeń zadawana była losowo, co było interesującym novum, a szybkośćjego działania szacowana była na 103 przełączeń na sekundę. Działanie perceptronu nie było

zadowalaiące. Układ wprawdzie uczył się rozpoznawania, jednak nie radził sobie z bardziej złożonymi znakami, a ponadto wykazy-

wał wrazliwośćna zmianę skali rozpoznawanych obiektów, ich położenieoraz zmiany kształtu, Zaletą perceptronu była zdolność do zachowywania poprawnego działania nawet po uszkodzeniu części jego elementów. lnną ciekawą konstrukcją neurokomputera była sieć elektrochemicznych uczących się ele-

tmpuls nerwowy zareiestrowany w mózgu psa

mentów (nazywanych Adaline od: Adaptive linear element), zbudowana w '1960 roku przózBernarda Widrowa z Uniwersytetu Standforda. Sieć ta, nazwana od nazwy elementu Madaline, składała się maksymalnie z 8 modeli neuronów o 128 połączeniach i pracowała z szybkością 10a przełączeń na sekundę. Jej znaczenie, obok ciekawej zasady działania i efektywnego procesu uczenia, polegało na tym, że był to pierwszy neurokomputer oferowany komercyjnie. Co więcej, układ ten był kupowany i jest używany gdzieniegdzie do dziś,czyli przez przeszło 20lat!Zadania sieci Madaline związane są adaptacyjnym

przetw arzan em syg nałów. Wykoi

rzystywana jest w radarach, sonarach, modemach i liniach telefonicznych. W roku 1970 Stephen Grossberg buduje na uniwersytecie w Bostonie sieć neuronową Avalanche słuzącą do rozpoznawania mowy oraz sterowania ruchami ramienia robota, a James Anderson z Uniwersytetu Browna tworzy w 1977 roku Brain state in a box wydobywający wiadomości z bazy danych. Pod względem funkcjonalnym przypominał on znane pamięci asocjacyjne z dwustronnym dostępem, a jego działanie było bardzo szybkie. 25

ll I I

Z ŻYC,A KOMPUTEROW zestawienie parametrow wazniejszych neurokomputerÓW

Nazwa Mark lll Neural emulator processor

Mark lV

Rok ,l985

8 X 103

4 X 105

szybkość

1985

4x

Odyssey

1986

8

Crossbar

1986

1o3

1,6 X 104

x 10'

5x106

x

256

6.4

105

5x106

R.Hecht-Nielsen,

C, Cruz, lBM

R,Hecht-Nielsen, TRW

-l05

2 X 106

x 16l

6 X 109

2,5 X

103

4.9 x

]987

Parallon

1987

3x104 9.1

5x

,105

3X

,105

x

1.4

A.

Penz, Tex" lnst. CFiL

L.Jackel,

105

R.Hecht-Nielsen,

Neurocomp. Corp.

x 19ł

3 X 104

S. Bogoch, Human Dev.

1988

.106

1.5

x

6x

106

,106

R.Hecht-Nielsen,

Neurocomp,Corp,

Od połowy lat 80. notuje się

prawdziwy wyścig,którego uczestnikami- obok laboratoriów badawczych są takze firmy produkujące -układy elektroniczne.

przez Dana Andersona z UniwerOptical novelity filter zawiera -już 1.6x 10a elementów i 2x 106 połączeń oraz pracuje z szybkością2x1O7 przełączeń w ciągu sekundy.

ronów, liczba poł ączeń i szybkość działania.Wyżej zestawiono w fo-

Co dalej?

Osiągnięciami liczącymi się w tym wyścigu są: liczba neu-

rmie tabelarycznej wazniejsze

konstrukcje,

Neurokomputery optyczne Jako pewną ciekawostkę, cho-

dużym

znaczeniu, warto odnotować pojawienie się w latach 80. neurokomputerów optycznych, lJrządzeniate miały zpoczątku skromne mozliwości. Pierwszy zszerzej znanych, opracowany w r. 1984 przez Dimitrija Psaltisa z Kalitornijskiego lnstytutu Technologicznego crossbar - Electro-optic zawierał zaledwie 32 elemen-ty, Ale juz następny z wymienianych, Optical resonator zawierał 6.4 x 103 elementów i 1.6 X 107 połączeń oraz pracował z szybkością 1.6x105 przełączeń w ciągu sekundy. Najnowszy z opisywanych w literaturze, zbudowany 26

,105

AT&T Bell L.

Anza

ciaz perspektywicznie o

x

3

Twórca TRW

2.5

Anza plus

&

Liczba poł.

1986

chip

§

Liczba elem.

sytetu Colorado

Ogromny postęp, jaki dokonuje

się w zakresie technologii

ukła-

dów scalonych duzej skali integracji, oraz rosnące zainteresowan ie neu rokom puterami pozw alają przypuszczac, że technika ta bę-

dzie się nadal szybko rozwijała.

że bardzo szybko przesunięte zostaną obecne bariery limitujące szybkość dzialania neurokomputerów i radykalnie wzrośnieliczba elementów dostępnych w formie pojedynczego układu scalonego. Dzięki temu idea przetwarzania równoległego, najpełniej reprezentowana właśniew strukturze neurokomputera, zostanie zastosowana w bardzo licznych zadaniach praktycznych, powodując radykalne zmiany w klasyfikacjizadań rozwiązywanych przez systemy informatyczne. Juz dziśmowi się o mozl iwości zamiany problemów płime (czyli zagadnień wymagających dla rozwiązania określonego czasu) na zagadnienia p-space (czyli wymagające odpowiedniej liczby współbieznie przebiegających procesów obliczeniowych). Jednak prawdziwy postęp w dziedzinie neurokomputerów nadejdzie z chwilą opanowania doskonalszych metod programowania tych maszyn. Łatwo przewidziec,

RYszARD TADEUslEwlcz Czy takie będą etementy przyszłości?

komputerów

, dr hab. RYSZARD TADEUS|EW|CZ ierownikiem Zakładu Biocybernetyki W Automatyki AGH w Krakowie.

l

Lihat lebih banyak...

Comentarios

Copyright © 2017 DATOSPDF Inc.