Expertní Systémy
Tvorba aplikace Typ systému malý velký velmi velký Počet pravidel 50-350 500-3000 10000 Počet člověkoroků 0.3-0.5 1-2 3-5 Cena projektu (v tis.$) 40-60 500-1000 2000-5000 Harmon, King (1985)
Vytvoření expertního systému pro středně složitý problém vyžaduje asi dva roky práce čtyřčlenného týmu ve složení: • vedoucí znalostní inženýr (na 1/4 úvazku), • znalostní inženýr (na plný úvazek), • programátor (na plný úvazek), • expert (na 3/4 úvazek). Waterman (1986)
Petr Berka, 2004
1
Expertní Systémy
Dedikované systémy Problémově zaměřená aplikace ”šitá na míru” konkrétní úloze. Příklady z VŠE: •
systém TEAM: doporučení ke zlepšení práce řešitelského kolektivu. Báze znalostí postihuje šest základních oblastí úrovně týmové práce: myšlení, práce s informacemi, odborná připravenost, skupinová práce, motivace, struktura týmu. Systém nabzí dva způsoby hodnocení: hodnocení ”pozorovatelem”, nebo samohodnocení týmu. Oproti prázdnému systému doplněno o – vstupní dotazník – syntézu dílčích odpovědí z jednotlivých dotazníků
•
systém AREX: pro syntetické zpracování dat o spolehlivosti autobilů. V první fázi se srovnávají skutečné průběhy poruch s jejich předpokládaným průběhem. Ve druhé fázi pak jsou v bázi znalostí o příčinách odchylek v průběhu poruch vyhledány znalosti technické povahy, které odhadují možné příčiny těchto odchylek. Oproti prázdnému systému doplněno o – určení míry odchylky mezi skutečným a předpokládaným počtem poruch – vysvětlování prováděné během interaktivní konzultace (výpis aktivavaných pravidel) – možnost automaticky aktualizovat bázi znalostí na základě požadovaných výsledků konzultace Petr Berka, 2004
2
Expertní Systémy
Systém TEAM pozorovatel
clenové týmu
dotazníky
souhrnné odpovedi
expertní systém
doporucení ke zlepšení práce týmu Petr Berka, 2004
3
Expertní Systémy
Systém AREX Hierarchická podoba báze znalostí vytvořená s použitím kontextů obecné znalosti
porucha ⇒ příčina
technol. třída 1
technol. třída 2
. . .
TT: porucha ⇒ příčina
díl 1 díl 2
díl: porucha ⇒ příčina díl ⇒ TT
. . .
Znalosti o příčinách odchylek v průběhu poruch jsou pravidla tvaru JESTLIŽE Poruchy druhu : vykazují v období záruky odchylku : resp. POTOM Potenciální příčinou poruch je :
Pj S > P S < P Zn
S VÁHOU w
Při konzultaci se systémem se postupně provádí • analýza průběhu poruch, a • odvození příčin poruch. Petr Berka, 2004
4
Expertní Systémy
Vývoj znalostního systému Softwarový projekt, kde klíčovou roli hraje využití znalostí.
Znalostní inženýrství Analýza
Získávání znalostí
Identifikace Úvodní představa
?
Zhodnocení ?
Specifikace Definování činnosti ?
Konceptuální návrh
Vývoj
? Zpřesňování Návrh a implementace rozšiřování ? I@ @ Implementace AKA A
AK
A
?
A
A
Vyhodnocení
A
Využívání
Detailní pohled
?
A
Nasazení
A
A
A
?
Údržba
Petr Berka, 2004
5
Expertní Systémy
Vodopádový model Specifikace požadavků 6
?
Specifikace chování 6
?
Specifikace návrhů 6
?
Implementace 6
?
Validace 6
?
Údržba
Petr Berka, 2004
6
Expertní Systémy
V model Úvodní studie
Pouzívání systému
Definice systému
Evaluace systému
Návrh systému a modulù
Integrace a testování
Validace modulù
Detailní návrh
Implementace
Petr Berka, 2004
7
Expertní Systémy
Metodologie KADS poč 90. let jako výzkumný projekt na universitě v Amsterodamu. Nyní de facto evropský standard pro tvorbu znalostních systémů. • podpora fáze analýzy: 1. Model procesů, zachycující dekompozici procesů dané úlohy, tok informací mezi nimi, a přiřazení procesů a prvků datové základny (včetně znalostí) jednotlivým agentům (softwarovým i lidským). 2. Model kooperace, který se zaměřuje především na komunikaci mezi uživatelem a systémem, případně i mezi jednotlivými moduly systému navzájem. 3. Model expertizy (tj. expertních znalostí), jehož tvorba je úzce spojena s procesem získávání znalostí. • podpora fáze projektování: 1. Model globální architektury, specifikující subsystémy, rozhraní mezi nimi a globální funkce. 2. Funkční model, realizující dekompozici funkcí jednotlivých subsystémů. 3. Behaviorální model, přiřazující funkcím projekční prvky. 4. Fyzický model, kombinující projekční prvky do detailního návrhu systému. Petr Berka, 2004
8
Expertní Systémy
Model expertizy • Doménová vrstva (“domain layer”) zachycuje pojmy, fakta, vztahy atp. relevantní k dané problémové oblasti (doméně). Znalosti jsou zde zachyceny bez ohledu na způsob použití k usuzování - proto se někdy mluví o úrovni statických znalostí. • Inferenční vrstva (“inference layer”) zachycuje abstraktní inference, které je možné na doménové znalosti aplikovat, a vazby mezi nimi. Prostřednictvím tzv. doménových rolí je propojena s doménovou vrstvou. • Úlohová vrstva (“task layer”) specifikuje, které inference se pro danou úlohu skutečně použijí. Každá inference z inferenční vrstvy je chápána jako primitivní úloha; ty jsou pak seskupovány do hierarchií úloh, a spojovány procedurálními operacemi, jako je např. sekvence, selekce nebo iterace. • Strategická vrstva (“strategy layer”) zachycuje strategické rozhodování experta, např. výběr z možných hierarchií úloh, jejich dynamické rozvrhování atd. Vyskytuje se zpravidla jen u velmi složitých a rozsáhlých projektů.
Petr Berka, 2004
9
Expertní Systémy
Modely generických úloh “Polotovar” modelu expertizy, zahrnující inferenční a úlohovou vrstvu.
Abstrakce Strategická v. 6
Abstrakce 6
Model generické úlohy Inferenční v.
Úlohová v.
Úlohová v.
Doménová v. Strategická v.
Inferenční v. Doménová v.
Petr Berka, 2004
10
Expertní Systémy
Příklad GTM Model úlohy heuristické klasifikace ¾ » - přiřazuje -
Proměnné
Abstraktní řešení ¼
½
6 ¾ ?
»
¾
abstrahuje ½
6
»
specializuje ¼
½
¼ ?
Pozorovatelné
Řešení
/* Dopředné usuzování */ Heuristická klasifikace (+ Pozorovatelné, - Řešení) :získání dat a jejich vložení do Pozorovatelných abstrahuje (+ Pozorovatelné, - Proměnné) přiřazuje (+ Proměnné, - Abstraktní řešení) specializuje (+ Abstraktní řešení, - Řešení) /* Zpětné usuzování */ Heuristická klasifikace (+ Pozorovatelné, - Řešení) :specializuje (- Abstraktní řešení, - Řešení) přiřazuje (- Proměnné, - Abstraktní řešení) abstrahuje (- Pozorovatelné, - Proměnné) získání dat a jejich vložení do Pozorovatelných Petr Berka, 2004
11
Expertní Systémy
Generické úlohy knihovny KADS
Diagnostika -
Verifikace Identifikace
Korelace
Analýza systému
Monitorování
Prostá klasifikace
Klasifikace
Heuristická klasifikace Systematické zjemňování
Predikce
Knihovna generických úloh
-
-
Modifikace systému Syntéza systému
Petr Berka, 2004
12
Expertní Systémy
Získávání znalostí
získávání znalostí @
@
ruční
@
@ R
podporované počítačem
interaktivní
@ @
@ R
automatizované
Petr Berka, 2004
13
Expertní Systémy
Verbální techniky elicitace znalostí Verbální techniky (rozhovorové i observační) jsou relativně “lidsky přirozeným” způsobem elicitace znalostí.
techniky založené na rozhovoru - znalosti od experta získávány mimo mimo rámec jeho expertní aktivity • Úvodní výklad experta k dané problematice • nestrukturovaný rozhovor (běžná odborná konverzace) • strukturovaný rozhovor (pevná agenda s cílenými dotazy) • introspekce (myšlení nahlas) V počáteční fázi procesu získávání znalostí se někdy jako specifická forma skupinové diskuse používá brainstorming.
observační techniky - vycházejí z procesu řešení konkrétních, reálných případů • komentovaný případ (expert řeší skutečný případ a komentuje svůj postup) • prosté pozorování (znalostí inženýr bezprostředně interpretuje postup experta) • simulace dialogu systému s uživatelem (expert a uživatel komunikují přes počítačové rozhraní, a všechny jejich akce jsou automaticky zaznamenávány) Petr Berka, 2004
14
Expertní Systémy
Neverbální techniky elicitace znalostí Neverbální (někdy také označované jako “vícerozměrné”) techniky směřují k zachycení strukturovaných, neverbálních dat. • Třídění karet. Expertovi jsou předložena sada karet, z nichž každá odpovídá jednomu objektu (např. řešenému případu). Expert má za úkol nacházet vytvářet skupiny karet, které mají něco společného, a snažit se definovat, o jakou společnou vlastnost jde. • Metoda repertoárové tabulky založená na tzv. konstruktivní psychologické teorii G.Kellyho. Repertoárová tabulka je dvourozměrná tabulka, v níž jeden rozměr odpovídá objektům a druhý konstruktům (vlastnostem objektů); uvnitř tabulky jsou hodnoty konstruktů pro jednotlivé objekty. • Maticová analýza. Založena na dvourozměrné tabulce, kde jeden rozměr tvoří objekty a druhý vlastnosti; na rozdíl od repertoárové tabulky neuvažuje bipolární vlastnosti objektů, nýbrž jen přítomnost/nepřítomnost dané vlastnosti (např. symptomu) u daného objektu (např. diagnózy). • Vícerozměrné škálování. spočívá ve vytvoření tabulky vzájemných podobností všech objektů, a v její následné statistické analýze vedoucí k uspořádání objektů do shluků. • “Žebříková” analýza (“laddering”) slouží pro generování struktury doménových konceptů pomocí střídání vzestupných a sestupných kroků v generalizační hierarchii. Petr Berka, 2004
15
Expertní Systémy
Modelování znalostí “Model je účelová abstrakce, která umožňuje snížit složitost zkoumaného předmětu tím, že se soustředí pouze na jeho některé aspekty.” Znalostní modely • abstrahování od podrobností datové reprezentace a algoritmické realizace • oddělení postupu řešení problému od charakteristik věcné domény
Přednosti vyplývající z používání abstraktních modelů • Usnadnění vývoje aplikace. Model vede tvůrce systému k lepšímu strukturování řešené úlohy, má kontrolní a dokumentační funkci • dílení a opakované používání. Pokud jsou modely založeny (alespoň zčásti) na veřejných knihovnách a standardizované terminologii, pak jsou srozumitelné nejen tvůrcům aplikace, ale i celé komunitě, která na tyto standardy přistupuje. Modely metodologie KADS.
Petr Berka, 2004
16
Expertní Systémy
Znalostní ontologie “Ontologie je explicitní dohoda o sdílené konceptualizaci”. 1. Ontologie tvoří konceptuální popis znalostí – hraje roli meta-úrovně, definující, co a v jaké podobě může být ve znalostech obsaženo. 2. Ontologie by měla být sdílitelná – neměla by být určena výlučně pro jedinou aplikaci. Předpokladem sdílitelnosti je přijetí daného způsobu konceptualizace v rámci širší komunity, jako jistého standardu. 3. Ontologie je definovaná explicitně, tj. nejde o ústní dohodu, ale o informace zachycené v určitém dokumentu, pomocí jistého jazyka. Hlavní přínosy využívání ontologií: • Usnadnění komunikace mezi lidmi/organizacemi díky jasnému vymezení používaných pojmů • Usnadnění spolupráce počítačových systémů – ontologie zde hraje roli výměnného formátu znalostí • Usnadnění vývoje znalostní aplikace, v níž ontologie plní funkci základní, konceptuální vrstvy báze znalostí
Petr Berka, 2004
17
Expertní Systémy
Typy a příklady ontologií • Doménová ontologie tvoří konceptuální základ znalostí z věcné domény The Enterprise Ontology (Velká Británie) jako model organizační struktury a činností podniku jako celku i jeho jednotlivých částí. PRÁVNÍ VLASTNICTVÍ: Vztah mezi PRÁVNÍ ENTITOU a Entitou, v rámci něhož má PRÁVNÍ ENTITA jistá práva vůči Entitě. Pozn.: O Entitě v takovém Vztahu řekneme, že je v ‘‘PRÁVNÍM VLASTNICTVÍ’’. • Úlohové ontologie můžeme ztotožnit s modely řešení problémů (napr. KADS) • Generické ontologie se podobají doménovým, avšak vyznačují se širokým (až univerzálním) záběrem Projekt Cyc (USA) jako ontologie obecných (common–sense) znalostí z nejrůznějších oblastí. Ontologie má formální charakter – použitý jazyk CycL, vychází z predikátového kalkulu prvního řádu. (#%ist #%LargeCorpInternalsMt #%ForAll x (#%HumanResourcesDepartment #%allInstances) (#%actsInCapacity x #%mediatorInProcesses #%EmployeeHiring #%MainFunction))) Petr Berka, 2004
18
Expertní Systémy
Poloautomatizované získávání znalostí Systémy vycházející z použití repertoárové tabulky: systém Ets z roku 1985 (Boose), jeho tuzemská implementace Saze (1988), či novější systém WebGrid (http://gigi.cpsc.ucalgary.ca). Postup tvorby báze znalostí: 1. expert zadává seznam všech možných řešení problému 2. expert zadává tzv. tabulku ohodnocení (rating grid), ve které je každý cíl popsán pomocí znaků (konstruktů) 3. systém konstruuje znalosti ve formě implikací mezi jednotlivými póly různých znaků. 4. systém pokračuje generováním pravidel. Z každého konstruktu vycházejí ke každému objektu tato dvě pravidla: Jestliže vj, pak Jestliže -vj, pak
Oi s váhou wij Oi s váhou -wij
Váha wij je dána součinem ohodnocení tij z tabulky a důležitosti dj j-tého konstruktu, který se dále násobí opravným koeficientem f (m): wij = f (m) ∗ dj ∗ tij , 5. po vytvoření všech pravidel může expert přistoupit k testování báze znalostí. Systém prověří podobnost a konstruktů a testuje úplnost báze znalostí. Petr Berka, 2004
19
Expertní Systémy
Činnost systému SAZE 1. Repertoárová tabulka A B C D E p 100 100 -100 50 -50 q 100 -100 100 -100 50 r 50 -100 -100 100 -100 2. implikace q -q p 1 2 -p 2 0 Když
-p, pak i q, a tedy když -q, pak i p.
3. pravidla Když p, pak
B A D E C
s s s s s
váhou váhou váhou váhou váhou
66 66 33 -33 -66
Když -p, pak
B A D E C
s s s s s
váhou váhou váhou váhou váhou
-66 -66 -33 33 66
. . . Petr Berka, 2004
20
Expertní Systémy
Automatizované získávání znalostí Používané metody • z oblasti statistiky shluková analýza, diskriminační analýza, regresní analýza • z oblasti strojového učení indukce rozhodovacích stromů nebo rozhodovacích pravidel, neuronové sítě, bayesovské sítě genetické algoritmy, učení zalozene na instancich Znalosti se získávají generalizací z velkého počtu příkladů při jen minimálním využití znalostí (a tedy minimálním přispění experta).
Učení na základě podobnosti • objekty, patřící do téže třídy mají podobné charakteristiky problém nalezení vhodných atributů • z konečného počtu příkladů odvozujeme obecné znalosti (induktivní inference) problém reprezentativnosti příkladů
Petr Berka, 2004
21
Expertní Systémy
Trénovací data a prostor atributů Data pro nalezení znalostí pro hodncení bonity klienta banky klient konto příjem půjčit 01 15000 3000 ne 02 15000 10000 ne 03 15000 17000 Ano 04 30000 5000 ne 30000 15000 Ano 05 06 50000 20000 Ano 60000 2000 ne 07 08 90000 5000 Ano 90000 10000 Ano 09 10 90000 20000 Ano 11 100000 10000 Ano 100000 17000 Ano 12 příjem A A
A A
A
n
A A n
n
A n
konto Petr Berka, 2004
22
Expertní Systémy
Rozhodovací stromy příjem >=min p
<min p ?
A
konto A
>=min k
A
<min k
A
AU
A
n
příjem A A min p
A A
A
n
A A n
n
A n min k
konto
Petr Berka, 2004
23
Expertní Systémy
Rozhodovací pravidla
IF IF IF
příjem<min_p příjem<min_p
příjem>=min_p & konto<min_k & konto>=min_k
THEN THEN THEN
Ano ne Ano
příjem A A min p
A A
A
n
A A n
n
A n min k
konto
Petr Berka, 2004
24
Expertní Systémy
Neuronové sítě
příjem A A @ @ @ @ @A @ @ A @ @ @ @ n @ A @ @ @ @ @ n @ A @ @ @ @ n @ n@ @@ @ @
A A
konto
Petr Berka, 2004
25
Expertní Systémy
Případy klient konto příjem půjčit 01 15000 3000 ne 02 15000 10000 ne 03 15000 17000 Ano 04 30000 5000 ne 05 30000 15000 Ano 06 50000 20000 Ano 07 60000 2000 ne 90000 5000 Ano 08 09 90000 10000 Ano 10 90000 20000 Ano 11 100000 10000 Ano 12 100000 17000 Ano příjem A A
A A
A
n
A A
'$
n n
A
'$ &%
n &%
konto Petr Berka, 2004
26
Expertní Systémy
Perspektivy Expertní systémy zatím nedosáhly takového rozšíření a obliby jako např. databázové systémy nebo tabulkové kalkulátory.
• chybějí efektivnější techniky získávání znalostí, které by urychlily vývoj konkretní aplikace, • nedostatečné integrování do používaných technologií, která snižuje přijatelnost expertních systémů pro uživatele (uživatel používá zavedenou informační technologii, do které investoval), • znalostní inženýři kladou malý důraz na aplikační oblast (úkolem by mělo být vyřešit konkretní problém, nikoliv ”napasovat jej” na používaný nástroj), • chybějí přesné testovací procedury, které by zaručily, že výsledný systém správně funguje.
Petr Berka, 2004
27
Expertní Systémy
Přínos expertních systémů
• zvýšená dostupnost expertízy (expertní systémy lze provozovat na libovolných počítačích), • snížené náklady na provedení expertízy (cena práce počítče je nižší než cena práce experta), • trvalost expertízy (znalosti uložené v expertním systému jsou použitelné trvale, expert může odejít), • násobná expertíza (znalosti v expertním systému mohou pocházet od více expertů), • vzrůst spolehlivosti expertízy (ve stejných situacích systém rozhoduje stejně, expertízu je možno dokumentovat . . .), • schopnost vysvětlování, • rychlá odezva, • úplnost expertízy (expertní systém nepodléhá emocím, únavě, stresu)
Petr Berka, 2004
28
Expertní Systémy
Otevřené otázky
• využítí kauzálních modelů – usuzování na základě modelů – kvalitativní usuzování
• více zdrojů znalostí – tabule
• práce v reálném čase • zlepšení vysvětlování – využití kauzálních modelů
Petr Berka, 2004
29