Vladimír Laš



Vybrané problémy při tvorbě báze znalostí v NESTu

Obsah

Rozdíl mezi konjunkcí výroků, disjunkcí výroků a samostatnými pravidly
Modelování obousměrné závislosti (negativní pravidla)
Influenční/strukturní dekompozice daného výroku
Seskupení diagnóz do bloků
Maticová analýza
Použití logických pravidel

Rozdíl mezi konjunkcí výroků, disjunkcí výroků a samostatnými pravidly

Uvažujeme-li několik výroků (pro jednoduchost zde jen dva) - V1, V2 - podporujících tentýž závěr, tj. výrok V3, máme v zásadě volbu mezi vytvořením jediného pravidla, obsahujícího v antecedentu oba výroky spojené konjunkcí:

V1 AND V2 --> V3 (s vahou w)

vytvořením jediného pravidla, obsahujícího v antecedentu oba výroky spojené disjunkcí:

V1 OR V2 --> V3 (s vahou w)

a vytvořením dvou samostatných pravidel:

V1 --> V3 (s vahou w1)
V2 --> V3 (s vahou w2)

První variantu použijeme tehdy, je-li pro pravdivost výroku V3 nutná současná pravdivost výroků V1 a V2 (proto mluvíme o konjunkci!). Pokud může každý z výroků V1 a V2 přispět nezávisle, sám o sobě, k pravdivosti výroku V3, vybíráme mezi druhou a třetí variantou. V případě, že pro pravdivost výroku V3 stačí jeden splněný výrok V1 či V2 a případné splnění druhého výroku nemá již na V3 žádný vliv, pak je správné použít disjunkci (tedy druhou variantu). V případě, že pro pravdivost V3 stačí jeden z výroků V1 či V2, ale případné splnění druhého výroku může tuto pravdivost zlepšit (rozuměj ve smyslu zlepšení váhy závěru), je správné použít 2 pravidla (tedy variantu 3).


Příklad konjunkce:
V1 = „Klient je solventní“
V2 = „Klient je důvěryhodný“
V3 = „Lze předpokládat, že klient půjčku splatí“


Příklad disjunkce:
V1 = „Klient zaplatil hotově“
V2 = „Klient zaplatil bankovním převodem“
V3 = „Klient zaplatil“


Příklad dvou pravidel:
V1 = „Klient vlastní pozemky“
V2 = „Klient vlastní cenné papíry“
V3 = „Klient je movitý“

Modelování obousměrné závislosti (negativní pravidla)

Chceme-li vyjádřit, že kladná váha výroku P přispívá k váze výroku Q kladně, avšak záporná váha záporně, je třeba použít dvě pravidla:
P -> Q (w)
non P -> non Q (w) (tj. non P -> Q (-w))
Standardně se totiž záporná váha antecedentu nerozlišuje od nulové, a nezajistí tudíž snížení celkové váhy závěru.

Sémanticky: pokud o  pravdivosti předpokladu nic nevíme, je to - z hlediska naší znalosti o  pravdivosti závěru - totéž, jako kdybychom věděli, že je předpoklad nepravdivý.

Influenční/strukturní dekompozice daného výroku

Obě techniky jsou charakteristické pro tzv. „top-down“ modelování, používané zvláště v úlohách, kdy k rozlišení poměrně malého počtu diagnóz potřebujeme rozsáhlejší bázi znalostí.

Při influenční dekompozici hledáme faktory (tj. výroky), které ovlivňují váhu daného výroku. Totéž rekurzivně opakujeme pro nalezené výroky, zpravidla (ale ne nezbytně) tak dlouho, dokud nedospějeme k výrokům natolik elementárním, že je můžeme chápat jako dotazy. Výstupem může být stromová struktura (influenční strom), ovšem může se stát, že se některé větve opět spojí (objeví se v nich tentýž výrok). Je rovněž třeba posoudit, zda se jedná o obousměrnou influenci (viz).

Při strukturní dekompozici hledáme výroky, které vypovídají o součástech entity, o které vypovídá daný výrok. Opět je možno postupovat rekurzivně.

Příklad: influenční dekompozice


1.krok                                         DIAGNÓZA CHŘIPKA

2.krok               PODRÁŽDĚNÁ SLIZNICE --->  DIAGNÓZA CHŘIPKA
                     DÝCHACÍCH CEST       o->
                                          |
                     ZVÝŠENÁ TEPLOTA     -o

3.krok  KAŠEL --->   PODRÁŽDĚNÁ SLIZNICE --->  DIAGNÓZA CHŘIPKA
               o->   DÝCHACÍCH CEST       o->
        RÝMA  -o                          |
                     ZVÝŠENÁ TEPLOTA     -o

Příklad: strukturní dekompozice

1.krok                                         VYSOKÁ ZADLUŽENOST

2.krok                     VYSOKÁ ZADLUŽ. ---> VYSOKÁ ZADLUŽENOST
                           U BANK          o->
                                           |
                           VYSOKÁ ZADLUŽ. -o
                           U DODAVATELŮ

3.krok VYSOKÁ ZADLUŽ. ---> VYSOKÁ ZADLUŽ. ---> VYSOKÁ ZADLUŽENOST
       U TUZEM.BANK    o-> U BANK          o->
                       |                   |
       VYSOKÁ ZADLUŽ. -o   VYSOKÁ ZADLUŽ. -o
       U ZAHR.BANK         U DODAVATELŮ

Seskupení diagnóz do bloků

Pokud je cílových výroků velký počet, je vhodné rozdělit je do specifických bloků. Každé pravidlo, vedoucí k cílovému výroku, pak bude uvozeno výrokem-kontextem příslušného bloku. Tím se dosáhne omezení inference na jeden nebo několik bloků, a teprve v rámci bloku se budou vyšetřovat konkrétní cílové výroky. Příkladem této „blokové architektury“ je BZ OPTIMALI.

Maticová analýza

Maticovou analýzu můžeme použít k tvorbě ploché (jednovrstevné) BZ (případně jedné vrstvy složitější BZ) s jednočlennými antecedenty. Řádky matice odpovídají vstupům (ovlivňujícím výrokům), sloupce výstupům (ovlivňovaným výrokům). Jako prvky matice pak vyplníme míry závislosti výstupních výroků na vstupních, tj. vlastně váhy pravidel (pro nulové prvky, kterých bude zpravidla většina, samozřejmě pravidla nevytváříme). Pozor, v případě větších rozměrů matice se jedná o techniku značně časově náročnou!

Použití logických pravidel

Logické pravidlo použijeme v případě, když splněním předpokladů pravidla lze jednoznačně rozhodnout o absolutní pravdě (resp. absolutní nepravdě) závěru pravidla, aniž by bylo potřeba zjišťovat příspěvky ostatních pravidel, které mají v závěru stejný závěr. Pomocí logických pravidel lze tedy zabránit použití určitých pravidel a tím i pokládání zbytečných dotazů.

Víme-li např., že banka nepůjčuje zahraničním osobám, pak by struktura báze měla vypadat nějak následovně:
logické: not(V2) --> (V1)
kompozicionální: Vi --> V1 (s vahou wi)
kde V1 je cílový výrok "půjčit", V2 je "občanství ČR" a Vi jsou další výroky ovlivňujíc možnost půjčení. Odpoví-li tedy uživatel, že nemá občanství ČR, je ihned půjčka zamítnuta a další údaje se již nezjišťují.

Vladimír Laš vladalas.info

Kontakty

osobní

icq

icq 175019847

Další komunikátory