Neuralt netværk

Fra Wikipedia, den frie encyklopædi
Gå til: navigation, søg
Disambig bordered fade.svg For alternative betydninger, se Netværk.

Den menneskelige hjerne består bl.a. af nerveceller, der kaldes neuroner. Disse neuroner danner et netværk, et såkaldt neuralt netværk. Mellem neuronerne i dette netværk er der signaludveksling af elektrokemiske signaler. En neuron får input fra andre neuroner og sender selv et output som resultat ud på netværket.

Dette er en primitiv beskrivelse. Kompleksiteten i vores hjerne er enorm. Man har fundet mere end hundrede typer af neuroner i vores hjerne. Hjernens neuroner laver "spontant" forbindelser mellem neuronerne. Specielt børn mellem 0 og 5 år danner mange forbindelser og hjernen danner i hele vores liv flere forbindelser.

Man ved ikke hvordan erindringer gemmes og hvem ved – måske har forskellige mennesker forskellige måder at gemme erindringer på. Måske ligger erindringer holografisk i hjernen, man ved det ikke.

En yderst primitiv sammenligning af hjernens neurale net og en computer[redigér | redigér wikikode]

I nogle sammenligninger mellem hjernens neurale net kan følgende beregning foretages:

  • Hjernen bruger omtrent 20 J/s (= 20 W). Der er milliarder af neuroner i vores hjerne; nogle estimerer at der er omkring 2×1012 neuroner. Neuroner har en responstid på cirka 10 ms – dette svarer til 100 Hz. Hjernen har i princippet en processeringskraft på 2×1014 "logiske" operationer per sekund.
  • En Pentium og en PowerPC-processor bruger cirka 10-100 J/s (= 10-100 W). Til sammenligning har en PowerPC 970 processor med 64-bit databusbredde ved en frekvens på 3 GHz i omegnen af 2×1011 logiske operationer per sekund, og med den primitive sammenligning er hjernen omtrent 1000 gange hurtigere end dagens high-end PC'er.

Men denne sammenligning er unuanceret, da man faktisk ikke kender vores hjernes repræsentationsform og beregningsform. Kun ved sanseneuronerne kan man finde noget der "forstås". Længere inde i hjernen virker den plastisk i sin måde at repræsentere "noget" på.

En af vores neuroner har i snit, så vidt man har estimeret, 1.000-10.000 tværgående forbindelser til andre neuroner i et tredimensionalt net. Ingen computerchips kan håndtere så mange tværgående forbindelser. Todimensionale computerchips er små; cirka 10 mm×10 mm, hvor man i designfasen forsøger at holde antallet af tværgående forbindelser nede, da de gør delkredsløbene i processoren langsommere.

Kunstigt neuralt netværk (KNN)[redigér | redigér wikikode]

En model af det biologiske neurale netværk (et såkaldt kunstigt neuralt netværk) kan opstilles matematisk. Der findes flere sådanne modeller både mht. netværks- og neuronopbygning.


McCulloch-Pitts-neuronen

I en af de mest simple modeller for neuronopbygning, McCulloch-Pitts-neuronen, kan signalerne, en neuron kan udsende, kun antage to former: enten 1 eller 0. Det vil sige, enten udsender en neuron et signal, eller så gør den ikke. Dette udgående signal afhænger af summeringen af de indgående signaler, en neuron modtager fra andre neuroner, samt størrelsen på en tærskelværdi (en Heaviside trinfunktion af summeringen). I denne neuronmodel er det altså tærskelværdien, der ud fra inputtet bestemmer, om outputtet skal være 0 eller 1.

I andre og mere generelt anvendelige modeller for neuronopbygning end McCulloch-Pitts-neuronen, er inputtet fra hver neuron til en anden neuron vægtet og trinfunktionen er erstattet med en anden funktion, fx sigmoid-funktionen. I disse modeller er oplæring af netværket til en given opgave et vigtigt element. Oplæringen består i justering af vægtene f.eks. ved at vise netværket et inputmønster igen og igen, og ud fra en sammenholdning med netværkets output hertil og det ønskede output, udfører man en vægtjustering. Ved McCulloch-Pitts-neuronen antages det, at et netværk baseret på denne neuronmodel allerede er oplært, dvs. hér tærskelværdien allerede er indstillet til den givne opgave.

I 1959 blev neurocomputeren Mark I perceptronen konstrueret. Den byggede på McCulloch-Pitts neuronmodel, men i udvidet form, og kunne anvendes til tegngenkendelse. Generelt er kunstige neurale netværk gode til mønstergenkendelse samt klassifikation af disse og finder derfor anvendelse inden for datalogien. Neurale netværk har bl.a. været anvendt til matching af fingeraftryk, genkendelse af proteinstrukturer og endda til at styre en bil.


Enkeltlags-perceptron[redigér | redigér wikikode]

Nuvola apps download manager2-70%.svg Hovedartikel: Enkeltlags-perceptron.

En enkeltlags-perceptron er et feedforward-netværk, hvilket indebærer, at intet output fra en neuron bruges som input til en neuron tidligere i netværket (Modsat et Hopfield-netværk eksempelvis).

En enkeltlags-perceptron er simpel at opbygge, da den kun har et input-lag (holdeplads for input-værdier) og et output-lag.

Enkeltlags-perceptronen kan kun modellere lineært adskillelige funktioner som de boolske and, or og not, hvorimod den ikke kan modellere en XOR-funktion, da den ikke er lineært adskillelig.

Flerlags-perceptron[redigér | redigér wikikode]

Nuvola apps download manager2-70%.svg Hovedartikel: Flerlags-perceptron.

Som enkeltlags-perceptronen er flerlags-perceptronen et feedforward-netværk. I modsætning til enkeltlags-perceptronen har den tilføjet (minimum) et lag mellem inputlaget og outputlaget, der gør den i stand til at modellere enhver delmængde af Rn (Universelle approksimationsteorem).

Eksterne henvisninger[redigér | redigér wikikode]