1 / 49

Tudásalapú rendszerek építése

Tudásalapú rendszerek építése. Forrás: Sántáné-Tóth Edit: Tudásalapú technológia, szakértő rendszerek. Dunaújvárosi Főiskola Kiadói Hivatala, 2000. A forrás alapján kiegészítette: Benkő Attila (IX5AID) – Szakértői rendszerek, Pannon Egyetem, 2007. Az előadás tartalma.

Download Presentation

Tudásalapú rendszerek építése

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Tudásalapú rendszerek építése Forrás: Sántáné-Tóth Edit: Tudásalapú technológia, szakértő rendszerek. Dunaújvárosi Főiskola Kiadói Hivatala, 2000. A forrás alapján kiegészítette: Benkő Attila (IX5AID) – Szakértői rendszerek, Pannon Egyetem, 2007.

  2. Az előadás tartalma • Célvezérelt rendszerek építése • Adatvezérelt rendszerek építése • Strukturált szabályalapú rendszerek építése • Hibrid rendszerek építése • Tudásalapú rendszerek verifikálása és validálása • Összefoglalás

  3. Célvezérelt rendszerek építése • kisméretű rendszerek többsége célvezérelt • alkalmazásuk jellemzően diagnosztizáló(osztályozó v. kiválasztó) • példa: képmagnó vétele ill. bor-tanácsadó

  4. Első lépések • a probléma elemzése és definiálása • a probléma szerkezetének meghatározása • az induló szabálykészlet kidolgozása • a szabályok továbbfejlesztése, finomítása • a következtetés és vezérlés „testre-szabása”

  5. 1. A feladat elemzése és megadása jellemzés: • A rendszer célja: képmagnó kiválasztásában tanácsadás • Felhasználói kör: üzlet eladói (esetleg vevők) • Szakértői kör: üzlet eladói • Felhasználás módja: eladók munkájának támogatása • Felhasználó jellemző igényei: pl. villogó fény, digitális kijelző, színes gombok, minél alacsonyabb ár

  6. A feladatmegoldás jelenlegi módja(Felhasználó, Bemenet Elemzés Kimenet, Javaslat) • Bemenet: a vevők vételi szempontjaiA vevő képmagnót szeretne vásárolni, és tanácsot kér. • Elemzés: vevők kikérdezése, lehetőségek bemutatása, alternatívákAz eladó kérdéseket tesz fel a vevőnek, hogy megtudja a vevő igényeit. • Kimenet: javasolható készülékek, indoklássalAz eladó javaslatként megnevez egy v. több képmagnót, indoklással. Feladat elemzés (Szabályok, következtetések) Felhasználó Javaslat Bemenet Kimenet

  7. Szakértő rendszer Probléma Javaslat Feladatmegoldás szakértő rendszer segítségével: Elképzelhető, hogy egy későbbi rendszerváltozat az eladókat részlegesen/teljesen kiváltja a tanácsadásban. Kulcs-kritériumok: • Tárgyköri szakértő rendelkezésre áll: igen (kijelölt eladó) • Tesztesetek rendelkezésre állnak: igen (képmagnók leírása) • Szűk, jól definiált a feladat: igen (procedurális jellegű) • Verbális ismeretek jellemzőek: igen Emberi szakértő

  8. Kizáró kritériumok: • egyikkel sem kell számolni A feladat típusa: • Diagnosztizáló: igen (ezen belül egyszerű kiválasztó jellegű) A következtetés jellege: • Célvezérelt: igen (kevés a javasolható készülék, a kiválasztáshoz célzott kérdések kellenek) Feladat: képmagnóra javaslatot tevő rendszer, információk a vevőktől, a rendszer súlyoz és indokol, kínálat változását követi

  9. A feladat szerkezetének meghatározása • „konkrét” képmagnók (ami készleten van, más obj.-ot nem kezel) • attribútumok: • videó-rendszer típus • fejek száma • állókép lehetősége • felvétel keresési lehetőség • ár • Szempontok attribútum nevének megválasztásához: • rövid nevek használata (20-30 karakter) • összetett szavaknál elválasztójelek: „-”, „ _ ” (eszköz-függő) • találó nevek használata (a fejlesztés résztvevői számára félreértés nélkül érthetőek) • Objektum neve is attribútum: neve: „javaslat”, értékei pedig a konkrét képmagnó nevek • Logikai alapú (szabály alapú) reprezentáció alkalmazható, célvezérelt következtetést alkalmazunk

  10. Induló szabálykészlet kidolgozása • kétféle mód • rögtön szabályokat írunk • előbb döntési táblába foglaljuk a példákat Objektum és attribútumok alapján szakértő elmond egy szabályt.

  11. Szabályok megírásával: A képmagnó tanácsadó rendszer első szabályai: szab-3: if típus = ‘BETA’ and fejek-száma = 3 and állókép = nem and keresés = igen and ár = alacsony then javaslat = ‘Xmovie-Beta’. szab-4 if típus = ‘VHS’ and fejek-száma = 5 and állókép = igen and keresés = igen and ár = magas then javaslat = ‘Super-Viewer-2.0’. szab-1: if típus= ‘VHS’ and fejek-száma = 4 and állókép = igen and keresés = igen and ár = alacsony then javaslat = ‘VCX-1000’. szab-2: if típus= ‘VHS’ and fejek-száma = 4 and állókép = igen and keresés = igen and ár = közepes then javaslat = ‘Record-Mate99’.

  12. Mélyebb működési szintek: • absztrahálással, külső következtetési szabályok beiktatásával • részcélok • segéd-hipotézisek • absztrakt attribútumok bevezetése Példa: ha a vevő nem tudja a fejek számát, csak azt, hogy jó minőségű készüléket szeretne szab-5: if minőségi-keresés = fontos then fejek-száma = 4 and fejek-száma = 5. Új attribútum, ill. szabály beiktatásával működési-szint növelés érhető el. A szabályok összevonása megengedett, ha a feltételük megegyezik és következményükben ugyanaz az attribútum szerepel.

  13. 2. Döntési tábla készítése

  14. Döntési tábla készítése (kétféle szemlélet) • Leíró közelítés: összes javaslat beírása, majd táblázat kitöltése soronként • Empirikus közelítés: ugyanarra a javaslatra akár több alternatív sort (példát) is megadhatunk Pl. egy termék követéséhez szükséges hibajegyzék esetén: • külön tárolunk minden reklamációt • hiba-jelenségenként gyűjtjük a reklamációkat Ezután szabályok generálása indukcióval. Egyszerűsítő javaslatok: • azonos sorokból csak egyet tartsunk meg • a megegyező javaslattal rendelkező sorokat „or”-al kössük össze

  15. Cél megadása: goal = <javasolt attribútum> (jelen esetben: goal = javaslat) • Indulhat a konkrét feladat megoldása(nem definiált értékekre rákérdez a rendszer) • A nem definiált attribútum-értékekre alapértelmezés szerint angol kérdő-mondattal kérdez rá: • „ What is the value of <attribútum> ? ” • Példa: • What is the value of típus? VHS • What is the value of minőségi-keresés? fontos • What is the value of állókép? igen • What is the value of keresés? igen • What is the value of ár? magas • javaslat = Super-Viewer-2.0.

  16. Szabályok továbbfejlesztése, finomítása • Minden esetben adjon tanácsot (legalább: „Forduljon igazi szakértőhöz!”) • Felhasználóbarát párbeszéd biztosítása • Szituációk kidolgozása, melyekhez több javaslat tartozhat • Bizonytalanságkezelés (bizonytalansági tényezőkkel; felhasználó is) • Szabályok finomítása absztrakció útján, vagy kiegészítés további szabályokkal • Egyesítjük az ismétlődő szabályokat (ha az eszköz ezt megengedi) • Újabb szabályok bevitelével bővítjük a tárolt ismeretanyagot

  17. Minden esetben adjon tanácsot a rendszer • akkor is adjon tanácsot, ha ismereteinek határához ért • helyezzünk el lezáró szabályt szab-6: if javaslat is unknown and display (‘Nem tudok javaslatot adni!’) then javaslat = nem-adható.

  18. Felhasználóbarát párbeszéd biztosítása • Felhasználói párbeszédet támogató meta-szabályok alkalmazása • kérdő mondat deklarálása: question(<attribútum-név>) = ‘Milyen…’.pl.: question(típus) = ‘Milyen típusú képmagnót kíván venni?’. • Válasz-menü deklarálása: legalvals(<attribútum-név>) = [<érték>, …].pl.: legalvals(típus) = [‘VHS’,’BETA’]. • válasz-ellenőrzés: legalvals(<attribútum-név>) = <ellenőrző eljárás>.pl.: legalvals(fejek-száma) = number.

  19. A felhasználói párbeszédet támogató meta-deklarációk question(típus) = ‘Milyen típusú képmagnót kíván venni?’. legalvals(típus) = [‘VHS’, ’BETA’]. question(minőségi-keresés) = ‘Fontos-e a keresés minősége?’. legalvals(minőségi-keresés) = [fontos, nem-fontos]. question(állókép) = ‘Igényt tart-e állókép üzemmódra?’. legalvals(állókép) = [igen, nem]. question(keresés) = ‘Igényt tart-e felvétel keresésére?’. legalvals(keresés) = [igen, nem]. question(ár) = ‘Milyen árfekvésű készülék érdekli?’. legalvals(ár) = [alacsony, közepes, magas].

  20. Több javaslatot adó szituációk kidolgozása • ne csak egy, hanem több érték keresése az adott célhoz pl.: Prolog: nem csak az első megoldásra vagyunk kíváncsiak, hanem mindegyikre • multivalued(javaslat). pl.: multivalued(fejek-száma).

  21. Bizonytalanságkezelés bevezetése • a szakértő azonos igényeket kielégítő készülékek közül egyeseket gyakrabban szokott ajánlani, mint másokat (szerviz, használhatóság, haszonkulcs, akció) • bizonyossági tényező alkalmazása: cfif …. then javaslat = ‘Super-Viewer-2.0’ cf 40 • válaszoknál is használható:‘Igényt tart-e állókép üzemmódra?’ igen, nemigen cf 80Javaslat = Super-Viewer-2.0 cf 32

  22. Tudásbázis finomítása absztrakcióval – 1. • felhasználó által nem érthető helyzetekben használunk attribútum-absztrakciót (pl.: fej-attribútum) • ismétlődő feltétel-csoportokat ki lehet emelni egy új szabály feltételébe csökken a tudásbázis mérete, rövidebb lesz a kiértékelési időszab-7: if állókép = igen and keresés = igenthen jó-minőség = igen. • transzformáció szabályok – felhasználó számára kézenfekvőbb az értékcsoportok közti átváltásszab-8: if legfeljebb < 30000then ár = alacsony. question(legfeljebb) = ‘Legfeljebb mennyit szán a készülékre?’legalvals(legfeljebb) = number.

  23. Tudásbázis finomítása absztrakcióval – 2. szab-9: if legfeljebb >= 60.000 then ár = magas. szab-10: if legfeljebb >= 30.000 and legfeljebb < 60.000 then ár = közepes. Ne azt kérdezze a rendszer, hogy közepes árfekvésű terméket akar-e vásárolni, hanem azt, hogy legfeljebb mennyi pénzt szán rá.

  24. Ismétlődő szabályok egyesítése azonos attribútum-struktúrájú (ismétlődő) szabályok általánosítása kézenfekvő. Ezek összevonás után helyettesíthetőek (eszköztől függő módon) • változókat tartalmazó egyetlen szabállyal és a változók konkrét (attribútum)érték n-eseivel, mint tényállításokkal (Prolog szerű megoldás) • egyetlen adatbázis szabállyal („szabály-osztállyal”) és attribútum-értékek n-eseit rögzítő adatbázis táblávalpl.: szab-db:if típus = [ ] and fejek-száma = [ ] and állókép = [ ] and keresés = [ ] and ár = [ ]then javaslat = [ ].

  25. Új szabályok bevitelével bővítjük a rendszerben tárolt ismereteket • konzisztencia ellenőrzés : Nagyon törékeny egy ilyen rendszer, ha nem készítjük elő gondosan a rendszer bővítését, az új szabályok könnyen vezethetnek az eddigiekkel ellentmondó következtetésekre. • tudásalapú végtelen ciklus kiküszöbölése

  26. A következtetés és vezérlés testre-szabása • szabályok vagy részeik sorrendjének megváltoztatása • ha nem lehet szabály prioritást megadni, szabályok sorrendjét is átrendezhetjük • előrevetett szabállyal időben elvágjuk a meghiúsuló szabályok előtt a végrehajtást (sebesség növelése) • szabály-relatív küszöbszám (a bizonytalansági súly mellett) • szabályokban elemi feltételek átrendezése; ha valami gyakran meghiúsul, azt előrevéve megspórolhatjuk az előtte lévő feltételek kiértékelését • bizonytalanságkezelésnél lokális küszöbszám megadása • bizonyossági szint csökken a bizonytalan szabályoknál. Ha egy küszöbszám alá kerül, akkor meghiúsul. Átírhatjuk a küszöbszámot. • többértékű (többszörös) cél megadása • ha a megoldáshoz a rendszer fokozatosan közelít , a célt részcélokra lehet bontani (pl. TV ajánlattal bővíteni a képmagnó ajánlatot)

  27. adatokból megkonstruálnak egy vagy több elfogadható megoldást sok megoldás – nem mindegy, milyen úton történik a keresés  tudásmérnöknek több beleszólás biztosítása a vezérlés menetébe a végrehajtás vezérlésével is foglalkozni kell (kiinduló adatok megadása, konzultáció menetének előírása, megállási feltétel) Adatvezérlet rendszerek építése

  28. Rendszerépítés két vonala Deklaratív ésheurisztikusismeretek Vezérlési ismeretek Objektumokkidolgozása Vezérlési elemekkidolgozása Vezérlési utasításokbeírása a szabályokba Szabályok megírása

  29. Adatvezérelt rendszerek építésének első lépései • a probléma elemzése és definiálása • induló adatok megadása • induló szabálykészlet megadása • a rendszer megállásának beállítása • szabályvégrehajtása vezérlése • a rendszer továbbfejlesztése

  30. Strukturált szabályalapú rendszerek építése • a probléma elemzése és definiálása • kontextus-hierarchia meghatározása • induló kontextusfa megtervezése • a kontextusfa implementálása • a kontextusfa és a szabályok kibővítése, felülbírálata

  31. Kontextus-hierarchia meghatározása • A feladat részfeladatokra bontása: • Procedurális elemzéssel • Egymás után elvégzendő részfeladatok sorozatára lehet bontani. • Strukturális elemzéssel • A feladat dekomponálása a feladat belső szerkezetének olyan kibontását jelenti, amelynél a részfeladatok egymáshoz kapcsolódnak, de ezek nem a feladatmegoldás során egymás után megteendő lépések. Pl.: ASEA robotegységek hibafelderítését és karbantartását támogató tanácsadó rendszer.

  32. Induló kontextus-fa megtervezése • Átfogó/áttekintő közelítés: • Az egész feladatot elnagyolva fogja meg. Felszínes lesz a modell, prototípus általában nem is készül. • Leszűkítő, részletező közelítés: • Egy kiragadott kontextust részleteiben kidolgozunk, majd megépítünk egy prototípust is. • Kevert közelítés: • Az előző két eset kombinációja. Ily módon meg lehet vizsgálni a rendszer átfogó struktúráját, megmutatva egy részletesebben kidolgozott részletét is. • Az egyes kontextusok által átfogott feladat terjedelme legyen közel azonos. • Több változatot is érdemes kidolgozni és elemezni azokat. • Találó neveket adjunk a kontextusoknak.

  33. Hibrid rendszerek • A feladat leírására kombinálják a keret- és a szabályalapú technikákat, a felhasználói felületet pedig objektum-orientált technikával kezelik. • Előnyei: • Szabályokat csak a heurisztikák leírására használjuk • Egyetlen helyen, a kereten belül vannak az adott keretekről szóló összes információk. • Az általános célú tudásalapú eszközök piacán a hibrid eszközök dominálnak.

  34. Hibrid rendszerek építésének javasolt lépései • probléma meghatározása • keretek és rések megadása • példányok megadása • felhasználói felület megadása • szabályok megadása • démonok megadása • üzenetküldés kidolgozása

  35. Tudásalapú rendszerek verifikálása és validálása • A hiteles (dependant) szakértői rendszerekkel szembeni követelmények: • Megbízhatóság • Védelem • Biztonságosság • Karbantarthatóság • Hordozhatóság

  36. Szakértői rendszer hibaforrásai Hiányzik a követelmény-specifikáció, ha pedig van, akkor nem tartják be. A tudásbázisba beépítenek szintaktikai és szemantikai hibákat. Nincs megfelelően reprezentálva a tárgyterületi ismeretanyag és/vagy az alkalmazott következtetések nem illeszkednek a problémához.

  37. Verifikálás és validálás • Verifikálás: • Összehasonlító ellenőrzés • Egy adott fejlesztési fázis eredményének értékelési eljárása. • Célja: igazolni az eredmény megfelel a követelményeknek • A hibaforrások 1. és 2. eseteivel, valamint a tudásbázis konzisztenciájának és teljességének szintaktikai és szemantikai hibákra vezető hiányosságaival foglalkozik. • Validálás: • Bevizsgálás, érvényesítés • Az elkészült rendszer kiértékelési eljárása. • Célja: a szoftver a működésében megfelel-e a minőségi jellemzőknek • Főként a hibaforrások 3. esetével foglalkozik.

  38. Rendszertesztelés

  39. Programozási hibák a szabálybázisban • Redundáns szabályok: • Szintaktikailag redundáns • Szab-a1 if páratartalom = magas and hőmérséklet = forró then zivatar = lehetséges. • Szab-a2 if hőmérséklet = forró and páratartalom = magas then zivatar = lehetséges. Különösen veszélyes, ha bizonyossági tényezőt kapcsolunk hozzájuk, és pl.: különböző forrásokból származó következményekként indokolatlanul megerősítik egymás (önmaguk) bizonyossági mértékét.

  40. Redundáns szabályok • Szemantikailag redundáns: • Szab-a3: if páratartalom = magas and hőmérséklet = forró then zivatar = várható. • Szab-a4: if páratartalom = magas and hőmérséklet = forró then

  41. Ellentmondó szabályok • A feltétel azonos • A következmény egymásnak ellentmondó • Pl.: • then napsütés = várható. • then not napsütés = várható.

  42. Magában foglaló szabályok • Ha a feltétel bővebb, a következmény pedig ugyanaz. • Pl.: • 2 feltétel => a következmény • 2+1 feltétel => b következmény (a not = b)

  43. Körkörös szabályok • Körbefutó következtetések • if testvérek(X,Y) then szülők-azonosak(X,Y). • if szülők-azonosak(X,Y) then testvérek(X,Y).

  44. Szükségtelen feltétel alkalmazása • Szintaktikailag redundáns lenne, de az egyik feltételük ellentmond egymásnak • lázas = igen • lázas = nem

  45. Zsákutca szabályok • A következményének egyetlen akciója sem jelent megoldást, de nem is eredményezi más szabály tüzelőképessé válását. • if üzemanyagszint-mutató = piros then tank = üres.

  46. További hibák Hiányos, vagy hiányzó szabályok Elérhetetlen szabályok

  47. Validálás módszerei Informális Teszteléses Helyszíni teszt Validálás modulonként

  48. Összefoglalás • Főbb MI kutatási irányok: • Integrálás a korábbi technológiákkal és alkalmazásokkal • Kapcsolatok létesítése az MI különböző területei között • A kutatási eredmények mielőbbi hasznosításának kényszere • Alkalmazás-specifikus eszközök kifejlesztése

  49. Köszönöm megtisztelő figyelmüket!

More Related