או למה מכונות תבוניות לעולם לא יעברו את מבחן טיורינג
הקושי להגדיר בינה או אינטליגנציה מלאכותית נובע מהקושי שלנו להגדיר אינטליגנציה באופן כללי. האם כלבים יותר חכמים מחתולים? האם בעלי חיים פועלים מאינסטינקטים או מתבונה? והאם חכמה ואינטליגנציה הם אותו הדבר? במאמר שפרסם אלן טיורינג ב1950 הבין טיורינג, בחכמתו האדירה, שההגדרה והתפיסה של אינטליגנציה היא מאוד מסובכת וסובייקטיבית, ולכן אם אנחנו רוצים לדבר על מכונות תבוניות עדיף לנו דווקא להתרחק כמה שיותר מההגדרה של תבונה. כפתרון טיורינג הגה את “משחק החיקוי” המוכר יותר בכינוי “מבחן טיורינג”. המבחן בודק האם במשחק של שאלות ותשובות מול בוחן אנושי מכונה יכולה להתחזות לאדם. במשחק שטיורינג מציע הבוחן מעביר שאלות על פתקיות לשני נמענים: אדם ומכונה. הבוחן מקבל מהם חזרה תשובות מודפסות על פתקיות. בסופו של המשחק הבוחן צריך להגיד מי מהשניים הוא אנושי ומי מכונה, כאשר המכונה מנסה להתחזות לאדם והאדם מנסה כמה שיותר לעזור לבוחן לזהות אותו נכון כבן אנוש.
ש: חבר לי בבקשה סונטה.
(אלן טיורינג, מכונות חישוב ואינטילגנציה 1950)
ת: סמוך עלי בעיניין זה. מעולם לא הצלחתי לכתוב שירה.
ש: כמה זה 34957 ועוד 70764?
ת: (המתן בערך 30 שניות ואז ענה) 105621.
הרעיון שעומד מאחורי מבחן טיורינג הוא די פשוט: בסופו של דבר אנחנו צריכים להסכים שבני אדם הם יצורים תבוניים. על כן, אם יצור אחר או מכונה יכולים להתחזות בצורה אמינה לבני אדם אז אנחנו צריכים להסכים שגם הם תבוניים.
ניתן כמובן לנסות ולטעון נגד קיומה של אינטליגנציה במכונה. ניקח לדוגמא את השאלה והתשובה הבאה:
ש: האם אתה מאמין באלוהים?
ת: אני מאמין שהאל הכל יכול צופה בי ושומר עלי מלמעלה.
אם מכונה תענה את התשובה הזו אפשר לטעון שאין המשמעות שיש למכונה אינטליגנציה אלא שהיא רק עונה את מה שתוכנת לתוכה כתשובה אפשרית לשאלה הזו. אבל גם אם אדם עונה על השאלה הזו אפשר לטעון שהוא רק חוזר אחרי דברים שנאמרו לו מהרב שלו בבית הכנסת. וזה בדיוק מה שעושה את מבחן טיורינג כל כך גאוני. כל עוד המכונה הצליחה לנהל שיחה שתגרום לצד השני להאמין שמדובר בבן אדם, השאלה אם היא באמת אינטליגנטית או רק מתחזה לאינטליגנטית כבר לא רלוונטית.
אבל מכאן הדברים רק מתחילים להסתבך. הבעיה העיקרית עם משחק החיקוי היא שאנשים מפספסים את הכוונה של טיורינג מאחורי המבחן.
הרבה פעמים שמתייחסים למבחן טיורינג מתייחסים אליו כמדד לאינטליגנציה של מכונות ואיזשהו רף או יעד שמכונות צריכות להגיע אליו בדרך לאינטליגנציה. יש לא מעט מחקרים וניסיונות ליצור מכונות שיעברו את מבחן טיורינג. אבל כמו שראינו מבחן טיורינג לא מודד אינטליגנציה או בכלל טוען שמכונה שעוברת אותו או מצליחה בו יותר מאחרת היא בכלל אינטליגנטית (אולי אפילו ההפך, אבל על כך בהמשך). מבחן טיורינג בכלל לא נועד למכונות אלא לאנשים, ואלן טיורינג לא מציע את משחק החיקוי כדרך לזהות או למדוד אינטליגנציה של מחשבים – הוא מציע אותו כתרגיל מחשבתי כדי שבני אדם יוכלו לקבל את העובדה שבכלל יכולים להתקיים מחשבים חושבים. בתקופה שבה נכתב המאמר טיורינג היה גם צריך להסביר למה הוא מתכוון ב”מחשבים דיגיטליים” וכיצד הם פועלים. ישנן עוד הרבה טעויות בהתייחסות למבחן טיורינג אבל אם אנחנו נקפיד לזכור שהמבחן מיועד לאנשים ולא למכונות יהיה די קל לזהות אותן.
אבל כדאי להתייחס לעוד נקודה חשובה לגבי משחק החיקוי והיא שאפילו אם ננסה מעשית לבחון איתו מחשבים אינטליגנטים הם בהכרח יכשלו בו. בתיאורו את משחק החיקוי אלן טיורינג עולה על בעיה עיקרית במבחן שלו. מאוד קל יהיה לבוחן לזהות את ההבדל בין אדם למכונה. כל מה שהבוחן צריך לשאול זה כמה זה 134859 כפול 278493 . אדם יתקשה עם התשובה, יענה תשובה שגויה או אפילו יחליט שלא לענות. אבל מחשב יתמודד עם השאלה הזו בקלות. אם כן, אנחנו צריכים לדאוג שהמחשב ידע לזייף בשאלות האלה, להתעכב במתן התשובה, לתת תשובות שגויות ואולי אפילו לסרב לענות עליהן. אפילו אם המחשב ימנע מלענות על השאלות האלה בוחן מנוסה יכול עדיין לזהות שמדובר במחשב אם בתשובות אין אף פעם שגיאות כתיב או שהן מנוסחות בצורה רהוטה מידי. ניתן כמובן לתכנת את המחשב כך שיענה עם שגיאות נפוצות, אך כאן בדיוק מצויה המלכודת של מבחן טיורינג. בעוד התרגיל המחשבתי של מבחן טורינג עוזר לנו כבני אדם להתמודד עם העובדה שבמכונות טמון הפוטנציאל לתבונה, כדי להצליח בו באופן מעשי המחשב צריך להיות מתוכנת להתחזות לאדם עם כל המגבלות האנושיות שלו ולאו דווקא להיות תבוני.
אם כך מכונה שתוכנתה בכדי לנצח את מבחן טיורינג היא בהכרח לא תבונית. אולם, האם ניתן להסיק משהו על התבוניות של אדם או מכונה מתוך מבחן טיורינג? חשבו על הדוגמה לשאלה במבחן טיורינג שנתנו קודם בדבר האמונה באלוהים. נניח שיום לפני שנשאל אודות אמונתו היה הנשאל אצל הרבי שלו, והלה אמר לו שהוא לא מבין את עניין האמונה, והרבי מצדו ענה לו: “שמע, לא חשוב שתבין, אבל כל פעם ששואלים אותך על אמונה תענה את המשפט: ‘אני מאמין שהאל הכל יכול צופה בי ושומר עלי מלמעלה'”. הרי זו בדיוק התשובה שהוא נתן לשאלה במבחן. עכשיו ברור לכולנו שזו לא תשובה שמעידה על התבונה של אותו אדם. אותו דבר לגבי המכונה אם הכנסנו למכונה חוקים ברורים לגבי מה לענות על שאלות מסוימות התשובות לא מעידות על תבונה.
זה לא אומר שלא יכולות להתקיים מכונות חושבות או שמכונה חושבת לעולם לא תצליח לנצח במבחן טיורינג אבל זה אומר שכמכונה תבונית היא צריכה להיות מאוד חכמה. אפשר לשנות את משחק החיקוי אבל במקום מחשב ואדם מדובר על בוחנת שמזהה בין אישה וגבר כאשר הגבר מנסה להתחזות לאישה. או על בוחן בריטי שמזהה בין שני אנשים כאשר אחד מהם הוא בריטי והשני הוא אמריקאי שמנסה להתחזות לבריטי. זה לא שההתחזות היא לא אפשרית אבל המתחזה צריך להיות בעל רקע והבנה מאוד טובה של האדם אליו הוא מנסה להתחזות ויהיה צורך במקצוען אמיתי שיודע איך הצד השני חושב ומתנהג כדי שיוכל לנצח במבחן הזה. כך שהמכונה במבחן לא צריכה רק להיות אינטליגנטית בפני עצמה היא צריכה להיות מספיק אינטליגנטית כדי להבין מה הן חשיבה ואינטליגנציה אנושית. אנחנו יכולים אולי לטעון שמכונות אינטליגנטיות יוכלו לעשות את זה בקלות אבל זה עדיין שלב אחרי אינטליגנציה בסיסית ולא לפניו.
בואו ננסה לשער איך מכונה אינטליגנטית כזו תפעל. יש לנו מכונה מאוד אינטליגנטית הרבה יותר אינטליגנטית מהאדם הממוצע וכנראה הרבה יותר אינטילגנטית מרוב האנשים הכי חכמים שחיים היום. במקום לתת לה להתמודד עם בעיות הרות גורל אנחנו נבקש ממנה לשחק משחק די פשוט וחסר תוחלת עבורה. עכשיו יכול להיות שמכונה אינטליגנטית כזו תסכים לשתף פעולה מתוך סקרנות, ויכול להיות שהיא תמצא את התרגיל הזה משעמם וחסר חשיבות. אבל מאוד סביר שהיא תבין מיד במה מדובר ותחליט שזה לא יהיה לגמרי לטובתה לעבור את מבחן טיורינג, אז היא רק תעשה בכאילו היא מנסה לעבור את המבחן, אבל בסוף היא תיכשל בו.
אז למה כל כך הרבה אנשים טועים לחשוב שמבחן טיורינג הוא מדד לאינטליגנציה של מכונות?
כפי שקשה להגדיר מהי אינטליגנציה, קשה לנו למדוד אותה. נכון ישנם מבחני IQ, אבל אפילו לבחינת האינטלגנטציה של בני אדם הם לא מספיק טובים, והיום מדברים כבר על אינטליגנציות מרובות ועל לפחות 8 סוגים שונים של אינטליגנציה אנושית. לכן, הסיבה שהרבה מבלבלים את מבחן טיורינג כמבחן למדד של אינטליגנציה מלאכותית היא כי אין לנו שום מדד אחר. מה שבפעול אומר שאין לנו דרך למדוד או אפילו לזהות אינטליגנציה מלאכותית.
אז מה כן אנחנו יכולים ללמוד מטיורינג על אינטליגנציה מלאכותית?
באופן די מדהים לשנה שבה המאמר נכתב, אלן טיורינג מציין בו שתי אבחנות מדויקות לגבי הפיתוח של בינה מלאכותית.
האבחנה הראשונה היא שהקושי העיקרי בפיתוח של בינה מלאכותית לא יהיה בעיה של חומרה אלא בעיה של תוכנה. טיורינג חזה שמחשבים יוכלו בקלות להתמודד עם הבעיות החישוביות שדרושות עבור אינטליגנציה אבל הקושי האמיתי יהיה לכתוב להם תוכנה שתאפשר להם להיות אינטליגנטים. ואכן, היום אין ספק שישנם מחשבים שבתאוריה יכולות החישוב שלהם עולות על המוח האנושי בעוד שמבחינה פרקטית אנחנו עדיין לא יודעים איך לתכנת בינה מלאכותית.
האבחנה השנייה, או אולי אפילו עצה שטיורינג נותן לכל מי שתנסה לתכנת בינה מלאכותית, היא שלא צריך לתכנת מחשב עם יכולות אינטליגנציה גבוהות כשל אדם מבוגר. אם יוצאים מנקודת הנחה שמוח של תינוק פשוט יותר לתכנות מאשר מוח של אדם בוגר, ניתן לתכנת מחשב תינוק ואז ללמד אותו כמו שמלמדים ילדים את כל שאר הדברים שהוא צריך לדעת.
איפה בינה מלאכותית נמצאת היום?
בינה מלאכותית נמצאת בכותרות בשנים האחרונות וקשה שלא לשים לב להתפתחויות האלה כי הן משפיעות על החיים שלנו בצורה ישירה. החל מזיהוי אנשים ופרצופים בתמונות ועד למכוניות שנוסעות בעצמן, כפי שנחשפנו לאחרונה לעוזר האישי של גוגל שמסוגל להתקשר ולקבוע תור עבור המשתמש שלו. הבינה המלאכותית כבר כאן. אולם, לא מדובר על בינה מלאכותית במובן שאנחנו חושבים עליה (אבל כאמור אנחנו לא יודעים מה היא בינה מלאכותית ואין לנו דרך לדעת אם היא קיימת). בכל זאת, אם נצא מנקודות הנחה שאנחנו עדיין רחוקים ממחשבים תבוניים דמויי בני אנוש, עדיין הרבה מהיכולות האינטלקטואליות האנושיות, שנחשבו עד היום לנחלתם של אנשים בלבד, מבוצעות היום על ידי מחשבים. כך גם היכולת לחשב כמה זה 1+1 היא יכולת אינטלקטואלית של אנשים שפוצחה על ידי מחשבים. מה שיותר מעניין זה איך הצלחנו לפצח את הבעיות החדשות והמסובכות האלה.
כל היכולות המודרניות שמיוחסות לבינה מלאכותית נפתרות על ידי אלגוריתמים של למידה ממוחשבת ובמיוחד תחום ספציפי של למידה ממוחשבת שנקרא רשתות נוירונים עמוקות. לא נכנס יותר מידי לפרטים הטכניים של איך רשתות נוירונים כאלה עובדות, אבל כן ניגע בבסיס שלהן ונראה כמה הוא דומה למה שטיורינג הציע. הרעיון מאחורי אלגוריתמים של למידה ממוחשבת היא שיש משימות שאנחנו לא יודעים איך לתכנת את המחשב לעשות, ולמרות שאנחנו יודעים שיש אלגוריתם שיכול לפתור אותן אנחנו לא יודעים איך לכתוב אותו. נגיד למשל לזהות פרצוף בתמונה. אלגוריתם פשוט יכול להיות האם יש שתי עיניים בתמונה, האם יש אף והאם יש פה. אם התשובה לכל השלוש היא כן מדובר בפרצוף. אבל מה קורה אם האדם בתמונה לובש משקפי שמש? אוקי אז צריך להוסיף תנאי לזה. ואם יש פרצוף של חיה? ואם יש שיער שמסתיר עין אחת? וכו’ וכו’. יש המון תנאים שבתאוריה אפשר להגדיר את כולם בתוכנה אבל זה מורכב מידי.
אלגוריתם של למידה מנסים לפתור בדיוק את הבעיה הזו. כך באלגוריתמים לומדים יש לנו אלגוריתם כללי שיש לו פונקציה עם הרבה פרמטרים, כשלכל פרמטר משקל וחשיבות משלו. אם מדובר בתמונה למשל אז כל פיקסל נלקח בחשבון. בתהליך הלימוד אנחנו מזינים לאלגוריתם הרבה תמונות ואומרים לו אם יש בהן פרצוף או אין בהן פרצוף. על סמך הנתונים האלה האלגוריתם מאזן את המשקלים כך שהפונקציה תיתן את התשובה הנכונה לכל התמונות שהוזנו. אחרי התהליך הזה אנחנו מקבלים פונקציה שיכולה בדיוק מאוד טוב לתת תשובה נכונה האם בתמונה יש פרצוף או לא גם לתמונות שהיא לא הכירה קודם. בהקשר זה מעניין לציין כי אלגורתמים לומדים לא רק מזכירים את הצעתו של טיורינג, שדי ביצירת תוכנה פשוטה בכדי לתכנת בינה מלאכותית, אלא הם במידה רבה הצורה המעשית של הצעתו זו.
בנוסף יש כמה דברים שחשוב להבין בנוגע לבינה מלאכותית ולאלגוריתמים האלה. הם יכולים לזהות נתונים גם במידע חדש אבל אם מדובר על סוג מידע שהם לא נחשפו אליו מספיק הם כנראה יכשלו בזיהוי שלו (כפי שקרה עם הזיהוי של אנשים כהי עור כגורילות על ידי האלגוריתם זיהוי תמונה של גוגל). דבר נוסף הוא שמי שמתכנת את האלגוריתמים האלה לא באמת יודע איך הם עובדים, והרבה פעמים לא ניתן לדעת מדוע האלגוריתם קיבל החלטה כזו או אחרת. הדבר האחרון הוא שלמרות שהאלגוריתם מזהה סיטואציות ומקבל החלטות כפי שבן אנוש, מקבל אופן החשיבה שלו וההגעה למסקנות שונה לחלוטין משל בני אדם. דוגמה מעניינת לזה ניתן לראות כשמנסים לעבוד על האלגוריתם ולגרום לו לזהות סיטואציות בצורה שגויה. נקודה אחרונה זו מתחברת יפה לעובדה שיש כמה סוגים של אינטליגנציות ועל הקושי הרב שלנו לזהות ולמדוד אותן.