למידת מכונה

הגדרה

ארתור סמואל הגדיר את למידת המכונה בשנת 1959 כ - "תחום מחקר המאפשר למחשבים את היכולת ללמוד מבלי להיות מתוכנתים באופן ספציפי".
טום מ. מיטשל סיפק הגדרה פורמלית יותר: "תוכנית מחשב תיקרא לומדת מניסיון E ביחס למחלקת משימות T ומדד ביצועים P, אם הביצועים של משימות ב- T, בהתאם למדד P, משתפרים עם הניסיון E".

מטרות ושימושים

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

אלגוריתמים נפוצים

למידת מכונה כוללת אוסף ידוע של כמה עשרות אלגוריתמים. ניתן לסווג אלגוריתמים אילו על פי מספר תבחינים.

עצלנים (Lazy) מול חרוצים (Eager)

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

היסטוריה

התפתחות למידת המכונה הוא חלק אינטגרלי מהתפתחות תחום הבינה המלאכותית. בתחילת הדרך עיקר המאמץ היה לחקות את התנהגות המוח האנושי. מודל הפרספטרון הומצא בשנת 1957 ויצר תקווה רבה בתחום בשנות ה-60. מגבלותיו של המודל לייצג פונקציות מורכבות הועלו על ידי מארוין מינסקי, דבר שהשפיע על חוקרים רבים באותה תקופה לעצור מלפתח את המודל במהלך השנים הבאות.
במהלך שנות ה-70 של המאה ה-20 תחום למידת המכונה נכנס לסוג של תרדמת כאשר מערכות מומחה היוו את מוקד העניין בתחום הבינה המלאכותית. באמצע שנות השמונים החלה תקומה חוזרת בתחום כאשר הומצאו עצי ההחלטה והופצו בתוכנה, ויתרונם היה ביכולת להציגם ובקלות הסברתם. בנוסף הם היו מגוונים ונתנו מענה למספר רב של בעיות. גם המודלים של רשתות נוירונים החלו להתפתח מחדש, כשתהליך ההתפשטות לאחור (back-propagation) היווה פריצת דרך בתחום. רשתות הנוירונים עם השכבות הנסתרות יכלו עתה להביע פונקציות רבות ואפשרו להתגבר על מגבלותיו של הפרספטרון. גם עצי ההחלטה וגם רשתות הנוירונים שימשו עתה באפליקציות פיננסיות כגון אישור הלוואות, זיהוי תרמיות וניהול תיקים, ובתעשייה הם שיפרו תהליכים רבים למשל בתחום האוטומציה בדואר.
בשנות התשעים עם כניסת האינטרנט ותחילתו של עידן התפוצצות המידע החלה התקדמות רבה בתחום למידת המכונה. בשנת 1995 פורסם לראשונה אלגוריתם מכונת וקטורים תומכים (SVM), ואומץ כאלגוריתם מוביל. תוכנות קוד פתוח שנכתבו לאלגוריתם הפכו אותו פופולרי לשימוש.
בשנים האחרונות חלו התפתחויות נוספות בתחום, רגרסיה לוגיסטית התגלתה מחדש ועוצבה לתת מענה לבעיות עם טווח רחב יותר. אלגוריתמים כמו "נאיב בייס", רשתות בייסיאניות, ומקסימום אנטרופיה הביאו לתוצאות מצוינות במגוון בעיות. בעקבותיהם פותחו אלגוריתמים משולבים, המשתמשים באנסמבל של מסווגים כגון אלגוריתם אדה בוסט, ויערות אקראיים, שגם הם הביאו לשיפור ניכר בתוצאות.
תת תחום נוסף שהפך פופולרי מהעשור הראשון של המאה ה-21 הוא תחום הלמידה העמוקה (Deep Learning),שמתבסס על רשתות נוירונים בעלות מספר רב של שכבות. השימוש הפופולרי במושג "deep belief nets" ובקיצור רשתות עמוקות נטבע במאמר המשפיע מ-2006 של הינטון, אוסינדרו וטה.

מגמות מתפתחות

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