text:
התדרדרות הארץ

פרוגרמה להתקדמות המדעים הלמידתיים: למידה חישובית, למידת מכונה ומדעי המוח

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

מאת: מתמטיקאי (כבר לא אהיה)

מכתב לתלמידה: הקוד והעקידה - הכול קשור (ללמידה) (מקור)

פילוסופיה למידתית של המתמטיקה

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

פילוסופיה למידתית של מדעי המחשב

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

פילוסופיה של האלגוריתמיקה

למדת פונקציה או אלגוריתם? תשים לב שזה דומה לגבול באנליזה - ששם נמצאת הפונקציה (שהיא הגבול). ובמקום אפסילון ודלתא, יש לנו כאן אינטראקציה בין מורה ותלמיד. התלמיד שואף לגבול (שהוא האופק שלו), והמלמד ניצב בעמדת המדד בגבול, למשל שואל עד כמה אתה קרוב לתוצאת הפונקציה בנקודה מסויימת. כלומר צד המורה, הצד שמודד הצלחה, ששופט את ההתכנסות שלך, הוא כמו הקריטריון ב-NP. ומה הצרה ב-NP? שזה בדיוק ההפך מגבול רציף באנליזה, כי בבעיות כאלה מדידה חלקית של ההצלחה לא עוזרת כלל להשגת היעד, ולא מסייעת ללמידה, כלומר שאתה לא יכול להצליח כתלמיד. אין הכְוונות בדרך, שמאפשרות להגיע ליעד. הלמידה זה התהליך של בנייה מהדברים שיודעים לעשות - משהו שלא יודעים לעשות. וכל זה אל מול מדד הערכה. ואם ההערכה היא קריטריון פנימי, לא חיצוני, אזי זו הדרך - שהיא המתודה. אבל אם אין כלל קריטריון פנימי כלשהו אלא רק חיצוני? אז אתה ב-NP. האם כשאתה לומד אלגוריתם, נכון להגדיר זאת כלמידה מדוגמא או מהדגמה, כלומר כלמידה מה או כלמידה איך? האם אתה מקבל רק את ערכי הקלט והפלט של הפונקציה שאתה לומד במקרה מסויים, או שאתה מקבל בנייה קונסטרוקטיבית של הפונקציה במקרה קלט-פלט מסויים? התשובה צריכה להיות גם וגם, כי הלמידה היא בדיוק הפירוק של הפונקציה כבנויה מפונקציות קודמות, שזוהי עצם ההדגמה, אבל בכל שלב הבחירה איזו קומבינציה מהן לעשות תלויה בדוגמא (האם הוכחה היא דוגמא או הדגמה?). אם כן, NP הן הבעיות שקל לבחון עליהן - וקשה ללמוד (כלומר שלא ניתן להורות - להיות מורה - במקרה שלהן). וכך בדיוק גם בבעיית הראשוניים, השאלה היא עד כמה אתה לא יכול ללמוד אותם, כמה הם בלתי צפויים (הסתברות, שגם אותה אפשר להגדיר מחדש בעזרת למידה). זוהי מהותה של השערת רימן (ולכן צפוי להיות לה קשר עמוק לבעיית הפקטוריזציה של הראשוניים כפונקציה חד כיוונית). מהי הלמידה במספרים ראשוניים? בכל מספר ראשוני שהגעת אליו על רצף הטבעיים, מה שכבר אתה יודע זה לבנות בעזרת כפל מספרים מכל הראשוניים שלפניו. כלומר הוא (הראשוני הבא) משהו שאתה לא למדת וצריך ללמוד, והשאלה העמוקה היא כמה מוגבלת יכולת הלמידה שלך בעצם, אם הבנייה הלמידתית היא בנייה של מספר בעזרת כפל של מספרים קודמים. כלומר: בשתי ההשערות החשובות ביותר במתמטיקה קיים ניסוח למידתי שנוגע במהותן - והיה צריך להיות הדרך בה הולכים לפתרונן, אם לא היינו נתקלים בחשיבה שפתית, דהיינו בסוג פרימיטיבי מאוד וקומבינטורי של בנייה (הן של המספרים הטבעיים והן של אלגוריתמים). בשתיהן צריך להוכיח שתופעה מסוימת קשה ללמידה - כלומר למצוא מה אי אפשר ללמוד. בהיסטוריה של המתמטיקה פתרנו השערות בסיס שלא ידענו כלל איך לגשת אליהן (קיומם של מספרים לא רציונליים, ריבוע המעגל, המשוואה הקווינטית, משפט גדל, וכו') תמיד בעזרת בנייה חדשה שכזו, שהצליחה לתפוס את התופעה - ולאחריה הוכחה מה לא ניתן לבנות באמצעותה. נשים לב שכל אלו היו בעיות מה לא ניתן לעשות (באסכולה הפיתגוראית קיומו של מספר לא רציונלי היה חוסר היכולת לבנות אותו כיחס באמצעות הטבעיים, למרות שהבעיה מנוסחת בצורה חיובית), כי הבעיות העמוקות יותר במתמטיקה הן תמיד בעיות חוסר (אי-) אפשרות. בדיוק בגלל שהמתמטיקה היא בנייה - הוא מועדת לעמוד מול שוקת שבורה כשהיא צריכה להראות מה לא ניתן לבנות (ופחות מה כן ניתן - כי אותו אפשר פשוט לבנות). ולכן כדי להתקדם בשתי בעיות חוסר האפשרות המובילות כיום, NP ורימן, צריך לבנות הגדרה מתמטית של למידה ושל הבנייה שנובעת ממנה - ואז הוכחה בדרך השלילה שלא תתכן בנייה כזו כי לא ניתן ללמוד זאת (במילים אחרות: הלמידה יכולה וצריכה לבטא את המבנה המתמטי שהיא לומדת, ולהטיל עליו מגבלות בגלל מה שאי אפשר ללמוד - שיגזר מתורת הלמידה המתמטית - ובכך להוכיח את גבולות אפשרויותיו). ובנוגע לבעיית NP מול P, נשים לב שללמוד, במובן הכללי, זה בהכרח קשה, לא יעיל ולא פולינומיאלי. ובעצם אולי מה שמספיק להוכיח זה שללמוד זו בעיה קשה, כי קל לבדוק שלמדנו נכון, בהתאם לדוגמאות. זוהי בעצמה בעיית NP. כלומר להראות שאם היה אלגוריתם למידה כללי יעיל - אזי צריך להגיע לסתירה (הובלה לאבסורד כזה היא שאם אפשר לפתור את בעיית הלמידה, אז אפשר לפתור הכול בקלות, כי הלמידה יכולה קודם ללמוד את אלגוריתם הפתרון, ובמצב כזה אפשר גם ללמוד לפתור את בעיית הלמידה עצמה, וכך עד שמגיעים לאיזשהו אלגוריתם למידה מינימלי, אבל הרי גם הוא נלמד. בנוסף, במצב כזה, יש מעריך פולינומיאלי מינימלי לאלגוריתם ב-P שפותר בעיית NP, ואז יש להראות שבגלל תכונות הלמידה הקונסטרוקטיביות, גם אלגוריתם שמתחתיו, כלומר שהחדש נבנה בעזרתו ושיש לו מעריך פולינומיאלי נמוך יותר, פותר בעיית NP. לחילופין, לחלק את האינפורמציה בין הלבנים מהן בנוי הפתרון, ולרדת באינדוקציה אד אבסורדום, בעזרת פורמולציה של הרעיון שפתרון של בעיית NP תלוי בכל האינפורמציה, ואין בה הפרד ומשול, לפחות בבנייה למידתית. הפולינומיאליות עצמה נובעת מכך שהלמידה היא בנייתית, ושתי הבנִיות הבסיסיות הן חיבור אלגוריתמים, וקריאה בלולאה, דהיינו חיבור וכפל, ומכאן הפולינום שב-P, כלומר ההסבר למה זוהי בדיוק הגדרת יעילות וקלות פתרון). נשים לב שהדברים הבסיסיים במתמטיקה הם איכשהו תמיד תהליך דיסקרטי אינסופי: הראשוניים, הגבול, החישוב, הלוגיקה... וכך זה יהיה גם בלמידה, ולמעשה, הלמידה היא הסיבה לתופעה הזאת, כי היא מתחתיהם. ובכל מקרה, מתוך תכונה משותפת זו, נובע כושרה לטפל בהם, ולפרוץ לעבר פרדיגמה מתמטית חדשה, שהיא מעבר לשפה (שהיא הפרדיגמה המתמטית הנוכחית). ואז נשים לב כמה בעיית NP היא למעשה בעיית למידה (שהומשגה בטעות בעזרת שפה, ולכן הפכה לכזו שאין שפה ההולמת אותה, או מסוגלת אפילו להתחיל לתפוס את פתרונה), ואז לא נבין למה לא הבנו שהמשגה בעזרת למידה היא כיוון פתרונה הטבעי. שהרי בעזרת הראייה הלמידתית, אנו אף רואים את הדמיון של NP לאבולוציה, בה למידה היא המנגנון (זיווג ומוטציה) שנאבק למול בוחן ההישרדות והכשירות, כאשר קשה מאוד לבנות יצור חי ולחדש בו, וקל מאוד לבדוק אם הוא שורד או לא. הביולוגיה תמיד נמצאת בעמדת למידה קשה אל מול הטבע האכזר, שקל לו לשפוט את מאמציה. וכאן, בדרך אל הלמידה, אנו רואים שהיופי משחק תפקיד בהכְוונה, כדי שהביולוגיה תוכל לנחש באמצעות קיצורי דרך מי כשיר יותר ומי פחות. וכך גם במתמטיקה. קריטריון קשה של הוכחה הולך בד בבד עם קריטריון רך של יופי, שמאפשר למתמטיקאים לעשות מתמטיקה ולהתקדם בלמידה המתמטית, למרות שזו בעיה קשה עקרונית. וגם חשיבתינו תלוייה במהלכים יפים. וכך אנחנו אף שופטים את הפילוסופיה.

פילוסופיה של תורת הסיבוכיות

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

פילוסופיה של הלמידה החישובית

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

פילוסופיה של למידת מכונה

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

פילוסופיה של המתמטיקה: סיכום

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

פילוסופיה של הלמידה הממוחשבת

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

פילוסופיה של הלמידה העמוקה

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

פילוסופיה של מדעי המוח

מהי התשתית הרעיונית שבכלל מאפשרת כלל כמו כלל הב (המקומי כל כך, לעומת הגלובליות של רשתות עמוקות), שנוטה להיזון חוזר עצמי חיובי או שלילי (תכונה מושחתת פטאלית)? כיצד כלל הב בכלל יתכן, כמנגנון למידה בסיסי, שאין לו כלל קשר לא להכְוונות - ולא למבנה, לא אל החוץ - ולא אל הפנים? ובכן, כלל הב הוא לא רק "יורים ומתקשרים" (נוירונים שיורים ביחד מתקשרים ביחד - האחים fire&wire;), אלא ניסוחו האמיתי הוא שאני מחזק את הקשר ממי שחזה אותי, ומחליש ממי שאני חזיתי אותו. לכן, כלל זה הגיוני רק תחת ההנחה שהנוירונים הם גם בעיקרם מעבירי מידע וגם מעריכים איכותיים עצמאיים, ואז כלל זה יוצר מוניטין, ומחפש חידוש, כדי להפיצו. בנוסף הוא יוצר שכבות, כי הוא נגד מעגליות. הוא מחפש את הראשון לזהות, ולכן יוצר תחרות מי יהיה הראשון לזהות, כלומר: הוא כלל תחרותי. אך צריך שאף מקור אחד לנוירון לא יעלה על חמישים אחוז, או על כל פנים על סף קבוע, אחרת זה היזון מעגלי חיובי מושחת (בנוסף, ברור שכלל זה בלבד לא מספיק, כי הוא אוטיסטי, וצריך גם נוירוטרנסמיטור שנותן פידבק חיצוני, וכנראה עוד צורות פידבק). כלומר, כלל הב יכול לעבוד רק אם יש לך (כנוירון) יכולת הערכה עצמאית, ורומז לכזו (!). ואז יש תחרות עליה. לכן הוא בהחלט הגיוני לרשת חברתית של בני אדם, אף יותר מאשר לרשת נוירונים, לכאורה. אך מכל מבט חטוף בקונקטום של המוח, או אפילו של רשת נוירונים אחת, נדמה שהמוח הולך רחוק מאוד מאוד בדרכים ליצור חוסר סדר וגיוון ורעש וסיבוך, אולי כדי לא לתת לכלל הב להתכנס לטריביאליות, ולתת לו חומרים מגוונים, סטוכסטיים, כאוטיים ובלתי יציבים מספיק לעבוד עליהם. כלל הב מתייחס לאינפורמציה כתוכן, ולא כפעולה בחישוב (כמו בתפיסת רשת הנוירונים כסוג של מחשב מבוזר ומקבילי). כלומר, כשיש המון יתירות (כמו במוח, או במערכות לומדות רבות מאוד אחרות) וכולם עומדים על אותו קו, אז צריך לבחור את המסר הנכון, שאתה מעביר הלאה עם שינוי בעל פרמטרים קטנים יחסית, כלומר כשמדובר יותר בהעברת מידע ופחות בחישוב. ובהקשר זה, כל הסיפור של החיזוי מלמעלה למטה במוח (נגיד: כשכל שכבה עליונה חוזה את זאת שמתחתיה, וכך למשל אני חוזה את נתוני החושים שאקבל), קשור כנראה באופן עמוק לכלל הב. כי מי שאני חוזה אותו הרי זה מיותר שאקשיב לו. ואם כן, יש כאן תהליך של ניחוש והתכנסות ופחות של חישוב. לכן יש להחליף את המילה חיזוי בניחוש. בתפיסה כזו, המוח פועל באמצעות חישוב מלמטה (למעלה) וניחוש מלמעלה (למטה), ואז יש את נקודות הקונפליקט ביניהם, או שכבות הקונפליקט, ומי שצדק (וניחש או חישב את ההמשך) מכריע שם את השני. אם כל שכבה עליונה אומרת מה היה צריך להיות למטה, ולהפך, הרי שהתכנסות תהליך זה מאפשרת למצוא את מקור השגיאה, שהוא המקום שממנו מתחילה ההערכה הלא נכונה לקפוץ, ושם יש עליה חדה בבעיה. כלומר או שהחישוב - העולה מלמטה - השתבש במקום זה והפך ללא נכון, ואז גרר טעות בהמשך השכבות למעלה, או שהניחוש - היורד מלמעלה - השתבש במקום זה והתברר כלא נכון, ואז גרר טעות בניחוש כלפי המשך השכבות למטה. לפיכך, נוירון אמיתי הוא מעריך תוכן, ולא רק מוערך. כי הוא מחליט למי להקשיב. כלומר הוא מוערך ספציפית על כל תוכן שהוא מעביר, ומעריך ספציפית כל תוכן שהוא מקבל. הוא לא חושש ממנגנון משוב חיובי או שלילי אינסופי, שבו הוא מקשיב רק לחבר אחד ולא לאף אחד אחר, כי הוא שומע מספיק דעות עם מספיק רעש, ואולי יש גם גבול לכמה שהוא מקשיב למישהו (אולי זה לוגריתמי למשל). כלומר אנו רואים שלכל נוירון יכולים להיות לא רק פידבק חיצוני והכְוונה מלמעלה, אלא גם דרכי מדידה אינטריניסטיות להערכה, כגון: האם הוא חוזה אותי, והאם הוא מתאים לחיזוי של מי שמעליי כרגע. החשיבה השגורה בלמידה עמוקה היא על שני הכיוונים ברשת כנפרדים, שבאים בשני שלבים נפרדים: החישוב (פעפוע קדימה) מלמטה למעלה, והפידבק (פעפוע לאחור) מלמעלה למטה. אבל אפשר לחשוב עליהם גם כעל גלים במערכת שמתקדמים בזמן בו זמנית, א-סינכרונית ובשני הכיוונים, לפי עוצמתם, כלומר לפעמים התקדמות מסויימת נעצרת בנוירון לא מרוצה, או שכבה שלמה כזו, ומתחילה להחזיר פידבק לאחור, ולהפך, ויש החזרים והדים וים סוער, עד שהוא מתכנס למצב מסויים, וזהו מנגנון החישוב האמיתי של הרשת (ולא רק מלמטה למעלה). וכך גם האימון וגם הביצוע/חיזוי הם לא שני שלבים נפרדים, כאילו שהבק פרופגיישן והפרונט פרופגיישן מתרחשים במקביל. וכך סביר שהדבר מתבצע במוח. ואם כל שכבה חוזה את זו שלפניה, אז לפעמים יוחזר פידבק אפילו מהשכבה הנכנסת, של הנתונים, מה שלא קורה כיום בלמידה עמוקה, וחבל, כי אנו מפספסים את ההדהוד הזה, והמידע שבסיגנל הבק פרופגיישן נעלם והולך לאיבוד כשהוא מגיע לשכבת הקלט (אנו לא משתמשים במידע הזה להשוואה לקלט האמיתי). אבל אם כל יחידת עיבוד מקבלת הכְוונה מלמעלה, ומוציאה באופן עצמאי (ולא רק כחלק מפעפוע לאחור) הכוונה למטה, הרי שבמפגש בין למטה ללמעלה הגרדיאנט או ההערכה שיורדים מלמעלה נפגשים במה שעולה מלמטה, בחישוב שהיה. ואם יש חוסר התאמה אז יש בעיה. לשני הצדדים. ואם הם לא מסכימים לאיזה כיוון האות צריך להשתנות, אז צריך להזעיק תשומת לב לחוסר ההתאמה. ולכוון אליה את משאבי המערכת, וכך ניתן לשים לב לחידושים, או להפתעות, או לבעיות. למשל, ברמת המיקרו, אם נגיד שיש נוירון לא מקובל, שהמשקלות ממנו הלאה הן קרוב לאפס, הרי שהוא קיבל בכך פידבק שלילי להפוך לפונקציה יותר מועילה ומעניינת. ואם הוא מקבל באופן עקבי פידבקים חזקים סותרים, אז אולי הוא צריך להתפצל לשני נוירונים. ואם הקשרים של שני נוירונים דומים מדי, אז אולי הם צריכים להתאחד לאחד. כלומר אנו יכולים לעצב את הארכיטקטורה בהתאם לפידבקים ולחוסר התאמות. ואילו ברמת המקרו, הדבר מאפשר למערכת לחפש הפתעות, ודוגמאות שבהן שגתה בחיזוי העתיד, וזה הסקרנות. למשל, אם שכבה מלמעלה שגתה בחיזוי זו שמתחתיה, אז ממשיכים לחקור דוגמאות דומות, עד שמגיעים לפתרון. כי המחשבה המערכתית הנכונה יותר היא על רשת שכבר למדה (המון). ואז היא ממשיכה ללמוד עוד דוגמא, או נתקלת בדוגמא חדשה שלא מתאימה לעבר. בניגוד לחשיבה היום שבה הרשת מתחילה ללמוד מהתחלה את כל הדוגמאות (חשיבת התינוקת). ולכן, כשזיהינו בעיה, מרחב החיפוש של הפרמטרים צריך לעבוד כמו חיפוש, ולא רק כמו אופטימיזציה - אלא אקספלורציה. ולהציע יותר חידושים - קומבינציות חדשות. ברגע שיש הערכה עצמאית, שבה שכבה שופטת את זו שתחתיה בעזרת מדד משלה, ולא רק לפי ההכְוונה שקיבלה מזו שמעליה (בפעפוע לאחור), אתה יכול גם לבצע חיפוש, ולצמצם את מרחב החיפוש לכל אורך הדרך (כלומר בין השכבות השונות, וכך החיפוש לא יצטרך להתפוצץ לאינספור קומבינציות בברוט פורס). הדור הראשון של חקר הבינה המלאכותית היה החיפוש (כפרדיגמה אלגוריתמית מרכזית, למשל בהסקה לוגית), ואילו כיום הבינה המלאכותית בורחת מהחיפוש כמו מאש, והחליפה אותו באופטימיזציה (בכיוונון פרמטרים רציפים ובסטטיסטיקה), אבל בעתיד תהיה סינתזה ביניהם. גם לחיפוש יש מה להציע (ולא רק להתפוצץ), אם מנהלים אותו נכון, ואכן הרבה פעמים במוח מתבצע חיפוש, כמו גם באבולוציה, כי זו דרך שמאפשרת חידושים יצירתיים יותר - בעזרת קומבינציה והערכה שלה. הרי הפילוסופיה עצמה היתה משעממת מאוד וחנפנית אם היא הייתה רק אופטימיזציה אל מול פונקציית הערכה שלה, והיותה חיפוש הוא מה שהופך אותה לקשה ומעניינת - וליצירתית, במאבקה אל מול ההערכה שלה. ומדוע האבולוציה מהירה מחיפוש ברוט פורס? ההצלחה של האבולוציה נובעת מעצם יכולת ההרכבה, כלומר בהתחלה החיפוש הוא עם קומבינציות פשוטות, ואח"כ, בשכבות הבאות, צעדי החיפוש גדלים, עם קומבינציות של חלקים מורכבים בעצמם. ובכל שלב (כלומר שכבה) יש הערכה עצמאית של היצור. כך שזה לא ברוט פורס כי הצעדים הקודמים בלמידה משפיעים על הצעדים הבאים, ומכוונים אותם, ולכן החיפוש הוא לא בכל מרחב האפשרויות, אלא רק באלומה מתקדמת. אם כן, תופעת ההרכבה והדורות (=שכבות) היא בסיסית בלמידה. כלומר: גם בלמידה עמוקה וגם במוח וגם באבולוציה וגם בהגדרת הלמידה הכללית, יש לנו ריבוי רכיבים שהם קופסאות שחורות, ויש ביניהם חיבורים בבנייה (שאותה צריך לאפיין בכל מקרה פרטי: בלמידה עמוקה צירופים לינאריים עם טוויסט של חוסר לינאריות, באבלוציה - זיווג, וכן הלאה במערכות אחרות). כלפי מעלה הם מחשבים פונקציה, בעזרת הלמטה. ואילו כלפי מטה הם נותנים הערכה (למשל בעזרת גרדיאנט או אולי בחירה, למשל בבן-זוג, מבינה?).

פילוסופיה של חקר הרשתות

מה פידבק יוצר? בפשטות, משוואות דיפרנציאליות חלקיות ומשוואות רקורסיביות, שהן למעשה מנגנוני פידבק, ומכאן תופעות המורכבות והכאוס. לכן גם במוח, ובלמידה בכלל, מעגלי פידבק ייצרו תופעות דומות, שהן אם כן טבעיות ללמידה, ולא תקלות שלה. אך אילו סוגי פידבק יש? ישנם מנגנונים אלטרנטיביים לפעפוע לאחור של גרדיאנט דיסנט (=ירידה בשיפוע, באופטימיזציה) בהעברה אחורה של הערכה. למשל: שאיפה לפשטות (ההערכה היא לפי מדידה כמה זה פשוט, כמו לפי תער אוקהם). או שאיפה לחידוש. או לווריאביליות ולגיוון (התפלגות מסוימת). אך התכונה הכי חשובה של פידבק איננה לפי מה הוא, אלא מה גודל המעגל שהוא יוצר, כי זוהי תכונה מערכתית. וכאן בולטת החולשה של הפעפוע לאחור, שיוצר מעגל פידבק ענק, שהוא מלאכותי מאוד במערכת גדולה - ואיטי מאוד. אלטרנטיבה סבירה יותר ולכן נפוצה יותר היא לולאות משוב קצרות (לא קיימת אף מערכת למידה בעולם מחוץ לרשתות נוירונים מלאכותיות שלומדת בפעפוע לאחור). למשל במוח, ישנם הרבה קשרים חוזרים אחורה בין שכבות הנוירונים, בכיוון ההפוך (שלא קיימים בלמידה עמוקה). מה שחסר כיום בהבנת המוח - וכמו כן בלמידה עמוקה - הוא הרעיון של תחרות, ושל התפשטות רעיון באוכלוסייה (מה שדווקא מתאים יותר לכלל הב). שהרי בכל שלב, מתחרות במוח כמה אפשרויות, כמה מחשבות המשך, ונבחרת אחת. כלומר ישנה תחרות על איזושהי הערכה, שבוחרת איך להמשיך את הלמידה. כלומר: חשיבותו הגדולה ביותר של הפידבק הוא דווקא בתחרות שהוא יוצר (בדיוק כמו בכלכלה או בדמוקרטיה, עצם קיום הפידבק הוא החשוב, גם אם הוא לא אידיאלי). אבל במעגל משוב גדול מדי כל זה אובד או לא יעיל, לעומת תחרות צמודה במעגלים קטנים. גם באלגוריתם פייג'ראנק של גוגל יש האבס, שהם מעריכים, וזו למעשה מהותו - ניתוח הגרף כך שחלק מהקודקודים ברשת מעריכים אחרים (ובתורם מוערכים על ידם). כל זה דומה מאוד לרשתות נוירונים, וכך נוצרת תחרות בין האתרים על הדירוג, וככלל תחרות איכות ברשת. ובמדע? כל מאמר מצטט אחרים, כלומר זה ההערכה ברשת, שבה אין שכבות אלא כולם מחוברים לכולם. והשכבות נוצרות לפי זמן הפרסום (כל מאמר מעריך את אלה שפורסמו לפניו). כלומר יש לנו כאן שכבות שמעריכות את אלה שלפניהן, ומוערכות על ידי אלה שאחריהן, וכך נוצרת התחרות, בעזרת מנגנון רשת מאוד פשוט. בשני מקרים אלו לא צריך מעגל פידבק חיצוני גדול מבחוץ כדי ליצור הערכה ותחרות, אלא ההערכה בהן נוצרת מתוך עצמן. לא חייבים בהכרח הערכה חיצונית חזקה כמו באבולוציה כדי ליצור תחרות, וזהו המפתח ללמידה לא מונחית, שהיא הלמידה הדומיננטית במוח, והמגרעה הגדולה של למידה עמוקה, שזקוקה לכמות אדירה של דוגמאות (אגב, גם באבולוציה עיקר התחרות היא על הבת זוג, כלומר על מעגלי המשוב הקטנים, הפנימיים למין, ולא מול ההכחדה הגדולה). כך אנו רואים שדווקא ברשתות שאין בהן הערכה חיצונית ברורה, למשל בפייסבוק, בשוק המניות, ובהיכרויות, ובמאמרים, עדיין תיתכן תחרות עזה. ברשתות כאלה אתה מקבל מספר, כמו מחיר או לייקים או h-index או pagerank ודירוג בגוגל, וההכְוונה עליך. המספר הזה אינו נותן לך הכְוונה כלשהי, אלא רק הערכה, ואתה צריך לפרש אותו ולהבין ממנו מה הכיוון שאליו אתה צריך להשתנות. וזאת בניגוד לגרדיאנט שמכוון אותך בלמידה עמוקה, שהוא כיוון שניתן לך מלמעלה. ואולי אפשר לטעון שהתחום הפולינומיאלי זה מה שיש בו הכְוונה למידתית, ואילו NP היא מחלקת הבעיות ללא הכְוונה, ולא גזירה, אלא כאוטית ולא מקומית. לכן צריך ללמוד מ-NP שהערכה לא מספיקה ללמידה. רק הכְוונה. שהרי NP היא בדיוק מעגל הפידבק הענק הזה, מבחוץ, שמסתבר שאיננו נותן כלום ללמידה בפנים, שתוביל אותנו לפתרון. לא ניתן לגזור מהערכה כזו הכְוונה. האם הפולינומיאלי הוא הלמרקיאני לסירוגין, כלומר ניתן לפירוק לאופטימיזציה מקומית, כלומר הוא בנייה+הכְוונה? במוח עדיין לא יודעים איך עובדת הלמידה, אבל באבולוציה כן, ואנו רואים שגם בה יש תכונת מפתח: פונקציית הערכה עצמאית, שבגלל זה יש שני מינים. כלומר אפילו שיש הערכה חיצונית חזקה של חיים ומוות, כדי שלמידה תעבוד צריך בתוך המערכת גם הערכה פנימית עצמאית, של מין. מעגל המשוב הגדול חייב להיות מפורק למעגלי משוב קטנים וצמודים יותר, שאינם רק נגזרת, תרתי משמע, שלו. גם ברשת תרבותית/פוליטית/חברה בע"מ/כלכלה יש פונקציות הערכה עצמאית. דהיינו: יש חלקים שזו כל הפונקציה שלהם. ואז יש תחרות עליה, דהיינו יש כפילות ויתירות וגיוון ושונות והשוואה בין אלטרנטיבות (אחרת למה קיימת היתירות הפסיכית בכל מערכות הלמידה? למה יש כל כך הרבה נוירונים במוח וגנים בגנום ואורגניזמים במין - ואנשים במדינה). אם כן, כיצד פועלת ההערכה הפנימית? כיצד היא מוערכת בעצמה? ובכן, ישנן פשוט יחידות הערכה עצמאיות בתוך המערכת, שמכָוונות עצמאית, ולא רק מעגל כולל גדול של פידבק. בגדול, הפידבק הכללי למערכת נדיר ויקר, ולכן מסתמכים על פונקציות הערכה משניות. ופשוט לומדים גם את פונקציות ההערכה. ומה קורה ב-NP? ההערכות המשניות לא מצליחות. למעשה, כל הרעיון של למידת חיזוקים מחוץ למערכת כדבר שיוצר את למידת המערכת (למשל הביהביוריזם) הוא טעות תפיסתית, שמקורה בתמונה פילוסופית פשטנית של הלמידה. לעולם אין לנו פידבק סופי, כל החשבון עוד לא נגמר.

פילוסופיה של רשתות נוירונים

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

הפילוסופיה של הלמידה העמוקה: סיכום

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

תרבות וספרות

source: hitdarderut-haaretz

source_format: html

domain: culture

html_raw:
<!DOCTYPE html><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>פרוגרמה להתקדמות המדעים הלמידתיים: למידה חישובית, למידת מכונה ומדעי המוח - תרבות וספרות - התדרדרות הארץ</title><link rel="icon" type="image/png" href="favicon-192x192.png" sizes="192x192"><link rel="apple-touch-icon" sizes="180x180" href="apple-touch-icon-180x180.png"><link rel="canonical" href="https://hitdarderut-haaretz.org/tarbut-vesifrut76" /><meta property="og:image" content="https://degeneration-of-nation.org/img/kod.jpg" /><link rel="license" href="https://creativecommons.org/licenses/by/4.0/"><link rel="stylesheet" href="styles.css"><link rel="stylesheet" href="column.css"><link rel="stylesheet" href="article.css">
התדרדרות הארץ

פרוגרמה להתקדמות המדעים הלמידתיים: למידה חישובית, למידת מכונה ומדעי המוח

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

מאת: מתמטיקאי (כבר לא אהיה)

מכתב לתלמידה: הקוד והעקידה - הכול קשור (ללמידה)  (מקור)

פילוסופיה למידתית של המתמטיקה

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

פילוסופיה למידתית של מדעי המחשב

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

פילוסופיה של האלגוריתמיקה

למדת פונקציה או אלגוריתם? תשים לב שזה דומה לגבול באנליזה - ששם נמצאת הפונקציה (שהיא הגבול). ובמקום אפסילון ודלתא, יש לנו כאן אינטראקציה בין מורה ותלמיד. התלמיד שואף לגבול (שהוא האופק שלו), והמלמד ניצב בעמדת המדד בגבול, למשל שואל עד כמה אתה קרוב לתוצאת הפונקציה בנקודה מסויימת. כלומר צד המורה, הצד שמודד הצלחה, ששופט את ההתכנסות שלך, הוא כמו הקריטריון ב-NP. ומה הצרה ב-NP? שזה בדיוק ההפך מגבול רציף באנליזה, כי בבעיות כאלה מדידה חלקית של ההצלחה לא עוזרת כלל להשגת היעד, ולא מסייעת ללמידה, כלומר שאתה לא יכול להצליח כתלמיד. אין הכְוונות בדרך, שמאפשרות להגיע ליעד. הלמידה זה התהליך של בנייה מהדברים שיודעים לעשות - משהו שלא יודעים לעשות. וכל זה אל מול מדד הערכה. ואם ההערכה היא קריטריון פנימי, לא חיצוני, אזי זו הדרך - שהיא המתודה. אבל אם אין כלל קריטריון פנימי כלשהו אלא רק חיצוני? אז אתה ב-NP. האם כשאתה לומד אלגוריתם, נכון להגדיר זאת כלמידה מדוגמא או מהדגמה, כלומר כלמידה מה או כלמידה איך? האם אתה מקבל רק את ערכי הקלט והפלט של הפונקציה שאתה לומד במקרה מסויים, או שאתה מקבל בנייה קונסטרוקטיבית של הפונקציה במקרה קלט-פלט מסויים? התשובה צריכה להיות גם וגם, כי הלמידה היא בדיוק הפירוק של הפונקציה כבנויה מפונקציות קודמות, שזוהי עצם ההדגמה, אבל בכל שלב הבחירה איזו קומבינציה מהן לעשות תלויה בדוגמא (האם הוכחה היא דוגמא או הדגמה?). אם כן, NP הן הבעיות שקל לבחון עליהן - וקשה ללמוד (כלומר שלא ניתן להורות - להיות מורה - במקרה שלהן). וכך בדיוק גם בבעיית הראשוניים, השאלה היא עד כמה אתה לא יכול ללמוד אותם, כמה הם בלתי צפויים (הסתברות, שגם אותה אפשר להגדיר מחדש בעזרת למידה). זוהי מהותה של השערת רימן (ולכן צפוי להיות לה קשר עמוק לבעיית הפקטוריזציה של הראשוניים כפונקציה חד כיוונית). מהי הלמידה במספרים ראשוניים? בכל מספר ראשוני שהגעת אליו על רצף הטבעיים, מה שכבר אתה יודע זה לבנות בעזרת כפל מספרים מכל הראשוניים שלפניו. כלומר הוא (הראשוני הבא) משהו שאתה לא למדת וצריך ללמוד, והשאלה העמוקה היא כמה מוגבלת יכולת הלמידה שלך בעצם, אם הבנייה הלמידתית היא בנייה של מספר בעזרת כפל של מספרים קודמים. כלומר: בשתי ההשערות החשובות ביותר במתמטיקה קיים ניסוח למידתי שנוגע במהותן - והיה צריך להיות הדרך בה הולכים לפתרונן, אם לא היינו נתקלים בחשיבה שפתית, דהיינו בסוג פרימיטיבי מאוד וקומבינטורי של בנייה (הן של המספרים הטבעיים והן של אלגוריתמים). בשתיהן צריך להוכיח שתופעה מסוימת קשה ללמידה - כלומר למצוא מה אי אפשר ללמוד. בהיסטוריה של המתמטיקה פתרנו השערות בסיס שלא ידענו כלל איך לגשת אליהן (קיומם של מספרים לא רציונליים, ריבוע המעגל, המשוואה הקווינטית, משפט גדל, וכו') תמיד בעזרת בנייה חדשה שכזו, שהצליחה לתפוס את התופעה - ולאחריה הוכחה מה לא ניתן לבנות באמצעותה. נשים לב שכל אלו היו בעיות מה לא ניתן לעשות (באסכולה הפיתגוראית קיומו של מספר לא רציונלי היה חוסר היכולת לבנות אותו כיחס באמצעות הטבעיים, למרות שהבעיה מנוסחת בצורה חיובית), כי הבעיות העמוקות יותר במתמטיקה הן תמיד בעיות חוסר (אי-) אפשרות. בדיוק בגלל שהמתמטיקה היא בנייה - הוא מועדת לעמוד מול שוקת שבורה כשהיא צריכה להראות מה לא ניתן לבנות (ופחות מה כן ניתן - כי אותו אפשר פשוט לבנות). ולכן כדי להתקדם בשתי בעיות חוסר האפשרות המובילות כיום, NP ורימן, צריך לבנות הגדרה מתמטית של למידה ושל הבנייה שנובעת ממנה - ואז הוכחה בדרך השלילה שלא תתכן בנייה כזו כי לא ניתן ללמוד זאת (במילים אחרות: הלמידה יכולה וצריכה לבטא את המבנה המתמטי שהיא לומדת, ולהטיל עליו מגבלות בגלל מה שאי אפשר ללמוד - שיגזר מתורת הלמידה המתמטית - ובכך להוכיח את גבולות אפשרויותיו). ובנוגע לבעיית NP מול P, נשים לב שללמוד, במובן הכללי, זה בהכרח קשה, לא יעיל ולא פולינומיאלי. ובעצם אולי מה שמספיק להוכיח זה שללמוד זו בעיה קשה, כי קל לבדוק שלמדנו נכון, בהתאם לדוגמאות. זוהי בעצמה בעיית NP. כלומר להראות שאם היה אלגוריתם למידה כללי יעיל - אזי צריך להגיע לסתירה (הובלה לאבסורד כזה היא שאם אפשר לפתור את בעיית הלמידה, אז אפשר לפתור הכול בקלות, כי הלמידה יכולה קודם ללמוד את אלגוריתם הפתרון, ובמצב כזה אפשר גם ללמוד לפתור את בעיית הלמידה עצמה, וכך עד שמגיעים לאיזשהו אלגוריתם למידה מינימלי, אבל הרי גם הוא נלמד. בנוסף, במצב כזה, יש מעריך פולינומיאלי מינימלי לאלגוריתם ב-P שפותר בעיית NP, ואז יש להראות שבגלל תכונות הלמידה הקונסטרוקטיביות, גם אלגוריתם שמתחתיו, כלומר שהחדש נבנה בעזרתו ושיש לו מעריך פולינומיאלי נמוך יותר, פותר בעיית NP. לחילופין, לחלק את האינפורמציה בין הלבנים מהן בנוי הפתרון, ולרדת באינדוקציה אד אבסורדום, בעזרת פורמולציה של הרעיון שפתרון של בעיית NP תלוי בכל האינפורמציה, ואין בה הפרד ומשול, לפחות בבנייה למידתית. הפולינומיאליות עצמה נובעת מכך שהלמידה היא בנייתית, ושתי הבנִיות הבסיסיות הן חיבור אלגוריתמים, וקריאה בלולאה, דהיינו חיבור וכפל, ומכאן הפולינום שב-P, כלומר ההסבר למה זוהי בדיוק הגדרת יעילות וקלות פתרון). נשים לב שהדברים הבסיסיים במתמטיקה הם איכשהו תמיד תהליך דיסקרטי אינסופי: הראשוניים, הגבול, החישוב, הלוגיקה… וכך זה יהיה גם בלמידה, ולמעשה, הלמידה היא הסיבה לתופעה הזאת, כי היא מתחתיהם. ובכל מקרה, מתוך תכונה משותפת זו, נובע כושרה לטפל בהם, ולפרוץ לעבר פרדיגמה מתמטית חדשה, שהיא מעבר לשפה (שהיא הפרדיגמה המתמטית הנוכחית). ואז נשים לב כמה בעיית NP היא למעשה בעיית למידה (שהומשגה בטעות בעזרת שפה, ולכן הפכה לכזו שאין שפה ההולמת אותה, או מסוגלת אפילו להתחיל לתפוס את פתרונה), ואז לא נבין למה לא הבנו שהמשגה בעזרת למידה היא כיוון פתרונה הטבעי. שהרי בעזרת הראייה הלמידתית, אנו אף רואים את הדמיון של NP לאבולוציה, בה למידה היא המנגנון (זיווג ומוטציה) שנאבק למול בוחן ההישרדות והכשירות, כאשר קשה מאוד לבנות יצור חי ולחדש בו, וקל מאוד לבדוק אם הוא שורד או לא. הביולוגיה תמיד נמצאת בעמדת למידה קשה אל מול הטבע האכזר, שקל לו לשפוט את מאמציה. וכאן, בדרך אל הלמידה, אנו רואים שהיופי משחק תפקיד בהכְוונה, כדי שהביולוגיה תוכל לנחש באמצעות קיצורי דרך מי כשיר יותר ומי פחות. וכך גם במתמטיקה. קריטריון קשה של הוכחה הולך בד בבד עם קריטריון רך של יופי, שמאפשר למתמטיקאים לעשות מתמטיקה ולהתקדם בלמידה המתמטית, למרות שזו בעיה קשה עקרונית. וגם חשיבתינו תלוייה במהלכים יפים. וכך אנחנו אף שופטים את הפילוסופיה.

פילוסופיה של תורת הסיבוכיות

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

פילוסופיה של הלמידה החישובית

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

פילוסופיה של למידת מכונה

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

פילוסופיה של המתמטיקה: סיכום

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

פילוסופיה של הלמידה הממוחשבת

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

פילוסופיה של הלמידה העמוקה

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

פילוסופיה של מדעי המוח

מהי התשתית הרעיונית שבכלל מאפשרת כלל כמו כלל הב (המקומי כל כך, לעומת הגלובליות של רשתות עמוקות), שנוטה להיזון חוזר עצמי חיובי או שלילי (תכונה מושחתת פטאלית)? כיצד כלל הב בכלל יתכן, כמנגנון למידה בסיסי, שאין לו כלל קשר לא להכְוונות - ולא למבנה, לא אל החוץ - ולא אל הפנים? ובכן, כלל הב הוא לא רק "יורים ומתקשרים" (נוירונים שיורים ביחד מתקשרים ביחד - האחים fire&wire), אלא ניסוחו האמיתי הוא שאני מחזק את הקשר ממי שחזה אותי, ומחליש ממי שאני חזיתי אותו. לכן, כלל זה הגיוני רק תחת ההנחה שהנוירונים הם גם בעיקרם מעבירי מידע וגם מעריכים איכותיים עצמאיים, ואז כלל זה יוצר מוניטין, ומחפש חידוש, כדי להפיצו. בנוסף הוא יוצר שכבות, כי הוא נגד מעגליות. הוא מחפש את הראשון לזהות, ולכן יוצר תחרות מי יהיה הראשון לזהות, כלומר: הוא כלל תחרותי. אך צריך שאף מקור אחד לנוירון לא יעלה על חמישים אחוז, או על כל פנים על סף קבוע, אחרת זה היזון מעגלי חיובי מושחת (בנוסף, ברור שכלל זה בלבד לא מספיק, כי הוא אוטיסטי, וצריך גם נוירוטרנסמיטור שנותן פידבק חיצוני, וכנראה עוד צורות פידבק). כלומר, כלל הב יכול לעבוד רק אם יש לך (כנוירון) יכולת הערכה עצמאית, ורומז לכזו (!). ואז יש תחרות עליה. לכן הוא בהחלט הגיוני לרשת חברתית של בני אדם, אף יותר מאשר לרשת נוירונים, לכאורה. אך מכל מבט חטוף בקונקטום של המוח, או אפילו של רשת נוירונים אחת, נדמה שהמוח הולך רחוק מאוד מאוד בדרכים ליצור חוסר סדר וגיוון ורעש וסיבוך, אולי כדי לא לתת לכלל הב להתכנס לטריביאליות, ולתת לו חומרים מגוונים, סטוכסטיים, כאוטיים ובלתי יציבים מספיק לעבוד עליהם. כלל הב מתייחס לאינפורמציה כתוכן, ולא כפעולה בחישוב (כמו בתפיסת רשת הנוירונים כסוג של מחשב מבוזר ומקבילי). כלומר, כשיש המון יתירות (כמו במוח, או במערכות לומדות רבות מאוד אחרות) וכולם עומדים על אותו קו, אז צריך לבחור את המסר הנכון, שאתה מעביר הלאה עם שינוי בעל פרמטרים קטנים יחסית, כלומר כשמדובר יותר בהעברת מידע ופחות בחישוב. ובהקשר זה, כל הסיפור של החיזוי מלמעלה למטה במוח (נגיד: כשכל שכבה עליונה חוזה את זאת שמתחתיה, וכך למשל אני חוזה את נתוני החושים שאקבל), קשור כנראה באופן עמוק לכלל הב. כי מי שאני חוזה אותו הרי זה מיותר שאקשיב לו. ואם כן, יש כאן תהליך של ניחוש והתכנסות ופחות של חישוב. לכן יש להחליף את המילה חיזוי בניחוש. בתפיסה כזו, המוח פועל באמצעות חישוב מלמטה (למעלה) וניחוש מלמעלה (למטה), ואז יש את נקודות הקונפליקט ביניהם, או שכבות הקונפליקט, ומי שצדק (וניחש או חישב את ההמשך) מכריע שם את השני. אם כל שכבה עליונה אומרת מה היה צריך להיות למטה, ולהפך, הרי שהתכנסות תהליך זה מאפשרת למצוא את מקור השגיאה, שהוא המקום שממנו מתחילה ההערכה הלא נכונה לקפוץ, ושם יש עליה חדה בבעיה. כלומר או שהחישוב - העולה מלמטה - השתבש במקום זה והפך ללא נכון, ואז גרר טעות בהמשך השכבות למעלה, או שהניחוש - היורד מלמעלה - השתבש במקום זה והתברר כלא נכון, ואז גרר טעות בניחוש כלפי המשך השכבות למטה. לפיכך, נוירון אמיתי הוא מעריך תוכן, ולא רק מוערך. כי הוא מחליט למי להקשיב. כלומר הוא מוערך ספציפית על כל תוכן שהוא מעביר, ומעריך ספציפית כל תוכן שהוא מקבל. הוא לא חושש ממנגנון משוב חיובי או שלילי אינסופי, שבו הוא מקשיב רק לחבר אחד ולא לאף אחד אחר, כי הוא שומע מספיק דעות עם מספיק רעש, ואולי יש גם גבול לכמה שהוא מקשיב למישהו (אולי זה לוגריתמי למשל). כלומר אנו רואים שלכל נוירון יכולים להיות לא רק פידבק חיצוני והכְוונה מלמעלה, אלא גם דרכי מדידה אינטריניסטיות להערכה, כגון: האם הוא חוזה אותי, והאם הוא מתאים לחיזוי של מי שמעליי כרגע. החשיבה השגורה בלמידה עמוקה היא על שני הכיוונים ברשת כנפרדים, שבאים בשני שלבים נפרדים: החישוב (פעפוע קדימה) מלמטה למעלה, והפידבק (פעפוע לאחור) מלמעלה למטה. אבל אפשר לחשוב עליהם גם כעל גלים במערכת שמתקדמים בזמן בו זמנית, א-סינכרונית ובשני הכיוונים, לפי עוצמתם, כלומר לפעמים התקדמות מסויימת נעצרת בנוירון לא מרוצה, או שכבה שלמה כזו, ומתחילה להחזיר פידבק לאחור, ולהפך, ויש החזרים והדים וים סוער, עד שהוא מתכנס למצב מסויים, וזהו מנגנון החישוב האמיתי של הרשת (ולא רק מלמטה למעלה). וכך גם האימון וגם הביצוע/חיזוי הם לא שני שלבים נפרדים, כאילו שהבק פרופגיישן והפרונט פרופגיישן מתרחשים במקביל. וכך סביר שהדבר מתבצע במוח. ואם כל שכבה חוזה את זו שלפניה, אז לפעמים יוחזר פידבק אפילו מהשכבה הנכנסת, של הנתונים, מה שלא קורה כיום בלמידה עמוקה, וחבל, כי אנו מפספסים את ההדהוד הזה, והמידע שבסיגנל הבק פרופגיישן נעלם והולך לאיבוד כשהוא מגיע לשכבת הקלט (אנו לא משתמשים במידע הזה להשוואה לקלט האמיתי). אבל אם כל יחידת עיבוד מקבלת הכְוונה מלמעלה, ומוציאה באופן עצמאי (ולא רק כחלק מפעפוע לאחור) הכוונה למטה, הרי שבמפגש בין למטה ללמעלה הגרדיאנט או ההערכה שיורדים מלמעלה נפגשים במה שעולה מלמטה, בחישוב שהיה. ואם יש חוסר התאמה אז יש בעיה. לשני הצדדים. ואם הם לא מסכימים לאיזה כיוון האות צריך להשתנות, אז צריך להזעיק תשומת לב לחוסר ההתאמה. ולכוון אליה את משאבי המערכת, וכך ניתן לשים לב לחידושים, או להפתעות, או לבעיות. למשל, ברמת המיקרו, אם נגיד שיש נוירון לא מקובל, שהמשקלות ממנו הלאה הן קרוב לאפס, הרי שהוא קיבל בכך פידבק שלילי להפוך לפונקציה יותר מועילה ומעניינת. ואם הוא מקבל באופן עקבי פידבקים חזקים סותרים, אז אולי הוא צריך להתפצל לשני נוירונים. ואם הקשרים של שני נוירונים דומים מדי, אז אולי הם צריכים להתאחד לאחד. כלומר אנו יכולים לעצב את הארכיטקטורה בהתאם לפידבקים ולחוסר התאמות. ואילו ברמת המקרו, הדבר מאפשר למערכת לחפש הפתעות, ודוגמאות שבהן שגתה בחיזוי העתיד, וזה הסקרנות. למשל, אם שכבה מלמעלה שגתה בחיזוי זו שמתחתיה, אז ממשיכים לחקור דוגמאות דומות, עד שמגיעים לפתרון. כי המחשבה המערכתית הנכונה יותר היא על רשת שכבר למדה (המון). ואז היא ממשיכה ללמוד עוד דוגמא, או נתקלת בדוגמא חדשה שלא מתאימה לעבר. בניגוד לחשיבה היום שבה הרשת מתחילה ללמוד מהתחלה את כל הדוגמאות (חשיבת התינוקת). ולכן, כשזיהינו בעיה, מרחב החיפוש של הפרמטרים צריך לעבוד כמו חיפוש, ולא רק כמו אופטימיזציה - אלא אקספלורציה. ולהציע יותר חידושים - קומבינציות חדשות. ברגע שיש הערכה עצמאית, שבה שכבה שופטת את זו שתחתיה בעזרת מדד משלה, ולא רק לפי ההכְוונה שקיבלה מזו שמעליה (בפעפוע לאחור), אתה יכול גם לבצע חיפוש, ולצמצם את מרחב החיפוש לכל אורך הדרך (כלומר בין השכבות השונות, וכך החיפוש לא יצטרך להתפוצץ לאינספור קומבינציות בברוט פורס). הדור הראשון של חקר הבינה המלאכותית היה החיפוש (כפרדיגמה אלגוריתמית מרכזית, למשל בהסקה לוגית), ואילו כיום הבינה המלאכותית בורחת מהחיפוש כמו מאש, והחליפה אותו באופטימיזציה (בכיוונון פרמטרים רציפים ובסטטיסטיקה), אבל בעתיד תהיה סינתזה ביניהם. גם לחיפוש יש מה להציע (ולא רק להתפוצץ), אם מנהלים אותו נכון, ואכן הרבה פעמים במוח מתבצע חיפוש, כמו גם באבולוציה, כי זו דרך שמאפשרת חידושים יצירתיים יותר - בעזרת קומבינציה והערכה שלה. הרי הפילוסופיה עצמה היתה משעממת מאוד וחנפנית אם היא הייתה רק אופטימיזציה אל מול פונקציית הערכה שלה, והיותה חיפוש הוא מה שהופך אותה לקשה ומעניינת - וליצירתית, במאבקה אל מול ההערכה שלה. ומדוע האבולוציה מהירה מחיפוש ברוט פורס? ההצלחה של האבולוציה נובעת מעצם יכולת ההרכבה, כלומר בהתחלה החיפוש הוא עם קומבינציות פשוטות, ואח"כ, בשכבות הבאות, צעדי החיפוש גדלים, עם קומבינציות של חלקים מורכבים בעצמם. ובכל שלב (כלומר שכבה) יש הערכה עצמאית של היצור. כך שזה לא ברוט פורס כי הצעדים הקודמים בלמידה משפיעים על הצעדים הבאים, ומכוונים אותם, ולכן החיפוש הוא לא בכל מרחב האפשרויות, אלא רק באלומה מתקדמת. אם כן, תופעת ההרכבה והדורות (=שכבות) היא בסיסית בלמידה. כלומר: גם בלמידה עמוקה וגם במוח וגם באבולוציה וגם בהגדרת הלמידה הכללית, יש לנו ריבוי רכיבים שהם קופסאות שחורות, ויש ביניהם חיבורים בבנייה (שאותה צריך לאפיין בכל מקרה פרטי: בלמידה עמוקה צירופים לינאריים עם טוויסט של חוסר לינאריות, באבלוציה - זיווג, וכן הלאה במערכות אחרות). כלפי מעלה הם מחשבים פונקציה, בעזרת הלמטה. ואילו כלפי מטה הם נותנים הערכה (למשל בעזרת גרדיאנט או אולי בחירה, למשל בבן-זוג, מבינה?).

פילוסופיה של חקר הרשתות

מה פידבק יוצר? בפשטות, משוואות דיפרנציאליות חלקיות ומשוואות רקורסיביות, שהן למעשה מנגנוני פידבק, ומכאן תופעות המורכבות והכאוס. לכן גם במוח, ובלמידה בכלל, מעגלי פידבק ייצרו תופעות דומות, שהן אם כן טבעיות ללמידה, ולא תקלות שלה. אך אילו סוגי פידבק יש? ישנם מנגנונים אלטרנטיביים לפעפוע לאחור של גרדיאנט דיסנט (=ירידה בשיפוע, באופטימיזציה) בהעברה אחורה של הערכה. למשל: שאיפה לפשטות (ההערכה היא לפי מדידה כמה זה פשוט, כמו לפי תער אוקהם). או שאיפה לחידוש. או לווריאביליות ולגיוון (התפלגות מסוימת). אך התכונה הכי חשובה של פידבק איננה לפי מה הוא, אלא מה גודל המעגל שהוא יוצר, כי זוהי תכונה מערכתית. וכאן בולטת החולשה של הפעפוע לאחור, שיוצר מעגל פידבק ענק, שהוא מלאכותי מאוד במערכת גדולה - ואיטי מאוד. אלטרנטיבה סבירה יותר ולכן נפוצה יותר היא לולאות משוב קצרות (לא קיימת אף מערכת למידה בעולם מחוץ לרשתות נוירונים מלאכותיות שלומדת בפעפוע לאחור). למשל במוח, ישנם הרבה קשרים חוזרים אחורה בין שכבות הנוירונים, בכיוון ההפוך (שלא קיימים בלמידה עמוקה). מה שחסר כיום בהבנת המוח - וכמו כן בלמידה עמוקה - הוא הרעיון של תחרות, ושל התפשטות רעיון באוכלוסייה (מה שדווקא מתאים יותר לכלל הב). שהרי בכל שלב, מתחרות במוח כמה אפשרויות, כמה מחשבות המשך, ונבחרת אחת. כלומר ישנה תחרות על איזושהי הערכה, שבוחרת איך להמשיך את הלמידה. כלומר: חשיבותו הגדולה ביותר של הפידבק הוא דווקא בתחרות שהוא יוצר (בדיוק כמו בכלכלה או בדמוקרטיה, עצם קיום הפידבק הוא החשוב, גם אם הוא לא אידיאלי). אבל במעגל משוב גדול מדי כל זה אובד או לא יעיל, לעומת תחרות צמודה במעגלים קטנים. גם באלגוריתם פייג'ראנק של גוגל יש האבס, שהם מעריכים, וזו למעשה מהותו - ניתוח הגרף כך שחלק מהקודקודים ברשת מעריכים אחרים (ובתורם מוערכים על ידם). כל זה דומה מאוד לרשתות נוירונים, וכך נוצרת תחרות בין האתרים על הדירוג, וככלל תחרות איכות ברשת. ובמדע? כל מאמר מצטט אחרים, כלומר זה ההערכה ברשת, שבה אין שכבות אלא כולם מחוברים לכולם. והשכבות נוצרות לפי זמן הפרסום (כל מאמר מעריך את אלה שפורסמו לפניו). כלומר יש לנו כאן שכבות שמעריכות את אלה שלפניהן, ומוערכות על ידי אלה שאחריהן, וכך נוצרת התחרות, בעזרת מנגנון רשת מאוד פשוט. בשני מקרים אלו לא צריך מעגל פידבק חיצוני גדול מבחוץ כדי ליצור הערכה ותחרות, אלא ההערכה בהן נוצרת מתוך עצמן. לא חייבים בהכרח הערכה חיצונית חזקה כמו באבולוציה כדי ליצור תחרות, וזהו המפתח ללמידה לא מונחית, שהיא הלמידה הדומיננטית במוח, והמגרעה הגדולה של למידה עמוקה, שזקוקה לכמות אדירה של דוגמאות (אגב, גם באבולוציה עיקר התחרות היא על הבת זוג, כלומר על מעגלי המשוב הקטנים, הפנימיים למין, ולא מול ההכחדה הגדולה). כך אנו רואים שדווקא ברשתות שאין בהן הערכה חיצונית ברורה, למשל בפייסבוק, בשוק המניות, ובהיכרויות, ובמאמרים, עדיין תיתכן תחרות עזה. ברשתות כאלה אתה מקבל מספר, כמו מחיר או לייקים או h-index או pagerank ודירוג בגוגל, וההכְוונה עליך. המספר הזה אינו נותן לך הכְוונה כלשהי, אלא רק הערכה, ואתה צריך לפרש אותו ולהבין ממנו מה הכיוון שאליו אתה צריך להשתנות. וזאת בניגוד לגרדיאנט שמכוון אותך בלמידה עמוקה, שהוא כיוון שניתן לך מלמעלה. ואולי אפשר לטעון שהתחום הפולינומיאלי זה מה שיש בו הכְוונה למידתית, ואילו NP היא מחלקת הבעיות ללא הכְוונה, ולא גזירה, אלא כאוטית ולא מקומית. לכן צריך ללמוד מ-NP שהערכה לא מספיקה ללמידה. רק הכְוונה. שהרי NP היא בדיוק מעגל הפידבק הענק הזה, מבחוץ, שמסתבר שאיננו נותן כלום ללמידה בפנים, שתוביל אותנו לפתרון. לא ניתן לגזור מהערכה כזו הכְוונה. האם הפולינומיאלי הוא הלמרקיאני לסירוגין, כלומר ניתן לפירוק לאופטימיזציה מקומית, כלומר הוא בנייה+הכְוונה? במוח עדיין לא יודעים איך עובדת הלמידה, אבל באבולוציה כן, ואנו רואים שגם בה יש תכונת מפתח: פונקציית הערכה עצמאית, שבגלל זה יש שני מינים. כלומר אפילו שיש הערכה חיצונית חזקה של חיים ומוות, כדי שלמידה תעבוד צריך בתוך המערכת גם הערכה פנימית עצמאית, של מין. מעגל המשוב הגדול חייב להיות מפורק למעגלי משוב קטנים וצמודים יותר, שאינם רק נגזרת, תרתי משמע, שלו. גם ברשת תרבותית/פוליטית/חברה בע"מ/כלכלה יש פונקציות הערכה עצמאית. דהיינו: יש חלקים שזו כל הפונקציה שלהם. ואז יש תחרות עליה, דהיינו יש כפילות ויתירות וגיוון ושונות והשוואה בין אלטרנטיבות (אחרת למה קיימת היתירות הפסיכית בכל מערכות הלמידה? למה יש כל כך הרבה נוירונים במוח וגנים בגנום ואורגניזמים במין - ואנשים במדינה). אם כן, כיצד פועלת ההערכה הפנימית? כיצד היא מוערכת בעצמה? ובכן, ישנן פשוט יחידות הערכה עצמאיות בתוך המערכת, שמכָוונות עצמאית, ולא רק מעגל כולל גדול של פידבק. בגדול, הפידבק הכללי למערכת נדיר ויקר, ולכן מסתמכים על פונקציות הערכה משניות. ופשוט לומדים גם את פונקציות ההערכה. ומה קורה ב-NP? ההערכות המשניות לא מצליחות. למעשה, כל הרעיון של למידת חיזוקים מחוץ למערכת כדבר שיוצר את למידת המערכת (למשל הביהביוריזם) הוא טעות תפיסתית, שמקורה בתמונה פילוסופית פשטנית של הלמידה. לעולם אין לנו פידבק סופי, כל החשבון עוד לא נגמר.

פילוסופיה של רשתות נוירונים

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

הפילוסופיה של הלמידה העמוקה: סיכום

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

תרבות וספרות


domain: literature

html_raw:
<!DOCTYPE html><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>עלייתו ונפילתו של העיגול השחור - חיי לילה - התדרדרות הארץ</title><link rel="icon" type="image/png" href="favicon-192x192.png" sizes="192x192"><link rel="apple-touch-icon" sizes="180x180" href="apple-touch-icon-180x180.png"><link rel="canonical" href="https://hitdarderut-haaretz.org/igul-shachor35" /><meta property="og:image" content="https://degeneration-of-nation.org/img/sisyphus.jpg" /><link rel="license" href="https://creativecommons.org/licenses/by/4.0/"><link rel="stylesheet" href="styles.css"><link rel="stylesheet" href="column.css"><link rel="stylesheet" href="article.css">
התדרדרות הארץ

עלייתו ונפילתו של העיגול השחור

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

מאת: ברבור שחור

סיזיפוס והשטריימל  (מקור)

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

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

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

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

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

חיי לילה