Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

Tudásalapú rendszerek

Hasonló előadás


Az előadások a következő témára: "Tudásalapú rendszerek"— Előadás másolata:

1 Tudásalapú rendszerek
Előadó: Kovács Zita 2016/2017. I. félév Ismeretábrázolás

2 Ismeretábrázolás tudásbázisban tárolva – különféle reprezentációs technikával szükség van: leíró eszközre, a szintaxisra a reprezentált elemek jelentését meghatározó szemantikára olyan módszerekre, amelyekkel a meglévőkből új ismereteket lehet előállítani, a következtetési módszerekre

3 Ismeretábrázolás a reprezentálandó ismeretek lehetnek: tényszerű
következtető vezérlő

4 A reprezentációs módszerek osztályozása
A probléma-megoldási stratégia szerint: procedurális (algoritmikus) hogyan deklaratív (leíró) mit A probléma leírásában szerepet játszó struktúra szerint: egyszerű (struktúra nélküli, elemi szintű objektumok és azok kapcsolatai) struktúrált (attribútummal rendelkező objektumok) A reprezentációs módszerek osztályozása több szempont szerint lehetséges. Problémamegoldási technikák (tudásreprezentáció+következtetés): deduktív: az általánosból kiindulva levezeti az egyedi esetet induktív:az egyedi esetekből jut általános érvényű következtetésre analóg Az egyik legismertebb egyszerű reprezentáció a logika alapú reprezentáció.

5 Tudásreprezentációs technikák
Tudástípus Tudásábrázolás deklaratív logika szabály struktúrált szemantikus háló keret procedurális stratégia, eljárás, függvény

6 I. Szabályalapú ismeretreprezentáció
Más néven produkciós rendszerek. Első megfogalmazása a 40-es évekre tehető. Simon és Newell alkalmazták először. Mindmáig a leggyakrabban használt tudásreprezentációs módszer.

7 I. Szabályalapú ismeretreprezentáció
alkalmas a köznapi gondolkodás modellezésére és a szakértő tapasztalatait kifejező heurisztikák leírására Szabályok segítségével fogalmazhatók meg a tárgyterület tényei, és a közöttük fennálló relációk, a meglévő tényekből új tényeket következtető ismeretek, a feladat megoldási stratégiájának módosítására szolgáló metaismeretek.

8 I. Szabályalapú ismeretreprezentáció
Egy szabály HA feltétel AKKOR következmény alakban egy ismeretelemet reprezentál, ahol a feltétel: a szabály alkalmazásának feltételeit megadó (tény) állítás, vagy ilyenekből ÉS/VAGY kapcsolókkal képzett összetett kifejezés

9 következmény: a szabály alkalmazásának egy vagy több következményét írja le (akciók, műveletek, tevékenységek, érvényes állítások) a munkamemória tartalmát módosító akciókat (adatelemek beírása, törlése, módosítása) különböző eljáráshívásokat (amelyek a belső és a külső környezet közötti információcserét biztosítják) a rendszer által vezérelt folyamatba történő beavatkozást (pl. egy kapcsoló bekapcsolását) a felhasználótól való információkérést

10 HA feltétel AKKOR következmény Ha a feltétel teljesül, akkor a következményben előírt tevékenységek rendre végrehajtódnak.

11 A vezérlés A vezérlő komponens háromfázisú motorként működik:
Mintaillesztéssel megkeresi azokat a szabályokat, amelyek feltételrésze a munkamemória pillanatnyi tartalma fölött igaz, és ezeket a végrehajtásra alkalmas, ún. tüzelőképes szabályokat behelyezi egy konfliktus halmazba.

12 A vezérlés Kiválaszt a konfliktushalmazból egy szabályt végrehajtásra – a kiválasztásban a (beépített) vezérlési stratégiára támaszkodik).

13 A vezérlés Alkalmazza, végrehajtja a kiválasztott szabályt, vagyis érvényesíti a szabály következményét. Közben a vezérlő komponens figyeli a célt megfogalmazó terminális feltétel bekövetkezését, amikor is a végrehajtás leáll; ellenkező esetben újra indul az 1. fázis.

14 A vezérlés A 2. fázisban felhasznált szabály-kiválasztási stratégia sokféle lehet: előnyben részesülhetnek pl. a munkamemóriába legutóbb bekerült (legfrissebben beírt) adatra hivatkozó, vagy a legbonyolultabb feltételrésszel rendelkező szabályok, történhet a választás a szabályokhoz rendelt prioritás szerint.

15 Következtetési stratégiák
célvezérelt (hátraláncoló) rendszer A célvezérelt következtetés egy feltételezett célállapotból kiindulva próbálja bebizonyítani azt, hogy az csakugyan célállapot, vagyis, hogy az elérhető valamely kezdőállapotból. Menet közben, ha az adott cél (vagy részcél) még igazolásra szorul, keres egy ezzel illeszthető következményű szabályt, s az annak feltételrészében szereplő állítások igazolására vezeti vissza a munkát. Ha zsákutcába jut, akkor visszalép és új irányban próbálkozik.

16 Következtetési stratégiák
adatvezérelt (előreláncoló) rendszer Egy kezdőállapotból kiindulva keres valamely megoldást jelentő célállapotot. A kiinduló adatokat a munkamemóriába helyezi. A cél eléréséig keres olyan szabályt, amely a munkamemória pillanatnyi tartalma fölött igazolható, és végrehajtja annak következményében leírt akciókat. Ha több alkalmazható szabály is van, konfliktus keletkezik, amit valamely stratégia alkalmazásával felold.

17 Következtetési stratégiák
Mindkét esetben a szabályalkalmazási láncot ( kezdő és a célállapotot köti össze) a rendszer állítja elő. célvezérelt – visszafele haladó – hátraláncoló – goal-directed – backward-reasoning – backward-chaining-system adatvezérelt – előrefele-haladó – előreláncoló – data-directed – forward-reasoning – forward-chaining system

18 A célvezérelt következtetés ciklusa
Az igazolandó célt elhelyezi a részcélok halmazában. A konfliktushalmaz és a feldolgozott részcélok halmaza legyen üres. A zsákutcajelzés hamis. Célkiválasztás Mintaillesztés Konfliktusfeloldás Végrehajtás, szabályalkalmazás Indítja a következő ciklust.

19 1. Célkiválasztás A még igazolandó részcélok körül választ egyet.
Ha a részcélok halmaza üres, akkor a feladat megoldása sikeresen véget ér. Ha a zsákutcajelzés igaz, akkor Visszalépés a legutóbb feldolgozott részcélhoz. Ha a konfliktushalmaz üres és a kiindulási célnál járunk, akkor sikertelen vége, egyébként folytatja a visszalépést. Ha a konfliktushalmaz nem üres, akkor a 2. lépést kihagyva a 3. lépésnél folytatódik a ciklus.

20 2. Mintaillesztés Kikeresi azokat a szabályokat, amelyek következményrésze illeszthető a kiválasztott részcélhoz. Ezek bekerülnek az adott részcél konfliktushalmazába. Ha a konfliktushalmaz üres, akkor a következtetés zsákutcába jutott, és zsákutca jelzéssel indul a következő ciklus az 1. lépéssel.

21 3. Konfliktusfeloldás Amennyiben a konfliktushalmazban több végrehajtható szabály van, akkor kiválaszt egyet végrehajtásra (szabályválasztási stratégia).

22 4. Végrehajtás, szabályalkalmazás
A kiválasztott szabály végrehajtása. Az aktuális részcél törlődik a részcélok halmazából, és bekerül a feldolgozott részcélok közé (verem). A konfliktushalmaz legyen üres és a zsákutcajelzés hamis. 5. Indítja a következő ciklust.

23 Célvezérelt célállítás: Z
A B E H G C A B E H G C A B E H G C illeszt B igazolandó F illeszt C igazolandó D illeszt A illeszt F illeszt D Ha FB akkor Z Ha CD akkor F Ha A akkor D Ha FB akkor Z Ha CD akkor F Ha A akkor D Ha FB akkor Z Ha CD akkor F Ha A akkor D

24 Az adatvezérelt következtetés ciklusa
A munkamemóriába betöltjük a tényeket. Mintaillesztés Konfliktusfeloldás Végrehajtás, szabályalkalmazás A konfliktushalmaz legyen üres. Indítja a következő ciklust. Azok a szabályok, amelyek feltételrésze illeszthető a munkamemóriában tárolt tények valamelyikével, bekerülnek a konfliktushalmazba.

25 2. Konfliktusfeloldás Ha a konfliktushalmaz üres, akkor sikertelenül vége. Amennyiben a konfliktushalmazban több végrehajtható szabály van, akkor kiválaszt egyet végrehajtásra. (szabályválasztási stratégia) 3. Végrehajtás, szabályalkalmazás A kiválasztott szabály végrehajtása. Ha a célt megfogalmazó terminálási feltétel teljesül, akkor sikeresen vége. 4. A konfliktushalmaz legyen üres. Indítja a következő ciklust.

26 Adatvezérelt célállítás: Z
A B E H G C A B E H G C D A B E H G C D F A B E H G C D F Z illeszt Ha FB akkor Z Ha CD akkor F Ha A akkor D illeszt illeszt Ha FB akkor Z Ha CD akkor F Ha A akkor D Ha FB akkor Z Ha CD akkor F Ha A akkor D

27 A következtetés iránya
Miből van több: lehetséges kezdőállapotból vagy célállapotból? célszerű a kisebb halmazból kiindulva a másik irányba haladva keresni a megoldást (pl autóval hazajutni) Melyik irányban nagyobb az elágazási tényező az állapottéren? célszerűbb azt az irányt választani, amely mentén ez a szám kisebb (pl matematikai tétel bizonyítása)

28 A következtetés iránya
A következtetést végző programnak meg kell-e magyaráznia a lépéseit? ha igen, azt az irányt kell választani, ami az emberi gondolkodáshoz közelebb áll Kérdésre kell válaszolni vagy új tényeket, állapotokat kell előállítani? ha kérdésre kell válaszolni, akkor a visszafelé haladó a természetes irány, míg ha új tények vagy állapotok elérése a cél, akkor inkább előrefelé láncolást kell alkalmazni

29 A szabályalapú rendszerek értékelése - előnyök
modularitás minden szabály az ismeretanyag egy egységének megfogalmazása, amely a többi szabálytól függetlenül hozható létre, törölhető vagy módosítható univerzális megjelenés minden ismeretet szabályok formájában fogalmazunk meg

30 A szabályalapú rendszerek értékelése - előnyök
természetesség a hétköznapi életben is igen sok helyzetben szabály jellegű megfogalmazással fejezzük ki magunkat bizonytalanság-kezelés bizonytalanság-kezelési lehetőségekkel viszonylag könnyen egészíthetők ki a szabályalapú rendszerek, amikor is a következtető gépet ki kell egészíteni a megfelelő számítást végző kalkulussal

31 A szabályalapú rendszerek értékelése - hátrányok
végtelen láncolás mind adatvezérelt, mind célvezérelt esetben – éppen az előnyként említett modularitás miatt – könnyen írhatunk olyan szabályokat, amelyek esetében a feladatmegoldás végtelen szabályláncot generál új, a korábbiakkal ellentmondó ismeret beépítése nincs általános módszer a szabályok esetleges ellentmondásainak ellenőrzésére, így egy új szabály felvétele vagy a meglévő szabályok módosítása könnyen ellentmondásossá teheti a szabályhalmazt

32 A szabályalapú rendszerek értékelése - hátrányok
metaszabályok a stratégiát módosító ún. meta-szabályok révén lehet a beépített vezérlési stratégiát módosítani. Az univerzális ábrázolás miatt azonban a metaszabályoktól formailag nem különböznek a tárgyterületi ismeretanyagot leíró szabályok, ami megtévesztő lehet. Egy szabály jól-struktúráltságát erősen lerontja az, ha feltételrészében keverednek e kétféle ismeretanyagra utaló állítások nincs szabványosítva a szabályok nyelve implementációnként nagyon eltérhet, ami a szabálybázisok másik rendszerben való hordozását nehezíti

33 Célvezérelt Adatvezérelt Kevés cél, sok kiinduló adat. Sok cél, kevés adat. Csak annyi kiinduló adatot kér be, amennyi az igazolandó cél, megoldási javaslat alátámasztásához szükséges. Beéri annyi bemenettel, amennyit a felhasználó megad, és ezekből konstruál elfogadható célt vagy megoldást. Megadja az összes lehetséges javaslatot. Nem állít elő minden lehetséges megoldást.

34 Célvezérelt Adatvezérelt
Jellemző problématípus a diagnosztizáló. A megoldás oldaláról, a célból indul ki és az ismeretbázisban található tényekkel – tünetek, észrevételek, igény szerint bekért adatok – segítségével jut megoldásra. Jellemző problématípusok: konfiguráló: A kiinduló adatokból – igényekből - állít elő lehetséges konstrukciókat. monitorozó: Az észlelt jeleket elemezve okukat keresve figyelmeztet, ha a kívánttól eltérő jelenséget tapasztal. tevékenység ütemező: Tevékenységek sorozatát határozza meg, melyeknek az adott körülmények között történő végrehajtása az eléje kitűzött célokhoz vezet. A célvezérelt és az adatvezérelt technikák lehetőségeinek összevetése.

35 Bizonytalanság kezelése
Minden szabály, annak feltételrésze és következménye rendelkezhet egy bizonyossági tényezővel, melynek értéke 0 és 100 közé esik. A 0 és 20 közötti értékekre a szabályt elvetjük. bizonyossági faktor (cf): 0 és 100 közötti érték cf = 100 teljes bizonyosság cf = 20 a hihetőség alsó küszöbe cf = 0 teljesen elvetve Példa: ha lakóhelye = Budapest akkor hazája = Magyarország ha lakóhelye = Budapest és neme = nő akkor cipőmérete<42 cf = 80

36 (100*cf(k1)+100*cf(k2)-cf(k1)*cf(k2))/100
Kalkulus Az összetett kifejezések bizonyossági faktorát az alábbi kalkulussal számolhatjuk: cf(a and b) = min{cf(a), cf(b)} cf(a or b) = max{cf(a), cf(b)} cf(k,f) {if f then k} jelöléssel: cf(k)=cf(f)*cf(k,f)/100 ha két szabály vezet ugyanarra a k következményre, akkor az eredő cf(k)= (100*cf(k1)+100*cf(k2)-cf(k1)*cf(k2))/100

37 Hibák a szabálybázis kialakításakor
szintaktikailag redundáns szabályok (a feltételek és következmények ekvivalens átrendezéssel azonos formára hozhatók) szemantikailag redundáns szabályok (szinonímák) ellentmondó szabályok magában foglaló szabályok körkörös szabályok szükségtelen feltételek zsákutca szabályok elérhetetlen szabályok

38 II. Szemantikus (asszociatív) hálók
Az ember képes egy egész összetartozó cselekvéssorozatot egyben kezelni és elemeire felbontani, analizálni. Fogalmak csak önmagukban is értelmes elemekből alkothatók, mert csak ebben az esetben tudjuk ezek összességét együtt, egy gondolati egységként kezelni.

39 II. Szemantikus (asszociatív) hálók
Egy fogalom összefoghatja: egy értelmes cselekvéssorozat elemeit egy bizonyos ismertetőjegy, tulajdonság szerint összetartozó dolgokat hasonló rendszer szerint a hozzájuk tartozó dolgokat (mint a tudomány fogalma)

40 II. Szemantikus (asszociatív) hálók
A szemantikus hálókat eredetileg Quillian fejlesztette ki a 70-es évek végén angol mondatok jelentésének leírására. Célja olyan reprezentáció kidolgozása volt, amellyel két szó összehasonlítását, szembeállítását, valamint egy szöveg jelentésének meghatározását emberhez hasonló módon lehetne megtenni. A természetes nyelv megértésének során a lexikai egységek ábrázolására alkalmazták.

41 II. Szemantikus (asszociatív) hálók
A kognitív pszichológiai kísérletek alapján a kutatók azt feltételezték, hogy az emberek tárgyköri ismereteiket háló formájában tárolják. Bebizonyosodott, hogy az általános tulajdonságok nem az egyes egyedekhez kapcsolódnak, hanem mindig az adott osztály szintjén rögzülnek. Többszintű osztályozás esetén pedig a jellemzőket a lehető legmagasabb szinten jegyezzük be, ahol már érvényesek.

42 II. Szemantikus (asszociatív) hálók
Tud-e a kanári énekelni? Tud-e a kanári repülni? Van-e a kanárinak bőre? kanári → madár → állat Az emberek a világ objektumait hierarchikus kapcsolataikkal együtt tárolják, az azokra jellemző tulajdonságokat pedig a lehető legmagasabb absztrakciós szinten társítják ebben a hierarchiában.

43 A hierarchikus emlékezeti szerveződés szemantikus háló modellje Collins és Quillian, 1968

44 A szemantikus háló irányított, címkékkel ellátott gráf, ahol
a csúcsok – objektumokat, tulajdonságaikat, a tulajdonságok értékeit tartalmazzák az összekötő élek – a csúcsok közötti relációkat fejezik ki grafikusan ábrázolja az objektumokat, jellemzőiket, és a köztük fennálló függéseket

45 A szemantikus háló azokon a területeken, ahol a következtetés az elemek valamilyen rendszerén alapul (taxonómia) a szemantikus háló természetes ábrázolási mód, hiszen segítségével kifejezhetjük a koncepciók közötti hierarchiát, az objektumok közötti távolságot. a csúcsok kettős természetűek: egyszerű predikátumok vagy struktúrák osztályjellegűk vagy egyedek koncepciók vagy individuumok

46 olyan problémák reprezentálására alkalmas, ahol
az univerzum szerkezetére valamilyen taxonómikus hierarchia jellemző, vagyis az egyedek egymásba ágyazott osztályok rendszerében helyezkednek el, az univerzum egyedei és osztályai között kiterjedt, de logikailag egyszerű kapcsolatrendszer áll fenn. A háló lehetővé teszi az osztály tulajdonságainak öröklését. Az osztályhoz tartozást az ez egy (is a) (részben rendezési) reláció jelöli, és a reláció révén az osztály tulajdonságait öröklik az egyedei.

47 Példa Például a közlekedési eszköz csúcshoz ez egy reláció kapcsolja a repülő és gépjármű csúcsot. A gépjármű, mint közlekedési eszköz örökli azt a tulajdonságot, hogy embereket szállít. A személyautó és busz is örökli ugyanezt a tulajdonságot, továbbá, hogy gépjármű lévén van motorjuk és úttesten közlekednek. A teherautó osztálynál a szállít tulajdonság értéke nem az öröklött emberek, hanem tetszőleges tárgyak lesznek. Más típusú kapcsolatot fejez ki az egyfajta (a kind of). Két osztályjellegű elem között az általános-speciális kapcsolatra, vagy osztályozásra (egy kutya egyfajta emlős) utal.

48 Példa gépjármű busz személyautó repülő közlekedési eszköz emberek
úttest motor teherautó tárgyak ez egy szállít van közlekedési hely

49 Kérdés: type of (veréb, X) AND lakik(X, város) Válasz: X=‘házi veréb’
tojásrakás szaporodik madár has szárnyak hernyó type of eszik type of vörösbegy lakik veréb mező type of lakik lakik házi veréb város

50 Példák gyakori kapcsolatokra
is a ez egy type of típusa instance of példánya is equivalent to azonos vele has properties of tulajdonságú subclass of részosztálya has part of része set member eleme

51 Szemantikus hálóban Az alkalmazott következtetés a mintaillesztés.
Tényháló: valamely problémakörrel kapcsolatos ismereteink szemantikus hálója Célháló: vagy megválaszolandó kérdés Ha a célhálót alkalmas módon ráillesztjük a tényhálóra, akkor sikeresen végrehajtjuk a tételbizonyítást. Az illesztés alapesete amikor a célháló csúcsai hasonló címkéjű csúcsokra illeszthetők a tényhálóban, és ezáltal a hasonló nevű élek kerülnek fedésbe.

52 Öröklődés A szemantikus háló alapvető sajátossága az öröklődés, és emiatt nem biztos, hogy egy objektum valamennyi bizonyítandó tulajdonságát közvetlenül hozzákapcsolva találjuk a tényhálóban. Lehetséges, hogy a szóban forgó tulajdonságot a hierarchia magasabb szintjén találjuk meg. Ha valamely tulajdonság nem szerepel közvetlenül az objektum alatt, akkor a hierarchiában felfelé az ez egy reláció mentén kell keresnünk. A bizonyítás akkor sikeres, ha valahol ezen az útvonalon megtaláljuk a keresett tulajdonságot.

53 Taxonómikus hierarchiát ábrázoló szemantikus háló
Emlősök vér-hőmérséklet meleg RH Elefántok szín szürke EL Jumbó élőhely kedvenc étel Állatkert földimogyoró

54 Célhálók Elefántok Jumbó Jumbó Állatkert ráncos Állatkert EL élőhely
bőre Állatkert ráncos élőhely Állatkert egyszerű illesztéssel bizonyítható célháló egyszerű illesztéssel NEM bizonyítható célháló

55 Célhálók öröklődéssel bizonyítható részháló Elefántok Jumbó Állatkert
élőhely vérhőmérséklet szín Állatkert szürke meleg

56 Szemantikus illesztés
ha a bizonyítás csak speciális tárgyköri ismeretek felhasználásával lehetséges ha a célhálóban más formában ábrázoltunk egy kapcsolatot, mint a tényhálóban (pl. a szimmetrikus házastársak reláció helyett a férje vagy a felesége kapcsolat szerepel) a szemantikus illesztő ilyenkor felismeri az eltérő ábrázolások tartalmi azonosságát

57 Kivételek kezelése A gyakorlatban megszokott jelenség, hogy egy osztály általános tulajdonságai nem állnak fenn (nem öröklődnek) bizonyos egyedekre. Ekkor olyan reprezentációt kell készíteni, és olyan következtető eljárást alkalmazni, amellyel a kivételek is kezelhetők. Általában nem járható, hogy csekély számú kivétel miatt egy nagy számosságú osztály minden egyedéről külön-külön tartsuk nyilván a szóban forgó tulajdonságokat.

58 Kivételek kezelése Az általánosan érvényes tulajdonságokat az osztályok szintjén tároljuk, míg a kivételeket az egyes objektumoknál, mintegy felülbírálva az öröklött tulajdonságot. A következtető eljárás ennek megfelelően az objektum szintjén keresi meg az adott tulajdonság értékét, és csak akkor folytatja feljebb, osztály szinten a keresést, ha itt nem találja. A keresés általános esetben az „ez egy”, „példánya” címkéjű élek mentén a specifikustól az általános felé halad.

59 Kivételt ábrázoló szemantikus háló
szín Csimpánzok barna EL EL Böbe Albi szín fehér

60 Ellentmondás kezelése
Egy szemantikus háló ellentmondást tartalmaz, ha egy objektuma vagy osztálya két vagy több osztályhoz tartozik egyidejűleg, amelyek révén egymást kizáró tulajdonságokat örököl.

61 Ellentmondást tartalmazó szemantikus háló
Albinók Csimpánzok szín szín (*) EL EL fehér Albi Böbe barna

62 Ellentmondás kezelése
A szín él előfordulásokhoz prioritást rendelünk és a következtető eljárás mindig a nagyobb prioritású következményt tekinti érvényesnek. alapértelmezések alkalmazása: Tekintsük alapértelmezésnek a fehér színt minden olyan egyedre, amely albínó (is). Ezek után, ha egy tulajdonságnak van alapértelmezéses értéke, akkor a következtető eljárás azt tekinti érvényesnek.

63 Előnyök Lehetővé teszik, hogy reprezentáljuk a koncepció-individum közötti kapcsolatokat, s így az ismeretek szerveződését. A mintaillesztést könnyű megvalósítani. Könnyen olvasható, átlátható és grafikus megjelenést biztosít. A kivételkezelés jól megvalósítható. A csúcsok és kapcsolatok a szimbólumokhoz és pointerekhez állnak közel, valamint a pszichológiában az asszociációkhoz.

64 Előnyök Az elsőrendű predikátumkalkulussal ekvivalens az ismeretek kapcsolódásának kezelése, amennyiben változókat is alkalmazunk. Minden fontos kapcsolatot explicit módon és tömören lehet leírni. A keresés elég hatékony a kapcsolatok direkt ábrázolása miatt.

65 Hátrányok Hiányzik a formális szemantika és a szabványos terminológia.
Nem rendelkezik a logika teljes kifejezőerejével. Bizonyos ismerettípusokat nem tudunk kifejezni (procedurális vagy mennyiségi). Gyakran egy egyszerű csúcs nem elegendő az ismeret ábrázolására.

66 Hátrányok A csúcsok strukturális egyszerűsége miatt magának a hálónak összetettnek kell lennie ahhoz, hogy elegendő információt hordozzon. A szemantikus hálót alkalmazó rendszerek nehezen tudnak magyarázatot adni következtetéseikre. Gyakran érvénytelen a következtetés, főleg nagyméretű, nehezen átlátható hálóknál.

67 III. Keretalapú ismeretreprezentáció
a 70-es években fejlesztette ki Minsky A frame vagy tudáskeret egy tipikus szituációt ábrázol; minden átélt szituáció a hozzátartozó viselkedéssel együtt egy gondolati egységet képez, amit az agyunk keretként tárol. Új szituációba kerülve a már átélt szituációkhoz illesztve alakítjuk ki viselkedésünket, elvárásainkat. Miközben a korábbi keretet esetleg módosítjuk vagy új keretekkel bővítjük.

68 Egy keret Valamely fogalom strukturált szimbolikus modellje: a fogalom számunkra fontos tulajdonságait egybefoglaló struktúra, amelyet a fogalom neve foglal egységbe.

69

70

71 Tulajdonságok (attribútumok)
a keret rekeszei vagy bejegyzései (slot) nevezik meg, amelyek megadhatják az attribútum értékét annak alapértelmezését forrását az érték változásakor végrehajtandó eljárásokat, ún. démonokat különböző meta-leírásokat további járulékos információkat.

72 Tulajdonságok (attribútumok)
Attribútum lehet akár egy másik keret is. Kereteket relációkkal lehet összekapcsolni. Különös szerepe van a hierarchikus kapcsolatoknak, amelyek mentén bizonyos attribútumok és azok jellemzői öröklődhetnek.

73 Jellemzők A keretalapú rendszer hierarchikus szerkezetében hasonlít a szemantikus hálókra, de lényeges szemléletmódbeli változás, hogy a keretalapú rendszert nyelvi eszközökkel írjuk le, amely mögött egy futtató rendszer áll. A keretalapú rendszerben ugyanaz az automatikus öröklődés működik, mint a szemantikus hálóknál. Emellett azonban egy-egy alkalmazás probléma-specifikus öröklődési mechanizmusainak definiálására is van mód.

74 Jellemzők A keretalapú ismeretreprezentáció egyik fontos eredménye, hogy az ismeretek procedurális reprezentálását ötvözi a deklaratív megközelítéssel. A keretalapú rendszerekbe tetszőleges eljárás építhetők be démonok formájában. A démont mindig egy objektum valamely attribútumához rendeljük, és akkor lép működésbe, ha az adott attribútummal valami történik, például megváltozik az értéke. Azaz a démon eseményvezérelt eljárás.

75 Jellemzők A szemantikus háló halmazelméleti értelmű. Az osztályok halmazok, részhalmaza, eleme relációkkal. A keretalapú rendszereknél egy osztály egy elképzelt prototípus egyed, amelynek konkrét példányát úgy kapjuk, hogy attribútumainak értéket adunk. A statikus eleme relációt felváltja a példányosítás.

76 A keret általános alakja
Frame <keretnév> attribútum-név1: érték1 facette-név11: facette-érték facette-név1n: facette-érték ... attribútum-névm: értékm facette-névm1: facette-érték facette-névmn: facette-érték Endframe. A keretet a neve azonosítja, belsejében pedig a keret tulajdonságait megadó attribútumok leírása található, amelyek egy-egy rekeszben (slot) vannak elhelyezve.

77 Frame Slot is-a Class domain range default constraint value inverse inheritance demon deklaraciok end. Az attribútum egy reláció, melynek értelmezési tartományát azok a keretek alkotják, amelyekben előfordul ez az attribútum, értékkészletét pedig azok az értékek határozzák meg, amelyekkel kitölthetjük az attribútumot.

78 A Slot osztály attribútumai
Az egyes attribútumokat leíró keretek ennek a Slot nevű osztálynak a példányai. domain az attribútum minden olyan előfordulására érvényes, amely a domain-ben található (értelemzési tartomány) range a lehetséges értékek halmaza (attribútum értékkészlet) default alapértelmezés constraint az értékekre vonatkozó megszorítások value attribútum érték inverse az attribútum-reláció inverze (pl.: edző/edzett csapat, barát/barát) inheritance speciális öröklődés (vezetéknév apáról gyerekre)

79 frame Inheritance is-a Class direction range from-range-to-domain, from-domain-to-range default from-range-to-domain slots //az öröklődő attribútumok felsorolása type range values-too, slots-only default values-too endframe.

80 Madarakat osztályozó keret-hierarchia gráfos ábrázolása (Harmon, 1990)
2,5 cm – 15 cm hossza madár szaporodik tojásrakás is-a is-a vörös-begy hossza veréb 20 cm is-a lakik is-a erdő mező város házi veréb mezei veréb

81 Madarakat osztályozó keret-hierarchia nyelvi leírása
Frame madár; Szaporodik: tojásrakás; Van_neki: szárnyak; Hossza: cm Endframe. Frame vörösbegy; Is a: madár; Hossza: 20 cm Eszik: hernyó; Lakik: mező, város; objektum-attribútum-érték hármasokkal: <vörösbegy, hossza, 20> <vörösbegy, lakik, [erdő, mező, város]>

82 Frame veréb; Is a: madár; Endframe
Frame veréb; Is a: madár; Endframe. Frame házi veréb; Is a: veréb; Lakik: város; Frame mezei veréb; Lakik: mező;

83 Madarakat osztályozó keret-hierarchiát leíró űrlap
A rendszer megnevezése: madarak-osztályozása Az objektum neve: vörösbegy A szülő objektum(ok) neve: madár Utód objektum(ok) neve: Attribútum\Rekesz Érték(ek)/Megszorítások (lehetséges értékek, alapértelmezések, érték-korlátozások, meta-leírások) Érték(ek) forrása(i) (öröklődés szülőtől, adat egy eljárástól/érzékelőtől, adatbázis lekérdezés, felhasználói válasz) Módosítás hatása (általában: démon-deklarálás) 1. hossz érték: 20, mértékegység: cm felhasználói válasz 2. lakik [erdő, mező, város] 3. szaporodik a rekesz maga (!) öröklődik a madártól

84 Kapcsolatok A kereteknél is érvényes az öröklődési mechanizmus. Minden példány rendelkezik mindazokkal az attribútumokkal, amelyek az örökítő osztályokban szerepelnek. Ezek pontosan azok az osztályok, amelyekhez az alábbi kapcsolatok révén juthatunk el: ez egy (is a) egyszeres öröklődés egyfajta (kind of) többszörös öröklődés példánya (instance of) hasonló (similar): a koncepció bizonyos szituációkban hasonlóan viselkedik, mint egy másik koncepció

85 Öröklődés A példány rendelkezik mindazokkal az attribútumokkal, amelyek az örökítő osztályokban szerepelnek. Egy attribútum értékét az öröklési útvonalon mindig az első, a példányhoz legközelebbi bejegyzés határozza meg.

86 Öröklődés Ha egy attribútumhoz több öröklési útvonal tartozik és a példány eltérő értékeket örököl, akkor több lehetőség képzelhető el: a rendszer ellentmondást jelez ha valamely érték a többi specializációja, akkor a specializált érték öröklődik prioritások és alapértelmezések megadása

87 Démonok eljárások attribútumokhoz rendeljük, megadjuk, hogy milyen esemény bekövetkeztekor lépjenek működésbe a démon elindít egy eljárást, amely az attribútum értékét meghatározza, ha ha szükséges (when needed) ha változott (when changed) ha töröltük (when deleted) ha értéket kapott (when added) A deklaratív ismeretreprezentációs módszerekhez tartozó következtetési eljárások szimbolikus formulamanipulációt végeznek, nem képesek kifejezések értékét kiszámítani.

88 ha szükséges (when needed)
akkor kell a démont végrehajtani, ha a szóban forgó attribútumnak az értékére valahol hivatkozás történik a démon funkciója ilyenkor, hogy kiszámítsa az attribútum aktuális értékét

89 Démonok Általános esetben a démon – egymásba ágyazott démonhívásokkal – továbbgyűrűzteti a kiváltó esemény hatását. A démonok alkalmasak arra, hogy olyan összetett rendszer működését vezéreljék, amely számos, viszonylag önálló egység együtthatásából tevődik össze.

90 Démonok A rendszer egyes egységeiben egyszerűen meg tudjuk mondani, hogy milyen elemi szintű esemény mint feltétel esetén mely tevékenységet kell végrehajtanunk. Alkalmas ponton elindítva egy démon olyan értékadást válthat ki, amely újabb démont aktivizál, s a rendszer működése a démonokon keresztül valósul meg. Pl. forgalmi lámpás útkereszteződés

91 Előnyök Esemény vezérelt végrehajtás.
Az ismeretek szervezése világos, a slotok elérése direkt módon történik. Ön-vezérlés: a keretek struktúrájából adódóan egy adott szituációban képesek meghatározni saját alkalmazhatóságukat. Dinamikus értékek elhelyezése. Deklaratív és procedurális ismeretek együttes ábrázolása.

92 Hátrányok Prototípusoktól való eltérés: Nagyon sok valós jelenség eltér a megszokott sémától. Ha nem megfelelő absztrakciós szinttől indítjuk a keretek kibontását, a kivételek miatt nagyon elbonyolódhat a rendszer.

93 Hátrányok Új szituációhoz való alkalmazkodás: probléma van akkor, ha olyan új szituációt vagy objektumot kellene ábrázolnunk, amelyet nem tudunk a kerethierarchiába beilleszteni. Heurisztikus ismeretek ábrázolása problémás: heurisztika leírására nem alkalmas.

94 Hibrid keretalapú rendszerek
ötvözik a keret- és a heurisztikus ismeretek leírására alkalmas szabályalapú reprezentálási módokat (minősített nevekkel megnevezett) keret-attribútumok közötti kapcsolatokat, heurisztikus ismereteket lehet szabályokkal leírni

95 Hibrid keretalapú rendszerek
a következtető-gépben a keret-struktúra feladatmegoldásra való mozgósítását ellátó öröklődési-, démon-, stb mechanizmusok mellett a szabályok cél- (esetleg adat-) vezérelt vérehajtását biztosító következtető mechanizmusok is megtalálhatóak előnyösebbek és kevesebb hátránnyal bírnak, mint a tisztán keretalapú rendszerek

96 Hibrid keretalapú rendszerek
keretek célvezérelt és/vagy adatvezérelt szabályok objektumorientált eszközökkel valósítja meg végrehajtására többféle végrehajtási mechanizmus dinamikusan egymásba ágyazottsága jellemző

97 Néhány ismertebb hibrid keretalapú eszköz
ART (Inference Corp.), KEE (Intellicorp), KC (Carnegie Group), Nexpert Objects (Neuron Data), Level5 Objects (Information Builders) alapeszközök és különböző céllal továbbfejlesztett változataik.

98 A hibrid keretalapú technika főbb előnyei
a szabályokat csak a heurisztikák leírására használjuk, míg szabályalapú rendszerekben mindent szabályokkal ábrázolunk egyetlen helyen, az objektumon belül vannak az adott objektumról szóló összes leíró és procedurális információk (ezek a leírások jól olvashatók, könnyen módosíthatók, és a módosítások hatása jobban kézben tartható)

99 Démonok és szabályok jellemző különbségei
Sokkal gyorsabbak, függetlenebbek, mint a szabályok. „Ok-és-hatás” kapcsolatban vannak az értékváltozásokkal és a rendszer ezekre való reakciójával. Autonóm módon működnek. Egy szabályt egy másik szabály, vagy bizonyos adatok jelenléte hív életre. Ez a szituációfüggő, végrehajtási időben történő kapcsolódás általában nem látható előre. Általában kevésbé olvashatók, mint a szabályok, ugyanis valamely programozási nyelven (általában az adott eszköz implementáló nyelvén) vannak írva. Szimbolikus formalizmussal vannak megírva, ezért igen jól olvashatók.

100 Démonok és szabályok jellemző különbségei
Egyetlen céljuk van: az adott attribútum megjelölt értékváltozásának lekezelése. A szabályokba beépített ismeret szabadon áramlik az összes többi szabály felé. A démonok hatáskörét előre, statikusan megkötjük (ennek van hátránya is és előnye is). A szabályok hatásköre futásidőben, dinamikusan rajzolódik ki; ez flexibilis, kreatív megoldáskeresést biztosít.

101 Példa Péter, a 192 cm magas kosárcenter, főiskolára jár és Ft havi juttatást kap a kosárlabdázás révén. Valamekkora összeget minden kosárlabdázó kap. Mint minden főiskolás, Péter is rendelkezik elektronikus levelezési címmel, ez A főiskolások kollektív levelezési címe A főiskolások és a kosárlabdázók egyaránt személyek. A személyeket jellemzi a vezeték-és keresztnevük, valamint az, hogy az azonosító okmányuk a személyi igazolvány.

102 Példa Péter a Szöcskék csapatában játszik barátjával Tamással együtt. A Szöcskék egy főiskolás kosárcsapat, amelynek nemcsak játékosai főiskolások, hanem az edzője is. A kosárcsapatokra általában ilyen megkötés természetesen nem érvényes; az edző és a játékosok tetszőleges személyek lehetnek.

103 Példa frame Személy instance of Class azonosító-okmány személyi igazolvány vezetéknév keresztnév endframe frame Főiskolás is-a Személy közös-lev-cím lev-cím

104 Példa frame Oktató is-a Személy endframe frame Kosárlabdázó havi-juttatás frame Kosár-Center is-a Kosárlabdázó

105 Példa frame Kosárcsapat instance-of Class edző Személy játékosok collection of Kosárlabdázó endframe frame Főiskolás-Kosárcsapat is-a kosárcsapat edző oktató Játékosok collection of Főiskolás

106 Példa frame Szöcskék instance-of Főiskolás-Kosárcsapat játékosok Péter, Tamás … endframe frame Péter instance-of Főiskolás instance-of Kosár-Center lev-cím magasság 192 havi-juttatás barát Tamás

107 Példa frame Tamás instance-of Főiskolás endframe

108 A hierarchikus struktúráról
Egy keret vagy osztály vagy példány, de a kettő egyszerre nem lehet. Az osztály vagy a Class ősosztály példánya vagy az is-a slottal hivatkozik egy bővebb osztályra. A példányokat az instance-of attribútum jelenléte azonosítja. Többszörös öröklődés megengedett (Péter, Főiskolás, Kosár-Center)

109 A hierarchikus struktúráról
A példányok tovább nem példányosíthatók. Elvárjuk, hogy a hiányzó osztály és példány kapcsolatokat felderítse a rendszer (Tamás Kosárlabdázó)

110 Péter attribútumai (örökölt és adott)
Frame Péter instance of Főiskolás instance of Kosár-center azonosító-okmány személyi igazolvány vezetéknév keresztnév közös-lev-cím lev-cím magasság 192 havi-juttatás10000 barát Tamás endframe.

111 frame Személy isntance-of Class azonosító-okmány személyi igazolvány vezetéknév keresztnév sport-végzettség endframe frame Főiskolás is-a Személy közös-lev-cím lev-cím

112 frame Oktató is-a Személy endframe frame Kosárlabdazó havi-juttatás default 5000 frame Kosár-Center is-a Kosárlabdázó magasság constraint >=190

113 frame Kosárcsapat instance-of Class edző Személy játékosok collection-of Kosárlabdázó endframe frame Főiskolás-Kosárcsapat is-a Kosárcsapat edző Oktató játékosok collection-of Főiskolás

114 frame Szöcskék instance-of Főiskolás-Kosárcsapat edző Mágus jatékosok Péter, Tamás, ... endframe

115 frame Peter instance-of Főiskolás instance-of Kosár-Center lev-cím magasság 192 havi-juttatás barát Tamás csapat Szöcskék edző Mágus endframe frame Tamás

116 frame Mágus instance-of Oktató sport-végzettség edzői-oklevél edzett-csapat Szöcskék endframe frame edző instance-of Slot domain Kosárcsapat range Személy constraint sportvégzettség = edzői-oklevél inverse edzett-csapat

117 frame Barát isntance-of Slot domain Személy range Személy inverse Barát endframe

118 frame Játékosok instance-of Slot domain Kosárcsapat range collection-of Kosárlabdazó inverse Csapat inheritance játékosok-öröklés endframe frame játékosok-öröklés instance-of Inheritance direction from-domain-to range slots edző type values-too

119 Példa démon alkalmazására
frame Kosárlabdázó; is-a Személy; havi juttatás; sportorvosi dátum; versenyezhet; endframe. Frame versenyezhet; instance of Slot; domain Kosárlabdázó; range {TRUE, FALSE}; when-needed demon mai dátum –sportorvosi dátum <=90; A kosárlabdázók jellemzői közé felvettük a sportorvosi igazolás dátumát és azt a bejegyzést, hogy a játékos játszhat-e a mérkőzésen. Ennek az a feltétele, hogy igazolása ne legyen 90 napnál régebbi keletű. A feltétel kiértékelését a when-needed-demon tartalmazza, amelyet a versenyezhet attribútumot leíró keret foglal magában. A démon egy értékadó utasítást tartalmaz, amely a versenyezhet attribútumnak ad logikai értéket.


Letölteni ppt "Tudásalapú rendszerek"

Hasonló előadás


Google Hirdetések