Artificiella Neurala Nätverk - en kort introduktion

Relevanta dokument
Vi skall skriva uppsats

Tränarguide del 1. Mattelek.

Individuellt Mjukvaruutvecklingsprojekt

Träning i bevisföring

Erfarenheter från ett pilotprojekt med barn i åldrarna 1 5 år och deras lärare

Lathund, procent med bråk, åk 8

Mätningar på op-förstärkare. Del 3, växelspänningsförstärkning med balanserad ingång.

912 Läsförståelse och matematik behöver man lära sig läsa matematik?

Laborativ matematik som bedömningsform. Per Berggren och Maria Lindroth

Bedömning för lärande i matematik i praktiken. Per Berggren och Maria Lindroth

Sammanfatta era aktiviteter och effekten av dem i rutorna under punkt 1 på arbetsbladet.

Cellgifter/Cytostatika Myter & Sanningar:

Svenska Du kan med flyt läsa texter som handlar om saker du känner till. Du använder metoder som fungerar. Du kan förstå vad du läser.

Har vi lösningen för en bättre hemtjänst? Självklart.

Boken om Teknik. Boken om Teknik är en grundbok i Teknik för åk 4 6.

Presentationsövningar

Hävarmen. Peter Kock

Översikt. Rapport från skolverket. Förändring av matematikprestationerna Grundtankar bakom Pixel

Handledning för digitala verktyg Talsyntes och rättstavningsprogram. Vital, StavaRex och SpellRight

Något om permutationer

Sammanfattning på lättläst svenska

Ha det kul med att förmedla och utveckla ett knepigt område!

Systematiskt kvalitetsarbete

Algebra, polynom & andragradsekvationer en pampig rubrik på ett annars relativt obetydligt dokument

Vanliga frågor. LEGOeducation.com. Konceptet. Processen

Kampanj kommer från det franska ordet campagne och innebär att man under en tidsbegränsad period bedriver en viss verksamhet.

Konsten att multiplicera (stora) heltal

FAQ Barnkonsekvensanalys i Svenska kyrkan

Praktisk programmering

SANNOLIKHET. Sannolikhet är: Hur stor chans (eller risk) att något inträffar.

HT 2011 FK2004 Tenta Lärare delen 4 problem 6 poäng / problem

GRUNDERNA I SJÄLVLEDARSKAP

Samtals- och dokumentationsunderlag Språk och erfarenheter

KÄNSLA AV SAMMANHANG. Uppskattad dygnsdos i gr. och preparat (de sista 30 dagarna):

MR 5 FRÅN FÖRBUD TILL RÄTTIGHET WORKSHOP I KLASSRUMMET TEMA: MÄNSKLIGA RÄTTIGHETER (MR)

Systematiskt kvalitetsarbete

Det är bra om även distriktsstyrelsen gör en presentation av sig själva på samma sätt som de andra.

Hur utvecklar man användbara system? Utvärdering. Användbarhet handlar om kvalitet. Utvärdering. Empiriska mätningar. Metoder

Disclosure. SOMP-I skapades av Kristina Persson. SOMP-I ägs av Barnens rörelsebyrå Kristina Persson & Kine Johansen är delägare i företaget

a n = A2 n + B4 n. { 2 = A + B 6 = 2A + 4B, S(5, 2) = S(4, 1) + 2S(4, 2) = 1 + 2(S(3, 1) + 2S(3, 2)) = 3 + 4(S(2, 1) + 2S(2, 2)) = = 15.

Kvalitetsrapport Så här går det

Klassen kom tillsammans fram till vilka punkter som vi skulle ta hänsyn till. Dessa var:

Enkätresultat. Enkät: Utvärdering moment 2. Datum: :28:20 Aktiverade deltagare (Klinisk psykologi 1 (22,5hp)) Besvarad av: 27(47) (57%)

När du som vårdpersonal vill ta del av information som finns hos en annan vårdgivare krävs det att:

Två konstiga klockor

Lokal pedagogisk planering i matematik för årskurs 8

Kunskapskrav för godtagbara kunskaper i matematik - slutet av åk 3

4-3 Vinklar Namn: Inledning. Vad är en vinkel?

UTMANINGAR OCH MÖJLIGHETER HAR DU 730 DAGAR OCH ETT STARKT DRIV DÅ HAR VI EN LEDARROLL TILL DIG

DEMOKRATI 3 DEMOKRATINS VILLKOR

Skriva B gammalt nationellt prov

Varför är det så viktigt hur vi bedömer?! Christian Lundahl!

konstanterna a och b så att ekvationssystemet x 2y = 1 2x + ay = b 2 a b

729G04 - Hemuppgift, Diskret matematik

Så kan du arbeta med medarbetarenkäten. Guide för chefer i Göteborgs Stad

ETT LIV BLAND MOLNEN

Repetitivt arbete ska minska

Index vid lastbilstransporter

3.1 Linjens ekvation med riktningskoefficient. y = kx + l.

Syftet med en personlig handlingsplan

FOLKUNIVERSITETET 1 (11) Bildmanér för Webb3. Vår referens: Fredrik Suter Version 1. Stockholm

Distribuerade Informationssystem VT-04

4-6 Trianglar Namn:..

Elektronen och laddning

Boll-lek om normer. Nyckelord: likabehandling, hbt, normer/stereotyper, skolmiljö. Innehåll

Tankar om elevtankar. HÖJMA-projektet

Linjära system av differentialekvationer

Lösningar s. 8 Perspek9v s. 7

EN BÄTTRE KREDITAFFÄR

Pesach Laksman är lärarutbildare i matematik och matematikdidaktik vid Malmö högskola.

Ekvationssystem, Matriser och Eliminationsmetoden

Vad är det att vara en bra brandman? Vad kan man då?

Kapitel 6. f(x) = sin x. Figur 6.1: Funktionen sin x. 1 Oinas-Kukkonen m.fl. Kurs 6 kapitel 1

VÄRDERINGSÖVNINGAR. Vad är Svenskt?

En stärkt yrkeshögskola ett lyft för kunskap (Ds 2015:41)

Friskis&Svettis Linköping

Kriterium Kvalitet 1 Kvalitet 2 Kvalitet 3 Kvalitet 4 Använda, Utveckla och uttrycka

Introduktion till Open 2012

Stockholms Tekniska Gymnasium Prov Fysik 2 Mekanik

Facit med lösningsförslag kommer att anslås på vår hemsida Du kan dessutom få dem via e-post, se nedan.

Några frågor om dina känslor nu och tidigare

Sektionen för Beteendemedicinsk smärtbehandling

Dina tänder är viktiga. Du behöver dem varje dag.

BRA VIBRATIONER. Namn: Klass: Ett ämnesövergripande område i Bi,Fy,Tk 8a,8b och 8e ht.2012.

FAIR JOBB. Vill du få lite mer koll på arbetslivet? Här är några bra sajter att kolla in:

Särskild avgift enligt lagen (2000:1087) om anmälningsskyldighet för vissa innehav av finansiella instrument

Predikan Lyssna! 1 maj 2016

P-02/03 säsongen 2016

IT, etik och organisationer

Visuell Identitet Logotype Logotype

Koll på cashen - agera ekonomicoach!

PRÖVNINGSANVISNINGAR

Jörgen Lagnebo PLANERING OCH BEDÖMNING MATEMATIK ÅK 7

Intervju med Årets teknikkvinna 2011 Anna Pernestål

Gemensam problemlösning. Per Berggren och Maria Lindroth

FRÅN A TILL Ö LäraMera Ab / och Allemansdata Ab / FRÅN A TILL Ö

Manual för BPSD registret. Version 6 /

Kvalitetsredovisning Läsår

Antal grodor i varje familj Antal hopp tills alla bytt plats Ökning

Transkript:

Artificiella Neurala Nätverk - en kort introduktion Denna websida, och de sidor som hör till den, är avsedda att så småningom bli en liten lärobok om ANN. Än så länge finns bara de mest basala avsnitten. De planerade men ännu inte existerande sidorna har i texten antytts genom understrukna (men inte länkfärgade) nyckelord. På denna sida: Biologiska och artificiella nervnät Nervnät som matematiska instrument Mönsterklassifikation ANN - grundläggande beskrivning Element och struktur hos ANN Input, output och aktiveringsfunktion Inlärningsalgoritmer Gå vidare... Följande sidor (de flesta under konstruktion, som det heter...) Stereoseende Simuleringsmodeller för nervceller ANN och klassiska statistiska modeller Perceptronen SOM Processkontroll Robotik Optimering Hopfieldnätet Vektorer, matriser och ANN Den lineära associatorn ANN i medicinsk diagnostik: några exempel Externa länkar Våra kurser

Biologiska och artificiella nervnät De tankemodeller som kallas "artificiella neurala nätverk" (ANN) har, som namnet säger, i hög grad inspirerats av vad vi vet eller tror oss veta om verkliga neurala system. Ett av de klassiska motiven bakom att ställa upp ANN-modeller är också att genom beräkningar och simuleringar bättre förstå hur verkliga nervsystem fungerar - t.ex. hur det visuella systemet gör när det extraherar information om omgivningen ur ljus som faller på näthinnan. En viktig del av ANN-forskningen är med andra ord modellering av verkliga nervnät. Ett exempel på sådan modellering ges av artificiella nervnät för stereoseende. Ett annat är de mycket detaljerade och realistiska simuleringsmodeller för nervceller som utarbetats av flera forskargrupper på senare år. ANN-forskning av detta slag går mer eller mindre kontinuerligt över i neurofysiologiskt och neuroanatomiskt teoribygge. Simulering av biologiska nervnät är dock bara en aspekt av ANN. En annan, och lika viktig, användning av artificiella nätverk bygger på idén, att vi genom att efterlikna hjärnans sätt att arbeta skulle kunna hitta bättre metoder än de vi redan har för att lösa besvärliga matematiska och tekniska problem i vetenskap och vardag. Nervnät som matematiska instrument Ett artificiellt neuralt nätverk tar emot en signal, behandlar den, och avger resultat i form av en ny signal. Processen kan - för varje given nätverkstyp - beskrivas med ett antal matematiska formler. Ur en viss aspekt kan man därför säga att ett ANN inte är något annat än en matematisk procedur - eller en algoritm - för bearbetning av data. De algoritmer som definieras av nätverk är ofta nära besläktade eller rent av identiska med redan kända "klassiska" procedurer, inte minst statistiska sådana. Ofta avviker de dock från tidigare kända algoritmer på sätt som gör att det kan vara lämpligt att pröva dem som alternativ för vissa typer av problem. Den som vill kan nu göra en utvikning till en mer tekniskt orienterad beskrivning av grundläggande likheter och skillnader mellan klassiska algoritmer och och ANN. Här fortsätter vi istället med den mer informella introduktionen. Mönsterklassifikation En omfattande klass av problem som lämpar sig för ANN-metodik har att göra med igenkänning och separation av mönster. En läkare som ställer en diagnos utifrån kliniska data och laboratoriefynd försöker hitta ett mönster i data, som kan ge underlag för det ena eller det andra beslutet. Men en maskin som känner igen hundrakronorssedlar, eller som sorterar felaktiga produkter från riktiga på ett löpande band med utgångspunkt från vissa mätningar, utför också en mönsterigenkänningsuppgift.

Att programmera maskiner för sådana uppgifter kan vara svårt, eftersom det inte sällan är mycket komplicerat att med tillräcklig precision beskriva de relevanta skillnaderna mellan mönstren som skall separeras. När det gäller att skilja mellan två typer av tillverkade objekt, exempelvis äkta och falska hundrakronorssedlar, går det visserligen att säga exakt hur ett äkta objekt ska se ut. Men om det gäller att separera två typer av "naturgivna" objekt från varann, exempelvis friska lungor från sjuka på röntgenbilder, har vi inte tillgång till någon tillverkarspecifikation. Inte ens den röntgenläkare som i praktiken utan problem kan skilja sjukt från friskt kan i allmänhet tala om exakt hur han/hon egentligen gör denna bedömning - dvs. vad som egentligen skiljer de två klasserna av mönster från varann. Antag då att vi vill programmera en maskin för att separera "friska" från "sjuka" röntgenbilder - är det överhuvudtaget möjligt? Det i sammanhanget intressanta förhållandet med läkarens praktiska färdighet vad gäller mönsterseparation är att den i stor utsträckning är inlärd genom exempel. Man blir inte en bra röntgenläkare genom att lära sig listor på kriterier för friskt och sjukt (fullständiga sådana finns ju inte) utan genom att utsättas för ett stort antal verkliga exempel, för vilka det finns ett "facit". Nåväl - låt oss då bygga en maskin som vi kan träna genom exempel! Detta är en av grundtankarna bakom användandet av artificiella neurala nätverk för mönsterseparation. Många typer av ANN kan nämligen tränas genom exempel och kan därför utnyttja ett "facit" för att gradvis bli bättre och bättre på en viss mönsterseparationsuppgift. En stor del av den aktuella forskningen vad gäller tillämpningar av ANN, inte minst i medicinsk diagnostik, handlar om sådan intränad mönsterklassifikation. Vi ska nedan i någon mån försöka förklara hur träning av ANN går till. Du kan också gå direkt till sidan om perceptronen, som är ett historiskt viktigt exempel på ett ANN som lär sig "mönsterigenkänning med facit". Innan vi går vidare med att beskriva andra typer av användningar av ANN vill vi nämna att vissa artificiella nervnät också kan klassificera data utan att ha ett facit. De kan med andra ord hitta en struktur i en klass av datapunkter utan att någon extern information om hur klassen ska delas upp föreligger. Intressant nog visar det sig att dessa nervnät ofta hittar klassifikationer som vi människor i efterhand finner "naturliga". Det är kanske inte så konstigt, eftersom näten delvis konstruerats med verkliga nervsystem som förebild! Ett mycket använt ANN i detta sammanhang är finländaren Kohonens "Self Organising Map" (SOM). Andra intressanta tillämpningar hittar man inom processkontroll, robotik och optimering. I det förstnämnda fallet tränas ett nätverk att själv ställa in värdena på variabler i en process så att ett visst, önskat slutresultat av processen uppnås. Grundprincipen är densamma som vid mönsterklassifikation med facit, men eftersom en tidsfaktor kommer in är uppgiften i allmänhet mer krävande. Neurala nätverk har kommit till praktisk användning i flera olika processindustrier. Man har också stora förhoppningar på dem när

det gäller konstruktion av robotar som lär sig. Användandet av ANN för att lösa optimeringsproblem får än så länge mer ses som illustrationer av nätverkens principiella möjligheter. Vi har valt lösningen av TSP (Travelling Salesman Problem) med SOM som en sådan illustration. ANN - en grundläggande beskrivning Eftersom artificiella neurala nätverk är ett slags matematiska modeller, kan man beskriva deras funktion uttömmande genom att endast ange de matematiska formlerna för den signalbearbetning som de utför. En sådan kompakt beskrivning betonar släktskapen med andra matematiska, särskilt statistiska, modeller för databehandling. Om man, som vi, också vill betona släktskapen med biologiska neurala nätverk kan det vara lämpligare att använda en något mer konkret beskrivningsform. En konkret beskriving är också lättare att förstå (för alla utom matematiker...). Observera att terminologin skiljer sig mycket mellan olika framställningar av teorin för ANN. Vi ansluter oss här till formalismen hos Faucett. Element och struktur hos ANN Ett artificiellt neuralt nätverk (ANN) består av ett antal element eller noder, X i, med förbindelser som var och en har en viss effektivitet (vikt) w. Styrkan på förbindelsen från den i:te till den j:te noden betcknas med w ij. Elementen är anordnade i en struktur som - beroende på om det finns flera separata skikt av element eller ej - kan karakteriseras som icke lagrad eller lagrad. I det senare fallet kan nätverket klassificeras som antingen feed-forward eller feed-back beroende på om det finns återkopplingar mellan skikten av element. Varje nod X i har i varje ögonblick en aktivitetsnivå, som betecknas med x i. Här är ett exempel på ett enlagrat feed-forwardnät ("enlagrat" betyder att det finns ett lager av förbindelser); informationen tänks strömma nedåt i systemet. Inte alla viktbeteckningar har satts ut.

Ett annat framställningssätt för samma nätverk är dess s.k. Hintondiagram: En fördel med Hintondiagrammet är att nätverkets vikter visualiseras i matrisform, vilket anknyter till de matematiska redskap man främst använder vid analysen av nätverkens funktion (vektor- och matrisalgebra). Input, output och aktiveringsfunktion Alla noder i ett ANN sänder i varje ögonblick ut sin aktivitet som output i alla utgående ledningar. Signalen som går genom en förbindelse multipliceras med förbindelsens vikt. Varje nod tar emot input antingen från andra noder eller från omgivningen. De element som tar emot omgivningsinput, i vårt exempel de tre första, kallas inputnoder. De flesta ANN fungerar så att varje element summerar de inputs som det får och sedan transformerar den resulterande summan ("nettoinput", x_in) till en aktivitet på ett sätt som anges av den s.k. aktiveringsfunktionen (i figuren nedan betecknad med f(x_in)). Aktiviteten blir elementets nästa output, som i sin tur går till nätverkets element och/eller tas upp av omgivningen (exempelvis som en signal om vilken klass input tillhör). Studera följande figur noga!

Ett nervnäts egenskaper bestäms i hög grad av vilken aktiveringsfunktion det arbetar med. Här är några viktiga alternativ: * Lineär aktiveringsfunktion (enklaste fallet: aktivitet = nettoinput). Ger nervnät med ganska ointressanta matematiska egenskaper - men bra för pedagogiska syften! Se sidan om den lineära associatorn. * Stegfunktion (allt-eller-intet-aktivitet; nettoinput måste uppnå en viss tröskel för att aktiviteten ska bli skild från noll). Kan sägas modellera den enstaka signalen i ett neuron. Exempel: perceptronen. * Sigmoida funktioner Kan sägas modellera signalfrekvensens olinjära inputberoende i ett neuron. Ett element med sigmoid aktiveringsfunktion är mest känsligt för variationer i signalinflödet när nettoinput är varken för stor eller för liten:

Sigmoida funktioner har stor användning, bland annat i så kallade back-propagation-nät (se nedan), eftersom de ger näten potenta matematiska egenskaper. Man har således visat att en mycket stor klass av input-output-funktioner kan modelleras av nätverk med sigmoida aktiveringsfunktioner, och att sådana nät därför i princip kan tränas att lösa de flesta tänkbara mönsterseparationsuppgifter. (Vilket långtifrån betyder att det alltid går i praktiken!) Vill man ha en överskådlig och kompakt framställning av hur ett neuralt nätverk behandlar data från input till output bör man beskriva dess funktioner i termer av vektorer och matriser. Inlärningsalgoritmer En av de största poängerna med ANN är, som nämnts, att de kan tränas. Ett stort antal procedurer för sådan träning eller inlärning har föreslagits. Ett överväldigande antal av dessa procedurer bygger på tanken att inlärningen kodifieras genom attvikterna hos elementens förbindelser modifieras, och därmed nätverkets sätt att behandla den inkommande informationen. Olika algoritmer styr denna förändring av vikterna på olika sätt, varav några få har likheter med tänkbara biologiska mekanismer medan andra mer får betraktas som enbart varande redskap för programmerare av artificiella neurala nätverk. Här är en lista på några viktiga inlärningsalgoritmer; Dw ij står för ändringen i vikten w ij : * Hebb-regeln Dw ij = k * x i * x j k: inlärningskonstant. Vikterna ändras i proportion till pre- och postsynaptisk aktivitet. Troligen den biologiskt mest realistiska av de här beskrivna. Ex: Hopfieldnät. * Delta-regeln (specialfall: perceptronregeln) Dw ij = k * x i * (d - x j j ) d j : önskad output i nod j. Vikterna ändras i proportion till skillnaden mellan önskad och verklig output. Ex: Perceptronen. * Back propagation-algoritmen

Dw ij = -k * de/dw ij E: globala felet (ett mått på skillnaden mellan önskad och verklig output). Vikterna ändras i proportion till deras bidrag till det globala felet (beräknat som en partiell derivata. Ofta omständligt att beräkna!) * Kohonen-regeln Dw ij = k * (w j - I) I: inputvektorn. Viktvektorn w j?dras närmare? eller?dras längre bort från? inputvektorn I. Vilka element som berörs, och hur, varierar mellan olika modeller. Ex: SOM, LVQ. * Genetiska algoritmer Selektion över tiden i en population av nätverk. Nätverken som visar de bästa prestanda?överlever?, och deras egenskaper rekombineras. Gå vidare... För att på ett konkret sätt förstå hur ett ANN fungerar är det lämpligt att studera de enkla nätverken SOM, den lineära associatorn och perceptronen närmare. Och det kanske trots allt kan vara nyttigt med en introduktion till ett mer abstrakt, matematiskt beskrivningssätt i termer av vektorer och matriser? Exempel på användning av ANN för realistiska mönsterklassifikationsändamål kan Du hitta på vår sida om medicinska applikationer. Och vill Du lära Dig mer, gå till våra externa länkar, eller kom till våra kurser! Till början av sidan Tillbaka till sidan ANN i informationsintensiv sjukvård Denna text senast uppdaterad 1998-10-14 av Helge Malmgren