More than Just Lines on a Map: Best Practices for U.S Bike Routes
Rough-Set-Theorie (Grobe Logik) Präsentation
1. d
Grobe Logik
(Rough-Set-Theorie)
Eugen Petrosean
2. Inhalt
1. Allgemeine Vorgehensweise bei einer Datenanalyse
2. Rough-Set-Theorie für Informationssysteme
3. Rough-Set-Theorie für Entscheidungssysteme
2 / 45
3. Motivation
Patient Headache Muscle pain Temperature Flu
p1 no yes high yes
p2 yes no high yes
p3 yes yes very high yes
p4 no yes normal no
p5 yes no high no
p6 no yes very high yes
3 / 45
4. Motivation
Patient Headache Muscle pain Temperature Flu
p1 no yes high yes
p2 yes no high yes
p3 yes yes very high yes
p4 no yes normal no
p5 yes no high no
p6 no yes very high yes
4 / 45
7. Ziele der Rough-Set-Analyse
- Einführung von effizienten Algorithmen zur Erkennung von versteckten Datenmustern
- Vereinfachung der Daten (Reduktion der Daten)
- Auswertung der Daten im Hinblick auf ihre Relevanz
- Bestimmung von Entscheidungsregeln
- Einfache Interpretation von erzielten Ergebnissen
7 / 45
9. Informationssystem
Ein Informationssystem IS besteht aus:
- einer endlichen Menge von Objekten U ={x 1, x 2, ... , x n}
- einer endlichen Menge von Attributen A={a 1, a 2, ... , a m }
→ IS =U , A
Außerdem:
- für jedes Attribut a ∈A wird eine Funktion f a :U V a definiert
→ V a ist die Wertemenge von a
9 / 45
10. Informationssystem
Patient Headache Muscle pain Temperature
p1 no yes high
p2 yes no high
p3 yes yes very high
p4 no yes normal
p5 yes no high
p6 no yes very high
U = { p1 , p2 , p3 , p4 , p5 , p6 }
A = {Headache , Muscle pain ,Temperature}
V Headache = { yes , no}
V Muscle pain = { yes , no}
V Temperature = {normal , high , very high}
10 / 45
11. Ununterscheidbarkeitsrelation
- für ein Informationssystem IS =U , A
- für eine Teilmenge von Attributen B⊆A
definieren wir
2
I B={ x i , x j∈U ∣ ∀ a ∈ B f a x i = f a x j }
Wir sagen:
x i , x j ∈ I B - die Objekte x i und xj
sind ununterscheidbar von jedem Attribut aus B
→ Objekte unterscheiden sich in U ,
aber nicht bezüglich der Attributmenge B
11 / 45
12. Ununterscheidbarkeitsrelation
Patient Headache Muscle pain Temperature
p1 no yes high
p2 yes no high
p3 yes yes very high
p4 no yes normal
p5 yes no high
p6 no yes very high
für B = { Headache, Muscle pain, Temperature}
U/B Headache Muscle pain Temperature
{ p1 } no yes high
{ p2, p5 } yes no high
{ p3 } yes yes very high
{ p4 } no yes normal
{ p6 } no yes very high
12 / 45
13. Ununterscheidbarkeitsrelation
Patient Headache Muscle pain Temperature
p1 no yes high
p2 yes no high
p3 yes yes very high
p4 no yes normal
p5 yes no high
p6 no yes very high
für B = { Headache, Muscle pain}
U/B Headache Muscle pain
{ p1, p4, p6 } no yes
{ p2, p5 } yes no
{ p3 } yes yes
13 / 45
14. Untere und obere Annäherung
- für ein Informationssystem IS =U , A
- für eine Teilmenge von Attributen B⊆A
- für eine Teilmenge von Objekten X ⊆U
definieren wir
- untere Annäherung: B∗ X ={x i ∈U ∣ B xi ⊆ X }
→ Vereinigungsmenge der Äquivalenzklassen,
die vollständig in X enthalten sind
- obere Annäherung: B∗ X ={x i ∈U ∣ B xi ∩ X ≠0}
→ Vereinigungsmenge der Äquivalenzklassen, deren Schnitt
mit der Menge X mindestens ein Element enthält
- Grenzregion: BN B X =B∗ X −B∗ X
14 / 45
15. Untere und obere Annäherung
- untere Annäherung: B∗ X ={x i ∈U ∣ B xi ⊆ X }
- obere Annäherung: B∗ X ={x i ∈U ∣ B xi ⊆ X }
- Grenzregion: BN B X =B∗ X −B∗ X
B∗ X - maximale scharfe Menge
B∗ X - minimale scharfe Menge
X ist scharf, falls BN B X =∅
X ist grob, falls BN B X ≠∅
15 / 45
16. Untere und obere Annäherung
- untere Annäherung: B∗ X ={x i ∈U ∣ B xi ⊆ X }
- obere Annäherung: B∗ X ={x i ∈U ∣ B xi ⊆ X }
- Grenzregion: BN B X =B∗ X −B∗ X
Ein Objekt ist in X enthalten:
POS B=B∗ (Sicher ja)
NEG B=U − B∗ (Sicher nein)
BR B=B∗−B∗ (Ja oder nein)
16 / 45
17. Untere und obere Annäherung
Patient Headache Muscle pain Temperature
p1 no yes high
p2 yes no high
p3 yes yes very high
p4 no yes normal
p5 yes no high
p6 no yes very high
U/B Headache Muscle pain Temperature
{ p1 } no yes high
{ p2, p5 } yes no high
{ p3 } yes yes very high
{ p4 } no yes normal
{ p6 } no yes very high
X = { p1, p2, p4 }, B = { Headache, Muscle pain, Temperature }
B∗ X = { p1 , p4}
B∗ X ={ p1 , p2 , p5 , p4 }
BN B X = { p1 , p2 , p5 , p4} − { p1 , p4} = { p2 , p5}
17 / 45
18. Reduktion der Attribute
- redundante Attribute können eliminiert werden
→ bei geringerer Attributzahl wird identisches Wissen modelliert
→ Attribut-Verzichtbarkeit
→ ein Attribut a ∈A ist verzichtbar, wenn I B=I B−{a }
d.h.
- Eliminierung des Attributs a ändert nicht die Äquivalenzklassen
→ eine Äquivalenzklasse kann mit und ohne a
gleichgut beschrieben werden
Wir suchen:
- minimale Teilmengen von A ,
bei denen auf kein Attribut vezichtet werden kann
→ Redukte
18 / 45
19. Reduktion der Attribute
-Unterscheidbarkeitsmatrix von B⊆A
c ij ={a ∈A ∣ f a x i ≠ f a x j } für i , j=1, ... , n
- der Eintrag c ij ist eine Menge von Attributen,
in denen sich das Objekt x i vom Objekt x j unterscheidet
→ wird als xi , x j ⊆B bezeichnet
-Unterscheidbarkeitsfunktion
→ boolesche Funktion
→ jedes Attribut a entspricht einer booleschen Variable a
→ Darstellung in disjunktiver Normalform (DNF)
f B= ∏ {∑ x , y : x , y∈U 2∧ x , y ≠∅}
2
x , y∈U
mit
∑ ≡∨ - Verknüpfung / ∏ ≡∧ - Verknüpfung
19 / 45
20. Reduktion der Attribute
U/B Headache Muscle pain Temperature
{ p1 } no yes high
{ p2, p5 } yes no high
{ p3 } yes yes very high
{ p4 } no yes normal
{ p6 } no yes very high
Set 1 Set 2 Set 3 Set 4 Set 5
Set 1
Set 2 H, M
Set 3 H, T M, T
Set 4 T H, M, T H, T
Set 5 T H, M, T H T
20 / 45
21. Reduktion der Attribute
Set 1 Set 2 Set 3 Set 4 Set 5
Set 1
Set 2 H, M
Set 3 H, T M, T
Set 4 T H, M, T H, T
Set 5 T H, M, T H T
f B= H M × H T ×T ×T × M T × H M T
× H M T × H T ×H ×T
Nach der Anwendung des Absorptionsgesetzes:
f B= H M × H T ×T × M T × H M T × H =H ×T
→ f B=H ∧T
21 / 45
22. Reduktion der Attribute
f B= H M × H T ×T × M T × H M T × H =H ×T
→ f B=H ∧T
U/R Headache Temperature
{ p1 } no high
{ p2, p5 } yes high
{ p3 } yes very high
{ p4 } no normal
{ p6 } no very high
22 / 45
23. Reduktion der Attributwerte
U/R Headache Temperature
{ p1 } no high
{ p2, p5 } yes high
{ p3 } yes very high
{ p4 } no normal
{ p6 } no very high
- eine weitere Vereinfachung der Daten ist möglich
→ überflüssige Attributwerte können eliminiert werden
→ wenn sie nicht zur Unterscheidung zweier Objekte notwendig
sind, die unterschiedlichen Äquivalenzklassen angehören
23 / 45
24. Reduktion der Attributwerte
U/R Headache Temperature
{ p1 } no high
{ p2, p5 } yes high
{ p3 } yes very high
{ p4 } no normal
{ p6 } no very high
- ein Attributwert von a ∈ B ist verzichtbar bezüglich x ∈U ,
a
wenn B x=B x mit B a= B−{a }
→ für jede Äquivalenzklasse wird
eine Unterscheidbarkeitsfunktion aufgestellt
24 / 45
25. Reduktion der Attributwerte
U/R Headache Temperature
{ p1 } no high
{ p2, p5 } yes high
{ p3 } yes very high
{ p4 } no normal
{ p6 } no very high
Set 1 Set 2 Set 3 Set 4 Set 5
Set 1 H H, T T T
Set 2 H T H, T H, T
Set 3 H, T T H, T H
Set 4 T H, T H, T T
Set 5 T H, T H T
25 / 45
26. Reduktion der Attributwerte
Set 1 Set 2 Set 3 Set 4 Set 5
Set 1 H H, T T T
Set 2 H T H, T H, T
Set 3 H, T T H, T H
Set 4 T H, T H, T T
Set 5 T H, T H T
f 1 B=H × H T ×T ×T =H ×T
f 2 B=H ×T × H T × H T = H ×T
3
f B= H T ×T × H T ×H =H ×T
f 4 B=T × H T × H T ×T =T
f 5 B=T × H T ×H ×T =H ×T
26 / 45
27. Reduktion der Attributwerte
f 1 B=H × H T ×T ×T =H ×T
f 2 B=H ×T × H T × H T = H ×T
f 3 B= H T ×T × H T ×H =H ×T
f 4 B=T × H T × H T ×T =T
f 5 B=T × H T ×H ×T =H ×T
U/R Headache Temperature
{ p1 } no high
{ p2, p5 } yes high
{ p3 } yes very high
{ p4 } - normal
{ p6 } no very high
27 / 45
28. Qualität und Genauigkeit
Qualität der Annäherung:
card B∗ X
B X = ∗ mit card B∗ X ≠0
card B X
X = { p1, p2, p4 } und B = { Headache, Muscle pain, Temperature }
B∗ X = { p1 , p4}
∗
B X ={ p1 , p2 , p5 , p4 }
BN B X = { p1 , p2 , p5 , p4} − { p1 , p4} = { p2 , p5}
card B∗ X 2 1
B X = = =
card B X 4 2
∗
→ X ist grob
28 / 45
30. Entscheidungssystem
Ein Entscheidungsssystem S besteht aus:
- einer endlichen Menge von Objekten U ={x 1, x 2, ... , x n}
- einer endlichen Menge von Bedingungsattributen C={c 1, c 2, ... , cm }
- einer endlichen Menge von Entscheidungsattributen D={d 1, d 2, ... , d l }
so dass C∩ D=∅
→ S =U , C , D
Patient Headache Muscle pain Temperature Flu
p1 no yes high yes
p2 yes no high yes
p3 yes yes very high yes
p4 no yes normal no
p5 yes no high no
p6 no yes very high yes
30 / 45
31. Entscheidungssystem
Patient Headache Muscle pain Temperature Flu
p1 no yes high yes
p2 yes no high yes
p3 yes yes very high yes
p4 no yes normal no
p5 yes no high no
p6 no yes very high yes
Entscheidungsregel für p2:
if (Headache, yes) and (Muscle-pain, no) and (Temperature, high) then (Flu, yes)
Entscheidungsregel für p5:
if (Headache, yes) and (Muscle-pain, no) and (Temperature, high) then (Flu, no)
→ p2 und p5 sind inkonsistent
→ das Entscheidungssystem ist inkonsistent
31 / 45
32. Abhängigkeiten zwischen Attributen
Konsistenzfaktor:
card POS C D
C , D =
card U
mit
POS C D = ∪ X ∈U / I D
C ∗ X
Anzahl der konsistenten Regeln
→ Anzahl der konsistenten und inkonsistenten Regeln
32 / 45
33. Abhängigkeiten zwischen Attributen
Patient Headache Muscle pain Temperature Flu
p1 no yes high yes
p2 yes no high yes
p3 yes yes very high yes
p4 no yes normal no
p5 yes no high no
p6 no yes very high yes
Anzahl der konsistenten Regeln
→ Anzahl der konsistenten und inkonsistenten Regeln
- in unserem Entscheidungssystem:
für {Headache , Muscle− pain , Temperature}⇒ {Flu} : C , D=4/6
für {Temperature}⇒{Flu } : C , D=3/6=1/2
für {Headache}⇒ {Flu} : C , D=0
für {Muscle− pain}⇒ {Flu} : C , D=0
33 / 45
34. Reduktion der Attribute
Patient Headache Muscle pain Temperature Flu
p1 no yes high yes
p2 yes no high yes
p3 yes yes very high yes
p4 no yes normal no
p5 yes no high no
p6 no yes very high yes
→ zwei Äquivalenzklassen bezüglich Flu
{ p1 , p2 , p3 , p6 } und { p4 , p5 }
→ Unterscheidung von Objekten nur aus verschiedenen
Äquivalenzklassen
p1 p2 p3 p4 p5 p6
p1 - - - T H, M -
p2 - - - H, M, T - -
p3 - - - H, T M, T -
p4 T H, M, T H, T - - T
p5 H, M - M, T - - H, M, T
p6 - - - T H, M, T -
34 / 45
35. Reduktion der Attribute
p1 p2 p3 p4 p5 p6
p1 - - - T H, M -
p2 - - - H, M, T - -
p3 - - - H, T M, T -
p4 T H, M, T H, T - - T
p5 H, M - M, T - - H, M, T
p6 - - - T H, M, T -
f D C =T × H M × H M T × H T
× M T ×T × H M T = H M ×T = H ×T M ×T
→ zwei Redukte
1. Redukt: H ∧T
2. Redukt: M ∧T
35 / 45
36. Reduktion der Attribute
f D C =T × H M × H M T × H T
× M T ×T × H M T = H M ×T = H ×T M ×T
Patient Headache Temperature Flu
p1 no high yes
p2 yes high yes
p3 yes very high yes
p4 no normal no
p5 yes high no
p6 no very high yes
Patient Muscle-pain Temperature Flu
p1 yes high yes
p2 no high yes
p3 yes very high yes
p4 yes normal no
p5 no high no
p6 yes very high yes
36 / 45
37. Reduktion der Attributwerte
Patient Headache Temperature Flu
p1 no high yes
p2 yes high yes
p3 yes very high yes
p4 no normal no
p5 yes high no
p6 no very high yes
→ zwei Äquivalenzklassen bezüglich Flu
{ p1 , p2 , p3 , p6 } und { p4 , p5 }
→ Unterscheidung von Objekten nur aus verschiedenen
Äquivalenzklassen
p1 p2 p3 p4 p5 p6
p1 – – – T H –
p2 – – – H, T – –
p3 – – – H, T T –
p4 T H, T H, T – – T
p5 H – T – – H, T
p6 – – – T H, T –
37 / 45
38. Reduktion der Attributwerte
p1 p2 p3 p4 p5 p6
p1 – – – T H –
p2 – – – H, T – –
p3 – – – H, T T –
p4 T H, T H, T – – T
p5 H – T – – H, T
p6 – – – T H, T –
1
f D C =T ×H
f 2 C =H T
D
3
f D C = H T ×T =T
f 4 C =T × H T × H T ×T =T
D
f 5 C =H ×T × H T =H ×T
D
6
f D C =T × H T =T
38 / 45
39. Reduktion der Attributwerte
f 1 C =T ×H
D
2
f D C =H T
f 3 C = H T ×T =T
D
f 4 C =T × H T × H T ×T =T
D
5
f D C =H ×T × H T =H ×T
f 6 C =T × H T =T
D
Patient Headache Temperature Flu
p1 no high yes
p2 yes high yes
p3 – very high yes
p4 – normal no
p5 yes high no
p6 – very high yes
39 / 45
40. Reduktion der Attributwerte
Patient Muscle-pain Temperature Flu
p1 yes high yes
p2 no high yes
p3 yes very high yes
p4 yes normal no
p5 no high no
p6 yes very high yes
Patient Muscle-pain Temperature Flu
p1 yes high yes
p2 no high yes
p3 – very high yes
p4 – normal no
p5 no high no
p6 – very high yes
40 / 45
41. Entscheidungsregeln
Patient Headache Temperature Flu
p1 no high yes
p2 yes high yes
p3 – very high yes
p4 – normal no
p5 yes high no
p6 – very high yes
if (Headache, no) and (Temperature, high) then (Flu, yes)
if (Headache, yes) and (Temperature, high) then (Flu, yes)
if (Temperature, very high) then (Flu, yes)
if (Temperature, normal) then (Flu, no)
if (Headache, yes) and (Temperature, high) then (Flu, no)
if (Temperature, very high) then (Flu, yes)
41 / 45
42. Entscheidungsregeln
Patient Muscle-pain Temperature Flu
p1 yes high yes
p2 no high yes
p3 – very high yes
p4 – normal no
p5 no high no
p6 – very high yes
if (Muscle-pain, yes) and (Temperature, high) then (Flu, yes)
if (Muscle-pain, no) and (Temperature, high) then (Flu, yes)
if (Temperature, very high) then (Flu, yes)
if (Temperature, normal) then (Flu, no)
if (Muscle-pain, no) and (Temperature, high) then (Flu, no)
if (Temperature, very high) then (Flu, yes)
42 / 45
43. Entscheidungsregeln
Klassifizierung neuer Objekte:
- das neue Objekt entspricht genau einer deterministischen Entscheidungsregel
- das neue Objekt entspricht genau einer nicht-deterministischen Entscheidungsregel
-das neue Objekt entspricht keiner geeigneten Entscheidungsregel
-das neue Objekt entspricht mehreren Entscheidungsregeln
→ Entscheidungsfindung mittels des sog. Decision Makers
43 / 45
44. Fazit
Was haben wir gesehen:
- wie ein regelbasiertes Modell mittels der Rough-Set-Theorie erstellt werden kann
- wie Untermengen des Universums approximiert werden können
- wie Attribute und Attributwerte eliminiert werden können
- wie Entscheidungsregeln hergeleitet und angewendet werden können
44 / 45