Simulation af biologisk associativ hukommelse



Relaterede dokumenter
Nervesystemets celler, fysiologi & kemi

Undervisningsplan FORÅR februar Introduktion til faget Hana Malá februar Hjernens opbygning og funktion Hana Malá

10. Mandag Nervesystemet del 1

Repetition. Carsten Reidies Bjarkam. Professor, Overlæge, Ph.D. Neurokirurgisk Afdeling Aalborg Universitetshospital

Liste A 1 Na + -glucosetransportør 2 Glucosetransportør 3 Na + /H + exchanger 4 Na +,K + ATPase 5 Acetylcholinreceptoren i den neuromuskulære junction

Almen cellebiologi Membrantransport

NEUROBIOLOGI 2008 KURSUSPLAN

Forklaring. Størrelsesforhold i biologien DIFFUSION. Biofysik forelæsning 8 Kapitel 1 (8) Mindste organisme: 0.3 :m = m (mycoplasma)

Nervefysiologi - Excitable membraner

Nervesystemet / nerveceller. Maria Jernse

Opgave 1. EPO og bloddoping

Syv transmembrane receptorer

Udfordringen. Nikotin i kroppen hvad sker der?

Biofysik forelæsning 8 Kapitel 1 (8)

Kognitionspsykologi. ved cand.psych., ph.d. Kamilla Miskowiak. Onsdag Købmagergade 44, lok. 1. Hold Folkeuniversitetet København

EQ6: Explain the math that the postsynaptic neuron uses to process the information that it receives (in the form of postsynaptic potentials).

Theory Danish (Denmark) Ikke-lineær dynamik i elektriske kredsløb (10 point)

Den menneskelige cochlea

Gymnasieøvelse i Skanning Tunnel Mikroskopi (STM)

Dynamik. 1. Kræfter i ligevægt. Overvejelser over kræfter i ligevægt er meget vigtige i den moderne fysik.

Essay Question regarding Chapter 3. Neurophysiology: The Generation, Transmission, and Integration of Neural Signals

Projekt 4.2. Nedbrydning af rusmidler

BIOLOGI OH 1. Det sunde liv. Livsstil Holdninger Fritid Motion Kost Tobak Alkohol Stress

Elektrisk Stimulation: Grundlæggende Principper

Emneopgave: Lineær- og kvadratisk programmering:

Cresta Asah Fysik rapport 16 oktober Einsteins relativitetsteori

Kokain ændrer din hjerne

EKSAMEN. NEUROBIOLOGI OG BEVÆGEAPPARATET I (Blok 5) MedIS 3. semester. Onsdag den 5. januar 2011

Indre modstand og energiindhold i et batteri

Projektopgave Observationer af stjerneskælv

RE-EKSAMEN. NEUROBIOLOGI OG BEVÆGEAPPARATET I (Blok 5) MedIS 3. semester. Fredag den 17. februar 2012

Hvad sker der i hjernen, når vi lærer, og hvor ved vi det fra? Christian Gerlach, Syddansk Universitet cgerlach@health.sdu.dk

NERVESYSTEMET1 LEKTION 3. Nima Kalbasi, DDS Anatomi og Fysiologi, bog 1

Tankeformernes intelligens

Matematisk modellering og numeriske metoder

Dæmpet harmonisk oscillator

Tietgenskolen - Nørrehus. Data warehouse. Database for udviklere. Thor Harloff Lynggaard DM08125

Øvelse i kvantemekanik Kvantiseret konduktivitet

Projekt 4.6 Løsning af differentialligninger ved separation af de variable

EA3 eller EA Cube rammeværktøjet fremstilles visuelt som en 3-dimensionel terning:

EKSAMEN. NEUROBIOLOGI OG BEVÆGEAPPARATET I (Blok 5) MedIS 3. semester. Fredag den 6. januar 2012

Når strømstyrken ikke er for stor, kan batteriet holde spændingsforskellen konstant på 12 V.

Menneskets væskefaser

Hvad indeholder røgen?

Matematisk modellering og numeriske metoder. Lektion 1

HUKOMMELSE AF ANNIE BESANT.

At skrue ned for signalstyrken med dantrolene hjælper HD-mus Calcium og neuroner calcium

Er der flere farver i sort?

Introduktion til EEG-biofeedback

Studiespørgsmål til nervesystemet

HUKOMMELSE. Annie Besant.

Glat muskulatur F16 : B: , ,

Lineære differentialligningers karakter og lineære 1. ordens differentialligninger

Affine rum. a 1 u 1 + a 2 u 2 + a 3 u 3 = a 1 u 1 + (1 a 1 )( u 2 + a 3. + a 3. u 3 ) 1 a 1. Da a 2

Teori og opgaver med udgangspunkt i udvalgte områder i Køge Bugt regionen

Tanker er af natur elektriske og magnetiske Af Merete Gundersen Copyright 2008

Interaktiv ebog til biologi A

Ny viden om hvordan depressionsmedicin bindes i hjernens nerveceller

Matematisk modellering og numeriske metoder. Lektion 11

Ekstrakter - rammebevillinger

Dosering af anæstesistoffer

Til denne udfordring kan du eksperimentere med forsøg 4.2 i kemilokalet. Forsøg 4.2 handler om kuliltens påvirkning af kroppens blod.

Forklaring. Størrelsesforhold i biologien DIFFUSION. Veterinær biofysik kapitel 8 Forelæsning 1. Mindste organisme: 0.3 :m = m (mycoplasma)

EDR Frederikssund afdeling Almen elektronik kursus. Afsnit 9-9B-10. EDR Frederikssund Afdelings Almen elektronik kursus. Joakim Soya OZ1DUG Formand

MODUL 5 ELLÆRE: INTRONOTE. 1 Basisbegreber

Naturvidenskab. En fællesbetegnelse for videnskaberne om naturen, dvs. astronomi, fysik, kemi, biologi, naturgeografi, biofysik, meteorologi, osv

Lektion ordens lineære differentialligninger

Naturvidenskabelig metode

Brombærsolcellen - introduktion

Måling af ledningsevne. I rent og ultrarent vand

En f- dag om matematik i toner og instrumenter

Lektion 13 Homogene lineære differentialligningssystemer

Nyt studie kaster lys over hvorfor nogle hjerneområder nedbrydes før andre i HS Styr på foldningen

Fig. 1 Billede af de 60 terninger på mit skrivebord

Elektrokemisk potential, membranpotential og. Donnanligevægt

Det lyder enkelt, men for at forstå hvilket ærinde forskerne er ude i, er det nødvendigt med et indblik i, hvordan celler udvikles og specialiseres.

Reaktionskinetik - 1 Baggrund. lineære og ikke-lineære differentialligninger. Køreplan

MODUL 1-2: ELEKTROMAGNETISK STRÅLING

Eksamen i. Cellebiologi (kandidatdelen): Cellebiologi - Cellers struktur og funktion - Membranbiokemi - Cellulær signaltransduktion

Dato: Præsenteret af: e-stimate international. Powered by e-stimate

Tilstandskontrol. ved hjælp af vibrationsanalyse

nervesystemet. Nervesystemet Nervesystemet skal koordinere og styre kroppens forskellige organer i forhold til

Hjertets elektriske potentialer og målingen af disse

Resonans 'modes' på en streng

Velkommen til. EDR Frederikssund Afdelings Almen elektronik kursus. Joakim Soya OZ1DUG Formand. EDR Frederikssund afdeling Almen elektronik kursus

1. Hvad er kræft, og hvorfor opstår sygdommen?

HTX, RTG. Rumlige Figurer. Matematik og programmering

Matematisk modellering og numeriske metoder. Lektion 5

En statistikstuderendes bekendelser Søren Wengel Mogensen

Sensoriske receptormekanismer F10 : E: E: Øvelse 2

Studiespørgsmål til nervesystemet

Differentialligninger. Ib Michelsen

Synaptisk transmission B: , ,

lys har potentiale til diagnose af sygdom i nethinden og synsnerven

Transkript:

Simulation af biologisk associativ hukommelse Speciale i Datalogi af Anders Petersen Vejleder: Peter Johansen, DIKU 1. Juli 2005

I If the brain was so simple that we could understand it, we would be so simple that we couldn t. Michael Grinder

INDHOLD II Indhold 1 Problemformulering 1 2 Indledning 2 3 Anatomi og fysiologi 3 3.1 Neuronet............................... 3 3.2 Membranpotentialet......................... 4 3.3 Aktionspotentialet.......................... 6 3.4 Neurotransmittere.......................... 7 3.5 Frigivelse af Neurotransmittere................... 8 3.6 Receptorer............................... 9 3.7 Indlæring og hukommelse...................... 10 3.8 Strukturen af cortex......................... 13 3.8.1 Lav tæthed af forbindelser i cortex............. 14 3.8.2 Small-world struktur af cortex............... 15 3.8.3 Modul-opbygning af cortex................. 17 4 Modellering 18 4.1 Hudgkin og Huxleys neuronmodel.................. 18 4.2 Integrate-and-fire neuronmodellen................. 25 4.3 McCulloch-Pitts neuronmodel.................... 27 4.4 Modellering af synapser....................... 28 4.5 Den neurale kode........................... 31 4.6 Modellering af hebbiansk indlæring................. 33 4.7 Modellering af strukturen i cortex................. 36 4.7.1 Small-world netværk..................... 36 4.7.2 Modul-opbygget netværk.................. 37 4.7.3 Scale-free netværk...................... 39 4.7.4 Karakterisering af netværkene................ 40 5 Hopfield netværket 42 5.1 Lineært associationsnetværk..................... 42 5.2 Hopfields bidrag........................... 44 5.3 Et gemt mønster........................... 46 5.4 Flere gemte mønstre......................... 47 5.5 Kapaciteten af Hopfield netværket................. 48 5.6 Tynde mønstre............................ 50 5.7 Udtømte Hopfield netværk...................... 51 5.8 Biologisk realistisk Hopfield netværk................ 52 5.8.1 Neuronmodellen....................... 52 5.8.2 Neuronaktivitet........................ 52 5.8.3 Indlæringsreglen....................... 52 5.8.4 Synapser og forbindelser................... 53 5.9 Model af et biologisk realistisk Hopfield netværk......... 53 5.10 Nummerisk løsning af differentialligninger............. 55 5.11 Overlap af mønstre.......................... 56

III INDHOLD 6 Resultater 57 6.1 Karakterisering af netværksinstanserne............... 58 6.2 Hopfield netværk med McCulloch-Pitts neuroner......... 58 6.3 Hopfield netværk med Integrate-and-fire neuroner......... 58 6.4 Hopfield netværk med Hodgkin-Huxley neuroner......... 60 6.5 Konklusion på resultaterne..................... 62 7 Optimering af netværksstrukturen 63 7.1 Genetiske algoritmer......................... 63 7.1.1 Selektion........................... 64 7.1.2 Kombination......................... 64 7.1.3 Mutation........................... 65 7.2 Genetisk algoritme til bestemmelse af netværksstrukturen.... 65 7.3 Resultater af den genetiske algoritme................ 67 8 Diskussion af forbedringer 69 9 Konklusion 71 Litteratur 72 A En god genkaldelse 74 B En dårlig genkaldelse 75 C Karakterisering af netværksinstanserne 76 C.1 Den totale axonlængde som funtion af k.............. 76 C.2 L som funktion af k......................... 77 C.3 C som funktion af k......................... 79 C.4 D som funktion af k......................... 80 D Hopfield netværk med McCulloch-Pitts neuroner 82 E Hopfield netværk med Integrate-and-fire neuroner 84 F Hopfield netværk med Hodgkin-Huxley neuroner 86 G Optimering af netværksstruktur k = 8 88 H Optimering af netværksstruktur k = 6 90 I Kildekode 92 I.1 neurontest.m............................. 92 I.2 createsmallworldnetwork.m..................... 95 I.3 createmodularnetwork.m...................... 96 I.4 createscalefreenetwork.m...................... 98 I.5 hopfieldmp.m............................. 100 I.6 hopfieldif.m............................. 102 I.7 hopfieldhh.m............................. 106 I.8 call.m................................. 110 I.9 calw.m................................ 110 I.10 calc.m................................. 111

INDHOLD IV I.11 cald.m................................. 111 I.12 GA.m................................. 112 I.13 GApareto.m.............................. 113 I.14 GAinitial.m.............................. 114 I.15 GAplot.m............................... 114 I.16 reshapec.m.............................. 115 I.17 int2bit.m............................... 115 I.18 bit2int.m............................... 115

1 1 Problemformulering 1 Problemformulering J.J Hopfield fremsatte i sin berømte artikel [15] fra 1982 et kunstigt neuralt netværk, der fungerer som en associativ hukommelse. Netværket kaldes for et Hopfield netværk. Hopfield netværket er et fuldt sammenhænge netværk, der benytter Mc- Culloch-Pitts neuronmodel og Hebbs produktregel til indlæring. Det har vist sig, at et fuldt sammenhænge neuralt netværk af McCulloch-Pitts neuroner ikke er realistisk set fra en biologisk synsvinkel. Jeg vil derfor lave to varianter af Hopfield netværket, hvor jeg benytter to mere realistiske neuronmodeller. Den første er Hudgkin og Huxleys neuronmodel, der anses for den mest realistiske neuronmodel til dato. Den anden er Integrate-and-fire modellen, der er en mere upræcis model, men tilgengæld ikke er nær så beregningstung som Hudgkin og Huxleys neuronmodel. Udover at ændre på neuronmodellen vil jeg også gøre Hopfield netværket mere realistisk ved at ændre på strukturen af netværket, så det ikke længere er fuldt sammenhænge. Kvaliteten af Hopfield netværket kommer da til at afhænge af netværkets struktur. Jeg vil undersøge tre mulige strukture: Watts og Strogatzs Small-world netværk, Barabási og Alberts Scale-free netværk og et modulopbygget netværk, som jeg selv har konstrueret. Ydermere vil jeg undersøge hvilket netværk der vil fremkomme ved en optimering af netværksstrukturen, som man må formodes, det er foregået under evolutionen. Jeg vil således konstruere en genetisk algoritme, der samtidig kan maksimere kvaliteten af hukommelsen og minimere den totale axonlængde. Jeg vil benytte programmet Matlab til simulation af neuronmodellerne og netværksstrukturerne. Matlab vil også blive benyttet til konstruktion af den genetiske algoritme.

2 Indledning 2 2 Indledning En af de største udfordringer gennem tiderne har været at forstå, hvordan mennesket skaber følelser, tanker og hukommelse. Undersøgelserne af dette fænomen går helt tilbage til oldtiden, hvor Aristoteles (384-322 f.kr.) mente at følelser, tanker og hukommelsen udsprang af hjertet og at hjernen blot var til for at nedkøle resten af kroppens organer. Også den berømte franske filosof René Descartes (1596-1650) beskæftigede sig med spørgsmålet. Descartes mente, at følelser, tanker og hukommelsen var adskilt fra kroppens biologiske processer. Denne tankegang fortsatte helt op til 1980 erne, hvor psykologer stadig hævdede at følelser, tanker og hukommelse ikke kunne beskrives ved biologiske processer. I dag er man heldigvis blevet meget klogere. Man ved nu at følelser, tanker og hukommelse er lokaliseret i centre i hjernen styret af biologiske processer. Takket være Santiago Ramón y Cajal (spansk nobelprismodtager i medicin, 1852-1934) ved man også at hjernen består af selvstændige enheder, neuroner, der er forbundet med hinanden i netværk. [17] Traditionelt har området omkring udforskning af hjernen (neuroscience) været forbeholdt biologer, medicinere og psykologer, men med tiden er flere faggrupper bl.a. fysikere og dataloger blevet involveret i forskningen, så der nu er tale om et meget tværfagligt område. Med opfindelsen af computeren opstod et nyt område indenfor neuroscience, computational neuroscience, hvor computerens evne til at udføre simulationer af neurale netværk blev udnyttet. I kraft af at computerne er blevet hurtigere, er det i dag muligt at lave simulationer af neurale netværk, der bygger på biologisk observationer. I sin berømte artikel fra 1982 fremsatte Hopfield [15] en model af et kunstigt neuralt netværk, der var i stand til at fungere som associativ hukommelse. Netværket kaldes for et Hopfield netværk. Hopfield netværket er interessant, fordi det benytter flere af de biologiske observationer, der er gjort omkring neuroner og indlæring af information. Med udgangspunkt i Hopfield netværket vil jeg konstruerer et nu mere biologisk realistisk associativt netværk. Jeg tager en biologisk indgangsvinkel til problemet og starter med at gennemgå neuronets anatomi og funktion, samt hvordan undersøgelser tyder på, at et netværk af neuroner kan være organiseret (afsnit 3). Derefter vil jeg se på, hvordan neuronerne og netværket kan modelleres (afsnit 4) og elig gennemgå funktionen af Hopfield netværket og hvilke ændringer, der skal foretages for at gøre netværket mere biologisk realistisk (afsnit 5). Det sidste afsnit i specialet omhandler konstruktion af en genetisk algoritme til optimering af netværksstrukturen (afsnit 7). I det 20. århundrede var den store bedrift at forstå det menneskelige DNA. Jeg er overbevist om, at det 21. århundrede store bedrift vil være dedikeret til en bedre forståelse af den menneskelige hjerne. God fornøjelse.

3 3 Anatomi og fysiologi 3 Anatomi og fysiologi I dette afsnit vil jeg give en gennemgang af neuronets anatomi og funktionalitet. Jeg vil i afsnit 4 benytte denne viden til at modellere neuronet. Afsnittet vil også behandle de biologiske funktioner bag indlæring og hukommelse. Specielt vil jeg se på Hebbiansk indlæring. Materialet til dette afsnitttet er hentet fra Byrne og Roberts [5] med undtagelse af et underafsnittet, der omhandler strukturen af cortex. Underafsnittet er basseret på artikler, hvilket vil fremgå af teksten. 3.1 Neuronet Et neuron er et andet ord for en nervecelle i hjernen. Et neurons funktion er at transportere og bearbejde information. Det kan være at bringe sanseindtryk fra øjnene videre til processering i hjernen eller bearbejde det virvar af informationer, der skabes når f.eks en hukommelse skal fremkaldes. Der findes mange forskellige neuroner, da neuronerne skal varetage mange forskellige funktioner. Fælles for dem alle er; at de består af en cellekrop kaldet soma, der indeholder cellekernen, et axon hvor information fra soma udses, samt dritter hvor information til soma kan modtages. (se figur 1). Information udses fra soma ved et aktionspotentiale (se afsnit 3.3), der af axonet propageres til axonterminalerne, hvor kemiske stoffer kaldet neurotransmittere udses (se afsnit 3.4). Neurotransmitterne har indvirkning på andre neuroners dritter, hvorved kemiske stoffer kan trænge ind og påvirke neuronet. På den måde blive information st mellem neuronerne. Stedet hvor en axonterminal og en drit mødes kaldes for en synapse. Axonterminalen bliver i denne forbindelse kaldt for den præsynaptiske del og mødestedet på dritten bliver kaldt for den postsynaptiske del. De to involverede neuroner betegnes derfor som hhv. den præsynaptiske neuron og postsynaptiske neuron. Synapser kan også i specielle tilfælde forekomme direkte på soma (Basket-neuronet) og direkte på den første del af axonet (Chandelier-neuronet). Figur 1: En præsynaptisk- og en postsynaptisk neuron hvor de forskellige dele af neuronet er angivet.

3.2 Membranpotentialet 4 Neuronerne kan opdeles i to grupper: de ekscitatoriske neuroner og de inhibitoriske neuroner. De ekscitatoriske neuroner har en positiv indvirkning på aktiviteten af andre neuroner, mens de inhibitoriske neuroner bremser aktiviteten af de neuroner, de indvirker på. Om et neuron er ekscitatorisk eller inhibitorisk bestemmes af hvilke neurotransmittere, der udses fra axonterminalerne. Den største del af den menneskelige hjerne består af cortex (se afsnit 3.8). Her er Pyramidal-neuronet og Spiny-Stellate-neuronet de hyppigst forekomne ekscitatoriske neuroner. Pyramidal-neuronet har dens navn, fordi dens soma ligner en pyramide. Indenfor de inhibitoriske neuroner er Basket-neuronet, Chandelier-neuronet og Double-Bouquet-neuronet de mest almindelige. Basket cellen har fået dens navn, fordi den danner en kurv omkring en anden neurons soma. Chandelierneuronet er speciel, ved at axonet kan have synapser, der sidder på den første del af Pyramidal-neuronets axon. Dette medfører, at Chandelier-neuronet har den kraftigste inhibitoriske effekt på Pyramidal-neuronet og kan helt stoppe alt aktivitet. Chandelier-neuronet har fået sit navn, fordi axonet til tider kan ligne en gammeldags lysekrone. Udover de omtalte neuroner finder der et væld af underklasser indenfor hver neurontype. 3.2 Membranpotentialet For at forstå funktionen af et neuron er det nødvigt at beskrive neuronets membranpotentiale. Membranpotentialet er den spænding, der findes mellem indersiden og ydersiden af neuronets plasmamembran. Membranpotentialet bliver oftest målt i millivolt (mv) og skyldes, den forskel der er mellem koncentrationerne af ioner på indersiden og ydersiden af membranen. De ioner, der har størst betydning for membranpotentialet, er Na +,K +,Cl og Ca 2+. På figur 2 ses koncentrationerne af de forskellige ioner indenfor og udenfor cellen. Det ses, at koncentrationen af K + -ioner er størst indenfor cellen, mens koncentrationen af de restere ioner er størst udenfor cellen. Der sker hele tiden en strøm af ioner ind og ud af cellerne i hele kroppen afhængigt af koncentrationsforskelle (diffusion) og membranpotentialer. Ioner vil være tilbøjelig til at flytte sig mod deres koncentrationsgradient gennem specialiserede ionpore i cellemembranen (se figur 2). For eksempel vil en høj koncentration af K + -ioner inden i en celle resultere i, at K + -ioner vil diffundere ned af deres koncentrationsgradient og forlade cellen. Bevægelsen af K + -ionerne bevirker, at den indre spænding i cellen falder. En elektrisk tiltrækning mellem det negative potentiale inden i cellen og de positivt lade K + -ioner vil nu opstå og forhindre flere K + -ioner i at forlade cellen. Ved et bestem membranpotentiale vil den elektriske tiltrækning mellem det negative membranpotentiale inden i cellen balancere den kraft, der får ionerne til at diffundere ud af cellen. Cellen siges i dette tilfælde at have opnået et hvilepotentiale, hvor ionstrømmen ind og ud af cellen er i dynamisk ligevægt. Den konstante langsomme diffusion opretholdes af Na + K + -pumpen, der modarbejder koncentrationsgradienten for Na + og K + -ionerne ved at pumpe Na + -ioner ud af cellen og K + -ioner ind i cellen (se figur 2). Danskeren, Christian Skou, opdagede i 1950 erne denne pumpe og blev i 1997 belønnet med nobelprisen for sin opdagelse.

5 3.2 Membranpotentialet Figur 2: Koncentrationerne af Na +,K +,Cl og Ca 2+ -ioner indenfor og udenfor cellen angivet i mol. Figuren viser også ligevægtspotentialerne for ionerne og funktionen af Na + K + -pumpen. (Byrne og Roberts. [5]) Membranpotentialet for hvornår en enkelt iontype er i ligevægt kan beregnes vha. Nerst-ligning, E ion = RT zf ln([ion] o ) (1) [ion] i hvor R er gaskonstanten (8.315 joule pr kelvin pr. mol), T er temperaturen i kelvin (T Kelvin = 273.16 + T celsius ), z er ladningstallet for ionen, F er Faradays konstant (96.485 coulomb per mol) og [ion] i og [ion] o er henholdsvis koncentrationerne indenfor og udenfor cellen, når ionerne er i ligevægt. Eksempelvis betyder det, at ligevægtspotentialet for K + -ionerne er, E K + = 8.315 (273.16 + 37) 1 96.486 ln( 3 ) = 102.7mV (2) 140 Figur 2 viser ligevægtspotentialerne for de restere ioner. Det samlede hvilepotentiale for cellen, V rest, beregnes ved følge vægtning af ligevægtspotentialerne for K +, Na + og Cl -ionerne, V rest = p K +E K + + p Na +E Na + + p Cl E Cl (3) hvor p K +, p Na +, p Cl er de relative permabiliteter af ionerne gennem membranen. Den relative permabilitet varierer mellem 0 og 1. Vægtningen kaldes for Goldman-Hudgkin-Katz ligningen. Da den relative permabilitet kan variere, har alle neuroner ikke samme hvilepotentiale. Hvilepotentialet ligger normalt mellem -75 mv til -40 mv. Lavere

3.3 Aktionspotentialet 6 hvilepotentiale opnås i de thalamiske neuroner (neuroner i Thalamus, se figur 10) under søvn (ca. -70 mv), hvilket betyder, at de thalamiske neuroner skal stimuleres kraftigere for at en aktivering af aktionspotentialet kan finde sted. Aktiviteten fra de sensoriske input, der går gennem de thalamiske neuroner til cortex, bliver på denne måde begrænset under søvn. 3.3 Aktionspotentialet I 1952 undersøgte Hudgkin og Huxley hvordan neuronet reagerer på ændringer i membranpotentialet. Det største problem, man tidligere var stødt på i sådanne undersøgelser, var at måle ionstrømningnerne under påvirkning af membranpotentialet. Hudgkin og Huxley løste problemet ved at benytte Voltage clamp teknikken udviklet af Cole i 1949. Teknikken består i at fastlåse membranpotentialet ved hele tiden at tilføre strøm. Den mængde af strøm, der skal tilføres for at holde spændingen fastlåst, vil give et billede af strømningerne af de positive og negative ioner. Membranpotentialet over membranen kan påvirkes i to retninger: Ved en depolarisering gøres den negative spænding mindre og ved en hyperpolarisering gøres den negative spænding større. Hudgkin og Huxleys undersøgelser viste, at ved en tilstrækkelig depolarisering af membranen åbner Na + -kanalerne sig, så Na + -ioner kan strømme ind igennem membranen og bevæge membranpotentialet i retning af E Na +. Dette elektriske spændingspunkt kaldes for neuronets tærskelværdi. Tærskelværdien ligger mellem -45 mv og -55 mv. Når tæskelværdien bliver overskredet vil membranpotentialet følge et mønster kaldt aktionspotentialet. I starten af aktionspotentialet vil kun få af Na + -kanalerne være åbne. Indstrømningen af Na + -ionerne vil yderligere depolerisere membranen, så flere Na + -kanaler åbner sig. Na + -kanalerne siges at blive aktiveret. Der er tale om en selvforstærke process, der får membranpotentialet til hurtigt at stige til omkring +40 mv. Depolariseringen får efterhånden Na + -kanalerne til at blokere. Kanalerne siges at blive inaktiveret, hvilket betyder, at de er lukket for yderligere indstrømning af Na + -ioner. En ny aktivering af Na + -kanalerne kan nu kun ske ved at fjerne depolariseringen af membranen. Dette kaldes for en deinaktivering af Na + -kanalerne. Deinaktivering resulterer i, at Na + - kanalerne bliver deaktiveret og er nu klar til igen at blive aktiveret. Na + - kanalerne besidder således to processer, der er afhængig af membranpotentialet: aktivering-deaktivering og inaktivering-deinaktivering. Dette er relavant, når Hudgkin og Huxleys neuronmodel bliver gemmengået (se afsnit 4.1). Na + -kanalerne er ikke de eneste kanaler, der bliver påvirket af depolarisering, også K + -kanalerne bliver aktiveret, så de positivt ladede K + -ioner kan strømme ud af cellen. Aktiveringen af K + -kanalerne sker dog langsommere Na + -kanalerne og der går derfor et stykke tid, inden effekten af udstrømningen har indvirkning på membranpotentialet. På et tidspunkt vil udstrømningen af K + -ioner dog være større indstrømningen af Na + -ioner, hvorved membranen igen vil blive hyperpolariseret. Når membranpotentialet igen rammer hvilepotentialet deaktiveres K + -kanalerne. K + -kanalerne er dog lidt sløve til at deaktivere, så når hvilepotentialet er nået, vil de i en kort periode skabe en afterhyperpolarisering af membranen, inden hele aktionspotentialet er klar til gentagelse.

7 3.4 Neurotransmittere Figur 3: Udbredelse af et aktionspotentiale i et axon. I region 2 sker en depolarisering fremkaldt af et aktionspotentiale. Region 3 har allerede været depolariseret og er nu på vej til at blive hyperpolariseret. Aktionspotentialet vil udbrede sig yderligere ved at depolarisere region 1. (Byrne og Roberts [5]) K + -kanalerne gennemgår i modsætning til Na + -kanalerne kun én process, der er afhængig af membranpotentialet: aktivering-deaktivering. Den kraftige depolarisering, der opnås ved aktionspotentialet, vil påvirke axonet, der også er udstyret med ionkanaler. Eftersom axoner er lange, vil det opleves, som om aktionspotentialets ændring af membranpotentialet vil løbe som en bølge nedover axonet (se figur 3). Det er dette fænomen, man beskriver som at neuronet fyre eller med andre ord udser en spike. Efter aktionspotentialet er gennemført, skal der gå en hvis tid, inden et nyt aktionspotentiale kan skabes. Dette tidsrum kaldes for neuronets stabiliseringsperiode og skyldes at nye positive ioner skal indføres i cellen. Dette kan først ske, når de langsomme K + -kanaler stopper den udgåe strøm af positive ioner. 3.4 Neurotransmittere Det er i den synaptiske kløft mellem de to synaptiske dele, at neurotransmitterne skal overføre information fra den præsynaptiske neuron til den postsynaptiske neuron. Der findes mange forskellige neurotransmittere, hvoraf jeg kun vil beskæftige mig med de to mest almindelige i hjernen. GABA (γ-aminobutyric Acid) er den mest almindelige inhibitorisk neurotransmitter, mens Glutamate er den mest almindelige ekscitatoriske neurotransmitter. Det er kun muligt for et neuron at være associeret til en neurotransmitter. En synapse er derfor enten ekscitatorisk eller inhibitorisk. Man kan spørge sig selv, hvorfor hjernen har brug for så mange forskellige udformede neuroner og neurotransmittere? Hvorfor ikke bare have en ekscitatorisk og en inhibitorisk neuron?. Undersøgelser typer på, at frekvensen og mønstret, med hvilken neurotransmitterne udses, spiller en rolle for viderebringning af information. De mange forskellige neuroner og neurotransmittere gør, at komplekse mønstre og forskellige frekvenser kan dannes.

3.5 Frigivelse af Neurotransmittere 8 3.5 Frigivelse af Neurotransmittere I neuronet findes små pakker kaldet vesikler. Vesiklerne står for transport og frigivelse af neurotransmitterne. Vesiklerne følger en cyklus, som går under navnet Vesikelapparaturet. Denne cyklus starter i soma, hvor Golgi-apparatet producerer de tomme vesikler. Vesiklerne bliver herefter transporteret gennem axonet ud til synapseterminalen. Her bliver vesiklerne fyldt med transmitterstoffer (af en bestemt neurotransmitter) og indgår i en pulje af fyldte vesikler. Efter tur vil de fyldte vesikler binde sig til specielle forankringssteder (docking sites), hvor vesiklens membran under påvirkning af Ca 2+ -ioner vil smelte sammen med den præsynaptiske membran, så transmitterstrofferne kan flyde ud i den synaptiske kløft. Denne process kaldes for en exocytose. Herefter vil en anden proces kaldt Figur 4: Figuren viser de forskellige trin i vesiklernes og neurotransmitternes cyklus: (1) Na + -afhængigt optag af transmitterstof gennem den præsynaptiske membran; (2) syntese af tranmitterstof; (3) aflevering af tom vesikel fra soma; (4) H + -ioner pumpes ind i vesiklen; (5) transmitterstof pumpes ind i vesiklen under udpumpning af H + -ioner; (6) de fyldte vesikler samles i en vesikelpulje; (7) vesikel binder sig til forankringsstedet; (8) aktionspotentialet depolariserer den præsynaptiske membran; (9) aktivering af Ca 2+ -kanalerne. Ca 2+ -ioner flyder ind gennem membranen; (10) Ca 2+ -ionerne udløser exocytose, så transmitterstoffet kan flyde ud i den synaptiske kløft; (11) lækage af transmitterstof ud i den synaptiske kløft; (12) ocytose lukke membranen; (13) vesiklen føres til osomet; (14) osomet gør vesiklen klar til nyt optag af transmitterstof. (Byrne og Roberts [5])

9 3.6 Receptorer ocytose igen lukke membranen og den nu tomme vesikel vil blive frigjort og st til et osom, der gør vesiklen klar til et nyt optag af transmitterstoffer. Efter at vesiklerne er blevet genbrugt et par gange, ses de tilbage til soma, hvor de nedbrydes af Goldi-apperatet og nye vesikler dannes. Transmitterstofferne gennemgår ligesom vesiklerne en cyklus, der langt hen ad vejen er den sammen. Begge cykluser er illustreret på figur 4. En trinvis gennemgang af forløbet kan læses i teksten til figuren. Når et aktionspotentiale bliver udst fra soma og rammer synapsen, er formålet således at aktivere Ca 2+ -kanalerne, så Ca 2+ -ioner kan flyde ind gennem membranen og starte exocytosen, der resulterer i frigivelsen af neurotransmitterne. 3.6 Receptorer I den synaptiske kløft kan neurotransmitterne komme i kontakt med den postsynaptiske del. Som det fremgår af figur 4, findes der på den postsynaptiske del små enheder, der aktiveres ved kontakt med en neurotransmitter. En sådan enhed kaldes en receptor. En receptors udformning og funktion afhænger af, hvilken neurotransmitter den bliver aktiveret af. Eftersom de mest almindelige neurotransmittere i hjernen er GABA og Glutemate for hhv. de inhibitoriske og de ekscitatioriske synapser, findes der GABA-receptorer og Glutemate-receptorer. Begge receptorer er ionotropiske receptorer, der ved aktivering vil tillade ioner at trænge gennem membranen. På figur 5 ses en ionotropisk receptor. Receptoren består af en pore, hvor ionerne kan passere igennem. Figur 5 viser også, hvor neurotransmitterne kan binde sig til receptoren. Figur 5: Vertikalt snit af en ionotropisk receptor. Det ses, hvordan poren bliver smallere, så det er muligt at holde poren lukket. Poren åbnes ved at en neurotransmitter, i dette tilfælde ACh, binder sig til et bestem bindingssted på receptoren. Når poren er åben kan ioner passere gennem membranen. (Byrne og Roberts [5]) Den mest almindelige GABA-receptor betegnes GABA A. GABA A -receptoren kan kun gennemtrænges af negativt ladede ioner. Ved aktivering vil der i særdeleshed ske en indstrømning af Cl -ioner i den postsynaptiske del, hvorved der

3.7 Indlæring og hukommelse 10 skabes Inhibitory Post-Synaptic Potentiation (IPSP). GABA A -receptoren har en åbningstid på 100-200 ms. Glutemate-receptorerne opdeles i to familier, NMDA receptorer og Non- NMDA receptorer, alt efter om de aktiveres at stoffet NMDA. NMDA kaldes for en argonist til Glutemate. En antagonist er derimod et stof, der binder sig til receptoren, men ikke giver receptoren lov til at udføre sin funktion. Agonister og antagonister er meget stærke værktøjer, når strukturen og funktionen af en receptor skal kortlægges. Non-NMDA receptoerne vil dog i stedet binde agonisten AMPA, så de to typer af receptorer betegnes også Glu N og Glu A. Både Glu N - og Glu A -receptorerne kan kun gennemtrænges af positive ioner. Ved aktivering vil der ske en indstrømning af Na + -ioner og en udstrømning af K + -ioner, så der skabes Excitatory Post-Synaptic Potentiation (EPSP). De to receptorer adskiller sig fra hinanden ved, at Glu A -receptoren kan aktiveres direkte ved binding af Glutamate, hvorimod Glu N -receptoren både kræver, at Glutemate bindes og at en magnesiumblokering fjernes. Blokeringen fjernes ved en tilstrækkelig depolarisering af den postsynaptiske del. Depolarisering kan ske ved åbning af Glu A -receptorerne, men det er ikke nok til at fjerne magnesiumblokeringen. Yderligere depolarisering kan ske ved initialisering af et aktionspotentiale i den postsynaptiske neuron. Aktionspotentialet vil nemlig ikke kun bevæge sig langs axonet, men også op langs dritterne dog med noget lavere styrke. Man kalder dette fænomen for en backspike. Den yderligere depolarisering fra en backspike vil være nok til at fjerne magnesiumblokeringen. Figur 6 giver et overblik over hvordan Glu N - og Glu A -receptorerne aktiveres. Efter at aktionspotentialet har lagt sig, vil magnesium-molekylet bevæge sig tilbage og igen blokere poren. Både Glu N - og Glu A -receptorerne er åbne i relativt kort tid. For Glu N -receptoren ca. 30-50 ms og for Glu A -receptoren ca. 10-15 ms. Specielt for Glu N -receptoren vil der under aktivering ske en indstrømning af Ca 2+ -ioner, hvilket gør den essentiel for hukommelsesmekanismen (se afsnit 3.7). Den elige effekt af receptorerne er, at der i dritterne skabes potentialeforskelle. Potentialeforskellene vil bevæge sig langs dritten mod soma, hvor de vil flyde sammen. Man siger at neuronet integrerer potentialeforskellene. Hvis det samlede potentiale overstiger tærskelværdien vil et aktionspotentiale blive initialiseret. Neuronets funktion kan derfor kort sammenfattes til Integrateand-fire. Jeg vil i afsnit 4.2 se på en neuronmodel med netop dette navn. 3.7 Indlæring og hukommelse Historisk set begyndte de biologiske undersøgelserne af indlæring og hukommelse tilbage i 1950 erne, hvor en patient H.M. blev behandlet for epilepsi ved fjernelse af den Mediale temporale lobe. Efter operationen kom H.M. til at lide af hukommelsestab. Efterfølge undersøgelser af H.M. foretaget af Milner og hans kollegaer ved McGill University i 1973 viste, at H.M. havde problemer med langtidshukommelsen. Han kunne ikke huske, hvad der var sket for få minutter eller timer siden. H.M. havde mistet evnen til at lære og huske ny information (anterograd hukommelse), men han kunne stadig huske ting, der var sket før operationen (retrograd hukommelse) og havde heller ikke mistet sin korttidshukommelse. Det vil sige evnen til at huske begivenheder i op til omkring et minut. I 1986 kunne Zola-Morgan et al. kaste yderligere lys over hvilke dele af

11 3.7 Indlæring og hukommelse Figur 6: Egenskab ved NMDA og Non-NMDA receptoren. Non-NMDA receptoren åbnes ved at glutemate binder sig til receptoren. NMDA receptoren kræver yderligere en depolarisering af membranen, så magnesium blokeringen fjernes. (Byrne og Roberts [5]) den Mediale temporale lobe, der var indblandet i den anterograde hukommelse. Patient R.B. havde lidt under blodmangel til hjernen, og havde som H.M. mistet den anterograde hukommelse dog i noget mildere omfang. Efter R.B.s død kunne Zola-Morgan efter undersøgelser konstatere, at R.B. kun havde læsioner i CA1- regionen af Hippocampus (se figur 7), som er en del af den Mediale temporale lobe. Zola-Morgans opdagelse stemte overens med undersøgelser foretaget af Bliss og Lømo i 1973, hvor de viste at højfrekvent stimulation (impulser med en frekvens over 100 Hz) af DG-regionen af Hippocampus fra en kanin resulterede i en langtidsforøgelse af EPSP. Neuronerne i dele af Hippocampus besidder en form for plasticitet, så det er muligt at lave langtidsændringer af EPSP. Ændringen af EPSP er den måde, hvorpå neuroner skaber hukommelse. En positiv ændring af EPSP kaldes LTP (Long-term Potentiation) og en negativ ændring af EPSP kaldes LTD (Longterm Depression). På grund af disse observationer har Hippocampus været den mest undersøgte del af hjernen, når det kom til undersøgelser af neuronernes plasticitet. Brown og hans kollegaer kom i 1986 et skridt videre i forståelsen af neuronernes plasticitet ved at undersøge neuronerne i CA1-regionen af Hippocampus. Figur 7 viser, hvorledes et stærkt (S) og et svagt stimulus (W) blev givet til en af neuronerne, hvorefter det kunne måles om det resulterede i LTP. Resultaterne viste, at højfrekvent stimulus af W inputtet ikke var nok til at fremkalde LTP. Kun ved højfrekvent stimulus af både W og S inputtet kunne LTP måles ved synapserne for W inputtet. Denne form for LTP kaldes for associative LTP mens Bliss og

3.7 Indlæring og hukommelse 12 Figur 7: Tværsnit af Hippocampus fra en rotte. I Browns undersøgelser gives et stærkt og et svagt input til et Pyramidal-neuron i CA1-regionen. De påførte elektroder måler LTP. (Byrne og Roberts [5]) Lømo opdagede den homosynaptiske LTP. Forklaringen på både Browns resultater og Bliss og Lømos resultater ligger i, at S inputtet sørger for en depolarisering af neuronet, hvilket er nødvig, for at der kan ske LTP ved de synapser, der er aktive på samme tidspunkt. Brown viste også, at LTP fremkom ved synapserne for W inputtet, hvis der skete en direkte depolatisering af neuronet ved hjælp af en voltage clamp. Neuronets membranpotentiale kunne da fastholdes på -80 mv og derefter stimuleres gennem W inputtet. Dette kaldes for Hebbian LTP efter den canadiske psykolog Donald Hebb der i 1949 fremsatte følge berømte postulat: When an axon of cell A is near enough to excite a cell B and repeatedly or persistently takes part in firing it, some growth process or metabolic change takes place in one or both cells such that A s efficiency, as one of the cells firing B, is increased. (Hebb, 1949, p.62) Kort sagt: Cells that fire together, wire together. Som tidligere nævnt vil der under et aktionspotentiale blive udst en backspike, der vil depolarisere den postsynaptiske del af neuronet, så samtidig stimulation af synapsen vil resultere i LTP. Dette klarlægger sammenhængen mellem Hebbs postulat og Hebbian LTP. På figur 8 er de forskellige måder at inducere LTP vist. Induktion af LTP og LTD afhænger af koncentrationen af Ca 2+ -ioner i den postsynaptiske del. På figur 9 er vist en postsynaptisk del af en synapse og de mulige kilder til forøgelse af Ca 2+ -koncentrationen. Figur 9 viser også, hvordan Ca 2+ -ionerne ved Ca 2+ -afhængige kinaser vil aktivere ensymer, der vil

13 3.8 Strukturen af cortex Figur 8: Forskellige måder hvorpå induktion af LTP og LTD kan foregå. Neuronet for enten et svagt stimulus (W) og/eller et stærkt stimulus (S), hvor de lodrette streger angiver frekvensen. Jo flere streger jo højere frekvens. Det postsynaptiske potentiale før stimulation er angivet med den solide linie og det postsynaptiske potentiale efter stimulation er angivet med den stiplede linie. (Byrne og Roberts [5]) påvirke AMPA-receptoren, så de øger affiniteten overfor Glutamate, samt holder sig åbne i længere tid. Ensymerne vil også kunne øge antallet af AMPAreceptorer. Man kalder denne process for en fosforylering af AMPA- receptorerne. Resultatet er en langtidsforøgelse af EPSP, altså LTP. Hvis koncentrationen af Ca 2+ -ioner ikke er stor nok til at inducere LTP, vil der ved fosfortaser ske en defosforylering af AMPA-receptorerne, hvilket vil have en negativ indvirkning på EPSP, altså LTD. På figur 8 er vist to former for LTD, homosynaptisk LTD og Cerebellar LTD. For begge tilfælde induceres LTD, fordi der kun sker en lavfrekvent stimulation (impulser med en frekvens på 1-5 Hz) af neuronet, hvorved Ca 2+ -koncentrationen ikke bliver stor nok til at inducere LTP, men kun stor nok til at inducere LTD. LTD fænomenet kan også formuleres ved: cells that are out of sync, weaken their link. 3.8 Strukturen af cortex Den generelle holdning er, at en nyskabt hukommelse i Hippocampus projekteres ud i den region af hjernen, der kaldes for Cortex (eller Cerebral cortex). Strukturen af cortex er interessant, da jeg ønsker at skabe en kunstig hukommelse med en struktur, der udnytter biologisk realistiske elementer. Cortex er også interessant, fordi det er den del i hjernen, der adskiller pattedyr, herunder mennesket, fra krybdyr. Det antages at cortex er ansvarlig for evolutionen af intelligens og

3.8 Strukturen af cortex 14 Figur 9: Den postsynaptiske del af en synapse og de begivenheder der leder til induktion af LTP og LTD. En høj koncentration af Ca 2+ -ioner vil medføre induktion af LTP gennem Ca 2+ -afhængige kinaser. En lav koncentration af Ca 2+ -ioner vil derimod medføre en induktion af LTD gennem fosfortaser. Ca 2+ -ioner kan optages gennem NMDA-, AMPA- og VDCCreceptorer (Voltage-Depent Ca 2+ channels). Ca 2+ -pumperne (P) ser Ca 2+ -ionerne ud af den postsynaptiske del. (Byrne og Roberts [5]) dermed hukommelsen. På figur 10 er vist placeringen af Hippocampus og cortex samt andre vitale dele af hjernen hos pattedyr. 3.8.1 Lav tæthed af forbindelser i cortex Hos mennesket er cortex en tynd udstrakt sammenkrøllet masse med et overflade areal på ca. 2600 cm 2 og med en tykkelse på 3-4 mm. Cortex indeholder ca. n = 28 10 9 neuroner og i størrelsesordenen 10 12 synapser (se Mountcastle [23]). Synapserne forbinder neuronerne i cortex med hinanden og med andre dele af hjernen. Udfra disse oplysninger kan det beregnes, at et neuron gennemsnitligt har k = 2 10 12 /28 10 9 71 forbindelser til andre neuroner i cortex. Tætheden af forbindelser (α) i cortex kan da beregnes til α = k/n = 71/28 10 9 = 2.54 10 9, hvilket er meget lavt, hvis det sammenholdes med at et fuldt forbundet netværk har α = 1. Cortex er opdelt i flere dele, hvor der vil være en højere intern tæthed af forbindelser (f.eks visual cortex), dog stadig meget lavere det er tilfældet i et fuldt forbundet netværk. Braitenberg og Schüz [4] undersøgte cortex på mus og fandt, at et neuron var forbundet til ca. 0.1% af de andre neuroner eller α = 0.001.

15 3.8 Strukturen af cortex Figur 10: Hjernen hos et pattedyr. Cerebral cortex udgører den største del af hjernen. Fremhævet er det limbiske system, der indeholder Thalamus, Hypothalamus, Amygdala, Basal Ganglia og Hippocampus. Det limbiske system er den følelsesstyrede del af hjernen. 3.8.2 Small-world struktur af cortex En anden observation omkring strukturen af cortex kommer fra Stephan et al. [25], der i en artikel samlede observationer fra studier af makak-abens cortex. Alle studierne er stryknin-neurograpfi studier. Stryknin-neurografi er en metode udviklet af Dusser de Barenne tilbage i 1924 til bestemmelse af strukturen i cortex. Det generelle princip i stryknin-neurografi er følge: Struknin indføres et sted i cortex, hvor det lokalt hæmmer de inhibitoriske receptorer. Den nedsatte inhibitation vil skabe en øget aktivitet i neuronerne. Effekten vil først kunne observeres lokalt, men herefter vil den også kunne måles i andre dele af cortex. På den måde kan det studeres hvilke dele af cortex, der aktiverer andre dele af cortex og strukturen af cortex kan kortlægges. Stephan et al. opdelte cortex efter et navnesystem (se figur 11) der var en kombination af to navnesystemer udviklet af hhv. Von Bonin og Bailey (1947) og Walker (1940). De indsamlede stryknin-neurografiske undersøgelse kunne herefter sammenfattes i en tabel (se figur 12). Figur 11: Opdeling af makak-abens cortex efter navnesystem udviklet af Bonin og Bailey (1947) og Walker (1940). Tegningen viser den ene side af makak-abens hjerne set fra (a) siden (lateral synsvinkel), (b) midt mellem de to hjernehalvdele (medial synsvinkel) og (c) bunden (ventral synsvinkel). (Stephan et. Al [25])

3.8 Strukturen af cortex 16 Figur 12: Tabel over sammenhængen i makak-abens cortex. De stimulerede områder er opskrevet i rækkerne og de opserverede områder i kolonerne. Tallene angiver med hvilken styrke det stimulerede område har effekt på det opserverede område: 0, ingen effekt; 1, svag effekt; 2, moderat effekt; 3, stærk effekt; X, ukt effekt; blankt felt, effekt ikke undersøgt. (Stephan et. Al [25]) Stephan et al. ønskede at vise, at cortex kunne karakteriseres som være et Small-world netværk. Small-world netværk blev introduceret af Watts og Strogatz [27] i midten af 90 erne, hvor de viste at samarbejdetsnetværket mellem film skuespillere, el-nettet i vest USA og det neurale netværk hos ormen Ceanorhabditis elegans alle er Small-world netværk. Small-world netværk har taget navn efter Small-world fænomenet, også kt som seks grader af separation. Fænomenet siger, at alle mennesker i verden ker hinanden gennem en kæde på kun seks mennesker, hvilket er ret forbløffe. Watts og Strogatz viste også, at et Small-world netværk kan karakteriseres ved to matematiske værdier: L (Den karakteristiske vejlængde mellem to neuroner) og C (Klyngekoefficienten for netværket). Definitionerne for L og C findes i afsnit 4.7.1. Et netværk kaldes for Small-world hvis, L L random men C C random (4) hvor L random og C random er hhv. L og C for et netværk med samme antal knuder og samme antal kanter, men hvor kanterne er tilfældigt valgt. Stephan et al. beregnede L og C for struktur af cortex hos makak-aben og fandt at L = 2.1730 og C = 0.3830. Resultatet holdt de herefter op imod L random = 2.1500 og C random = 0.1557 fundet ved gennemsnittet af 20 tilfældige netværk med samme størrelse og tæthed. Heraf ses det, at definition er opfyldt, hvorved strukturen af cortex hos makak-aben kan karakteriseres som Smallworld.

17 3.8 Strukturen af cortex 3.8.3 Modul-opbygning af cortex Vernon B. Mountcastle [23] arbejdede helt tilbage i 1950 erne med den idé, at cortex har en modul-opbygning. I 1978 beskrev han i en artikel, at den basale enhed i cortex er minikolonnen, en tynd kæde af neuroner, der udbreder sig vertikalt gennem cortex (se figur 13). En minikolonne indeholder ca. 80-100 neuroner undtagen i den visuale del af cortex, hvor antallet er ca. 2.5 gange højere. Mountcastle fandt ydermere frem til, at minikolonnerne var organiseret i samlinger, som Mountcastle kaldte for moduler. Minikolonnerne er forbundne i moduler vha. kort-række horisontale forbindelser, mens der mellem modulerne kan forekomme langt-række horisontale forbindelser. En minikolonne har en diameter på 56 ± 4µm, mens størrelsen på et modul kan variere fra 300 til 600 µm. Der er altså stor variation på, hvor mange minikolonner et modul indeholder, alt efter hvilken del af cortex man betragter. De observationer omkring strukturen af cortex, der er blevet gennemgået i dette afsnit, vil jeg udnytte i afsnit 4.7 til opbygning af strukturen i Hopfield netværket. Figur 13: Udsnit af visual cortex hos makak-aben, hvor 3 minikolonner er forbundet i et modul. Romertallene angiver forskellig lag af cortex. (Mountcastle [23])

4 Modellering 18 4 Modellering I dette afsnit vil jeg undersøge, hvordan et neuron kan modelleres. Jeg vil først se på Hudgkin-Huxleys neuronmodel, hvor den primære reference er Byrne og Roberts [5]. Herefter vil jeg se på Intergrate-and-fire neuronmodellen, som den bliver fremstillet af Dayan og Abbott [7] og elig McCulloch-Pitts neuronmodellen hentet fra Churchland og Sejnowski [6]. Jeg vil i dette afsnit også beskrive modellering af synapser, den neurale kode og modellering af hebbiansk indlæring, hvor Dayan og Abbott [7] er brugt som reference. Den sidste del af afsnittet omhandler modellering af strukturen af cortex, hvor referencerne findes i afsnittet. 4.1 Hudgkin og Huxleys neuronmodel Hudgkin og Huxleys arbejde medførte også udviklingen af en matematisk model, der meget nøjagtigt forudsiger aktionspotentialets udsee. Indenfor biologien er teorier, der kan forudsige begivenheder meget sjældne. Hudgkin og Huxleys arbejde er en af de mest succesfulde kombinationer af eksperimentiel og matematisk arbejde. Hudgkin og Huxley blev i 1963 tildelt nobelprisen i fysiologi og medicin for dette arbejde. Figur 14: Det ækvivalente elektriske kredsløb af et udsnit af neurons membran. (Byrne og Roberts [5]) Udgangspunktet i deres model er at lave et elektriske kredsløb, der er ækvivalent med et udsnit af neurons membran (se fig 14). Kredsløbet består af en kondensator (C m ) i parallel med tre resistorer (to variable resistore og en konstant), der hver er serieforbundet med et batteri. Kondensatoren repræsenterer den isolere effekt, som neuronets membran har. C m kaldes for membranens kapacitet. Resistorerne repræsenterer den spændings- og tidsafhængige ledeevne af Na + -kanalerne (g Na ) og K + -kanalerne (g K ) samt ledeevnen af den konstante lækage af ioner gennem ikke spændingsafhængige ionkanaler (g L ). Batterierne repræsenterer Nerst-hvilepotentialerne (E Na, E K og E l ). I det ækvivalente elektriske kredsløb vil strømmen, der passerer membranen (I m ) have to komponenter. Den ene vil være associeret med ændringen af kapaciteten af membranen (I Cm ), og den anden vil være associeret med bevægelsen af ioner

19 4.1 Hudgkin og Huxleys neuronmodel over membranen (I ion ). Hvilket også kan skrives som, I m = I Cm + I ion = C m dv m dt hvor ionstrømmen er separeret i følge komponenter, + I ion (5) I ion = I Na + I K + I l (6) Med denne opsætning som udgangspunkt benyttede Hudgkin og Huxley Voltageclamp teknikken og fandt, at under normal omstændigheder vil ionstrømmen i åbne Na + og K + -kanaler følge Ohms lov (dvs. V = I R hvor G = 1/R med R lig resistansen og G lig ledeevnen eller permabiliteten af ionkanalen). Derved er ionstrømmen for hver enkelt ion type (I ion ) proportional med permabiliteten (g ion ) multipliceret med den drive kraft dvs. forskellen mellem membranpotentialet (V m ) og Nernst-hvilepotentialet (E ion ) for den givne iontype. Da permabiliteten er spændings- og tidsafhængig giver dette, I Na, I K og I l kan nu skrives som I ion (V m, t) = g ion (V m, t)(v m E ion ) (7) I Na (V m, t) = g Na (V m, t)(v m E Na ), (8) I K (V m, t) = g K (V m, t)(v m E K ), (9) I m kan da opskrives på følge ligningsform, I l = g l (V m E l ). (10) (11) I m = C m dv m dt +g Na(V m, t)(v m E Na )+g K (V m, t)(v m E K )+g l (V m E l ) (12) For at have den fulde model for aktionspotentialet manglede Hudgkin og Huxley nu blot at bestemme g Na (V m, t) og g K (V m, t). Første skridt i denne proces var at se på, hvordan Na + og K + -kanalerne opfører sig. Som beskrevet i afsnit 3.3 viste det sig, at Na + -kanalerne havde to processer: aktiveringdeaktivering og inaktivering-deinaktivering, mens K + -kanalerne kun havde en process: aktivering-deaktivering. Hudgkin og Huxley indførte derfor en portmodel for at beskrive funktionen af kanalerne. Modellen er illustreret på figur 15. En kanal tænktes opbygget med en eller flere porte. En port kan kun være i en af to tilstande: åben eller lukket. Når alle portene er åbne kan ioner passere gennem kanalen. Status af en port var tænkt kontrolleret af en eller flere ladede portpartikler. Portpartiklerne bliver påvirket af membranpotentialet og skifter tilstand alt efter dette. En port er således kun åben, hvis alle partiklerne associeret med porten er i den tilstand, der tillader porten at være åben. Som det ses af figur 15, er der for K + -kanalen kun en port, da kanalen kun kan være i to tilstande, mens Na + -kanalen har hele fire tilstande. Ved indførelsen af portmodellen kan g Na og g K opskrives som, g Na (V m, t) = y Na (V m, t)g Na (13) g K (V m, t) = y K (V m, t)g K (14)

4.1 Hudgkin og Huxleys neuronmodel 20 Figur 15: Skematisk oversigt af Hudgkin og Huxleys portmodel. K + -kanalerne er reguleret af en enkelt port. A1 viser tilstanden, når K + -kanalen er deaktiveret og A2 viser tilstanden, når K + -kanalen er aktiveret. Na + -kanalerne er derimod reguleret af to porte. B1 viser tilstanden, når Na + -kanalen er deaktiveret, B2 viser tilstanden, når Na + -kanalen er aktiveret og B3 viser tilstanden, når Na + -kanalen er inaktiveret. Der mangler en enkelt figur, der viser tilstanden, når Na + -kanalen er deinaktiveret. Ved deinaktivering vil begge porte være lukket. (Byrne og Roberts [5]) hvor g Na og g K er den maksimale ledeevne for henholdsvis Na + og K + -kanalerne. y Na og y K er funktioner af en eller flere portvariable (y i ), der beskriver sandsynligheden for at finde en portpartikel i tilstanden, hvor porten er åben. En portvariabel kan variere mellem 0 og 1, hvorved y Na og y K også vil beskrive hvor stor en sandsynlighed, der er for at kanalen er åben, hvilket er det samme som procentdelen af henholdsvis Na + og K + -kanalerne, der er åbne. Opgaven for Hudgkin og Huxley bestod nu i at beskrive, hvordan en enkelt portpartikel opfører sig under ændring af membranpotentialet. En portvariabel (y) kan beskrives ved følge model, (1 y) α y (V m ) β y (V m ) y (15) hvor α y (V m ) og β y (V m ) er spændingsafhængige hastigheder. α y (V m ) beskriver hastigheden, hvormed en portpartikel bevæger sig fra tilstanden, hvor porten er lukket, til tilstanden hvor porten er åben. β y (V m ) beskriver hastigheden, hvormed en portpartikel bevæger sig fra tilstanden, hvor porten er åben, til tilstanden hvor porten er lukket. Hvis en port kun er afhængig af en enkelt portpartikel vil sandsynligheden for at finde en port åben i et kortere tidsinterval være proportional med sandsynligheden for at finde porten lukket multipliceret med åbningshastigheden, dvs. α y (V m )(1 y). Tillige er sandsynligheden for at finde porten lukket proportional med sandsynligheden for at finde porten åben multipliceret med lukningshastigheden, dvs. β y (V m )y. Tages forskellen mellem

21 4.1 Hudgkin og Huxleys neuronmodel disse to led fås ændringen af sandsynligheden for at finde porten åben, dy dt = α y(v m )(1 y) β y (V m )y (16) Da α y (V m ) og β y (V m ) ikke er særlig håndgribelige størrelser laves en omskrivning af differentialligningen. Hvis membranpotentialet bliver fastholdt, som det er tilfældet ved brug af Voltage-clamp teknikken, vil y på et tidspunkt nå en stabil tilstand, hvor dy/dt = 0 for t. Den stabile tilstand betegnes y (V m ) og kan findes udtrykt ved α y (V m ) og β y (V m ), hvis højresiden i differentialligningen sættes lig 0. Resultatet bliver, y (v m ) = α y (V m ) α y (V m ) + β y (V m ) (17) Differentialligningen kan nu omskrives til, dy dt = y (V m ) y τ y (V m ) (18) hvor τ y (V m ) er en tidskonstant givet ved, τ y (V m ) = 1 α y (V m ) β y (V m ) (19) Med denne omskrivning beskriver differentialligningen, at for et fastholdt membranpotentiale (V m ) vil y tilnærme sig den stabile tilstand y (V m ) eksponentielt med tidskonstanten τ y (V m ). Løsningen til differentialligningen findes let, da der blot er tale om en første ordens differentialligning. Den generelle løsning til en første ordens differentialligning udtrykt som, dy = ay + b (20) dt er givet ved, y(t) = Ce at b a hvor C koefficienten findes ved at indføre en startværdi y 0 for y, (21) y 0 = y(0) = C b a C = y 0 + b a (22) Løsningsmodellen kan direkte overføres til løsning af differentialligning 18. Løsningen bliver, y(v m, t) = y (V m ) (y (V m ) y 0 )e t τy (Vm) (23) Denne løsning beskriver hvordan sandsynligheden for, at en enkelt portpartikel er i tilstanden, hvor porten er åben. Hvis porten er kontrolleret af mere en portpartikel, vil den samlede sandsynlighed, for at porten er åben, være y(t) P, hvor P er antallet af uafhængige og identiske portpartikler. Portmodellen postulerer at g Na er reguleret af to typer af portpartikler. Hudgkin og Huxley benævnte portpartiklerne, der regulerer aktivering af Na + - kanalen, med et m og portpartiklerne, der regulerer inaktiviteten, med et h.

4.1 Hudgkin og Huxleys neuronmodel 22 Tillige for K + -kanalen blev portpartiklerne, der regulerer aktiviteten af K + - kanalen, betegnet med et n. Permabiliteterne g Na og g K kan på baggrund af dette og ligningerne 13 og 14 udtrykkes som, g Na (V m, t) = m ( V m, t) P1 h(v m, t) P2 g Na (24) g K (V m, t) = n(v m, t) Q1 g K (25) hvor P 1, P 2 og Q 1 er antallene af uafhængige identiske portpartikler. Antallet af portpartikler fandt Hudgkin og Huxley ved at tilpasse funktioner af typen givet i ligning 23, til data fundet ved brug af Voltage-clamp teknikken. Figur 16: Hudgkin og Huxleys estimering af antallet af portpartikler, der regulerer Na + - og K + -kanalerne. De fyldte cirkler repræsenterer data, som Hudgkin og Huxley selv har fundet ved eksperimenter. (Byrne og Roberts [5]) Det bedste resultat opnåede de ved at benytte ligningerne, g Na (V m, t) = A(V m )(1 e t τm(vm) ) 3 e g K (V m, t) = (B(V m ) C(V m )e t τn(vm) ) 4 t τ h (Vm) (26) (27) hvor A, B og C er spændingsafhængige led. Figur 16 viser, hvordan ligningerne 26 og 27 giver det bedste resultatet i forhold til datapunkterne. Hudgkin og Huxley kunne udfra ligningerne 26 og 27 konkludere, at tre portpartikler styrer aktiveringen af Na + -kanalerne og én portpartikel styrer inaktiveringen, mens der for K + -kanalen var fire portpartikler til at styre aktiveringen. g Na og g K kan da skrives som, hvor g Na (V m, t) = m(v m, t) 3 h(v m, t)g Na (28) g K (V m, t) = n(v m, t) 4 g K (29) dm dt dh dt dn dt = α m (V m )(1 m) β m (V m )m (30) = α h (V m )(1 h) β h (V m )h (31) = α n (V m )(1 n) β n (V m )n (32)

23 4.1 Hudgkin og Huxleys neuronmodel eller ækvivalent til dette dm dt = m (V m ) m, τ m (V m ) dh dt = h (V m ) h, τ h (V m ) dn dt = n (V m ) n τ n (V m ) (33) Udfra de tilpassede funktioner 26 og 27 kunne Hudgkin og Huxley finde empiriske forskrifter for tidskonstanterne (τ m (V m ),τ h (V m ) og τ n (V m )) og stabiltilstandene (m (V m ),h (V h ) og n (V n )) som funktion af membranpotentialet (se figur 17). Udfra disse kunne Hudgkin og Huxley ved brug af ligningerne 30, 31 og 32 beregne åbnings- og lukningshastighederne for portpartiklerne. Resultatet blev ligningerne, α m (V m ) = 0.1(V rest V m + 25), e V rest V m+25 10 1 β m (V m ) = 4e V rest V m 18, (34) 1 α h (V m ) = 0.07e V rest V m 20, β h (V m ) = e V rest V m+30 10 + 1, (35) α n (V m ) = 0.1(V rest V m + 10), β e V rest V m+10 n (V m ) = 0.125e V rest V m 80. (36) 10 1 hvor V rest er hvilepotentialet for neuronet. Figur 17: Hudgkin og Huxleys estimering af tidskonstanterne τ m (V m ),τ h (V m ) og τ n (V m ) og stabil-tilstandene m (V m),h (V h ) og n (V n). De fyldte cirkler repræsenterer data, som Hudgkin og Huxley selv har fundet ved eksperimenter. (Byrne og Roberts [5]) Hudgkin-Huxley modellen kan nu fuldes ved at indsætte ligningerne 28 og 29 i ligning 12, hvilket giver, I m = C m dv m dt + m 3 hg Na (V m E Na ) + n 4 g K (V m E K ) + g l (V m E l ) (37) hvor Hudgkin og Huxley udfra analyse af de eksperimentielle data fandt følge værdier for konstanterne, E Na = V rest + 115mV, g Na = 120mS/cm 2, E K = V rest 12mV, g K = 36mS/cm 2, E l = V rest + 10.613mV, g l = 0.3mS/cm 2, C m = 1µF/cm 2. Det er almindeligt ved brug af Hudkin-Huxley modellen, at man definerer udselsen af en spike til at foregå når membranpotentialet når 0 mv. På figur 18

4.1 Hudgkin og Huxleys neuronmodel 24 er Hudkin-Huxley modellen brugt til at simulere membranpotentialet for et neuron, hvor den inducerede elektriske strøm (I m ) er sat til konstant at være hhv. 0.6 na, 0.7 na og 3.0 na. Under grafen for membranpotentialet er vist hvordan m (rød), h (blå) og n (grøn) tager sig ud under simuleringerne. Som det ses af simuleringerne, findes der en grænse mellem I m = 0.6nA og I m = 0.7nA, hvor et enkelt aktionspotentiale bliver afløst af en strøm af aktionspotentialer. Det ses også, at jo mere I m øges jo højere bliver frekvensen af aktionspotentialerne. Et bedre overblik fås, ved at afbillede fyringsfrekvensen som funktion af I m. Det ses (figur 19) at kurven er diskontinuert i I m = 6.2, hvor der sker et spring i fyringsfrekvensen fra ca. 0 til ca. 55 Hz. Herefter stiger kurven lineært. 50 V (mv) 0 50 0 50 0 50 100 0 20 40 60 80 100 tid (ms) 1 1 0 20 40 60 80 100 1 0 20 40 60 80 100 0.8 0.8 0.8 0.6 0.6 0.6 0.4 0.4 0.4 0.2 0.2 0.2 0 0 20 40 60 80 100 tid (ms) 0 0 20 40 60 80 100 0 0 20 40 60 80 100 Figur 18: Tre simulationer af et neurons membranpotentiale ved brug af Hudkin-Huxley modellen. Øverste tre figurer viser membranpotentialet som funktion af tiden ved I m sat til hhv. 0.6 na, 0.7 na og 3.0 na. De nederste tre figurer viser m (rød) h (blå) og n (grøn) som funktion af tiden. For alle tre simulationer er membranpotentialet initialiseret til -65 mv og m, h og n til hhv. 0.0526, 0.5940 og 0.3186. 90 80 70 60 fyringsrate (Hz) 50 40 30 20 10 0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2 I (na) m Figur 19: Fyringsfrekvensen som funktion af den inducerede elektriske strøm (I m ) for Hudkin-Huxley modellen.

25 4.2 Integrate-and-fire neuronmodellen 4.2 Integrate-and-fire neuronmodellen Hudkin-Huxley modellen er den model, der mest præcist beskriver membranpotentialet for et neuron. Modellen har dog det problem, at den kræver mange udregninger. Izhikevich [16] har udregnet, at Hudkin-Huxley modellen kræver 1200 FLOPS (Floating point operations pr. second) for at simulere 1 ms. Jeg vil derfor se på Integrate-and-fire modellen, som kun kræver 5 FLOPS for at simulere 1 ms. Integrate-and-fire modellen blev allerede introduceret i 1907 af Lapicque (1866-1952, professor i psykologi ved Sorbonne universitetet i Paris), men har nøje sammenhæng med Hudkin-Huxley modellen. Integrate-and-fire modellen er faktisk blot Hudkin-Huxley modellen, hvor leddene, der beskriver ledeevnen af Na + og K + -kanalerne, er fjernet, så det kun er den konstante lækage af ioner tilbage, dv m I m = C m + g l (V m E l ) (38) dt Modellen bliver derfor også betegnet som den leaky Integrate-and-fire model. Integrate-and-fire modellen bliver traditionelt omskrevet til, τ m dv m dt = E l V m + R m I m (39) hvor R m = 1/g l kaldes for membranens resistans og er den inverse til membranens ledeevne, g l. R m varierer mellem 10 til 100MΩ alt efter typen af neuronet. τ m = C m R m er membranens tidskonstant og beskriver med hvilken hastighed, membranpotentialet ændres. τ m varierer mellem 10 til 100 ms (se Dayan og Abbott [7] s. 158). For Integrate-and-fire modellen er E l det samme som hvilepotentialet for neuronet. Integrate-and-fire modellen har dog den bagside, at den giver en dårligere modellering af membranpotentialet, det er tilfældet med Hudkin-Huxley modellen. Integrate-and-fire modellen kræver yderligere, at der indføres en tærskelværdi for aktionspotentialet V th typisk mellem -45 og -55 mv, som det er beskrevet i afsnit 3.3. Hvis membranpotentialet starter ved hvilepotentialet V rest = E l, vil potentialet på et tidspunkt nå tærskelværdien og der initialiseres et aktionspotentiale og en spike udses. Herefter sættes potentialet til en værdi V reset, der er mindre V rest for at modellere afterhyperpolariseringen. Integrate-and-fire modellen kræver også, at der indføres en værdi τ ref til modellering af neuronets stabiliseringsperiode (refractoriness). Efter udselse af en spike er neuronet i stabiliseringsperioden uimodtagelig for nyt stimulus. Ved at holde I m konstant til hhv. 0.1, 0.3 og 0.5 na er tre modelleringer af membranpotentialet vist på figur 20. I forhold til Hudkin-Huxley modellen ses det af figurerne, at I m ikke skal være lige så høj, for at en strøm af aktionspotentialer initialiseres. Til forskel fra Hudgkin-Huxley modellen er det for Integrate-and-fire modellen muligt at give et udtryk for fyringsfrekvensen som funktion af den inducerede elektriske strøm, I m. Første skridt er at løse den første ordens differentiallingen 39 ved brug af løsningsmetoden beskrevet ved ligning 21. Løsningen er, V (t) = E l + R m I m + (V (0) E l R m I m )e t/τ m (40) V (0) kan substitueres med V reset og E l med V rest, hvorved løsningen bliver, V (t) = V rest + R m I m + (V reset V rest R m I m )e t/τ m (41)

4.2 Integrate-and-fire neuronmodellen 26 V (mv) 50 55 60 65 50 55 60 65 50 55 60 65 70 70 70 0 50 100 0 50 100 0 50 100 tid (ms) Figur 20: Tre simulationer af et neurons membranpotentiale ved brug af Integrate-and-fire modellen. I m sat til hhv. 0.1 na, 0.3 na og 0.5 na. For alle tre simulationer er følge parametre brugt: V rest = 65, V th = 50mV, V reset = 70mV, τ ref = 3ms, R m = 90MΩ og τ m = 30ms. Ved midlertidigt at se bort fra neuronets stabiliseringsperiode (τ ref ), vil det næste aktionspotentiale findes sted til tiden t spike hvor, V (t spike ) = V th = V rest + R m I m + (V reset V rest R m I m )e t spike/τ m (42) Ved at løse ligningen med hensyn til t spike kan tiden mellem to aktionspotentialer udtrykkes som, t spike = τ m ln( R mi m + V rest V reset R m I m + V rest V th ) (43) hvis R m I m > V th V rest, ellers er t spike = 0. Udtrykket kan forenkles ved at antage, at ln(1 + z) z, når z er lille. Derved kan t spike udtrykkes som, t spike = τ m(v th V reset ) V rest V th + R m I m (44) hvis R m I m > V th V rest, ellers er t spike = 0. Fyringsfrekvensen r spike findes som den inverse til t spike. r spike = 1 t spike (45) Skal neuronets stabiliseringsperiode (τ ref ) tages med i beregningen, bliver r spike = 1 t spike + τ ref (46) Der er altså en lineær sammenhæng mellem fyringfrekvensen og I m. Udtrykket for fyringsfrekvensen kan benyttes til at bestemme biologiske realistiske værdier for R m,τ m og τ ref. Figur 21 viser målinger foretaget af Ahmed et al. [1] af fyringsfrekvensen for et Pyramidal-neuron i den primære visuale cortex hos en kat. Punkterne viser fyringsfrekvensen beregnet udfra de to første spikes, hvor neuronets stabiliseringsperiode nu ikke har indvirkning. Cirklerne viser fyringsraten over en længere periode, hvor indvirkningen af stabiliseringsperioden kan måles ved en falde frekvens. En approximation til punkterne er vist med den solide linie. Funktion er givet ved ligning 46 med R m = 90MΩ,τ m = 30ms, V rest = V reset = 65mV,V th = 50mV og τ ref = 0ms. Indsættes i stedet τ ref = 3ms, opnås en approximation til cirklerne vist med den stiplede linie.

27 4.3 McCulloch-Pitts neuronmodel 400 350 300 250 r spike (Hz) 200 150 100 50 0 0 0.5 1 1.5 2 I m (na) Figur 21: Fyringsfrekvensen som funktion af den inducerede elektriske strøm (I m ) for Integrate-and-fire neuronet. Punkterne og cirklerne er målinger foretaget af Ahmed et al. [1], og linierne markerer fyringsfrekvsen som funktion af I m. Der er altså en væsentlig forskel i frekvensfunktionen for Hodkin-Huxley neuronet (se figur 19) og Integrate-and-fire neuronet (se figur 21). Integrateand-fire neuronet har en lineær frekvensfunktion, mens Hodkin-Huxley neuronet har en diskontinuert frekvensfunktion. Man beskriver derfor Hudgkin-Huxley neuronet som et type I neuron og Integrate-and-fire neuronet som et type II neuron. 4.3 McCulloch-Pitts neuronmodel En nu simplere neuronmodel blev konstrueret af McCulloch og Pitts i 1943. Modellen er ikke særlig biologisk realistisk, men er til gengæld så simpel, at den kræver minimal regnekraft. Den er den mest benyttede neuronmodel, eftersom dens simple matematiske form gør det nemmere at forstå dynamikken i store neurale net. ω i1 ω i2 ω i3 Σ g(x) µ i Figur 22: McCulloch og Pitts neuronmodel. Figur 22 viser hvorledes neuronmodellen er opbygget. En neuron i har en tilstand s i. Tilstanden for neuronet opdateres ved, at tilstandene s j af de neuroner, der leverer et input til det i te neuron, vægtes med ω ij og summeres. Summen bliver herefter sat i forhold til tærskelværdien µ, og aktiveringsfunktionen g bestemmer den nye tilstand for neuronet. Matematisk kan dette formuleres

4.4 Modellering af synapser 28 som, s i (t + 1) = g( j ω ij s j (t) µ i ) (47) Forskellige neuronmodeller fremkommer alt efter hvilken aktiveringsfunktion, der vælges. De tre mest benyttede funktioner er step-, sign-, og sigmoidfunktionerne illustreret i figur 23. Stepfunktionen vil have den effekt, at hvis summen overstiger tærskelværdien, vil neuronet få tilstanden 1 ellers tilstanden 0. Den biologiske motivation bag stepfunktionen er, at 1 repræsenterer, at neuronet fyrer, mens 0 repræsenterer, at der ingen fyring foregår. For signfunktionen er 0 udskiftet med 1, hvilket giver nogle matematiske fordele. Sigmoidfunktionen benyttes, når man ønsker en stokastisk neuronmodel. Tilstanden af neuronet vil da fortælle, med hvilken sandsynlighed neuronet skal fyre. step(x) = 1 x 0 0 x < 0 sign(x) = 1 x 0 1 x < 0 sigmoid(x) = 1 1 + e x (48) 1 1 1 0 0 0 1 1 0 1 1 1 0 1 1 5 0 5 Figur 23: Tre forskellige aktiveringsfunktioner. 4.4 Modellering af synapser Som beskrevet i afsnit 3.5, vil der efter udselse af et aktionspotentiale ske en frigivelse af transmitterstoffer fra den præsynaptiske del af synapsen. Transmitterstofferne vil aktivere de postsynaptiske receptorer, hvilket vil skabe en ændring i det postsynaptiske membranpotentialet alt efter hvilken type af receptor, der er blevet aktiveret. Til modellering af receptorerne benyttes samme metode, som blev benyttet i Hudgkin-Huxley modellen til modellering af de spændings-afhængige ionkanaler. Sandsynligheden for at en receptor er åben (P s ) afhænger af følge differentialligning: dp s dt = α s (1 P s ) β s P s (49) Hvor β s er lukningshastigheden for receptoren, som normalt bliver sat til en konstant værdi og α s er åbningshastigheden for receptoren, hvilken afhænger af koncentrationen af transmitterstoffer i synaptiske kløft. Når et aktionspotentiale således forsager en frigivelse af transmitterstoffer i den synaptiske kløft, vil α s

29 4.4 Modellering af synapser hurtigt vokse og øge P s. Transmitterstofferne vil herefter lige så hurtigt blive vasket ud af den synaptiske kløft, hvilket vil sætte α s tilbage til 0, og P s vil aftage eksponentielt med tidskonstanten 1/β s. En simpel model for frigivelsen af transmitterstoffer kan laves ved at antage, at koncentrationen af transmitterstoffer i den synaptiske kløft øges ekstremt hurtigt efter udselse af et aktionspotentiale, forbliver høj over en periode på T og herefter hurtigt falder til 0. Med andre ord vil koncentrationen af transmitterstoffer blive modelleret som en kvadratisk impuls. Under den høje koncentration af transmitterstoffer vil α s antage en konstant værdi meget større β s, mens α s = 0, når koncentrationen er lav. Hvis aktionspotentialet sker til tiden t = 0 og P s (0) = 0, kan ligning 49 integreres ved at se bort fra leddet, hvor β s indgår, da α s β s. Resultatet bliver, at P s (t) = 1 e α st for 0 t T (50) Til tiden t = T når P s den maksimale værdi. Herefter sættes α s = 0 og P s aftager eksponentielt ved, P s (t) = P s (T )e β s(t T ) for t T (51) Alain Destexhe et al. [8] benyttede denne model til at beskrive målinger foretaget af Xiang et al. [28], hvor den gennemsnitlige EPSC (Excitatory Post- Synaptic Current) blev målt på en Pyramidal-neuron. Pyramidal-neuronet var lokaliseret i CA3-regionen af Hippocampus og fik input fra mossy fibers, som aktiverede Glu A -receptorerne på neuronet (se figur 7). Ved at tilpasse modellen med parametrene α s = 0.93ms 1, β s = 0.19ms 1 og T = 1 opnåede Destexhe en rimelig nøjagtig modellering, som det fremgår af figur 24. Ps/Pmax 1 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0 0 5 10 15 20 25 30 time (ms) Figur 24: Den normerede sandsynligheden for at en receptor er åben (P s /P max ) som funktion af tiden. Den sorte kurve er målinger foretaget af Xiang et al. [28] og den røde kurve approksimationen foretaget af Destexhe et al. En anden måde at modellere den synapske ledeevne er ved at udtrykke P s som forskellen mellem to eksponentialfunktioner, hvorved det kun er nødvig med en ligning i stedet for to. For et isoleret præsynaptisk aktionspotentiale, der forekommer til tiden t = 0, vil den synaptiske ledeevne kunne skrives som, P s (t) = K (e t/τ 1 e t/τ 2 ) (52)

4.4 Modellering af synapser 30 hvor τ 1 > τ 2 og K er en normaliseringsfaktor, der sørger for, at den maksimale værdi af P s bliver lig 1. K findes ved først at differentiere ligning 52 og sætte resultatet lig nul. Tidspunktet for den maksimale værdi af P s kan da findes som, t max = ln(τ 1/τ 2 )τ 1 τ 2 τ 1 τ 2 = τ rise ln(τ 1 /τ 2 ) (53) hvor τ rise = τ 1 τ 2 /(τ 1 τ 2 ) bestemmer, hvor lang tid P s skal være om at nå det maksimale niveau, mens τ 1 fastsætter, hvor lang tid P s skal være om at aftage. Ved efterfølge at sætte P s (t max ) = 1 kan K bestemmes til, K = (( τ 2 τ 1 ) τrise/τ1 ( τ 2 τ 1 ) τrise/τ2 ) 1 (54) Hvis τ 1 = 5.6ms og τ 2 = 0.3ms giver det, at τ rise = 0.3 og en graf som vist på figur 25, hvor de empiriske målinger igen er vist som reference. Resultatet er ikke lige så godt som med den første model, men modellen kan sagtens benyttes. Ps/Pmax 1 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0 0 5 10 15 20 25 30 time (ms) Figur 25: Den normerede sandsynligheden for at en receptor er åben (P s /P max ) som funktion af tiden. Den sorte kurve er målinger foretaget af Xiang et al. [28] og den røde kurve approksimationen ved brug af lingning 25 med parameterne τ 1 = 5.6ms og τ 2 = 0.3ms, hvilket giver τ rise = 0.3. Modelleringen kan forenkles yderligere ved at lade τ 1 τ 2, så model kun afhænger af parameteren τ s, lim P s (t) = t e 1 t/τ s (55) τ 1 τ 2 τ s Denne funktion kaldes for α-funktionen. For t = τ s, vil α-funktionen nå den maksimale værdi på 1 og derefter aftage med τ s. En α-funktionen, med τ s = 2.2ms, er vist på figur 26 sammen med de empiriske målinger. Som det ses, afviger α-funktioner mere de to andre modeller, men den er til gengæld enkel. De ekscitatoriske synapser kan således modelleres med en α-funktion, hvor τ s 2ms. De inhibitoriske synapser kan også modelleres vha. en α-funktion. Det kræver dog, at åbningstiden for receptorerne gøres længere. Sættes τ s = 12ms giver det en åbningstid på ca. 100ms, hvilken stemmer overens med åbningstiden for GABA A -receptoren (se afsnit 3.6).

31 4.5 Den neurale kode Ps/Pmax 1 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0 0 5 10 15 20 25 30 time (ms) Figur 26: Den normerede sandsynligheden for at en receptor er åben (P s /P max ) som funktion af tiden. Den sorte kurve er målinger foretaget af Xiang et al. [28] og den røde kurve approksimationen ved brug af en α-funktion med parameteren τ s = 2.2ms. 4.5 Den neurale kode Neuronerne udser information i form af spikes. Hvordan udselsen af spikes skal tolkes kaldes for den neurale kode. Det er efterhånden accepteret, at for at forstå den neurale kode, er det nødvigt at se på en følge af spikes og ikke kun på enkelte spikes (se Dayan og Abbott [7]). Denne måde at se på den neurale kode kaldes for temporal kodning, idet tiden tages med som en faktor. Denne form for kodning opleves i dagligdagen, når mennesker taler. En sætning er en sammensat række af lyde, hvor tidspunktet for de enkelte lyde spiller en meget væsentlig rolle, hvis sætningen skal give mening. Kodning med morsealfabetet er et andet eksempel på temporal kodning. Her er der dog kun mulighed for tre forskellige tilstande: 0, - og. Uden at ke til betydningen af morsealfabetet, vil det være svært at forstå en følge af morsetegn. Det samme problem gør sig gælde, når den neurale kode skal forstås, hvor de mulige tilstande kun består af 0 eller 1 (spike), da et aktionspotentiale indenfor temporal kodning kun karakteriseres ved det tidspunkt, hvor neuronet udser en spike. Informationsteori er en hel videnskab, der benytter statistiske redskaber til at forstå temporal kodning. Informationsteori er blevet brugt på output fra enkelte neuroner med gode resultater. Det har dog vist sig, at den neurale kode kan afhænge af koordinerede følger af spikes fra flere neuroner, hvorved informationsteorien står overfor en langt større udfordring. I håbet om at bryde den neurale kode er det vigtigt at se på, hvordan et neuron behandler den information, den modtager. Den generelle opfattelse er, at et neuron blot summerer alle de signaler, den modtager over en given periode τ. Neuronet siges at udføre temporal integration. Med temporal integration kan man hurtigt indse, at morsealfabetet ikke vil kunne fungere som neural kode. Hvis det antages, at en streg betyder det dobbelte signal i forhold til en prik, vil streg-prik nemlig give resultatet 2+1=3, hvilket også vil være tilfældet for prik-streg, og et neuron vil ikke kunne skelne mellem de to tilfælde.

4.5 Den neurale kode 32 Den mest accepterede model for temporal kodning i nervesystemet bygger på det faktum, at neuroner udfører temporal integration. Præcist hvornår, en spike ankommer, er uden betydning - det hele bliver smidt i en stor sum. Hvad, der betyder noget, er hvor mange spikes, der ankommer indenfor perioden τ. Det vil sige, med hvilken frekvens de ankommer. Denne form for kodning betegnes frekvenskodning. Frekvenskodning er blevet understøttet af forskning omkring neural stimulus til muskler. Det har viste sig, at et højfrekvent neuralt stimulus får muskler til at trække sig mere sammen et lavfrekvent stimulus. Til modellering af neurale netværk besidder frekvenskodning også nogle fordele. For det første gør frekvenskodning det muligt, at et neuralt stimulus kan oversættes til en følge af skalar-værdier. For det andet giver frekvenskodning muligheden for at have neuroner med negative tilstande ved at antage, at der findes en spontan fyringsfrekvens (se Lutton [22]), hvilket betyder, at neuronerne fyrer uden nogen form for neuralt stimulus. En lavere fyringsfrekvens den spontane vil da betyde en negativ tilstand og en højere fyringsfrekvens en positiv tilstand, se figur 27. I afsnit 5.2 ses på et Hopfield netværk, der netop benytter tilstandene -1 og 1. 0 + Figur 27: Fyringsfrekvens for et neuron. 0 angiver den spontane fyringsfrekvens, + angiver en højere frekvens den spontane fyringsfrekvens og - en lavere frekvens. Tegning modificeret fra Lytton [22] Der findes biologiske beviser for, at neuroner kan udvise spontan fyring, men emnet omkring den neurale kode er fyldt med megen usikkerhed. Figur 28 viser, hvordan den spontane fyringsfrekvens skabes af en balance mellem de ekscitatoriske og inhibitoriske input til et neuron. Jeg vil nu se på, hvordan et neuralt stimulus kan defineres matematisk, og hvordan fyringsfrekvensen kan bestemmes. Et stimulus kan beskrives som en liste af tidspunkter for de individuelle spikes. For n spikes betegnes tidspunkterne med t i, hvor i = 1, 2,..., n og 0 t i T for alle i. En sekvens af spikes kan da repræsenteres som en sum af infitisimalt smalle, idealiserede spikes i form af Diracs δ-funktion. n ρ(t) = δ(t t i ) (56) i=1 ρ(t) kaldes for den neurale responsfunktion. Frekvensen for den neurale responsfunktion kan nu findes på flere måder. Den nemmeste metode består i at inddele T i et antal stykker (bins) af længde t og indenfor hvert stykke tælle antallet af spikes og dividere med t. Den midterste graf på figur 29 viser de udregnede frekvenser ved brug af t = 100ms. Matematisk kan metoden

33 4.6 Modellering af hebbiansk indlæring Figur 28: Figurerne viser et neuron der, får adskillige ekscitatoriske input og et enkelt inhibitorisk input. Den øverste figur viser, at en balance mellem de ekscitatoriske og det inhibitoriske input vil resultere i, at neuronet fyrer med den spontane fyringsfrekvens. Hvis fyringsfrekvensen af det inhibitoriske input falder, vil neuronet opnå en højere fyringsfrekvens, som det ses på den midterste figur. Hvis fyringsfrekvensen af det inhibitoriske input derimod stiger, vil det resultere i, at neuronet opnår en lavere fyringsfrekvens, som det er illustreret på den nederste figur. Tegning modificeret fra Lytton [22] formuleres som, r bin (t) = 1 t t+ t t ρ(τ)dτ (57) For at opnå en bedre temporal opløsning kan t gøres mindre. Bedre temporal opløsning kan også opnås ved at undgå en fast opdeling af T og i stedet lade et vindue af længde t glide langs sekvensen (sliding window), hvor antallet af spikes bliver summeret indenfor vinduet. Den nederste graf på figur 29 viser resultatet af denne metode ved brug af en vinduesstørrelse på t = 100ms. Vinduet kan defineres som, { 1/ t hvis t/2 t < t/2 ω(t) = 0 ellers (58) Frekvensen fås da ved r sw (t) = ω(τ)ρ(t τ)dτ (59) Det benyttede vindue kaldes for et rektangulært vindue. Det er også muligt at anve andre vinduer. For eksempel kan et gaussisk vindue benyttes, hvorved frekvensen vil blive en glat funktion. 4.6 Modellering af hebbiansk indlæring En modellering af plasticiteten i neuronerne kan udformes ved at tage udgangspunkt i Hebbs postulat (se afsnit 3.7). Regler for modellering af synaptisk plasticitet tager form af differentialligninger, der beskriver, hvordan synaptiske vægte (ω) ændres som funktion af præ- og postsynaptisk aktivitet. Styrken af den enkelte synapse bliver karakteriseret ved vægten af synapsen. Den præ- og postsynaptiske aktivitet bliver normalt repræsenteret ved fyringsfrekvensen af den præ- og postsynaptiske neuron og betegnes i det efterfølge med henholdsvis u og v. v findes som den vægtede sum af de præsynaptiske aktiviteter, v = i ω i u i (60)

4.6 Modellering af hebbiansk indlæring 34 frekvens (Hz) spikes frekvens (Hz) 100 50 0 100 50 0 0 0.5 1 1.5 2 2.5 3 tid (s) Figur 29: Tre forskellige metoder til at estimere fyringsfrekvensen. Den øverste graf viser et neuralt stimulus. Den anden graf viser resultatet hvis metoden, hvor T inddeles i stykker, benyttes. Graf nummer tre viser resultatet, hvis sliding-window-metoden benyttes med et rektangulært vindue. Den simpleste modellering af synaptisk plasticitet, der er konsistent med Hebbs postulat, kaldes for Hebbs produktregel og tager følge form, τ ω dω dt = vu (61) hvor τ ω er en tidskonstant, der kontrollerer, med hvilken hastighed den synaptiske vægt ændres. Et problem ved Hebbs produktregel er, at der ved undersøgelser af LTP er fundet en øvre grænse for de synaptiske vægte. Hebbs produktregel kan nemt forbedres til at tage hensyn til dette ved at indføre en grænse ω max, som de synaptiske vægte maksimalt kan opnå. Et større problem med Hebbs produktregel er, at den kun kan beskrive LTP. Af afsnit 3.7 fremgik det, at lavfrekvent aktivitet fra enten den præ- eller postsynaptiske neuron vil resultere i LTD. Problemet kan løses på flere måder. Ved at omdefinere u og v, så de angiver fyringsfrekvenserne i forhold til en spontan fyringsfrekvens (se afsnit 4.5), vil u og v kunne antage negative værdier, og en svækkelse af synapserne vil være mulig. En anden løsningsmodel er at omdefinere Hebbs produktregel, så der indføres en grænse θ u og θ v, der angiver hvornår en fyringsfrekvens giver anledning til induktion af LTP, og hvornår der er tale om LTD. Terrence Sejnowski fremsatte denne ændring af Hebbs produktregel, som er kovariansen mellem den præ- og postsynaptiske aktivitet, hvis θ u og θ v sættes til den gennemsnitlige aktivitet < u > og < v >. Ændringen kaldes derfor for Kovariansreglen og tager følge form, τ ω dω dt = (v θ v)(u θ u ) (62) Et problem ved Kovariansreglen er, at der vil ske induktion af LTP, når der både er lav præ- og postsynaptiske aktivitet, hvilket ikke er biologisk realistisk. Problemet kan afhjælpes ved kun at indføre grænsen θ v, τ ω dω dt = (v θ v)u (63) så kun homosynaptisk LTD bliver modelleret, mens en lav præsynaptisk aktivitet stadig vil resultere i LTP. Som det var tilfældet med indførelsen af en

35 4.6 Modellering af hebbiansk indlæring maksimale grænse for LTP, kræves der også en minimal grænse for LTD, som naturligt nok normalt sættes til 0, da synapser ikke kan have negativ vægt. En tredje type af indlæringsmodel skal også nævnes, da eksperimenter tyder på, at LTD kun vil blive induceret, hvis der både er præ- og postsynaptisk aktivitet. Ved brug af Kovariansreglen kan LTD induceres, også når der ikke er aktivitet i en af neuronerne. Bienenstock, Cooper og Munro [5] fremsatte derfor i 1982 følge modellering af synaptisk plasticitet, der også modellerer, at LTD både kræver præ- og postsynaptisk aktivitet. Reglen kaldes for BCM-reglen og tager følge form: τ ω dω dt = (v θ v)uv (64) På figur 30 er vist hvordan de forskellige regler ændrer den synaptiske vægt som funktion af den postsynaptiske aktivitet. For Hebbs produktregel er der kun tale om LTP, mens Kovariansreglen og BCM-reglen begge udviser LTD, hvis den postsynaptiske aktivitet er under grænsen θ v. Desuden ses af figuren, at BCM-reglen ikke ændrer synapsens vægt, hvis der ingen postsynaptisk aktivitet finder sted. Figur 30: Hebbs produktregel, Kovariansreglen og BCM-reglens indvirkning på den synaptiske vægt som funktion af den postsynaptiske aktivitet. (Byrne og Roberts [5]) Ideen bag Hebbiansk indlæring er, at hukommelse skal skabes i neuronets synaptiske vægte. Et problem, ved den måde modellering af den synaptiske plasticitet her er blevet fremstillet, er, at der er chance for, at et neurons synaptiske vægte kan lide af synaptisk mætning. Synaptisk mætning vil sige, at alle vægtene drives mod deres maksimale værdi, hvorved informationen i de synaptiske vægte går tabt. Problemet kan løses ved synaptisk konkurrence, så nogle vægte er tvunget til at svækkes, hvis andre forstærkes. For BCM-reglen kunne en løsning være at indføre en variation af θ v afhængig af den postsynaptiske aktivitet, τ θ dθ v dt = v2 θ v (65) hvor τ θ er en tidskonstant, der kontrollerer ændringen af θ v. Resultatet af variationen af θ v vil blive, at hvis en synapse forstærkes, vil den postsynaptiske aktivitet stige, hvilket vil resultere i, at θ v -grænsen hæves, så det er sværere for andre synaptiske vægte at blive forstærket. I Hopfield netværket foregår indlæring ikke kontinuert men ved diskrete versioner af indlæringsreglerne. Det er dog kun minimale ændringer, der skal

4.7 Modellering af strukturen i cortex 36 foretages for at tilpasse modellerne. Her er vist de diskrete versioner af Hebbs produktregel, Kovariansreglen og BCM-reglen, som de vil blive benyttet senere. ɛ kaldes for indlæringskonstaten, som er analog til 1/τ w. Hebbs produktregel: ω = ɛvu Kovariansreglen: ω = ɛ(v < v >)(u < u >) BCM-reglen: ω = ɛ(v < v >)uv 4.7 Modellering af strukturen i cortex Til modellering af strukturen i cortex vil jeg benytte tre netværksstrukturer. For alle tre netværksstrukturer er, et antal neuroner (n) placeret på en enhedscirkel, så det kun er forbindelserne mellem neuronerne, der kan variere. Da der i dette afsnit er tale om konstruktion af grafer, vil jeg betegne neuronerne som knuder og forbindelserne mellem neuronerne som kanter. Hvert netværksstruktur har en uorienteret og en orienteret udgave. Konstruktionen af de to forskellige typer er dog så ens, at jeg vil beskrive dem under et og tage de små forskelle i konstruktionen undervejs. En forbindelse for et neuron i en uorienteret graf defineres som en kant til et anden neuron, mens en forbindelse for et neuron i en orienteret graf defineres som en udgåe kant til en anden neuron eller en indgåe kant fra en anden neuron. Det gennemsnitlige antal forbindelser pr. neuron for en uorienteret graf betegnes k. Det gennemsnitlige antal forbindelser pr. neuron for en orienteret graf bliver da 2k. k kan da anves som parameter til både de uorienterede og orienterede netværksstrukturer, hvilket i begge tilfælde vil give et netværk med kn forbindelser. For et uorienteret graf vil det give kn/2 kanter og for en orienteret graf kn kanter. Ved at tilpasse k kan den lave tæthed af forbindelser (α = k/n) i cortex modelleres. 4.7.1 Small-world netværk Den første type af netværk tager udgangspunkt i Stephans observation fra afsnit 3.8.2. Stephan påviste at cortex hos makak-aben dannede et Small-world netværk. Begrebet Small-world netværk blev indført af Watts og Strogatz, der karakteriserede en graf ud fra to matematiske værdier: Den karakteristiske vejlængde, L (Length) og klyngekoefficienten, C (Cluster). L defineres for en graf G som, 1 L(G) = d ij (66) n(n 1) i j G hvor n er antallet af knuder i G og d ij er det mindste antal besøgte kanter, der skal til for at komme fra knude i til knude j. d ij kan findes ved f.eks at benytte Floyd-Warshalls algoritme [10]. Klyngekoefficienten C blev defineret af Watts og Strogatz til netop det formål at bestemme, om en graf er et Small-world netværk. Watts og Strogartz definerede klyngekoefficienten for en graf G som gennemsnittet af klyngekoeffi-

37 4.7 Modellering af strukturen i cortex cienterne for de enkelte knuder, C(G) = 1 C i (67) n hvor C i er klyngekoefficienten for knude v i. Til bestemmelse af C i indføres en graf G i G, hvor knuderne N i består af de knuder v j, der har en kant til v i, og hvor kanterne E i består af de kanter e j1 j 2, der måtte være mellem v j erne. C i defineres da som forholdet mellem antallet af kanter i G i og antallet af mulig kanter. For en orienteret graf vil antallet af mulige kanter være n(n 1) og for en uorienteret graf n(n 1)/2. For en uorienteret graf defineres C i derfor som, C i = i G 2 e jk n i (n i 1) : e jk E i (68) hvor n i er antallet af knuder i G i. C i er lig 1, hvis hver v j med en kant til v i også har en kant til alle de andre knuder i G i. C i er lig 0, hvis ingen af knuderne v j har en kant til de andre knuder i G i. Watts og Strogatz karakteriserede en graf som et Small-world netværk hvis, L L rand men C C random (69) hvor L random og C random er hhv. L og C for et netværk med samme antal knuder og samme antal kanter, men hvor kanterne er tilfældigt valgt. Watts og Strogatz fremsatte også en metode til konstruktion af et Smallworld netværk: n knuder placeres på en ring. For en (orienteret/uorienteret) graf forbindes hver knude med en (udgåe kant/kant) til dens k nærmeste naboer. Det kræves at k er et multiplum af 2 for en uorienteret graf, mens der ikke er nogen restriktioner for en orienteret graf. Resultatet bliver en regulær graf med kn/2 kanter for en uorienteret graf og kn kanter for en orienteret graf (se figur 31(a)). Herefter vælges knuderne en efter en med uret. For en orienteret graf tages den valgte knudes udgåe kanter og forbindes på ny med en sandsynlighed på p til en tilfældig anden knude, dog er dobbelte kanter ikke tilladt. For en uorienteret graf tages kun de k/2 kanter, der går til de nærmeste naboer til højre for den valgte knude, herved bliver hver kant besøgt en gang. De bliver på samme måde forbundet til en ny knude med en sandsynlighed på ρ. Hvis ρ = 0, vil der ikke ske nogen ændringer og resultatet bliver igen den regulære graf. Hvis derimod ρ = 1, vil resultatet blive en tilfældig graf (se figur 31(c)). Ind i mellem ρ = 0 og ρ = 1, vil resultatet være et Small-world netværk med en høj klyngekoefficient som for den regulære graf men med en kort karakteristisk vejlængde, som det er tilfældet for den tilfældige graf (se figur 31(b)). 4.7.2 Modul-opbygget netværk Med fundament i Mountcastles observation af, at cortex er opbygget i moduler (se afsnit 3.8.3), har jeg konstrueret en metode til opbygning af et modulopbygget netværk. Inspiration er hentet fra en artikel af Labiouse et al. [20]: n knuder placeres på en ring og inddeles i m moduler af n knuder. Hvis m ikke går op i n, vil et af modulerne være mindre de andre. k opdeles i k intra

4.7 Modellering af strukturen i cortex 38 (a) ρ = 0. (b) ρ = 0.10. (c) ρ = 1. Figur 31: Uorienteret Small-world netværk med n = 20 og k = 4. (det gennemsnitlige antal forbindelser pr. neuron med neuroner indenfor modulet) og k inter (det gennemsnitlige antal forbindelser pr. neuron med neuroner udenfor modulet). Der skal selvfølgelige gælde at k = k intra + k inter. Hvis k n 1, sættes k intra = k og k inter = 0, mens hvis k n 1, sættes k intra = n 1 og k inter = k (n 1). For en (orienteret/uorienteret) graf danner en knude k intra tilfældige (udgåe kanter/kanter) med de andre knuder i samme modul. Herefter danner hver knude k inter tilfældige (udgåe kanter/kanter) uafhængigt af modul-opbygningen. Dobbelte kanter er igen ikke tilladt. Hvis k < n 1, bliver resultatet en graf hvor knuderne indenfor modulerne kun er delvist forbundne. Et eksempel fremgår af figur 32(a), hvor k = 2. Hvis k = n 1, bliver resultatet en graf, hvor knuderne indenfor modulerne er fuldt forbundne. Et eksempel fremgår af figur 32(b), hvor k = 3. Og elig hvis k > n 1, vil forbindelser mellem modulerne begynde at opstå. Et eksempel, hvor k = 4, fremgår af figur 32(c). (a) k = 2. (b) k = 3. (c) k = 4. Figur 32: Uorienteret modulopbygget netværk med n = 20 og n = 4. I tilfældet hvor k < n 1, kan der for en uorienteret graf opstå det problem, at en knude ikke kan få forbundet alle k intra kanter indenfor modulet, da de andre knuder i modulet allerede er forbundet med k intra kanter. Problemet kan også opstå, når k > n 1, hvis en knude mangler at blive forbundet og alle andre knuder i grafen allerede har k forbundne kanter. Problemet er løst ved at undlade de problematiske forbindelser i første omgang, hvilket vil resultere i, at det samlede antal af kanter ikke bliver kn. Dette rådes der bod på ved at tilføje

39 4.7 Modellering af strukturen i cortex et antal tilfældige kanter i netværket, så det samlede antal når kn. Et eksempel er vist på figur 33(a), hvor k = 2. Desuden er der, som under opbygningen af Small-world netværk, til sidst indføjet en parameter ρ, der skal sørge for yderligere tilfældighed i grafen. Knuderne besøges med uret. For en orienteret graf forbindes alle udgåe kanter til en ny knude med sandsynligheden ρ, mens kun kanterne til højre for en knude forbindes til en ny kunde for en uorienteret graf. På figur 33(b) er vist et eksempel på et færdigt modul-opbygget netværk hvor k = 3 og ρ = 0.2. Det modul-opbyggede netværk kategoriseres som et Small-world netværk med modul-opbygningen som ekstra finesse. (a) k = 2. (b) k = 3 og ρ = 0.2. Figur 33: Uorienteret modulopbygget netværk med n = 20 og n = 4. 4.7.3 Scale-free netværk Erdös og Rényi [9] havde i 50 erne studeret netværk med tilfældigt valgte forbindelser. De viste at antallet af udgåe forbindelser pr. neuron (k ) var smukt normalfordelt omkring det gennemsnitlige antal udgåe forbindelser pr. neuron (k). For Watts og Strogatzs Small-world netværk og det modulopbyggede netværk er k ligeledes normalfordelt omkring k. I tilfældet, hvor ρ = 0, er variansen af normalfordelingen σ = 0, hvorved fordelingen for k reduceres til P (k ) = δ(k k) (70) hvor δ er kronikkers deltafunktion. For ρ > 0 vil normalfordelingen stadig have top omkring k men med σ 0, så fordelingen bliver bredere. Barabási og Albert [3] studerede ligesom Watts og Strogatz naturlige netværk. De kikkede nærmere på strukturen af dele af World-Wide-Web ved at tage HTML dokumenter som knuder og linkene mellem dokumenterne som kanterne i en graf. De forventede med baggrund i Erdös og Rényis studier, at netværket var et tilfældigt netværk, men det viste sig slet ikke at være tilfældet. Barabási og Albert viste, at k for graferne af World-Wide-Web fulgte en potensfordeling, P (k ) k γ (71) med γ W W W = 2.1±0.1. Netværk med denne fordeling har ikke et karakteristisk gennemsnitligt antal udaggåe forbindelser pr. neuron (k), i stedet kan man sige at de er uden skala, hvorfor de også bliver kaldt Scale-free netværk. Potensfordelingen aftager langsommere en normalfordeling ved et stige

4.7 Modellering af strukturen i cortex 40 antal forbindelser pr. knude. Der er med andre ord mulighed for knuder med særligt mange forbindelser (f.eks. CNNs hjemmeside). Det, der gør Barabási og Albert undersøgelser interessante i denne sammenhæng, er at de også så på de genetiske aspekter af Watts og Strogatzs netværksmodel i forhold til naturlige netværk. De påpegede, at det ikke var særligt realistisk at starte et netværk med et fast antal af knuder, men at naturlige netværk er åbne og bliver formet ved vedvare addition af nye knuder. Hvilket for eksempel er tilfældet med WWW, hvor der hele tiden sker oprettelse af nye HTML dokumenter. De påpegede også, at i mange naturlige netværk vil tilføjelse af en ny knude til et eksistere netværk ske ved, at knuden med større sandsynlighed vil forbinde sig til en knude, der allerede har et stort antal af forbindelser. Mange naturlige netværk udviser altså en præference i valget af forbindelser, hvor Watts og Strogatzs netværksmodel skaber en uniform fordeling af forbindelserne. Barabási og Albert viste, at en netværksmodel baseret på disse ingredienser naturligt vil lede til et Scale-free netværk. For at inkorporere den vokse karakter af netværket, startes der for et (orienteret/uorienteret) netværk med et lille antal af knuder (n 0 ). For hvert tidsskridt (t) adderes en ny knude med m( n 0 ) (udgåe kanter/kanter), som forbinder den nye knude med m forskellige knuder allerede etableret i netværket. Dette vil i alt give et netværk med n 0 + t knuder og mt kanter. For at inkorporere præferencen i valget af forbindelser, indføres Π, som angiver sandsynligheden for, at en ny knude vil blive forbundet til en eksisterede knude i. Π angives som forholdet mellem antallet af forbindelser for den eksistere knude k i og det samlede antal forbindelser i netværket, Π(k i ) = k i j k j (72) Barabási og Albert viste, at resultatet af denne fremgangsmåde giver et Scalefree netværk med γ = 2.9 ± 0.1 For at benytte modellen indenfor de rammer jeg har sat for det kunstige neurale netværk, skal det Scale-free netværk til sidst have n knuder og kn/2 kanter for en uorienteret graf og kn kanter for en orienteret graf. For at skabe n knuder, skal t = n n 0, hvilket gør, at antallet af kanter bliver m(n n 0 ). Antages k at være lige, kan de kn/2 kanter for en uorienteret graf skabes ved at lade de n 0 knuder hver forbinde sig til m knuder efter samme princip som under forbindelsen af de andre knuder. Herved bliver antallet af knuder m(n n 0 ) + mn 0 = mn og hvis m = k/2, fås kn/2 kanter. Tilbage er kun valget af n 0, hvor det eneste krav er, at n 0 k/2. Jeg har derfor valgt at sætte n 0 = k/2. Tilsvare kan en orienteret graf konstrueres med n knuder og kn kanter. Figur 34 viser et uorienteret Scale-free netværk med k = n 0 = 2. 4.7.4 Karakterisering af netværkene For at kunne give en karakterisering af et netværk er det vigtigt at have matematiske værdier, der fortæller om netværkets struktur. Jeg har allerede set på to af sådanne værdier: den karakteristiske vejlængde L og klyngekoefficienten C. Udover disse to værdier er det i denne forbindelse også interessant at se på den totale axonlængde i netværket, hvilken findes ved at summere længden af alle forbindelserne i netværket. Den totale axonlængde er interessant fordi, der i hjernen er en begrænset mængde plads. En lavere axonlængde vil således

41 4.7 Modellering af strukturen i cortex Figur 34: Uorienteret Scale-free network med n = 20 og k = n 0 = 2 give plads til en lille forøgelse af k, hvilket vil forbedre hukommelsen (se ligning 106). En anden interessant værdi er den gennemsnitlige afvigelse fra k, D (Deviation). D vil give et indtryk af, hvordan forbindelserne er fordelt i netværket. D defineres for en graf G som, D(G) = 1 k i k (73) n hvor n er antallet af knuder i G og k i er antallet af udgåe forbindelser for den i te knude. D er en værdi, jeg selv har konstrueret, da jeg har en formodning om, at kvaliteten af Hopfield netværket vil afhænge af D. En for høj værdi af D kan nemlig resultere i, at nogle af neuroerne vil blive afskåret fra at kommunikere effektivt. i

5 Hopfield netværket 42 5 Hopfield netværket I dette afsnit vil jeg definere Hopfield netværket. Funktionen af Hopfield netværket forstås bedst ved først at beskrive, hvordan et lineært associationsnetværk fungerer. Materiale til afsnittet om det linære associationsnetværk er hentet fra Churchland og Sejnowski [6], mens matriale omkring Hopfield netværket er hentet primært fra Hertz et al. [14]. De statistiske udledninger i forbindelse med Hopfield netværket fandt jeg ikke tilstrækkelige, og har selv suppleret med yderligere detaljer. Afsnittet munder ud i en diskussion af, hvordan et mere biologisk realistisk Hopfield netværk kan konstrueres. 5.1 Lineært associationsnetværk I 1970 erne arbejde en del personer uafhængigt med at udvikle associationsnetværk. Af de mest kte skal nævnes Kohonen og Willshaw. Ens for alle var at de ville opnå et netværk, der associerer en inputvektor med en outputvektor gennem beregning af det indreprodukt. Det indreprodukt beregnes ved, at to vektorer multipliceres led for led med efterfølge addition af produkterne. Det indreprodukt er proportional med cosinus til vinklen mellem vektorerne. Det indreprodukt fortæller derfor hvor stort sammenfald, der er mellem de to vektorer. Information, om hvordan en inputvektor bliver associeret til en outputvektor, befinder sig i vægte, der forbinder de enkelte inputlinier af netværket med de enkelte outputlinier. Når netværket herefter blive fodret med en inputvektor, vil beregningen af det vægtede indreprodukt resultere i en outputvektor. Outputvektoren er blot en lineær transformation af inputvektoren, hvorfor denne form for netværk også kaldes et lineært associationsnetværk. Et lille netværk med tre inputlinier (x 1, x 2, x 3 ) og tre outputlinier (y 1, y 2, y 3 ) vil således give anledning til ni mulig vægte. Et eksempel på et netværk er givet her: x 1 x 2 x 3 1 5 2 y 1 5 25 10 y 2 2 10 4 y 3 Ved at opstille vægtene for netværket i en matrice, ω ij = 1 5 2 5 25 10 (74) 2 10 4 kan output beregnes som, y i = j ω ij x j (75) hvilket jeg vil betegne som netværkets udførelsesregel. For eksempel giver udførelsesreglen, ved input af vektoren x i = (1, 6, 2), en outputvektor proportional med y i = (1, 5, 2). Men hvordan skal vægtene sættes, så en inputvektor korresponderer til en given outputvektor. Her skelnes mellem to former for associationsnetværk. Den først form kaldes et Autoassociationsnetværk. Et netværk af denne type

43 5.1 Lineært associationsnetværk kan producere en outputvektor givet kun en del af inputvektoren. Det er meget tænkeligt, at en proces som denne også foregår i biologiske neurale netværk. For eksempel vil billedet af halen på en hund straks give mennesker associationer, der vil fremkalde et billede af en hund i hukommelsen. I et autoassociationsnetværk skal der være lige mange input- og outputlinier. Vægtene for netværket findes ved at beregne det ydreprodukt af de vektorer, der ønskes genkt af netværket, ω ij = µ x µ i xµ j (76) hvor x µ i er den i te komponent af den µ te vektor, der ønskes genkt af netværket. For eksempel, hvis man ønsker at gemme vektoren (1, 5, 2), vil dens bidrag til vægtene være lig vægtmatricen ovenover. Hvis netværket nu får inputvektoren (1, 5, 2), vil outputvektoren være proportional med (1, 5, 2). Det fremgik tidligere, at hvis inputvektoren ændres en smule (5 erstattes af 6), vil outputvektoren stadig blive proportional med (1, 5, 2). Netværket fungerer derfor som et autoassociationsnetværk. Ved kun at benytte tilstandene 1 og 1 i vektorerne, kan man få en outputvektor, der er nøjagtig lig inputvektoren og altså undgå at outputvektoren kun er proportional med inputvektoren. Vægtene i netværket vil således også kun få tilstandene 1 og 1. Den måde, man får netværket til at huske vektorerne, kaldes for en indlæringsregel. Den indlæringsregel, der blev benyttet ovenfor, har fundament i Hebbs produktregel, som blev fremsat i afsnit 4.6 og bliver betegnet som Hebbs indlæringsregel. Den fastholder Hebbs ide om, at hukommelsen skal ligge i vægtene og at en vægt skal styrkes, hvis der er aktivitet på begge sider af vægten. Derved opnås, at en vektor, der er gemt i netværket, vil blive genkaldt, også selvom inputvektoren er en smule ukomplet i forhold til den gemte vektor. Den anden form for associationsnetværk kaldes et Heteroassociationsnetværk. Hvor autoassociationsnetværket gemte det ydreprodukt af (x µ i, xµ i ), indføres der i heteroassociationsnetværket en ny outputvektor z µ i, så det er det ydreprodukt af (z µ i, xµ i ), der gemmes i netværket. Herved opnås, at hvis inputvektoren er xµ i, vil outputvektoren blive z µ i. Denne process er også tænkelig at foregå i biologiske neurale net. Tænk f.eks på hvordan det er muligt at associere en bestemt lugt med et bestem objekt. Det kunne være lugten af en rose, der fremkalder billedet af en rose. Taleksemplerne i dette afsnit viser kun, hvorledes en enkelt vektor bliver gemt i vægtene. Det er selvfølgelig meningen, at flere vektorer skal kunne gemmes samtidig, hvorved problemerne med netværket også begynder at opstå. Hvad sker der, hvis en indputvektor matcher mere en gemt vektor? Outputvektoren vil da blive en vægtet sum af de gemte vektorer. Dette betyder, at hvis flere vektorer ønskes gemt i netværket, vil sammenfaldet mellem vektorerne blive større, og netværket vil blive ubrugeligt som hukommelse. Man taler derfor om kapaciteten af netværket, hvilket er et betydningsfuldt mål for, hvor godt et netværk fungere som hukommelse. Jeg vil komme nærmere ind på kapacitet af Hopfield netværket i afsnit 5.5.

5.2 Hopfields bidrag 44 5.2 Hopfields bidrag Det lineære associationsnetværk er meget simpelt og er et såkaldt feedforwardnetværk, da der ikke er nogle forbindelser, der leder tilbage i netværket. Alt information går fra inputlinierne til outputlinierne. Man studerer også feedbacknetværk, hvor der er forbindelser tilbage i netværket, hvilket betyder, at netværket ikke mere er lineært. Nogle netværk med feedback-forbindelser har en dynamik, hvor en stabil løsning ikke altid findes, da der kan opstå oscillere løsninger og kaotisk opførelse. Et gennembrud indenfor feedback-netværk kom med John Hopfields [15] berømte artikel fra 1982, hvor han viste, at for en speciel klasse af feedback netværk var dynamikken således, at de altid ville konvergere mod en løsning, så netværket kunne benyttes som en autoassociativ hukommelse. Det var ikke Hopfields eneste formål med udformningen af sit netværk. Han udforskede også muligheden for at konstruere et netværk, der lå tæt op ad systemer observeret i fysikken. Det er ikke umiddelbart til at se en sammenhæng mellem de to verdener men ideen er god, da et netværk med rødder tilbage i fysikken automatisk vil arve en hel pakke af teori, der kan benyttes til at forstå netværket. Figur 35: 2D Isingmodel med 36 partikler. Pilene angiver om partiklerne har spin op eller spin ned. Hopfield fandt sit svar ved at studere et idealiseret fysisk system kaldt spin glass. Et spin glass er karakteriseret ved partikler med spin, enten op eller ned, og hvor interaktion mellem alle partiklerne kan forekomme. Et spin glass kan visualiseres ved en Isingmodel (se figur 35). Et spin glass ved en høj temperatur vil have partikler med tilfældige spin, da den termiske indflydelse er større den indbyrdes interaktion mellem partiklerne. Ved en afkøling af et spin glass vil interaktionen mellem partiklerne tage over, og systemet vil søge efter et lokalt energiminimum. Hopfields tanke var, at disse lokale minima kunne udgøre hukommelsen i netværket. Hopfield udformede derfor sit netværk på følge måde: Enhver partikel associerede han med et neuron i sit netværk. Neuronet kunne enten have tilstanden 1 (spin op) eller 0 (spin ned). Siden alle partiklerne kunne have indflydelse på hinanden, blev vægtmatricen en n n-matrice (n angiver antallet af neuroner), der i overensstemmelse med det fysiske system var symmetrisk, ω ij = ω ji (77) og ikke tillod et neuron at have interaktion med sig selv. ω ii = 0 (78)

45 5.2 Hopfields bidrag Ligheden med det fysiske system gjorde, at en energifunktion kunne indføres for det neurale net i lighed med energi funktionen for det fysiske system, E = 1 ω ij s i s j (79) 2 ij hvor s i angiver tilstaden af det i te neuron. Ideen med netværket var, at det skulle være muligt at starte det fra en bestemt starttilstand. Herefter skulle netværket e op i det lokale energiminimum, der lå tættest på starttilstanden. Man kan forestille sig funktionen af Hopfields netværk ved at se på det tilhøre energilandskab. De lokal energiminima går også under navnet attractors, hvilket giver mening, hvis man forestiller sig energilandskabet påvirket af tyngdekraften. En kugle lagt et sted i landskabet, vil trille ned til den attractor, der ligger tættest på. Et eksempel på et energilandskab er givet i figur 36. Figur 36: Energilandskab med 3 attractors. For at fulde beskrivelsen af Hopfield netværket er en beskrivelse af netværkets udførelsesregel og og indlæringsregel nødvig. For et feedback netværk kaldes udførelsesreglen i stedet en opdateringsregl, da den opdaterer tilstanden for neuronerne. Som beskrevet ovenfor ønskes det, at netværket skal e op i en attractor og forblive der. Med andre ord skal energifunktionen være en monotonisk aftage funktion. Hvis et neuron har en nuvære tilstand på s i = 0, vil den ikke bidrage til den samlede energi. Hvis et neuron derimod ændrer tilstand fra 0 til 1, vil den samlede energi E ændres med E i, hvilket vil være givet ved, E i = j ω ij s j (80) For at E skal være en monotonisk aftage funktion, skal der gælde, at E i < 0, hvilket kun vil ske hvis, ω ij s j > 0 (81) j På baggrund af dette kan en opdateringsregel sammensættes. Et neuron vælges tilfældigt og tilstanden s i opdateres efter følge regel: s i 1 s i 0 hvis j ω ij s j > 0 < 0 (82)

5.3 Et gemt mønster 46 Derefter vælges nu et tilfældigt neuron, og processen fortsættes, til der ikke er nogle tilstande, der ændres. Netværket har konvergeret mod en attractor. Denne form for opdatering kaldes for asynchonously updating, da man opdaterer neuronerne en ad gangen. Man kan også opdatere alle neuronerne samtidig, hvorved der er tale om synchonously updating, men med denne form for opdatering, vil man ikke være sikker på konvergens. Ser man nærmere på opdateringsreglen, vil man opdage, at den nøjagtigt afspejler funktionen af et McCulloch-Pitts neuron med step-funktionen som aktiveringsfunktion og en tærskelværdi på µ i = 0. (se afsnit 4.3). Som indlæringsregel for Hopfield netværket ønskede Hopfield at benytte Hebbs indlæringsregel, men da han arbejdede med tilstandene 0 og 1, og ikke som det var tilfældet med det linære associationsnetværk tilstandene 1 og 1, lavede han følge konvertering mellem de to tilstandssæt: s i = 2s i 1 hvor s i 1, 1 og s i 0, 1 (83) Givet vektorer s 1, s 2,..., s n, der ønskes gemt som attractors, brugte Hopfield i sin artikel følge indlæringsregel: ω ij = µ (2s µ i 1)(2sµ j 1) (84) Ved at skimte tilbage til afsnit 4.6 ses det, at dette er Kovariansreglen med en gennemsnitlige fyringsfrekvens på 1 2, hvilket passer med, at det er tilstandene 0 og 1, der benyttes. Kovariansreglen er sammenfalde med den simplere Hebbs indlæringsregel, hvis tilstandene -1 og 1 benyttes, så den gennemsnitlige fyringsfrekvens bliver 0. For at gøre de komme udregninger simplere, vil jeg derfor i det efterfølge benytte Hebbs indlæringsregel, ω ij = 1 x µ i n xµ j (85) med indlæringskonstanten ɛ = 1/n og tilstandene 1 og 1 i stedet for den mere besværlige Kovarianseregel med tilstandene 0 og 1. Ved skiftet kan opdateringsreglen også formuleres simplere, µ s i = sgn( j ω ij s j ) (86) hvor, sgn(x) = { 1 1 hvis x < 0 x 0 (87) Skiftet gør, at der nu benyttes et McCulloch-Pitts neuron med aktiveringsfunktionen g(x) = sgn(x) og en tærsleværdi på µ i = 0. I det efterfølge vil jeg også skifte begreb, så det ikke længere er vektorer, der bliver gemt i netværket, men mønstre. 5.3 Et gemt mønster Før Hebbs produktregel accepteres, skal det begrundes, hvorfor den fungerer som indlæringsregel for Hopfield netværket. Første skridt er at se på opførelsen

47 5.4 Flere gemte mønstre af netværket, hvis kun et mønster, ξ i, gemmes som attractor. En attractor betegnes også som en stabil netværkstilstand, dvs. en tilstand for netværket, hvor opdateringsreglen ikke kan få netværket til at skifte tilstand. En ustabil netværkstilstand er derimod en tilstand, hvor opdateringsreglen kan ændre en eller flere af neuronernes tilstande og forsage en ny tilstand af netværket. For at Hopfield netværket fungerer, skal ξ i være en stabil netværkstilstand. At en netværkstilstand er stabil, kan formuleres som, i : sgn( j ω ij ξ j ) = ξ i (88) Det ses, at dette er tilfældet for ξ i hvis, ω ij ξ i ξ j (89) da ξj 2 = 1. Selvom en del af tilstandene s i i starttilstanden skulle være forkerte (altså ikke lig ξ i ), vil de blive overvældet af de rigtige s i -værdier under beregningen af opdateringsreglen så, sgn( j ω ij s j ) = ξ i (90) Hvilket var, hvad der gerne skulle ske, i en autoassociativ hukommelse. ξ i er dog ikke den eneste attractor i dette simple tilfælde. Hvis mere halvdelen af værdierne i starttilstanden er forkerte, vil resultatet blive ξ i. Dette kaldes for en inverteret netværkstilstand. En visualisering kan skabes ved at se på konfigurationsrummet for netværket, som indeholder alle de mulige tilstande netværket kan komme i. Figur 37 viser hvorledes konfigurationsrummet i dette tilfælde er inddelt i to symmetriske dele. ξ ξ Figur 37: Symmetrisk konfigurationsrum med ξ i som attractor og ξ i som den inverterede netværkstilstand. 5.4 Flere gemte mønstre Hvis flere mønstre ønskes gemt i netværket, skal der gælde den samme stabilitet for en attractor, som det var tilfældet, hvis kun et mønster blev gemt. For et bestemt mønster ξi ν, skal der gælde at, i : sgn(h ν i ) = ξ i (91) hvor h ν i er det samlede input til det i te neuron for mønstret ν. hν i er defineret ved, h ν i ω ij ξj ν = 1 ξ µ i N ξµ j ξν j (92) j j µ

5.5 Kapaciteten af Hopfield netværket 48 h ν i kan opsplittes, så ξν j trækkes ud af summationen. Resultatet bliver, h ν i = ξi ν + 1 ξ µ i N ξµ j ξν j (93) Heraf ses, at hvis det andet led var nul, ville kravet til stabilitet være opfyldt. Stabiliteten er dog også opfyldt, hvis leddet normeret er mindre 1, så vil leddet nemlig ikke have nogen indflydelse på fortegnet for h ν i. Det andet led kaldes for crosstalkleddet. Leddet afhænger af hvor mange mønstre p, der gemmes i netværket. Hvis p er lille, vil det ikke være noget problem, at få Hopfield netværket til at fungere som autoassociativ hukommelse. Argumentet for konvergens mod en attractor fra en given starttilstand er her det samme som i tilfældet med kun ét mønster. j µ ν 5.5 Kapaciteten af Hopfield netværket Ved at se nærmere på crosstalkleddet vil det af dette afsnit fremgå, at kapaciteten af Hopfield netværket har en sammenhæng med antallet af neuroner i netværket. Multipliceres crosstalkleddet med ξi ν giver det en værdi, som benævnes C ν i. C ν i = ξ ν i 1 N ξ µ i ξµ j ξν j (94) Hvis Ci ν er negativ vil crosstalkleddet have samme fortegn som ξν i. Crosstalkleddet vil derfor ikke have nogen indvirkning på fortegnet for h ν i og hukommelsen vil være stabil. Hvis Ci ν derimod er positiv og større 1, vil crosstalkleddet ændre fortegnet for h ν i og gøre den i te værdi i det ν te mønster ustabil og dermed hukommelsen ustabil. Sandsynligheden for at en tilfældig værdi er ustabil kan beskrives ved, j µ ν P ustabil = P (C ν i > 1) (95) Det er klart, at P ustabil vil stige, hvis p øges. Ved at finde et mål for P ustabil kan kapaciteten af Hopfield netværket findes. Kapaciteten beteges p max : Det maksimale antal af mønstre, der kan gemmes uden, at netværket bliver uacceptabelt ustabilt. For at beregne P ustabil forudsættes, at både n og p er en del større 1. Antal af led i Ci ν er n(p 1) eller (n 1)(p 1), hvis leddet, hvor i = j, inkluderes. Ved at kræve at n og p er store, kan antallet af led i Ci ν sættes til np. Ci ν er nu 1/n multipliceret med summen af np uafhængige tilfældige led, som enten er 1 eller 1. Fra sandsynlighedsregning fås, at v = np stokastiske variable, X, som enten er 0 eller 1 og hvor sandsynlighedsparameteren,f, for udfaldet af den stokastiske variabel er 1 2, følger en binomialfordeling med middelværdi E(X) = vf = 1 2 np og varians V ar(x) = vf(1 f) = 1 4 np. For i stedet at benytte tilstandene 1 og 1 indføres en ny stokastisk variabel Y = 2X np. Der gælder nu følge sætning taget fra Michael Sørensen [26]:

49 5.5 Kapaciteten af Hopfield netværket Lad X være en stokastisk variabel på en elig mængde, og lad a og b være reelle tal. Da er E(a + bx) = a + be(x) og V ar(a + bx) = b 2 X (96) Fordelingen for Y følger derfor en binomialfordeling med E(Y ) = 0 og V ar(y ) = np. Ved at indføre nu en stokastisk variabel, Z = 1 n Y, fås fordelingen af værdierne for Ci ν. P (Cν i ) = Z følger således en binomialfordeling med E(P (Ci ν)) = 0 og V ar(p (Cν i )) = p/n eller µ = 0 og σ2 = p/n, som middelværdien og variansen også betegnes. Da v = np antages at være stor, kan P (Ci ν ) approximeres af en normalfordeling med samme middelværdi og varians som for binomialfordelingen. Derfor bliver P (Ci ν 1 (x µ)2 ) = e 2σ 2 (97) 2πσ 2 P ustabil kan nu udregnes ved at tage integralet af P (Ci ν ) fra 1 til. P ustabil = 1 2πσ 2 1 e (x µ) 2 2σ 2 dx = 1 2 1 2πσ 2 1 0 e (x µ) 2 2σ 2 dx (98) Med dette resultat kan P ustabil afbilledes som funktion af p max /n ved at udregne P ustabil for en delmængde af p max /n. p max /n kaldes for netværkets kritiske punkt. Resultatet af tre beregninger af P ustabil kan ses på figur 38. Figuren fortæller, at hvis f.eks p < 0.185n, vil højst 1% af værdierne i mønstret være ustabile til at begynde med. P(C i ν ) p max /n=0.185 p max /n=0.37 p max /n=0.61 P ustabil =0.1 P ustabil =0.05 P ustabil =0.01 2 1.5 1 0.5 0 0.5 1 1.5 2 ν C i Figur 38: Tre funktioner af P (Ci ν), hvor P max/n er hhv. 0.61, 0.37 og 0.185. P ustabil = P (Ci ν > 1) findes da som hhv. 0.1, 0.05 og 0.01. På baggrund af denne analyse er det ikke muligt at sige noget om, hvor ustabil værdierne i mønstret siden hen vil blive. Det kan jo tænkes, at den 1% af værdierne, der var ustabile og skiftede fortegn, vil forsage, at flere og flere værdier vil blive ustabile. Hopfield netværkets sammenhæng med fysikken gør,

5.6 Tynde mønstre 50 at mere avancerede metoder kan tages i brug for at få et mere præcist udtryk for kapaciteten. Ved at lave Hopfield netværket om til et stokastisk netværk og benytte Mean field theory er det bl.a. af Hertz [14] vist, at Hopfield netværket har en grænse på p max = 0.138n (99) Hvis p øges over denne grænse, vil hukommelsen blive ubrugelig. Selvom analysen ovenfor ikke er helt præcis, giver den alligevel et meget godt indblik i beregning af Hopfield netværkets kapacitet. 5.6 Tynde mønstre En anden interessant analyse, man kan foretage, er, hvordan fordelingen af 1 og 1 vil have indflydelse på kapaciteten af netværket. I analysen ovenfor blev det antaget, at f = 1 2, så der i mønstrene fandtes lige mange 1 og 1. Hvad vil der ske, hvis f ændres? Svaret kan findes ved at gennemføre hele analysen igen, hvor f nu indgår som parameter. Resultatet bliver, at P (Ci ν ) stadig er normalfordelt, men med µ = p(2f 1) og σ 2 = 4f(1 f) p n. P ustabil kan udregnes ved P ustabil = 1 2 1 2πσ 2 µ+1 µ e (x µ) 2 2σ 2 dx (100) som funktion af p max /n og f. Af figur 39 ses det, at jo længere f er fra 1 2, jo større kapacitet har netværket. Mønstre hvor f 1 2 0 kaldes for tynde mønstre. Hertz har i [14] vist at, p max 1 2f log(f) n (101) 0.1 0.09 0.08 p max /n=0.61 P ustabil 0.07 0.06 0.05 0.04 0.03 0.02 0.01 p max /n=0.37 p max /n=0.183 0 0 0.2 0.4 0.6 0.8 1 f Figur 39: Tre funktioner af P ustabil som funktion af f hvor P max/n er hhv. 0.61, 0.37 og 0.185. Det ses, at ved f = 1 2, er P ustabil hhv. 0.1, 0.05 og 0.01, som det også var tilfældet på figur 38. I det ekstreme tilfælde vil de forskellige mønstre være ortogonale, dvs., µ ν : j ξ µ j ξν j (102)

51 5.7 Udtømte Hopfield netværk hvilket vil betyde, at i, ν : Ci ν = 0 og medføre at p max = n. Alle tilstande for netværket er derfor stabile. Systemet forbliver i starttilstanden og er derfor ubrugelig som hukommelse. Tilfældet kan også anskueliggøres ved at indse, at ortogonaliteten vil medføre, at { 1 hvis i = j w ij = (103) 0 ellers Ethvert neuron er altså kun forbundet til sig selv, så der ingen interaktion er mellem neuronerne. 5.7 Udtømte Hopfield netværk Der er indtil nu kun set på fuldt sammenhænge Hopfield netværk. Som det var tilfældet i afsnit 4.7, indføres derfor parameteren k (det gennemsnitlige antal forbindelser pr. neuron). Et Hopfield netværk med k < N 1 kaldes for et udtømt Hopfield netværk. En analyse af kapaciteten for et udtømt Hopfield netværk kan laves ved at følge samme fremgangsmåde som i de to foregåe afsnit. Der indføres følge faktor, der fortæller om en forbindelse mellem i og j eksisterer i netværket: { 1 hvis i er forbundet til j c ij = (104) 0 ellers Når n går mod uelig kan indlæringsfunktionen opskrives som, ω ij = 1 k c ij ξ µ i ξµ j (105) hvor normaliseringskooefficienten er ændret til 1/k istedet for 1/n. h ν i kan herefter opskrives og opsplittes, så h ν i efter reduktion bliver ξν i og et nyt crosstalkled, h ν i = ω ij ξj ν = 1 c ij ξ µ i k ξµ j ξν j j j µ = 1 k ξν i c ij ξj ν ξj ν + 1 ξ µ i c ij ξ µ j k ξν j j ξ ν i + 1 k µ ν µ ξ µ i µ ν c ij ξ µ j ξν j da ξ 2 = 1 og j c ij = k. P ustabil kan nu findes ved at indse, at crosstalkleddet i dette tilfælde er 1/k multipliceret med summen af kp uafhængige tilfældige led, som enten er 1 eller 1. Ci ν bliver altså i dette tilfælde normalfordelt med µ = 0 og σ 2 = p/k. Det vil sige, at p max er af orden k i stedet for n. Hertz [14] har beregnet forholdet mellem p max og k. For meget udtømte Hopfield netværk har Hertz fundet, at j p max = 2 π k (106) Af disse udregninger fremgår det, at størrelsen af k har stor betydning for funktionaliteten af Hopfield netværket. j

5.8 Biologisk realistisk Hopfield netværk 52 5.8 Biologisk realistisk Hopfield netværk Hopfield netværket er en yderst simpel model af autoassociativ hukommelse. Netværket er nemt at analysere, men det er ikke særligt biologisk realistisk. I dette afsnit vil jeg derfor se på, hvordan Hopfield netværket kan gøres mere realistisk ved at udnytte modelleringsmetoderne, der blev gennemgået i afsnit 4. 5.8.1 Neuronmodellen Det første der springer i øjnene, når man ser på udformningen af Hopfield netværket, er brugen af McCulloch-Pitts neuronet (se afsnit 4.3). Ved at skifte til temporalkodning (se afsnit 4.5) kan neuronerne modelleres enten som Integrateand-fire neuroner (se afsnit 4.2) eller som Hudgkin-Huxley neuroner (se afsnit 4.1), hvilket vil gøre netværket betydeligt mere realistisk. 5.8.2 Neuronaktivitet I Hopfield netværket tildeles hvert neuron en starttilstand. Benyttes Integrateand-fire neuronet eller Hodgkin-Huxley neuronet, kan neuronerne ikke tildeles en starttilstand. Samme effekt kan dog opnås, ved kun at give input til de neuroner, der ifølge initialiseringsmønstret ζ, skal aktiveres. Neurofysiske undersøgelser viser, at kun en lille procentdel af neuronerne er aktive på samme tid [11]. Det mest realistiske netværk vil derfor fremkomme ved at benytte tynde mønstre (se afsnit 5.4), hvilket giver en lav neuronaktivitet. 5.8.3 Indlæringsreglen Benyttes Integrate-and-fire neuronet eller Hodgkin-Huxley neuronet, kræver det, at de negative fyringsfrekvenser, der i Hopfield netværket skaber LTD, bliver fjernet. En løsning er at benytte Kovariansreglen som indlæringsregel i stedet for Hebbs produktregel, hvorved det er muligt kun at benytte positive fyringsfrekvenser (se afsnit 4.6). Kovariansreglen har dog det problem, at der vil ske en ændring af den synaptiske vægt, selvom både det post- og præsynaptiske neuron er inaktivt. Problemet kan løses ved at skifte til BCM-reglen. Jeg har dog fastlagt mig på at benytte Kovarinsreglen, da den med succes er blev benyttet af Anastasia et al. [2], og jeg ikke har fundet nogen beskrivelser af brugen af BCM-reglen. Alle indlæringsreglerne vil kunne medføre, at nogle af de synaptiske vægte vil blive negative. Det er som udgangspunkt ikke biologisk realistisk, da synapser ikke kan skifte fra ekscitatoriske til inhibitoriske synapser eller modsat. Som ved problemet med negative frekvenser (se afsnit 4.5) er dette problem også et tolkningsspørgsmål. Alle synapserne i Hopfield netværket kan gøres ekscitatoriske ved at tænke sig til et ekscitatorisk baggrundsstimulus. En negativ vægt mellem to ekscitatoriske neuroner vil da kunne tolkes som en svækkelse af det ekscitatoriske baggrundsstimulus og en positiv vægt som en styrkelse. For at modvirke det ekscitatoriske baggrundsstimulus og afhjælpe problemet med crosstalk indføres en population af inhibitoriske neuroner, der modtager input og projekterer tilbage til samtlige neuroner i Hopfield netværket. Dette udvidede Hopfield netværk er afbilledet på figur 40.

- 53 5.9 Model af et biologisk realistisk Hopfield netværk Hopfield netværk % & % & % &!! " " ' ' ' ' ' ' ' ' ( ( ( ( ( ( ( ( ) ) ) ) * * * ) ) ) ) * * * + + +,,, * * ) * ) # $ # $ # $ Inhibitoriske neuroner Figur 40: Opbygning af et udvidet Hopfield netværk. Der indføres en population af inhibitoriske neuroner for at formindske crosstalk. Den inhibitoriske population modtager input og projekterer tilbage til samtlige neuroner i Hopfield netværket. 5.8.4 Synapser og forbindelser I Hopfield netværket findes der ingen modellering af synapserne, så det er nemt at gøre modellen mere realistisk på dette punkt. Til modellering af synapserne har jeg valgt at benytte α-funktionen (se afsnit 4.4). I forbindelse med modelleringen af synapserne blev problemet omkring synaptisk mætning omtalt. Jeg har valgt ikke at tage højde for synaptisk mætning, da det vil gøre modellen nu tungere, den er i forvejen. En synaptisk vægt har således ingen maksimal grænse. Jeg gennemgik i afsnit 4.7 forskellige modelleringer af cortex, da et fuldt forbundet Hopfield netværk ikke er realistisk. Disse modeller vil jeg naturligvis medtage i modellen af et mere biologisk realistisk Hopfield netværk. 5.9 Model af et biologisk realistisk Hopfield netværk Med inspiration hentet fra Anastasia et al. [2] og Hasegawa [13] har jeg konstrueret et Hopfield netværk, der inkorporerer forslagene til et mere realistisk netværk. Efter hver paragraf er det i parentes angivet, hvad jeg har hentet fra Anastasia et. Al [2], Hasegawa [13] og hvad jeg selv har tilføjet. For at opnå den lave neuronaktivitet, konstrueres mønstrene, ved kun at sætte en procentdel, f, af pladserne i mønstrene til 1/f og de restere pladser til 0. Udover dette krav vælges mønstrene tilfældigt. Dette giver en gennemsnitlige fyringsfrekvens på 1. (Anastacia et al.) Kovariansreglen kan da formuleres som, P ω ij = ɛ( (ξ p i 1)(ξp j 1)) c ij (107) p=0 hvor ɛ(x) = x/max(ω ij ) normaliserer de synaptiske vægte og c ij er 1, hvis forbindelsen mellem i og j eksisterer ellers 0. (Egen tilføjelse) Opdateringen af neuronerne sker enten ved ligning 39 hvis Integrate-and-fire neuronet benyttes, eller ved ligning 37 hvis Hudgkin-Huxley neuronet benyttes. Parametrene til Integrate-and-fire neuronet er fundet i afsnit 4.2 og parametrene til Hudgkin-Huxley neuronet er givet i tabel 4.1.

5.9 Model af et biologisk realistisk Hopfield netværk 54 For begge modeller er det samlede elektriske input til den j te neuron, I mj, den eneste parameter, der er udefineret. I mj findes ved, I mj (t) = G(I ext j (t) + Ij exc (t) Ij inh (t)) (108) hvor G(x) = xθ(x) kun tillader positiv ladning at have indflydelse på neuronet. Θ(x) = 1 for x > 0 ellers 0. (Hasegawa) Det første bidrag til I mj er det eksterne ekscitatoriske input, Ij ext, til den j te neuron. Ij ext er styret af initialiseringsmønstret ζ. Ij ext findes ved, I ext j (t) = g ext (V A V C )α(t)ζ j (109) hvor g ext er ledeevnen for de eksterne ekscitatoriske synapser og α-funktionen er defineret ved, α(t) = t e 1 t/τ exc (110) τ exc hvor τ exc er tidskonstanten for de ekscitatoriske synapser. (Hasagawa) Ij exc er det interne ekscitatoriske bidrag til den j te neuron. Ij exc udregnes ved, N Ij exc (t) = g exc (V A V C ) ω ij α(t t im τ d ) (111) j i=1 hvor g exc = λ exc g ext er ledeevnen i de interne ekscitatoriske synapser, som er sat til at være proportional med g ext, V A er spændingen hvorved et aktionspotentiale initialiseres, V C er den maksimale spænding for et aktionspotentialet, t im er tidspunktet for den i te neurons udselse af den m te spike og τ d er forsinkelsen af den elektriske strøm langs axonet. τ d burde afhænge af længden af axonet, men antager her en konstant værdi. α-funktionen er igen defineret ved ligning 110. (Hasagawa) er det inhibitoriske bidrag fra den inhibitoriske population til den j te neuron. Aktiviteten af populationen er proportional med den totale ekscitatoriske aktivitet og modelleres som, I inh j m dβ(t) dt = 1 τ inh β(t) + B N (112) hvor τ inh er tidskonstanten for de inhibitoriske synapser og B er det totale antal af spikes fra de ekscitatoriske neuroner i tidsrummet dt. (Anastacia et al.) Ved yderligere at kræve, at β(t) > 1 β(t) = 1 (113) kan det inhibitoriske bidrag opskrives som, I inh j = g inh (V A V C )β(t) (114) hvor g inh = λ inh g ext er ledeevnen i de inhibitoriske synapser, hvilken, som for g exc, er sat til at være proportional med g ext. (Egen tilføjelse) I afsnit 6 findes værdierne for konstanterne og de optimale værdier af g ext og λ inh bestemmes. Den optimale værdi af λ exc kan imidlertid estimeres på følge måde: g ext angiver den optimale ledeevne for et enkelt positivt eksternt ekscitatorisk input til et neuron. Det ønskes derfor at summen af ledeevnerne for

55 5.10 Nummerisk løsning af differentialligninger de positive interne ekscitatoriske input til et neuron skal være lig g ext. Hvilket også kan formuleres som, exc + g exc = g ext (115) hvor exc + er antallet af positive interne ekscitatoriske input til et neuron. exc + kan estimeres til k/(n 1)nf, da nf er det gennemsnitlige antal af positive interne ekscitatoriske input til et neuron i et fuldt sammenhænge netværk, og k/(n 1) angiver procentdelen af forbindelser i netværket i forhold til det fuldt sammenhænge netværk. λ exc kan nu bestemmes som 1/ exc +, hvilket giver, λ exc = n 1 (116) knf (Egen tilføjelse) 5.10 Nummerisk løsning af differentialligninger Da Integrate-and-fire neuronet og Hudgkin-Huxley neuronet er beskrevet ved differentialligninger, ses der i dette afsnit på, hvordan en nummerisk løsning kan bestemmes. Kincaid og Cheney [19] giver en god beskrivelse af forskellige løsningsmetoder. Jeg har valgt at benytte metoden, der baserer sig på Taylor rækker. Formålet er nummerisk at løse følge differentialligningsproblem, dx(t) dt = f(t, x(t)), hvor x(t 0 ) = x 0 (117) hvilket også kaldes for et initial-værdi problem, eftersom værdien for x(t 0 ) er givet. Den næste værdi x(t 1 ) = x(t 0 + dt) kan bestemmes ved at benytte Taylor udviklingen, x(t + h) = x(t) + hx (t) + h2 2! x (t) + h3 3! x (t) + h4 4! x( 4)(t) + (118) Når x(t 1 ) er bestemt, kan x(t 2 ) = x(t 1 + dt) bestemmes ved en ny Taylor udvikling osv. Det tilbagevære spørgsmål er, hvor mange led af Taylor udviklingen der skal medtages? Dette kommer helt an på, hvor stor nøjagtighed man ønsker. Jo flere led man medtager, jo større bliver nøjagtigheden. En metode, hvor leddene op til og leddet h n x (n) (t)/n! medtages, siges at have orden n. En større nøjagtighed kan selvfølgelig også opnås ved at gøre dt mindre. Metoden hvor n = 1 kaldes for Eulers metode og ser således ud, x(t + h) = x(t) + hf(t, x) (119) Metoden har den fordel, at det ikke er nødvigt at differentiere f. Metoden kræver derfor ikke mange beregninger. Nøjagtigheden af metoden er god nok til at lave numeriske beregninger for Integrate-and-fire neuronet, men for Hudgkin-Huxley neuronet skal nøjagtigheden være større, da der indgår flere differentialligninger. En klassisk metode er Fjerde-ordens Runge-Kutta metoden, hvor led op til og leddet inkludere h 4 medtages i Taylorrækken. Den færdige metoden tager følge form: x(t + h) = x(t) + 1 6 (F 1 + 2F 2 + 2F 3 + F 4 ) (120)

5.11 Overlap af mønstre 56 hvor F 1 = hf(t, x) (121) F 2 = hf(t + 1 2 h, x + 1 2 F 1) (122) F 3 = hf(t + 1 2 h, x + 1 2 F 2) (123) F 4 = hf(t + h, x + F 3 ) (124) En udledning af anden-ordens Runge-Kutta metoden findes i [19]. 5.11 Overlap af mønstre Kvaliteten af et Hopfield netværk kan bestemmes ved at lave en række forsøg med netværket. Fremgangsmåden for forsøgene er som følger: En række mønstre, ξ 1, ξ 2,..., ξ P gemmes i netværket ved at benytte indlæringsreglen. Et mønster ξ ν udvælges og ændres med en parameter q, der angiver hvor stor en procentdel af mønstret, der skal ændres. Det ændrede mønster ζ benyttes herefter som initialiseringsmønster til Hopfield netværket. Et Hopfield netværk med et uorienteret netværk og McCulloch-Pitts-neuroner vil på et tidspunkt nå en attractor. Mønstret der fremkommer ved Hopfield netværkets dynamik betegnes med ζ. Kvaliteten af Hopfield netværket bestemmes ved at sammenligne hvor stort overlap, m, der er mellem det udvalgte mønster ξ ν og ζ. m udregnes ved, m = ξ ν ζ = i ξν ζ i (ξν ) 2 i ζ 2 (125) Hvis Hopfield netværket består af Integrate-and-fire neuroner eller Hudgkin- Huxley neuroner bestemmes ζ som frekvensen for hver neuron. Metoder til bestemmelse af frekvensen blev gennemgået i 4.5. Jeg har valgt at benytte metoden, der består i at inddele tiden for simulationen t sim i en række stykker (eller vinduer) af længde t win, tælle antallet af spikes indenfor hvert vindue og dele igennem med t win. ζ angives nu som funktion af tiden, hvorved m udregnes ved, i m(t) = ξ ν ζ (t) = ξν ζ i (ξν ) (126) 2 i ζ (t) 2

57 6 Resultater 6 Resultater Jeg har set på Hopfield netværk med tre forskellige neurontyper: McCulloch- Pitts neuronet, Integrate-and-fire neuronet og Hodgkun-Huxley neuronet og tre forskellige netværksstrukture: Small-world, Modul-opbygget og Scale-free. I dette afsnit vil jeg gennemgå hvordan jeg har testet de forskellige neurontyper og netværksstrukture og hvilke resultater det gav. Simulationerne er programmet vha. Matlab 7. Kildekoden findes i appix I. I alle tests er et netværk med følge parametre blevet brugt: n = 64 p = 3 f = 0.2 q = 0.2 k = 2, 4,... 62 Antal neuroner. Antal gemte mønstre. Den gennemsnitlige procentdel af aktive neuroner i et mønster. Den gennemsnitlige procentdel af ændrede værdier. Det gennemsnitlige antal forbindelser til og fra et neuron. p = 3 er valgt, da ligning 106 siger, at hvis k = 6 kan et netværket maksimalt gemme p max = (2/π)k = 3.8 mønstre, uden at der begås nævneværdig fejl. Da jeg ønsker kun at undersøge, hvordan netværksstrukturen har indvirkning på overlappet, m, sættes p < p max for at undgå, at et for højt antal gemte mønstre skal have indvirkning på m. Det betyder, at for k = 2 og k = 4 kan resultaterne ikke benyttes. Dette gælder vel at mærke kun for et Hopfield netværk med McCulloch-Pitts neuroner. Ved brug af andre neurontyper bliver situationen anderledes. Udfra de tre hovedtyper af netværksstrukturer kan der skabes mange forskellige instanser. Jeg har valgt at restringere antallet af netværksinstanser til kun at indbefatte: Regular Small-world netværk med ρ = 0. SW 1 Small-world netværk med ρ = 0.10. SW 2 Small-world netværk med ρ = 0.20. SW 3 Small-world netværk med ρ = 0.30. Random Small-world netværk med ρ = 1. Mod4 Modul-opbygget netværk med n = 4 og ρ = 0.10. Mod8 Modul-opbygget netværk med n = 8 og ρ = 0.10. Mod16 Modul-opbygget netværk med n = 16 og ρ = 0.10. Scalefree Scale-free netværk. Alle netværksinstanserne er uorienterede netværk. Der har desværre ikke været tid til også at undersøge orienterede udgaver af netværksinstanserne. For hver netværksinstans og for hver værdi af k er et gennemsnitlig værdi af m beregnet. Dette er gjort på baggrund af r runder eller kørsler. For ikke at simulationerne skal tage alt for lang tid, har jeg valgt at benytte følge værdier af r, r = 200 r = 100 r = 50 Hopfield netværk med McCulloch-Pitts neuroner. Hopfield netværk med Integrate-and-fire neuroner. Hopfield netværk med Hodgkin-Huxley neuroner.

6.1 Karakterisering af netværksinstanserne 58 En kørsel foregår ved, at en netværksinstans skabes med et specifikt k, hvorefter p tilfældige mønstre gemmes i netværket. De p mønstre forsøges herefter genkt af netværket efter at være blevet ændret med parameteren q. Resultatet af en kørsel bliver gennemsnittet af de p m-værdier. 6.1 Karakterisering af netværksinstanserne I appix C findes figurer, der giver en beskrivelse af L,C,D og den totale axonlængde som funktion af k. Resultaterne er lavet på baggrund af gennemsnittet af 200 kørsler. Som det også blev påpeget i afsnit 3.8.2, har Small-world netværk en lav værdi af L, der falder, når ρ øges og en høj værdi af C, der øges, når ρ øges. Derudover er Small-world netværk karakteriseret ved at have en lav værdi af D og en lav total axonlængde, der begge øges, når ρ øges. For de modul-opbyggede netværk ses det af figurerne, at de har en lidt lavere værdi af L, det er tilfældet for Small-world netværkene. Tilgengæld har de en lavere værdi af C, som dog stadig er større for det tilfældige netværk. Modul-opbygningen gør, at graferne for C som funktion af k har et lokal maksimum, som ikke ses hos de andre netværkstyper. De modul-opbyggede netværk er også karakteriseret ved at have en moderat total axonlængde, som er mindre for det tilfældige netværk, og en lavere værdi af D, det var tilfældet for Small-world netværkene. Det Scale-free netværk er karakteriseret ved at have en høj total axonlængde, en lav værdi af L og en værdi af C, der ligger mellem Small-world netværkene og de modul-opbyggede netværk. Specielt for det Scale-free netværk er den ekstremt høje værdi af D, der skyldes at antallet af forbindelser pr. neuron (k ) følger en potensfordeling i stedet for en normalfordeling, som det er tilfældet for Small-world netværkene og de modul-opbyggede netværk (se afsnit 4.7). 6.2 Hopfield netværk med McCulloch-Pitts neuroner Et Hopfield netværk med McCulloch-Pitts neuroner er det klassiske netværk, som Hopfield [15] skabte i sin berømte artikel. I appix D findes figurer, hvor m er afbilledet som funktion af k for hver netværksinstans. Resultaterne af kørslerne for denne type Hopfield netværk er rimelig konstante, så m er beregnet ved blot at udregne gennemsnittet af kørslerne. Det interessante område på figurerne er, hvor k er lav, dog ikke så lav som k = 2 og k = 4, hvor resultaterne som før nævnt ikke kan benyttes. I dette område ses det, at det regulære netværk giver den laveste værdi af m og det tilfældige netværk tæt på den højeste værdi af m. For Small-world netværkene ses, at ρ ikke behøves at blive øget særligt meget for at forbedre væsentligt på værdien af m. Det bedste resultat opnås med det modul-opbyggede netværk Mod4. Det giver en værdi af m, der er lidt bedre det tilfældige netværk. Det Scale-free netværk klarer sig derimod mindre godt med en værdi af m, der er lig den af SW 2. 6.3 Hopfield netværk med Integrate-and-fire neuroner Til forskel fra McCulloch-Pitts neuronet indgår der i Integrate-and-fire neuronet en række parametre. Parameterne kan opdeles i to kategorier: de parametre der er estimeret i afsnit 4 og andre parametre:

59 6.3 Hopfield netværk med Integrate-and-fire neuroner Parametre estimeret i afsnit 4: V reset = 65mV V rest = 65mV V C = 50mV V A = 30mV R m = 90MΩ τ m = 30ms τ exc = 2ms τ inh = 12ms τ ref = 3ms Andre parametre: τ d = 10ms dt = 0.1ms t sim = 200ms t win = 50ms Udover disse parametre skal værdien af g ext og λ inh estimeres. På figur 41 ses m afbilledet som funktion af g ext og λ inh. Jeg har valgt følge værdi af g ext og λ inh, da det giver en fornuftigt værdi af m. g ext = 50mS/cm 2 λ inh = 2 1 m 0.9 0.8 0.7 150 100 G ext 50 1 2 3 4 λ inh 5 6 0 Figur 41: m som funktion af g ext og λ inh ved brug af Integrate-and-fire neuronet. Data er beregnet udfra gennemsnittet af 100 kørsler for hver værdi af g ext og λ inh ved brug af et fuldsammenhænge Hopfield netværk. I appix A ses, hvorledes en vellykket genkaldelse af et gemt mønster foregår og i appix B hvordan en fejlslagen genkaldelse ser ud. Begge tilfælde er angivet med en figur, der viser de 4 (= t sim /t win ) frekvensvinduer og en figur, der viser, hvornår de 64 neuroner udser en spike.

6.4 Hopfield netværk med Hodgkin-Huxley neuroner 60 De beregnede resultater ved brug af Integrate-and-fire neuronet viste sig at være meget svinge. For at udglatte resultaterne fjernedes derfor først alle outliers fra de 100 kørsler, før gennemsnittet af kørslerne blev beregnet. En kørsel x er en outlier, hvis x µ > 3σ (127) hvor µ er middelværdien af de 100 kørsler og σ er variansen. For at udglatte resultaterne yderligere udførte jeg herefter en regression på datapunkterne, der var lineær i parameterne. Det viste sig, at følge funktion gav en god tilpasning til datapunkterne. f(x) = a + bx + c log(x) (128) De elige resultater ved brug af Integrate-and-fire neuronet findes i appix E. Det ses, at der her er stor sammenfald med resultaterne ved brug af McCulloch- Pitts neuronet. Forskellen mellem de forskellige netværksinstanser er dog mindre. Mod4 giver igen et resultat, der er lige så godt som det tilfældige netværk. Lidt bemærkelsesværdigt er det, at SW 2 klarer sig dårligere SW 1. Hvorfor det sker er et åbent spørgsmål. Det Scale-free netværk klarer sig igen mindre godt. 6.4 Hopfield netværk med Hodgkin-Huxley neuroner Som det var tilfældet ved brug af Integrate-and-fire neuronet kan parameterne ved brug af Hodgkin-Huxley neuronet også opdeles i to kategorier: Parametre estimeret i afsnit 4: V rest = 65mV E Na = 50mV, E K = 77mV, E l = 54.5mV m rest = 0.0526 h rest = 0.5940 n rest = 0.3186 g Na = 120mS/cm 2 g K = 36mS/cm 2 g l = 0.3mS/cm 2 V A = 30mV V C = 50mV τ exc = 2ms τ inh = 12ms Andre parametre: τ d = 10ms dt = 0.05ms t sim = 200ms t win = 50ms Figur 42 angiver m som funktion af g ext og λ inh ved brug af Hodgkin-Huxley neuronet. Jeg har her valgt at benytte, Gext = 1.25mS/cm 2 λ inh = 25

61 6.4 Hopfield netværk med Hodgkin-Huxley neuroner 1 0.8 m 0.6 0.4 50 40 30 λ inh 20 10 0 0.5 1 1.5 G ext 2 Figur 42: m som funktion af g ext og λ inh ved brug af Hodgkin-Huxley neuronet. Data er beregnet udfra gennemsnittet af 50 kørsler for hver værdi af g ext og λ inh ved brug af et fuldsammenhænge Hopfield netværk. Hodgkin-Huxley neuronet udser, til forskel fra Integrate-and-fire neuronet, en enkelt spontan spike ved I m mindre 0.6. Den spontane spike har en negativ indvirkning på netværket, derfor indføres en konstant baggrundsstrøm, I grd = 0.6nA (129) så den spontane spike undgås. Der går lidt tid inden I grd stabiliserer neuronet, så indføring af eksterne ekscitatoriske input startes først ved, t start = 10ms (130) Også ved brug af Hodgkin-Huxley neuronet er det nødvigt at fjerne outliers fra kørslerne og udføre regression på gennemsnitsværdierne af kørslerne, inden de elige resultater ligger klar. Et god tilpasning til datapunkterne opnåedes ved brug af følge linære funktionen: f(x) = a + bx + cx 2 + dx 3 + ex 4 + f log(x) (131) De elige resultater findes i appix F. Området, der er interessant at se på, ligger mellem k = 20 og k = 50. For k < 20, fungerer netværket så dårligt, at resultaterne ikke er brugbare. Det er bemærkelsesværdigt at se, at SW 3 klarer sig dårligere SW 2 og at SW 1 giver et dårligere resultat den regulære graf. Det kan skyldes usikkerhed i beregningerne, men som ved brug af Intergrateand-fire neuronet er dette et åbent spørgsmål. Alle de modul-opbyggede netværk klare sig her bedre det tilfældige netværk, hvilket er ret bemærkelsesværdigt. Det Scale-free netværk klarer sig omtrent på samme måde som ved brug af de to andre neurontyper.

6.5 Konklusion på resultaterne 62 6.5 Konklusion på resultaterne Figur 43 giver en sammenligning af resultaterne for de tre forskellige neurontyper ved brug af den tilfældige netværksstruktur. Det kan udfra figuren konkluderes, at en mere realistisk neurontype fører til en dårligere hukommelse. På figur 43 er det med et X, angivet hvor netværksinstanserne for de tre neurontyper krydser hinanden. For n gåe mod uelig giver X en indikation af den minimale værdi af k, hvis der skal kunne gemmes p = 3 mønstre i netværket. Det ses at k skal være større ved de mere realistiske neurontyper, for at dette er tilfældet. 1 0.9 0.8 m 0.7 X X X 0.6 0.5 0.4 MP Random IF Random HH Random 10 20 30 40 50 60 k Figur 43: m som funktion af k for de tre neurontyper med et tilfældigt netværk. X giver en indikation af, hvor lille k kan være, hvis der i netværket stadig skal kunne gemmes p = 3 mønstre for n gåe mod uelig. Det interessante område på figurerne er, hvor k er lav, men dog stadig s- tor nok til at netværket kan gemme p = 3 mønstre, når n går mod uelig. Af netværksinstanserne klarer Mod4 sig bedst. Mod4 giver en lavere total axonlængde, for det tilfældige netværk og opretholder en værdi af m, der er ligeså god (McCulloch-Pitts og Integrate-and-fire neuronet) og dog bedre (Hudgkin-Huxley neuronet) det tilfældige netværk. Small-world netværkene klarer sig også forholdvis godt. De giver en meget lav total axonlængde, men har tilgengæld ikke en værdi af m, der helt kan måle sig med Mod4 og det tilfældige netværk. Det Scale-free netværk klarer sig dårligst. Ved brug af alle tre neurontyper opnår det Scale-free netværk kun en middelmådig værdi af m og det med en høj total axonlængde.

63 7 Optimering af netværksstrukturen 7 Optimering af netværksstrukturen Det fremgår klart af resultaterne fra afsnit 6, at strukturen af Hopfield netværket spiller en rolle for resultatet af overlappet. Den bedste struktur blev opnået med det modul-opbyggede netværk (Mod4), da det giver en lige så god værdi af m som det tilfældige netværk men med mindre total axonlængde. Spørgsmålet er nu om denne struktur er den optimale? For at finde ud af det, vil jeg benytte en genetisk algoritme til at lede efter den optimale netværksstruktur. Først vil jeg kortfattet gennemgå det generelle princip i en genetisk algoritme, hvor Goldberg [12] er brugt som reference, og herefter vil jeg redegøre for den genetiske algoritme, jeg har konstrueret. 7.1 Genetiske algoritmer Genetiske algoritmer er inspireret af biologien og biologiens tilpasningsevne. Genetiske algoritmer benyttes ofte til at løse problemer, hvor man ikke k- er grundlaget på forhånd eller til NP hårde problemer, der kan tage meget lang tid at løse på traditionel vis. Genetiske algoritmer kan sammenlignes med søgefunktioner, der starter et tilfældigt sted i et søgefelt og derefter søger i retninger, hvor resultaterne forbedres. For en genetiske algoritme vil det tilfældige startsted være en samling af individer, P 0, udvalgt fra et søgerum Ω. En transitionsregel τ vil fra P i producerer en anden samling af individer P i+1. τ benyttes iterativt, så der produceres en sekvens af individsamlinger, P 0 τ P 1 τ P 2 τ... (132) P 0 refereres til som den initiale population, P 1 som den første population (eller generation), P 2 som den anden population (eller generation) osv. Algoritmen standses, når en standsningsbetingelse er opfyldt. Den klassiske repræsentation af et individ i en genetisk algoritme består i en dnastreng. Søgerummet bliver da Ω = {C, A, T, G} {C, A, T, G} (133) En mere praktisk repræsentation opnås ved at benytte binære strenge, så søgerummet bliver, Ω = Z 2 Z 2 (134) Det har vist sig at en transitionsregel, der giver gode resultater i praktiske problemer, er sammensat af tre operatorer: selektion, kombination og mutation. Pseudocoden for en genetisk algoritme kan med de tre operatorer opskrives på følge måde: Algoritme 1 Pseudokode for genetisk algoritme 1. generation=0 2. generer initial population 3. while not standsningsbetingelse 4. do generation = generation+1 5. selektion 6. kombination 7. mutation

7.1 Genetiske algoritmer 64 7.1.1 Selektion Som ordet antyder går selektion ud på at vælge de individer fra en generation, der skal indgå i produktionen af den næste generation. Til det formål er det nødvigt at kunne bedømme et individ. Hertil benyttes en fitnessfunktion f : Ω R. Fitnessfunktionen giver hvert individ en individuel fitnessværdi, der kan benyttes i selektionen. Fitnessværdien kan benyttes på flere måder. En fitness proportional selektion bygger på det princip, at individer skal have en sandsynlighed for at overleve, der er proportional med deres fitnessværdi. Individer med bedre fitnessværdi har derfor en bedre mulighed for at overleve individer med en ringere fitnessværdi. Individerne kan også sorteres efter deres fitnessværdi og tildeles en rangeringsværdi, der angiver sandsynligheden for at individet vil overleve til næste generation. Et individ med høj rangering vil have større sandsynlighed for at overleve et individ med lav rangering. Dette kaldes for linær rangeringsselektion. Med hvert individ tildelt en sandsynlighed for at overleve kan der benyttes flere forskellige selektionsstrategier til at selektere de individer, der skal skabe den næste generation. En meget benyttet strategi er roulettehjulsselektion, hvor hvert individ tildeles en del af et roulettehjul, efter hvor stor sandsynlighed individet har for at overleve. Rouletten lander tilfældigt, så de individer med størst sandsynlighed for at overleve vil have den største chance for at blive selekteret. En alternativ selektionsstrategi er rest selektion, hvor det forventede antal af individer i den næste generation udregnes for hvert individ som, e i = p i N, (135) hvor p i er sandsynligheden for at individet overlever og N er antallet af individer i næste generation. Heltalsdelen af e i angiver det sikre antal af det i te individ i den næste generation og restdelen af e i indgår i en roulettehjulsselektion om de restere pladser. Der findes flere alternative selektionsmetoder. Målet med alle selektionsmetoderne er, at den samlede fitnessværdi for de valgte individer skal være bedre den samlede fitnessværdi for den nuvære generation. Hvilket også kan skrives som, M t=1 f(t) N t=1 f(t) (136) M N hvor M er antallet af individer i den nuvære generation, og N er antallet af valgte individer til næste generation. Det vil sige, at der er fremgang for algoritmen, indtil lighedstegnet bliver fremherske i ligningen. 7.1.2 Kombination Når selektionen af individer til den næste generation er sket, har det vist sig at være en god ide at kombinere nogle af individerne for at opnå nye individer. Ideen er igen hentet fra biologien, hvor forældres dna kombineres, når der skabes børn. Kombinationen kan foregå på forskellig måde. Ved et-punktskombination vælges to forældreindivider, og der vælges et fælles skæringspunkt, hvorefter den ene del byttes over med den anden, og der skabes to nye individer. Ved at forestille sig strengene for forældreindividerne som cirkler, er det muligt at lave to-punktskombination. To punkter vælges på cirklen, så halvdelene kombineres. Et-punktskombination er også en to-punktskombination, hvor det ene

65 7.2 Genetisk algoritme til bestemmelse af netværksstrukturen af skæringspunkterne blot er fastsat til at være der, hvor erne af strengene mødes. De to kombinationsstrategier er illustreret på figur 44. Der kan selvfølgelig også benyttes flere skæringspunkter eller andre måder at kombinere delene. 1 punktskombination 2 punktskombination Figur 44: Et-punkts- og to-punktskombination. 7.1.3 Mutation For at undgå at algoritmen havner i et lokalt maksimum, kan små ændringer (mutationer) laves på dele af individerne. Individerne bliver derved flyttet i søgerummet, så et bredere udsnit af søgerummet kan undersøges. Mutationsmetoderne kan variere ved hvor mange individer og hvor stor en del af individet, der muteres. Ved uniform mutation angiver mutationsraten, hvor stor en andel af individet, der ønskes muteret. De udvalgte dele af individet bliver tildelt en tilfældig værdi indenfor søgerummet. Gausisk mutation addere en tilfældigt værdi til alle dele af individet. Den tilfældige værdi er taget fra en gaussfordeling centreret omkring 0 og med en varians styret af en skaleringsparameter. Mutationsmetoderne kan også konstrueres, så mutationen aftager med antallet af generationer, ved fra generation til generation at nedjustere mutationsraten eller skaleringsparameteren. Dette kan sammenlignes med en form for simuleret udglødning. 7.2 Genetisk algoritme til bestemmelse af netværksstrukturen Første skridt i konstruktionen af den genetisk algoritme er at få netværket repræsenteret som en binær streng. Hastigheden af den genetiske algoritme afhænger af størrelsen på den binære streng. Jo kortere den binære streng er, jo mindre bliver søgerummet. I afsnit 6 fremgik det, at de bedste uorienterede netværksstrukturer har et gennemsnitligt antal forbindelser pr. neuron (k), der er normalfordelt. Denne viden kan benyttes til at gøre søgerummet mindre. Algoritmen søger da ikke efter netværk, der med sikkerhed giver et dårligt resultat. Søgerummet består således kun af uorienterede netværk, hvor alle neuroner udser k/2 forbindelser, hvilket giver et netværk med et normalfordelt gennemsnitligt antal forbindelser pr. neuron på k (se afsnit 4.7). Alle neuronerne

!!!!! " " " " " % & & 7.2 Genetisk algoritme til bestemmelse af netværksstrukturen 66 i netværket bliver nummeret fra 0 til n 1. Ved at vælge n = 2 i, i N kan nummereringen ske ved binære tal, hvor enhver kombination af 0 og 1 vil angive en bestemt neuron. Den binære streng, der skal repræsentere netværket, kan konstrueres ved først at skrive de binære tal for den første neurons k/2 forbindelser, derefter den anden neuron osv. Repræsentationen kan både anves for orienterede netværk. På figur 45 er der illustreret et eksempel på et orienteret netværk med n = 2 3 = 8 og k = 4. 4 5 # # # # $ $ # $ $ # $ % %%%% ' ( ' ( ' ( $ 3 2 6 7 1 0 Neuron Forbindelser 0 100,111 1 101,110 2 101,111 3 000,001 4 010,011 5 011,100 6 010,101 7 001,110 Streng: 100111101110101111000001010011011100010101001110 Figur 45: Repræsentation af data i den genetiske algoritme. Antallet af neuroner i netværket skal være n = 2 i, i N, her n = 8 og k = 4. Hver neuron får tildelt et binært nummer. Den binære streng kan konstrueres ved, først at opskrive det binære nummer på de neuroner den første neuron har udst forbindelser til, derefter den anden osv. Næste skridt er at bestemme fitnessfunktionen. Her opstår imidlertid et problemer, da det ønskes at optimere på både overlappet af mønstrene, m (se afsnit 5.11) og den totale axonlængde af netværket samtidigt. Der er tale om et multiobjektivt problem, hvor det ikke er muligt at finde en fitnessfunktion direkte. Problemet kan løses ved at benytte Pareto optimalitet, der giver en rangering af individerne, så lineær rangeringsselektion kan benyttes. For to punkter x og y siges x at være delvis mindre y, symboliseret ved x < p y, hvis følge betingelse er overholdt: x < p y ( i : x i y i ) ( i : x i < y i ) (137) Under denne forudsætning siges punktet x at dominere punktet y. Hvis et punkt ikke er domineret af et andet punkt, siges det at være ikke-domineret. Ved at lade et punkt (m, w) betegne m-værdien og den totale axonlængde for et netværk, kan en rangering af netværkerne skabes. Først får alle de ikkedominerede punkter en rang på 1, herefter fjernes punkterne og blandt de restere punkter får de nye ikke-dominerede punkter en rang på 2. Processen fortsætter til hele populationen er blevet tildelt en rang. De punkter med højest rang skal have den største sandsynlighed for at overleve selektionen. Som selektionsstrategi har jeg valgt at benytte den simple roulettehjulsselektion. Sandsynligheden p i, for at det i te individ overlever, kan findes udfra individets rang r i ved først at ve rangordningen og derefter dele med populationens samlede rang, p i = maxrang r i + 1 rj (138)

67 7.3 Resultater af den genetiske algoritme hvor maxrang er den største rang givet i populationen. Den nye generation konstrueres ud fra de valgte individer. E af individerne i den nye generation vil blive overført direkte fra de udvalgte individer som eliten af den gamle generation, K individer vil blive konstrueret gennem kombination af de udvalgte individer og M individer vil være muterede individer. Hvis P er populationsstørrelsen, skal P = E + K + M. Jeg har valgt at benytte to-punktskombination og uniform mutation. Initialpopulationen bliver konstrueret ved, at de k/2 forbindelser for hver neuron vælges tilfældigt. Standsningsbetingelsen bliver fastsat ved antallet af generationer, som algoritmen skal gennemløbe. 7.3 Resultater af den genetiske algoritme Det var målet at optimere m og den totale axonlængde samtidig vha. pareto optimalitet, så jeg opnår et netværk med en høj værdi af m og en lav total axonlængde. Det viste sig dog hurtigt, at det var alt for tidskræve at benytte m som optimeringsparameter. Selv hvis jeg benyttede McCulloch-Pitts neuronet og antallet af kørsler blev nedsat, var det for beregningstung en opgave, at skulle udregne m for alle individer i hver generation. Ydermere er m ikke en stabil parameter, og slet ikke hvis antallet af kørsler til beregning af m nedsættes voldsomt. Problemet blev løst ved at se på karakteriseringen af de netværkstyper, der gav en høj værdi af m (se afsnit 6.1). Et godt netværk er karakteriseret ved en lav værdi af L, en høj værdi af C og en lav værdi af D. Under forsøg med den genetiske algoritme viste det sig, at en høj værdi af C ikke var et umiddelbart krav, da en lav værdi af D, vil holde C på et fornuftigt niveau. Resultatet blev, at den genetiske algoritme minimerer de tre værdier: L, D og den totale axonlængde. Den genetiske algoritme er konstrueret på baggrund af Matlabs Genetic Algorithm and Direct Search Toolbox 1.0.1, hvor jeg har tilføjet brugen af pareto-optimalitet. Algoritmen optimerer på et uorienteret netværk og benytter den beskrevne selektions-, kombinations-, og mutationsstrategi med følge parametre: P = 20 E = 4 K = 13 M = 3 (med mutationsrate=0.01) I appix G ses, hvordan L,D og den totale axonlængde aftager med antallet af generationer ved optimering af et netværk, hvor n = 64 og k = 8. Graferne er konstrueret ved at afbillede L, D og den totale axonlængde for det bedste individ i hver generation. Netværkesstrukturen for det bedste individ efter 40000 generationer er også afbilledet i appix G. Det er svært at sige noget konkret om, hvilken netværkstype den falder ind under. Det ses dog klart, at der er brug for lange forbindelser for at kunne opnå den lave værdi af L. Tabel 1 giver en sammenligning af det optimerede netværk, M od4 og det tilfældige netværk for n = 64 og k = 8. Det optimerede netværk klarer sig her langt bedre nogen af de andre netværksinstanser. Det optimerede netværk opnår en lige så høj værdi af m ved brug af McCulloch-Pitts neuronet, som det er tilfældet for

7.3 Resultater af den genetiske algoritme 68 Mod4 og med en langt mindre total axonlængde. Jeg ville gerne have udregnet en værdi af m ved brug af Integrate-and-fire neuronet og Hodgkin-Huxley neuronet, men det ville kræve optimering af et netværk med minimum hhv. k = 12 og k = 22, hvorved søgerummet ville blive meget stort. Derfor har jeg valgt at holde mig til McCulloch-Pitts neuronet i udregningen af m. Netværk m L C D total (McCulloch-Pitts) axonlængde Optimeret 0.9253 2.1548 0.1217 0.4375 389.44 Mod4 0.9215 2.2160 0.1707 0.5739 486.20 Random 0.9190 2.1847 0.1138 1.5153 627.36 Tabel 1: Sammenligning af det optimerede netværk med Mod4 og Random for n = 64 og k = 8. Det kan konkluderes, at det er muligt ved brug af en evolutionær algoritme at optimere på netværksstrukturen. Resultatet er ikke så overraske, da det også er den måde, den menneskelige hjerne over mange generationer er blevet udviklet til det stadie, den befinder sig på i dag. Det mest overraske resultat er, at blot ved at minimere på værdien af L og D kan en høj værdi af m opnås. Værdien af D har således større betydning værdien af C i bestræbelserne på at opnå den optimale netværksstruktur. Den optimale netværkstype skal derfor være karakteriseret ved en lav værdi af L og D. Det lykkedes ikke at bestemme en struktur for det optimerede netværk med k = 8. De mange forbindelser gør det svært at overskue strukturen. I appix G ses resultatet af en optimering af et netværk med k = 6. Håbet var, at de færre forbindelser ville give et bedre overblik over strukturen, men heller ikke i dette tilfælde er det muligt at sige noget konkret om netværksstrukturen.

69 8 Diskussion af forbedringer 8 Diskussion af forbedringer Det er ikke let at konstruere en biologisk associativ hukommelse. Specielt det store antal parametre besværliggør processen. De fleste af parameterne er forsøgt estimeret udfra biologiske observationer, men de beregningstunge simulationer har gjort, at der kun er benyttet et netværk beståe af n = 64 neuroner. Det indlyse spørgsmål er, hvordan resultaterne tager sig ud, hvis n øges? Et større antal neuroner vil være langt mere realistisk. Ved at øge antallet af neuroner vil det også være muligt at få resultater for en lavere tætheden af forbindelser (α). Ved brug af McCulloch-Pitts neuronet kan der for n = 64 kun opnås resultater ned til k = 6 eller α = k/n = 0.09, hvor α hos mus er observeret til 0.001 (se afsnit 4.7). I afsnit 4.7 blev det beskrevet hvordan både orienterede og uorienterede netværksstrukture blev konstrueret. Der har desværre kun været tid til at implementere de uorienterede netværksstrukture. En mere biologisk realistisk netværksstruktur vil kunne opnås ved at benytte orienterede netværksstrukture. Som indlæringregl valgte jeg at benytte Kovarians-reglen. Det vil derfor være interessant at se hvilke resultater, der vil fremkomme, hvis der benyttes en mere realistisk indlæringsregl som f.eks BCM-reglen. Det lave antal af neuroner gjorde at antallet af mønstre måtte holdes lavt (p = 3) for at få brugbare resultater. I den forbindelse kunne det være interessant at se, hvordan netværkene reagerer, hvis p bliver forøget både med og uden en samtidig forøgelse af n. I konstruktionen af mønstrene benyttede jeg en lav værdi af f for at opnå en lav neuronaktivitet. Hvordan vil netværkene reagere, hvis f blev ændret? For McCulloch-Pitts neuron viste jeg i afsnit 5.4, at p max kan findes som funktion af hhv. n, f og k. Kan ligne sammenhænge findes for Integrate-and-fire neuronet og Hogdkin-Huxley neuronet? Som det ses, er der en lang række spørgsmål, der stadig savner en forklaring. Det alt overskygge spørgsmål er dog, om den overordnede dynamik bag Hopfield netværket er realistisk? Er det virkelig på den måde den associative hukommelse fungerer? Jeg har i dette speciale ikke ændret på grundideen i Hopfield netværket, men kun på neurontypen og netværksstrukturen. Gennem tiden har der dog været mange andre bud på varianter af Hopfield netværket. Johansson et al. [18] har undersøgt muligheden for at lade de enkelte enhed i netværket være minikolonner (se afsnit 3.8.3) og inddele minikolonnerne i moduler kaldet hyperkolonner. En winner-takes-all opdateringsregl skal da sørge for, at kun en af minikolonnerne er aktiv indenfor hver hyperkolonne. De aktive minikolonner vil da angive et mønster. Johansson et al. viste, at denne opbygning giver en bedre hukommelse, men om opbygningen er mere biologisk realistisk, er ikke til at sige på nuvære tidspunkt. Også O Kane og Traves [24] har undersøgt en variant af Hopfield netværket. Hvert modul i netværket er her ansvarlig for en bestemt egenskab (feature) ved mønstrene. En egenskab fra hvert modul giver da det samlede mønster. Denne opbygning gør det muligt at gøre inputtet fra lange forbindelser mellem modulerne mindre betydningsfulde inputtet fra korte forbindelser indenfor modulerne. Biologiske observationer støtter denne opbygning, da det er observeret, at synapser fra neuroner i andre moduler er hæftet til de fjerneste dele af dritterne. Levy et al. [21] har arbejdet videre med denne opbygning og indført,

8 Diskussion af forbedringer 70 at et mønster kan bestå af et variabelt antal egenskaber (features). Det fremgår tydeligt af denne diskussion, at computational neuroscience s- tadig er et meget uudforsket område. Meget forskning indenfor området retter sig i øjeblikket mod at forstå, det input de neurale netværket skal behandle. En bedre forståelse af indputtet vil måske kaste mere lys over, hvordan de neurale netværk er opbygget.

71 9 Konklusion 9 Konklusion Med udgangspunkt i Hopfields netværk har jeg konstrueret et mere biologisk associativt netværk. Integrate-and-fire neuronet og Hodgkin-Huxley neuronet er blevet benyttet i stedet for McCulloch-Pitt neuronet, som bliver benyttet i Hopfields klassiske netværk. Resultatet bliv, at de mere biologiske realitiske neurontyper giver en dårligere associativ hukommelse. Man kan så stille sig selv det spørgsmål, om Hopfield netværket overhovedet er en realitisk model af den associative hukommelse? Udover at ændre på neuronmodellen blev Hopfield netværket også gjort mere biologisk realistik ved at ændre på netværksstrukturen, så netværket ikke længere var fuldt sammenhænge. Tre mulige netværksstrukturer blev undersøgt: Watts og Strogatzs Small-world netværk, Barabási og Alberts Scale-free netværk og et modulopbygget netværk, jeg selv konstruerede, der skal simulere modulopbygningen i cortex. Det var min plan både at lave en orienteret og en uorienteret version af netværkstyperne, men der var kun tid til at konstruere den uorienterede version. Det viste sig, at det modul-opbyggede netværk (M od4) klarede sig bedst. Mod4 gav en god hukommelse ved brug af en lav total axonlængde. Smallworld netværkene gav en meget lav total axonlængde men på bekostning af en lidt dårligere hukommelse. Det Scale-free netværk klarede sig dårligst med en middelmådig hukommelse og en høj total axonlængde. Det var interresant at se, at de modul-opbyggede netværk klarede sig langt bedre de andre netværkstyper ved brug af det mere biologiske Hodgkin- Huxley neuron. Det kunne type på at det modulopbygningen af cortex ikke er helt tilfældig. Ved at benytte en genetiske algoritme ville jeg undersøge hvilken netværksstruktur, der ville fremkomme ved at maksimere på kvaliteten af hukommelsen og minimere den totale axonlængde samtidig. Jeg fandt hurtigt ud af, at der er tale om et multiobjektivt problem, som kan løses ved brug af Pareto-optimalitet. At bestemme kvaliteten af hukommelsen skabte dog problemer, da det tager meget lang tid. I stedet for at maksimere på kvaliteten af hukommelsen fik jeg den ide at optimere på karakteristiske værdier for netværket, der indirekte vil maksimere kvaliteten af hukommelsen. Jeg fandt at ved at minimere på den karakteristiske vejlængde (L) og den gennemsnitlige afvigelse af det gennemsnitlige antal forbindelser pr. neuron (D) kunne jeg opnå at kvaliteten af hukommelsen blev høj ved brug af McCulloch- Pitt neuronet. Den lave værdi af D gør, at alle neuronerne får lige mulighed for at kommunikere med de andre neuroner og den lave værdi af L gør at kommikationsvejen bliver kort. Begge kriterier synes at skulle være opfyldt for at opnå en god hukommelse. Den genetiske algoritme minimerede således på L, D og den totale axonlængde. Resultatet blev et netværk, der havde en bedre hukommelse M od4 og med en lavere total axonlængde. Jeg ville gerne have kunnet udtale mig om strukturen af det optimere netværk, men netværket synes ikke at have en åbenlys struktur.

LITTERATUR 72 Litteratur [1] Ahmed, B. Anderson et al.: Estimates of the net excitatory currents evoked by visual stimulation of identified neurons in cat visual cortex Cerebral Cortex 8:462-476 [2] Anastasia, Anishchenko et al.: Autoassociative memory retrival and spontaneous activity bumps in small-world networks of integrate-and-fire neurons 3. March 2004 [3] Barabási, Albert-László & Albert, Réka: Emergence of scaling in random networks Science vol 286, 15 october 1999 [4] Braitenberg, V. & Schüz, A.: Cortex: Statistics and geometry of neural connectivity Springer-Verlag, 1998 [5] Byrne, John H. & Roberts, James L.: From molecules to networks, An introduction to cellular and molecular neuroscience Academic Press, 2004 [6] Churchland, Patricia S. & Sejnowski, Terrence J.:The Computational Brain MIT Press, 1994 [7] Dayan, Peter & Abbott, L.F.: Theoretical neuroscience, Computational and mathematical modeling of neural systems MIT Press, 2001 [8] Destexhe, Alain et al.: Synthesis of models for excitable membranes, synaptic transmission and neuromodulation using a common kinetic formalism Journal of Computational Neuroscience 1:195-230 [9] Erdös, P. & Rényi, A.:On random graphs Publ. Math. debrecen, 6:290-297, 1959 [10] Floyd, R.W.:Algorithm 97: Shortest Path Communications of the ACM, vol. 5, pp. 345, 1962 [11] Földiák P. & Young M.P.:Handbook of brain theory and neural networks Ed. M. A. Arbib, MIT Press, 1995, pp. 895 [12] GoldBerg, David E.: Genetic Algorithms, in search, optimization and machine learning Addison-Wesley, Reprinted with corrections January, 1989 [13] Hasegawa, Hideo:An associative memory of Hodgkin-Huxley neuron networks with Willshaw-type synaptic couplings 11 April, 2004 [14] Hertz, John et al.: Introduction to the theory of neural computation Addison- Wesley, 1991 [15] Hopfield J.J.:Neural networks and physical systems with emergent collective computational abilities Proc. Natl. Acad. Sci. USA, vol. 79, pp. 25542558, April 1982 [16] Izhikevich, Eugene M.: Which model to use for cortical spiking neurons? IEEE trans. on neural networks (special issue on temporal coding), September 2004 [17] Jacobsen, Rasmus Kragh:Da tanken flyttede ind i hjernen Politiken, 6 februar, 2005

73 LITTERATUR [18] Johansson, Christopher et al.:attractor neural networks with hypercolumns [19] Kincaid, David & Cheney, Ward:Numerical Analysis Second Edition, Brooks/Cole Publishing Company, 1996 [20] Labiouse, Christophe L. et al.:impact of connectivity on the memory capacity and the retrival dynamics of Hopfield-type networks 2002 [21] Levy, Nir et al.:associative memory in a multimodual network Neural computation 11, 1717-1737, 1999 [22] Lytton, William W.: From Computer to Brain, foundations of computational neuroscience Springer-Verlag, 2002 [23] Mountcastle, Vernon B.: The columnar organization of the neocortex Brain,120,701-722, Oxford University Press, 1997 [24] O Kane, Dominic & Treves, Alessandro:Short- and long-range connections in autoassociative memory J. Phys. A: Math. Gen 25, 5055-5069, 1992 [25] Stephan, Klaas E. et al.: Computational analysis of functional connectivity between areas of primate cerebral cortex Phil. Trans. R. Soc. Lond. B 355, 111-126, 2000 [26] Sørensen, Michael: En introduktion til sandsynlighedsregning HCØ Tryk, 2000 [27] Duncan J. Watts & Steven H. Strogatz: Collective dynamics of Small-world networks Nature vol. 393, 4 june 1998 [28] Xiang, Z. et al. Quantal mechanism of long-term potentiation in hippocampal mossyfiber synapses. Journal of Neurophysiology, Vol 71, Issue 6 2552-2556, 1994 Sekundær litteratur [29] Bohland, Jason W. & Minai, Ali A.:Effecient associative memory using smallworld architecture [30] Hopfield, J.J.:Pattern recognition computation using action potential timing for stimulus representation Nature, vol. 376, 6 July 1995 [31] Jaramillo, Santiago & Pereira, Francisco:Recognition of dynamic patterns with a network of spiking neurons [32] McGraw, Patrick N. & Menzinger, Michael:Topology and computational performance of attractor neural networks Physical review E 68, 047102, 2003 [33] Olesen, Jens M.:Hvor verden dog er lille? Aktuel naturvidenskab, 4, 2003 [34] Salah, A. A. & Köksal F.:Brain-like networks modeling with small world random graph models [35] Torres, J.J. et al.:influence of topology on the performance of a neural network Neurocomputing 58-60, 229-234, 2004

A En god genkaldelse 74 A En god genkaldelse ξ ν Hz Hz Hz Hz ζ 400 200 0 400 200 0 400 200 0 400 200 0 10 20 30 40 50 60 10 20 30 40 50 60 10 20 30 40 50 60 10 20 30 40 50 60 10 20 30 40 50 60 10 20 30 40 50 60 Neuron nummer Figur 46: Genkaldelse af mønstret µ ν udfra inputmønstret ζ vha. frekvenskodning. Simulationstiden er 200 ms og vinduesstørrelsen 50 ms. 60 50 Neuron nummer 40 30 20 10 0 50 100 150 200 tid (ms) Figur 47: Fyringstidspunkter for de n = 64 neuroner ved genkaldelse af mønstret µ ν udfra inputmønstret ζ

75 B En dårlig genkaldelse B En dårlig genkaldelse ξ ν 10 20 30 40 50 60 ζ Hz Hz Hz Hz 400 200 0 400 200 0 400 200 0 400 200 0 10 20 30 40 50 60 10 20 30 40 50 60 10 20 30 40 50 60 10 20 30 40 50 60 10 20 30 40 50 60 Neuron nummer Figur 48: Genkaldelse af mønstret µ ν udfra inputmønstret ζ vha. frekvenskodning. Simulationstiden er 200 ms og vinduesstørrelsen 50 ms. 60 50 Neuron nummer 40 30 20 10 0 50 100 150 200 tid (ms) Figur 49: Fyringstidspunkter for de n = 64 neuroner ved genkaldelse af mønstret µ ν udfra inputmønstret ζ.

C Karakterisering af netværksinstanserne 76 C Karakterisering af netværksinstanserne C.1 Den totale axonlængde som funtion af k 6000 5000 total axonlængde 4000 3000 2000 1000 0 Regular Random SW1 SW2 SW3 10 20 30 40 50 60 k Figur 50: Den totale axonlængde som funktion af k for netværksinstanserne: Random, Regular, SW 1, SW 2 og SW 3. 6000 5000 total axonlængde 4000 3000 2000 1000 0 Regular Random Mod4 Mod8 Mod16 10 20 30 40 50 60 k Figur 51: Den totale axonlængde som funktion af k for netværksinstanserne: Random, Regular, Mod4, Mod8 og Mod16.

77 C.2 L som funktion af k 6000 5000 total axonlængde 4000 3000 2000 1000 0 Regular Random Scale free 10 20 30 40 50 60 k Figur 52: Den totale axonlængde som funktion af k for netværksinstanserne: Random, Regular og Scale free. C.2 L som funktion af k 18 16 14 Regular Random SW1 SW2 SW3 12 10 L 8 6 4 2 0 10 20 30 40 50 60 k Figur 53: Den karakteristiske vejlængde (L) som funktion af k for netværksinstanserne: Random, Regular, SW 1, SW 2 og SW 3.

C.2 L som funktion af k 78 18 16 14 Regular Random Mod4 Mod8 Mod16 12 10 L 8 6 4 2 0 10 20 30 40 50 60 k Figur 54: Den karakteristiske vejlængde (L) som funktion af k for netværksinstanserne: Random, Regular, Mod4, Mod8 og Mod16. 18 16 14 Regular Random Scale free 12 10 L 8 6 4 2 0 10 20 30 40 50 60 k Figur 55: Den karakteristiske vejlængde (L) som funktion af k for netværksinstanserne: Random, Regular og Scale free.

79 C.3 C som funktion af k C.3 C som funktion af k C 1 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0 Regular Random SW1 SW2 SW3 10 20 30 40 50 60 k Figur 56: Klyngekoefficienten (C) som funktion af k for netværksinstanserne: Random, Regular, SW 1, SW 2 og SW 3. C 1 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0 Regular Random Mod4 Mod8 Mod16 10 20 30 40 50 60 k Figur 57: Klyngekoefficienten (C) som funktion af k for netværksinstanserne: Random, Regular, Mod4, Mod8 og Mod16.

C.4 D som funktion af k 80 C 1 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0 Regular Random Scale free 10 20 30 40 50 60 k Figur 58: Klyngekoefficienten (C) som funktion af k for netværksinstanserne: Random, Regular og Scale free. C.4 D som funktion af k 2.5 2 Regular Random SW1 SW2 SW3 1.5 D 1 0.5 0 10 20 30 40 50 60 k Figur 59: Den gennemsnitlige afvigelse fra k (D), som funktion af k for netværksinstanserne: Random, Regular, SW 1, SW 2 og SW 3.

81 C.4 D som funktion af k 2.5 2 Regular Random Mod4 Mod8 Mod16 1.5 D 1 0.5 0 10 20 30 40 50 60 k Figur 60: Den gennemsnitlige afvigelse fra k (D), som funktion af k for netværksinstanserne: Random, Regular, Mod4, Mod8 og Mod16. 9 8 7 Regular Random Scale free 6 5 D 4 3 2 1 0 10 20 30 40 50 60 k Figur 61: Den gennemsnitlige afvigelse fra k (D), som funktion af k for netværksinstanserne: Random, Regular og Scale free.

D Hopfield netværk med McCulloch-Pitts neuroner 82 D Hopfield netværk med McCulloch-Pitts neuroner 1 0.95 0.9 0.85 0.8 m 0.75 0.7 0.65 0.6 0.55 Regular Random SW1 SW2 SW3 5 10 15 20 25 30 k Figur 62: m som funktion af k for netværksinstanserne: Random, Regular, SW 1, SW 2 og SW 3 ved brug af McCulloch-Pitts neuronet. 1 0.95 0.9 0.85 0.8 m 0.75 0.7 0.65 0.6 0.55 Regular Random Mod4 Mod8 Mod16 5 10 15 20 25 30 k Figur 63: m som funktion af k for netværksinstanserne: Random, Regular, Mod4, Mod8 og Mod16 ved brug af McCulloch-Pitts neuronet.

83 D Hopfield netværk med McCulloch-Pitts neuroner m 1 0.95 0.9 0.85 0.8 0.75 0.7 0.65 0.6 0.55 0.5 Regular Random Scale free 5 10 15 20 25 30 k Figur 64: m som funktion af k for netværksinstanserne: Random, Regular og Scale free ved brug af McCulloch-Pitts neuronet.

E Hopfield netværk med Integrate-and-fire neuroner 84 E Hopfield netværk med Integrate-and-fire neuroner 1 0.9 0.8 m 0.7 0.6 0.5 0.4 Random Regular SW1 SW2 SW3 10 20 30 40 50 60 k Figur 65: m som funktion af k for netværksinstanserne: Random, Regular, SW 1, SW 2 og SW 3 ved brug af Integrate-and-fire neuronet. 0.96 0.94 0.92 0.9 m 0.88 0.86 Random Regular 0.84 SW1 SW2 SW3 0.82 15 20 25 30 35 k Figur 66: Forstørrelse af m som funktion af k for netværksinstanserne: Random, Regular, SW 1, SW 2 og SW 3 ved brug af Integrate-and-fire neuronet.

85 E Hopfield netværk med Integrate-and-fire neuroner 0.96 0.94 0.92 0.9 m 0.88 0.86 Random Regular 0.84 Mod4 Mod8 Mod16 0.82 15 20 25 30 35 k Figur 67: Forstørrelse af m som funktion af k for netværksinstanserne: Random, Regular, Mod4, Mod8 og Mod16 ved brug af Integrate-and-fire neuronet. 0.96 0.94 0.92 0.9 m 0.88 0.86 0.84 0.82 Random Regular Scale free 0.8 15 20 25 30 35 k Figur 68: Forstørrelse af m som funktion af k for netværksinstanserne: Random, Regular og Scale free ved brug af Integrate-and-fire neuronet.

F Hopfield netværk med Hodgkin-Huxley neuroner 86 F Hopfield netværk med Hodgkin-Huxley neuroner 1 0.9 0.8 0.7 m 0.6 0.5 0.4 Random Regular SW1 SW2 SW3 10 20 30 40 50 60 k Figur 69: m som funktion af k for netværksinstanserne: Random, Regular, SW 1, SW 2 og SW 3 ved brug af Hodgkin-Huxley neuronet. 1 0.9 0.8 0.7 m 0.6 0.5 0.4 Random Regular Mod4 Mod8 Mod16 10 20 30 40 50 60 k Figur 70: m som funktion af k for netværksinstanserne: Random, Regular, Mod4, Mod8 og Mod16 ved brug af Hodgkin-Huxley neuronet.

87 F Hopfield netværk med Hodgkin-Huxley neuroner 1 0.9 0.8 0.7 m 0.6 0.5 0.4 Random Regular Scale free 10 20 30 40 50 60 k Figur 71: m som funktion af k for netværksinstanserne: Random, Regular og Scale free ved brug af Hodgkin-Huxley neuronet.

G Optimering af netværksstruktur k = 8 88 G Optimering af netværksstruktur k = 8 680 640 600 total axonlængde 560 520 480 440 400 360 0 5.000 10.000 15.000 20.000 25.000 30.000 35.000 40.000 generation Figur 72: Ændring af den totale axonlængde under optimering af netværksstrukturen. Netværket er defineret ved n = 64, k = 8. Populationsstørrelsen er P = 20. 2.28 2.26 2.24 2.22 L 2.2 2.18 2.16 2.14 0 5.000 10.000 15.000 20.000 25.000 30.000 35.000 40.000 generation Figur 73: Ændring af L under optimering af netværksstrukturen. Netværket er defineret ved n = 64, k = 8. Populationsstørrelsen er P = 20.

89 G Optimering af netværksstruktur k = 8 2 1.8 1.6 1.4 D 1.2 1 0.8 0.6 0.4 0 5.000 10.000 15.000 20.000 25.000 30.000 35.000 40.000 generation Figur 74: Ændring af den totale axonlængde under optimering af netværksstrukturen. Netværket er defineret ved n = 64, k = 8. Populationsstørrelsen er P = 20. Figur 75: Resultat af optimeringen efter 40.000 generationer. m = 0.9253,totale axonlængde=194.72,l = 2.1548,C = 0.1217 og D = 0.4375.

H Optimering af netværksstruktur k = 6 90 H Optimering af netværksstruktur k = 6 500 450 total axonlængde 400 350 300 250 0 5.000 10.000 15.000 20.000 25.000 30.000 35.000 40.000 Generation Figur 76: Ændring af den totale axonlængde under optimering af netværksstrukturen. Netværket er defineret ved n = 64, k = 6. Populationsstørrelsen er P = 20. 2.55 2.5 L 2.45 2.4 0 5.000 10.000 15.000 20.000 25.000 30.000 35.000 40.000 Generation Figur 77: Ændring af L under optimering af netværksstrukturen. Netværket er defineret ved n = 64, k = 6. Populationsstørrelsen er P = 20.

91 H Optimering af netværksstruktur k = 6 2 1.8 1.6 D 1.4 1.2 1 0.8 0 5.000 10.000 15.000 20.000 25.000 30.000 35.000 40.000 Generation Figur 78: Ændring af den totale axonlængde under optimering af netværksstrukturen. Netværket er defineret ved n = 64, k = 6. Populationsstørrelsen er P = 20. Figur 79: Resultat af optimeringen efter 40.000 generationer. m = 0.8493,totale axonlængde=275.35,l = 2.4172,C = 0.0894 og D = 0.8438.

I Kildekode 92 I Kildekode I.1 neurontest.m %neurontest producere resultater for den valgte neurontype. %%%%%Paramtre%%%%% N=64; P=3; q=0.2; mink=2; maxk=62; %R=200; %MP-neuron R=100; %IF-neuron %R=50; %HH-neuron %%%%%%%%%%%%%%%%%% %Regular index=1; for k=mink:maxk for r=1:r c=createsmallworldnetwork(k,n,0); if(r==200) regular(index,1)=hopfieldmp(k,q,p,n,c); if(r==100) regular(index,1)=hopfieldif(k,q,p,n,c); if(r==50) regular(index,1)=hopfieldhh(k,q,p,n,c); regular(index,2)=calw(c,n); regular(index,3)=call(c,n); regular(index,4)=calc(c,n); regular(index,5)=cald(k,c,n); index=index+1; %SW1 index=1; for k=mink:maxk for r=1:r c=createsmallworldnetwork(k,n,0.10); if(r==200) sw1(index,1)=hopfieldmp(k,q,p,n,c); if(r==100) sw1(index,1)=hopfieldif(k,q,p,n,c); if(r==50) sw1(index,1)=hopfieldhh(k,q,p,n,c); sw1(index,2)=calw(c,n); sw1(index,3)=call(c,n); sw1(index,4)=calc(c,n); sw1(index,5)=cald(k,c,n); index=index+1; %SW2 index=1; for k=mink:maxk for r=1:r c=createsmallworldnetwork(k,n,0.20); if(r==200) sw2(index,1)=hopfieldmp(k,q,p,n,c); if(r==100) sw2(index,1)=hopfieldif(k,q,p,n,c); if(r==50) sw2(index,1)=hopfieldhh(k,q,p,n,c); sw2(index,2)=calw(c,n); sw2(index,3)=call(c,n); sw2(index,4)=calc(c,n); sw2(index,5)=cald(k,c,n); index=index+1;

93 I.1 neurontest.m %SW3 index=1; for k=mink:maxk for r=1:r c=createsmallworldnetwork(k,n,0.30); if(r==200) sw3(index,1)=hopfieldmp(k,q,p,n,c); if(r==100) sw3(index,1)=hopfieldif(k,q,p,n,c); if(r==50) sw3(index,1)=hopfieldhh(k,q,p,n,c); sw3(index,2)=calw(c,n); sw3(index,3)=call(c,n); sw3(index,4)=calc(c,n); sw3(index,5)=cald(k,c,n); index=index+1; %Random index=1; for k=mink:maxk for r=1:r c=createsmallworldnetwork(k,n,1); if(r==200) random(index,1)=hopfieldmp(k,q,p,n,c); if(r==100) random(index,1)=hopfieldif(k,q,p,n,c); if(r==50) random(index,1)=hopfieldhh(k,q,p,n,c); random(index,2)=calw(c,n); random(index,3)=call(c,n); random(index,4)=calc(c,n); random(index,5)=cald(k,c,n); index=index+1; %Mod4 index=1; for k=mink:maxk for r=1:r c=createmodularnetwork(k,n,4,0.10); if(r==200) mod4(index,1)=hopfieldmp(k,q,p,n,c); if(r==100) mod4(index,1)=hopfieldif(k,q,p,n,c); if(r==50) mod4(index,1)=hopfieldhh(k,q,p,n,c); mod4(index,2)=calw(c,n); mod4(index,3)=call(c,n); mod4(index,4)=calc(c,n); mod4(index,5)=cald(k,c,n); index=index+1; %Mod8 index=1; for k=mink:maxk for r=1:r c=createmodularnetwork(k,n,8,0.10); if(r==200) mod8(index,1)=hopfieldmp(k,q,p,n,c); if(r==100) mod8(index,1)=hopfieldif(k,q,p,n,c); if(r==50) mod8(index,1)=hopfieldhh(k,q,p,n,c); mod8(index,2)=calw(c,n); mod8(index,3)=call(c,n); mod8(index,4)=calc(c,n);

I.1 neurontest.m 94 mod8(index,5)=cald(k,c,n); index=index+1; %Mod16 index=1; for k=mink:maxk for r=1:r c=createmodularnetwork(k,n,16,0.10); if(r==200) mod16(index,1)=hopfieldmp(k,q,p,n,c); if(r==100) mod16(index,1)=hopfieldif(k,q,p,n,c); if(r==50) mod16(index,1)=hopfieldhh(k,q,p,n,c); mod16(index,2)=calw(c,n); mod16(index,3)=call(c,n); mod16(index,4)=calc(c,n); mod16(index,5)=cald(k,c,n); index=index+1; %Scale-free index=1; for k=mink:maxk for r=1:r c=createscalefreenetwork(k,n); if(r==200) scalefree(index,1)=hopfieldmp(k,q,p,n,c); if(r==100) scalefree(index,1)=hopfieldif(k,q,p,n,c); if(r==50) scalefree(index,1)=hopfieldhh(k,q,p,n,c); scalefree(index,2)=calw(c,n); scalefree(index,3)=call(c,n); scalefree(index,4)=calc(c,n); scalefree(index,5)=cald(k,c,n); index=index+1;

95 I.2 createsmallworldnetwork.m I.2 createsmallworldnetwork.m function c = createsmallworldnetwork(k,n,p) % createsmallworldnetwork danner et uorienteret small-world netværk med N % neuroner, k<n forbindelser pr. neuron, hvor k er lige og en % tilfældighedsparameter p mellem 0 og 1. p=0 danner et regulært netværk. % p=1 danner et tilfældigt netværk. c = zeros(n,n); % Et regulært netværk dannes for i=1:n for j=i-floor(k/2):i-1 l=j; if(l<1) l=l+n; if(l>n) l=l-n; if(i~=l) c(l,i)=1; c(i,l)=1; % p procent af forbindelserne gøres tilfældige. for i=1:n for j=i-floor(k/2):i-1 l=j; if(l<1) l=l+n; if(l>n) l=l-n; if(binornd(1,p)==1) l2=randint(1,1,[1,n]); if(i~=l2 && c(l2,i)==0) c(l2,i)=1; c(i,l2)=1; c(l,i)=0; c(i,l)=0;

I.3 createmodularnetwork.m 96 I.3 createmodularnetwork.m function c = createmodularnetwork(k,n,n,p) % createmodularnetwork danner et modul-opbygget netværk med N neuroner, k % forbindelser pr. neuron, n neuroner i hvert modul og en % tilfældighedparameter p mellem 0 og 1. p=0 giver et rent modul-opbygget % netværk. p=1 giver et tilfældigt netværk. c = zeros(n,n); M = floor(n/n); %Antal moduler intra=0; %Antal forbindelser indenfor modulet inter=0; %Antal forbindelser udenfor modulet if(k<n) intra=k; inter=0; else intra=n-1; inter=k-intra; numberofconnections=zeros(n,1); %Antal forbindelser pr. neuron % Danner forbindelser indenfor modulerne for m=0:m-1 for j=1:n NotConnected=1:n; NotConnected(j)=0; while(sum(notconnected)>0 && numberofconnections(m*n+j)<intra) l=randsrc(1,1,notconnected(notconnected>0)); if(numberofconnections(m*n+l)<intra) c(m*n+l,m*n+j)=1; c(m*n+j,m*n+l)=1; NotConnected(l)=0; numberofconnections(m*n+l)=numberofconnections(m*n+l)+1; numberofconnections(m*n+j)=numberofconnections(m*n+j)+1; else NotConnected(l)=0; % Danner forbindelser mellem modulerne for j=1:n NotConnected=1:N; NotConnected(j)=0; while(sum(notconnected)>0 && numberofconnections(j)<intra+inter) l=randsrc(1,1,notconnected(notconnected>0)); if(numberofconnections(l)<intra+inter && c(l,j)==0) c(l,j)=1; c(j,l)=1; NotConnected(l)=0; numberofconnections(l)=numberofconnections(l)+1; numberofconnections(j)=numberofconnections(j)+1; else NotConnected(l)=0; % Tilfører ekstra forbindelser så det samlede antal forbindelser bliver kn for i=(sum(sum(c))/2)+1:(k*n/2)

97 I.3 createmodularnetwork.m done=0; while(done==0) from=randsrc(1,1,1:n); to=randsrc(1,1,1:n); if(c(from,to)==0 && from~=to) c(from,to)=1; c(to,from)=1; done=1; % p procent af forbindelserne gøres tilfældige for i=1:n for j=i-floor(n/2):i-1 l=j; if(l<1) l=l+n; if(l>n) l=l-n; if(c(i,l)==1 && binornd(1,p)==1) l2=randint(1,1,[1,n]); if(i~=l2 && c(l2,i)==0) c(l2,i)=1; c(i,l2)=1; c(l,i)=0; c(i,l)=0;

I.4 createscalefreenetwork.m 98 I.4 createscalefreenetwork.m function c = createscalefreenetwork(k,n) % createscalefreenetwork danner et Scale-free netværk med N neuroner og k<n % forbindelser pr. neuron. k skal være lige. c = zeros(n,n); no=k/2; %Antal startknuder t=n-no; %Antal tidsskridt connections=0; %Liste over knuder med forbindelser index=1; %index til listen over knuder med forbindelser NotConnected=1:N; %Liste over nu ikke forbundne knuder % Udvælgelse af startknuderne for i=1:no node=randsrc(1,1,notconnected(notconnected>0)); connections(index)=node; index=index+1; NotConnected(node)=0; % Forbinder de restere knuder for i=1:t from=randsrc(1,1,notconnected(notconnected>0)); NotConnected(from)=0; for j=1:k/2 done=0; while(done==0) to=randsrc(1,1,connections); if(c(from,to)==0 && from~=to) connections(index)=from; index=index+1; connections(index)=to; index=index+1; c(from,to)=1; c(to,from)=1; done=1; % Forbinder startknuderne for i=1:no from=connections(i); for j=1:k/2 if(sum(c(from,:))<n-1) done=0; while(done==0) to=randsrc(1,1,connections); if(c(from,to)==0 && from~=to) connections(index)=from; index=index+1; connections(index)=to; index=index+1; c(from,to)=1; c(to,from)=1; done=1;

99 I.4 createscalefreenetwork.m else done=0; while(done==0) newfrom=randsrc(1,1,1:n); to=randsrc(1,1,1:n); if(c(newfrom,to)==0 && newfrom~=to) c(newfrom,to)=1; c(to,newfrom)=1; done=1;

I.5 hopfieldmp.m 100 I.5 hopfieldmp.m function result = hopfieldmp(k,q,p,n,c) % hopfieldmp opbygger et Hopfield netværk med N McColloch-Pitts neuroner på % baggrund af et netværk c med gennemsnitligt k forbindelser pr. neuron. I % netværket gemmes P tilfældige mønstre. Netværket testes ved at de P mønstre % ændre med parameteren q og forsøges genkt af netværket. q=0 giver ingen % ændring af mønstrene. q=1 giver et tilfældigt mønster. msum=0; %Summen af overlappet m for de P mønstre. %Konstruktion af de P mønstre pattern=zeros(p,n); for p=1:p for n=1:n pattern(p,n)=randint(1,1,[0 1]); activitypattern=zeros(p,n); for p=1:p for n=1:n if(pattern(p,n)==0) activitypattern(p,n)=-1; else activitypattern(p,n)=1; %Beregning af de synaptiske vægte ved brug af Hebbs produkt regel. w = zeros(n,n); for i=1:n for j=1:n if(i==j) w(i,j)=0; else for p=1:p w(i,j)=w(i,j)+activitypattern(p,i)*activitypattern(p,j)*c(i,j); w(i,j)=w(i,j)/n; %Ændring af de P mønstre efter parameteren q. noisypattern = imnoise(pattern, salt & pepper,q); noisyactivitypattern=zeros(p,n); for p=1:p for n=1:n if(noisypattern(p,n)==0) noisyactivitypattern(p,n)=-1; else noisyactivitypattern(p,n)=1; %Hopfield netværket afprøves med de P mønstre. for p=1:p s=noisyactivitypattern(p,:); notchange=1:n; while (sum(notchange)>0) i=randsrc(1,1,notchange(notchange>0)); newsi=0; for j=1:n newsi=newsi+w(i,j)*s(j); newsi=sign(newsi);

101 I.5 hopfieldmp.m if(s(i)==newsi) notchange(i)=0; else notchange=1:n; s(i)=newsi; %Udregning af overlappet m. m=0; sum1=0; sum2=0; sum3=0; for n=1:n sum1=sum1+activitypattern(p,n)*s(n); sum2=sum2+activitypattern(p,n)^2; sum3=sum3+s(n)^2; if(sum1==0) m=0; else m=sum1/(sqrt(sum2*sum3)); msum=msum+m; result=msum/p;

I.6 hopfieldif.m 102 I.6 hopfieldif.m function result = hopfieldif(k,q,p,n,c) % hopfieldif opbygger et Hopfield netværk med N Integrate-and-fire neuroner % på baggrund af et netværk c med gennemsnitligt k forbindelser pr. neuron. % I netværket gemmes P tilfældige mønstre. Netværket testes ved at de P mønstre % ændre med parameteren q og forsøges genkt af netværket. q=0 giver ingen % ændring af mønstrene. q=1 giver et tilfældigt mønster. %%%%Parametre%%%% f=0.2; Gext=50; Linh=2; Gexc=((N-1)/k)*(1/(N*f))*Gext; Ginh=-(Linh*Gext); Vc=-50.001; Vreset=-65.001; Vrest=-65.001; Va=30; Rm=90; Tm=30; Texc=2; Tinh=12; Tref=3; Td=10; dt=0.1; tsim=200; twin=50; windows=tsim/twin; %Antal af frekvensvinduer. texc=texc*10; %Den maksimale tid en udst spike vil have effekt. %%%%%%%%%%%%%%%% msum=0; %Summen af overlappet m for de P mønstre. %Konstruktion af de P mønstre. pattern=zeros(p,n); for p=1:p for n=1:n pattern(p,n)=binornd(1,f); activitypattern=zeros(p,n); for p=1:p for n=1:n if(pattern(p,n)==1) activitypattern(p,n)=1/f; else activitypattern(p,n)=0; %Beregning af de synaptiske vægte ved brug af Kovarins-reglen. w = zeros(n,n); for i=1:n for j=1:n if(i==j) w(j,i)=0; else sum=0; for p=1:p sum=sum+((activitypattern(p,i)-1)*(activitypattern(p,j)-1));

103 I.6 hopfieldif.m w(j,i)=c(j,i)*sum; w = w / max(max(w)); %Ændring af de P mønstre efter parameteren q. noisypattern = imnoise(pattern, salt & pepper,q); %Hopfield netværket afprøves med de P mønstre. for p=1:p Ny=noisyPattern(p,:); %input mønstret gives et kortere navn. b=0; %Det totale antal af spikes fra de ekscitatoriske neuroner i %tidsrummet dt. beta=0; %Aktiviteten af den inhibitoriske population. %Initialisering af membranpotentialet for de N neuroner. V = zeros(n,1); for n=1:n V(n)=Vrest; refstep = zeros(n,1); %Antallet af tidsskrift dt tilbage af de N neurons %stabiliseringsperiode. spiketime=zeros(n,1); %Tidspunkter for udselsen af spikes for de N neuroner. spikecount=zeros(n,1); %Antallet af udste spikes for de N neuroner. spikelimit=ones(n,1); %Index til spiketime der angiver en grænse for %forældede spikes udst af de N neuroner. r=zeros(n,windows); %Antallet af spikes i frekvensvinduerne. for t=0+dt:dt:tsim currentwindow=floor((t-dt)/twin)+1; %Udregning af aktiviteten i den inhibitoriske population. beta=beta+(-(1/tinh)*beta+(b/n))*dt; if(beta>1) beta=1; Iinh=Ginh/10*(Va-Vc)*beta; b=0; for n=1:n %Undersøgelse af stabiliseringsperiode if(refstep(n)>0) refstep(n)=refstep(n)-1; continue; %Udregning af Iexc. sum=0; for j=1:n if(w(j,n)==0) continue; for spike=spikelimit(j):spikecount(j) alpha=(t-spiketime(j,spike)-td)/texc*exp(1-((t-spiketime(j,spike)-td)/texc)); if(alpha<0) alpha=0; sum=sum+w(j,n)*alpha; Iexc=Gexc/10*(Va-Vc)*sum;

I.6 hopfieldif.m 104 %Udregning af Iext. Iext=0; if(ny(n)==1 && t<texc) Iext=Gext/10*(Va-Vc)*(t/Texc)*exp(1-(t/Texc)); %Udregning af I. I=Iext+Iexc+Iinh; if(i<0) I=0; %Udregning af membranpotentialet. V(n)=V(n)+(-((V(n)-Vrest)/Tm)+(Rm/Tm)*I)*dt; %Udselse af en spike. if(v(n)>=vc) V(n)=Vreset; refstep(n)=tref/dt; spikecount(n)=spikecount(n)+1; spiketime(n,spikecount(n))=t; b=b+1; r(n,currentwindow)=r(n,currentwindow)+1; %Undersøgelse af forældede spikes. if(t>spiketime(spikelimit(n))+texc && spikelimit(n)<spikecount(n)) spikelimit(n)=spikelimit(n)+1; %Udregning af overlappet m. m=zeros(windows); for win=1:windows sum1=0; sum2=0; sum3=0; for n=1:n sum1=sum1+pattern(p,n)*r(n,win); sum2=sum2+pattern(p,n)^2; sum3=sum3+r(n,win)^2; if(sum1==0) m(win)=0; else m(win)=sum1/(sqrt(sum2*sum3)); msum=msum+m(windows); %Figur der beskriver udvikling af m. figure; plot(1:windows,m); %Figur der viser alle spikes. figure; hold on; for n=1:n for spike=1:spikecount(n) plot(spiketime(n,spike),n,. ); %Figur der viser frekvensvinduerne. figure;

105 I.6 hopfieldif.m hold on; subplot(windows+2,1,1); bar(1:n,pattern(p,:)); subplot(windows+2,1,2); bar(1:n,noisypattern(p,:)); for win=1:windows subplot(windows+2,1,win+2); bar(1:n,r(:,win)/(twin*0.001)); result(1)=msum/p;

I.7 hopfieldhh.m 106 I.7 hopfieldhh.m function result = hopfieldhh(k,q,p,n,c) % hopfieldhh opbygger et Hopfield netværk med N Hodgkin-Huxley neuroner på % baggrund af et netværk c med gennemsnitligt k forbindelser pr. neuron. I % netværket gemmes P tilfældige mønstre. Netværket testes ved at de P mønstre % ændre med parameteren q og forsøges genkt af netværket. q=0 giver ingen % ændring af mønstrene. q=1 giver et tilfældigt mønster. %%%%%Parametre%%%%% gna=120; gk=36; gl=0.3; ENa=50; EK=-77; EL=-54.5; f=0.2; Gext=1.25; Linh=25; Gexc=((N-1)/k)*(1/(N*f))*Gext; Ginh=-(Linh*Gext); Igrd=0.6; Vr=-65; Va=30; Vc=-50; Texc=2; Tinh=12; td=10; dt=0.05; tstart=10; tsim=200; twin=50; windows=tsim/twin; %Antal af frekvensvinduer. texc=texc*10; %Den maksimale tid en udst spike vil have effekt. %%%%%%%%%%%%%%%%%%% msum=0; %Summen af overlappet m for de P mønstre. %Konstruktion af de P mønstre. pattern=zeros(p,n); for p=1:p for n=1:n pattern(p,n)=binornd(1,f); activitypattern=zeros(p,n); for p=1:p for n=1:n if(pattern(p,n)==1) activitypattern(p,n)=1/f; else activitypattern(p,n)=0; %Beregning af de synaptiske vægte ved brug af Kovarins-reglen. w = zeros(n,n); for i=1:n for j=1:n if(i==j) w(j,i)=0;

107 I.7 hopfieldhh.m else sum=0; for p=1:p sum=sum+((activitypattern(p,i)-1)*(activitypattern(p,j)-1)); w(j,i)=c(j,i)*sum; w = w / max(max(w)); %Ændring af de P mønstre efter parameteren q. noisypattern = imnoise(pattern, salt & pepper,q); %Hopfield netværket afprøves med de P mønstre. for p=1:p Ny=noisyPattern(p,:); %input mønstret gives et kortere navn. b=0; %Det totale antal af spikes fra de ekscitatoriske neuroner i %tidsrummet dt. beta=0; %Aktiviteten af den inhibitoriske population. %Initialisering af membranpotentialet for de N neuroner. V = zeros(n,1); mm = zeros(n,1); hh = zeros(n,1); nn = zeros(n,1); for n=1:n V(n)=Vr; mm(n)=0.0526; hh(n)=0.5940; nn(n)=0.3186; spiketime=zeros(n,1); %Tidspunkter for udselsen af spikes for de N neuroner. spikecount=zeros(n,1); %Antallet af udste spikes for de N neuroner. spikelimit=ones(n,1); %Index til spiketime der angiver en grænse for %forældede spikes udst af de N neuroner. r=zeros(n,windows); %Antallet af spikes i frekvensvinduerne. for t=0+dt:dt:tsim currentwindow=floor((t-dt)/twin)+1; %%Udregning af aktiviteten i den inhibitoriske population. beta=beta+(-(1/tinh)*beta+(b/n))*dt; if(beta>1) beta=1; Iinh=Ginh/10*(Va-Vc)*beta; b=0; for n=1:n %Udregning af Iexc. sum=0; for j=1:n if(w(j,n)==0) continue; for spike=spikelimit(j):spikecount(j) alpha=(t-spiketime(j,spike)-td)/texc*exp(1-((t-spiketime(j,spike)-td)/texc)); if(alpha<0) alpha=0; sum=sum+w(j,n)*alpha;

I.7 hopfieldhh.m 108 Iexc=Gexc/10*(Va-Vc)*sum; %Udregning af Iext. Iext=0; if(ny(n)==1 && t>tstart && t<texc+tstart) Iext=Gext/10*(Va-Vc)*((t-tstart)/Texc)*exp(1-((t-tstart)/Texc)); %Udregning af I. I=Iext+Iexc+Iinh+Igrd; if(i<0) I=0; %Udregning af membranpotentialet. alpham=(0.1*(vr-v(n)+25))/(exp((vr-v(n)+25)/10)-1); betam=4*exp((vr-v(n))/18); alphah=0.07*exp((vr-v(n))/20); betah=1/(exp((vr-v(n)+30)/10)+1); alphan=(0.01*(vr-v(n)+10))/(exp((vr-v(n)+10)/10)-1); betan=0.125*exp((vr-v(n))/80); F1=dt*(alpham*(1-mm(n))-betam*mm(n)); F2=dt*(alpham*(1-(mm(n)+0.5*F1))-betam*(mm(n)+0.5*F1)); F3=dt*(alpham*(1-(mm(n)+0.5*F2))-betam*(mm(n)+0.5*F2)); F4=dt*(alpham*(1-(mm(n)+F3))-betam*(mm(n)+F3)); mm(n)=mm(n)+(1/6)*(f1+2*f2+2*f3+f4); F1=dt*(alphah*(1-hh(n))-betah*hh(n)); F2=dt*(alphah*(1-(hh(n)+0.5*F1))-betah*(hh(n)+0.5*F1)); F3=dt*(alphah*(1-(hh(n)+0.5*F2))-betah*(hh(n)+0.5*F2)); F4=dt*(alphah*(1-(hh(n)+F3))-betah*(hh(n)+F3)); hh(n)=hh(n)+(1/6)*(f1+2*f2+2*f3+f4); F1=dt*(alphan*(1-nn(n))-betan*nn(n)); F2=dt*(alphan*(1-(nn(n)+0.5*F1))-betan*(nn(n)+0.5*F1)); F3=dt*(alphan*(1-(nn(n)+0.5*F2))-betan*(nn(n)+0.5*F2)); F4=dt*(alphan*(1-(nn(n)+F3))-betan*(nn(n)+F3)); nn(n)=nn(n)+(1/6)*(f1+2*f2+2*f3+f4); F1=dt*(I*10-(gNa*mm(n)^3*hh(n)*(V(n)-ENa)+gK*nn(n)^4*(V(n)-EK) +gl*(v(n)-el))); F2=dt*(I*10-(gNa*mm(n)^3*hh(n)*((V(n)+0.5*F1)-ENa)+gK*nn(n)^4* ((V(n)+0.5*F1)-EK)+gL*((V(n)+0.5*F1)-EL))); F3=dt*(I*10-(gNa*mm(n)^3*hh(n)*((V(n)+0.5*F2)-ENa)+gK*nn(n)^4* ((V(n)+0.5*F2)-EK)+gL*((V(n)+0.5*F2)-EL))); F4=dt*(I*10-(gNa*mm(n)^3*hh(n)*((V(n)+F3)-ENa)+gK*nn(n)^4* ((V(n)+F3)-EK)+gL*((V(n)+F3)-EL))); Vold=V(n); V(n)=V(n)+(1/6)*(F1+2*F2+2*F3+F4); %Fejl hvis tidsskridtet dt er for stort. if(isnan(v(n))) fprintf( Error\n ); %Udselse af en spike. if(v(n)>=0 && Vold<0 && t>tstart) spikecount(n)=spikecount(n)+1; spiketime(n,spikecount(n))=t; b=b+1; r(n,currentwindow)=r(n,currentwindow)+1;

109 I.7 hopfieldhh.m %Undersøgelse af forældede spikes. if(t>spiketime(spikelimit(n))+texc && spikelimit(n)<spikecount(n)) spikelimit(n)=spikelimit(n)+1; %Udregning af overlappet m. m=zeros(windows); for win=1:windows sum1=0; sum2=0; sum3=0; for n=1:n sum1=sum1+pattern(p,n)*r(n,win); sum2=sum2+pattern(p,n)^2; sum3=sum3+r(n,win)^2; if(sum1==0) m(win)=0; else m(win)=sum1/(sqrt(sum2*sum3)); msum=msum+m(windows); %Figur der beskriver udvikling af m. figure; plot(1:windows,m); %Figur der viser alle spikes. figure; hold on; for n=1:n for spike=1:spikecount(n) plot(spiketime(n,spike),n,. ); %Figur der viser frekvensvinduerne. figure; hold on; subplot(windows+2,1,1); bar(1:n,pattern(p,:)); subplot(windows+2,1,2); bar(1:n,noisypattern(p,:)); for win=1:windows subplot(windows+2,1,win+2); bar(1:n,r(:,win)); result=msum/p;

I.8 call.m 110 I.8 call.m function result=call(c,n) % call udregner den karakteriske vejlængde for netværket c med N neuroner. % call benytter Floyd-Warshalls algoritme. d=zeros(n,n); for i=1:n for j=1:n if(i~=j) if(c(i,j)==1) d(i,j)=1; else d(i,j)=inf; for k=1:n for i=1:n for j=1:n dnew(i,j)=min(d(i,j),d(i,k)+d(k,j)); d=dnew; result = sum(sum(d))/((n-1)*n); I.9 calw.m function result = calw(c,n) % calw udregner den totale axonlængde for netværket c, hvor de N neuroner % er placeret på en enhedscirkel. t = 0:2*pi/N:2*pi; length=0; for a=1:n for b=1:n if(c(a,b)>=1) length=length+c(a,b)*(abs(exp(i*t(a))-exp(i*t(b)))); result=length;

111 I.10 calc.m I.10 calc.m function result=calc(c,n) % calc udregner klyngekoefficienten for netværket c med N neuroner. C=0; for n=1:n Ei=0; neighbor=0; ki=0; for i=1:n if(c(n,i)>=1) ki=ki+1; neighbor(ki)=i; for i=1:ki for j=1:ki if(c(neighbor(i),neighbor(j))>=1) Ei=Ei+1; Ei=Ei/2; if(ki<=1) Ci=0; else Ci=(2*Ei)/(ki*(ki-1)); C=C+Ci; result=c/n; I.11 cald.m function result = cald(k,c,n) % cald udregner den gennemsnitlige afvigelse fra k af de N neuroner i % netværket c. k er det gennemsnitlige antal forbindelser pr. neuron. s=sum(c); s=abs(s-k); result=sum(s)/n;

I.12 GA.m 112 I.12 GA.m function c=ga(n_,k_,popsize_); % GA opstarter den genetiske algoritme på et netværk med N neuroner og % gennemsnitligt k forbindelser pr. neuron. popsize er % populationsstørrelsen. global N; N=N_; global k; k=k_; global popsize; popsize=popsize_; global L; global C; global D; global W; %Fitnessfunktionen. fitfunction = @GApareto; %Antal variable. nvars = log2(n)*k*n; %Parametre til den genetiske algoritme. options = gaoptimset; options = gaoptimset(options, PopulationType, bitstring ); options = gaoptimset(options, PopulationSize,popsize); options = gaoptimset(options, Generations,100000); options = gaoptimset(options, StallGenLimit,50000); options = gaoptimset(options, StallTimeLimit,20000); options = gaoptimset(options, EliteCount,4); options = gaoptimset(options, FitnessScalingFcn,@GArank); options = gaoptimset(options, SelectionFcn,@selectionroulette); options = gaoptimset(options, CrossoverFcn,@crossoversinglepoint); options = gaoptimset(options, MutationFcn,{ @mutationuniform 0.01 }); options = gaoptimset(options, Display, off ); options = gaoptimset(options, PlotFcns,{ @GAplot }); options = gaoptimset(options, CreationFcn,@GAinitial); options = gaoptimset(options, Vectorized, on ); %ga udfører den genetiske algoritme. ga findes i Matlabs Genetic Algorithm %and Direct Search Toolbox 1.0.1 [X,FVAL,REASON,OUTPUT,POPULATION,SCORES] = ga(fitfunction,nvars,options); %Udskrift af resultater. for i=1:popsize c(:,:,i)=reshapec(population(i,:),n,k/2*n); fprintf( Individ=%g L=%g, C=%g, D=%g, W=%g\n,i,L(i),C(i),D(i),W(i));

113 I.13 GApareto.m I.13 GApareto.m function z = GApareto(cin) % GApareto er implementationen af pareto optimalitet. global N; global k; global L; global C; global D; global W; s=size(cin); individuals=s(1); %Antal individer i populationen. %Udregner L,W,C og D for hver individ i populationen. L=0; C=0; K=0; W=0; for i=1:individuals c=reshapec(cin(i,:),n,(k/2*n)); L(i)=calL(c,N); W(i)=calW(c,N); C(i)=calC(c,N); D(i)=calD(k,c,N); %Udregner en rang for hvert individ. rank=zeros(individuals,1); currentrank=1; ranked=0; while(ranked<individuals) for i=1:individuals if(rank(i)~=0) continue; nondominated=1; for j=1:individuals if(rank(j)~=0) continue; if((l(j)<=l(i) && D(j)<=D(i) && W(j)<=W(i)) && (L(j)<L(i) D(j)<D(i) W(j)<W(i))) nondominated=0; if(nondominated) rank(i)=currentrank; ranked=ranked+1; currentrank=currentrank+1; z=rank;

I.14 GAinitial.m 114 I.14 GAinitial.m function pop = GAinitial(GenomeLength,Fitnessfcn,options) % GAinitial skaber den første generation. Den første generation består af % tilfældige netværk af N neuroner med gennemsnitligt k forbindelser pr. % neuron. popsize er populationsstørrelsen. global N; global k; global popsize; length=1; for ind=1:popsize c=createsmallworldnetwork(k,n,1); for i=1:n for j=1:n if(i<=j) for n=1:c(i,j) from=int2bit(i,log2(n)); to=int2bit(j,log2(n)); for u=1:log2(n) pop(ind,length)=from(u); length=length+1; for u=1:log2(n) pop(ind,length)=to(u); length=length+1; length=1; I.15 GAplot.m function state = GAplot(options, state, flag) % GAplot laver et 3D-plot af generationen og udskriver nummeret på generationen. global L; global C; global D; global W; plot3(l,d,w, x ); axis([2.0 2.3 0 2.0 150 340]); xlabel( L ); ylabel( D ); zlabel( W ); generation=state.generation+1; fprintf( Generation=%g\n,generation);

115 I.16 reshapec.m I.16 reshapec.m function c = reshapec(cin,n,nbconnect) % reshapec omformer den genetiske bit-streng til det tilsvare netværk. c=zeros(n,n); cin=transpose(reshape(cin,log2(n),2*nbconnect)); for i=1:2:2*nbconnect-1 from=bit2int(cin(i,:)); to=bit2int(cin(i+1,:)); if(to==0) to=n; if(from==0) from=n; c(from,to)=c(from,to)+1; c(to,from)=c(to,from)+1; I.17 int2bit.m function bits = int2bit(integer,n) % int2bit omskriver en integer (integer) til den tilsvare % bit-repræsentation ved brug af n bits. if(integer==0) bits=zeros(1,n); return; int=integer; for i=n:-1:1 if(int/(2^(i-1))>=1) bits(n-i+1)=1; int=int-2^(i-1); else bits(n-i+1)=0; I.18 bit2int.m function int = bit2int(bits) % bit2int omskriver et bit-mønster til den tilsvare heltalsværdi. s=size(bits); int=0; for i=1:s(2) if(bits(i)==1) int=int+2^(s(2)-i);

Indeks α-funktionen, 30 leaky Integrate-and-fire model, 25 spin glass, 44 afterhyperpolarisering, 6 aktionspotentialet, 6 aktiveret, 6 aktiveringsfunktionen, 28 antagonist, 10 anterograd hukommelse, 10 argonist, 10 associative LTP, 11 asynchonously updating, 46 attractors, 45 Autoassociationsnetværk, 42 axon, 3 backspike, 10 Basket-neuronet, 4 Ca 2+ -afhængige kinaser, 12 Cerebellar LTD, 13 Chandelier-neuronet, 4 computational neuroscience, 2 Cortex, 13 crosstalkleddet, 48 deaktiveret, 6 defosforylering, 13 deinaktivering, 6 dritter, 3 depolarisering, 6 dominere, 66 Double-Bouquet-neuronet, 4 ekscitatorisk baggrundsstimulus, 52 ekscitatoriske neuroner, 4 ocytose, 9 osom, 9 energifunktion, 45 EPSC, 29 EPSP, 10 et-punktskombination, 64 Eulers metode, 55 exocytose, 8 feedback-netværk, 44 feedforward-netværk, 44 fitness proportional selektion, 64 fitnessfunktion, 64 fitnessværdi, 64 Fjerde-ordens Runge-Kutta metoden, 55 Floyd-Warshalls algoritme, 36 forbindelse, 36 fosfortaser, 13 fosforylering, 13 frekvenskodning, 32 fyre, 7 GABA, 7 GABA A, 9 Gausisk mutation, 65 generation, 63 Genetic Algorithm and Direct Search Toolbox 1.0.1, 67 gennemsnitlige afvigelse fra k, 41 gennemsnitlige antal forbindelser pr. neuron, 36 Glu A, 10 Glu N, 10 Glutamate, 7 Goldman-Hudgkin-Katz ligningen, 5 Hebbian LTP, 12 Hebbs indlæringsregel, 43 Hebbs produktregel, 34 Heteroassociationsnetværk, 43 Hippocampus, 11 homosynaptisk LTD, 13 homosynaptiske LTP, 12 Hopfield netværk, 2 hvilepotentiale, 4 hyperkolonner, 69 hyperpolarisering, 6 ikke-domineret, 66 inaktiveret, 6 individer, 63 indlæringskonstaten, 36 indlæringsregel, 43 indreprodukt, 42 Informationsteori, 31 inhibitoriske neuroner, 4 initial-værdi problem, 55

117 INDEKS initiale population, 63 initialiseringsmønstret, 52 Integrate-and-fire modellen, 24 inverteret netværkstilstand, 47 ionotropiske receptorer, 9 IPSP, 10 kanter, 36 kapaciteten, 43 karakteristiske vejlængde, 36 klyngekoefficienten, 36 knuder, 36 kombination, 63 konfigurationsrummet, 47 korttidshukommelse, 10 Kovariansreglen, 34 langtidshukommelsen, 10 linær rangeringsselektion, 64 lineært associationsnetværk, 42 lokalt energiminimum, 44 LTD, 11 LTP, 11 mønstre, 46 magnesiumblokering, 10 Matlab 7, 57 Mean field theory, 50 Mediale temporale lobe, 10 membranens kapacitet, 18 membranens resistans, 25 membranens tidskonstant, 25 membranpotentiale, 4 minikolonnen, 16 moduler, 17 mossy fibers, 29 multiobjektivt problem, 66 mutation, 63 mutationsraten, 65 Nerst-ligning, 5 netværkets kritiske punkt, 49 neurale kode, 31 neurale responsfunktion, 33 neuroner, 2 neuroscience, 2 NMDA receptorer, 10 Non-NMDA receptorer, 10 Ohms lov, 19 opdateringsregl, 45 orden, 55 orienteret, 36 overlap, 56 Pareto optimalitet, 66 plasticitet, 11 portmodel, 19 portpartikler, 19 portvariable, 20 postsynaptiske del, 3 postsynaptiske neuron, 3 præsynaptiske del, 3 præsynaptiske neuron, 3 Pyramidal-neuronet, 4 rangeringsværdi, 64 receptor, 9 rest selektion, 64 retrograd hukommelse, 10 roulettehjulsselektion, 64 Scale-free netværk, 40 seks grader af separation, 16 selektion, 63 skaleringsparameter, 65 Small-world netværk, 15 soma, 3 spike, 7 Spiny-Stellate-neuronet, 4 spontan fyringsfrekvens, 32 stabil netværkstilstand, 47 stabiliseringsperiode, 7 standsningsbetingelse, 63 starttilstand, 45 stokastisk neuronmodel, 28 Stryknin-neurografi, 15 synapse, 3 synaptisk konkurrence, 35 synaptisk mætning, 35 synaptiske kløft, 7 synaptiske vægte, 33 synchonously updating, 46 tærskelværdi, 6 Taylor rækker, 55 temporal integration, 32 temporal kodning, 31 to-punktskombination, 64 totale axonlængde, 40 transitionsregel, 63

INDEKS 118 tynde mønstre, 50 type I, 27 type II, 27 udførelsesregel, 42 udtømt Hopfield netværk, 51 uniform mutation, 65 uorienteret, 36 ustabil netværkstilstand, 47 vægte, 42 Vesikelapparaturet, 8 vesikler, 8 Voltage clamp teknikken, 6 Watts og Strogatz, 15 ydreprodukt, 43