Kognitionsvetenskap

 

VT 2001

 

Föreläsning nr 7

 

Kapitel nr 9

 

av

 

Anne Thelander

 

Tillbaka till hemdoktorn

 

1. Varför representation av naturligt språk som bakgrundskunskap begränsar möjligheten att skapa komplexa intelligenta system

 

Den rationalistiska inställningen till begreppet betydelse och som ligger bakom artificiella intelligenta system, grundar sig på antagandet att ords betydelse och de meningar som byggs upp av dessa ord kan karaktäriseras oberoende av den förklaring som ges av individer i en viss situation. En mening kan innehålla ord och/eller fraser som kräver full förståelse av den som lyssnar till dem. Dessa kan dock enbart ses som ett slags tillägg till en central kärna av betydelse som är oberoende av ett visst sammanhang.

 

Joseph Weizenbaum (citerad av Winograd, Terry et al, i "Understanding Computers and Cognition", 1990) säger att det är fullt möjligt att konstruera en konceptuell struktur som överrensstämmer med en menings betydelse, men han har svårt att se möjligheten att det går skapa ett system som skulle kunna ha en djupare förståelse för vad sagda mening kan betyda i ett djupare perspektiv.

 

Bakgrundskunskap och tolkning av olika språkliga fenomen genomsyrar vårt dagliga liv. "Betydelse" härstammar från en tolkningstes som är situationsbetingad. I boken "Understanding Computers and Cognition" (Winograd, Terry, et al, 1990) hävdar Martin Heidegger (1889-1970), Hans-Georg Gadamer (1900-) med fler, att sättet att reducera bokstavlig betydelse till sanningsvärden inte bara är omöjligt utan också gravt missvisande. Vad man då gör är att enbart lägga tonvikt på den del av språket som har en lägre grad av betydelse och därför knappast är av intresse. Ingen hänsyn tas då alls till de centrala problem som rör kommunikation och språklig tolkning. För att få en djupare förståelse av talat språk är tolkning viktig och tar vi bort dess betydelse tappar språket sitt egentliga innehåll och kvar blir endast ett tomt skal. Ord som exempelvis "vatten" kan enbart förstås om det ställs i proportion till bakgrund och syfte. Skall en dator kunna dra slutsatser från ord eller kombinationer av ord, måste betydelsen av dessa representeras av ett antal predikatlogiska värden (sanningsvärden) eller procedurer.

 

Inom den klassiska semantiken kan man på ett enkelt sätt definiera vissa ord eller uttryck genom att förtydliga deras underliggande betydelse. Om ett ord enbart nämns i sin grundläggande form krävs mer information och till synes enkla ord är till sin definition betydligt mer komplexa. Det är möjligt att skapa artificiella stipulativa definitioner (definitioner skapade för speciella sammanhang), som exempelvis i en matematisk text, men detta har vi ingen användning för i det vardagliga språket. Som en ytterligare komplikation är det mänskliga språket dessutom utrustat med ett antal idiom samt outtalade antaganden om omvärlden.

 

Problemet blir ännu tydligare om vi tittar på hur ord används i vardagligt språk. I naturligt språk är betydelsen oklar om inte meningar sätts in i sina sammanhang, det vill säga både sammanhang och syfte har stor betydelse för förståelse och tolkning av ord. Människor kan utifrån en läst text dra slutsatser om handling och konsekvens eftersom vi har en relevant bakgrundskunskap om ords betydelse i olika situationer. Vi är ju också kapabla att skapa mentala bilder av begrepp och ord, vilket inte är möjligt för en dator. Datorn får dessutom problem med för oss enkla ord som "och", "eller" med fler, eftersom dessa ses som logiska satsoperatorer. I artificiella intelligenta system måste därför bakgrundskunskap byggas upp som modeller av det talade språkets tankeprocesser för att slutsatser ska kunna dras om vad som sagts.

 

Det existerar alltså ingen förståelse bakom en dators konversation utan förståelsen skapas genom simulering. Ett system kan genom igenkänning lära sig begrepp och enkla nyckelord för att därefter kunna dra logiska slutsatser utifrån tidigare konversation.

Ett annat problem är givetvis det naturliga språkets enorma vokabulär. En människa kan röra sig med en avsevärd mängd ord, medan en dator enbart har tillgång till ett visst antal nyckelord. Naturligtvis behöver inte heller en människa förstå betydelsen av samtliga ord, de flesta använder sig endast av en delmängd av dessa. Dessutom har språket en syntax, det vill säga en uppsättning regler för att foga samman meningar av ord. I ett programspråk är dessa regler klara och exakta och de kan därför inte missförstås. Kort sagt saknar en dator "sunt förnuft", det vill säga den kunskap och förståelse om världen som vi människor delar. Naturligt språk är ganska meningslöst utan den bakgrundskunskap som möjliggör förståelse av mening och tankesätt bakom de talade orden.

 

2. Fördelar och nackdelar med mönsterigenkänning för att simulera intelligent problemlösning

 

Världens ledande schackspelare kan minnas tusentals olika spelplaner och har därför förmågan att välja lämpliga strategier då dessa eller liknande situationer uppstår. Det nya sättet att programmera datorer på lägger tonvikten på dylik mönsterigenkänning, i motsats till traditionell problemlösning. Program baserade på scheman, ramverk och så vidare, bygger på att en redan befintlig struktur hjälper till att tolka ny information. Genom att stödja icke-logiska resonemang kan tidigare begränsningar vad gäller representation undvikas och därigenom uppstår en mer människoliknande intelligens.

 

Enligt Marvin Minsky (citerad av Winograd, Terry et al, i "Understanding Computers and Cognition", 1990) bygger teorin på att då man ställs inför en ny situation eller av någon anledning behöver ändra ståndpunkt gällande tidigare fattade beslut, väljer man ur minnet en lagrad struktur, kallad ram eller ramverk. Denna byggs upp av tidigare erfarenheter, och dessa kan sedan verklighetsanpassas genom att nödvändiga detaljer inom respektive ram vid behov förändras. Då en ram valts ut att representera en viss situation, försöker en matchande process tilldela värden till dess olika egenskaper. Tyngdpunkten ligger här på förväntningar samt andra typer av antaganden. Ett ramverk är normalt sett redan utrustat med vissa grundvärden och kan därför innehålla en stor mängd detaljer, vilkas förutsättningar inte specifikt överensstämmer med rådande situation. Detta är användbart då man exempelvis vill representera en mer allmän information, använda tekniker för att ta sig förbi logiska resonemang, eller göra tillämpbara generaliseringar.

 

Vid användandet av ramar för tolkning av naturligt språk, skapas först en prototyp liknande varje enskilt ord, och denna innehåller då en beskrivning av ordens olika objekt. Då ett resonerande system ska avgöra om ett ord kan användas till att representera objektet, jämförs tidigare beskrivningar med redan kända fakta. Därigenom kan man välja att enbart hantera delar av beskrivningen, det vill säga att dra slutsatser utifrån ett visst specifikt sammanhang.

 

I datasystem uppbyggda enligt ramprincipen används tidigare lagrad kunskap för att påverka tolkning av nya händelser. En menings betydelse grundar sig på samverkan mellan systemets nuvarande och tidigare lagrad struktur. Vid konstruktion av ramar måste man först karaktärisera den miljö i vilken systemet skall användas. Det är av största vikt att skilja ut relevanta objekt för uppgiften ifråga, samt bestämma vilka egenskaper som behövs för relevant representation. Därefter designas det formella system som man använt för att representera just denna situation.

 

Målet med ramprogrammering är att representera utgångsvärden på ett adekvat sätt och ramar kan därför enbart implementeras i system som gör antaganden om vad som är relevant i sammanhanget, samt drar nya slutsatser med hjälp av ytterligare information.

 

Problemet med denna typ av programmering är givetvis att kunna veta när olika delar av ramverket är relevant i ett specifikt sammanhang. Används ett grundvärde i situationer då det inte finns tidigare lagrad information, gör man antagandet att en slutsats gäller även i de fall då det existerar en klar motsägelse. Betraktas liknelser alltför lättvindigt, är risken stor att egenskaper tillhörande ett visst objekt förs över på ett annat. Det är inte heller möjligt att utvidga en regels detaljrikedom inom dess specifika användningsområde. Om grundförutsättningen för ett visst begrepps existens är tillhörande egenskaper, är detta inte längre en grundförutsättning. Beskrivningen av omvärlden har förfinats så att den innehåller fler egenskaper än vad som är lämpligt i sammanhanget.

 

Ett annat förhållningssätt har varit att förutsätta resursbegränsad bearbetning som grund för resonemang. I alla sammanhang där logiskt resonemang eller tolkning sker, har ett system en begränsad mängd resurser att ta till. Dessa påverkas av faktorer som exempelvis en processors miljö. Slutresultatet bestäms av samarbetet mellan den uppgift som systemet skall utföra och processfördelningen. Hantering av fragmentarisk information härstammar från möjligheten att utföra en ändlig mängd bearbetning, samt dra slutsatser på basen av vad som hittills inträffat, även om dessa varken är härledbara eller sanna.

 

Ett resursbegränsat system kan ses som ett logiskt formellt system, vilket arbetar med exakta regler på en väl definierad grund. Systemet kan dock även utföra informella resonemang och det motsägelsefulla här är användandet av formella regler som ställs i relation till systemstrukturens formalisering. Gällande den miljö systemet skall utföra sina specifika uppgifter i, kan ett rambaserat dito dra slutsatser dels utifrån kunskaper om omvärlden, men också med hjälp av en viss typ av representation, samt dess styrande process.

 

3. Slutsats

 

Trots att den allmänna uppfattningen gällande ramar med resursbegränsat resonemang verkar rimlig, så har man inte lyckats skapa datasystem utrustat med någon som helst form av generalisering. Problemet är att fundera ut hur den detaljerade systemstrukturen ska kunna leda till önskat resultat. Endast mycket enkla exempel på denna lösning har visats, och dessa kan tyvärr inte heller utvecklas på nåt entydigt sätt. Dessa program tenderar att hamna i två kategorier. Antingen är strukturen utarbetad med några få specifika exempel och fungerar då bra på dessa, eller så har de ingen huvudsaklig användning av ramen utan fungerar då som ett traditionellt system.

 

En schackspelande dator kan alltså programmeras att känna igen återkommande mönster, men har ofta problem med att identifiera situationer som är likartade men inte identiska. Mönsterigenkänning är förmodligen en av de största fördelarna en mänsklig schackspelare har över en datormotståndare och kompenserar därför för datorns hastighet, samt grundlighet då det gäller att göra strategiska val.

 

4. Källförteckning

 

Anderson, John. R: Cognitive psychology and its implications, 3:e upplagan, W. H. Freeman and Company, New York, 1990.

 

Beekman, George: Computer Confluence, Exploring Tomorrow's Technology, 2:a upplagan, The Benjamin/Cummings Publishing Company Inc., 1997.

 

Winograd, Terry et al: Understanding Computers and Cognition: A New Fundation for Design, 5:e upplagan, Ablex Publishing Corporation, Norwood, New Jersey, 1990.