חזון דאטה – חלק א' – מאת מנצלשבך דלגשון (רוני גורן)

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

חזון דאטה – חלק א', לפניכם.

חזון דאטה

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

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

משחקים חכמים
מסתבר שאחד התחומים בהם מתבטאת האינטליגנציה של היצור האנושי הוא משחקים, או ליתר דיוק משחקים שנוצרו על ידי בני אדם. מעניין לגלות שמשחק כמו "איקס עיגול", שדורש מאתנו מעט אימון וכמות מינימלית של ריכוז, דורש ממכונה הרבה יותר. הבה נחקור את ההתפתחות הראשונה בתחום המשחקים החכמים – משחק ה"איקס עיגול".
הדרך הפשוטה ביותר של מכונה לעבוד היא עם הסתברויות. לא תמיד נוח לבן אדם אך יעיל למכונה. משחק עם תוכנת "איקס עיגול" פשוטה הולך בדרך הבאה: התוכנה בודקת עץ של הסתברויות שהמתכנת הזין לתוכה ובוחרת את הדרך הכי טובה לפעולה. כדי להסביר אולי כדאי לתת דוגמא לעץ של איקס עיגול.
העץ מתחיל בבסיס, בו האיקס מתחיל והמכונה בוחנת את כל האפשרויות, כמו שנראה בשרטוט להלן, המכונה בוחנת בשלב הראשון, בו היא מתחילה, את כל האפשרויות שלה לשים איקס על הלוח, המספר הכולל הוא 9, כאן אני מראה כדוגמא רק 3. לאחר מכן היא מוציאה מכל אפשרות כזאת עוד 8 זרועות שמראות את האפשרות של היריב לשים עיגול, כאן אני מראה רק 3 אפשרויות מתוך אפשרות אחת. מכל אפשרות בשלב השני התוכנה מוציאה 7 זרועות בשביל האפשרויות לשים איקס וכהנה, וכהנה. מספר האפשרויות הכולל יוצא בסוף תשע עצרת, כלומר מכפלת כל המספרים עד תשע, כולל. התוצאה יוצאת בערך 362880, כאשר מורידים ממנה מקרים בהם המחשב נעצר כי הוא מגיע לניצחון או הפסד ולא ממשיך לפתח את העץ.

xo_game

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

xo_simetric

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

xo_openlines

לאיקס יש 5 שורות/טורים/אלכסונים פתוחות בהן אין עיגול ולעיגול יש 3, לפיכך הציון של המצב הזה הוא 2. כמובן שגם עם התכונה הזאת יש פעמים בהן המחשב לא בוחר בחירות טובות ולכן יש להוסיף עוד תכונות לפיהן הוא יוכל לשכלל את הציונים שלו, כמו לדוגמא ששני איקסים אחד ליד השני בשורה פתוחה שווים יותר מאיקס אחד בשורה פתוחה ועוד.
כשעוברים למשחק שחמט זה כמובן יותר מסובך: צריך להזין לפחות מאתיים תכונות שלפיהן המחשב ייתן ציונים: מספר חיילים, שווי מסוים של נקודות לכל חייל, מצב בו המלך מאיים שווה יותר נקודות ועוד דברים רבים. אך זה עדיין יותר פשוט מלחשב מספר עצום של אפשרויות.
אך בכל זאת יש משחקים שבהם ניתן לפתח דברים כאלה, למשל, באתר הבא תוכלו לשחק נגד המחשב בשש בש, ואם אתם רוצים, תוכלו אפילו ללמוד כיצד התוכנה עובדת כאן.
אבל, מסתבר שלא חייבים להזין את הכל למחשב בעצמנו: מדען בשם סמואל עשה פריצת דרך כאשר יצר תוכנה לדמקה ש"לומדת" בעצמה איך לשחק. הוא יצר תוכנה ונתן לה בסביבות 40 תכונות, אך הוא לא נתן לה את הניקוד, כלומר לא נתן לה דרך לציין כל מצב, התוכנה הייתה צריכה להסתדר לבדה בדרך הבאה:
התוכנה הגרילה בצורה רנדומלית משקל לכל תכונה, כלומר החליטה בצורה רנדומלית איזו תכונה יותר חשובה, לאחר מכן היא יצרה עוד תוכנה כמוה וגם לה הגרילה משקלים, לאחר מכן היא נתנה לשתי התוכנות לשחק אחת נגד השנייה דמקה.
היה אפשר לראות את התוכנות הראשונות עושות מהלכים מטופשים לגמרי, שאפילו בן אדם שרק למד לשחק דמקה לא יעשה, אבל הן כן. כל פעם שתוכנה הפסידה היא מחקה את עצמה, ולעומתה, התוכנה שניצחה יצרה לעצמה "ילדים" – העתקים של עצמה עם שינויים קלים במשקלים שגם שיחקו אחד נגד השני וחוזר חלילה.
לבסוף התוכנה הייתה כל כך טובה, שהיא ניצחה את מי שבנה אותה.
לצערנו עוד לא נוצרו תוכנות שחמט שלומדות, אך כן נוצרה תוכנת שחמט המבוססת על פונקציית ההערכה בשם Deep Blue שלבסוף ניצחה את גארי קספרוב, אלוף העולם בשחמט בזמנו. קספרוב טען שהייתה שם רמאות ואכן הייתה, מה גם שהתוכנה לא הייתה לגמרי חכמה (הסבר על ניסוי החדר הסיני בהמשך הכתבה). מה שכן, כל התוכנות האלה עוד רחוקות מעט מדאטה. data_game (1)
במספר פרקים כבר ראינו את דאטה לוקח חלק במשחק כלשהו. הוא שיחק כבר כמה משחקי פוקר עם חבריו לצוות ואף שיחק פעם נגד אלוף הגלקסיה בסטראטאג'מה. (Peak Performance, עונה 2)
כאן מופיעה חלוקה מעניינת, שעדיין לא דנו בה הרבה בתחומי בינה מלאכותית, אך אין ספק שהיא תהיה בעיה גדולה כשנגיע אליה: במשחקים כגון סטראטאג'מה ושח-מט, שדורשים היגיון טהור או מהירות חשיבה, דאטה הוא האלוף. הוא מהיר יותר מכל יצור דמוי אנוש וכמו מחשבים של ימינו, מחשב כל צעד במשחק בחישובים מסובכים וכמובן בהרבה יותר יעילות.
לעומת זאת, במשחקים כגון פוקר, שדורשים הימור, בילוף, סיכונים בלתי מחושבים ומזל, דאטה לרוב מוצא את עצמו בעמדה נחותה יותר. הרי דאטה תמיד הפסיד מול רייקר, שנהג לבלף אותו ולהמר אף על פי שלא היה לו כלום ביד, סומך על כך שדאטה יסיק לפי ההגיון שלו שאם רייקר מהמר על הרבה, אז בטח יש לו הרבה.

data_poker

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

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

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

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

data_talking

כשתדברו עם אליס ולאון וודאי תשימו לב לבעיות, כמו בשיחה הנ"ל. אחת מהפשוטות שבהן היא שגם אם כותבים להם ג'יבריש הם ממשיכים לדבר ולא שמים לב שיש פה משהו מוזר. ויש עוד בעיות רבות, כמו הנטייה שלהם להתחמק משאלות שהם לא מכירים, לענות תשובות מוזרות כמו "בצורה אמיתית" לשאלה "באמת?", וכמובן להכפיל את אותו משפט המון פעמים בלי פסיקים ונקודות ושום חיבור הגיוני.
הדברים האלה גרמו לכמה מדענים ומתכנתים להתרגז ולפנות נגד מבחן טיורינג כי לטענתם הוא לא מסוגל לבחון באמת האם מכונה היא חכמה או לא. הם טוענים, ואנשים רבים כבר מסכימים עם טענתם, שמבחן טיורינג מושך אליו בעיקר תוכנות שאינן באמת חכמות, אלא פשוט עובדות לפי הוראות פשוטות שהמתכנתים נתנו להם.
לדוגמא, מכונה כזאת לא מבינה באמת מה כותבים לה, אפילו שזה נראה כך, היא מזהה מילים מתוך המשפט ואז מתאימה אותן לרשימות של תשובות אפשריות שיש לה. כך לדוגמא אם היא תזהה באחד המשפטים את המילה "אמא" היא תוציא מהמאגר משפט שמתאים למילה, כמו "האם אתה ביחסים טובים עם אמא שלך?". נוסף לכך, אם יש שאלה או משפט שלא מופיע לה במאגר היא מוציאה משפט מ"רשימת המפלט" (רשימה של משפטים אליהם היא תוכל "להימלט" כאשר אין לה משפט לענות) שמאפשרת לה לשנות את הנושא למשהו שהיא יותר מכירה. היא גם נמנעת לרוב מלדבר על עצמה ומבקשת תמיד מהמתכתב איתה "ספר לי עוד על…" או "מעניין, תמשיך…" כדי שהיא לא תצטרך להגיע לנושאים שהיא לא מכירה.
בנוסף, היא לא יכולה ללמוד, רק המתכנת שלה יכול להוסיף לה "פרטי מידע", אך היא לא יכולה ללמוד אותם מאנשים שמדברים איתה.
בגלל הסיבות האלה מדענים רבים מתנגדים למבחן טיורינג, כיוון שהוא לא באמת מציג מכונה חכמה אלא מכונה שיודעת לעשות "טריקים" שונים של הסטת נושא, ואם מכונה תקבל ציון של 50, זאת אומרת יוצרת רושם של בן אדם, מה זה אומר עלינו?
דאטה, לעומת המחשבים כיום, מחזיק בידו אוצר מילים רחב הרבה יותר, אך כפי שכבר הבנו, זו אינה התכונה העיקרית. התכונה העיקרית היא שיש לדאטה יכולת להבין את משמעות המילים שנאמרות לו, שלא כמו האיש בחדר הסיני, הוא מבין את הסימנים בתוך ההקשר, את צירופי המילים והמשמעויות. לפיכך סדרת "הדור הבא" מציגה חזית אופטימית למדי, אך לא מוגזמת. אומנם לדאטה יש עדיין בעיות עם מילים שונות, והוא נוטה להבין דברים באופן מילולי, אך הוא כבר השתמש מספר פעמים בביטויים אנושיים בלי לשים לב.
data_smalltalkבפרק Starship Mine מהעונה השישית, דאטה התקדם מאוד כאשר הוא למד לנהל small talk, שיחה על כלום שכל מטרתה היא למלא רגע של שקט בדיבור. הוא לומד זאת מהאטצ'קינסון, האיש שמנהל את טקס הקבלה לבסיס שאליו הם עולים לקראת עבודות על האנטרפרייז, שמשגע את כולם בקשקושים בלתי פוסקים על לא כלום. דאטה לומד לחקות את הקול החלקלק והדיבור ה"חברמני" של האטצ'קינסון, הטפיחות על הכתף ולא לתת לאדם השני להכניס מילה. הוא מציל את כולם כאשר הוא מנהל את כל שארית הערב בשיחה מתמשכת עם האטצ'קינסון שכולה עובדות שוליות וטפיחות על הכתף.
לעומת זאת, בעניין הדיבור גם נעוצה אחת מהבעיות הגדולות והקטנוניות ביותר בהצגת "הדור הבא" את הבינה המלאכותית.
העובדה כי דאטה אינו יכול להשתמש בחיבורי מילים (can't במקום can not או we're במקום we are וכדומה) היא אומנם עובדה פעוטה במיוחד בסדרה, אך בלי לשים לב היא אחת מהעובדות הבעייתיות ביותר. העובדה כי יצור מתוחכם כמו דאטה, שיכול להקשיב ל-150 יצירות מוזיקה בו זמנית, שיכול לבצע מיליוני חישובים בשניה, שיכול להבין מושגים אנושיים ואף להכניס אותם לשפת היום יום שלו, לא מסוגל לעשות שינוי קטן בתוכנית שלו שייתן את הפקודה להחליף זוג מילים במילה אחת אחרת, נותן תדמית מאוד משונה לבינה המלאכותית. דומה הדבר למתכנת שמכין משחק שח-מט חכם, אבל לא מצליח להכין משחק "איקס עיגול".
דאטה בהחלט מראה יכולת שליטה בדיבור שמדענים כיום היו מתפללים שתהיה לתוכנות שלהם, למרות זאת אולי ניתן לצפות כי במאה העשרים וארבע בעולם האמיתי נוכל להיות קצת יותר מתקדמים בנושא.

אלגוריתמים גנטיים
הרעיון לאלגוריתם גנטי התפתח בעקבות בעיה בלתי פתירה בעליל בשם בעיית הסוכן הנוסע. הבעיה התחילה פשוטה מאוד: סוכן נוסע רוצה לעשות מסלול בין שלוש ערים, אסור שהוא יהיה בעיר פעמיים והוא צריך לעבור את המסלול הקצר ביותר שיש. אפילו בן אדם יוכל לפתור זאת בקלות, ובטח שמחשב.
אך לאחר מכן מרחיבים את הבעיה לחמש ערים והמחשב עובד בדרך פשוטה מאוד: הוא פשוט בוחן את כל המסלולים שקיימים ומודד את אורכם. לאחר מכן הוא מחליט לפי האורכים מי הכי קצר. כמובן, יש להניח עבור הבעיה שהמסלול היחיד בין עיר אחת לשניה הוא קו ישר.
גם עבור חמש ערים המחשב הצליח, אבל לקח לו יותר זמן. ככל שמוסיפים עוד ערים רואים שהזמן גדל בצורה מבהילה, וכשמגיעים לאותה הבעיה עם 21 ערים מגלים שלמחשב ייקח 77 אלף שנים לפתור את הבעיה – בערך פי אלף מזמן חיים ממוצע של בן אדם.
עד הופעת האלגוריתם הגנטי נחשבה בעיה כזאת לבלתי פתירה. עקב הקצב הגדל והולך של טווחי הזמן הדרושים לפתרון, סביר שלפני שמספר הערים יחצה את קו החמישים נגיע למספר גדול של שנים שמגיע לחזקות גבוהות של עשר ואפילו יותר.
לפיכך האלגוריתם הגנטי היווה פריצת דרך משמעותית בתחום הבינה המלאכותית עד היום.
האלגוריתם הגנטי נקרא כך כיוון שהוא פועל על פי עיקרון פשוט אך גאוני שנמצא חבוי בגנטיקה שלנו עצמנו ובתהליך בן לעיתים מיליוני שנים, ששמו נעשה מוכר מאוד לכל אדם בר דעת מאז תקופתו של צ'ארלס דרווין – אבולוציה.
העיקרון המנחה של האבולוציה הוא "החזק שורד", ולאו דווקא חזק במונחים של עוצמה פיזית, אלא חזק בהיותו מותאם לסביבת מגוריו, אויביו, אחרים מבני מינו ותזונתו. תהליך של ברירה טבעית והשבחת הגזע מתרחש לאורך אלפי שנים כאשר הטובים ביותר הם אלה ששורדים כדי ליצור צאצאים שנושאים את אותם הגנים המוצלחים שלהם.
האלגוריתם הגנטי מתבסס על העיקרון של האבולוציה ומנסה לחקותו בעזרת תוכנות מחשב. את בעיית הסוכן נוסע תקף האלגוריתם הגנטי בדרך זו: ראשית יוצר האדם המתכנת יצורים, כל יצור הוא בעצם אוסף של "גנים", כל גן הוא מרכיב של הבעיה. במקרה הזה יש לנו 21 ערים לעבור בהם (בעיה שכזכור תוכנה נורמלית תפתור לאחר בערך 77 אלף שנים), כל גן מייצג עיר ולפיכך יש 21 גנים.
הגנים בכל יצור מהיצורים הראשונים מוגרלים בצורה אקראית לחלוטין, כל גן נקבע בעיר מסוימת עם הכלל שאסור שתהיה אותה עיר בשני גנים – אסור שהסוכן יעבור באותה עיר פעמיים.
כעת המתכנת נותן לתוכנה דרך לבדוק עד כמה היצורים שלה טובים, כלומר חזקים, במקרה שלנו האידיאה היא להשיג את הדרך הכי קצרה ולכן התוכנה תמדוד את המרחקים בין כל עיר שנמצאת בכל גן לבאה אחריה (נניח שהיא יודעת מרחק בקו ישיר בין עיר מסוימת לאחרת) ותסכם אותם כדי למצוא את גודל המסלול השלם. כעת טיב היצור ייקבע לפי קוצר המסלול – ככל שהמסלול יותר קצר היצור יותר חזק כיוון שהוא מקרב אותנו אל הפתרון.
כעת נותנים לתוכנה לעבוד לבד לפי טכניקה שתכנתנו לה מראש: לקחת את שני היצורים הטובים ביותר ולזווג אותם. הזיווג נעשה על ידי יצירת יצור חדש בעל 21 גנים שמורכב בחלקו מגנים של הורה אחד ובחלקו מגנים של הורה אחר. הדרך לחלוקת הגנים בין שני ההורים מוגדרת מראש על ידי המתכנת ויכולה להתבצע בדרכים שונות ומגוונות, כמובן שתמיד עדיף שכמות הגנים משניהם תהיה שווה כדי ליצור כמה שיותר שינוי בין היצור החדש לאחד מהוריו.
כעת נותר עוד צעד אחד בלבד כדי שתהליך זה יוכל לחקות את האבולוציה והוא מוטציות. בכל תינוק חדש שנולד לכל מין בכוכבנו יש חלק מהגנים של אמו וחלק מהגנים של אביו, אך תמיד יהיו בו שינויים שלא באו לא מהאם ולא מהאב, אלא התרחשו בדנ"א שלו, לשינויים אלה קוראים מוטציות. וכן, מוטציות זה לא רק שם אחר ל"אקס מן", אף על פי שסדרת הקומיקס והמד"ב הידועה עובדת על אותו עיקרון, אם כי קצת מוגזם: בני אדם שקיבלו בילדותם שינויים קיצוניים ונרחבים בדנ"א שהפכו אותם לעיתים ליצורים חדשים לגמרי.
בעולם האמיתי שינויים אלה הם קטנים מאוד, עד כדי כך שכמעט אף פעם לא נוכל ממש להבחין בהם בדור אחד. אך לעיתים, לפחות בגזעים שאינם בני אדם, השינויים האלה לאורך אלפי דורות משפרים את המין ומתאימים אותו לסביבתו ביתר יעילות.
לכן יש צורך להכניס מוטציות גם ביצורים שלנו, במקרה של הבעיה הזאת המוטציה נערכת על ידי החלפת שתי ערים אקראיות או יותר במקומן. לאחר מכן ממשיכים גם עם היצורים האחרים, כל יצור מקבל סיכוי מסוים בהתאם לטיבו וכל אחד זוכה ליצירת הדור הבא, לטוב ולרע. כל זה – היוולדות, הזדווגות, הולדה, מוטציות – כל אלה קורים בפחות משניה אחת, במקום אלפי שנים בעולמנו הביולוגי.
כך, תוך פחות מדקה, הצליח האלגוריתם הגנטי בבעיית הסוכן הנוסע, והצליח בזמן מדהים גם כשהכמות גדלה למאה ערים, וגם כאשר בעיות נוספות ומסובכות הוצבו לפניו. האלגוריתם הגנטי מתחיל משלב של בורות מוחלטת ואקראיות, משבח את הגזע, מאלתר קצת בדרך, ולבסוף לומד את הפתרון.
תוכלו לקרוא עוד על אלגוריתמים גנטיים באתר הבא, וכן תוכלו לאתגר אותם בבעיית הסוכן הנוסע בסימולציה הנמצאת באותו אתר, לחצו על Change View ותוכלו להוסיף ערים כרצונכם באיזה מקום שתרצו, לאחר מכן לחצו על Start כדי להתחיל את תהליך האבולוציה על המחשב.

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

רשתות נוירונים
לבסוף אנו מגיעים לשיטת הבינה המלאכותית המעניינת ביותר כיום וגם זאת שהכי מקרבת אותנו ליצירת מכונה אנושית חושבת. עד עכשיו ציינתי שלוש דרכים מרכזיות בבינה מלאכותית, או לייתר דיוק, בינה מלאכותית זרה. יצור או תוכנה, שאפילו ישיגו מחשבה, לעולם לא יוכלו להשיג דרך חשיבה של יצור אנושי.
אפילו שם השיטה מרמז על כך שמדובר בפיתוח בינה מלאכותית אנושית, נוירונים (Neurons), או בשמם המעוברת תאי עצב, הם התאים הראשיים של המוח שלנו ושל כל בעל חיים אחר. אלה התאים שאחראים על החושים, על המחשבה, על ההחלטות, על הרעיונות, על הזיכרונות, על הידיעות, על הפעולות, על הכל. בלעדיהם היה הגוף שלנו קליפה חלולה וחסרת חיים. לפיכך ברור שאם ברצוננו ליצור מכונה שחושבת כמונו, אנו צריכים קודם להביט באופן פעולתו של המוח עצמו.
המוח מאז ומתמיד היווה תעלומה. נהגו בעבר לשייך רגשות אל הלב, אך כיום אנו יודעים שהלב הוא בסך הכל שריר, שריר חשוב, אבל עדיין שריר. אנו יודעים שהכל קשור למוח, שגם הוא, בהיותו שריר בחלקו, מצפין בתוכו משהו הרבה יותר מורכב. פיצחנו את הגנום האנושי, את הגנטיקה שלנו עצמנו, ועדיין לא פיצחנו את סודות המוח. קשה להאמין שמשהו שנוצר ככל הנראה כתוצאה מאבולוציה וברירה טבעית יכול להיות כל כך מסובך ומתוחכם, שמדענים נאבקים עד היום כדי לפצח את סודותיו. כיום אספנו כבר מספיק מידע כדי לתת תיאוריות טובות על מה שמתרחש שם בגולגולת, אך כמעט שאיננו יודעים דבר לאשורו.
data_brainהמוח שלנו מורכב מהרבה נוירונים, 10 בחזקת אחת עשרה נוירונים למען האמת (1 ואחד עשר אפסים אחריו). כל נוירון כשלעצמו הוא תא די מוגבל, הוא מחובר אל נוירונים אחרים בקשרים, ובקצות הקשרים האלה יש שני חלקים, מצד הנוירון ומהצד השני, שנקראים סינפסות והם אחראים להעביר מסר בין זרוע אחת לשניה. הנוירונים עצמם לא נשארים מחוברים ממש במגע כדי שתהיה להם האפשרות לנתק קשרים או לשנות את מסלולם בעת הצורך. הנוירון מסוגל בכל רגע נתון להיות בשני מצבים, ירייה או לא ירייה: במצב הירייה הוא יורה מסר חשמלי לנוירונים אחרים שהוא מקושר אתם, במצב השני הוא לא.
נוירון בודד מחובר כל העת לכמה אלפי נוירונים, מה שנותן למוח שלנו כ-10 בחזקת 14 סינפסות, חלק מהם שולחים לו מסרים חשמליים וחלק מחכים לקבל ממנו מסרים. לנוירון יש סף ירייה – אם המסרים החשמליים שהוא מקבל עובר את הסף ברגע נתון/מסוים, הוא שולח מסר חשמלי, יורה. חשוב לציין, המסרים לא מצטברים, אם נוירון אחד בלבד מחובר לנוירון אחר ושולח אליו מסר שלא עובר את סף הירייה שלו, הנוירון השני לעולם לא יירה, לא משנה כמה הראשון ינסה.
חוזק המסר נקבע על פי חוזק הקשר בין שני נוירונים, ככל שהקשר יותר חזק ועמיד כך ערך המסר יהיה יותר גבוה.
אז נוירון בודד לא מסוגל לעשות כמעט כלום, אך רשת של כמה מהם מסוגלת, בעזרת קשרים מסודרים היטב יכולה רשת קטנה של נוירונים לבצע פעולות שונות פשוטות שנקראות בשפה המקצועית "שערים לוגיים", אלו פעולות קלות וחשובות שבעצם מרכיבות את המחשבות שלנו במוח. אחת מפעולות אלה, לדוגמא, נקראת AND, המשמעות שלה היא עשיית סלקציה בין כמה מצבים: אם אחד משני דברים פועל והשני לא, לא מתקבלת שום תגובה, אך אם שניהם פועלים ביחד, מתקבלת תגובה.
אם לומר זאת בצורה יותר ברורה: אם יורד גשם ואתה לא בחוץ, או אם אתה בחוץ אבל לא יורד גשם, לא מתקבלת שום תגובה, אין צורך לחשוב על זה, אבל אם אתה גם בחוץ וגם יורד גשם, אז מתקבלת תגובה, כדאי לפתוח מטריה.
פעולה זאת נעשית בקלות על ידי לקיחת שני נוירונים, הנקראים נוירוני הקלט, ולחבר אותם לנוירון אחר, שנקרא פרספטרון. תפקיד הפרספטרון הוא לקבל את המסרים משני נוירוני הקלט ולפי זה "להחליט" מה יהיה הפלט שיוצא, כלומר האם תהיה תגובה או לא.
תוכלו לראות בתמונה הבאה שני נוירוני קלט, A ו-B מחוברים לנוירון הפרספטרון C. אפשר לראות כי הקשר של כל אחד מנוירוני הקלט אל נוירון C משקלו 1. b באות קטנה הוא סף הירייה של הפרספטרון, משקלו 2.

neuron_and

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

neuron_memory

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

lal_brainבפרק The Offspring דאטה מדבר הרבה על רשתות הנוירונים שנמצאות במוחו ובמוחה של בתו, לאל. מהבחינה הזאת "הדור הבא" מציגה גישה אופטימית. לא רק שמוזכר במספר פרקים שהמוח האנושי כבר פוצח, אלא שהצליחו לחקות אותו כדי להרכיב את דאטה.
דאטה הוא בעל זיכרונות אנושיים, אומנם רמת הדיוק שלהם יותר גבוהה מהרמה שכל אדם יכול להגיע אליה, אך הם עדיין אנושיים. הוא מסוגל להבין דברים גם אם הם לא כפי שהם מופיעים אצלו באופן מדויק. דאטה מסוגל להבין וללמוד, להתפתח ולהשתפר כפי שרואים בהרבה פרקים.
לדוגמא, בפרק In Theory, מהעונה הרביעית, וגם בהרבה פרקים אחרים, דאטה מסביר את המושג שלו לחברות, כלומר: "המוח הפוזיטרוני שלי יכול ללמוד להכיר דגמים מסוימים, להתרגל אליהם, ואפילו להרגיש בהיעדרם.".
בפרק Time's Arrow Part 1, מסוף העונה החמישית, כאשר נמצאות הראיות לגבי מותו העתידי של דאטה, חבריו מתחילים להתנהג די מוזר סביבו. הוא כמובן מבחין בדבר ושואל את רייקר על כך, רייקר מנסה לדבר בשפתו ואומר לו ש"כנראה שהמוח שלנו למד להכיר את הדגם שלך, להתרגל אליו, ולהרגיש בהיעדרו.". דאטה, חושב, מבין, ועונה "גם אני מחבב אותך." כמו בן אדם.
"הדור הבא" מציגה עוד חזית מעניינת בהקשר של רשתות נוירונים. באותו הפרק, The Offspring, בו דאטה מחליט ליצור מוח פוזיטרוני כשלו ובכך בעצם ליצור לעצמו צאצא, שאחר כך בוחר להיות ילדה. מובן שהמדענים של סטארפליט רוצים לקחת אותה מיד לחקירות ובדיקות וניסויים, אך מתגלה שיש לה רצונות אחרים, רצונות בהם האדמירל שבא לקחת אותה מזלזל באדישות.
עוד בעיות מתחילות כאשר לאל באה אל טרוי ואומרת לה שהאדמירל מסטארפליט בא לקחת אותה ושהיא מפחדת. טרוי, בהיותה חצי בטאזוידית, מרגישה שלאל באמת מפחדת, מצב בלתי אפשרי אצל אנדרואיד חסר רגשות. לאל מבינה לבסוף שהיא חווה רגש, וחוזרת מיד למעבדה שלה ומכבה את עצמה, כיוון שהיא מתוכננת לחזור למעבדה בעת אירוע של תקלה.
מודעות רגשית, תקלה, מה זה אומר עלינו? אך יותר חשוב, מה זה אומר על הבינה המלאכותית? דאטה העתיק את רשתות הנוירונים בדיוק מהמוח שלו, אך עדיין היה בהן משהו שונה. ללאל הייתה נפש, ו"הדור הבא" נוקטת בזאת עמדה חשובה בקשר לשאלת הגוף והנפש (בהמשך).

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

מחשבה אחת על “חזון דאטה – חלק א' – מאת מנצלשבך דלגשון (רוני גורן)

  1. פינגבק: חזון דאטה – חלק ב' – מאת מנצלשבך דלגשון | סטארבייס972

מוזמנות ומוזמנים להגיב:

אתר זו עושה שימוש ב-Akismet כדי לסנן תגובות זבל. פרטים נוספים אודות איך המידע מהתגובה שלך יעובד.