230 likes | 459 Views
Generovanie LOGICKÝCH KONJUNKCIÍ. doc. Ing. Kristína Machová, PhD . k ristina. m achova @tuke.sk http://people.tuke.sk/kristina.machova/. O SNOVA:. Prehľadávanie priestoru pojmov Reprezentácia a použitie logických konjunkcií Inkrementálna indukcia logických konjunkcií
E N D
Generovanie LOGICKÝCH KONJUNKCIÍ doc. Ing. Kristína Machová, PhD. kristina.machova@tuke.sk http://people.tuke.sk/kristina.machova/
OSNOVA: • Prehľadávanie priestoru pojmov • Reprezentácia a použitie logických konjunkcií • Inkrementálna indukcia logických konjunkcií • VSS algoritmy (Version Space Search) • Prehľadávanie od špecifického k všeobecnému • Prehľadávanie od všeobecného k špecifickému • Obojsmerné prehľadávanie • Neinkrementálna indukcia logických konjunkcií • Úplné prehľadávanie • Heuristické prehľadávanie
PREHĽADÁVANIE PRIESTORU POJMOV • Riadené prehľadávanie (usporiadanie podľa všeobecnosti) • Operátory zovšeobecnenia/špecifikácie: • nahradenie konštanty premennou • vypustenie podmienky z konjunktívneho výrazu • pridanie disjunkcie do výrazu • nahradenie vlastnosti jej rodičom v hierarchii tried Predpoklad: obj(Veľkosť, Farba, Tvar) Veľkosť = {veľká, malá} Farba = {červená, biela, modrá} Tvar = {lopta, tehla, kocka}
REPREZENTÁCIA A POUŽITIE LOGICKÝCH KONJUNKCIÍ Reprezentácia: IF konjunkcia podm. (A=v) THEN záver Použitie: TP vyhovujúci podmienkam konjunkcie je zaradený do triedy (označený ako pozitívny) Bičíky = {jeden, dva} Farba = {tmavá, svetlá} Jadrá = {jeden, dva}.
REPREZENTÁCIA A POUŽITIE LOGICKÝCH KONJUNKCIÍ IF H> 5 THEN “+”pričom 0<H<10 a 0<G<10 IF G<5 THEN “+” IF H>5&H<9&G>2&G<5 THEN “+”
INKREMENTÁLNA INDUKCIA Vstup: postupnosť pozitívnych trénovacích príkladov pre triedu T postupnosť negatívnych trénovacích príkladov pre triedu T Výstup: logická konjunkcia, ktorá, korektne klasifikuje testovacie príklady • Hľadáme aproximáciu pojmu (triedy) pomocou konjunkcie podmienok. • Problémy v doménach obsahujúcich šum (reprezentačný bias). • Multitriedna indukcia indukuje popisy pre množinu N pojmov, ktoré majú slúžiť na klasifikáciu do N tried.
VSS algoritmy (Version Space Search) Hľadáme pojmy, konzistentné so vstupnými príkladmi. Pokrývajú všetky pozitívne a žiaden negatívny príklad. Chceme sa vyhnúť prevšeobecneniu a prešpecifikácii.
PREHĽADÁVANIE od ŠPECIFICKÉHO ku VŠEOBECNÉMU Pracuje inkrementálne. Tento algoritmus uskutočňuje zovšeobecňovanie. Buduje množinu S (“specific”) kandidátov pojmov. Používa operátory zovšeobecnenia. Vyhýba sa prílišnému zovšeobecneniu. Pojem P je najšpecifickejšie zovšeobecnený, ak pre každý ďalší pojem P’ tiež pokrývajúci pozitívne príklady platí: P P’.
PREHĽADÁVANIE od ŠPECIFICKÉHO ku VŠEOBECNÉMU begin N={},S=prvý pozitívny trénovací príklad for každý pozitívny príklad p begin for každé s z S if s nepokrýva p then nahraď s jeho najšpecifickejším zovšeobecnením, ktoré pokrýva p vymaž z S hypotézy všeobecnejšie ako iné hypotézy v S vymaž z S hypotézy pokrývajúce nájdené negatívne príklady v N end for každý negatívny príklad n begin vymaž členov S pokrývajúcich n pridaj n do N pre kontrolu prílišného zovšeobecnenia budúcich hypotéz end end.
PREHĽADÁVANIE od ŠPECIFICKÉHO ku VŠEOBECNÉMU
PREHĽADÁVANIE od VŠEOBECNÉHO k ŠPECIFICKÉMU Pracuje inkrementálne. Tento algoritmus uskutočňuje špecifikáciu. Buduje množinu G (“general”) kandidátov pojmov. Používa operátory špecifikácie. Vyhýba sa prílišnej špecifikácii. Pojem P je najvšeobecnejšou špecifikáciou, ak pre každý ďalší pojem P’, ktorý tiež nepokrýva žiadny negatívnypríklad, platí: P > P’.
PREHĽADÁVANIE od VŠEOBECNÉHO k ŠPECIFICKÉMU begin P={} G=najvšeobecnejší pojem priestoru for každý negatívny príklad n begin forkaždé g z G ifg pokrýva n then nahraď g jeho najvšeobecnejšou špecifikáciou, ktorá nepokrýva n vymaž z G hypotézy špecifickejšie ako iné hypotézy v G vymaž z G hypotézy nepokrývajúceniektoré pozitívne príklady end for každý pozitívny príklad p begin vymaž z G hypotézy, nepokrývajúce p pridaj p do P pre kontrolu prílišnej špecifikácie budúcich hypotéz end
PREHĽADÁVANIE od VŠEOBECNÉHO k ŠPECIFICKÉMU
OBOJSMERNÉ PREHĽADÁVANIE Algoritmus eliminácie kandidátov pojmov (Mitchell) Buduje množinu S (“specific”) a zároveň množinu G(“general”) kandidátov pojmov. Používa operátory zovšeobecnenia a špecifikácie.
OBOJSMERNÉ PREHĽADÁVANIE begin S=prvý pozitívny trénovací príklad, G=najvšeobecnejší pojem v priestore for každý nový pozitívny trénovací príklad p begin vymaž z G hypotézy, ktoré nepokrývajú p for každé s z S if s nepokrýva p then nahraď s jeho najšpecifickejším zovšeobecnením, ktoré pokrýva p vymaž z S hypotézy všeobecnejšie ako iné hypotézy v S vymaž z S hypotézy všeobecnejšie ako nejaká hypotéza v G end for každý nový negatívny príklad n begin vymaž z S hypotézy, ktoré pokrývajú n for každé g z G if g pokrýva n then nahraď g jeho najvšeobecnejšou špecifikáciou, ktorá nepokrýva n vymaž z G hypotézy špecifickejšie ako iné hypotézy v G vymaž z G hypotézy špecifickejšie ako niektorá hypotéza v S end if G=S then algoritmus našiel konzistentný pojem,
NEINKREMENTÁLNA INDUKCIA Vstup: množina pozitívnych trénovacích príkladov pre triedu T množina negatívnych trénovacích príkladov pre triedu T Výstup: logická konjunkcia, ktorá, korektne klasifikuje testovacie príklady Algoritmus úplného prehľadávania priestoru pojmov EGS (Exhaustive General to Specific) ESG (Exhaustive Specific to General) Algoritmus heuristického prehľadávania priestoru pojmov HGS (Heuristic General to Specific) HSG (Heuristic Specific to General)
EGS–EXHAUSTIVE GENER. to SPEC. egs(PSET,NSET,CSET,HSET) for každý pojem H v HSET ifH nepokrýva všetkých členov PSET then vymaž H z HSET ifH nepokrýva žiadny člen z NSET then vymaž H z HSET &pridaj H do CSET ifHSET={} then vráť CSET else nech NEWSET={} for každý pojem H v HSET nech SPECS sú všetky jedno-podmienkové špecifikácie H for každý pojem S v SPECS ifCSET neobsahuje žiadny pojem všeobecnejší ako S (kontrola prílišnej špecifikácie) then pridaj S do NEWSET egs(PSET,NSET,CSET,NEWSET)
ESG–EXHAUSTIVE SPEC. to GENER. • Vykonáva logickú indukciu neinkrementálnej povahy • Hľadá najšpecifickejšiu logickú konjunkciu • Je výpočtovo menej náročná ako EGS • Nepracuje s negatívnymi príkladmi • EGS ako aj ESG algoritmus: • Neuspeje ak neexistuje LK konzistentná s TM • Nezvláda zašumené dáta
HGS–HEURISTIC GENER. to SPEC. • Vykonáva heuristickú indukciu neinkrementálnej povahy. • HGS hľadá najvšeobecnejšiu logickú konjunkciu. • HSG Hľadá najšpecifickejšiu logickú konjunkciu. • Používa ohodnocovaciu funkciu SCORE(h). • Používa lúčové prehľadávanie beam-search, ktoré definuje parameter BS: beam-size • HGS ako aj HSG algoritmus: • Neuspeje ak neexistuje LK konzistentná s TM • Zvláda zašumené dáta
HGS–HEURISTIC GENER. to SPEC. hgs(PSET,NSET,CLOSED-SET,HSET) nech OPEN-SET={} for každý pojem H v HSET nech SPECS sú všetky jedno-podmienkové špecifikácie H, nech NEWSET={} for každý špecifikovaný pojem S v SPECS ifScore (S,PSET,NSET)>Score (H,PSET,NSET) then pridaj S do NEWSET ifNEW-SET={} then pridaj H do CLOSED-SET elsefor každý pojem S v NEW-SET pridaj S do OPEN-SET for každý pojem C v CLOSED-SET ifS je aspoň tak špecifický ako C thenifScore (C,PSET,NSET)>Score (S,PSET,NSET) then vymaž S z OPEN-SET else vymaž C z CLOSED-SET ifOPEN-SET={} then vráť člena s najvyšším skóre v CLOSED-SET else nech BEST-SET je Beam-Size počet najvyššie skórovaných členov zjednotenia OPEN-SET a CLOSED-SET hgs (PSET,NSET,CLOSED-SET,OPEN-SET).
HGS–HEURISTIC GENER. to SPEC. Algoritmus používa hodnotiacu funkciu, napríklad v tvare: Kde: P je množina pozitívnych príkladov N je množina negatívnych príkladov Pc sú pokryté pozitívne príklady Nnc sú nepokryté negatívne príklady Je možné používať aj štatistické a informačné miery, Ale aj tak jednoduchú mieru ako: