|
||||
|
||||
כשאתה מדבר על "מה יכולה רשת נוירונים לעשות" אני לא מבין. אני אסביר מה אני כן מבין (ההשכלה שלי היא לא הרבה מעבר לאותה סדנה בת יומיים, ששילבה תיאוריה עם פרקטיקה). לרשת נוירונים נתונה יש מספר נתון של נוירונים במספר נתון של שכבות. בהתחלה היא לוח חלק. ואז מאמנים אותה על הרבה קלטים, כולם מאותו סוג, במטרה לטפל ממש ממש טוב בקלטים דומים. בסוף מקבלים רשת מאומנת, שעושה (בשאיפה) ממש טוב את אותה משימה מצומצמת. זה הסוג הנפוץ ביותר של רשתות עצביות, ומה שהוא יודע לפתור זה בעיות סיווג (איזה סוג מכונית בתמונה), או מתן ציונים (עד כמה הפודל הזה יפה). יש סוג אחר, דוגמת אלפא גו, שיודע לפתור את הבעיה "מה המהלך הבא האופטימלי". ויש סוג שלישי, שמזינים לו קלטים בלי לתת להם ציונים, והוא מצליח אולי לזהות בהם תבניות (אבל לא לומר בעצמו משהו סמנטי עליהן). בכל הסוגים, רשת נתונה שעברה אימון יודעת לפתור בעיה אחת מצומצמת ומוגדרת. חשוב לשים לב שחלק מהמשימות שהמוח האנושי עושה לא ניתנות בקלות לרדוקציה לאחד משלושת סוגי הבעיות שרשתות עצביות יודעות עקרונית לעשות. אני לא מדבר אפילו על רגש או על תכלית, אלא למשל על הוכחת משפטים במתמטיקה, או משימות תכנות. חזרה למונחים שדיברת עליהם: כשאתה שואל "מה יכולה רשת הנוירונים לעשות", השאלה אם אתה מדבר על רשת בתולה (יש לה פוטנציאל מגוון מאוד, אבל בינתיים היא לא יכולה לעשות כלום), או על רשת מאומנת (יכולה לעשות מצוין (לפעמים) משהו אחד מצומצם). בכל הסוגים, יש סיכוי מסוים שרשת עם יותר נוירונים ביותר שכבות תצליח יותר טוב (אני מנחש שאין לזה הוכחה, כי לא יודעים להוכיח כלום ברשתות עצביות. אני מניח שבקירוב מסוים זה נכון, הסתברותית). אני לא חושב שמישהו יודע לומר משהו אינטליגנטי על "רשתות שמחוברות זו לזו בעל-רשת". |
|
||||
|
||||
תודה. אחרי ששלחת את השאלה עלתה במוחי המחשבה הטריביאלית שבעצם רשת אחת גדולה מכילה באופן אינהרנטי "הרבה רשתות שמחוברות ברשת-על" (פשוט ע"י איפוס הפרמטר של עוצמת הקשר בין הנוירונים מרשת אחת לאחרת) בכל רמה או בחלק מהן, כך שהשאלה שהעליתי אולי די מטופשת. עדיין יש לי הרבה שאלות בעניין, בעיקר בשאלות הקשר בין רשתות נוירונים לבין דפוס הפעולה של המוח (מערכת הראיה מן הסתם פועלת די דומה לר"נ, אבל כפי שציינת ייתכן שהמצב שונה לגמרי לגבי פעולות חישוביות אחרות) אבל חושבני שלא אטריד בכך את הציבור עד שלא אבין קצת יותר בעצמי, אם בכלל. למעונינים, לדעתי סדרת הסרטונים שמתחילה כאן מהווה נקודת פתיחה טובה. חקסמח. |
|
||||
|
||||
צ"ל: "אחרי ששלחתי את השאלה...". |
|
||||
|
||||
משפט ששמעתי משני מרצים שונים על רשתות עצביות, אבל אני לא יודע לנמק אותו לעומק, הוא שהקשר בינן לבין המוח האנושי הוא משהו שבהתחלה חשבו שקיים, או שהיה השראה עמומה, אבל היום אף אחד לא חושב ברצינות שזה דומה. |
|
||||
|
||||
אולי זה עומד להשתנות |
|
||||
|
||||
אם למישהו יש שעתיים להשקיע בראיון פוקח עיניים בשאלה זאת, אני בהחלט ממליץ. אחחח, אילו הייתי היום בן 21... |
|
||||
|
||||
אילו היית היום בן 21...? מה? מה היית עושה? אל תשאיר אותי במתח. |
|
||||
|
||||
זה לא ברור מנוסח ההודעה? הייתי הולך ללמוד מדעי המוח. |
|
||||
|
||||
למד מדעי המוח לפני שמדעי המוח ילמדו עליך |
|
||||
|
||||
גם אני במתח. אנא ספר. |
|
||||
|
||||
או, עוד מישהו שמכיר את הסרטונים של 3blue1brown! הבנאדם גאון פדגוגי-מתמטי. סידרת הסרטונים שלו על אלגברה לינארית פתחה לי כמה צ'קרות. |
|
||||
|
||||
באמת משובח! ועכשיו אני סקרן לדעת - איך מכינים אנימציה שכזאת בתקציב סביר? |
|
||||
|
||||
הכל אצלו מתוכנת בפייתון (!), ואפשר להוריד את כל הקוד מ-github, לגמרי בחינם. הוא לא רק גאון אלא גם נשמה טובה (ואני גאה לתמוך בו ב-patreon). |
|
||||
|
||||
ביום שיותר אנשים יידעו מי זה גראנט סנדרסון מאשר מיהו דני סנדרסון נדע שהמשיח הגיע. ולא שיש לי משהו נגד דני סנדרסון. |
|
||||
|
||||
תנוח דעתך, הדור הצעיר לא יודע מי זה דני סנדרסון, כך שזה נעשה קל יותר משנה לשנה. |
|
||||
|
||||
לערוץ שלו יש 2.3 מיליון עוקבים. אני לא אתפלא אם היום שהזכרת כבר הגיע. |
|
||||
|
||||
:-) שכחתי את קיומם של 7 מיליארד גויים ימ"ש. |
|
||||
|
||||
למה אתה מתכוון בזה: ײחשוב לשים לב שחלק מהמשימות שהמוח האנושי עושה לא ניתנות בקלות לרדוקציה לאחד משלושת סוגי הבעיות שרשתות עצביות יודעות עקרונית לעשות. אני לא מדבר אפילו על רגש או על תכלית, אלא למשל על הוכחת משפטים במתמטיקה, או משימות תכנות.ײ קצת מוזר לי בהנתן שסוגים מסויימים של רשתות הן turing complete, אני מניח שהנקודה המעניינת היא ײבקלותײ. אתה יכול להרחיב? |
|
||||
|
||||
אני לא בטוח למה הכוונה ברשתות שהן טיורינג-שלמות. אם אתה רוצה תפרט, אבל בכל מקרה, אין לנו אלגוריתם להוכחת משפטים במתמטיקה או לתכנות ברמה שמתחילה אפילו לדגדג בני אדם (מומחים), אז מה עוזר אם רשת עצבית היא טיורינג-שלמה? אני לא כל כך יודע מה מעניין בטענה שלי שהבעיות האלו לא ניתנות בקלות לרדוקציה לבעיית סיווג או דירוג או איפטום-המהלך-הבא או זיהוי תבניות בקלט. זו לא טענה מלומדת. אם למישהו יש רעיון איך לעשות רדוקציה כזו, או קישור למחקרים שעשו זאת, זה יהיה מעניין. הוספתי "בקלות" כי אם מתעלמים מבעיות סיבוכיות או רמות אבסטרקציה אז זה קל. רוצה תוכנית שמסדרת רשימת מספרים, או תוכנית למשחק אנגרי בירדז? קל מאוד כבעיית סיווג: ייצר הרבה תוכניות אקראיות (או אפילו בצורה חצי-אינטליגנטית עם היורוסטיקות), תן למתכנת (או לקוד מחשב שאינו רשת עצבית) לסווג אותן ל"תוכנת אנגרי בירדז"/"לא תוכנת אנגרי בירדז". מצא פרמטרים רלוונטיים1 והזן לתוכנת רשת עצבית. אמן את הרשת העצבית, וכשהיא מוכנה הזן לתוכה עוד יותר הרבה תוכניות אקראיות. ברגע שהיא תודיע על אחת מהן "אה, זו בהסתברות גבוהה תוכנת אנגרי בירדז", עצור. הנה קיבלנו מערכת מחשב שעיקרה רשת עצבית והיא מתכנתת אנגרי בירדז (בסבירות גבוהה). 1 מה הבעיה למצוא פרמטרים רלוונטיים? כזכור, אני מתעלם מבעיות סיבוכיות או רמות אבסטרקציה, אז לצורך העניין נתייחס לקוד המחשב בקלט כמחרוזת של תווים. הפרמטרים הרלוונטיים הם (1) התו הראשון במחרוזת, (2) התו השני במחרוזת, (3)... כן, אני יכול לחשוב בעצמי על האופטימיזציה המופלאה של להתייחס ל-tokens בשפת התכנות במקום לתווים. אוקיי, "רדוקציה בקלות" היא לא המילה הכי מתאימה כאן. מה שאנחנו רוצים הוא "רדוקציה סבירה", בלי לרדת יותר מדי רמות אבסרטקציה ולעלות יותר מדי סדרי גודל ברמת הפירוט. |
|
||||
|
||||
אוקי, תודה על התשובה. אני חושב שצריך לדייק במשפט ײאין לנו אלגוריתם להוכחת משפטים במתמטיקה או לתכנות ברמה שמתחילה אפילו לדגדג.. ײ. אם מדובר על אלגוריתם שיכול להוכיח כל משפט, או לתכנת כל דבר - זה משהו שגובל בבינה כללית, לא? (בלשון המעטה. זה קשה גם למומחים אנושיים). ברור שאנחנו רחוקים מזה. אבל אם מדובר בהוכחת משפטים ספציפיים במתמטיקה, זה דווקא תחום מאד וותיק במדעי המחשב ועם הישגים (כלומר, הצליח להוכיח משפטים שבני אדם לא הצליחו). לגבי הקשר של רשתות עצביות לתחום: אני משאיר כאן קישור למאמר שהכותרת שלו היא Deep network guided proof search. לגבי תכנות.. תחשוב על האלגוריתם שמאמן רשתות ניורונים. זוהי משימת תכנות פרופר (לייצר קוד שמסווג משהו). רק כאן, דווקא המומחה האנושי לא מדגדג את ההישגים של הרובוט המאמן. בהקשר לײאפטמום המהלך הבאײ - אם אני חושב על machine learning ועל תת התחום supervised learning - הוא נשמע לי כמו בעיית אופטימזציה קלאסית. יש לך אוסף כלים כלשהו (לוח וגיר, דוגמאות אימון, פרמטרים של רשת הניורונים, מה שתרצה) ובעזרתם אתה צריך לגרום לתלמיד לקבל ציון כמה שיותר טוב - ותוך זמן סביר. כלומר אתה צריך לבחור בתבונה מה הכלי הבא אותו אתה מפעיל. דווקא נשמע לי מתבקש להשתמש ברשת נירונים כדי לתכנת (כלומר לאמן) תוכנות אחרות. |
|
||||
|
||||
אפטום המהלך הבא הוא אחד מסוגי הבעיות שהתחייסתי אליהן כבעיות מתאימות לרשת נוירונים. |
|
||||
|
||||
אבל התייחסת לתכנות כאל בעיה בלתי מתאימה. הראיתי איך היא כן - אפשר להשתמש ברשתות ל supervised learning |
|
||||
|
||||
אז לא הבנתי את כוונתך, ואני עדיין לא. "עבודה של מתכנת" היא (לצורך העניין) קבלת מפרט לתוכנה בשפה אנושית, והפקת קוד מחשב שיבצע את המפרט. האם אתה יכול להראות איך מגיעים באמצעות למידה מפוקחת לרשת נוירונים שתעשה את זה? |
|
||||
|
||||
''מפרט לתוכנה בשפה אנושית'' הוא להבנתי בעיית בינה כללית. ''מפרט למסווג שיודע לזהות הונאות כרטיס אשראי בהתבסס על אוסף דוגמאות'' הוא בעיני גם בעיה תכנות, רק בעייה ספציפית שבעבר העסיקה מתכנתים אנושיים. וכאן יש אלגוריתם שמשאיר אבק למתכנתים אנושיים. |
|
||||
|
||||
אוקיי, ברור. כשכתבתי ''משימות תכנות לא ניתנות בקלות לרדוקציה לאחד משלושת סוגי הבעיות שרשתות עצביות יודעות עקרונית לעשות.'' לא התכוונתי שאף משימת תכנות אינה ניתנת וגו' - הרי כל רשת עצבית פותרת משהו שאפשר היה לממש (פחות טוב) כמשימת תכנות קלאסית. התכוונתי שמגוון משימות התכנות שמתכנת אנושי ממוצע יכול לעשות לא ניתן וגו'. |
חזרה לעמוד הראשי | המאמר המלא |
מערכת האייל הקורא אינה אחראית לתוכן תגובות שנכתבו בידי קוראים | |
RSS מאמרים | כתבו למערכת | אודות האתר | טרם התעדכנת | ארכיון | חיפוש | עזרה | תנאי שימוש | © כל הזכויות שמורות |