Simulerad kunskap
Från kognitiv vetenskap till autonoma inlärningsalgoritmer
MÄLARDALENS HÖGSKOLA
den 23 februari 2009, Västerås
Skriven av: Christoffer Adolphsson
[email protected]
Kurs: CDT212 Vetenskapsmetodik
ICV02
1
Sammanfattning
När vi föds har vi inte någon som helst kunskap om språk eller andra färdigheter som vi idag
ser som självklara. Denna empiriska kunskap lär vi oss genom att observera vår omgivning
och minnas repetition samt associera. Tekniken är mycket stabil och vi skulle kunna
modellera vår omvärld även om vi förlorar några sinnen.
Genom att studera hjärnans sätt att lagra kunskap och jämföra det med dagens datoralgoritmer
för språkinlärning, kan vi försöka återskapa en liten del av den mänskliga
kunskapshanteringen.
Detta gör det möjligt att skapa program som läser in helt en vanlig text, tar ut de vanligast
förekommande ordparen helt autonomt och utan någon hjälp. Efter denna databehandling kan
en fråga utifrån texten ställas och programmet svarar som om den har lärt sig kunskap om
ämnet.
2
Innehåll
Simulerad kunskap .................................................................................................................. 1
Sammanfattning....................................................................................................................... 1
Sammanfattning....................................................................................................................... 2
Innehåll ....................................................................................................................................... 3
Inledning.................................................................................................................................... 4
Datorer och kunskap ............................................................................................................... 4
Vad är kunskap? ..................................................................................................................... 4
Existerande algoritmer för oövervakad inlärning ................................................................... 4
Kunskapens variant av synvillor ............................................................................................ 5
Slutsatser .................................................................................................................................. 6
Referenser ................................................................................................................................ 7
3
Inledning
Ett nyfött barn har ingen som helst kunskap om varken sin omvärld, kunskap om hur man går
eller brukar ett språk. Men genom flera år av repetitioner och associationer byggs en
världsbild fram.
Människan är extremt flexibel i att kunna läras sig ny kunskap. Vi har potential att lära oss
vilket språk som helst, men samtidigt är vi ändå så pass stabila att vi kan, efter att anpassa oss
lite, leva ett vanligt liv utan problem trots att vi skulle förlora syn, hörsel eller för den skull
något annat sinne.
Datorer och kunskap
Vad är kunskap?
Platons definition av kunskap lyder: ”sann, rättfärdigad tro.”, alltså ska forskaren kunna ge
rimliga argument för att styrka sin utsaga för att det ska kunna kallas kunskap. Vi kommer i
denhär rapporten att hålla oss till s.k. empirisk kunskap, vilket är den kunskap som vi lär oss
genom att observera våra sinnesintryck. Andra formar av kunskap kan ses som exempelvis
matematik och logiskt tänkande.
När vi som barn exempelvis rör vid en varm spisplatta, registrerar vi smärta. Men det är inte
förrän vi kopplar ihop den smärta vi känner med själva beröringen som vi har kunskap om att
spisplattor kan vara varma.
Det betyder att själva kunskapen lika gärna skulle kunna ses som associationer mellan våra
sinnesintryck.
En dator skulle likväl kunna simulera detta genom att binda samman ord som är väldigt
vanligt förekommande tillsammans. Efter en lång tids träning skulle programmet kunna
generera egna meningar och upptäcka grammatiska fel utifrån de sannolikheter som lästs in.
Detta skulle i princip kunna klassificeras som språklig kunskap.
Existerande algoritmer för oövervakad inlärning
Här kommer en snabb sammanfattning över de senast utvecklade algoritmerna för oövervakad
inlärning. För att få en fullständig förståelse för hur dessa algoritmer fungerar kan kläsaren
fördjupa sig i respektive rapport som finns angivet under referenser.
Algoritm
Beskrivning
ADIOS
Automatic DIstillation of Structures (ADIOS) [Solan09] är ett projekt
utvecklat av Solan Zach på Tel Aviv University med målet att lyckas
utveckla en algoritm som lär sig grammatiska regler utan någon förkunskap
om språket samt utan någon mänsklig inblandning.
Meningar läses in, och jämförs sedan med varandra för att hitta
gemensamma uppbyggnader.
Confabulation Utvecklad av Robert Hecht-Nielsen, professor adjunkt i datavetenskap och
författare till boken Confabulation Theory [Robert07] skapade en algoritm
för att generera sannolikheter mellan varje ordpar, och hävdar att dessa
länkar mellan olika attribut är den enda rätta definitionen av kunskap.
HTM
Jeff Hawkins, skapare av numenta [Jeff09]. Jeff utvecklade en egen
algoritm för där han sparade sannolikheter för varje enskilt ordpar och
4
sedan även sannolikheten för sannolikhetspar.
Efter att ha studerat hur de redan existerande algoritmerna fungerar är det inte så svårt att se
hur de alla följer ett visst mönster. Orden läses in och får ett sannolikhetsvärde beroende av
hur ofta de ses tillsammans och språkregler byggs upp utifrån dessa data. Skillnaden är att
ADIOS sparar sannolikheten för alla ord i hela meningar, Confabulation bygger på att sparar
sannolikheten för enskilda ordpar och HTM utökar denna genom att även försöka spara
sannolikheten för att vissa länkgrupper förekommer och får därigenom flera nivåer av
komplexitet.
Kunskapens variant av synvillor
Dessa tidigare nämnda forskare har främst fokuserat på att försöka få datorer att kategorisera
och lära sig språkregler men jag har jobbat på ett alternativt sätt att utnyttja dessa nät av
kunskap till att svara på enkla frågor om texterna som lästs in.
De som vill fördjupa dig i hur synen fungerar kan studera synvillor och utifrån synens brister
forma hypoteser för hur ögat fungerar. Att försöka hitta illusioner i vår kunskapshantering
visar sig vara en svårare uppgift.
Jag kan dock personligen minnas en liten lek av okänt ursprung, där en person tillfrågas
”Vilken färg har de flesta kylskåp?”. Offret ifråga svarar förhoppningsvis vitt och när
följdfrågan ”Vad dricker korna?” kommer upp är risken väldigt stor att de flesta svarar mjölk
trots att svaret till synes verkar vara helt ologiskt efter några sekunders betänkande.
För att illustrera hur kunskapshämtningen går till kan ett kunskapsnät ritas (fig.1). Där alla
kända ord ritas ut som cirklar och kontakterna däremellan ritas ut som pilar. Om frågan sedan
lyder ”Vilken färg har de flesta kylskåp?”, kan vi placera ett finger på kylskåp och ett annat
finger på färg. Svaret kommer vara den starkaste bindningen mellan dessa två cirklar. Vilket i
det här fallat visar sig vara ”vitt”.
Dessa använda cirklar definierar samtalets kontext när nästa fråga ställs, och därför kommer
följande svar att påverkas av det tidigare. Se tabell.
Eftersom denna teknik får ganska bra stöd från den senaste forskningen kring kognitiv
psykologi och de tidigare algoritmerna
5
svart
vit
kylskåp
kök
kylvara
fär
g
orange
mjöl
k
vätska
ko
dricka
vatten
’Figur 1: Ett kunskapsdiagram för associationer till mjölk.
Mening
Arbetsminne
Vilken färg har de flesta kylskåp?
Vad dricker korna?
Starkast koppling
Kylskåp -> Vit -> Färg
Kylskåp, Vit, Färg
Mjölk -> Ko
Mjölk -> Dricka
Mjölk -> Kylskåp
Mjölk -> Vit
Slutsatser
Och jag tror algoritmen har potential att kunna hantera både mer avancerade konversationer
och större kunskapsnät, men det krävs mer forskning kring
En sådan vidareutveckling av tekniken skulle på kort sikt kunna användas för att exempelvis
utveckla verklighetstrognare chatbotar. Men eftersom ny forskning tyder på att algoritmerna i
hjärnan är generella [Jeff09], skulle den mycket väl även kunna användas till taligenkänning,
objektkategorisering och många andra sinnesrelevanta forskningsarbeten.
Som avslutning kan man fråga sig huruvida det är möjligt att åstadkomma ett lika stabilt
system för att få en dator att kunna hantera kunskap som den mänskliga hjärnan? Många av
dagens datorer är anslutna till internet, vilket verkar vara en näst intill en ändlös
informationskälla. Skulle en maskin kunna omvandla all denna kunskap till ett gigantiskt
kunskapsnät kommer vi att få en maskin som kan svara på all världens frågor.
6
Referenser
[Jeff09] Hawkins Jeff, “Hierarchical Temporal Memory”, Concepts, Theory, and Terminology
numenta.com, 2009-02-25
[Robert07] Hecht-Nielsen Robert, ”Confabulation Theory”, The Mechanism of Thought, 2007
[George05] F Luger George, ”Artificial Intelligence”, Structures and Strategies for Complex
Problem Solving, Fifth Edition, pages 606 – 632, 2005, ISBN 0 321 26318 9
[Solan09] Zach Solan, “Unsupervised Learning of Natural Languages”, horn.tau.ac.il, 2006
7