6.2 Semantiek
In de vorige paragraaf hebt u bestudeerd wat symbolen
zijn en hoe ze kunnen worden gebruikt om kennis en informatie mee aan te duiden. Duidelijk
werd dat de betekenis van symbolen meer kan zijn dan alleen de precieze informatie-inhoud.
Afhankelijk van de wijze waarop een waarnemer de informatie beschouwt of in een bredere
context plaatst, kan de informatie veel meer betekenen.
In deze paragraaf wordt behandeld hoe aan symbolen, of beter nog aan symboolstructuren,
kennis kan worden toegekend. Uitgangspunt daarbij is dat dat binnen het kader van fysieke
symboolsystemen moet kunnen.
Door bijvoorbeeld aan afzonderlijke symbolen uitspraken te koppelen die al dan niet waar
zijn (dit dier heeft vleugels, dit dier heeft vier poten, enzovoorts), kan enerzijds
informatie worden opgeslagen, anderzijds kan er mee worden geredeneerd en kunnen nieuwe
uitspraken worden afgeleid (als dit dier vleugels en veren heeft, dan is het een vogel).
Het zal blijken dat er veel verschillende soorten kennis en informatie zijn die in een
systeem moeten worden opgenomen om tot een goed kennissysteem te komen. Semantische netwerken bieden een
symboolstructuur die daarvoor goed geschikt is.
Lees uit Stefik: paragrafen 1.2, 1.2.1, en 1.2.2 (pagina 35 tot en met 44).
Bij de volgende passages uit het boek zijn een aantal opmerkingen te maken.
pagina 36, regel 3 van onder: On (Ball Table)
Mogelijk bent u een notatie gewend waarin de argumenten gescheiden worden door kommas
in plaats van (uitsluitend) spaties. Op deze wijze kan het echter ook. Een dergelijke
expressie kan waar of onwaar zijn, of de waarde ervan kan nog onbepaald zijn.
pagina 37, onderste regels
Objectnamen, zoals A en B, worden hier cursief (schuin) genoteerd en
objectconstanten, zoals Block, romein (rechtop). Het is gebruikelijker om hier geen
onderscheid tussen te maken en alle constanten romein te noteren, in tegenstelling tot
variabelen, die dan cursief staan.
pagina 39, middenin
In de formules (~A Ù B) => A Ú B en A Ù (A
=> B)
Stefik maakt onderscheid tussen waarheidssemantiek (truth semantics) en bewijssemantiek
(proof semantics). Waarheidssemantiek heeft betrekking op het toekennen van
waarheidswaarden aan feiten die geobserveerd kunnen worden (proposities) en het toepassen
van de waarheidsregels uit de propositielogica voor het bepalen van de waarheidswaarde van
samengestelde formules. Tot de waarheidssemantiek behoren bijvoorbeeld het nagaan of de
uitspraak De bal ligt op tafel waar is of niet en het werken met
waarheidstabellen.
Bij bewijssemantiek wordt uit een gegeven verzameling feiten en regels het bewijs geleverd
voor de juistheid of onjuistheid van een bepaalde uitspraak. Met de bewijssemantiek volgt
uit de bal is een rond voorwerp en ronde voorwerpen kunnen rollen,
dat de bal kan rollen.
Op pagina 37 van paragraaf 1.2.1 noemt Stefik nog een derde semantiek van de
predikaatlogica, de referentiesemantiek (semantics of reference). Hiermee doelt hij op het
toekennen van een verwijzing in het model aan de objectconstanten, de functieconstanten en
de relatieconstanten in de taal; bijvoorbeeld Ball is een objectconstante, die
refereert aan een object in het model.
Het gebruik van predikaatlogica voor het representeren van kennis is een
reductionistische aanpak. De betekenis of waarheid van samengestelde beweringen kan
daarbij afgeleid worden uit de betekenis of waarheid van de afzonderlijke onderdelen.
Bij de analyse van natuurlijke taal blijkt deze reductionistische aanpak veel te beperkt
om de rijkheid weer te kunnen geven die natuurlijke taal bezit. Predikaatlogica is voor
veel toepassingen te beperkt om de kennis te kunnen representeren die we in kennissystemen
willen kunnen gebruiken. Bij de ontwikkeling van semantische theorieën moet het er dan
ook vooral om gaan symboolstructuren te ontwikkelen die op een geschikte manier de
gewenste kennis kunnen representeren. De semantische netwerken uit de volgende paragraaf
zijn daarvan een voorbeeld.
Lees uit Stefik: paragrafen 1.2.3, 1.2.4 en 1.2.5 (pagina 44 tot en met 55).
In paragraaf 1.2.3 worden elementaire begrippen uit de grafentheorie behandeld. Iedere
inleiding, en dus ook deze, gebruikt eigen namen voor de diverse begrippen. Stefik heeft
het over nodes en arcs (knopen en bogen), waar anderen ook termen
als punten en lijnen gebruiken. In het algemeen worden in de grafentheorie door
verschillende auteurs zeer veel verschillende termen voor dezelfde objecten gebruikt. Op
zich spreken ze meestal voldoende voor zich, zodat er geen verwarring hoeft te ontstaan.
Bekijk echter wel goed wat met de verschillende termen wordt bedoeld. Gelukkig wordt voor
het zeer belangrijke begrip boom vrijwel altijd dezelfde term gebruikt.
Semantische netwerken zijn ook grafen. We
noemen grafen echter pas semantische netwerken als er op een zinvolle wijze kennis mee te
representeren is. De punten in grafen representeren objecten of klassen en de pijlen
tussen de punten stellen relaties voor. Deze relaties kunnen van allerlei aard zijn. De
variatie in mogelijke soorten relaties maakt het mogelijk dat er allerlei soorten
informatie en kennis met semantische netwerken is te representeren. Voor de toepassingen
in de kennistechnologie is het van belang dat de labeling van punten en pijlen zodanig is,
dat er geautomatiseerd mee te werken valt. Bovendien moeten ze zo opgezet worden dat er zo
efficiënt mogelijk mee gewerkt kan worden. Objecten die eigenschappen gemeen hebben,
zullen worden opgenomen als instanties van een klasse waar de gemeenschappelijke
eigenschap bij wordt gedefinieerd.
In figuur 1.16 op pagina 48 wordt geïllustreerd hoe we in semantische netwerken ook andere dan tweewaardige relaties kunnen weergeven. De hier gesuggereerde oplossing voor driewaardige relaties werkt natuurlijk ook voor meer dan drie waarden: in plaats van drie uitgaande pijlen, zoals in dit geval van de knoop A throw event, hoeven we dan alleen maar nog meer uitgaande pijlen aan te brengen, net zoveel als u argumenten nodig hebt. (Overigens zijn er ook andere visuele oplossingen om drie- en meerwaardige relaties in netwerken weer te geven dan de hier getoonde, door middel van introductie van een extra knoop.)
Semantische netwerken zijn dus geschikte structuren om in de kennistechnologie kennis mee te representeren. Het ontwerpen van goede semantische netwerken is een vakgebied op zich en zou kennisrepresentatie genoemd kunnen worden. Er bestaan tools voor het ontwikkelen en beheren van semantische netwerken, soms zijn die onderdeel van tools voor het ontwikkelen van kennissystemen en in zekere zin komen elementen ervan ook voor in objectgeoriënteerde programmeertalen.
6.2.3 Verschillende semantieken
Lees uit Stefik: paragraaf 1.2.6 (pagina 55 tot en met 59).
In deze paragraaf wordt nog eens opnieuw benadrukt dat de wijze waarop symbolen aan kennis worden gekoppeld, vanuit vele verschillende perspectieven is te benaderen. Ieder perspectief heeft zijn eigen belang en aandachtspunten. Een belangrijk onderscheid daarbij is de oriëntatie op toepassingen in fysieke symboolsystemen, waarbij de aandacht vooral gaat naar de precieze betekenis van symbolen en symboolstructuren in programmatuur en kennisrepresentaties en de oriëntatie op kennis in natuurlijke talen, waarbij vooral de context en impliciete betekenissen van belang zijn.