You are on page 1of 5

‫אומד בייס אופטימלי וניתוח הבחנה לינארית )‪(LDA‬‬

‫פרק זה מבוסס על פרקים ‪ . - .‬בספר ‪ ,Understanding Machine Learning‬ונלמד במסגרת‬


‫תרגיל בית ‪ .‬הוא איננו חלק מן ההרצאות או התרגולים‪.‬‬

‫‪1‬‬

‫מסווג בייס האופטימלי‬


‫עד ‪1.1‬‬

‫נתבונן בבעיית סיווג על ‪ 𝒳 = ℝ‬עם }‪ .𝒴 = {0,1‬דרך אחת להשיג מידע מתוך מרחב זה היא על־‬
‫ידי לקיחת ערכיהם של סדרת משתנים מקריים בלתי־תלויים ושווי־התפלגות‪ ,‬בעלי התפלגות 𝒟 מעל‬
‫𝒴 × 𝒳 )אנו לוקחים דגימה ותווית גם יחד(‪.‬‬

‫הגדרה ‪) 1.1.1‬שגיאת מיסקלסיפיקציה מעל התפלגות הסתברות 𝓓(‪ .‬עבור התפלגות הסתברות 𝒟‬
‫מעל 𝒴 × 𝒳 )כלליים(‪ ,‬מגדירים את השגיאה האמיתית )‪ (true error‬של כלל התאמה כלשהו → 𝒳 ‪ℎ:‬‬
‫𝒴 בתור ההסתברות של ‪ ℎ‬ליצור שגיאה‪:‬‬
‫≔ )‪𝐿 (ℎ‬‬ ‫‪ℙ‬‬ ‫‪[ℎ(𝑥) ≠ 𝑦] ≕ 𝒟({ (𝑥, 𝑦) ∣ ℎ(𝑥) ≠ 𝑦 }).‬‬
‫(‬ ‫∼)‬

‫הגדרה ‪) 1.1.2‬סיכון אמפירי מנורמל(‪ .‬הסיכון האמפירי המנורמל )בספרות‪ ,‬לרוב כך מגדירים את‬
‫הסיכון האמפירי בעצמו( מוגדר על אוסף = }) 𝑦 ‪ 𝑆 = {(𝑥⃗ ,‬ופונקציה 𝒴 → 𝒳 ‪ ℎ:‬כך‪:‬‬
‫‪1‬‬ ‫|} 𝑦 ≠ ) 𝑥(‪|{𝑖 ∈ [𝑚] ∣ ℎ‬‬
‫≔ )‪𝐿 (ℎ‬‬ ‫𝟙‬ ‫(‬ ‫≠)‬ ‫=‬ ‫‪.‬‬
‫𝑚‬ ‫=‬
‫𝑚‬

‫בהינתן 𝑆‪ ,‬ניתן לחשב את )‪ 𝐿 (ℎ‬לכל פונקציה }‪ .ℎ: 𝒳 → {±1‬נבחין ש־‬


‫𝐿 = )‪𝐿 (ℎ‬‬ ‫∼‬ ‫‪( ) (ℎ).‬‬

‫הגדרה ‪) 1.1.3‬אומד‪/‬מסווג ָבּייֶסיאני אופטימלי(‪ .‬בהינתן התפלגות הסתברות 𝒟 )משותפת( מעל‬


‫}‪ ,𝒳 × {0,1‬נגדיר את מסווג בייס האופטימלי )‪ (Bayes optimal classifier‬כך‪:‬‬
‫‪⎧0‬‬ ‫‪1‬‬
‫‪ℙ(𝑦 = 1|𝑥⃗) ≥ ,‬‬
‫𝒳 ∈ ⃗𝑥∀‬ ‫≔ )⃗𝑥( ‪ℎ‬‬ ‫‪2‬‬
‫⎨‬
‫‪⎩1‬‬ ‫‪else.‬‬

‫טענה ‪) 1.1.4‬אופטימליות מסווג בייס האופטימלי(‪ .‬כשמו כן הוא‪ ,‬מסווג בייס הוא המסווג‬
‫האופטימלי‪ ,‬במובן שלא קיים מסווג אחר }‪ 𝑔: 𝒳 → {0,1‬עם שגיאה נמוכה יותר; הווה אומר‪,‬‬
‫)𝑔( 𝐿 ≤ ) 𝑓( 𝐿‪ ,‬או‪ ,‬באופן שקול )את השקילות נוכיח מייד(‪ ,‬לכל 𝒳 ∈ ⃗𝑥‪ ℎ (𝑥⃗) ,‬מספק‬
‫מקסימום להסתברות‬
‫‪ℎ (𝑥⃗) = argmax ℙ(𝑥⃗|𝑦)ℙ(𝑦) = argmax ℙ(𝑦|𝑥⃗).‬‬
‫{∈‬ ‫}‬ ‫{∈‬ ‫}‬
‫הוכחה‪ .‬לשם הפורמליזם‪ ,‬ננסח את התשובה באמצעות המשתנים המקריים 𝒟 ∼ 𝑌 ‪𝑋 ,‬‬

‫המתפלגים לפי התפלגות ההסתברות המשותפת 𝒟 )הכוונה ב־)⃗𝑥(‪ ℙ‬היא ל־ ⃗𝑥 = 𝑋 ‪ .(ℙ‬הסיכוי של‬
‫פונקציה }‪ 𝑔: 𝒳 → {0,1‬לטעות על ערך ⃗𝑥 ספציפי נתון על־ידי‬
‫⃗𝑥 = 𝑋 )⃗𝑥(𝑔 ≠ 𝑌 ‪𝜙 (𝑥⃗) = ℙ‬‬

‫⃗𝑥 = 𝑋 ‪ℙ 𝑌 ≠ 0‬‬ ‫‪𝑔(𝑥⃗) = 0,‬‬ ‫⃗𝑥 = 𝑋 ‪ℙ 𝑌 = 1‬‬ ‫‪  𝑔(𝑥⃗) = 0,‬‬


‫=‬ ‫=‬
‫⃗𝑥 = 𝑋 ‪ℙ 𝑌 ≠ 1‬‬ ‫‪𝑔(𝑥⃗) = 1.‬‬ ‫⃗𝑥 = 𝑋 ‪1 − ℙ 𝑌 = 1‬‬ ‫‪𝑔(𝑥⃗) = 1.‬‬

‫כאשר ההסתברויות הן לפי ההתפלגות 𝒟‪.‬‬


‫‪ argmax‬שקולה למציאת הערך של )⃗𝑥(𝑔‬ ‫{∈‬ ‫}‬ ‫נטען כי מציאת מקסימום עבור )𝑦(‪ℙ(𝑥⃗|𝑦)ℙ‬‬

‫שיספק מינימום ל־)⃗𝑥( 𝜙‪ .‬מנוסחת בייס‪,‬‬

‫‪ℙ 𝑋 = 𝑥⃗ 𝑌 = 𝑦 ℙ(𝑌 = 𝑦) = ℙ 𝑌 = 𝑦 𝑋 = 𝑥⃗ ℙ 𝑋 = 𝑥 ,‬‬


‫ולכן‬
‫𝑥 = 𝑋 ‪argmax ℙ 𝑋 = 𝑥⃗ 𝑌 = 𝑦 ℙ(𝑌 = 𝑦) = argmax ℙ 𝑌 = 𝑦 𝑋 = 𝑥⃗ ℙ‬‬
‫{∈‬ ‫}‬ ‫{∈‬ ‫}‬

‫‪= argmax ℙ 𝑌 = 𝑦 𝑋 = 𝑥⃗ .‬‬


‫{∈‬ ‫}‬

‫המעבר האחרון נובע מכך ש־ 𝑥 = 𝑋 ‪ ℙ‬הוא גודל אי־שלילי קבוע שאיננו תלוי בבחירת 𝑦‪ .‬אז‪:‬‬

‫⃗𝑥 = 𝑋 𝑦 = 𝑌 ‪argmax ℙ 𝑋 = 𝑥⃗ 𝑌 = 𝑦 ℙ(𝑌 = 𝑦) = argmax ℙ‬‬


‫{∈‬ ‫}‬ ‫{∈‬ ‫}‬

‫⃗𝑥 = 𝑋 𝑦 = 𝑌 ‪= argmin 1 − ℙ‬‬


‫{∈‬ ‫}‬

‫⃗𝑥 = 𝑋 𝑦 ≠ 𝑌 ‪= argmin ℙ‬‬


‫{∈‬ ‫}‬

‫‪= argmin 𝜙 (𝑥⃗),‬‬


‫{∈) ( =‬ ‫}‬

‫כאשר המעבר האחרון נובע מהגדרת )⃗𝑥( 𝜙‪ .‬עתה נבחן את שתי האפשרויות‪ :‬במקרה הראשון‪ ,‬אם‬
‫‪ ,ℙ(𝑌 = 1|𝑥⃗) < 1/2‬אז )⃗𝑥|‪ ,ℙ(𝑌 = 1|𝑥⃗) < 1 − ℙ(𝑌 = 1‬ולכן ‪ 𝑔(𝑥⃗) ≔ 0‬יספק מינימום לשגיאה‬
‫)⃗𝑥( 𝜙‪ .‬אחרת‪ ,‬אם ‪ ℙ(𝑌 = 1|𝑥⃗) ≥ 1/2‬ו־)⃗𝑥|‪ ,ℙ(𝑌 = 1|𝑥⃗) ≥ 1 − ℙ(𝑌 = 1‬בחירה של ‪𝑔(𝑥⃗) ≔ 1‬‬
‫תמזער את השגיאה )⃗𝑥( 𝜙‪ .‬נבחין כי הבחירה הזו של )⃗𝑥(𝑔 שקולה לחלוטין להגדרת )⃗𝑥( ‪ ,ℎ‬ובזאת‬
‫הוכחנו ש־)⃗𝑥( ‪ ℎ‬מספקת מקסימום לביטוי המקורי‪ ,‬וכן שהיא ממזערת את השגיאה )‪) 𝐿 (ℎ‬משום‬
‫■‬ ‫שהיא ממזערת אותה לכל ⃗𝑥(‪.‬‬

‫מסווג בייס הנאיבי‬


‫‪1.2‬‬

‫נבחן‪ ,‬למשל‪ ,‬בעיית סיווג 𝒴 → 𝒳 עם }‪ .𝑥⃗ = (𝑥 , … , 𝑥 ) ,𝒳 = {0,1‬ניזכר כי טענה ‪. .‬‬


‫קובעת‪ ,‬בין היתר‪ ,‬שמסווג בייס האופטימלי הוא‬
‫‪ℎ (𝑥⃗) = argmax ℙ(𝑦|𝑥⃗).‬‬
‫{∈‬ ‫}‬

‫על־מנת לתאר את פונקציית ההסתברות )⃗𝑥|𝑦(‪ ,ℙ‬אנו צריכים ‪ 2‬פרמטרים שמתאימים ל־)⃗𝑥|‪ℙ(𝑦 = 1‬‬
‫עם ערך ספציפי של }‪ .𝑥⃗ ∈ {0,1‬עולה כי מספר הדגימות שאנו צריכים עולה אקספוננציאלית עם‬
‫מספר המאפיינים‪ .‬באמצעות הנחה מקלה‪ ,‬נוכל לצמצם את מספר הערכים שעלינו לחשב‪:‬‬

‫הגדרה ‪) 1.2.1‬מסווג בייסיאני נאיבי(‪ .‬בגישה הנאיבית‪ ,‬אנו מניחים את ההנחה המקלה‬
‫)והנאיבית( שהמאפיינים בלתי־תלויים זה בזה; כלומר‪,‬‬

‫= )𝑦|⃗𝑥(‪ℙ‬‬ ‫‪ℙ(𝑥 |𝑦).‬‬


‫=‬

‫תחת הנחה זו‪ ,‬באמצעות כלל בייס‪ ,‬נוכל לפשט את מסווג בייס האופטימלי‪:‬‬

‫)𝑦(‪ℎ (𝑥⃗) = argmax ℙ(𝑦|𝑥⃗) = argmax ℙ‬‬ ‫‪ℙ(𝑥 |𝑦).‬‬


‫{∈‬ ‫}‬ ‫{∈‬ ‫}‬ ‫=‬

‫עתה אנו צריכים להעריך רק ‪ 2𝑑 + 1‬פרמטרים‪ .‬כאשר אנו משתמשים בעקרון הנראות המרבי לשם‬
‫הערכת הפרמטרים הללו‪ ,‬אנו מקבלים מסווג בייסיאני נאיבי )‪.(naive Bayes classifier‬‬

‫ניתוח הבחנה לינארית‬


‫‪1.3‬‬

‫הגדרה ‪ .(LDA) 1.3.1‬נניח בעיית למידה 𝒴 → 𝒳 עם קבוצת תגיות }‪ 𝒴 = {0,1‬ווקטור = ⃗𝑥‬


‫‪ .(𝑥 , … , 𝑥 ) ∈ 𝒳 = ℝ‬ההנחות במודל ניתוח הבחנה לינארית )‪,linear discriminant analysis‬‬
‫בקיצור ‪ (LDA‬הן‪:‬‬
‫נניח שההסתברות המותנית היא גאוסית עם וקטורי תוחלות ‪) 𝜇⃗ , 𝜇⃗ ∈ ℝ‬התלויים ב־‬ ‫‪‬‬
‫×‬
‫𝑓; יש‬ ‫|‬ ‫‪) Σ ∈ ℝ‬המשותפת לשתי ההתפלגויות‬ ‫}‪ ,(𝑦 ∈ {0,1‬ומטריצת שונויות‬
‫המחמירים שדורשים שמטריצה זו תהיה מדרגה מלאה( כך שצפיפות ההסתברות‬
‫המותנית היא‬
‫‪1‬‬ ‫‪1‬‬ ‫⊤‬
‫𝑓‬ ‫|‬ ‫=‬ ‫‪exp‬‬ ‫‪−‬‬ ‫⃗𝜇 ‪𝑥⃗ −‬‬ ‫⃗𝜇 ‪𝛴 − 𝑥⃗ −‬‬ ‫‪.‬‬
‫)‪(2𝜋) det(Σ‬‬ ‫‪2‬‬

‫לעיתים קרובות מניחים‪ ,‬אם כי זה לא הכרחי‪ ,‬ש־‪.ℙ(𝑦 = 1) = ℙ(𝑦 = 0) = 1/2‬‬ ‫‪‬‬

‫הגדרה ‪) 1.3.2‬לוגריתם יחסי הנראות(‪ .‬כבר דנו בסעיף שלעיתים נוח להתבונן בלוגריתם הנראות‪.‬‬
‫נגדיר את לוגריתם יחסי הנראות )‪ (log-likelihood ratio‬של איזושהי התפלגות מותנית )𝑦|⃗𝑥(‪ ,ℙ‬עם‬
‫}‪ 𝑦 ∈ {0,1‬ו־𝒳 ∈ ⃗𝑥 כללי‪ ,‬בתור‬
‫)‪ℙ(𝑦 = 1)ℙ(𝑥⃗|𝑦 = 1‬‬
‫‪ℓll-ratio (𝑥⃗) ≔ ln‬‬ ‫‪.‬‬
‫)‪ℙ(𝑦 = 0)ℙ(𝑥⃗|𝑦 = 0‬‬
‫טענה ‪) 1.3.3‬אומד בייסיאני נאיבי באמצעות לוגריתם יחסי הנראות(‪ .‬ניזכר מטענה כי מסווג‬
‫‪ .ℎ (𝑥⃗) = argmax‬אז ‪ ℎ (𝑥⃗) = 1‬אם ורק אם‬ ‫{∈‬ ‫}‬ ‫בייס האופטימלי נתון על־ידי )𝑦|⃗𝑥(‪ℙ(𝑦)ℙ‬‬

‫‪ℓll-ratio (𝑥⃗) > 0.‬‬


‫הוכחה‪ .‬מסווג בייס האופטימלי מנבא ‪ ℎ (𝑥⃗) = 1‬אם ורק אם ‪ 𝑦 = 1‬מספק מקסימום ל־‬
‫■‬ ‫)𝑦|⃗𝑥(‪ ,ℙ(𝑦)ℙ‬וזה שקול ל־)‪ ,ℙ(𝑦 = 1)ℙ(𝑥⃗|𝑦 = 1) > ℙ(𝑦 = 0)ℙ(𝑥⃗|𝑦 = 0‬קרי ‪.ℓll-ratio (𝑥⃗) > 0‬‬

‫דוגמה ‪) 1.3.4‬פונקציית ההבחנה הלינארית(‪ .‬במקרה של בעיית למידה מסוג ‪ ,LDA‬לוגריתם יחס‬
‫הנראות הוא‬
‫‪1‬‬ ‫‪1‬‬ ‫)‪ℙ(𝑦 = 1‬‬
‫‪ℓll-ratio (𝑥⃗) = (𝑥⃗ − 𝜇⃗ )⊤ Σ− (𝑥⃗ − 𝜇⃗ ) − (𝑥⃗ − 𝜇⃗ )⊤ Σ− (𝑥⃗ − 𝜇⃗ ) + ln‬‬ ‫‪.‬‬
‫‪2‬‬ ‫‪2‬‬ ‫)‪ℙ(𝑦 = 0‬‬
‫אנו יכולים לכתוב זאת מחדש כמכפלה 𝑏 ‪ ,⟨𝑤, 𝑥⃗⟩ +‬כאשר‬
‫‪1‬‬ ‫)‪ℙ(𝑦 = 1‬‬
‫‪𝑤 ≔ (𝜇⃗ − 𝜇⃗ )⊤ Σ− ,‬‬ ‫‪𝑏 ≔ (𝜇⃗⊤ Σ− 𝜇⃗ − 𝜇⃗⊤ Σ− 𝜇⃗ ) + ln‬‬ ‫‪.‬‬
‫‪2‬‬ ‫)‪ℙ(𝑦 = 0‬‬
‫במילים אחרות‪ ,‬אם נגדיר לכל }‪ 𝑦 ∈ {0,1‬את פונקציית ההבחנה הלינארית ) ‪linear discriminant‬‬
‫‪ (function‬הבאה‪:‬‬
‫‪1‬‬
‫‪𝛿 (𝑥⃗) ≔ 𝑥⃗⊤ Σ− 𝜇⃗ − 𝜇⃗⊤ Σ− 𝜇⃗ + ln ℙ(𝑦) ,‬‬
‫‪2‬‬
‫אז מטענה ‪ . .‬אפשר לראות שמקדם בייס האופטימלי ינבא‬
‫‪ℎ (𝑥⃗) = argmax 𝛿 (𝑥⃗) .‬‬
‫{∈‬ ‫}‬

‫נעיר כי האיבר האחרון מהווה סוג של גורם רגולריזציה‪ ,‬כלומר זהו איבר שנותן "ציון" ישירות ל־ 𝑦‪.‬‬
‫עם זאת‪ ,‬יותר קל לחשב את הווקטור 𝑤 והקבוע 𝑏 שלעיל ולחשב את הסיווג בדומה למסווג ‪ SVM‬או‬
‫⬢‬ ‫מסווג חצי־מרחב‪.‬‬

‫מסווגי הבחנה לינארית‬


‫בפועל‪ ,‬איננו יודעים מהם ⃗𝜇‪ Σ ,𝜇⃗ ,‬ו־)𝑦(‪ .ℙ‬על־מנת להפוך את הדיון לעיל למסווג‪ ,‬כלומר‬
‫להשתמש במציאת הפונקציה )⃗𝑥( 𝛿 המקסימלית מבין שתי האפשרויות עבור החיזוי‪ ,‬עלינו להעריך‬
‫את הגדלים הללו בהינתן המדגם = }) 𝑦 ‪ .{(𝑥⃗ ,‬את הממוצעים קל להבין כיצד לאמוד‪ :‬ניקח את‬
‫ממוצעי המדגם – מבין המידע המתויג ‪ ,𝑦 = 0‬נחשב את התוחלת ]‪ ,𝔼[𝑥⃗|𝑦 = 0‬ובדומה ל־‪ .𝑦 = 1‬גם‬
‫את ההסתברויות עבור )𝑦(‪ ℙ‬נוכל לקבל באמצעות הנתח היחסי של התוצאות‪ ,‬קרי )‪ ℙ(𝑦 = 1‬יוערך‬
‫כמספר הדגימות המתויגות ‪ 𝑦 = 1‬מתוך כלל הדגימות‪ .‬באשר למטריצת השונויות‪ ,‬ניתן להשתמש‬
‫באומד מטריצת השונויות שהגדרנו ב־‪ ;Error! Reference source not found.‬אולם‪ ,‬בהקשר זה‪,‬‬
‫נפוץ יותר להגדיר מטריצה חדשה‪:‬‬
‫הגדרה ‪) 1.3.5‬מטריצת פיזור(‪ .‬בהינתן 𝑚 דגימות של וקטורים 𝑑־ממדיים‪,𝑋 = (𝑥⃗ , … , 𝑥⃗ ) ,‬‬
‫= ⃗𝜇‪ ,‬מטריצת הפיזור‬ ‫כאשר הממוצע )וקטור התוחלת( של כל הווקטורים הללו הוא ⃗𝑥 = ∑‬
‫)‪ (scatter matrix‬היא המטריצה המוגדרת אי־שלילית הבאה‪:‬‬

‫≔𝑆‬ ‫= ⊤)⃗𝜇 ‪(𝑥⃗ − 𝜇⃗)(𝑥⃗ −‬‬ ‫⊤𝜇⃗𝜇𝑚 ‪𝑥⃗ 𝑥⃗⊤ −‬‬


‫‪⃗ ,‬‬
‫=‬ ‫=‬

‫כאשר המכפלה היא מכפלה חיצונית‪ .‬ניתן לבטא מטריצה זו גם באמצעות מטריצת המרכוז‪:𝐶 ,‬‬
‫‪𝑆 = 𝑋𝐶 𝑋 ⊤ ,‬‬
‫‪1‬‬
‫𝐶‬ ‫‪≔𝐼 −‬‬ ‫‪Ones ,‬‬
‫𝑚‬
‫כאשר הכוונה ב־ ‪ Ones‬היא למטריצה 𝑚 × 𝑚 שכל איבריה הם ‪.1‬‬

‫הערה ‪) 1.3.6‬אומד מטריצת השונויות באמצעות מטריצת פיזור(‪ .‬בהינתן 𝑚 דגימות‪ ,‬האומד‬
‫שמספק נראות מרבית עבור מטריצת השונויות הוא מטריצת הפיזור המנורמלת‪,‬‬
‫‪1‬‬
‫≔ ‪ΣML‬‬ ‫‪𝑆.‬‬
‫𝑚‬

‫הערה ‪) 1.3.7‬היבט נוסף על ‪ .(LDA‬המשמעות של מסווג ‪ LDA‬עמוקה יותר ממה שהבאנו בפרק זה‪.‬‬
‫תוכלו לקרוא על כך כאן‪ .https://sebastianraschka.com/Articles/2014_python_lda.html :‬גישה‬
‫דומה למסווג זה היא של מסווג ‪ ,principle component analysis) PCA‬ללא קשר ללמידת ‪ ,(PAC‬שבו‬
‫נעסוק בהמשך הקורס‪.‬‬

You might also like