slajdy v pdf
Transkript
Expertní systémy T4: reprezentace znalostí Znalosti a jejich reprezentace Znalost je lidský odhad uložený v mysli, získaný pomocí zkušeností a interakcí s okolním prostředím. Znalost je fyzický, mentální nebo elektronický záznam o vztazích, o kterých věříme, že existují mezi skutečnými či imaginárními entitami, silami, jevy, Znalost je vnitřní náhled, porozumění a praktické know-how, které všichni ovládáme – je to základní zdroj, který nám umožňuje chovat se inteligentně Znalost je informace o světě, která umožňuje expertovi udělat rozhodnutí. (Wikipedia) P. Berka, 2012 1/30 Expertní systémy T4: reprezentace znalostí Znalosti Explicitní: formalizované, artikulované a tedy sdílené. Implicitní: primárně skryté (v datech) ale potenciálně formalizovatelné a tedy i sdělitelné. Tacitní: nevědomé a nesdělitelné znalosti skryté v myslích jedinců – expertů. P. Berka, 2012 2/30 Expertní systémy T4: reprezentace znalostí Znalosti Deklarativní: zachycující co platí (statické pravdy) Procedurální: zachycující jak postupovat při provádění nějakých akcí (usuzování) Znalosti Individuální Kolektivní P. Berka, 2012 3/30 Expertní systémy T4: reprezentace znalostí Tři dimenze znalostí (převzato z Bureš, Čech, 2006) P. Berka, 2012 4/30 Expertní systémy T4: reprezentace znalostí Data, informace, znalosti … …z pohledu znalostního managementu (managementu znalostí) 1. 2. 3. 4. Data (+ relevance + účel =) Informace (+ aplikace =) Znalosti (+ intuice + zkušenosti =) Moudrost (Tobin, 1996) 1. Data (+ význam + struktura =) 2. Informace (+ uvažování + abstrakce + aplikace =) 3. Znalosti (+ výběr + zkušenosti + principy + ohraničení + učení =) 4. Expertíza (jednotlivý expert) (+ integrace + distribuce + navigace =) 5. Kompetence (způsobilost organizace) (Beckman, 1997) P. Berka, 2012 5/30 Expertní systémy T4: reprezentace znalostí Data, informace, znalosti … …z pohledu procesu rozhodování Jestliže se můžeme spolehnout při sběru materiálu na automatický proces nebo úředníka, hovoříme o datech. Správnost dat vzhledem k reálnému světu může být objektivně verifikována srovnáním s jeho opakovaným pozorováním. Jestliže hledáme experta, který by poskytl materiál, potom hovoříme o znalostech. Znalosti obsahují abstrakce a generalizace objemného materiálu. Obvykle jsou méně přesné a nemohou být objektivně verifikovány. (Widerhold, 1986) P. Berka, 2012 6/30 Expertní systémy T4: reprezentace znalostí Požadavky na reprezentované znalostí Transparentnost (znalosti musí být srozumitelné) Modulárnost (soubor znalostí je obvykle tvořen řadou jednoduchých elementů) Modifikovatelnost (musí existovat způsob jak znalosti upravovat a měnit) Užitečnost (znalosti musí být použitelné – např. pro podporu rozhodování) P. Berka, 2012 7/30 Expertní systémy T4: reprezentace znalostí Role reprezentace znalostí Náhražka reality umožňující odhadovat důsledky naších akcí pouze na základě usuzování a nikoliv konání v reálném světě Soubor ontologických závazků, tedy odpověď na otázku, v jakých pojmech mám usuzovat o světě Fragmentární teorie inteligentního usuzování Výpočetní prostředí ve kterém probíhá strojové usuzování Prostředí pro lidské vyjadřování, tedy jazyk, pomocí kterého mluvíme o světě (Davis, Shrobe, Szolovits, 1993) P. Berka, 2012 8/30 Expertní systémy T4: reprezentace znalostí Základní prostředky reprezentace znalostí (v expertních systémech) Predikátová logika Sémantické sítě Rámce Pravidla Případy P. Berka, 2012 9/30 Expertní systémy T4: reprezentace znalostí Predikátová logika Jazyk predikátové logiky - konstanty: např. karel, zikmund - proměnné: např. X, Y - predikátové symboly (relace): např. muž(zikmund) - funkční symboly (operace): např. věk(zikmund) - logické spojky: , , , , - kvantifikátory: , Termy - jednoduché (konstanty nebo proměnné) - složené (vzniklé aplikací funkce na termy, tedy např. věk(X)). Literál predikát (nebo jeho negace) aplikovaný na množinu termů např. muž(zikmund), nebo větší_než(věk(zikmund),23))) - pozitivní literál neobsahuje negaci: např. muž(zikmund) - negativní literál obsahuje negaci: např. muž(eliška) P. Berka, 2012 10/30 Expertní systémy T4: reprezentace znalostí Formule Atomická formule má tvar P(t1,t2,..,tn), kde P je predikátový symbol a ti jsou termy (jde tedy o literál) Jsou-li a formule, pak jsou formulemi i , , , , , x (x), x (x) Příklad správně utvořené formule x opice(x) savec(x) Jiným příkladem správně utvořené formule je definice spojitosti funkce f v bodě a: ( >0)( >0) ( x) |x - a| < |f(x) – f(a)| < Klauzule Formule tvořená disjunkcí literálů L1 L2 … Ln Hornova klauzule Klauzule která obsahuje nejvýše jeden pozitivní literál, tedy např. H v L1 … Ln tuto klauzuli můžeme ekvivalentně zapsat jako implikaci L1 … Ln H. P. Berka, 2012 11/30 Expertní systémy T4: reprezentace znalostí Prolog Deklarativní způsob programování - specifikuje se co se má spočítat, aniž by se podrobně specifikovalo jak se to má spočítat. Termy: jednoduché, tzn. konstanty (např. karel) a proměnné (např. X) složené, tvořené funktorem a n-ticí termů (např: den(sobota), otec(karel_IV,zikmund)). Klauzule: atomické formule, které odpovídají složeným termům (lze je chápat jako fakta v databázi), A1 podmíněné příkazy ve tvaru implikace A1 A2 … An B B :- A1,A2,...,An cílové klauzule, které mají tvar dotazu ?- C1,C2,...,Cn. P. Berka, 2012 12/30 Expertní systémy T4: reprezentace znalostí Prolog a reprezentace znalostí: Pravidla jako Prologovské klauzule savec(X) :- dava_mleko(X). savec(X) :- ma_srst(X). dravec(X) :- savec(X),zere_maso(X). kocka(X) :- dravec(X),mnouka(X). pes(X) :- dravec(X),steka(X). pes(X) :- dravec(X),chodi_na_voditku(X). Odpovědi na otázky jako Prologovská fakta: ma_srst(bobek). ma_srst(sultan). ma_srst(tyrl). zere_maso(mici). zere_maso(sultan). zere_maso(tyrl). mnouka(mici). dava_mleko(stracena). steka(sultan). chodi_na_voditku(tyrl). P. Berka, 2012 13/30 Expertní systémy T4: reprezentace znalostí Sémantické sítě navrženy R. Quillianem v druhé pol. 60. let v rámci prací na porozumění přirozenému jazyku jako model asociativní paměti člověka. Sémantická síť umožňuje popisovat realitu jako objekty, které jsou navzájem v nějakých vztazích (relacích). Sémantická síť má přirozenou grafovou reprezentaci; objekty jsou uzly a relace mezi nimi jsou hrany v grafu. P. Berka, 2012 14/30 Expertní systémy T4: reprezentace znalostí (Unified Medical Language System - UMLS) P. Berka, 2012 15/30 Expertní systémy T4: reprezentace znalostí Predikátová logika vs. sémantické sítě x; student(x) person(x) x; professor(x) person(x) x; person(x) y; numer(y) age(x,y) x; student(x) y; professor(y) supervisor(x,y) student(marie) profesor(harry) numer(23) P. Berka, 2012 16/30 Expertní systémy T4: reprezentace znalostí Rámce navrženy v polovině 70. let Marvinem Minskym z MIT jako prostředek pro reprezentaci stereotypních situací. Rámec (frame): Datová struktura (objekt) obsahující data (položky, slots), meta-data (meta-položky, meta-slots) a procedury (metody). Základní rysy: postupné vyplňování stránek předdefinované hodnoty (defaults) standardní položky (ako, isa, part_of) hierarchie (generalizace/specializace), dědičnost, zapouzdřenost Rámce se staly inspirací pro objektově-orientované programování P. Berka, 2012 17/30 Expertní systémy T4: reprezentace znalostí (defclass auto (vozidlo) (pohon :initform 'motor)) (defclass osobní_auto (auto) (účel :initform 'přeprava_osob)) syntaxe Common Lisp Object System (CLOS) P. Berka, 2012 18/30 Expertní systémy T4: reprezentace znalostí Příklad metapoložek: způsob, jakým se systém ptá uživatele na hodnotu inferenční priorita priorita dědění typ dědičnosti (lze dědit vlastnosti, hodnoty i metapoložky, pořadí zdrojů (Order of Sources): o zpětné řetězení, o dědění dolů, o dědění vzhůru. o dotaz uživateli, o inicializace na počátku konzultace, o zjišťování při běhu (default), o načtení z databáze, o zavolání externí procedury. akce po změně hodnoty (If Changed) (systém Nexpert Object) P. Berka, 2012 19/30 Expertní systémy T4: reprezentace znalostí Pravidla IF-THEN struktury dobře známé z programovacích jazyků, použití pravidel vychází z implikací ve výrokové logice A 0 0 1 1 B 0 1 0 1 A B 1 1 0 1 Sémantika: procedurální jestliže situace pak akce ( typické pro generativní systémy) deklarativní jestliže předpoklad pak závěr ( typické pro diagnostické systémy) P. Berka, 2012 20/30 Expertní systémy T4: reprezentace znalostí Procedurální pravidlo IF The current context is assigning devices to Unibus models and There is an unassigned dual-port disk drive and The type of controller it requires is known and There are two such controllers, neither of which has any device assigned to it, and The number of devices that these controllers can support is known THEN Assign the disk drive to each of the controllers, and Note that the two controllers have been associated and that each supports one drive (systém R1/XCON) Deklarativní pravidlo IF The site of the culture is blood, and The identity of the organism is not known with certainty, and The stain of the organism is gramneg, and The morfology of the organism is rod, and The patient has been seriously burned THEN There is a weakly suggestive evidence (.4) that the identity of the organism is pseudomonas (systém MYCIN) P. Berka, 2012 21/30 Expertní systémy T4: reprezentace znalostí IF rozumný_záměr AND seriózní_klient THEN půjčit IF NOT podvodník AND záruky_splacení THEN seriózní_klient IF movitosti THEN záruky_splacení IF nemovitosti THEN záruky_splacení P. Berka, 2012 22/30 Expertní systémy T4: reprezentace znalostí Atributy a výroky Situace, předpoklad a závěr pravidel jsou kombinace ( , , ) tvrzení o stavu světa: Tvrzení: výrok (auto má červenou barvu) atribut, hodnota (barva_auta = červená) objekt, atribut, hodnota (auto: barva = červená) (u každého tvrzení lze zjistit jeho pravdivost) Typy atributů: kategoriální - tvrzení tvořena hodnotami atributů o binární (např. žena) o nominální (např. barva vlasů) o ordinální (např. dosažené vzdělání) numerické (např. věk) - tvrzení tvořena intervaly hodnot P. Berka, 2012 23/30 Expertní systémy T4: reprezentace znalostí Inferenční síť AND-OR graf dotazy - tvrzení, která se nevyskytují v závěrech pravidel cíle - tvrzení, která se nevyskytují v předpokladech pravidel mezilehlé uzly - ostatní tvrzení P. Berka, 2012 24/30 Expertní systémy T4: reprezentace znalostí Tvrzení v systému NEST Tvrzení (výroky) tvořeny dvojicí atribut, hodnota Atributy Výroky binární nominální numerické True, False hodnoty atributu fuzzy intervaly Fuzzy intervaly nominální atributy jednoduché vs. množinové atributy případu vs. atributy prostředí P. Berka, 2012 25/30 Expertní systémy T4: reprezentace znalostí Pravidla v systému NEST Pravidla s prioritami IF předpoklad THEN závěr A akce kde předpoklad je disjunktivní forma (disjunkce konjunkcí) literálů, závěr je seznam literálů a akce je seznam akcí (externích programů). Pravidla: kompozicionální - každý literál v závěru doplněn vahou IF noha(malá) AND dobrá_rodina THEN princ[3,000] apriorní - kompozicionální pravidla bez předpokladu Apriori THEN princ[-1,000] logická - nekompozicionální pravidla bez vah; pouze tato pravidla mohou dát absolutní jistotu IF NOT(dobrá_rodina) THEN NOT(princ) P. Berka, 2012 26/30 Expertní systémy T4: reprezentace znalostí Rámce a pravidla častá kombinace v komerčních systémech: rámce (objekty) pro vyjádření statických znalostí pravidla pro odvozování Příkladem (generativního) systému může být produkční systém (jazyk) OPS5. Příklad pravidla: (P jak-se-do-lesa-vola ((message ^type acustic ^source-id <x> ^dest-id <y> ^cont <cont>) <old>) (information-node ^id <y> ^kind forest) --> ((MAKE message ^type acustic ^source-id <y> ^dest-id <x> ^cont <cont>) <new>) (REMOVE message <old>) ) P. Berka, 2012 27/30 Expertní systémy T4: reprezentace znalostí Příkladem (diagnostického) systému může být Nexpert Object. Třídy (rámce): (@CLASS= adept (@PROPERTIES= parents_status size_of_feet status)) Instance objektu: (@OBJECT= current_adept (@CLASSES= adept) (@PROPERTIES= evaluation parents_status size_of_feet status)) Diagnostická pravidla s akcemi: (@RULE= r1 (@LHS= (Is (current_adept.size_of_feet) ("small")) (Yes (good_parents)) ) (@HYPO= adept_evaluation) (@RHS= (Let (current_adept.status) ("Prince")) (Show ("princ_ye.txt") )) P. Berka, 2012 28/30 Expertní systémy T4: reprezentace znalostí Pomocné prostředky reprezentace znalostí Kontexty popisují situace, kdy to, zda se bude vyhodnocovat nějaké tvrzení závisí na tom, že jiné tvrzení již bylo vyhodnoceno. v systému NEST konjunkce literálů, která určuje že aplikovatelné nějaké pravidlo nebo integritní omezení Integritní omezení vyjadřují pravdivé vazby mezi tvrzeními. Nepodílí se na odvozování, používají se pro kontrolu logické konzistence průběhu konzultace. v systému NEST ve tvaru Ant Suc (stupeň) Akce jsou vnější procedury, jejichž aktivace je vázána na průběh odvozování. v systému NEST mohou být aktivovány po vyhodnocení tvrzení nebo po aplikování pravidla Zdroje definují způsob získání hodnoty atributu nebo váhy tvrzení. v systému NEST může být zdrojem odpovědi na dotaz uživatel, soubor, vnitřní funkce nebo vnější procedura P. Berka, 2012 29/30 Expertní systémy T4: reprezentace znalostí Případy (Case) Případy mají podobu vyřešených problémů (situací) z dané aplikační oblasti P. Berka, 2012 30/30
Podobné dokumenty
Metodický list
Znalost je lidský odhad uložený v mysli, získaný pomocí zkušeností a interakcí s okolním prostředím.
Znalost je fyzický, mentální nebo elektronický záznam o vztazích, o kterých věříme, že existují ...
volitelné parametry jsou nastaveny na nil, pokud nejsou při
- při vyhodnocování makra se do těla předávají nevyhodnocené argumenty
- provede se vyhodnocení výrazů v rámci prostředí určeného defincí makra
=> mluvíme o expanzi makra, výsledkem expanze je hodn...
Úvod do expertních systémů - Ústav automatizace a informatiky
jeden způsob reprezentace znalostí,
Expertní systém role expertního systému • expert • kolega
Sybase s metodami umělé inteligence. Pro vyhodnocování “podezřelosti” transakce se používá expertní systém Nexpert Object,
který skládá dílčí příspěvky pravidel k pozitivní resp. negativní
evidenci...
Kapitola 4 Reprezentace znalost
There are two such controllers, neither of which has any devices
assigned to it, and
The number of devices that these controllers can support is known
THEN
Assign the disk drive to each of the cont...
Databázové systémy - Úvod do databázových systémů
Statice (1989, první komerčně použitelný systém), Elephant (open-source řešení)
vlastnosti:
+ odpadá mapování databázových elementů na objekty v programovacím jazyku
+ práce s objekty je principiál...
Porovnání klasických konstrukcí – typy
– pouze proměnné z haldy (access type)
– dereference (pointer . jméno_položky)
– dangling významně potlačeno (automatické uvolňování místa na haldě,
jakmile se výpočet dostane mimo rozsah platnosti...
Umělá inteligence I Roman Barták, KTIML
Pro proměnnou a instanciovaný term g aplikujeme substituci g za x.
Aplikujeme opakovaně pro různé instanciace g.
Příklad: ∀x King(x) ∧ Greedy(x) ⇒ Evil(x) vede na:
King(John) ∧ Greedy(John) ⇒ Evi...
public String sounds()
Rozhraní částečně nahrazuje násobnou dědičnost
Klíčovým slovem interface lze oddělit rozhraní třídy od třídy, která je
implementuje
Je „obdobou“ abstraktní třídy a konstrukce interface Object Pascalu