A Short Introduction To Boosting.Final V3.Ppt
-
Upload
firepowergd -
Category
Technology
-
view
880 -
download
3
description
Transcript of A Short Introduction To Boosting.Final V3.Ppt
גלעד דניאל
10/04/23 06:39 1
.המטרה : להמר על הסוס המנצח למצוא מודל שבעזרתו נמצא את הסוס המנצח בכל
מירוץ בעזרתו של מהמר מקצועי.
10/04/23 06:39 2
ניתן לראות שינבא לנו את הסוס יחידקשה למצוא מודל ◦
המנצח קל לראות שאם נקבל מספר "כללי אצבע" ◦
ניתן לקבל מודל יותר טוב ממודל רנדולמלידוגמא לחוק: אם הסוס זכה יותר במירוצים ◦
משאר הסוסים. בחר בו.
10/04/23 06:39 3
שני בעיות לפני המהמראיך נבחר את אוסף המירוצים ונציג אותו ◦
למהמר כך שהוא יוכל לשלוף את "כללי אצבע"
איך ניתן ליצור מתוך אותם כללי אצבע מודל ◦אחד שיהיה מדויק ובעל אחוז הצלחה גדול
)מהמודל הרנדומלי(
10/04/23 06:39 4
כתיבת תוכנית מחשב שתיצור כללי אצבע גולמיים)הכוונה היא מספיק חזקים מהרנדומלי(
כתיבת פרצודורה על חלק מן דוגמאות( 1שליפת כללי אצבע)אותם כללי אצבע נריץ על חלק נוסף מן הדוגמאות( 2שליפת כללי אצבע) נחזור מספרT.של פעמים
10/04/23 06:39 5
בכל סיבוב ?לבחור את הדוגמאות איך ניתןנתמקד בדוגמאות "הקשות" אותן דוגמאות שלא ◦
סווגו בסיבוב הקודם.
את כל כללי האצבע למודל לאחד איך ניתןחיזוי אחד.
ניקח את רוב )משקל( על כללי האצבע ◦
10/04/23 06:39 6
Boosting דרך כללית לקבל כללי אצבע ולהעביר אותם – לחוק אחד "חזק" ומדויק.
מבחינה טכניתשיכול למצוא מסווג חלש שנקבל אלגוריתם למידה נניח ◦
) כללי אצבע( בצורה טובה יותר מאשר המודל הרנדומלי, ) במקרה של שני סיווגים(55%דיוק של לפחות <
boostingאם נקבל מספיק מידע )דוגמאות( אלגוריתם ◦נטען כי יכול לייצר מסווג בודד עם אחוז דיוק גבוה מאד,
99%נטען
10/04/23 06:39 7
מבוסס על מחקרים על אלגוריתםPAC נשאלה שאלה האם אלגוריתם למידה "חלש" יותר יכול לעבור ◦
( כך שיעבוד קצת יותר טוב מהמודל הרנדומלי. boost)דחיפה האם גם ניתן לדחוף אותו למודל מוצלח מאד ומדויק מאד .
◦Schapire היה הראשון שכתב שאפשר להוכח שקיים אלגוריתם כזה בזמן פולינונאלי ) קריאה שלוש פעמים
לאלגוריתם למידה( – כתב גם אלגוריתם יותר יעיל אבל Freundשנה לאחר מכן ◦
(boost by majority קשה למימוש )2001 והמשך במאמר משנת 1999המאמר שלנו משנת
10/04/23 06:39 8
האלגוריתםadaboostדרכי מימוש◦דרכים אחרות להבין מהו ◦
boostingניסויים ואפליקציות◦
10/04/23 06:39 10
Instead of sampling, re-weight◦Previous weak learner has only 50% accuracy
over new distribution
Can be used to learn weak classifiers
Final classification based on weighted vote of weak classifiers
1995הוצג בשנת בעל התקדמות מול שיטות הboost הישנות
כמה מושגי יסוד שגיאה על כל סוג של 50%אלגוריתים למידה חלש > ◦
התפלגותמסווג חזק – בעל סף לינארי קומבינציה של אלגוריתי למידה ◦
חלשיםהיפותזה חלשה.◦
10/04/23 06:39 12
נקבלtraining set תווית עבור כל עבורt= 1,….,T
נבנה את התפלגות על מרחב הדגימות ◦(1,..,m))כלל אצבע( כך שמסווג חלש נמצא ◦
עם שגיאה קטנה על
מסווג אחדנחזיר Hfinal
14
mm yxyx ,,....,, 11
iy }1,1{Xxi
tD
}1,1{: Xht
ttD
])([Pr iitdt yxht
בניה שלDt:◦D1(i) = 1 /mHt ו Dtעבור ◦
10/04/23 06:39 16
>0
Hfinal(x)
10/04/23 06:39 17
10/04/23 06:39 18
10/04/23 06:39 20
10/04/23 06:39 21
10/04/23 06:39 22
10/04/23 06:39 23
10/04/23 06:39 24
10/04/23 06:39 25
משפט
אם
אז
Hfinal ≤ : tלכל
Hfinalהשגיאה של
Adaboost הוא אלגרויתם אדפטיבי, לא חייב לדעת מראה על γ או על Tיכול להשתמש בעובדה ש
Adaboost לעומת אלגוריתםמים אחרים לא מחייב ידיעה מראש של שהיא קשה להשגה.
Adaboost = Adaptive boosting הערך של משוואת השגיאה והטעות הכללית )שנציג
הוא אכן adaboostבהמשך( מוביל אותנו למסקנה ש , לוקח אלגוריתם למידה חלש boostingאלגוריתם
והופך אותו לאגוריתם חזק עם שגיאה נמוכה כאשר מקבל מספיק מידע.
10/04/23 06:39 27
10/04/23 06:39 28
10/04/23 06:39 29
10/04/23 06:39 30
10/04/23 06:39 31
• bounded by:
– T= number of iterations– m=sample size– d= Vapnik-Chervonenkis dimension2 – Pr [.]= empirical probability– Õ = Logarithmic and constant factors
• Overfitting in T!
10/04/23 06:39 32
מספר הריצות של האלגוריתם
הא
שגיה
לפי תצפיות:0 ימשיך לרדת עד training errorשגיאה על ה • יהיה "מורכב Hfinal יעלה אם וכאשר TESTהשגיאה על ה •
מדי"•Occam’s razor
•Overfittingקשה לדעת מתי להפסיק לאמן –
10/04/23 06:39 33
סיבובים1000 לא עלתה גם אחרי TESTהשגיאה על ה (C4.5 2 סיבובים יש בערך 1000 יוצר עץ החלטה – ב)מליון עלים
הגיעה ל training ממשיכה לרדת גם אחרי שהשגיאה של ה TESTהשגיאה על ה 0.
Occam’s razorטועה בכך שהמסווג הפשוט הוא טוב יותר –
:הרעיון◦Training errorקובע רק אם המסווגים טועים או צודקים צריך גם להתייחס ל"אמון" של המסווג◦
Hfinalשלנו היה מנגנון הצבעה עם משקלים marginsנמדוד את האמון בעזרת
חוזק ההצבעה = חלק הצבעה טוב – חלק הצבעה טעות
10/04/23 06:39 34
10/04/23 06:39 35
איטרציות עקומה מקווקות קטנה5 איטרציות עקומה מקווקות100
איטרציות עקומה1000
:משפטmargin יותר על השגיאה גדול =< תחום טובהכללית)ללא תלות במספר הסיבובים(
גדולים המסווג הסופי יכול margin רעיון: אם כל ה◦להשתמש במספר קטן יותר של מסווגים חלשים)דוגמא
לבחירות האחרונות בארה"ב(Boosting נוטה להגדיל את ה margins של הtraining
examples)כאשר עובד עם אלגוריתם למידה חלש( הוכחה דומה להוכחת השגיאה◦
לסיכום: מסווגHfinal ממשיק להוסיף לעצמו כללי אצבע ה margins.ברוב המקרים יגדלו
◦Hfinal שלנו מתקרב למסווג פשוט ומוריד את השגיאה על test error
10/04/23 06:39 36
10/04/23 06:39 37
בהסתברות גבוהה •
•mמספר הדוגמאות •dה"מורכבות" של המסווגים החלשים
אם 0 קטן מאפס -< marginההסברות ש •הוא יורד אקספוננצאלית מהר•
Generalization error ≤
( הרווחיםmargin ממראה על קשר בין )boosting Support-vector machineלבין
:הבדלים מול SVMהמודל החישובי שונה – משוואה ריבועית ב ◦
adaboostלינארי ב ◦SVM ו adaboost שניהם מוצאים מסווגים לינארים, הבעיה
נמנעת אם מגדילים את ה"מרווח" אבל overfittingשל נשארים עם הבעיה של מימדים רבים.
◦SVM משתמש ב KERENELS◦Adaboost משתמש בחיפוש חמדני
10/04/23 06:39 39
מה קורה אם נרצה לעבוד עםy? לא בינארי ◦Adaboost.M1 פתרון כללי כאשר האלגוריתם –
הלומד הוא מספיק מדוייק לתת תשובות נכונות, .50%אבל נכשל כאשר הדיוק יורד מ
◦Adaboost.MH יצירה של מספר בעיות בינאריות - אפשריתy וכל תווית xעבור כל דוגמא
נשאל "האם עבור דוגמאx התווית היא y או אחת מהאחרות"
10/04/23 06:39 42
Adaboost.M2 \ Adaboost.MR נבנה – עם התווית הנכונה xבעיה בינארית כל דוגמא
y ואם תווית y`.בכל מקרה אחר ’y או y האם התווית היא xנשאל "עבור דוגמא ◦
◦Error correcting תיקון שגיאות יתאים לכל – אלגורתמי הלמידה שנבחר בבסיס השערה החלשה
שלנו.
10/04/23 06:39 43
היתרונות שלadaboostקל, פשוט ומהיר לתכנות◦(Tאין פרמטרים רבים בכניסה ) חוץ ממספר ◦אין צורך לדעת מראש על האלוגריתם הלומד החלש וניתן ◦
לשלב כל אלוגריתם למציאת ההשערה.
אין צורך ללמוד יותר את כל עולם הדוגמאות אלא למצוא ◦אלגוריתם למידה חלש שרק צריך להיות טוב יותר מאלוגריתם
רנדומלי.
10/04/23 06:39 44
חסרונותתלוי במידע ובאלוגריתם למידה החלש.◦
מידע חלקימידע מרוכבהשערות חלשותפגיע לרעש◦
10/04/23 06:39 45
10/04/23 06:39 46
decision ) אלגוריתם ליצירת C4.5השוואה בין ריצה של אלוגריתם tree)
boostingלעומת ריצה של שני אלגוריתמים עם C4.5 זה השגיאה של yציר boostingבכל תרשים, השגיאה של אלגוריתם עם x ציר
10/04/23 06:39 47
Reuters newswire articles AP newswire headlines
קטלוג טקסט - בדיקה האם אות\ משפט קיים או לא קיים
אחד מן היתרונות שלadaboost היא הדרך לזהות outliersאותן דוגמאות שסווגו עם תווית שונה ב ,
training set או כאלה שהן לא חד משמעי או קשות לסיווג.
מכיוון שהאלגוריתם ב"כח" גורם לאלגוריתם הלמידההחלש לעבוד על אותן דוגמאות והן בעלות המשקל
הגבוה ביותר. אותן דוגמאות בעלות "רעש" גבוה. נוכל לזהות אותם ונוריד מהן את החשיבות אם הן
באמת קשות לזיהוי ולהריץ אלוריתמים שמטפלים במקרים כאלה.
10/04/23 06:39 48
10/04/23 06:39 49
class, label1/weight1,label2/weight2
OCR: Outliers
Rounds:
12
25
4
Boosting לוקח אלגוריתם למידה חלש והופך אותו לחזק
(0מוריד את השגיאה אסימפטוטית ) מתקרב לגבול מעלה את הMarginשל כל ההשערות בAdaboost אין צורך לדעת מראש מידע על
האלגוריתם למידה החלש הביצועים תלויים באלגוריתם למידה על הtraining
data פגיע לרעש או דוגמאות אם הרבהoutliers
10/04/23 06:39 50
http://videolectures.net/mlss05us_schapire_b/
videolectures.net
10/04/23 06:39 51