Sub-symbolisk kognition & Konnektionism Kognitionsvetenskaplig Introduktionskurs (729G01) Mats Andrén, mats.andren@liu.se 1
Konnektionism Neutrala nät baseras på en (förenklad) modell av hur hjärnan fungerar. till skillnad från fysiska symbolsystemhypotesen som snarare är baserad på hur datorer fungerar (manipulation av symboler baserat på en uppsättning formella regler). NN = Ett nätverk av enkla enheter ( neuroner ), där varje enskild liten enhet inte besitter någon större intelligens men där nätverket i sin helhet är kapabelt till avancerade saker. NN är fortfarande en typ av informationsprocessande, men annorlunda mot fysiska symbolsystemhypotesen (t.ex. Language of Thought ). 2
Language of Thought (LOT) 3
The Symbol Grounding problem Kinesiska rummet illustrerar ett vidare problem gapet mellan formell bearbetning av symboler och genuin tanke och förståelse Hur får ord/symboler sin mening? Orden i våra huvuden har uppenbarligen någon form av koppling till världen. Men.. De kan inte ursprungligen få sin mening genom beräkning / computation så som t.ex. att kolla upp deras mening i ett mentalt lexikon eftersom man inte kan kolla upp betydelse i ett (enspråkigt) lexikon i ett språk man inte redan förstår. Vi har kört fast.. 4
Möjliga vägar Kognition är inte informationsbearbetning Kognition är icke-symbolisk informationsbearbetning. 5
Skillnader. Neutrala nätverk är Parallella snarare än seriella inget centrum. De regler som styr nätverkens funktion har inget att göra med det specifika innehåll som processas. Inlärt funktionssätt ( empiriskt ) snarare än inbyggt ( rationalistiskt ), och kan förändras över tid. Ingen tydlig åtskillnad mellan informationslagring och informationsbearbetning representationer av begrepp i NN motsvaras inte nödvändigtvis av en uppräkningsbar mängd representationer, utan kan ibland vara av mycket mer öppen och associativ natur. 6
Neuroner 7
Perceptroner 8
Nätverk av perceptroner Utdatalager länkar mellan det gömda lagret och utdatalagret. Lager med gömda noder länkar mellan indatalagret och det gömda lagret. Indatalager 9
På ett ungefär Nära indatalagret: Mer lokala och konkreta distinktioner. Djupare in i nätverket: Mer globala och abstrakta distinktioner. 10
Perceptroners uppgång 1943 McCullough & Pitt använda datorer för artificiella neurala nätverk. Försökte förstå hur celler kan beräkna. 1949 Hebb Oövervakad inlärning, neurons that fire together, wire together Övervakad inlärning (supervised learning): Det finns ett facit utanför systemet, som används för att träna nätverket beroende på nätverket svarar rätt eller fel. Oövervakad inlärning (Unsupervised learning): Nätverket innehåller i sig själv mekanismen för inlärning och behöver därför ingen extern supervisor. 11
och fall 1958 Rosenblatt Övervakad inlärning, perceptroner kan (bara) lära sig linjärt separerbara problem. AND OR XOR Figur från Pihl & Skog (2008) 1969 Minsky & Papert Nätverk med flera lager kan beräkna alla möjliga funktioner, men för sådana nät finns det inga inlärningsstrategier 12
Perceptroner strikes back 1986 McLelland & Rummelhart Lära nätverk med flera lager noder genom en viss typ av algoritm: Gradient back propagation. Yann LeCun et al. (2015) argumenterar för att för många praktiska tillämpningar trots allt inte är så stort problem. Dessutom: Man bör inte tänka att hjärnan fungerar optimalt. Ur biologisk synpunkt räcker det att den är användbar inte nödvändigtvis optimal. 13
Inlärning i neurala nätverk Gradient back propagation innebär att de ansvariga länkarna justeras genom uppdatering av länkarna baklänges, lager för lager. 14
Skillnader mellan neutrala nätverk och hjärnor Det finns inga biologiska evidens för att något i stil med back propagation-algoritmen är vad som händer i hjärnan. Den mänskliga hjärnans lärande är inte supervised på det sätt som de flesta neutrala nät är. Det vill säga, hjärnan klarar att lära sig utan att få någon explicit extern information om huruvida den t.ex. kategoriserar någonting rätt eller fel. 15
Filosofi: Information..? Själva begreppet information tål också att reflekteras över. Vad ligger egentligen för underliggande antaganden inbakade i själva begreppet? I dagliga termer kanske vi tänker på information som t.ex. en text eller ettor och nollor i en dator, dvs något som redan har processats, och kanske rent av något symboliskt i sig. Att någonting är information betyder att det finns mening i det, men kan det finnas mening i något innan någon har processat det? Alternativ: Det som bearbetas är inte i sig information. Information är snarare slutresultatet av den kognitiva processen. 16
Filosofi: Invarians men för all del, för att någon kognition överhuvudtaget ska vara möjlig så måste det ju finnas någonting att ta fasta på, något regelbundet (invariant) och detekterbart. Detta kan förstås kallas för information, dvs vad man menar med information är delvis en definitionsfråga. MEN.. Detta betyder inte att input behöver vara statiskt på något ytligt sätt det behöver inte finnas någon central definierande egenskap utan det invarianta kan baseras just på en sammanvägning av faktorer där ingen enskild faktor är grundläggande eller enskilt avgörande. 17
Generalisering Att kunna hantera situationer (eller input ) som aldrig existerat förut. I ett optimalt scenario kan träningsalgoritmen få nätverket att agera korrekt även för instanser som nätverket aldrig tidigare sett och därmed inte tränats på. 18
Intuition Medan Language of Thought oftast förutsätter en sorts klarhet i den input som processas så kan neutrala nät hantera mycket mer diffusa och brusiga former av input. Exempelproblem: Identifiera händer i videofiler computer vision. Skydd mot spam-robotar på internet det som kan vara lätt för en människa att läsa kan vara mycket svårt för en dator. Algoritmer för robothandel på börsen. Språkinlärning t.ex. problematiken med att lära sig regelbundna och oregelbundna verb. (Se kap 9.1) 19
Neurala nätverk i robotar Artificiella Neurala Nätverk i robotar ställs inför ett speciellt problem: Den input som systemet får, t.ex. genom sin kamera ( syn ), ändras när roboten rör sig. Det vill säga: Systemets input (vad det uppfattar) beror i hög grad på dess output (hur det agerar). Om något är svårt att uppfatta kan roboten t.ex. gå närmare, eller gå runt ett hinder, för att se bättre. 20
Traditionellt ( Beräkning, fråga -> svar) INPUT > PROCESSING > OUTPUT PROCESSING INPUT OUTPUT Output blir här någonting som gör något som förändrar, och interagerar med, tillståndet i omgivningen. 21
Slutligen Konnektionism kan ses som ett av flera exempel på en hel familj av subsymboliska approacher till kognition. Exempelvis finns det många grundläggande likheter mellan neurala nät och något som kallas för Dynamical Systems Theory (se kapitel 13.2). För vissa syften fungerar neurala nätverk väl. Men de kan också vara oförutsägbara, så för andra syften kan det vara bättre med mer hårdkodade typer av styrprogram. Tillämpningar: Realistiskt (likna människan) vs ingenjörsmässigt (back propagation i hjärnan? näeae?) Det finns olika typer av ANN (Artificiella Neurala Nätverk), en del mer biologiskt trovärdiga än andra => Kursen Kognitiv modellering i åk3 Nästa föreläsning lämnar vi artificiell intelligens och istället prata om kroppens roll för tänkande och kognition samt barns utveckling och lärande. 22
DeepDream - a code example for visualizing Neural Networks Google använder neurala nät för sin bildigenkänningsfunktion. För ungefär ett år sedan har man öppnat upp den här funktionen så att man kan använda sig av den själv och experimentera med den, och det finns en del intressanta och belysande exempel. http://googleresearch.blogspot.se/2015/07/ deepdream-code-example-for-visualizing.html 23
Att låta nätverket drömma Att vända på steken: Istället för att mata in en bild på t.ex. en banan och få den klassificerad som en banan så har de vänt på det hela, för att visualisera vad som pågår, och kör t.ex. nätverket baklänges så att man matar in banan och får ut en bild genererad av nätverket. Fantasi, visualiseringsförmåga, drömmar. 24
25
26
27
28
29
30
31
Ett videoexempel (sök själva på inceptionism eller deepdream på youtube) 32