הרצאה 8 - שיערוך פילוג בשיטות פרמטריות וסיווג גנרטיבי

PDF

מה נלמד היום

דוגמא

נניח שאנו רוצים לחזות האם אדם מסויים פרק את הכתף על פי הסימפטומים שלו. לשם כך נסתכל על המדגם הבא


פריקה כאב בכתף נפיחות סימנים כחולים נימול ביד נזלת
1 + + + + + -
2 + + + + - -
3 + + + - + -
4 + + + + - +
5 - - - - - -
6 - + - - - +
7 - - - + - -
8 - + - - - -

האם לאדם עם כל הסימפטומים יש פריקה של הכתף?

שיערוך נאיבי - חוסר תלות בין המשתנים

נניח שאנו רוצים לשערך צפיפות הסתברות של משתנה DD ממדי. שיטה מאד נאיבית (לא מתוחכמת) לפתור את הבעיה היא להתעלם מהקשר בין המשתנים השונים ולהניח שהם בלתי תלויים סטטיסטית. זאת אומרת ש:

px(x)=px1(x1)px2(x2)pxD(xD)=d=1Dpxd(xd)p_{\mathbf{x}}(\boldsymbol{x})= p_{\text{x}_1}(x_1) p_{\text{x}_2}(x_2) \dots p_{\text{x}_D}(x_D) =\prod_{d=1}^D p_{\text{x}_d}(x_d)
  • חיסרון: שהיא מגבילה מאד את הפילוגים שניתן ללמוד.

מסווג בייס נאיבי - Naïve Bayes Classification

תזכורת במשימות סיווג קיים xRD\mathbf{x}\in R^D ו-y{1,2,...,C}\text{y}\in\{1,2,...,C\}. בנוסף מוגדרת הסתברות משותפת P(x,y)P(\mathbf{x},\text{y}).

נוכל להשתמש בשערוך הנאיבי לפתרון בעיות סיווג.

נניח כי:

pxy(xy)=px1y(x1y)px2y(x2y)pxDy(xDy)=d=1Dpxdy(xdy)p_{\mathbf{x}|\text{y}}(\boldsymbol{x}|y)= p_{\text{x}_1|\text{y}}(x_1|y) p_{\text{x}_2|\text{y}}(x_2|y) \dots p_{\text{x}_D|\text{y}}(x_D|y) =\prod_{d=1}^D p_{\text{x}_d|\text{y}}(x_d|y)
  • זו כמובן הנחה מאוד פשטנית שאינה מתקיימת במציאות.
  • אנו לא נרצה להניח חוסר תלות בין x\mathbf{x} ל y\text{y}.

מסווג בייס נאיבי - Naïve Bayes Classification

החזאי אשר ממזער את הסיכוי לטעות יהיה:

y^=h(x)=argmaxy pyx(yx)=argmaxy pxy(xy)py(y)=argmaxy py(y)d=1Dpxdy(xdy)\begin{aligned} \hat{y}=h(\boldsymbol{x}) &=\underset{y}{\arg\max}\ p_{\text{y}|\boldsymbol{x}}(y|\boldsymbol{x})\\ &=\underset{y}{\arg\max}\ p_{\boldsymbol{x}|\text{y}}(\boldsymbol{x}|y)p_{\text{y}}(y)\\ &=\underset{y}{\arg\max}\ p_{\text{y}}(y)\prod_{d=1}^D p_{\text{x}_d|\text{y}}(x_d|y) \end{aligned}

מסווג בייס נאיבי - Naïve Bayes Classification


האיור מתוך, C.M. Bishop, Pattern Recognition and Machine Learning

דוגמא 1 - זיהוי פריקה של הכתף

תחת הנחת חוסר התלות נשערך בנפרד את ההסתברות המותנית של כל אחד מהרכיבים pxdy(xdy),xd{0,1}p_{\text{x}_d|\text{y}}(x_d|y), x_d\in\{0,1\}. לדוגמא:

pxpainy(xpain1)={44=1104=00p_{\text{x}_{\text{pain}}|\text{y}}(x_{\text{pain}}|1)=\begin{cases} \tfrac{4}{4}=1&1\\ \tfrac{0}{4}=0&0 \end{cases} pxpainy(xpain0)={24=0.5124=0.50p_{\text{x}_{\text{pain}}|\text{y}}(x_{\text{pain}}|0)=\begin{cases} \tfrac{2}{4}=0.5&1\\ \tfrac{2}{4}=0.5&0 \end{cases} pxswellingy(xswelling1)={44=1104=00p_{\text{x}_{\text{swelling}}|\text{y}}(x_{\text{swelling}}|1)=\begin{cases} \tfrac{4}{4}=1&1\\ \tfrac{0}{4}=0&0 \end{cases} pxswellingy(xswelling0)={04=0114=10p_{\text{x}_{\text{swelling}}|\text{y}}(x_{\text{swelling}}|0)=\begin{cases} \tfrac{0}{4}=0&1\\ \tfrac{1}{4}=1&0 \end{cases}

ובאופן דומה לשאר הרכיבים.

דוגמא 1 - זיהוי פריקה של הכתף

החיזוי עבור המקרה בו מופיעים כל הסימפטומים יהיה

y^=argmaxy py(y)d=1Dpxdy(1y)\hat{y} =\underset{y}{\arg\max}\ p_{\text{y}}(y)\prod_{d=1}^D p_{\text{x}_d|\text{y}}(1|y)

זאת אומרת שעלינו לבדוק האם:

py(1)d=1Dpxdy(11)>?py(0)d=1Dpxdy(10)0.5×1×1×0.75×0.5×0.25>?0.5×0.5×0×0.25×0×0.250.09375>?0\begin{aligned} p_{\text{y}}(1)\prod_{d=1}^D p_{\text{x}_d|\text{y}}(1|1)\overset{?}{>} &p_{\text{y}}(0)\prod_{d=1}^D p_{\text{x}_d|\text{y}}(1|0)\\ 0.5 \times 1 \times 1 \times 0.75 \times 0.5 \times 0.25 \overset{?}{>} &0.5 \times 0.5 \times 0 \times 0.25 \times 0 \times 0.25\\ 0.09375 \overset{?}{>} & 0 \end{aligned}

מכיוון שתנאי זה מתקיים, החיזוי יהיה שישנה פריקה של כתף.

דוגמא 2 - זיהוי הונאות אשראי

ננסה להשתמש בשיטה זו לבעיית חיזוי הונאות האשראי

שיטות פרמטריות

  • דומה לשימוש שעשינו במודלים פרמטריים בגישה הדטרמיניסטית.
  • נגביל את הצורה של הפונקציה שאותה אנו רוצים לשערך למודל פרמטרי.
  • נסמן את וקטור הפרמטרים ב θ\boldsymbol{\theta}.
  • כאן המודל חייב לייצר פילוג חוקי עבור כל בחירה של פרמטרים.
  • מגבלה קשה אשר מצמצמת מאד את המודלים הפרמטריים שאיתם ניתן לעבוד.

בחירת הפרמטרים

  • נרצה למצוא דרך לתת "ציון" לכל בחירה של פרמטרים ולחפש את הפרמטרים אשר מניבים את הציון הטוב ביותר.
  • נציג שתי גישות שונות להתייחס לפרמטרים של המודל.
  • כל גישה מובילה לדרך מעט שונה לבחירה של הפרמטרים.

דוגמא: שיערוך הפילוג של זמן הנסיעה

D={x(i)}={55,68,75,50,72,84,65,58,74,66}\mathcal{D}=\{x^{(i)}\}=\{55, 68, 75, 50, 72, 84, 65, 58, 74, 66\}

משערך ה KDE של הפילוג (לא דנו הסמסטר) הינו:


נרצה לשערך פרמטרים של פילוג נורמלי שיתאר בצורה טובה את הדגימות במדגם.

הגישה הלא-בייסיאנית
(קלאסית או תדירותית (Frequentist))

px(x;θ)p_{\mathbf{x}}(\boldsymbol{x};\boldsymbol{\theta})
  • נתייחס לפרמטרים כאל מספרים שאותם יש לקבוע על מנת שהמודל יתאר בצורה טובה את המדגם.
  • ההנחה היא כי יש ערך לא ידוע של הפרמטר שהוא ה"טוב" ביותר.

Maximum Likelyhood Estimator (MLE)

  • נסמן ב pD(D;θ)p_{\mathcal{D}}(\mathcal{D};\boldsymbol{\theta}) את ההסתברות לקבלת המדגם D={x(i)}\mathcal{D}=\{\boldsymbol{x}^{(i)}\}.
  • גודל זה מכונה הסבירות (likelihood) של המדגם.
  • אנו מעוניינים למצוא את הפרמטרים θ\boldsymbol{\theta} אשר מניבים את הסבירות הכי גבוהה.
  • מקובל לסמן את פונקציית ה likelihood באופן הבא:
L(θ;D)pD(D;θ)\mathcal{L}(\boldsymbol{\theta};\mathcal{D})\triangleq p_{\mathcal{D}}(D;\boldsymbol{\theta})

משערך ה MLE של θ\boldsymbol{\theta} הוא הערך אשר ממקסם את פונקציית ה likelihood:

θ^MLE=argmaxθ L(θ;D)\hat{\boldsymbol{\theta}}_{\text{MLE}} =\underset{\boldsymbol{\theta}}{\arg\max}\ \mathcal{L}(\boldsymbol{\theta};\mathcal{D})

Maximum Likelyhood Estimator (MLE)

θ^MLE=argmaxθ L(θ;D)\hat{\boldsymbol{\theta}}_{\text{MLE}} =\underset{\boldsymbol{\theta}}{\arg\max}\ \mathcal{L}(\boldsymbol{\theta};\mathcal{D})
  • נרשום את בעיית האופטימיזציה כבעיית מינימיזציה:
θ^MLE=argminθ L(θ;D)\hat{\boldsymbol{\theta}}_{\text{MLE}} =\underset{\boldsymbol{\theta}}{\arg\min}\ -\mathcal{L}(\boldsymbol{\theta};\mathcal{D})
  • כאשר הדגימות במדגם הם i.i.d:
pD(D;θ)=ipx(x(i);θ)p_{\mathcal{D}}(\mathcal{D};\boldsymbol{\theta})=\prod_i p_{\mathbf{x}}(\boldsymbol{x}^{(i)};\boldsymbol{\theta})

ולכן:

θ^MLE=argminθ L(θ;D)=argminθ ipx(x(i);θ)\hat{\boldsymbol{\theta}}_{\text{MLE}} =\underset{\boldsymbol{\theta}}{\arg\min}\ -\mathcal{L}(\boldsymbol{\theta};\mathcal{D}) =\underset{\boldsymbol{\theta}}{\arg\min}\ -\prod_i p_{\mathbf{x}}(\boldsymbol{x}^{(i)};\boldsymbol{\theta})

Maximum Likelyhood Estimator (MLE)

θ^MLE=argminθ L(θ;D)=argminθ ipx(x(i);θ)\hat{\boldsymbol{\theta}}_{\text{MLE}} =\underset{\boldsymbol{\theta}}{\arg\min}\ -\mathcal{L}(\boldsymbol{\theta};\mathcal{D}) =\underset{\boldsymbol{\theta}}{\arg\min}\ -\prod_i p_{\mathbf{x}}(\boldsymbol{x}^{(i)};\boldsymbol{\theta})

במקרים רבים נוכל להחליף את המכפלה על כל הדגימות בסכום, על ידי החלפת פונקציית ה likelihood ב log-likelihood:

θ^MLE=argminθ logL(θ;D)=argminθ ilog(px(x(i);θ))\hat{\boldsymbol{\theta}}_{\text{MLE}} =\underset{\boldsymbol{\theta}}{\arg\min}\ -\log\mathcal{L}(\boldsymbol{\theta};\mathcal{D}) =\underset{\boldsymbol{\theta}}{\arg\min}\ -\sum_i \log\left(p_{\mathbf{x}}(\boldsymbol{x}^{(i)};\boldsymbol{\theta})\right)

הערה: בקורסים "עיבוד אותות אקראיים" ו-"הסקה סטטיסטית" מרחיבים הרבה בנושא תכונות משערך זה ואחרים.

דוגמא - זמן הנסיעה

ננסה להתאים למדגם מודל של פילוג נורמלי:

px(x;θ)=12πσexp((xμ)22σ2)p_{\text{x}}(x;\boldsymbol{\theta})=\frac{1}{\sqrt{{2\pi}}\sigma}\exp\left(-\frac{(x-\mu)^2}{2\sigma^2}\right)

וקטור הפרמטרים הינו θ=[μ,σ]\boldsymbol{\theta}=[\mu,\sigma]^\top.

דוגמא - זמן הנסיעה

px(x;θ)=12πσexp((xμ)22σ2)p_{\text{x}}(x;\boldsymbol{\theta})=\frac{1}{\sqrt{{2\pi}}\sigma}\exp\left(-\frac{(x-\mu)^2}{2\sigma^2}\right)

נרשום את בעיית האופטימיזציה של מציאת משערך ה MLE:

θ^MLE=argminθ ilog(px(x(i);θ))=argminθ ilog(12πσexp((x(i)μ)22σ2))=argminθ ilog(σ)+12log(2π)+(x(i)μ)22σ2=argminθ Nlog(σ)+12σ2i(x(i)μ)2\begin{aligned} \hat{\boldsymbol{\theta}}_{\text{MLE}} &=\underset{\boldsymbol{\theta}}{\arg\min}\ -\sum_i \log\left(p_{\text{x}}(x^{(i)};\boldsymbol{\theta})\right)\\ &=\underset{\boldsymbol{\theta}}{\arg\min}\ -\sum_i \log\left(\frac{1}{\sqrt{{2\pi}}\sigma}\exp\left(-\frac{(x^{(i)}-\mu)^2}{2\sigma^2}\right)\right)\\ &=\underset{\boldsymbol{\theta}}{\arg\min}\ \sum_i \log(\sigma) + \tfrac{1}{2}\log(2\pi) + \frac{(x^{(i)}-\mu)^2}{2\sigma^2}\\ &=\underset{\boldsymbol{\theta}}{\arg\min}\ N\log(\sigma) + \frac{1}{2\sigma^2}\sum_i (x^{(i)}-\mu)^2\\ \end{aligned}

נפתור על ידי גזירה והשוואה ל-0.

דוגמא - זמן הנסיעה

נסמן את ה objective ב ff:

f(θ;x)=Nlog(σ)+12σ2i(x(i)μ)2f(\boldsymbol{\theta};\mathcal{x})=N\log(\sigma) + \frac{1}{2\sigma^2}\sum_i (x^{(i)}-\mu)^2 {f(θ;x)μ=0f(θ;x)σ=0{1σ2i(x(i)μ)=0Nσ1σ3i(x(i)μ)2=0{Nμix(i)=0Nσ2i(x(i)μ)2=0{μ=1Nix(i)σ2=1Ni(x(i)μ)2\begin{aligned} &\begin{cases} \frac{\partial f(\boldsymbol{\theta};\mathcal{x})}{\partial\mu} = 0\\ \frac{\partial f(\boldsymbol{\theta};\mathcal{x})}{\partial\sigma} = 0 \end{cases}\\ \Leftrightarrow&\begin{cases} -\frac{1}{\sigma^2}\sum_i (x^{(i)}-\mu)=0\\ \frac{N}{\sigma}-\frac{1}{\sigma^3}\sum_i (x^{(i)}-\mu)^2=0 \end{cases}\\ \Leftrightarrow&\begin{cases} N\mu-\sum_i x^{(i)}=0\\ N\sigma^2-\sum_i (x^{(i)}-\mu)^2=0 \end{cases}\\ \Leftrightarrow&\begin{cases} \mu=\frac{1}{N}\sum_i x^{(i)}\\ \sigma^2=\frac{1}{N}\sum_i (x^{(i)}-\mu)^2 \end{cases}\\ \end{aligned}

דוגמא - זמן הנסיעה

במקרה של הנסיעות בכביש החוף נקבל:

μ=66.7 [min]\mu=66.7\ \text{[min]} σ=9.7 [min]\sigma=9.7\ \text{[min]}

הגישה הבייסיאנית

  • הפרמטרים של המודל הם ריאליזציות (הגרלות) של משתנה אקראי.
  • גישה זו מניחה שיש בידינו מודל לפילוג המשותף של הפרמטרים והמדגם.
pD,θ(D,θ)=pDθ(Dθ)pθ(θ)p_{\mathcal{D},\boldsymbol{\theta}}(\mathcal{D},\boldsymbol{\theta}) =p_{\mathcal{D}|\boldsymbol{\theta}}(\mathcal{D}|\boldsymbol{\theta})p_{\boldsymbol{\theta}}(\boldsymbol{\theta})

תחת ההנחה שבהינתן הפרמטרים הדגימות במדגם הם i.i.d:

pD,θ(D,θ)=pθ(θ)ipxθ(x(i)θ)p_{\mathcal{D},\boldsymbol{\theta}}(\mathcal{D},\boldsymbol{\theta}) =p_{\boldsymbol{\theta}}(\boldsymbol{\theta})\prod_i p_{\mathbf{x}|\boldsymbol{\theta}}(\boldsymbol{x}^{(i)}|\boldsymbol{\theta})
  • עלינו לקבוע את pxθ(xθ)p_{\mathbf{x}|\boldsymbol{\theta}}(\boldsymbol{x}|\boldsymbol{\theta}) ואת pθ(θ)p_{\boldsymbol{\theta}}(\boldsymbol{\theta}).
  • זכרו בשבגישה הקודמת הנחנו כי θ\theta קבוע אבל לא ידוע.

הגישה הבייסיאנית

A Prioiri Distribution

הפילוג השולי של הפרמטרים pθ(θ)p_{\boldsymbol{\theta}}(\boldsymbol{\theta}), מכונה לרוב הפילוג הפריורי (prior distribution) או הא-פריורי (a priori distribution), זאת אומרת הפילוג של θ\boldsymbol{\theta} לפני שראינו את המדגם.

A Posteriori Distribution

הפילוג של הפרמטרים בהינתן המדגם p,θD(θD)p_{,\boldsymbol{\theta}|\mathcal{D}}(\boldsymbol{\theta}|\mathcal{D}) מכונה הפילוג הפוסטריורי (posterior distribution) או א-פוסטריורי (a posteriori distribution) (או הפילוג בדיעבד), זאת אומרת, הפילוג אחרי שראינו את המדגם.

Maximum A-posteriori Probaility (MAP)

MAP משערך את הערך אשר ממקסם את הפילוג הא-פוסטריורי (הערך הכי סביר של θ\boldsymbol{\theta} בהינתן המדגם pθD(θD)p_{\boldsymbol{\theta}|\mathcal{D}}(\boldsymbol{\theta}|\mathcal{D})):

θ^MAP=argmaxθ pθD(θD)=argminθ pθD(θD)\hat{\boldsymbol{\theta}}_{\text{MAP}} =\underset{\boldsymbol{\theta}}{\arg\max}\ p_{\boldsymbol{\theta}|\mathcal{D}}(\boldsymbol{\theta}|\mathcal{D}) =\underset{\boldsymbol{\theta}}{\arg\min}\ -p_{\boldsymbol{\theta}|\mathcal{D}}(\boldsymbol{\theta}|\mathcal{D})

על פי חוק בייס, נוכל לכתוב זאת כ:

θ^MAP=argminθ pDθ(Dθ)pθ(θ)pD(D)=argminθ pDθ(Dθ)pθ(θ)\hat{\boldsymbol{\theta}}_{\text{MAP}} =\underset{\boldsymbol{\theta}}{\arg\min}\ -\frac{ p_{\mathcal{D}|\boldsymbol{\theta}}(\mathcal{D}|\boldsymbol{\theta}) p_{\boldsymbol{\theta}}(\boldsymbol{\theta}) }{ p_{\mathcal{D}}(\mathcal{D}) } =\underset{\boldsymbol{\theta}}{\arg\min}\ -p_{\mathcal{D}|\boldsymbol{\theta}}(\mathcal{D}|\boldsymbol{\theta}) p_{\boldsymbol{\theta}}(\boldsymbol{\theta})

כאשר הדגימות במדגם בהינתן θ\boldsymbol{\theta} הן i.i.d, מתקיים:

θ^MAP=argminθ pθ(θ)ipxθ(x(i)θ)\hat{\boldsymbol{\theta}}_{\text{MAP}} =\underset{\boldsymbol{\theta}}{\arg\min}\ -p_{\boldsymbol{\theta}}(\boldsymbol{\theta}) \prod_i p_{\mathbf{x}|\boldsymbol{\theta}}(\boldsymbol{x}^{(i)}|\boldsymbol{\theta})

Maximum A-posteriori Probaility (MAP)

θ^MAP=argminθ pθ(θ)ipxθ(x(i)θ)\hat{\boldsymbol{\theta}}_{\text{MAP}} =\underset{\boldsymbol{\theta}}{\arg\min}\ -p_{\boldsymbol{\theta}}(\boldsymbol{\theta}) \prod_i p_{\mathbf{x}|\boldsymbol{\theta}}(\boldsymbol{x}^{(i)}|\boldsymbol{\theta})

גם כאן נוכל להפוך את המכפלה לסכום על ידי מזעור מינוס הלוג של הפונקציה:

θ^MAP=argminθ log(pθ(θ))ilog(pxθ(x(i)θ))\hat{\boldsymbol{\theta}}_{\text{MAP}} =\underset{\boldsymbol{\theta}}{\arg\min}\ -\log\left(p_{\boldsymbol{\theta}}(\boldsymbol{\theta})\right)-\sum_i \log\left(p_{\mathbf{x}|\boldsymbol{\theta}}(\boldsymbol{x}^{(i)}|\boldsymbol{\theta})\right)

ההבדל בין MLE ל MAP

θ^MLE=argminθ ilog(px(x(i);θ))\hat{\boldsymbol{\theta}}_{\text{MLE}} =\underset{\boldsymbol{\theta}}{\arg\min}\ -\sum_i \log\left(p_{\mathbf{x}}(\boldsymbol{x}^{(i)};\boldsymbol{\theta})\right) θ^MAP=argminθ log(pθ(θ))ilog(pxθ(x(i)θ))\hat{\boldsymbol{\theta}}_{\text{MAP}} =\underset{\boldsymbol{\theta}}{\arg\min}\ -\log\left(p_{\boldsymbol{\theta}}(\boldsymbol{\theta})\right)-\sum_i \log\left(p_{\mathbf{x}|\boldsymbol{\theta}}(\boldsymbol{x}^{(i)}|\boldsymbol{\theta})\right)
  • האיבר log(pθ(θ))-\log\left(p_{\boldsymbol{\theta}}(\boldsymbol{\theta})\right) מוסיף את הידע שיש לנו לגבי איזה ערכים של θ\boldsymbol{\theta} יותר סבירים.
  • ראינו תוספת שכזו כאשר דיברנו על רגולריזציה.
  • ניתן לחשוב על בעיית ה MAP כעל בעיית MLE עם רגולריזציה.
  • בתרגיל הבית אתם תראו את השקילות שבין בעיית MAP לבין לבעיית MLE עם רגולריזציה.

בגישה בייסיאנית השערוך הוא בעיית חיזוי

  • אנו מתייחסים גם למדגם וגם לפרמטרים בריאליזציות של משתנים אקראיים.
  • אנו מניחים שאנו יודעים את הפילוג המשותף שלהם.
  • ואנו מנסים למצוא את הערך של הפרמטרים בהינתן המדגם.
  • זוהי בדיוק בעיית חיזוי קלאסית של משתנה אקראי אחד בהינתן משתנה אקראי אחר על סמך הפילוג המשותף.

דוגמא - הוספת prior

  • נחזור לדוגמא של התאמת מודל של פילוג נורמלי לפילוג של זמן הנסיעה בכביש החוף.
  • לשם הפשטות נקבע את סטיית התקן של המודל ל σ=10\sigma=10.
  • הפרמטר היחיד של המודל יהיה μ\mu:
pxμ(xμ)=12πσexp((xμ)22σ2)p_{\text{x}|\mu}(x|\mu)=\frac{1}{\sqrt{2\pi}\sigma}\exp\left(-\frac{(x-\mu)^2}{2\sigma^2}\right)

דוגמא - הוספת prior

pxμ(xμ)=12πσexp((xμ)22σ2)p_{\text{x}|\mu}(x|\mu)=\frac{1}{\sqrt{2\pi}\sigma}\exp\left(-\frac{(x-\mu)^2}{2\sigma^2}\right)
  • נניח שיש לנו ידע קודם על פילוג הצפוי של μ\mu.
  • נניח שהפילוג הא-פריורי של μ\mu הוא גם פילוג נורמלי עם תוחלת μμ=60\mu_{\mu}=60 וסטיית תקן של σμ=5\sigma_{\mu}=5:
pμ(μ)=12πσμexp((μμμ)22σμ2)p_{\mu}(\mu)=\frac{1}{\sqrt{2\pi}\sigma_{\mu}}\exp\left(-\frac{(\mu-\mu_{\mu})^2}{2\cdot\sigma_{\mu}^2}\right)

נרשום את משערך ה MAP של μ\mu:

μ^MAP=argminμ log(pμ(μ))ilog(pxμ(x(i)μ))\begin{aligned} \hat{\mu}_{\text{MAP}} =\underset{\mu}{\arg\min}\ -\log\left(p_{\mu}(\mu)\right)-\sum_i \log\left(p_{\mathbf{x}|\mu}(\boldsymbol{x}^{(i)}|\mu)\right) \end{aligned}

דוגמא - הוספת prior

μ^MAP=argminμ log(pμ(μ))ilog(pxμ(x(i)μ))\begin{aligned} \hat{\mu}_{\text{MAP}} =\underset{\mu}{\arg\min}\ -\log\left(p_{\mu}(\mu)\right)-\sum_i \log\left(p_{\mathbf{x}|\mu}(\boldsymbol{x}^{(i)}|\mu)\right) \end{aligned}

גזירה והשוואה ל-0 נותנת את התוצאה הבאה:

f(θ;x)μ=01σμ2(μμμ)1σ2i(x(i)μ)=0(1σμ2+Nσ2)μ=μμσμ2+1σ2ix(i)μ=σ2Nσμ2μμ+1Nix(i)σ2Nσμ2+1\begin{aligned} \frac{\partial f(\boldsymbol{\theta};\mathcal{x})}{\partial\mu} &= 0\\ \Leftrightarrow \frac{1}{\sigma_{\mu}^2}(\mu-\mu_{\mu})-\frac{1}{\sigma^2}\sum_i (x^{(i)}-\mu)&=0\\ \Leftrightarrow \left(\frac{1}{\sigma_{\mu}^2}+\frac{N}{\sigma^2}\right)\mu&=\frac{\mu_{\mu}}{\sigma_{\mu}^2}+\frac{1}{\sigma^2}\sum_i x^{(i)}\\ \Leftrightarrow \mu&=\frac{\frac{\sigma^2}{N\sigma_{\mu}^2}\mu_{\mu}+\frac{1}{N}\sum_i x^{(i)}}{\frac{\sigma^2}{N\sigma_{\mu}^2}+1} \end{aligned}

זו למעשה ממוצע ממושקל בין הממוצע של xx במדגם לבין μμ\mu_{\mu}.

דוגמא - הוספת prior

עבור הדוגמא שלנו נקבל:

μ=64.8 [min]\mu=64.8\ \text{[min]}

ערך זה מעט יותר קרוב ל60 מאשר התוצאה שקיבלנו בשיערוך ה MLE. זאת משום ה prior ש"מושך" את הפרמטרים לאיזורים הסבירים יותר ולכן הוא מקרב אותו ל μμ=60\mu_{\mu}=60.

שימוש בשיערוך פרמטרי לפתרון בעיות supervised learning

נראה עכשיו איך להשתמש בשערוך הצפיפות שתארנו צורך פתרון בעיות סיווג בלמידה מפוקחת. נציג שיטה אשר משתמשת במודל של פילוג נורמלי וב MLE לפתרון בעיות סיווג.

Quadratic Discriminant Analysis (QDA)

  • נשתמש בפילוג נורמלי וב MLE על מנת לשערך את pxy(xy)p_{\mathbf{x}|\text{y}}(\boldsymbol{x}|y)
  • אנו צריכים לשערך מודל עבור כל אחת מ CC המחלקות של y\text{y}:

    • וקטור תוחלת μc\boldsymbol{\mu}_c עבור כל אחד מהמחלקות.
    • מטריצת קווריאנס Σc\Sigma_c עבור כל אחד מהמחלקות.
pxy(xc;μc,Σc)=1(2π)DΣcexp(12(xμc)Σc1(xμc))p_{\mathbf{x}|\text{y}}(\boldsymbol{x}|c;\boldsymbol{\mu}_c,\Sigma_c)= \frac{1}{\sqrt{(2\pi)^D|\Sigma_c|}} \exp\left(-\frac{1}{2}(\boldsymbol{x}-\boldsymbol{\mu}_c)^{\top}\Sigma_c^{-1}(\boldsymbol{x}-\boldsymbol{\mu}_c)\right)

הפילוג המשותף של x\mathbf{x} ו y\text{y} יהיה:

px,y(x,y;{μc},{Σc})=pxy(xy;μy,Σy)py(y)p_{\mathbf{x},\text{y}}(\boldsymbol{x},y;\{\boldsymbol{\mu}_c\},\{\Sigma_c\})= p_{\mathbf{x}|\text{y}}(\boldsymbol{x}|y;\boldsymbol{\mu}_y,\Sigma_y) p_{\text{y}}(y)

Quadratic Discriminant Analysis (QDA)

בעיית האופטימיזציה של MLE תהיה:

θ^MLE=argminθ logL(θ;D)=argminθ ilog(pxy(x(i)y(i);μy,Σy)py(y(i)))=argminθ ilog(pxy(x(i)y(i);μy,Σy))+log(py(y(i)))=argminθ ilog(pxy(x(i)y(i);μy,Σy))\begin{aligned} \hat{\boldsymbol{\theta}}_{\text{MLE}} &=\underset{\boldsymbol{\theta}}{\arg\min}\ -\log\mathcal{L}(\boldsymbol{\theta};\mathcal{D})\\ &=\underset{\boldsymbol{\theta}}{\arg\min}\ -\sum_i \log\left( p_{\mathbf{x}|\text{y}}(\boldsymbol{x}^{(i)}|y^{(i)};\boldsymbol{\mu}_y,\Sigma_y) p_{\text{y}}(y^{(i)}) \right)\\ &=\underset{\boldsymbol{\theta}}{\arg\min}\ -\sum_i \log\left(p_{\mathbf{x}|\text{y}}(\boldsymbol{x}^{(i)}|y^{(i)};\boldsymbol{\mu}_y,\Sigma_y)\right) +\log\left(p_{\text{y}}(y^{(i)})\right) \\ &=\underset{\boldsymbol{\theta}}{\arg\min}\ -\sum_i \log\left(p_{\mathbf{x}|\text{y}}(\boldsymbol{x}^{(i)}|y^{(i)};\boldsymbol{\mu}_y,\Sigma_y)\right)\\ \end{aligned}

בהינתן ש-pyp_\text{y} ידוע.

Quadratic Discriminant Analysis (QDA)

θ^MLE=argminθ ilog(pxy(x(i)y(i);μy,Σy))\hat{\boldsymbol{\theta}}_{\text{MLE}} =\underset{\boldsymbol{\theta}}{\arg\min}\ -\sum_i \log\left(p_{\mathbf{x}|\text{y}}(\boldsymbol{x}^{(i)}|y^{(i)};\boldsymbol{\mu}_y,\Sigma_y)\right)
  • נחלק את הסכימה לסכימות נפרדות על כל אחת מהמחלקות.

Quadratic Discriminant Analysis (QDA)

  • נגדיר לשם כך את הסימונים הבאים:

    • Ic={i: y(i)=c}\mathcal{I}_c=\{i:\ y^{(i)}=c\} - זאת אומרת, אוסף האינדקסים של הדגמים במדגם שמקיימים y(i)=cy^{(i)}=c.
    • Ic|\mathcal{I}_c| - מספר האינדקסים ב Ic\mathcal{I}_c
θ^MLE=argminθ iI1log(pxy(x(i)1;μ1,Σ1))iI2log(pxy(x(i)2;μ2,Σ2))\begin{aligned} \hat{\boldsymbol{\theta}}_{\text{MLE}} =\underset{\boldsymbol{\theta}}{\arg\min}\ &-\sum_{i\in\mathcal{I}_1} \log\left(p_{\mathbf{x}|\text{y}}(\boldsymbol{x}^{(i)}|1;\boldsymbol{\mu}_1,\Sigma_1)\right) \\ &-\sum_{i\in\mathcal{I}_2} \log\left(p_{\mathbf{x}|\text{y}}(\boldsymbol{x}^{(i)}|2;\boldsymbol{\mu}_2,\Sigma_2)\right) -\dots \end{aligned}

Quadratic Discriminant Analysis (QDA)

עבור המחלקה ה cc נקבל את בעיית האופטימיזציה הבאה:

μ^c,MLE,Σ^c,MLE=argminμc,Σc iIclog(pxy(x(i)c;μc,Σc))=argminμc,Σc iIclog(Σc))+12(x(i)μc)Σc1(x(i)μc)\begin{aligned} \hat{\boldsymbol{\mu}}_{c,\text{MLE}},\hat{\Sigma}_{c,\text{MLE}} &=\underset{\boldsymbol{\mu}_c,\Sigma_c}{\arg\min}\ -\sum_{i\in\mathcal{I}_c} \log\left(p_{\mathbf{x}|\text{y}}(\boldsymbol{x}^{(i)}|c;\boldsymbol{\mu}_c,\Sigma_c)\right)\\ &=\underset{\boldsymbol{\mu}_c,\Sigma_c}{\arg\min}\ \sum_{i\in\mathcal{I}_c} \log\left(\sqrt{|\Sigma_c|})\right)+ \frac{1}{2}(\boldsymbol{x}^{(i)}-\boldsymbol{\mu}_c)^{\top}\Sigma_c^{-1}(\boldsymbol{x}^{(i)}-\boldsymbol{\mu}_c)\\ \end{aligned}
  • ניתן לפתור את הבעיה הזו על ידי גזירה והשוואה ל-0.
  • הפיתוח עבור Σc\Sigma_c הוא מעט מורכב ואנו לא נראה אותו בקורס זה ונקפוץ ישר לפתרון. הפיתוח מודגם בקורס "עיבוד וניתוח מידע".

Quadratic Discriminant Analysis (QDA)

החישוב של μc\boldsymbol{\mu}_c

f(θ;x)=iIclog(Σc))+12(x(i)μc)Σc1(x(i)μc)f(\boldsymbol{\theta};\mathcal{x}) =\sum_{i\in\mathcal{I}_c} \log\left(\sqrt{|\Sigma_c|})\right)+ \frac{1}{2}(\boldsymbol{x}^{(i)}-\boldsymbol{\mu}_c)^{\top}\Sigma_c^{-1}(\boldsymbol{x}^{(i)}-\boldsymbol{\mu}_c)
fμc=0iIcΣc1(x(i)μc)=0IcμciIcx(i)=0μc=1IciIcx(i)\begin{aligned} \frac{\partial f}{\partial\boldsymbol{\mu}_c}&=0\\ \Leftrightarrow-\sum_{i\in\mathcal{I}_c}\Sigma_c^{-1}(\boldsymbol{x}^{(i)}-\boldsymbol{\mu}_c)&=0\\ \Leftrightarrow|\mathcal{I}_c|\boldsymbol{\mu}_c-\sum_{i\in\mathcal{I}_c}\boldsymbol{x}^{(i)}&=0\\ \Leftrightarrow\boldsymbol{\mu}_c&=\frac{1}{|\mathcal{I}_c|}\sum_{i\in\mathcal{I}_c}\boldsymbol{x}^{(i)}\\ \end{aligned}

Quadratic Discriminant Analysis (QDA)

הפרמטרים של המודל יהיו:

py(c)=IcNp_{\text{y}}(c)=\frac{|\mathcal{I}_c|}{N} μc=1IciIcx(i)\boldsymbol{\mu}_c=\frac{1}{|\mathcal{I}_c|}\sum_{i\in\mathcal{I}_c}\boldsymbol{x}^{(i)} Σc=1IciIc(x(i)μc)(x(i)μc)T\Sigma_c = \frac{1}{|\mathcal{I}_c|}\sum_{i\in\mathcal{I}_c}\left(\boldsymbol{x}^{(i)}-\boldsymbol{\mu}_c\right)\left(\boldsymbol{x}^{(i)}-\boldsymbol{\mu}_c\right)^T

הצגנו כאן משערך אינטואיטבי להסתברות השיוך לכל מחלקה. אפשר להראות שזו התוצאה המתקבלת גם מהנחת מודל פילוג מולטינומיאלי למשתנה הקטגורי של המחלקה.

Quadratic Discriminant Analysis (QDA)

עבור פונקציית מחיר של סיכוי הטעות, החזאי האופטימאלי יהיה:

y^=h(x)=argmaxy pxy(xy;μy,Σy)py(y)=argmaxy 12(xμy)Σy1(xμy)+log(py(y))Σy)\begin{aligned} \hat{y}=h(\boldsymbol{x}) &=\underset{y}{\arg\max}\ p_{\mathbf{x}|\text{y}}(\boldsymbol{x}|y;\boldsymbol{\mu}_y,\Sigma_y) p_{\text{y}}(y)\\ &=\underset{y}{\arg\max}\ -\frac{1}{2}(\boldsymbol{x}-\boldsymbol{\mu}_y)^{\top}\Sigma_y^{-1}(\boldsymbol{x}-\boldsymbol{\mu}_y) +\log\left(\frac{p_{\text{y}}(y))}{\sqrt{|\Sigma_y|}}\right)\\ \end{aligned}

המקרה הבינארי - משטח הפרדה ריבועי

עבור המקרה של סיווג בינארי (סיווג לשתי מחלקות) מתקבל החזאי הבא:

h(x)={1xTCx+aTx+b>00otherwiseh\left(x\right) =\begin{cases} 1\qquad \boldsymbol{x}^T C \boldsymbol{x} + \boldsymbol{a}^T \boldsymbol{x} + b > 0 \\ 0\qquad \text{otherwise}\\ \end{cases}

כאשר:

C=12(Σ01Σ11)C=\frac{1}{2}(\Sigma^{-1}_0-\Sigma^{-1}_1) a=Σ11μ1Σ01μ0\boldsymbol{a}=\Sigma_{1}^{-1}\boldsymbol{\mu}_1-\Sigma^{-1}_0\boldsymbol{\mu}_0 b=12(μ0TΣ01μ0μ1TΣ11μ1)+log(Σ0py(1)Σ1py(0))b=\tfrac{1}{2}\left(\boldsymbol{\mu}_0^T\Sigma_0^{-1}\boldsymbol{\mu}_0 - \boldsymbol{\mu}_1^T\Sigma_1^{-1}\boldsymbol{\mu}_1\right) + \log\left(\frac{\sqrt{|\Sigma_0|}p_\text{y}(1)}{\sqrt{|\Sigma_1|}p_\text{y}(0)}\right)

התנאי שקיבלנו xTCx+aTx+b>0\boldsymbol{x}^T C \boldsymbol{x} + \boldsymbol{a}^T \boldsymbol{x} + b > 0 הוא ריבועי ב x\boldsymbol{x} ומכאן מקבל האלגוריתם את שמו.

Linear Discriminant Analysis (LDA)

  • מניח שלפונקציות הפילוג של המחלקות השונות יש את אותה מטריצת הקווריאנס.
  • שהפרמטרים של המודל יהיו כעת:

    • וקטור תוחלת μc\boldsymbol{\mu}_c עבור כל אחד מהמחלקות.
    • מטריצת covariance אחת Σ\Sigma משותפת לכל המחלקות.
pxy(xc;μc,Σ)=1(2π)DΣexp(12(xμc)Σ1(xμc))p_{\mathbf{x}|\text{y}}(\boldsymbol{x}|c;\boldsymbol{\mu}_c,\Sigma)= \frac{1}{\sqrt{(2\pi)^D|\Sigma|}} \exp\left(-\frac{1}{2}(\boldsymbol{x}-\boldsymbol{\mu}_c)^{\top}\Sigma^{-1}(\boldsymbol{x}-\boldsymbol{\mu}_c)\right)

Linear Discriminant Analysis (LDA)

פתרון בעיית ה MLE:

py(c)=IcNp_{\text{y}}(c)=\frac{|\mathcal{I}_c|}{N} μc=1IciIcx(i)\boldsymbol{\mu}_c = \frac{1}{|\mathcal{I}_c|}\sum_{i\in \mathcal{I}_c}\boldsymbol{x}^{(i)} Σ=1Ni(x(i)μy(i))(x(i)μy(i))T\Sigma = \frac{1}{N}\sum_{i}\left(\boldsymbol{x}^{(i)}-\boldsymbol{\mu}_{y^{(i)}}\right)\left(\boldsymbol{x}^{(i)}-\boldsymbol{\mu}_{y^{(i)}}\right)^T

Linear Discriminant Analysis (LDA)

עבור פונקציית מחיר של miscalssification rate, החזאי האופטימאלי המתקבל ממודל זה הינו:

y^=h(x)=argmaxy pxy(xy;μc,Σ)py(y)=argmaxy 12(xμy)Σ1(xμy)+log(py(y))=argminy xΣ1μy12μyΣ1μylog(py(y))\begin{aligned} \hat{y}=h(\boldsymbol{x}) &=\underset{y}{\arg\max}\ p_{\mathbf{x}|\text{y}}(\boldsymbol{x}|y;\boldsymbol{\mu}_c,\Sigma) p_{\text{y}}(y)\\ &=\underset{y}{\arg\max}\ -\frac{1}{2}(\boldsymbol{x}-\boldsymbol{\mu}_y)^{\top}\Sigma^{-1}(\boldsymbol{x}-\boldsymbol{\mu}_y) +\log(p_{\text{y}}(y))\\ &=\underset{y}{\arg\min}\ \boldsymbol{x}^{\top}\Sigma^{-1}\boldsymbol{\mu}_y -\frac{1}{2}\boldsymbol{\mu}_y^{\top}\Sigma^{-1}\boldsymbol{\mu}_y -\log(p_{\text{y}}(y))\\ \end{aligned}

המקרה הבינארי

עבור המקרה של סיווג בינארי (סיווג לשני מחלקות) מתקבל החזאי הבא:

h(x)={1aTx+b>00otherwiseh\left(x\right) =\begin{cases} 1\qquad \boldsymbol{a}^T \boldsymbol{x} + b > 0 \\ 0\qquad \text{otherwise}\\ \end{cases}

כאשר:

a=Σ1(μ1μ0)\boldsymbol{a}=\Sigma^{-1}\left(\boldsymbol{\mu}_1-\boldsymbol{\mu}_0\right) b=12(μ0TΣ1μ0μ1TΣ1μ1)+log(py(1)py(0))b=\tfrac{1}{2}\left(\boldsymbol{\mu}_0^T\Sigma^{-1}\boldsymbol{\mu}_0 - \boldsymbol{\mu}_1^T\Sigma^{-1}\boldsymbol{\mu}_1\right) + \log\left(\frac{p_\text{y}\left(1\right)}{p_\text{y}\left(0\right)}\right)

התנאי שקיבלנו aTx+b>0\boldsymbol{a}^T \boldsymbol{x} + b > 0 הוא לינארי ב x\boldsymbol{x} ומכאן מקבל האלגוריתם את שמו.

המקרה הכללי (לא בינארי)

במקרה הכללי המרחב יהיה מחולק ל CC איזורים שהשפות שלהם יהיו מורכבות מהמישורים המתקבלים מהשפות שבין כל זוג מחלקות. דוגמא למקרה עם 3 מחלקות תופיע בתרגול.

דוגמא

נסתכל שוב על הבעיה של חיזוי עסקאות שחשודות כהונאות:

התאמה של מודל QDA

py(0)=I0N=0.81p_{\text{y}}(0)=\frac{|\mathcal{I}_0|}{N}=0.81 py(1)=I1N=0.19p_{\text{y}}(1)=\frac{|\mathcal{I}_1|}{N}=0.19 μ0=1I0iI0x(i)=[55.1,54.6]\boldsymbol{\mu}_0 = \frac{1}{|\mathcal{I}_0|}\sum_{i\in \mathcal{I}_0}\boldsymbol{x}^{(i)}=[55.1,54.6]^{\top} μ1=1I1iI1x(i)=[54.4,55.2]\boldsymbol{\mu}_1 = \frac{1}{|\mathcal{I}_1|}\sum_{i\in \mathcal{I}_1}\boldsymbol{x}^{(i)}=[54.4,55.2]^{\top} Σ0=1I0i(x(i)μy(i))(x(i)μy(i))T=[350.942.942.9336]\Sigma_0 = \frac{1}{|\mathcal{I}_0|}\sum_{i}\left(\boldsymbol{x}^{(i)}-\boldsymbol{\mu}_{y^{(i)}}\right)\left(\boldsymbol{x}^{(i)}-\boldsymbol{\mu}_{y^{(i)}}\right)^T =\begin{bmatrix} 350.9 & -42.9 \\ -42.9 & 336 \end{bmatrix} Σ1=1I1i(x(i)μy(i))(x(i)μy(i))T=[817.9730.5730.5741.7]\Sigma_1 = \frac{1}{|\mathcal{I}_1|}\sum_{i}\left(\boldsymbol{x}^{(i)}-\boldsymbol{\mu}_{y^{(i)}}\right)\left(\boldsymbol{x}^{(i)}-\boldsymbol{\mu}_{y^{(i)}}\right)^T =\begin{bmatrix} 817.9 & 730.5 \\ 730.5 & 741.7 \end{bmatrix}

התאמה של מודל QDA

שגיאת החיזוי (miscalssification rate) על ה test set הינה 0.08.


התוצאה סבירה, אך ניתן לראות שגאוסיאן לא מאד מתאים לפילוג של ההונאות.

הבעיה של הגישה הגנרטיבית הפרמטרית

  • הינו רוצים מודל אשר יכול לייצג בנפרד את שני האיזורים.
  • לצערינו המבחר של המודלים בהם אנו יכולים לא גדול.
  • המגבלה הזו נובעת מהצורך שהמודל ייצג פילוג חוקיים.

הערה: קיימות הרבה הרחבות שנידונות במקורסים מתקדמים יותר, למשל, תערובת של גאוסיאניים.

דוגמא למדגם שמתאים למודל של QDA

לצורך הדגמה נסתכל על גירסא של המדגם שבה יש רק איזור אחד של ההונאות:

מודל QDA

מודל LDA

נציג גם את התוצאה המתקבלת ממודל ה LDA: