Reprezentace a vyvozování znalostí Aleš Horák E-mail: hales@fi.muni.cz http://nlp.fi.muni.cz/uui/ Obsah: • Reprezentace a vyvozování znalostí o Extralogické informace • Pravidlové systémy 9 Nejistota a pravděpodobnost Úvod do umělé inteligence 10/12 1/34 Reprezentace a vyvozování znalostí Reprezentace a vyvozování znalostí otázka: Jak zapíšeme znalosti o problému/doméně? Když je zapíšeme, můžeme z nich mechanicky odvodit nová fakta? • reprezentace znalostí (knowledge representation) - hledá způsob vyjádření znalostí počítačově zpracovatelnou formou (za účelem odvozování) • vyvozování znalostí (reasoning) - zpracovává znalosti uložené v bázi znalostí (knowledge base, KB) a provádí odvození (inference) nových závěrů: • odpovědi na dotazy • zjištění faktů, které vyplývají z faktů a pravidel v KB • odvodit akci, která vyplývá z dodaných znalostí, .. . Úvod do umělé inteligence 10/12 2/34 Reprezentace a vyvozování znalostí Reprezentace znalostí Reprezentace znalostí proč je potřeba speciální reprezentace znalostí? Úvod do umělé inteligence 10/12 3/34 Reprezentace a vyvozování znalostí Reprezentace znalostí Reprezentace znalostí proč je potřeba speciální reprezentace znalostí? vnímání lidí x vnímání počítačů • člověk • když dostane novou věc (třeba pomeranč) - prozkoumá a zapamatuje si ho (a třeba sní) • během tohoto procesu člověk zjistí a uloží si všechny základní vlastnosti předmětu • později, když se zmíní daná věc, vyhledají se a připomenou uložené informace • počítač o musí se spolehnout na informace od lidí o jednodušší informace - přímé programování o složité nebo rozsáhlé informace - zadané v symbolickém jazyce Úvod do umělé inteligence 10/12 3/34 Reprezentace a vyvozování znalostí Reprezentace znalostí Volba reprezentace znalostí která reprezentace znalostí je nejlepší? Úvod do umělé inteligence 10/12 4/34 Reprezentace a vyvozování znalostí Reprezentace znalostí Volba reprezentace znalostí která reprezentace znalostí je nejlepší? Pro řešení skutečně obtížných problémů musíme používat několik různých reprezentací Každý konkrétní typ datových struktur má totiž své klady a zápory a žádný se sám o sobě nezdá adekvátní pro všechny funkce zahrnuté v tom, čemu říkáme "selský rozum" (common sense). - Marvin Minsky spoluzakladatel MIT Ul lab SliDo Úvod do umělé inteligence 10/12 4/34 Reprezentace a vyvozování znalostí Reprezentace znalostí Limity reprezentace znalostí Všechny modely se mýlí, některé jsou ale užitečné. (All models are wrong, but some are useful) - George Box, významný britský statistik Úvod do umělé inteligence 10/12 5/34 Reprezentace a vyvozování znalostí Reprezentace znalostí Limity reprezentace znalostí Všechny modely se mýlí, některé jsou ale užitečné. (All models are wrong, but some are useful) - George Box, významný britský statistik Kompletní reprezentace o kategorie znalostí má řešit: 9 míry a hodnoty • složené objekty o čas, prostor a změny 9 události a procesy a fyzické objekty • látky/substance o mentální objekty a postoje • ... Často je nutné se kvůli efektivitě modelu vzdát přesnosti nebo úplnosti Úvod do umělé inteligence 10/12 5/34 Reprezentace a vyvozování znalostí Reprezentace znalostí Reifikace - abstrakce jako objekt reifikace (zvěčnění) - zjednodušení (logické) analýzy abstrakci/objekt vyššího řádu modelujeme jako objekt vlastnost objektu « predikát pomeranč "držím pomeranč" « držet( Ja,x) A pomeranč(x) "mám rád chut pomeranče" « mít_rád( Já, x) A x = chuť(?pomeranč?) ... v PL1 nelze Úvod do umělé inteligence 10/12 6/34 Reprezentace a vyvozován ' znalostí Reprezentace znalostí Reifikace - abstrakce ja ko oh )jekt reifikace (zvěčnění) - zjednodušení (logické) analýzy abstrakci/objekt vyššího řádu modelujeme jako objekt vlastnost objektu « predikát pomeranč "držím pomeranč držet( Ja, x) A pomeranč(x) "mám rád chut pomeranče" & mít_rád( Ja, x) A x = chuť(?pomeranč?) ... v PL1 nelze s reifikací predikátu pomeranč (konstanta): "mám rád chut pomeranče" « mít_rád( Ja, x) A x = chuť (pomeranč) "držím pomeranč" « držet( Ja, x) A is_instance(x, pomeranč) Úvod do umělé inteligence 10/12 6/34 Reprezentace a vyvozování znalostí Reprezentace znalostí Reifikace - abstrakce jako objekt reifikace (zvěčnění) - zjednodušení (logické) analýzy abstrakci/objekt vyššího řádu modelujeme jako objekt vlastnost objektu « predikát pomeranč "držím pomeranč £^ držet(Ja, x) A pomeranč(x) "mám rád chut pomeranče" & mít_rád( Ja, x) A x = chuť(?pomeranč?) ... v PL1 nelze s reifikací predikátu pomeranč (konstanta): "mám rád chut pomeranče" « mít_rád( Ja, x) A x = chuť {pomeranč) "držím pomeranč" « držet( Ja,x) A is_instance(x, pomeranč) Z čistě logického hlediska vznikají neexistující objekty (spory při tvrzení o neexistenci) ale při korektním zpracování - stačí jednodušší formalismus Úvod do umělé inteligence 10/12 6/34 Extralogické informace Obsah • Reprezentace znalostí Q Extralogické informace • Třídy objektů • Ontológie • Sémantické sítě • Rámce ^^P^^ l—v "II f f • Pravidlová báze znalostí • Expertní systémy Q Nejistota a pravděpodobnost • Nejistota • Pravděpodobnost • Vyvozování z nejistých znalostí Úvod do umělé inteligence 10/12 7/34 Extralogické informace Extralogické informace - třídy, sémantické sítě, rámce co jsme dosud ignorovali: • objekty reálného světa mají mezi sebou vztahy • třídy/kategorie, podtřídy x nadtřídy • hierarchie vztahů části/celku • dědění vlastností v hierarchiích o stav světa se může měnit v čase • explicitní reprezentace času • nemonotónní uvažování (pravdivost se může měnit v čase) • ne každá informace je "černobílá" • nejistota • statistika, fuzzy logika Úvod do umělé inteligence 10/12 8/34 Třídy objektů Extralogické informace Třídy objektů • "Chci si koupit fotbalový míč." • Chci si koupit FM27341 - špatně • Chci si koupit objekt, který je prvkem třídy fotbalových míčů - správně 9 objekty jsou organizovány do hierarchie tříd • FM27341 G fotbalové_míče • fotbalové.míče C míče • fakta (objekty) x pravidla (třídy) • Všechny míče jsou kulaté. • Všechny fotbalové míče mají X cm v průměru. • FM27341 je červenomodrobílý. • FM27341 je fotbalový míč. • (Proto: FM27341 je kulatý a má X cm v průměru.) Úvod do umělé inteligence 10/12 9/34 • ontológie ve filozofii - nauka o existenci a typech existencí • ontológie v informatice - formální popis znalostí, pojmy a vztahy mezi pojmy, hierarchie o ontológie obecné (upper level) x doménové • různé dostupné obecné, žádná standardem (zatím): (Open)Cyc, SUMO/MILO, Dublin Core, DOLCE, ... http://archivo.dbpedia.org, http://www.ontologyportal.org Úvod do umělé inteligence 10/12 10 / 34 • ontológie ve filozofii - nauka o existenci a typech existencí • ontológie v informatice - formální popis znalostí, pojmy a vztahy mezi pojmy, hierarchie o ontológie obecné (upper level) x doménové • různé dostupné obecné, žádná standardem (zatím): (Open)Cyc, SUMO/MILO, Dublin Core, DOLCE, ... http://archivo.dbpedia.org, http://www.ontologyportal.org (=> (and (instance ?KILL Killing) (patient ?KILL ?0BJ)) (exists (?DEATH) (and (instance ?DEATH Death) (experiencer ?DEATH ?0BJ) (causes ?KILL ?DEATH)))) Pokud nějaký proces (7KILL) je instancí zabíjení (Killing) a nějaký agent (?OBJ) je předmětem toho procesu => pak existuje jiný proces (7DEATH) takový, že tento jiný proces je instancí smrti (Death) a agent ?OBJ se účastní tohoto jiného procesu 7DEATH a původní proces 7KILL je příčinou tohoto jiného procesu 7DEATH feliDo) Úvod do umělé inteligence 10/12 10 / 34 Sé mantické sítě Extralogické informace Sémantické sítě sémantické sítě - reprezentace faktových znalostí (pojmy + vztahy) • vznikly kolem roku 1960 pro reprezentaci významu anglických slov • znalosti jsou uloženy ve formě grafu Q pojmy (objekty, třídy) _> vztahy o o o T O O nejdůležitější vztahy - taxonomie: • podtřída (subclass) - vztah mezi třídami • instance - vztah mezi konkrétním objektem a jeho rodičovskou třídou jiné vztahy - část (has-part), barva, ... Úvod do umělé inteligence 10/12 11 / 34 Extralogické informace Sémantické sítě Sémantické sítě - příklad Úvod do umělé inteligence 10/12 12 / 34 Extralogické informace Sémantické sítě Dědičnost v sémantickýd i sítích pojem sémantické sítě předchází OOP • dědičnost: • jestliže určitá vlastnost platí pro třídu—platí i pro všechny její podtřídy • jestliže určitá vlastnost platí pro třídu—platí i pro všechny prvky této třídy • určení hodnoty vlastnosti - rekurzivní algoritmus • potřeba specifikovat i výjimky - mechanizmus vzorů a výjimek (defaults and exceptions) • vzor - hodnota vlastnosti u třídy nebo podtřídy platí ta, co je blíž objektu • výjimka - u konkrétního objektu, odlišná od vzoru Úvod do umělé inteligence 10/12 13 / 34 Extralogické informace Sémantické sítě Dědičnost vztahů část/cele k • "Krávy mají 4 nohy." • každá noha je částí krávy • "Na polije (konkrétní) kráva." • všechny části krávy jsou taky na poli • "Ta kráva (na poli) je hnědá (celá)." • všechny části té krávy jsou hnědé • "Ta kráva je šťastná." • všechny části té krávy jsou šťastné Úvod do umělé inteligence 10/12 14 / 34 Extralogické informace Sémantické sítě Dědičnost vztahů část/celek • "Krávy mají 4 nohy." • každá noha je částí krávy • "Na polije (konkrétní) kráva." • všechny části krávy jsou taky na poli • "Ta kráva (na poli) je hnědá (celá)." • všechny části té krávy jsou hnědé • "Ta kráva je šťastná." • vseč^E^a^^ - neplatí lekce: některé vlastnosti jsou děděny částmi, některé nejsou explicitně se to vyjadřuje pomocí pravidel jako part-of(x, y) A location(y, z) =4> location(x, z) Úvod do umělé inteligence 10/12 14 / 34 Extralogické informace Sémantické sítě Vzory a výjimky - příklad Všichni ptáci maji křidla. "Všichni ptáci umí létat." "Ptáci se zlomenými křídly jsou ptáci, ale neumí létat." "Tučňáci jsou ptáci, ale neumí létat." "Kouzelní tučňáci jsou tučňáci, kteří umí létat." kdo umí létat: - "Penelope je pták." - "Penelope je tučňák." - "Penelope je kouzelný tučňák." Úvod do umělé inteligence 10/12 15 / 34 Extralogické informace Sémantické sítě Vzory a výjimky - příklad • "Všichni ptáci mají křídla." • "Všichni ptáci umí létat." • "Ptáci se zlomenými křídly jsou ptáci, ale neumí létat." • "Tučňáci jsou ptáci, ale neumí létat." • "Kouzelní tučňáci jsou tučňáci, kteří umí létat." • kdo umí létat: - "Penelope je pták." =4> "Penelope umí létat." - "Penelope je tučňák." - "Penelope je kouzelný tučňák." Úvod do umělé inteligence 10/12 15 / 34 Extralogické informace Sémantické sítě Vzory a výjimky - příklad l(\ /v I ■ . ' *' \ II 11 Všichni ptáci maji křidla. "Všichni ptáci umí létat." "Ptáci se zlomenými křídly jsou ptáci, ale neumí létat." "Tučňáci jsou ptáci, ale neumí létat." "Kouzelní tučňáci jsou tučňáci, kteří umí létat." kdo umí létat: - "Penelope je pták." =4> "Penelope umí létat." - "Penelope je tučňák." =4> "Penelope neumí létat." - "Penelope je kouzelný tučňák." Úvod do umělé inteligence 10/12 15 / 34 Extralogické informace Sémantické sítě Vzory a výjimky - příklad • "Všichni ptáci mají křídla." • "Všichni ptáci umí létat." • "Ptáci se zlomenými křídly jsou ptáci, ale neumí létat." • "Tučňáci jsou ptáci, ale neumí létat." • "Kouzelní tučňáci jsou tučňáci, kteří umí létat." • kdo umí létat: - "Penelope je pták." =4> "Penelope umí létat." - "Penelope je tučňák." =4> "Penelope neumí létat." - "Penelope je kouzelný tučňák." =4> "Penelope umí létat." • všimněte si, že víra v hodnotu vlastnosti objektu se může měnit s příchodem nových informací o klasifikaci objektu Úvod do umělé inteligence 10/12 15 / 34 Extralogické informace Sémantické sítě Aplikace sémantických sítí (Princeton) WordNet - http://wordnet.princeton.edu/ • sémantická síť 150.000 (anglických) pojmů, zachycuje: • synonyma, antonyma (významově stejná/opačná) • hyperonyma, hyponyma (podtřídy) • odvozenost a další jazykové vztahy • tvoří se národní wordnety (navázané na anglický WN) český wordnet - cca 30.000 pojmů 9 nástroj na editaci národních wordnetů - DEBVisDic/VisDic, vyvinutý Fl MU - http://deb.fi.muni.cz/ • VisualBrowser - http://nlp.f i.muni.cz/proj ekty/visualbrowser/ nástroj na vizualizaci (sémantických) sítí, vznikl jako DP na Fl MU Úvod do umělé inteligence 10/12 16 / 34 Extralogické informace Sémantické sítě i VisualBiowser V 1.0 File View Help Zoom |_iL LíJ Play Search http:ťJhlp.fi.muni.cz/eurowiordnet/en# -r I § Clue I ď □ |x| adjectives * nouns * verbs holonym part • hypernym literal involved agent execute start playing sound off strike up Ontology: http:/ťnlp.fi.muni.cz/euroworunet# Perspective: Thesaurus Úvod do umělé inteligence 10/12 17 / 34 Extralogické informace Sémantické sítě _1 -r1 ^ i ^ DEBVisDic User Settings 1 Windows Help English Wordnet dog: n] andiron: 1, fired og:l, dog:7, dog nj frump: 1, dog:2 n] cad: 1, bounder: 1, blackguard: 1, dog:4, houn n] dog: 1, domestic dog: 1, Cants familiaris: 1 n] frank:2 _,j-r1"^!" Dictionary - SSJČ dictionary - SSÖ Morph, analyzer ajka Google Greek Wordnet Search Preview T POS: n Synonyrr Definitio wolf) tha many bn Usage: t Domain: SUMO/\ --» [hyp Number of ť Czech Wordnet pes navotfacLißavOLiEvo ííeíídvôí: : 0, iiEp lü5 lkü [n] TlEp lüö lkü : 1 [nJ TiEplüö lkü:0 Search [a] zakopaný pes: 1 [n] pol icejnf pes: 1 [n] hlidac:4, hlfdacf pes: 1 [n] pes: 1 [nj slepecký pes: 1, vodící pes: 1 review Tree RevTree Preview Tree RevTree Edit XML pespes ENG20-020005 <ĽLR type=" ho 1 o_member" >ENG20-020i ENG2G-G75 xcapekl 200 3/06/2 53 ENG2G-G2GG2 ENG20-0?.027 0 oviôiiiiLt: 1 ^Ôl|juxo otvt lke !lie| fr lloučoooc: 1 öxe LpÜTTülrjT ^ÖllLlLOUpi| tie p umber of entries: 3 Number of entries: 12 LH Russian Wordnet Search [nj JKypHan: 1 Preview Tree RevTree Edit XML POS: n ID: RUS-1234560515 Synonyms: KHnra:1 Show in Czech Wordnet Definit cSpow Usage 6n6nn< Usage TeaTp? --» [has_hypernym] ne^atHoe H3flaHne:1 Take key from Czech Wordnet AutoLookUp in ► Copy entry to Czech Wordnet Import IDs from file Number of entries: 1 Úvod do umělé inteligence 10/12 18 / 34 íce Rámce (frames)\ • varianta sémantických sítí představená Marvinem Minskim • velice populární pro reprezentaci znalostí v expertních systémech • všechny informace relevantní pro daný pojem se ukládají do univerzálních struktur - rámců • stejně jako sémantické sítě, rámce podporují dědičnost o 00 programovací jazyky vycházejí z teorie rámců Úvod do umělé inteligence 10/12 19 / 34 íce rámec obsahuje objekty, sloty a hodnoty slotů příklady rámců: savec: podtřída: část: *má^kožich: slon Nellie: podtřída: * barva: * velikost: instance: mít-rád: zvi re hlava ano savec šedá velký slon jablka '*' označuje vzorové hodnoty, které mohou měnit hodnoty u podtříd a instancí Úvod do umělé inteligence 10/12 20 / 34 Extralogické informace Rámce Sémantické sítě x rámce sémantické sítě rámce uzly objekty spoje sloty uzel na druhém konci spoje hodnota slotu deskripční logika (description logic) - logický systém, který manipuluje primo s rámci Úvod do umělé inteligence 10/12 21 / 34 Extralogické informace Rámce Rámce - využití v praxi příklad využití rámců - ontológie Friend of A Friend (FOAF) • popisuje osoby, jejich činnosti a vztahy k jiným osobám a objektům • decentralizovaný přístup, http://xmlns.com/foaf/spec/ • využívaný komunitami (blogovací platformy, MediaWiki, ...) o základ standardu W3C WebID 1.0 (2014 draft) Úvod do umělé inteligence 10/12 22 / 34 Extralogické informace Rámce Rámce - využití v praxi příklad využití rámců - ontológie Friend of A Friend (FOAF) • popisuje osoby, jejich činnosti a vztahy k jiným osobám a objektům • decentralizovaný přístup, http://xmlns.com/foaf/spec/ • využívaný komunitami (blogovací platformy, MediaWiki, ...) • základ standardu W3C WebID 1.0 (2014 draft) <ŕoaŕ:name>Vincent van Gogh <ŕoaŕ: img rdf: resource="/i m ages / va ngogh . j pg " /> < f o a f: made rdf: r e so u rce="https://www . vangoghgallery. com/painting/sunflower index. html" /> Úvod do umělé inteligence 10/12 22 / 34 \j Keprezentace a vyvozovaní znalosti • Reprezentace znalostí • Třídy objektů • Ontológie • Sémantické sítě • Rámce Q Pravidlové systémy • Pravidlová báze znalostí « Expertní systémy ^J^k IV I i • Nejistota • Pravděpodobnost • Vyvozování z nejistých znalostí Úvod do umělé inteligence 10/12 23 / 34 Pravidlové systémy Pravidlové systémy snaha zachytit produkčními pravidly znalosti, které má expert obecná forma pravidel IF podmínka THEN akce • podmínky - booleovské výrazy, dotazy na hodnoty proměnných • akce - nastavení hodnot proměnných, příznaků, .. . důležité vlastnosti: • znalosti mohou být strukturovány do modulů , / OVI/, I V/V V I / / /I "iii v • systém muze být snadno rozšířen pridaním nových pravidel beze zmeny zbytku systému Úvod do umělé inteligence 10/12 24 / 34 Pravidlové systémy Pravidlová báze znalostí Pravidlová báze znalostí - příklad pravidla pro oblékání: pravidlo 1 IF X je seriózní AND X bydlí ve městě THEN X by měl nosit sako pravidlo 2 pravidlo 3 pravidlo 4 IF X je akademik AND X je společensky aktivní AND X je seriózní THEN X by měl nosit sako a kravatu IF X bydlí ve městě AND X je akademik THEN X by měl nosit kravatu IF X je podnikatel AND X je společensky aktivní AND X je seriózní THEN X by měl nosit sako, ale ne kravatu společenská pravidla: pravidlo 5 IF X je podnikatel AND X je ženatý THEN X je společensky aktivní pravidlo 6 IF X je akademik AND X je ženatý THEN X je seriózní profesní pravidla: pravidlo 7 IF X učí na univerzitě OR X učí na vysoké škole THEN X je akademik pravidlo 8 IF X vlastní firmu OR X je OSVČ THEN X je podnikatel Úvod do umělé inteligence 10/12 25 / 34 Expertní systémy Pravidlové systémy Expertní systémy • aplikace pravidlových systémů a zaměřeny na specifické oblasti - medicínská diagnóza, návrh konfigurace počítače, expertíza pro těžbu nafty, ... a snaha zachytit znalosti experta pomocí pravidel ale znalosti experta zahrnují - postupy, strategie, odhady, . .. • expertní systém musí pracovat s procedurami, nejistými znalostmi, různými formami vstupu • vhodné oblasti pro nasazení expertního systému: • diagnóza - hledání řešení podle symptomů • návrh konfigurace - složení prvků splňujících podmínky • plánování - posloupnost akcí splňujících podmínky • monitorování - porovnání chování s očekávaným chování, reakce na změny • řízení - ovládání složitého komplexu • předpovědi - projekce pravděpodobných závěrů z daných skutečností • instruktáž - inteligentní vyučování a zkoušení studentů Úvod do umělé inteligence 10/12 26 / 34 Pravidlové systémy Expertní systémy Expertní systémy v praxi CLIPS, pravidlový jazyk a prostředí pro expertní systémy • NASA Johnson Space Center - řízení kontroly raket • aktivně vyvíjený, tisíce projektů pracuje s objekty, fakty a IF-THEN pravidly Úvod do umělé inteligence 10/12 27 / 34 Pravidlové systémy Expertní systémy Expertní systémy v praxi CLIPS, pravidlový jazyk a prostředí pro expertní systémy • NASA Johnson Space Center - řízení kontroly raket • aktivně vyvíjený, tisíce projektů pracuje s objekty, fakty a IF-THEN pravidly (deftemplate emergency (slot type)) ; objekt (deftemplate response (slot action)) ; objekt (defrule fire— emergency (emergency (type fire)) ; pravidlo => (assert (response (action a c t i v a t e — s p r i n k I e r )))) (reset) (assert ( run ) (facts) f-0 f-1 f-2 (emergency (type fire))) fakt ( initial— fact) (emergency (type fire)) (response (action a c t i v a t e — s p r i n k I e r )) For total of 3 facts Úvod do umělé inteligence 10/12 27 / 34 Obsah Nejistota a pravděpodobnost Nejistota • Reprezentace znalostí • Třídy objektů • Ontológie • Sémantické sítě • Rámce ^^P^^ l—v "II f f • Pravidlová báze znalostí • Expertní systémy Q Nejistota a pravděpodobnost • Nejistota • Pravděpodobnost • Vyvozování z nejistých znalostí Úvod do umělé inteligence 10/12 28 / 34 ■ Nejistota a pravděpodobnost Nejistota ej istota definujme akci At jako "Vyrazit na letiště t hodin před odletem letadla." jak najít odpověď na otázku "Dostanu se akcí At na letiště včas k odletu letadla?" problémy: 1. částečná pozorovatelnost (stav vozovky, záměry ostatních řidičů, . ..) 2. nejistota výsledků akcí (píchnutí kola, ...) 3. obrovská složitost modelování a předpovědi dopravní situace čistě logický přístup tedy: - riskuje chybu - "A$ mě na letiště dostane včas." - vede k závěrům, které jsou příliš slabé pro rozhodování: "A$ mě tam dostane včas, pokud nebude na dálnici nehoda a pokud nebude pršet a jestli nepíchnu kolo a jestli nebude fronta na odbavovacích přepážkách a jestli nebudou problémy při kontrole zavazadel ..." Úvod do umělé inteligence 10/12 29 / 34 Nejistota a pravděpodobnost Nejistota Metody pro práci s nejistotou • defaultní/nemonotónní logika Předpokládejme, že nepíchnu cestou kolo. Předpokládejme, že A$ bude OK, pokud se nenajde protipříklad. • logická pravidla s faktory nejistoty (zastaralé) ^5 ^o.s dostat se na letiště včas. zalévání i—^o.99 mokrý trávník mokrý trávník 1—^0.7 déšť • pravděpodobnost (míra předpokladu, že hodnota bude true) Vzhledem k dostupným informacím, A3 mě tam dostane včas s pravděpodobností 0.05. poznámka: fuzzy logika se zabývá mírou pravdivosti, NE pravděpodobností Úvod do umělé inteligence 10/12 30 / 34 Nejistota a pravděpodobnost Pravděpodobnost Pravděpodobnost Pravděpodobnost sumarizuje nejistotu pocházející z - lenosti - nepodařilo se vypočítat všechny výjimky podmínky . .. - neznalosti - nedostatek relevantních údajů, počátečních podmínek, . .. subjektivní x Bayesovská pravděpodobnost: - pravděpodobnostní vztah mezi tvrzením a jeho pravdivosti vzhledem k podmínkám: P(A/[\žádné hlášené nehody) = 0.5 nejedná se o vyjádření pravděpodobnostní tendence (ale může se získat ze znalostí podobných případů v minulosti) - pravděpodobnost tvrzení se může měnit s novými (vstupními) podmínkami: P(Aô\žádné hlášené nehody, je 4:00 ráno) = 0.63 pravidlo pro podmíněnou pravděpodobnost - P(a\b) = pokud P(b) ^ 0 neboli pravidlo násobení (product rule) - P(a A b) = P(a\b)P(b) Úvod do umělé inteligence 10/12 31 / 34 Nejistota a pravděpodobnost Vyvozování z nejistých znalostí Vyvozování z nejistých znalostí • náhodná proměnná (random variable) - funkce, která vzorkům přiřazuje hodnoty —>► vrací výsledky měření sledovaného jevu distribuce pravděpodobností náhodné proměnné = (vektor) pravděpodobností, že daná proměnná bude mít konkrétní hodnotu např.: náhodná proměnná Odd ~ výsledek hodu kostkou bude lichý náhodná proměnná Weather « jaké bude počasí (slunce, déšt, mraky, sníh) Odd(l) = true Weather(21.11.2005) = déšt distribuce pravděpodobností proměnných Odd a Weather P(Odd = true) = 1/6 + 1/6 + 1/6 = 1/2 P(Odd) = (1/2,1/2) P(Weather) = (0.72,0.1,0.08,0.1) • pravidla pro výpočet pravděpodobnosti logicky souvisejících událostí P(a V b) = P{a) + P(b) - P{a A b) SliDo Úvod do umělé inteligence 10/12 32 / 34 Nejistota a pravděpodobnost Vyvozování z nejistých znalostí Bayesovské pravidlo pro vyvozování z pravidla pro podmíněnou pravděpodobnost - P(a\b) — p(aAb)/p(b) lze odvodit Bayesovské pravidlo pro určení diagnostické pravděpodobnosti ze znalosti příčinné pravděpodobnosti: P(Následek|Příčina)P(Příčina) P(Příčina| Následek) = P(Následek) např. ZMB zánět mozkových blan, ZK ztuhlý krk: , . ,, P(zk\zmb)P(zmb) 0.8 x 0.0001 „ P(zmb\zk) = —^—1 ,,v-=-—-= 0.0008 P(zk) 0.1 vyvozování = 1. rozdělení akce na atomické události 2. zjištění pravděpodobností atomických událostí 3. výpočet/odvození pravděpodobností pomocí složených distribucí pravděpodobností (Joint probability distribution) P(Odd, Weather) = 0.36 0.05 0.04 0.05 0.36 0.05 0.04 0.05 Úvod do umělé inteligence 10/12 33 / 34 Bayesovské sítě Nejistota a pravděpodobnost Vyvozování z nejistých znalostí Bayesovská síť: • acyklický orientovaný graf 9 uzly obsahují tabulky podmíněných pravděpodobností rodičů • síť reprezentuje složenou distribuci pravděpodobností všech proměnných • umožňuje efektivní přesné nebo přibližné (Monte Carlo) vyvozování • nejčastěji používaný aparát pro vyvozování z nejistých znalostí Vloupání Honza volá A P(H) t 0.90 f 0.05 Zemětřesení v z P{A) t t 0.95 t f 0.94 f t 0.29 f f 0.001 Marie volá P(Z) 0.002 A P(M) t 0.70 f 0.1 P(v\h, m) = aP{v) Ez P(z) Ea P{a\v, z)P{h\a)P(m\a) Úvod do umělé inteligence 10/12 34 / 34