משתמש:Bagel/Bagging

דף זה אינו ערך אנציקלופדי
דף זה הוא טיוטה של Bagel.
דף זה אינו ערך אנציקלופדי
דף זה הוא טיוטה של Bagel.

Bagging (במשמעות של "דגימה מתוך שק", וכן קיצור של Bootstrap Aggregation) היא טכניקה בתחום של למידה חישובית שמטרתה לשפר את הדיוק של מסווגים (classifiers) ומניעת overfitting . רעיון ה Bagging הוא מטה-אלגוריתם, כלומר הוא אינו מגדיר כיצד לבנות מסווג, אלא כיצד להשתמש בסדרה של מסווגים כלשהם ביחד (בתצורת Ensemble) על מנת ליצור מסווג-על מדויק יותר.

Bagging מצמצם את השונות בשיעור הטעות (error rate) על פני תתי קבוצות שונות של דוגמאות אימון. חשוב לציין כי שונות נמוכה בשיעור הטעות, נחשבת רצויה יותר מאשר ממוצע נמוך שלו.


אינטואיציה

עריכה

אם נעזרים בקבוצה של מסווגים שאומנו לפתור בעיה כלשהי, אפילו אם לכל אחד מהם יש קורלציה מאוד נמוכה לקלאסיפיקציה האמיתית של כל דגימה (כלומר כל מסווג בודד הוא רק מעט יותר טוב ממסווג מקרי, נקרא גם weak learner), ככל שגודל קבוצת המסווגים שואף לאינסוף, כך הסיכוי לקבל סווג נכון שואף ל 1. ניתן לראות את האמור לעיל גם כפראפרזה על חוק המספרים הגדולים.

דרך הפעולה

עריכה

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

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

בשלב הקלאסיפיקציה, נקבל תוצאות שונות מכל אחד מ m המסווגים. את התוצאה הסופית ניצור בשיטת "הרוב קובע" או כל טכניקת voting אחרת.

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