1 / 50

SZAKÉRTŐ RENDSZEREK

SZAKÉRTŐ RENDSZEREK. Ismeretalapú rendszerek tervezése, fejlesztése, ismeretszerzés. Németh Nóra. 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ó). Az építkezés első lépései.

salaam
Download Presentation

SZAKÉRTŐ RENDSZEREK

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. SZAKÉRTŐ RENDSZEREK Ismeretalapú rendszerek tervezése, fejlesztése, ismeretszerzés Németh Nóra

  2. 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ó)

  3. Az építkezés első lépései • 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

  4. Példafeladat • 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

  5. Feladat megoldása • 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.

  6. Feladat szerkezete 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 Kizáró kritérium nincsen Diagnosztizáló, egyszerű kiválasztó feladat Célvezérelt következtetés (célzott kérdések feltevése) Feladat elemzés (Szabályok, következtetések) Felhasználó Javaslat Bemenet Kimenet

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

  8. A képmagnó tanácsadó rendszer 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’.

  9. Döntési tábla, célok 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 Indukcióval szabályokat generálunk Cél megadása cél = javaslat

  10. Szabályok továbbfejlesztése • Minden esetben adjon tanácsot • Felhasználóbarát párbeszéd biztosítása • Több javaslatos szituációk • Bizonytalanságkezelés (bizonyossági tényezők hozzárendelése a szabályokhoz) • Szabályok finomítása • Ismétlődő szabályok egyesítése • Ismeretanyag bővítése újabb szabályokkal

  11. Bizonytalanságkezelés • A feladat nem eléggé szakértői, mivel az azonos igényeket kielégítő készülékek közül bizonyosakat gyakrabban ajánl • Bizonyosságok bevezetése (cf) • A szakértő a tudásbázis elemeit 0-100 közötti értékekkel minősítiPl. Ha valamelyik termékre több panasz érkezett, azt kevesebb bizonyossággal ajánlja

  12. Tudásbázis finomítása absztrakcióval • 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ébecsökken a tudásbázis mérete, rövidebb lesz a kiértékelési idő • If állókép = igen and keresés = igenthen jó-minőség = igen

  13. Tudásbázis finomítása absztrakcióval • transzformáció szabályok – felhasználó számára kézenfekvőbb kérdésekif legfeljebb < 30000then ár = alacsony. question(legfeljebb) = ‘Legfeljebb mennyit szán a készülékre?’ legalvals(legfeljebb) = number

  14. Ismétlődő szabályok egyesítése azonos attribútum-struktúrájú (ismétlődő) szabályok ö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 = [ ].

  15. Új szabályok bevitele • 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

  16. 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, átrendezhetjük mi a szabályok sorrendjét • előrevetett szabállyal időben elvágjuk a meghiúsuló szabályok végrehajtását (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ö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)

  17. Adatvezérelt rendszerek építése • 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)

  18. Rendszerépítés 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

  19. Adatvezérelt rendszerek építésének 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

  20. Adatvezérelt gép • Az adatvezérelt gép ”üzemanyaga” az adat, amíg az nincs, el sem indul • Az induló adatokat külön meg kell adni • Futása akkor áll le, ha már nincsen tüzelőképes szabály (nem a legjobb megoldás-HALT eset)

  21. 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

  22. 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.

  23. 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. • 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.

  24. Hibrid rendszerek építése • 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.

  25. Hibrid rendszerek építésének 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

  26. 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 • A jelenlegi szakértői rendszerek igen érzékenyek az előbbi követelményekre, mivel a tudásbázis adott szituációban működtetendő tudásdarabkákat tartalmaz; védeni kell az illetéktelen behatolók elől.

  27. Szakértői rendszer hibaforrásai • Hiányzik a követelmény-specifikáció, ha 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.

  28. 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 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

  29. Tesztelés

  30. VerifikálásProgramozási hibák a szabálybázisban Redundáns szabályok: • Szemantikailag redundáns: • Ha tartalmilag nem különböznek, tehát feltételeik és következményeik ekvivalens átrendezéssel aznos formára hozhatók • Szab-a1 Szab-a2 if páratartalom = magas and if hőmérséklet = forró and hőmérséklet = forró páratartalom = magas then zivatar = lehetséges then zivatar = lehetséges Bizonyossági tényező esetén különösen veszélyes (bizonyosság megerősítése) • Szemantikai értelemben redundáns: • Ha két szabály nem hozható azonos formára, mégis azonos a jelentésük • Szab-a3: if páratartalom = magas and hőmérséklet = forró then zivatar = várható Terminológia rögzítésével elkerülhető • Szab-a4: if páratartalom = magas and hőmérséklet = forró then villámás-zápor=várható

  31. VerifikálásProgramozási hibák a szabálybázisban • Ellentmondó szabályok • Azonos feltétellel és egymásnak ellentmondó következményű szabályok ellentmondásossá teszik a tudásbázist • if páratartalom magas and hőmérséklet=forró then napsütés = várható. • if páratartalom magas and hőmérséklet=forró then not napsütés = várható

  32. VerifikálásProgramozási hibák a szabálybázisban • Magában foglaló szabályok • Egy szabály magában foglal egy másikat, ha feltétele bővebb, következménye pedig ugyanaz • Szab-c1 Szab-c2 if páratartalom = magas and if hőmérséklet = forró and páratartalom = magas hőmérséklet = forró and then zivatar = várható légnyomás = alacsony then zivatar = várható

  33. VerifikálásProgramozási hibák a szabálybázisban • Körkörös szabályok • A szabályok körbefutó következtetésre jutnak • if testvérek(X,Y) then szülők-azonosak(X,Y) • if szülők-azonosak(X,Y) then testvérek(X,Y)

  34. VerifikálásProgramozási hibák a szabálybázisban • Szükségtelen feltétel alkalmazása • Két szabály szintaktikailag redundáns lenne, de van egy egymásnak ellentmondó feltételük, mely lehet hogy el is hanyagolható if piros foltok = igenand lázas = igenthen betegség = kanyaró if piros foltok = igenand lázas = nemthen betegség = kanyaró

  35. VerifikálásProgramozási hibák a szabálybázisban • Zsákutca szabályok • Egy szabály akkor jelent zsákutcát, ha egyetlen akciója sem jelent megoldást, és nem is eredményezi másik szabály tüzelőképessé válását • if üzemeanyagszint-mutató = pirosthen tank = üres

  36. VerifikálásProgramozási hibák a szabálybázisban • Hiányzó vagy hiányos szabályok • Elérhetetlen szabályokfeleslegesen növeli a kód méretét, mivel semmilyen másik szabály nem érinti

  37. Validálás • A tudásalapú rendszerek utolsó minőségellenőrző lépése • A rendszer következtetései elogadhatóak-e és eleget tesz-e a felhasználói elvárásoknak

  38. Validálási módszerek • Informális • Szakértők bevonásával a rendszer javaslatainak megvitatása (főként tudásbázis-részletre alkalmas) • Tesztelős • Előkészített teszt-esetek futtatása szakértők bevonásával, az ő javaslataikat összevetik a rendszer javaslataival és kiemelik az egyezéseket (fekete doboz módszer)

  39. Validálási módszerek • Helyszíni teszt • A szakértő a rendszer használatának helyszínén teszteli a rendszert (valós esetek futtatásával).Nem várt hibák, mellékhatások merülhetnek fel. • Modulonként • Részrendszerek validálása • (rendszerszintű validálás is kell!) • Érzékenység elemzés • A bemenet kismértékű módosításakor milyen érzékenyen változik a kimenet.Főként a bizonytalanság kezelése esetén hatékony

  40. Validálási kritériumok • Összhasonlítás ismert, korábbi eredményekkel • Összehasonlítás szakértői problémegoldással • Elfogadja a szubjektív ítéletet • Összehasonlítás elméleti lehetőségekkel

  41. Validálás lehetséges hibái • Téves következtetés (a rendszer nem pontos, nem szabatos) • Olyan bemenet, amit a rendszer nem tud feldolgozni (a rendszer nem teljes)

  42. BOR TANÁCSADÓ RENDSZER PÉLDA

  43. Feladat jellemzése • Rendszer célja: • Az elfogyasztott ételhez milyen bort igyunk? • Felhasználói kör: • Éttermi felszolgáló és a vendég • Szakértői kör: • Egy francia, bor szokásokat ismerő pincér • Feladat típusa: • Diagnosztizáló, célvezérelt következtetés

  44. A tanácsadás menete Fő étel Mártás ízletesség Legjobban illő testesség Legjobb szín Legjobb édességi fok Ajánlott testesség Ajánlott szín Ajánlott édességi fok Bor Testesség, szín, édesség

  45. Induló szabályok

  46. Rendszer felépítése • Moduláris • Statikus kontextus fa – adott modulok milyen sorrendben következnek egymás utánstart szabály beállítása 1. MAIN 2. 3 /2 4. 5. QUESTIONS RULES WINES PRINT-RESULT 3 /1 CHOOSE-QUALITIES WINE-QUESTIONS

  47. Rendszer felépítése • Dinamikus kontextus fa • Programozott modularitás (modulok sorrendje) • (focus QUESTIONS CHOOSE-QUALITIES WINES PRINT-RESULTS) • (defrule CHOOSE-QUALITIES:: startit => (focus RULES))

  48. Bizonyossági tényezők • alapérték: 100.0 • ha egy feltétel kielégített, eltávolítja és abizonyossági értékeket módosítja a minimumra • Minden feltétel rendelkezik bizonyossági tényezővel, a következmény is, és ezen következmények kombinálásával megadható a szabály bizonyossága is • kiiratáskor a bizonyossági tényezőkre egy adott szabályt alkalmaz • ((p1 + p2) *100 – p1p2) / 100

  49. Kiiratás • Fejlett szakértő rendszer, mivel: • A felhasználó válaszai alapján többféle bort is javasol a rendszer • Minden egyes ajánláshoz tartozik egy bizonyosság

  50. CLIPS felület Do you generally prefer dry, medium, or sweet wines? dry Do you generally prefer red or white wines? white Do you generally prefer light, medium, or full bodied wines? full bodied Is the flavor of the meal delicate, average, or strong? delicate Does the meal have a sauce on it? no Is the main component of the meal meat, fish, or poultry? meat t SELECTED WINEStt WINE CERTAINTYt ----t Valpolicella 90% Chardonnay 64% Zinfandel 64% Cabernet-Sauvignon 40% Soave 40% Sauvignon-Blanc 40% Chablis 40% Geverztraminer 40%

More Related