College 7 : covering theorie (Deel 2)

45
MBR7 2002 AtT 1 College 7 : covering theorie (Deel 2) model MAB-diagnose: College 6: Covering theorie College 7: Algoritme voor covering theorie werkelijk systeem model abnormaal gedrag geobserveerd gedrag voorspeld gedrag match observeren voorspellen

description

werkelijk systeem. geobserveerd gedrag. observeren. match. model abnormaal gedrag. voorspeld gedrag. voorspellen. College 7 : covering theorie (Deel 2). model MAB-diagnose: College 6: Covering theorie College 7: Algoritme voor covering theorie. Effects en causes (HERHALING). - PowerPoint PPT Presentation

Transcript of College 7 : covering theorie (Deel 2)

Page 1: College 7 : covering theorie (Deel 2)

MBR7 2002 AtT 1

College 7 : covering theorie (Deel 2)

model MAB-diagnose:

College 6: Covering theorie

College 7: Algoritme voor covering theorie

werkelijksysteem

model abnormaal

gedrag

geobserveerdgedrag

voorspeldgedrag

match

observeren

voorspellen

Page 2: College 7 : covering theorie (Deel 2)

MBR7 2002 AtT 2

Effects en causes (HERHALING)

• verzameling effecten mogelijk veroorzaakt door di

• verzameling mogelijke oorzaken van mi

causes(mi): {dj|<dj,mi> C}

effects(di): {mj|<di,mj> C}

Page 3: College 7 : covering theorie (Deel 2)

MBR7 2002 AtT 3

Effects & causes (HERHALING)

• verzameling effecten mogelijk veroorzaakt door D

effects(D): di D effects(di)

• verzameling mogelijke oorzaken van M

causes(M): mi M causes(di)

Page 4: College 7 : covering theorie (Deel 2)

MBR7 2002 AtT 4

Oplossing van diagnose probleem (HERHALING)

Vier aspecten van

"parsimonious covering theory":

(1) "cover" van de manifestatie

(2) keuze voor minimaliteit (parsimony)

(3) definitie van een verklaring voor de manifestaties

(4) definitie van oplossing

Page 5: College 7 : covering theorie (Deel 2)

MBR7 2002 AtT 5

Gewenste eigenschappen van covering-algorithme:

Constructief: construeer een verklaring door gebruik van relatie Creden: – aantal mogelijke verklaringen is |2D| !!– meeste verklaringen zijn irrelevant– aantal verklaringen van een gegeven

probleem is relatief klein

Sequentieel:M+ wordt over de tijd aangeleverd

Page 6: College 7 : covering theorie (Deel 2)

MBR7 2002 AtT 6

Onderwerpen

• Generator & generator setvoor representatie van diagnoses

• operatoren--> update van diagnoses bij nieuwe manifestaties

• algoritme in termen van generatoren enoperatoren

Page 7: College 7 : covering theorie (Deel 2)

MBR7 2002 AtT 7

Generator

• Generator GI (g1, g2, …., gn)

– gi D

– gi’s zijn paarsgewijs disjunct:

– gi ≠ leeg

– representeert aantal klassen:[GI] = {{d1,d2,…,dn} | di in gi}

• Voorbeeld:GI=({d1},{d2,d3},{d4})[GI]={{d1,d2,d4},{d1,d3,d4}}

Page 8: College 7 : covering theorie (Deel 2)

MBR7 2002 AtT 8

Generator

Dus:

• GI is verzameling van disjuncte verzamelingen van disorders

• [GI] is een cartesian product

Page 9: College 7 : covering theorie (Deel 2)

MBR7 2002 AtT 9

Verklaringen

• Generator gebruiken voor representatie van mogelijke verklaringen

• 1 generator is vaak niet voldoende

• nodig: set van generatoren

Page 10: College 7 : covering theorie (Deel 2)

MBR7 2002 AtT 10

Generator set

• Compacte representatie van verklaringen

• G = {G1, G2, …., Gn}

• GI zijn generators

• generators mogen niet dezelfde verklaringen genereren:[GI] [GJ] = { }

• Klassen (verklaringen) gegenereerd door G:[G] = [G1] U [G2] … U [Gn]

Page 11: College 7 : covering theorie (Deel 2)

MBR7 2002 AtT 11

Voorbeeld

d1 d2 d3 d4 d5 d7 d8 d9d6

m1 m2 m3 m4 m5 m6

causes(m1) = {d1,d2,d3,d4} causes(m2) = {d5,d6,d7,d9}causes(m3) = {d2,d3,d5,d6} causes(m4) = {d1,d2,d8}causes(m5) = {d7,d8,d9} causes(m6) = {d2,d4,d8}

Page 12: College 7 : covering theorie (Deel 2)

MBR7 2002 AtT 12

Voorbeeld

• M+ = {m1,m4,m5}• 8 subset-minimale oplossingen representeren m.b.v. generatorset• G={G1,G2} G1=({d3,d4},{d8}) G2=({d1,d2},{d7,d8,d9}) d3 en d4 zijn concurerende hyp’s in de context van d8 G1 representeert 2 verklaringen, G2 representeert 6 verklaringen

Page 13: College 7 : covering theorie (Deel 2)

MBR7 2002 AtT 13

Voorbeeld

keelonsteking griep longontsteking asthma

keelpijn hoesten koorts kortademigheid

Page 14: College 7 : covering theorie (Deel 2)

MBR7 2002 AtT 14

Voorbeeld

Diagnose-probleem: M+ = {keelpijn, kortademigheid}

• generator g voor DP: {{keelontsteking,griep},{longontsteking,asthma}}

• de gegenereerde klassen [g]:

{{keelontsteking,longontsteking}, {keelontsteking,asthma}.

{griep,longontsteking},

{griep,asthma}} irredundante oplossingen voor DP

Page 15: College 7 : covering theorie (Deel 2)

MBR7 2002 AtT 15

Generator & klassen

• Verschillende generator-sets kunnen dezelfde klassen genereren

• Diagnose-probleem:M+ = {keelpijn,kortademigheid,hoesten}

• G1= {({keelontsteking},{longontsteking}), ({griep},{longontsteking,asthma})}

• G2= {({longontsteking},{keelonsteking,griep}), ({griep},{asthma})}

• G3= {({longontsteking},{keelonsteking}), ({longontsteking},{griep}), ({griep},{asthma})}

Page 16: College 7 : covering theorie (Deel 2)

MBR7 2002 AtT 16

Operatoren

Idee:

• sequentiele diagnose:manifestaties komen sequentieel

• hypotheses representeren met generator-sets

• gebruik `operatoren’ om set van hypotheses te updaten bij nieuwe manifestatie

Page 17: College 7 : covering theorie (Deel 2)

MBR7 2002 AtT 17

Operatoren

• division operator (delingsoperator):selectie van de hypotheses die ook covers zijn voor de nieuwe manifestatie

• residu operator:selectie van de hypotheses die geen covers meer zijn voor de nieuwe manifestatie

• augmented residual:vermeerdert de “residual” zodanig dat er nieuwe covers ontstaan

Page 18: College 7 : covering theorie (Deel 2)

MBR7 2002 AtT 18

Division operator

Div(GI,H1) levert een generator-set Q:• GI is generator:

GI = (g1,g2,…,gn)• H1 is subset van D

(bijv. causes(mj))• Q = {Qk | Qk is een generator}• Qk = (qk1, qk2,…)

Then: qki := if i<k then gi - H1 if i=k then gi H1

if i>k then gi

Page 19: College 7 : covering theorie (Deel 2)

MBR7 2002 AtT 19

Division operator• Q1 = (q11,q12,…)

q11: g1 H1

q12: g2

q13: g3 etc.• Q2 = (q21,q22,…)

q21: g1 - H1

q22: g2 H1

q23: g3

q24: g4 etc.• Q3 = (q21,q22,…)

q31: g1 - H1

q32: g2 - H1

q33: g3 H1

q34: g4 etc.

Page 20: College 7 : covering theorie (Deel 2)

MBR7 2002 AtT 20

Division operator

• iedere QI bevat een subset van H1

(nl. qkk: gk H1)• gegenereerde klasse doorsnede H1 is

nooit leeg• gj - H1 zorgt ervoor dat de nieuwe

generatoren [Qk] niet dezelfde klassen (verklaringen) genereren.q11: g1 H1

q21: g1 - H1

--> dus in het eerste element verschillend

Page 21: College 7 : covering theorie (Deel 2)

MBR7 2002 AtT 21

Voorbeeld division operator

• M+ = {m1,m4,m5}• G1 = ({d3,d4},{d8})• H1 = causes(m3) = {d2,d3,d5,d6}• Q1 = ({d3},{d8})

• Q2 = ({d4}, ….

• Division van QG1 met H1 is {({d3},{d8})}

{d3,d4} doorsnede H1, g2

{d8} doorsnede H1--> geen generator!{d3,d4} - H1

Page 22: College 7 : covering theorie (Deel 2)

MBR7 2002 AtT 22

Voorbeeld division operator

• M+ = {m1,m4,m5}

• G2 = ({d1,d2},{d7,d8,d9})

• H1 = causes(m3) = {d2,d3,d5,d6}

• Q1 = ({d2},{d7,d8,d9})

• Q2 = ({d1}, ….

• Division van QG2 met H1 is {({d2},{d7,d8,d9})}

{d1,d2} doorsnede H1

{d7,d8,d9} doorsnede H1

--> geen generator!{d1,d2} - H1

Page 23: College 7 : covering theorie (Deel 2)

MBR7 2002 AtT 23

Voorbeeld

• `Oude’ generator set voor M+: {({d3,d4},{d8}), ({d1,d2},{d7,d8,d9})}

• Nieuwe generator set voor M+ m3: {({d3},{d8}), ({d2},{d7,d8,d9})}

{d3,d8}, {d1,d7}, {d2,d7}

{d4,d8}, {d1,d8}, {d2,d8}

{d1,d9}, {d2,d9}zijn ook covers van m3

Page 24: College 7 : covering theorie (Deel 2)

MBR7 2002 AtT 24

Generalisatie van division operator

• DiscoverSet = div(Generator)

• generalisatie: DiscoverSet = div(GeneratorSet)

div(G,H1) = GI G div(GI,H1)

div(G,H1) en div(GI,H1) leveren beide een generatie-set op

Page 25: College 7 : covering theorie (Deel 2)

MBR7 2002 AtT 25

Division operator

Lemma:GI: generator, G: generator set

• div(GI,H1) is een generator set[div(GI,H1)]={E in [GI]| E H1 ≠ { } }

• div(G,H1) is een generator set[div(G,H1)]={E in [G]| E H1 ≠ { } }

M.a.w.: de nieuwe H1 wordt ook gegenereert na divisie door H1

Page 26: College 7 : covering theorie (Deel 2)

MBR7 2002 AtT 26

Eigenschappen

• [div(GI,H1)] is subset van [GI] (meer manifestaties -> minder mogelijke verklaringen)

• iedere E (explanation) uit [div(GI,H1)] bevat minstens 1 element uit H1

• iedere E uit [div(G,H1)] bevat minstens 1 element uit H1

Page 27: College 7 : covering theorie (Deel 2)

MBR7 2002 AtT 27

merk op:

• Divisions leveren generator sets op geen duplicaten van klassen

• Nuttig voor oplossen van sequentiele diagnostisch probleem

Idee: • Observaties M+

• mogelijke verklaringen [G]

• nieuwe observatie mj

• mogelijke verklaringen voor M+ mj div(G,causes(mj))

Page 28: College 7 : covering theorie (Deel 2)

MBR7 2002 AtT 28

Residual operator

• representatie van klassen uit [G] die geen cover zijn voor M+ en mj

• nieuwe generator:(g1-H1, g2-H1, g3-H1,…,gn-H1)generatoren die geen element met H1 gemeen hebben.NB: als gi-H1 = leeg, dan nieuwe generator = leeg

Page 29: College 7 : covering theorie (Deel 2)

MBR7 2002 AtT 29

Voorbeeld

• G1=({d3,d4},{d8});

• G2=({d1,d2},{d7,d8,d9})

• res(G1, causes(m3)) =res(G1,{d2,d3,d5,d6}) = ({d4},{d8})

• res(G2,{d2,d3,d5,d6}) = ({d1},{d7,d8,d9})

Page 30: College 7 : covering theorie (Deel 2)

MBR7 2002 AtT 30

Residual operator

• res(G,H1) = G1 G res(G1,H1)

Lemma:

GI: generator, G: generator set

• res(GI,H1) is een generator set[res(GI,H1)]={E [GI] | E H1 is leeg }

• res(G,H1) is een generator set[res(G,H1)]={E in [G] | E H1 is leeg}

Page 31: College 7 : covering theorie (Deel 2)

MBR7 2002 AtT 31

Partities

• [res(GI,H1)] en [div(GI,H1)] zijn partities van GI

• [res(G,H1)] en [div(G,H1)] zijn partities van G

Page 32: College 7 : covering theorie (Deel 2)

MBR7 2002 AtT 32

Verdere generalisaties

• divisions met een generator (i.p.v. disrorder set H)

• divisions met een generator set

• residual met een generator (i.p.v. disorder set H)

• residual met een generator set

Page 33: College 7 : covering theorie (Deel 2)

MBR7 2002 AtT 33

Operator augmented residual

• uitbreiding van de residual operator

• augmented residual (augres):vermeerdert de “residual” zodanig dat er nieuwe covers ontstaan

• augres(GI,H1)=nieuwe generator:(g1-H1, g2-H1, g3-H1,…,gn-H1,A)A = H1 - Union gi

H1=causes(mj)

Page 34: College 7 : covering theorie (Deel 2)

MBR7 2002 AtT 34

Voorbeeld

• Generator set voor M+: {({d3,d4},{d8}), ({d1,d2},{d7,d8,d9})}

• augres(G1,H1) =augres({({d3,d4},{d8}), {d2,d3,d5,d6}) ={({d4},{d8},{d2,d5,d6})}

• augres(G2,H1) =augres({({d1,d2},{d7,d8,d9}),{d2,d3,d5,d6}) ={({d1},{d7,d8,d9},{d3,d5,d6})}

• augres(G,H1)= {({d4},{d8},{d2,d5,d6}), ({d1},{d7,d8,d9},{d3,d5,d6})}

Page 35: College 7 : covering theorie (Deel 2)

MBR7 2002 AtT 35

Samenvatting

• concept van generator set voor representatie van oplossingen voor diagnostisch probleem

• operatoren voor manipuleren van generator sets tijdens het oplossen van het diagnose probleem

Page 36: College 7 : covering theorie (Deel 2)

MBR7 2002 AtT 36

Samenvatting

• M+ aanwezig

• G1 representeert alle mogelijke covers voor M+

nieuwe manifestatie mj bekend

• div(G1,causes(mj)) zijn de covers uit G1 die ook covers zijn voor M+ U mj

• res(G1,causes(mj)) zijn de covers voor M+ die niet mj verklaren

• augres(G1,causes(mj)) zijn de covers voor M+ die niet mj verklaren, vermeerdert zodanig dat ze mj wel verklaren

Page 37: College 7 : covering theorie (Deel 2)

MBR7 2002 AtT 37

Diagnose-proces

• Sequentiële diagnose

• Subset-minimale verklaringen voor M+ U Mj div(G1,causes(mj)) + augres(G1,causes(mj))

• augres operator genereert soms enkele redundante covers

• minimale verklaringen zijn een subset van div(G1,causes(mj)) U augres(G1,causes(mj))

Page 38: College 7 : covering theorie (Deel 2)

MBR7 2002 AtT 38

Voorbeeld

oorontstekingontstekingamandelen

keel-ontsteking

asthmalongontsteking

oorpijn keelpijn koorts kortademig

hoesten

Page 39: College 7 : covering theorie (Deel 2)

MBR7 2002 AtT 39

Voorbeeld

• Diagnose probleem: M+ = {keelpijn,kortademig,koorts}

• Generator set:{({keelontsteking},{asthma,longontsteking}), ({ontsteking amandelen},{longontsteking})}

• H1 = causes(oorpijn)

= {oorontsteking, ontsteking amandelen}

Page 40: College 7 : covering theorie (Deel 2)

MBR7 2002 AtT 40

Voorbeeld

• [div(G,H1)] = {{longontsteking, ontsteking amandelen}}

• [augres(G,H1)] = {{keelontsteking,asthma,oorontsteking}, {keelontsteking,asthma,ontsteking amandelen},

{keelontsteking,longontsteking,oorontsteking}, {keelontsteking,longontsteking,ontsteking

amandelen}}

• {{longontsteking, ontsteking amandelen}} {keelontsteking,longontsteking,ontsteking amandelen}}

Page 41: College 7 : covering theorie (Deel 2)

MBR7 2002 AtT 41

Algoritme

• manifestaties komen sequentieel

• constructie van nieuwe hypotheses op basis van eerdere hypotheses

Page 42: College 7 : covering theorie (Deel 2)

MBR7 2002 AtT 42

Algoritme

• revise(G,H1) = F U res(Q,F)Waarbij:– F = div(G,H1) – Q = augres(G,H1)

begin hyp = { {} } while MoreManifestations do m = NextManifestation

hyp = revise(hyp, causes(m)) end-while

return(hyp)end

Page 43: College 7 : covering theorie (Deel 2)

MBR7 2002 AtT 43

Verwijderen van redundante oplossingen

• QL: “nieuwe covers” verkregen met “augmentation operator”

• QJ: “oude covers” die ook de nieuwe manifestatie mnieuw bedekt.

• Res(QL,QJ)

= alle subsetminimale diagnoses voor Morg + mnieuw

Page 44: College 7 : covering theorie (Deel 2)

MBR7 2002 AtT 44

Voorbeeld

mnieuw causes(mnieuw) hypothesis

M1 {d1,d2,d3,d4} {({d1,d2,d3,d4})}

M4 {d1,d2,d8} {({d1,d2}), ({d3,d4},{d8})}

M5 {d7,d8,d9} {({d1,d2},{d8,d8,d9}), ({d3,d4},{d8})

Page 45: College 7 : covering theorie (Deel 2)

MBR7 2002 AtT 45

Volgende keer:

Diagnose met correctmodellen