Bayesian Network Classifiers
Nir Friedman Dan Geiger
Moises Goldszmidt
קירוב פונקצית התפלגות ע"י עץ
בשבוע שעבר ראינו כיצד לקרב פונקצית • ע"י רשת בייסיאנית שהיא עץ.Pהתפלגות
לשם כך מחשבים את לכל הזוגות .–מוצאים עץ פורש מקסימלי עבור הגרף המלא, –
כשמשקל הקשת שווה ל- .
2
X1
X3 X4
X2
P(X2|X1)
P(X4|X3)
P(X3|X1)
( , )i jI X X,i jX X
( , )i jX X( , )i jI X X
TANקירוב פונקצית התפלגות ע"י
Pהיום נראה כיצד לקרב פונקצית התפלגות •.TANע"י רשת בייסיאנית שהיא
.Xi,Xj לכל הזוגות I(Xi,Xj|C)לשם כך מחשבים את –
מוצאים עץ פורש מקסימלי עבור הגרף המלא, –.I(Xi,Xj|C)) שווה ל-Xi,Xjכשמשקל הקשת (
3
X1
X3 X4
X2
P(X2|X1)
P(X4|X3)
P(X3|X1)C
P(X2|X1,C)
P(X4|X3,C)
P(X3|X1,C)
קביעת אופיו של גידול -Classificationדוגמה לבעיית
4
נניח שברצוננו לקבוע את אופיו של גידול •(שפיר/ממאיר), מתוך סט של תכונות שיש לנו
עדויות לגביהן (גודל, צורה,...).
זוהי בעיית קלאסיפיקציה.•
גודל
צורה
גרורות
אופי הגידול
Naïve Bayesian Classifier
, כל יתר classהנחה: בהינתן ה-•הקודקודים בלתי תלויים.
יתרון: פשוט, סיבוכיות חישוב פולינומית.–
על אף פשטותו, מודל זה בעל שימוש רחב –היקף, עד היום.
5
Class
A1 A2 A3 An
1 1( , ,..., ) ( ) ( | ) ( | )n nP C A A P C P A C P A C
1* arg max ( , ,..., )c nc P c a a
Naïve Bayesian Classifierהמשך -
-ים Ai הנחת האי-תלות המותנית בין ה-חסרון:•אינה מציאותית.
לדוגמה, כשבנק רוצה להעריך את מידת •הסיכון שבנתינת הלוואה ללקוח, התעלמות
והכנסה גיל, רמת השכלהמהקורלציות בין
פוגעת בתוצאות החיזוי.
6
loan risk
ageeducation
level income
Tree Augmented Naïveשיפור: Bayes
סוגים:2הקשתות ברשת הן מ-•
–ClassAi-הקשתות שהיו ב) NB.(
, שיחד מהוות עץ (העץ לא AiAjהקשתות –).Classכולל את קודקוד ה-
7
A2 AN-2 AN-1 ANA1 A3
Class
…
הקשתות האדומות
נקראותaugmenting
edges
- הכנהTANאלגוריתם לבניית
בזכות מבנה העץ שמשרות הקשתות • TANהאדומות, ניתן לחשב את מודל ה-
המתאים באופן יעיל.
מדד חשוב:•
conditional mutual information
8
A2 AN-2 AN-1 ANA1 A3
Class
…
, ,
( , | )( , | ) ( , , ) log
( | ) ( | )Px y z
P x y zI X Y Z P x y z
P x z P y z
TANאלגוריתם לבניית
מחשבים עבור כל זוג תכונות, 1..i≠jכך ש-
,A1בונים גרף מלא בו הקודקודים הם התכונות 2.…,An) ומשקל הקשת ,Ai,Aj. = (
.maximum weighted spanning treeמחשבים 3.
בוחרים שורש ומכוונים את יתר הקשתות כך 4.שהגרף שיווצר יהיה עץ.
ע"י הוספת TANמשלימים את הגרף ל-5..i לכל CAiהקשתות
9
ˆ ( , | )D
i jPI A A C
ˆ ( , | )D
i jPI A A C
A1 A2
A3 A4
10
7
5531
10
7
5
A1
A3 A4
A2
A1
A3 A4
A2
C
)Theorem 2משפט (
, BT שנסמנו TAN מחזיר TANהאלגוריתם לבניית 1.. log Likelihood(BT|D)אשר ממקסם את ה-
סיבוכיות הזמן של האלגוריתם שווה ל-2.
O((#attributes)2 ∙ |training set|).
.Ai,Aj - O(n2∙N)שלב החישוב לכל 1.
.O(n2logn)שלב מציאת העץ הפורש – 2.
.N>lognבד"כ, 3.
10
ˆ ( , | )D
i jPI A A C
TAN ו-NBהשוואה בין
11
תוצאות TANל-טובות יותר
בהשוואה Naïveל-
Bayes.
12
C, וערכו של a1,a2,…,anנניח שבידינו דגימות •לא ידוע עבורן.
incomplete כשיש TANאיך נבנה data?
1arg max ( | ,..., )C nP C A A
דוגמה הבא:dataנתון ה-•
עלינו להשלים את המידע החסר.•
נשתמש בסכימה שראינו קודם.•
13
A1 A2 A3 A4 C
1 0 1 0 ?
0 0 0 1 ?
1 1 1 0 ?
1 1 0 0 ?
0 0 0 1 ?
התחלתי:TANמבנה •
טבלאות התחלתיות: •
14
c=0 c=1
P(c) 0.5 0.5
c=0,a1=0 c=0,a1=1 c=1,a1=0 c=1,a1=1
P(a2=1|c,a1) 0.1 0.3 0.2 0.4
c=0 c=1
P(a1=1|c) 0.3 0.5
c=0,a2=0 c=0,a2=1 c=1,a2=0 c=1,a2=1
P(a3=1|c,a2) 0.7 0.3 0.5 0.1
c=0,a3=0 c=0,a3=1 c=1,a3=0 c=1,a3=1
P(a4=1|c,a3) 0.5 0.2 0.2 0.2
A1
A4 A3
A2
C
full dataהשלמה ל-
לדגימה a1,a2,…,anנשלים כל דגימה חלקית •.a1,a2,…,an,cמלאה
תיעשה עפ"י הנוסחה:c מציאת •
15
1* arg max ( | ,..., )c nc P c a aA1 A2 A3 A4 C
1 0 1 0 0
0 0 0 1 0
1 1 1 0 1
1 1 0 0 1
0 0 0 1 0
חדשTANחישוב מבנה
16
A1 A2
A4 A3
0.34945
0.36008
0.34631
0.34566
0.34571
0.34566
, ,
( , | )( , | ) ( , , ) log
( | ) ( | )i j
i jP i j i j
a a c i j
P a a cI A A C P a a c
P a c P a c
C
חישוב טבלאות הסתברות חדשות
ואפשר לחזור על התהליך, עד שהשינוי נהיה מזערי.•
17
c=0 c=1
P(c) 0.524 0.476
c=0,a1=0 c=0,a1=1 c=1,a1=0 c=1,a1=1
P(a2=1|c,a1) 0.33 0.4 0.5 0.66
c=0 c=1
P(a1=1|c) 0.45 0.6
c=0,a2=0 c=0,a2=1 c=1,a2=0 c=1,a2=1
P(a3=1|c,a2) 0.57 0.5 0.5 0.5
c=0,a3=0 c=0,a3=1 c=1,a3=0 c=1,a3=1
P(a4=1|c,a3) 0.6 0.33 0.6 0.4
A1 A2 A3 A4 C
1 0 1 0 0
0 0 0 1 0
1 1 1 0 1
1 1 0 0 1
0 0 0 1 0
conditional mutual informationהקשר בין -Kullback–Leibler divergenceל
18
( )( , ) ( ) log
( )KL TANx TAN
P xD P P P x
P x
DKLהגדרת
( ) log ( ) ( ) log ( )TANx x
P x P x P x P x
( ) ( ) log ( )TANx
H X P x P x הגדרת אנטרופיה
תכונות לוגריתם
19
( ) ( ) log ( )TANx
H X P x P x
כלל השרשרת
1
( ) ( ) log ( | ( ))n
TAN i ix i
H X P x P x parents x
1
( ) ( ) log( ( | ( )))n
TAN i ix i
H X P x P x parents x
תכונות לוגריתם
2
( ) ( ) log( ( )) log( ( | , ))n
TAN TAN i jx i
H X P x P c P x x c
מבנה TANה- Xj הוא
ההורה השני Xiשל
טענת עזר
20
1 2
1 2
i j
1 2
i j
1 2, ,...,
1 2, , ,...,
x ,x לא כולל
1 2, , ,...,
x ,x לא כולל
,
( ) ( , ) ( , ,..., ) ( , )
( , ,..., ) ( , )
( , ) ( , ,..., )
( , ) ( , )
n
i j n
i j n
i j
i j n i jx x x x
n i jx x x x x
i j nx x x x x
i j i jx x
P x f x x P x x x f x x
P x x x f x x
f x x P x x x
f x x P x x
21
2
( ) ( ) log( ( )) log( ( | , ))n
TAN TAN i jx i
H X P x P c P x x c
2 , ,
( ) ( ) log( ( )) ( , , ) log( ( | , ))i j
n
TAN i j TAN i jc i x x c
H X P c P c P x x c P x x c
פתיחת סוגריים
2
( ) ( ) log( ( )) ( ) log( ( | , ))n
TAN TAN i jx i x
H X P x P c P x P x x c
טענת העזר
2 ,
( ) ( ) log( ( )) ( , ) ( | , ) log( ( | , ))j i
n
TAN j i j TAN i jc i x c x
H X P c P c P x c P x x c P x x c
, הביטוי מקבל ערך Gibbsעפ"י אי-שיוויון מקסימלי
. P’(x)=P(x)כאשר |PTAN(xi|xj,c)=P(xi ו-PTAN(c)=P(c)לפיכך, מקסימום יתקבל עבור
xj,c).
( ) log '( )x
P x P x
22
2 , ,
( ) ( ) log( ( )) ( , , ) log( ( | , ))i j
n
TAN i j TAN i jc i x x c
H X P c P c P x x c P x x c
2 , ,
( ) ( ) log( ( )) ( , , ) log( ( | , ))i j
n
i j i jc i x x c
H X P c P c P x x c P x x c
PTAN(c)=P(c) PTAN(xi|xj,c)=P(xi|xj,c)
2 , ,
( ) ( ) ( , , ) log( ( | , ))i j
n
i j i ji x x c
H X H C P x x c P x x c
הגדרת אנטרופיה
2 , ,
( | ) ( | )( ) ( ) ( , , ) log ( | , )
( | ) ( | )i j
nj i
i j i ji x x c j i
P x c P x cH X H C P x x c P x x c
P x c P x c
2 , ,
( , | )( ) ( ) ( , , ) log log ( | )
( | ) ( | )i j
ni j
i j ii x x c i j
P x x cH X H C P x x c P x c
P x c P x c
מניפולציה
23
2 , ,
( , | )( ) ( ) ( , , ) log log ( | )
( | ) ( | )i j
ni j
i j ii x x c i j
P x x cH X H C P x x c P x c
P x c P x c
2 , , 2 , ,
( , | )( ) ( ) ( , , ) log ( , , ) log ( | )
( | ) ( | )i j i j
n ni j
i j i j ii x x c i x x ci j
P x x cH X H C P x x c P x x c P x c
P x c P x c
2 2 ,
( ) ( ) ( , | ) ( , ) log ( | )i
n n
P i j i ii i x c
H X H C I X X C P x c P x c
2 2
( ) ( ) ( , | ) ( ) ( | ) log ( | )i
n n
P i j i ii i c x
H X H C I X X C P c P x c P x c
+ טענת Iהגדרת
העזר
2 2
( ) ( ) ( , | ) ( | )n n
P i j ii i
H X H C I X X C H X C
כדי למזער את , יש למקסם את .
( , )KL TAND P P2
( , | )n
P i ji
I X X C
conditional mutual informationהקשר בין likelihoodלפונקצית ה-
במאמר מראים ש-•
24
ˆ ˆ ( ), ( ) 0
log ( | ) ( , ) ( , | ) constant termD D
T i i iP Pi i i
L B Data N I A C I A A C
לא מושפע מבחירת ההורים
Aiשל
יש למקסם את הביטוי הזה
מקסימיזציה של שקולה
.likelihoodלמקסימיזציה של פונקצית ה-
ˆ ( ), ( ) 0
( , | )D
i iPi i
I A A C
סיכום
25
•TAN מהווה הרחבה טבעית של Naïve Bayes.
לשיטה זו תוצאות טובות יותר בהשוואה •, ויחד עם זאת היא משמרת Naïve Bayesל-
את הפשטות החישובית שמאפיינת את שיטת .NBה-
טובים גם בהשוואה לשיטות TANביצועי • בתחום machine learningמובילות בעולם ה-
.C4.5, כמו לדוגמה classificationה-