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) Data, informace, znalosti z pohledu znalostního managementu (managementu ) 1. Data (+ relevance + účel =) 2. Informace (+ aplikace =) 3. Znalosti (+ intuice + zkušenosti =) 4. 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, 2007 1/27 P. Berka, 2007 2/27 Data, informace, znalosti z pohledu procesu rozhodování Znalosti Explicitní: formalizované, artikulované a tedy sdílené. Implicitní: primárně skryté (v datech) ale potenciálně formalizovatelné a tedy i sdělitelné. 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, 2007 3/27 Tacitní: nevědomé a nesdělitelné znalosti skryté v myslích jedinců expertů. P. Berka, 2007 4/27
Znalosti Požadavky na reprezentované Deklarativní: zachycující co platí (statické pravdy) Transparentnost Procedurální: zachycující jak postupovat při provádění nějakých akcí (usuzování) Modulárnost Modifikovatelnost Užitečnost P. Berka, 2007 5/27 P. Berka, 2007 6/27 Role reprezentace 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ě Základní prostředky reprezentace (v expertních systémech) Predikátová logika Sémantické sítě Rámce Pravidla Případy (Davis, Shrobe, Szolovits, 1993) P. Berka, 2007 7/27 P. Berka, 2007 8/27
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) Formule Atomická formule má tvar P(t 1,t 2,..,t n ), kde P je predikátový symbol a t i 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ů L 1 L 2 L n Hornova klauzule Klauzule která obsahuje nejvýše jeden pozitivní literál, tedy např. H v L 1 L n tuto klauzuli můžeme ekvivalentně zapsat jako implikaci L 1 L n H. P. Berka, 2007 9/27 P. Berka, 2007 10/27 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. (Unified Medical Language System - UMLS) P. Berka, 2007 11/27 P. Berka, 2007 12/27
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) 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, 2007 13/27 P. Berka, 2007 14/27 Příklad metapoložek: (defclass auto (vozidlo) (pohon :initform 'motor)) (defclass osobní_auto (auto) (účel :initform 'přeprava_osob)) 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) syntaxe Common Lisp Object System (CLOS) P. Berka, 2007 15/27 P. Berka, 2007 16/27
Pravidla IF-THEN struktury dobře známé z programovacích jazyků, použití pravidel vychází z implikací ve výrokové logice A B A B 0 0 1 0 1 1 1 0 0 1 1 1 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) 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) 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, 2007 17/27 P. Berka, 2007 18/27 Atributy a výroky Situace, předpoklad a závěr pravidel jsou kombinace (,, ) tvrzení o stavu světa: 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í 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, 2007 19/27 P. Berka, 2007 20/27
Inferenční síť Tvrzení v systému NEST AND-OR graf Tvrzení (výroky) tvořeny dvojicí atribut, hodnota Atributy binární nominální numerické Výroky True, False hodnoty atributu fuzzy intervaly Fuzzy intervaly dotazy - tvrzení, která se nevyskytují v závěrech pravidel cíle - tvrzení, která se nevyskytují v předpokladech pravidel mezilehlé uzly - ostatní tvrzení nominální atributy jednoduché vs. množinové atributy případu vs. atributy prostředí P. Berka, 2007 21/27 P. Berka, 2007 22/27 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) Rámce a pravidla častá kombinace v komerčních systémech: rámce (objekty) pro vyjádření statických 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, 2007 23/27 P. Berka, 2007 24/27
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, 2007 25/27 Pomocné prostředky reprezentace 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, 2007 26/27 Případy (Case) Případy mají podobu vyřešených problémů (situací) z dané aplikační oblasti P. Berka, 2007 27/27