Artificiella neurala nätverk

Relevanta dokument
Vektorer, matriser, nätverk - några elementa

729G43 Artificiell intelligens / Maskininlärning 3. Marco Kuhlmann

ARTIFICIELLA NEURALA NÄT. MARCO KUHLMANN Institutionen för datavetenskap

2D Potentialen i en nervcell definieras normalt som skillnaden i spänning mellan dess axon och dendrit.

Linköpings universitet

729G43 Artificiell intelligens (2016) Maskininlärning 3. Marco Kuhlmann Institutionen för datavetenskap

729G43 Artificiell intelligens (2016) Maskininlärning 2. Marco Kuhlmann Institutionen för datavetenskap

Inlärning utan övervakning

729G43 Artificiell intelligens / Maskininlärning 2. Marco Kuhlmann

Fråga 5 (1 poäng) För att definiera ett sökproblem krävs...

Fråga 5 (1 poäng) För att definiera ett sökproblem krävs...

Enlagersnät Flerlagersnät Generalisering. Artificiella Neuronnät

Sub-symbolisk kognition & Konnektionism. Kognitionsvetenskaplig Introduktionskurs (729G01) Mats Andrén,

SELF- ORGANIZING MAPS

Grafer och grannmatriser

LARS ULVELAND HOPFIELDNÄTVERK FÖR IGENKÄNNING AV DEGRADERADE BILDER OCH HANDSKRIVNA TECKEN

Neurala nätverk och språkigenkänning. Henrik Linnarsson. Linköping University

Modeller och simulering av språkprocessning

Artificiella Neuronnät

1 De fyra fundamentala underrummen till en matris

Artificiell Intelligens Lektion 7

Föreläsning 7. Felrättande koder

6. Matriser Definition av matriser 62 6 MATRISER. En matris är ett rektangulärt schema av tal: a 11 a 12 a 13 a 1n a 21 a 22 a 23 a 2n A =

Vektorgeometri för gymnasister

1 Grundläggande kalkyler med vektorer och matriser

Regression med Genetiska Algoritmer

Självkoll: Ser du att de två uttrycken är ekvivalenta?

8. Euklidiska rum 94 8 EUKLIDISKA RUM

Artificiella Neurala Nätverk - en kort introduktion

Övningar. MATEMATISKA INSTITUTIONEN STOCKHOLMS UNIVERSITET Avd. Matematik. Linjär algebra 2. Senast korrigerad:

Lösningsförslag till övningsuppgifter, del V

1 Linjära ekvationssystem. 2 Vektorer

Isometrier och ortogonala matriser

Vektorgeometri för gymnasister

5 Linjär algebra. 5.1 Addition av matriser 5 LINJÄR ALGEBRA

1 Positivt definita och positivt semidefinita matriser

Kan vi beskriva ett system utan någon fysikalisk kännedom om systemet?

Analys o Linjär algebra. Lektion 7.. p.1/65

ANN fk. Örjan Ekeberg. Framåtkopplade Nät. återkopplade nät. Olika arkitekturer. BackPropagation through Time. Kalman-Filter tekniker

MVE022 Urval av bevis (på svenska)

SF1624 Algebra och geometri Lösningsförslag till tentamen DEL A

Kognitiv Modellering

LINJÄRA AVBILDNINGAR

Linjär algebra på några minuter

Vektorrum. EX. Plan och linjer i rummet genom origo. Allmänt; mängden av lösningar till AX = 0.

VARFÖR FINNS DET INGA RIKTIGA

Lösningsförslag till Tentamen i 5B1118 Diskret matematik 5p 14 augusti, 2002

Oändligtdimensionella vektorrum

Material till kursen SF1679, Diskret matematik: Lite om kedjebråk. 0. Inledning

Vi definierar addition av två vektorer och multiplikation med en reell skalär (tal) λλ enligt nedan

Konvergens för iterativa metoder

Subtraktion. Räkneregler

14. Minsta kvadratmetoden

HKGBB0, Artificiell intelligens

Egenvärden och egenvektorer

Neural bas för kognition

Att programmera en Beethoven

Linjär Algebra M/TD Läsvecka 2

Vectorer, spannet av vektorer, lösningsmängd av ett ekvationssystem.

SF1624 Algebra och geometri

Enhetsvektorer. Basvektorer i två dimensioner: 1 1 Basvektorer i tre dimensioner: Enhetsvektor i riktningen v: v v

TMV166 Linjär Algebra för M. Tentamen

MULTIPLIKATION AV MATRISER, BASER I RUMMET SAMT FÖRSTA MÖTET MED MATRISINVERSER = = =

1 Ortogonalitet. 1.1 Skalär produkt. Man kan tala om vinkel mellan vektorer.

Linjär Algebra, Föreläsning 2

Vektorgeometri för gymnasister

1. (Dugga 1.1) (a) Bestäm v (3v 2u) om v = . (1p) and u =

Övningar. c) Om någon vektor i R n kan skrivas som linjär kombination av v 1,..., v m på precis ett sätt så. m = n.

ANN-Laboration Distanskurs Introduktion till NeuralWorks Explorer

Laboration 5: Regressionsanalys. 1 Förberedelseuppgifter. 2 Enkel linjär regression DATORLABORATION 5 MATEMATISK STATISTIK FÖR I, FMS 012, HT-08

Symboler och abstrakta system

Härledning av Black-Littermans formel mha allmänna linjära modellen

Kontsys F7 Skalärprodukt och normer

SF1624 Algebra och geometri Lösningsförslag till tentamen Lördagen den 5 juni, 2010 DEL A

Vektorgeometri för gymnasister

Linjära ekvationssystem

Geometriska vektorer

October 9, Innehållsregister

Föreläsning 1. Repetition av sannolikhetsteori. Patrik Zetterberg. 6 december 2012

Uppsala Universitet Matematiska Institutionen Bo Styf. Sammanfattning av föreläsningarna

F2 Introduktion. Sannolikheter Standardavvikelse Normalapproximation Sammanfattning Minitab. F2 Introduktion

Vad behövs för att skapa en tillståndsrymd?

Linjära ekvationssystem

1 Minkostnadsflödesproblem i nätverk

Vektorgeometri för gymnasister

5.7. Ortogonaliseringsmetoder

Minsta kvadratmetoden

FFM234, Klassisk fysik och vektorfält - Föreläsningsanteckningar

Frågorna 1 till 6 ska svaras med ett kryss för varje korrekt påstående. Varje uppgift ger 1 poäng.

Igenkänning av bilddata med hjälp av Kohonen-nätverk, samt beskrivning av program

Andragradspolynom Några vektorrum P 2

Från inlärningsteori till praktisk hundträning

Föreläsningsanteckningar Linjär Algebra II Lärarlyftet

Vad kan biologiskt plausibla modeller säga oss?

Statistisk mönsterigenkänning

Linjär Algebra, Föreläsning 9

Basbyten och linjära avbildningar

! &'! # %&'$# ! # '! &!! #

. (2p) 2x + 2y + z = 4 y + 2z = 2 4x + 3y = 6

DIGITAL KOMMUNIKATION

Transkript:

Artificiella neurala nätverk En introduktion i anslutning till H. Malmgren: Inlärning och minne i neurala nätverk. Studentlitteratur 2007 Helge Malmgren, januari 2008 Vad är ett ANN, och vad har man dom till? Artificiella neurala nätverk (ANN) är matematiska modeller som används i tre olika huvudsyften: För att bättre förstå hur nervsystemet hos människan och andra djur fungerar, och för att på så sätt belysa mekanismer för perception, kognition och minne För att kunna bygga bättre och intelligentare maskiner (och andra tekniska prylar) med hjälp av principer som helt eller delvis lånats från hjärnans sätt att fungera. Specialfall av lärande system. Exempel: Adaptiv bildanalys; robotik För att simulera (sammanfatta och förutsäga data från) observerade komplexa system, vars inre lagar är m.e.m. okända

Centrala inlärningbegrepp från filosofi och psykologi Associativ inlärning: Aristoteles, Hume, Mill Successiv association: iakttaget tidssamband A e B. Iakttagelse av A leder sedan till förväntan om B Simultan association: bildande av helhet AB. Kan förklara perceptuell komplettering, innehållsadresserbart minne ( random access, RAM) Modernare distinktioner: deklarativt minne/procedurellt minne/perceptuellt minne långtidsminne/korttidsminne (arbetsminne)/omedelbart minne/ sensoriska buffertar Neuropsykologi/neuropsykiatri, men också klassisk experimentell psykologi, ger information om minnet och dess mekanismer Klassisk betingning: UCS: obetingad stimulus; UCR: obetingad respons; CS: betingad stimulus. Iakttaget samband mellan CS och UCS gör att CS ger upphov till något som liknar R Operant (instrumentell) betingning: Effektlagen: beteenden B som i situationen S leder till belöning förstärks; de som leder till bestraffning försvagas Icke associativ inlärning: sensorisk adaptation, habituering, sensitisering Minnesstörningar i organisk psykiatri Korsakoffs amnestiska syndrom ( Amnestic Syndrome DSM): retrograd amnesi, anterograd amnesi, konfabulation. Beror på bilateral skada i limbiska systemet, t.ex. hippocampus. Många orsaker, bl.a. kroniskt alkoholmissbruk. Omedelbart minne och procedurell inlärning ofta intakta. Vid förbättring återkommer minnen från tiden för den retrograda amnesin. Sekundära minnesstörningar: särskilt asteno-emotionellt syndrom (jfr mild cognitive disorder ICD-10, mild neurocognitive disorder DSM-IV). I stor utsträckning sekundära till koncentrationsstörning. Mycket varierande lokalisation & orsak.

Klassisk betingning av tidssamband Ett djur (eller en människa) som utsätts för ett associativt samband, där UCS kommer en stund efter CS, lär sig snabbt att ge en betingad respons först efter det att rätt tid efter CS har förflutit. Denna nervsystemets förmåga att bilda associationer över tid har ännu inte på något övertygande sätt fått någon neurofysiologisk förklaring, och någon god ANN-modell för detta finns inte... en utmaning som återstår, med andra ord! Aktionspotential och impulsöverföring i en nervcell Med en kraftig förenkling kan man säga att impulsöverföringen i nerverna är digital (en fråga om allt eller intet) medan den är analog i cellkroppen (en graderad signal överförs). Nervsystemet använder sig dock troligen ofta av s.k. frekvenskodning varför det ibland är lämplig att betrakta nervcellens output som en analog signal. Inlärning har länge ansetts bero på modifikation av synapsernas effektivitet. En sådan modifikation ändrar neuronens sätt att bearbeta information. Men förmodligen har en del minne en helt annan typ av bas (cellminne!)

Informationsbearbetningen i en typisk ANN-nod Noder betecknas med stora bokstäver X i Aktivitetscykeln: Inputs från andra noder multipliceras med vikter w ij (jämför gärna synapsers effektivitet) Summation av de viktade delinputs ger nettoinput net_in i (alternativt: x_in i ) Aktiveringsfunktionen bestämmer nodens aktivitet, x i Aktiviteten sänds som output till övriga noder Eventuellt sker inlärning genom modifikation av vikter (enligt någon lämplig algoritm) Aktiveringsfunktioner Lineär (enklaste fallet: x i = x_in i, dvs. aktiviteten = nettoinput). Förekommer knappast biologiskt men är lätt att analysera Ex: Lineära associatorer Stegfunktion (nettoinput ska uppnå tröskel). Modellerar det enskilda allt-eller-intet-svaret i ett neuron Ex: Den enkla perceptronen Sigmoida (S-formade) funktioner. Kan ses som en modell av signalfrekvensens olinjära inputberoende i ett biologiskt neuron. Ger kraftfulla signalbearbetningsegenskaper åt nätverket Ex: Flerlagrade perceptroner Kompetitiv aktivering. Den nod som får högst input ( vinnaren ) ges aktivitet 1, övriga får aktivitet 0. Varianter finns som är grundade på närhet mellan input- och viktvektorer. Ex: Kohonen-nätverk (SOM m fl)

Nätverksarkitekturer Feedforward/feedback-nätverk; en/flerlagrad arkitektur. FF-nätverk har inputlager och outputlager (skilj från input/output i enstaka noder!) Tvålagrat feedforwardnät Samma enlagrade FFnät Feedbacknätverk (återkopplade, rekurrenta) Inlärningsregler i artificiella neurala nätverk Hebb-regeln Δw ij = k x i x j (k: inlärningskonstant) Vikterna ändras i proportion till pre- och postsynaptisk aktivitet. Vikterna växer okontrollerat. Många varianter finns, vissa är biologiskt mer plausibla. Delta-regeln (specialfall när x i och d j är binära: perceptronregeln) Δw ij = k x i (d j - x j ) (d j : önskad output) Vikterna ändras i proportion till den presynaptiska aktiviteten x i och till felet, som är skillnaden (d j - x j ) mellan önskad och verklig postsynaptisk aktivitet (output). Output från noden X j närmar sig gradvis det önskade värdet. Back propagation-algoritmen (generaliserad deltaregel) Δw ij = -k δe/δw ij (E: globala outputfelet) Vikterna ändras i proportion till deras bidrag till det globala felet. Kohonen-regler för kompetiva nätverk Δw j = k (I - w j ) (I: inputvektorn) Viktvektorn w j för noden X j dras närmare eller dras längre bort från inputvektorn I. Vilka noder som berörs, och hur, varierar. Genetiska (evolutionära) algoritmer Selektion över tiden i en population av nätverk. Nätverken som visar de bästa prestanda överlever, och deras egenskaper rekombineras.

Nå, vad använder man de olika modellerna till? Först och främst kan man försöka modellera associativt minne hos människor och djur. Både Pavlovsk betingning och mönsterkomplettering genom simultana associationer kan efterliknas med ANN som använder Hebbregeln. Här eftersträvar man ofta en strukturlikhet mellan modell och det modellerade, i den meningen att enheter i ANN motsvarar neuron (eller neurongrupper) i CNS, etcetera. Kohonen-regeln och liknande algoritmer kan på ett liknande sätt användas i (tämligen plausibla) modeller för mänsklig begreppsbildning. De sistnämnda typerna av algoritmer kan också utnyttjas i maskiner eller datorprogram som kategoriserar data efter i viss mening naturliga principer. Deltaregeln, back-propagation, genetiska algoritmer och andra kraftfulla regler används för att bygga prylar som lär sig att i olika avseenden bete sig sig som konstruktören önskar. Således kan en maskin lära sig att skilja olika typer av input från varandra s.k. mönsterklassifikation och en mobil robot kan fås att anpassa sitt yttre beteende till vissa (av konstruktören) önskade mål. Inlärningen ifråga bygger på att man visar maskinen ett antal exempel och talar om vilka som är rätt respektive fel. Inlärningsalgoritmen leder till att maskinen själv konstruerar en regel som överensstämmer med detta facit. Dessa kraftfulla nätverk kan också anpassa sig till att överensstämma med data som härrör från ett godtyckligt komplext system. Här behöver man inte tänka sig modellen som strukturlik verkligheten; enheterna i modellen behöver således inte motsvara konkreta noder i verkligheten. Pavlov, Hebb och ANN Klassisk betingning kan modelleras som styrd (men oövervakad ) inlärning med (något som liknar) Hebbregeln, Δw ij = k x i x j. Se figuren nedan. Här är x i aktiviteten i CS-noden (A) och x j aktiviteten i R-noden (C). Låt för enkelhets skull x i och x j vara binära. UCS är att betrakta som den styrsignal som man lägger på outputenheten under träningen. Vikten från CS-neuronet till R-neuronet ökar enligt Hebb-regeln med k enheter varje gång som CS-neuronet är aktivt samtidigt som man (via UCS) tvingar R-neuronet att vara aktivt. För biologisk realism måste man ersätta Hebbregeln med någon regel som inte medför att vikterna växer obegränsat. I många verkliga neuron finns en mekanism, långtidspotentiering (LTP), som i flera avseenden påminner om Hebb-regeln och som därför skulle kunna vara en biologisk bas för associativ inlärning Under vissa omständigheter uppträder iställer långtidsdepression, LTD. Inlärning av graderade signaler är svår att förklara i traditionell ANN-teori; här kan teorin för kontinuerliga attraktorer ha en plats (jämför också cellulärt minne) Fördröjd betingning kan tänkas förklaras genom Hebbmekanismer i kedjor av neuron - men är sådana modeller realistiska? Här är Pavlovmodellen:

Övervakad och styrd inlärning i linjära associatorer Vid övervakad inlärning har nätverket en önskad output för varje inputvektor. Denna önskade output kan vara ett skalärt tal som anger önskad klasstillhörighet för input, men kan också vara en vektor som i figuren här. Den jämförs med nätets verkliga output och vikterna korrigeras så att felet minskar. Ofta används deltaregeln. En linjär associator med n inputnoder (X i ) och n outputnoder (Y i ) kan med deltaregeln bilda associationer mellan högst n stycken linjärt oberoende inputvektorer och fritt valda outputvektorer, utan att associationerna interfererar med varann. Vid styrd, oövervakad inlärning (eng.: forced learning; jfr Pavlov-modellen ovan) tvingas den önskade output på nätet som signal i outputenheterna under träningen. Med Hebbregeln och sådan styrd inlärning kan n stycken ortogonala inputvektorer associeras med var sin godtyckligt vald outputvektor. Nätet kan också autoassociera vektorer och därefter mönsterkomplettera. Deltaregelns konvergens i den linjära associatorn Outputfelet E är summan (över alla outputnoder och alla inputvektorer) av de kvadrerade skillnaderna mellan verklig och önskad output, och är (givet en viss inputmängd) en positiv funktion av nätverkets vikter. I ett linjärt nätverk är denna funktion kvadratisk, dvs inga termer har högre potens än 2. Uppgift: Träna vidstående binära mini-associator på (0,0) 0; (1,0) 0; (0,1) 1; (1,1) 1. Felfunktionen ser då ut som nedan: Eftersom felfunktionen är kvadratisk har den ett enda minimum. För att hitta detta minimum från en given punkt (dvs från de initiala vikterna) kan man t.ex. gå brantaste vägen neråt. Detta är likvärdigt med att i w 1 -led röra sig i proportion till den partiella derivatan av E med avseende på w 1, och motsvarande i w 2 -led. Detta kan visas vara (nästan) ekvivalent med deltaregeln.

Tröskelaktivering: y = 1 omm x 1 w 1 + x 2 w 2 > θ Beslutsgräns: den räta linjen x 1 w 1 + x 2 w 2 = θ XOR-problemet : Perceptronen (1) Historiskt viktig typ av ANN (Rosenblatt) Enlagrat FF-nätverk I Rosenblatts version har nätet ytterligare ett lager på inputsidan, men med fixa vikter (det ökar därför inte beräkningskraften) Stegfunktion Utför styrd klassifikation av mönster Använder perceptronregeln (variant av deltaregeln) Kan endast lösa linjärt separerbara problem Konvergerar mot en lösning om den existerar Perceptronen (2) I denna modell kodas tio LCD-siffror sålunda, att en inputkanal är aktiv om motsvarande segment i siffran är på. Siffran 1 kodas alltså som 0110000, etc. Användaren kan välja en godtycklig indelning av siffrorna i två klasser och försöka träna perceptronen till att göra samma indelning. Vissa klassindelningar definierar linjärt icke separerbara problem (nu i sju dimensioner). Ett exempel fås om man försöker lägga siffrorna 6 och 9 i den ena klassen och övriga i den andra.

Feedback-nätverk (återkopplade, rekurrenta) En signal kan i princip cirkulera hur länge som helst Inte självklart att signalmönstret stabiliseras Om mönstret alltid blir stabilt har vi ett attraktornätverk Signalmönstret i attraktorläge kan då betraktas som nätverkets (statiska) output Men andra möjligheter finns. T.ex. kan den fortlöpande aktiviteten i någon delmängd av enheterna ses som output över tid från nätverket Det mänskliga nervsystemet domineras helt av återkopplade förbindelser! Synkron uppdatering från (1, 1) ger: (1, 1) ( 1, 1) ( 1, 1) (1, 1) (1, 1) dvs en gränscykel av mönster Varannan-uppdatering med början i X ger: (1, 1) ( 1, 1) ( 1, 1) ( 1, 1) dvs en punktattraktor Hopfieldnätet ( Diskret autokorrelator ) Också historiskt viktigt Feedback-arkitektur Symmetriska vikter med 0 överallt på diagonalen Konservativ stegfunktion Asynkron, slumpmässigt vald uppdatering av noderna Stabiliserad dynamik (Hopfield) Tränas fr.a. med Hebb Auto-associativt Mönsterkompletterar till de inlärda mönstren Modell av perceptuell komplettering och innehållsadresserbart minne?

Hopfieldnätets stabilitet Hopfieldnätet uppdateras asynkront och har aktiveringsfunktionen: 1 om net_in > 0-1 om net_in < 0, samma aktivitet som tidigare, om net_in = 0. Nätverkets globala energi: E = - 1/2 ( x i x j w ij ) (summation över i, j). Energin är ett globalt mått på icke-överensstämmelsen mellan nodernas nettoinput och aktivitet. Observera nämligen att x i x k w ik (där vi bara summerar över i) = x k x i w ik = x k net_in k Storheten - 1/2 (x k x i w ik ), den lokala energin E k för nod k, ändras därför i negativ riktning, om noden ändrar aktivitet vid uppdatering. Övriga ändringar i den globala energin då nod nr k uppdateras är tillsammans lika med ändringen i den lokala energin. Detta förhållande beror på viktsymmetrin, w ij = w ji. Den globala energin går alltså alltid ned då en aktivitet ändras Då energin bara har ett ändligt antal möjliga nivåer (med givna vikter) måste den till slut nå ett minimum där ingenting mer ändras. HyperHopfield I denna modell, där input återigen är binärt (eller bipolärt) kodade LCD-siffror, kan man bl.a. studera hur ett rekurrent nätverks aktivitet spontant uppdateras. Man kan följa energifunktionens utveckling och pröva under vilka villkor på vikterna som uppdateringen leder till ett stabilt sluttillstånd (en attraktor). Nätverket kan tränas att känna igen en eller flera siffror. När det tränats och ett felaktigt mönster presenteras, kompletteras detta under nätverkets uppdatering ofta till att bli något av de inlärda mönstren

Konkurrens, samarbete och the winner takes it all I nervsystemet ser man många exempel på konkurrens genom ömsesidig hämning Typexempel: lateral inhibition som ger kontrastförstärkning I ANN-modeller, t.ex. SOM, åstadkommer man oftast denna winner takes all på andra sätt I det (teoretiska) fall då den ömsesidiga inhibitionen leder till att ett och endast ett element förblir aktivt, talar man om kompetitiv aktivering eller the winner takes it all Konvergens mellan förbindelser kan ibland beskrivas som ett slags samverkan (kooperation) Self-Organising Map (SOM) Ett av Kohonens ANN Enlagrat FF-nätverk Kompetitiv aktivering Kohonen-inlärning Gör oövervakad klassifikation (kategorisering) av inputs Ger en 2D-karta över likheter i inputdatamängden: efter träningen vinner rumsligt näraliggande enheter på (kodar) liknande inputs Nodernas rumsliga placering i nätverket har alltså betydelse Skilj denna rumsliga placering från placeringen i vektorrummet av nodernas viktvektorer!

Kompetitiv aktivering i SOM För varje input (gröna) utses den nod (röda) till vinnare vars viktvektor ligger närmast denna input i vektorrummet. Ofta används euklidiskt avstånd (mätt med Pythagoras sats i n dimensioner). Vinnarnoden får aktivitet 1 och övriga noder får aktivitet 0. Alternativt kan man alltså tänka sig vanlig linjär aktivering och sedan en ömsesidig inhibition, anpassad så att den nod som har störst aktivitet från början blir ensam kvar. Om alla vektorer har samma längd är betraktelsesätten likvärda. x y = l(x) l(y) cos α! α Kohonen-inlärning: den vinnande nodens viktvektor dras (ännu) närmare den aktuella inputvektorn Även (de rumsliga) grannarnas viktvektorer dras (lite) närmare denna inputvektor. (Endast en granne illustreras här.) Obs: noder som är rumsliga grannar behöver från början inte ha viktvektorer som ligger nära i vektorrummet! Grannarna blir genom inlärningen bättre på att vinna på vektorer som liknar den aktuella inputvektorn På detta sätt kommer rumsligt näraliggande noder så småningom att vinna på (koda för) liknande inputs Detta är kartan över inputdomänen Inlärning i SOM

Kartan över inputdomänen - ett exempel 1 2 4 3 6 7 5 10 8 9 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 28 27 29 30 Informationen om likhet i inputs n dimensioner komprimeras och avbildas på rumsrelationer i (oftast) två dimensioner. Kartan kan vara en torus, dvs gå runt. Omkodning av input, t.ex. byte av skala för en komponent i vektorerna, kan leda till förändringar i vilka vektorer som bedöms som nära varann, och därmed till olika slutresultat. Dimensioner som man vill ska ha särskilt stor vikt vid klassifikationen skall alltså skalas upp. Travelling salesman med SOM Travelling salesman (TSP) är problemet att hitta kortaste vägen genom ett antal städer. I en förenklad variant, det euklidiska TSP, är städerna givna genom sina koordinater på kartan och avståndet definieras genom fågelvägen. Det kan lösas med SOM. Bygg ett endimensionellt SOM med lika många noder som städer och med städernas koordinater som inputvektorer. Efter träningen kodar, som vanligt, rumsligt näraliggande noder för liknande inputs, vilket ju nu betyder: för geografiskt närliggande städer. Koordinaterna för noderna, i den ordning som noderna kommer i nätverket, är m.a.o. nätverkets förslag till resväg! Nodernas koordinater sammanfaller i allmänhet inte exakt med städernas. Resvägen (t.h.) måste därför putsas.

Neurala nätverk för olinjära klassifikationsproblem Många klassifikationsproblem i levande livet är inte linjärt separerbara. Traditionella statistiska metoder för linjär diskrimination, liksom enkla perceptroner, felklassificerar alltså helt säkert några av data. Flera typer av neurala nätverk, inte minst flerlagrade perceptroner med sigmoida aktiveringsfunktioner, kan däremot lösa alla konsistenta klassifikationsproblem (i en given datamängd) perfekt. De kan också approximera (nästan) alla matematiska funktioner. De tränas då med funktionens argument som input och funktionsvärdena som output En flerlagrad perceptron har minst två lager av förbindelser med adaptiva vikter (dvs dessa vikter påverkas av inlärningen) 1 X 2 1 1 X 2 1 X 1 X 1 Arkitektur och aktivering i flerlagrade perceptroner Inputenheterna kan ha direkta förbindelser till output, men i standardmodellen går signalflödet alltid via de dolda noderna De dolda noderna skall ha sigmoida aktiveringsfunktioner, t.ex. den logistiska funktionen y = 1/(1 +e sx ) (sigmoid i snäv mening) eller tanh (tangens hyperbolicus, en trigonometrisk funktion) Outputenheterna kan vara linjära, särskilt när nätverkets används för regression Om uppgiften är klassifikation är det lämpligt att använda en logistisk outputfunktion. Output kan då tolkas som sannolikheten för klasstillhörighet Output kan också kodas som 1 av N, och approximerar då (med en logistisk s.k. softmaxfunktion) sannolikheterna för tillhörighet till ifrågavarande klasser 1 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 1 0.8 0.6 0.4 0.2 0-0.2-0.4-0.6-0.8 0-2 -1.5-1 -0.5 0 0.5 1 1.5 2-1 SIGMOID MED S = 2 RESP. S = 5 PLOT AV TANH MELLAN -! OCH! -3-2 -1 0 1 2 3

Träning av MLP-nätverk Den algoritm som kallas back propagation of error beräknar på ett speciellt sätt varje vikts bidrag till outputfelet (mätt som derivatan av felet med avseende på vikten) och korrigerar vikterna därefter. Outputfelet för en given datamängd, sett som en funktion av vikterna, är nu en funktion med flera minima, och algoritmen leder ofta ner i ett lokalt minimum (till skillnad från deltaregeln i ett linjärt nätverk). Här illustreras detta, helt orealistiskt, för fallet med bara en vikt För att öka sannolikheten att hitta ett globalt minimum kan man enklast upprepa försöket några gånger med nya initiala vikter. Många förbättrade algoritmer finns. 120 100 80 60 40 20 EN FELFUNKTION MED TVÅ MINIMA 0-2 -1.5-1 -0.5 0 0.5 1 1.5 2 Finns det då några fel på denna underbara metod? En perfekt lösning har ofta dålig förmåga till generalisering. Orsak: Data härrör ofta från samverkan mellan en enkel, förutsägbar process och en oförutsägbar slumpfaktor Den perfekta lösningen hittar en allmän regel, som i den givna datamängden stämmer perfekt även med data som mest beror på slumpen Detta ger dock ingen fördel i nästa urval av data tvärtom Enklare lösningar anpassar sig inte lika nära till de slumpbetingade data Exempel: Om data härrör från två skilda normalfördelningar med samma spridning, är en viss rät linje den bästa beslutslinjen. Den kan förväntas ge lägst antal felaktiga förutsägelser! 1 X 2 1 X 1

Ska man då aldrig använda olinjära metoder? Jo, om man har någon oberoende anledning att anta att de underliggande sambanden motiverar en sådan Redan antagandet om olika varians hos två normalfördelningar leder således till att en kvadratisk kurva är den bästa beslutslinjen Om man har anledning anta att sambanden är ännu mer ickenormala, men inte vet särskilt mycket mer om dem, är det motiverat att pröva en allmän icke-linjär metod, som t.ex. flerlagrade, olinjära neurala nätverk. Som försiktighetsåtgärd måste man alltid pröva resultaten från träningen av nätverket på en oberoende datamängd ( testfil ). Nätverkets komplexitet skall hållas så låg som möjligt genom val av ett litet antal dolda noder, och gärna genom någon automatisk metod för att förhindra höga vikter (viktregularisering). LVQ (Learning Vector Quantisation) LVQ fungerar i mycket som Kohonens självorganiserande karta (SOM). LVQ gör dock ingen rumslig karta, och det är nu fråga om en övervakad klassifikation. Om uppgiften är att indela en mängd av inputmönster i N olika klasser, skall nätverket ha N outputnoder och klasstillhörigheten skall kodas som 1 av N. I figuren till höger är N = 2. Antalet mellanliggande Kohonen-noder väljs som en multipel M av N, till exempel 3 * N. Då kan M (i figuren: 2) mellanliggande noder kopplas till varje outputnod. Kopplingen är direkt, dvs. aktivitet i en Kohonen-nod ger automatiskt aktivitet i motvarande outputnod. Dessa M noder sägs fortsättningsvis höra till den klass av mönster som skall kodas av aktivitet i resp. outputnod.

Aktivering och inlärning i ett LVQ-nät I figurerna till höger symboliseras de två klasserna med kvadrater respektive cirklar. Ofyllda symboler står för inputs, och fyllda cirklar står för viktvektorerna hos tillhörande Kohonennoder. ( Rund, fylld nod hör alltså till rund, ofylld input, etc.) Man ger en input (blå ring) och utser en vinnare i form av den Kohonen-nod vars viktvektor (grön ring) ligger närmast input Om och endast om den vinnande noden hör till respektive inputs klass (cirkel/kvadrat) drar man dess viktvektor närmare inputvektorn, i annat fall (som i den övre figuren) avlägsnar man den från inputvektorn Så småningom kommer viktvektorerna för varje nod som hör till en viss klass att ligga nära någon cluster av inputs i denna klass Eftersom varje klass kodas av flera (M st) Kohonen-noder kan LVQ lösa icke linjärt separerbara problem (nedre figuren) Adaptive Resonance Theory (ART 1) ART är ett biologiskt inspirerat feedbacknätverk för kategorisering (oövervakad klassifikation), som arbetar enligt principerna konkurrens och analys genom syntes Det har rekurrenta förbindelser från det kompetetiva lagret, och den definitiva vinnaren måste producera en output som är tillräckligt lik input. (Vigilansfaktorn bestämmer vilka krav på likhet som ställs.) Reset-mekanismen träder i aktion om detta inte sker, och en ny nod prövas då som vinnare Träning sker enligt en modifierad Hebbregel ART har både stabilitet och plasticitet, till skillnad från t.ex. Hopfieldnätet och SOM

Inlärning av sekvenser (1): MLP med tidsfönster Neurala nätverk kan analysera sekventiell information på flera sätt. Man kan t.ex. ge en MLP ett rörligt tidsfönster. Man matar in de sekvenser som man vill predicera från, och det som man vill predicera, i ett vanligt feedforwardnät som input resp. output Om man vill predicera nästa steg från de tre föregående skall man välja ett nät med tre inputs och en output, och slumpvis mata in alla delsekvenser om fyra steg Träning sker vanligen genom någon variant av back propagation Det resulterande nätverket är väl anpassat till data och förutsäger, om man valt ett lagom kraftfullt nätverk, nya data hyfsat korrekt Nätverket har då approximerat den bakomliggande funktionen bra, vilket alltså (jämför ovan) inte betyder att den bakomliggande mekanismen måste ha strukturen av ett nätverk! Sekvensinlärning (2): Egentliga återkopplade nätverk I de egentliga återkopplade nätverken för analys av sekvenser, typ Jordan och Elman, behöver man inte ge hela sekvenser av inputs till inputnoderna. Information om tidsföljd lagras istället genom de rekurrenta förbindelser som finns I Elmans version (SRN, Simple Recurrent Net, till vänster nedan) återföres informationen från de dolda noderna till ett särskilt lager av noder (kontextlagret, current plan i NeuralWorks), som också fungerar som extra inputnoder I Jordans version (nedan till höger) är det istället outputnoderna som har feedbackförbindelser till kontextlagret Träning kan ske genom back propagation-algoritmen

Genetiska algoritmer för neurala nätverk För prediktionsuppgifter och annan systemanalys (cellsignalering!), och inte minst för inlärning av kontroll (robotik!), vill man ofta använda mer komplicerade feedbackarkitekturer än Elman- och Jordan-näten För dylika nätverk, liksom för andra typer av ANN, finns en alternativ och mycket kraftfull typ av inlärningsmekanism att tillgå, nämligen de genetiska algoritmerna Dessa metoder, som också benämns evolutionära algoritmer, är analoga med naturligt urval på populationsnivå snarare än med inlärning på individnivå En hel population av neurala nätverk skapas m.e.m. slumpvis, vart och ett med parametrar som skiljer sig något från de andras. Vanligtvis håller man arkitekturen konstant och varierar endast vikterna. Dessa representeras matematiskt som delsträngar i en lång sträng av tal, ofta binära (andra representationer är också vanliga) Alla nätverk i populationen prövas på det problem som ska lösas. De nätverk som lyckas sämst kasseras, medan de andra får chansen att föröka sig och till och med få gemensam avkomma genom att parameteruppsättningarna rekombineras. Genom mutationer, dvs små slumpvisa parameterförändringar, garanterar man att det i långa loppet sker en positiv utveckling (och inte bara ett negativt urval) Genetiska algoritmer är kraftfulla men långsamma! Nätverk utan inlärning: modellering av stereopsi Stereopsi är en av de viktigaste mekanismerna för 3D-seende. Den är lågnivåig i det att den inte förutsätter objektigenkänning Bygger på disparitet mellan motsvarande näthinnepunkter För att kunna beräkna dispariteter måste hjärnan veta vilka punkter som motsvarar varandra. Annars får man falska matchar De falska matcharna kan elimineras under vissa antaganden om objekten i omvärlden Det finns ANN som klarar detta och kan lösa Julesz-stereogram

Stereomaskinen Outputlager Kompetitivt lager (5) Kooperativt lager (4) Matchningslager (2-3) Inputlager (1, näthinnor ) Nätverket bygger, förutom på detektion av överensstämmelser, på en kombination av kooperation och kompetition mellan neurala enheter Samarbetet i lager 4 kodifierar nätverkets bias till förmån för sammanhängande objekt, som det alltså har jämförelsevis lätt att se I figuren kan man bl.a. iaktta hur den kooperativa processen i lager 4 eliminerar små inhomogeniteter i det mönster som kommer från lager 3 Addendum 1: Vektorer och matriser 2-dimensionella vektorer (-1, 0) etc. Multiplikation med skalär: 3 (2,5) = (3 2, 3 5) = (6,15). Skilj från: Skalärprodukt: (1,1) (2,1) = 1 2 + 1 1 = 3 (komponentvis multiplikation samt addition av resultaten) Alternativ definition: v 1 v 2 = l(v 1 ) l(v 2 ) cos α Ortogonala vektorer: v 1 v 2 = 0 (Komponentvis) addition av vektorer En uppsättning vektorer sägs vara linjärt oberoende om ingen av vektorerna kan skrivas som en linjär kombination av de andra. Normalisering: l(v) = 1

Vektorer och matriser (2) Betrakta feedforward-nätverket här bredvid med 3 inputnoder och 2 outputnoder. Nettoinput till noden X 4 är skalärprodukten av inputvektorn i = (x 1, x 2, x 3 ) och nodens viktvektor w 4 = (w 14, w 24, w 34 ), ty: x_in 4 = x 1 w 14 + x 2 w 24 + x 3 w 34 = Σ x i w i4 = i w 1 Av detta följer att givet normerade vikt- och inputvektorer och enkel linjär aktivering, så ger den nod störst output vars viktvektor ligger närmast inputvektorn, dvs vars viktvektor bildar den minsta vinkeln α med inputvektorn (cos α är störst då) Det normerade nätverket kan alltså sägas mäta likheten mellan varje input och de olika viktvektorerna I kompetitiva nät låter man därför ofta den nod vinna (som enda nod få aktiviteten 1) vars viktvektor ligger närmast inputvektorn, mätt med euklideiskt avstånd. Alternativt kan man låta neuronen konkurrera genom ömsesidig inhibition tills endast ett är aktivt I icke-normerade nätverk spelar den absoluta storleken på input- och viktvektorerna också roll för responsen Vektorer och matriser (3) En matris är en ordnad struktur av tal, oftast i två dimensioner:! 2 3 1$ # 1 10 0& " % här med 2 rader och 3 kolumner. Elementet i rad i och kolumn j betecknas a ij Addition av matriser sker komponentvis Matrismultiplikation mellan en matris A och en matris B, som betecknas med AB, kan ske omm A har m rader och n kolumner, dvs. är en (m, n)-matris, medan B har n rader och p kolumner, dvs är en (n, p)-matris. Resultatet blir en (m, p)-matris. Element nr a ij fås av skalärprodukten mellan rad i från A och kolumn j från B (de är lika långa!) Vektorn av nettoinputs till ett enlagrat nätverks outputenheter är matrisprodukten av inputvektorn, nu betraktad som en (1, n)-matris, och viktmatrisen w: x_in = iw. Om vi slutligen betecknar aktiveringsfunktionen med f och vektorn av aktiviteter i outputenheterna med y, är y = f(iw)

Hjärnan: cirka 10 11 neuron, vart och ett med cirka 1000 förbindelser... Viss ödmjukhet tillrådes alltså... We should keep in mind, whether theorizing or experimenting, that the brain is at least as complicated as the kidney. Paul E. Meehl