על תרגום ובינה: אופציית טיורינג
הניסיון ליצור תרגום אוטומטי באמצעות טכנולוגיות שונות החל בתקופה שבה הוחלט לנסות לשלוח אנשים לירח. אך בעוד שהמסע לירח הוכתר בהצלחה מספר פעמים, עדיין לא נוצרה מערכת ממוחשבת שמצליחה לתרגם טקסטים בצורה טובה. מדוע בעצם כל כך קשה לתרגם ולהבין את השפה האנושית?
הזמן: בעוד כמה עשרות שנים. המקום: עמק הסיליקון, ארה"ב. מנהל אמריקאי מתקשר לאיש מכירות יפני. שניהם רואים זה את זה על מסכי וידאו. היפני מדבר יפנית, אך האמריקאי שומע אנגלית: המחשב שלו מתרגם את השיחה אוטומטית וסימולטנית.
לצד השולחן, מדפסת קטנה וחרישית מפיקה רישום מלא באנגלית של כל מלה שנאמרה בשיחה. זוהי סתם טכנולוגיה סטנדרטית בעוד כמה עשורים, כמו מכונות הפקס שלנו היום. לאחר השיחה, המנהל עובר דרך מנגנוני ביטחון משוכללים כדי להיכנס לחדר השמור ביותר בחברה, בו מפתחים טכנולוגיה חדשנית שיום אחד תאפשר למחשבים להיות אינטליגנטיים. גם בעוד כמה עשרות שנים, זהו עדיין חלום שלא ברור איך להגשימו.
זה קורה בעמודים הראשונים של ספר מדע בדיוני בשם "אופציית טיורינג" שהופיע ב- 1992. כתבו אותו הסופר הוותיק ועטור-הפרסים הארי האריסון (Harrison) יחד עם אחד ממייסדי תחום הבינה המלאכותית מרווין מינסקי (Minsky). אין טעם בהעברת ביקורת קפדנית על סיפור בדיוני, אבל כשקראתי את תיאור סיטואציה זו שאלתי את עצמי אם אמנם יכולה להתקיים טכנולוגיית תרגום כל כך טובה עד שהיא "שקופה", בהיעדר קפיצה של כמה רמות בטכנולוגיות הבינה המלאכותית.
במילים אחרות: האם אותה תוכנת מחשב המתרגמת סימולטנית מאנגלית ליפנית את דברי המנהל, ומיפנית לאנגלית את דברי איש המכירות, אינה עצמה אינטליגנטית? אם נדרשת "אינטליגנציה" גבוהה כדי לתרגם, אז בעצם כבר יש לנו כל מה שצריך עבור בינה מלאכותית שלמה ומלאה ואין צורך במחקר הסודי המניע את עלילת הספר.
הקשר בין תרגום למסע לירח
שאלה זו עשויה להישמע מוזרה. הרי איננו מעוניינים בתרגום ספרותי המשמר את כל רבדי הטקסט ואת הניואנסים הדקים: מספיקה לנו העברת מידע כמו עובדות, תוכניות ומספרים. האם תרגום ברמה כזו צריך להרשים אותנו? אחרי הכול, מחשבים הגיעו כבר לדרגות הגבוהות ביותר בשחמט, והוכיחו משפטים במתמטיקה. כפי שאומר חוזה אסטבן (Esteban) , מנהל פרוייקט TransType2: "מוזר הדבר שאנשים החלו לנסות ליצור תרגום אוטומטי באותו זמן שהחלו לנסות לשלוח אנשים לירח. ובכן, הגענו לירח אבל עדיין לא יצרנו מערכת ממוחשבת שיכולה לתרגם טקסט באותה רמה שעושים זאת אנשים." כדי להבין עד כמה קשה לכתוב תוכנת תרגום אמינה, כדאי לנסות לתכנן איך תעבוד תוכנת תרגום.
מכשולים בדרך
הדרך הפשוטה ביותר להתחיל ביצירת תרגום ממוחשב מאנגלית לעברית היא לקחת מילון ממוחשב, ולכתוב תוכנית פשוטה שמחליפה כל מלה באנגלית במלה המתאימה בעברית. מחשבה קצרה תראה כי זה אינו פתרון. נזכיר רק סיבה אחת בינתיים: כמעט לכל מלה יש מספר משמעויות. אם מישהו אומר למישהי - לפי התרגום - "את משחקת בכלי הזה יפה מאוד", מה היתה הכוונה? יודעי אנגלית יוכלו לנחש כי היא ניגנה בפסנתר והוא ביקש להחמיא לה: “play” משמעותו גם "משחק" וגם "נגינה". דרך אגב, מישהו - בעל בינה טבעית, יש להניח - באמת תרגם כך בספר שקראתי פעם.
איך נדע לאיזה משמעות לתרגם “play”? הצעד הבא הוא לבנות מילון שבו נמצאות כל המשמעויות של כל מלה, וההקשר של כל משמעות. נשאר רק לפענח את ההקשר שבו מופיעה המלה האנגלית בטקסט המתורגם, ואז נדע באיזה מלה עברית להחליף אותה. פשוט? לא כל כך. כדי ללמד מחשב לפענח הקשרים, צריך למעשה לתת לו כמויות אדירות של מידע "טריוויאלי" ולאפשר לו לבצע ניתוחים לוגיים פשוטים.
לדוגמה, המלה flies יכולה להתייחס ל"זבובים", "טס", "עף" או "מטיס". במשפט “Bill flies to Boston”, השאלה היא מיהו ביל. אם הוא ציפור, הוא "עף לבוסטון". אם הוא תייר, הוא "טס לבוסטון". אם הוא טייס, הוא אולי "מטיס לבוסטון" אבל אז היינו כנראה מצפים למצוא את מה הוא מטיס, כך שתרגום זה פחות סביר. נזכיר גם את האפשרות לתרגם Bill כ- "לחייב חשבון", כלומר שהתרגום הוא "את התשלום על הזבובים תוסיף לחשבון של בוסטון". בכל מקרה, אם ביל הוא שם של אדם או ציפור, צריך לשלוף גם את המידע שזהו בדרך כלל שם של זכר, ולתרגם ל"טס" ולא ל"טסה", או "עף" ולא "עפה".
איך נדע מיהו ביל? צריך לקרוא את הטקסט שתרגמנו עד כאן, ואולי גם לקרוא קדימה. אנחנו לא נמצא טקסט כמו "ביל הוא אדם", אבל אולי נמצא טקסט כמו "ביל קנה במכולת" ונשלוף מהידע שלנו את העובדה כי בדרך כלל מי שקונה במכולת הוא אדם (תוך כדי כך שאנו מוכנים לשנות את הפרשנות והתרגום אם נקבל עדויות לאפשרויות מוזרות במקצת, כמו למשל ציפור שאולפה לקנות מצרכים).
אין תרגום בלי בינה
אולי נראה מכאן כי מספיק להוסיף לתוכנת התרגום ידע על סוגי יצורים כמו אנשים או ציפורים, פעולות כמו טיסה, מעוף או חיוב חשבון, קשרים בין יצורים ופעולות, וכך הלאה. מחקרים כמו פרוייקט CYC הולכים ומבהירים לנו את כמויות המידע והקשרים העצומות הנדרשות לצורך ניתוח של טקסטים המובנים בקלות לכל אדם. אחת הדוגמאות המוכרות ביותר לבעיות תרגום היא הפסל "משה" של מיכלאנג'לו, שבו יש שתי קרניים על מצחו של משה. ההסבר המקובל הוא תרגום מילולי מדי של הפסוק בתנ"ך "קרן עור פניו" (שמות ל"ד 29; הוצעו גם הסברים אחרים, וביניהם זכר למסורות יהודיות עתיקות ורמז לסיפור עגל הזהב).
השאלה המעניינת כאן היא אילו שיקולים נדרשים כדי להבין נכון את הפסוק המקורי. אנו נדרשים לעבד במוחנו את כל ההשתלשלות סביב מעמד מתן התורה, להבין את ההקשר הדתי, ורק אז נוכל לקבוע את דעתנו איזה משני הפירושים - קרני אייל או קרני אור - יותר מתאים. אנו עושים זאת כל כך בטבעיות שקשה לנו לראות כמה ניתוח מורכב הושקע בהבנת שלוש המילים האלו.
מובן שאין משהו יוצא דופן בצירוף מילים אלה - ניתוחים מסובכים אף יותר מזה נדרשים כמעט עבור כל טקסט. גם לאחר שניתוח הטקסט הצליח, התרגום עדיין מצריך ליצור טקסט בשפה אחרת כך שתהיה לו משמעות קרובה ככל היותר לטקסט המקורי. גם כאן אנו זקוקים להבנה עמוקה - בין השאר כדי לחזות את הפרשנויות השונות שהקורא עשוי לתת לטקסט המתורגם, ולבחור את המילים בצורה שתמנע פרשנויות שגויות.
ראינו כאן כי על המתרגם להבין את הטקסט המקורי לפני שיתרגם אותו לשפה אחרת - חיפושים מכאניים בטבלאות אינם תחליף להבנה אמיתית. לא במקרה יש קשר בין "להבין" לבין "בינה". את שניהם קשה לנו להגדיר, אבל קל לנו לראות מתי חסרה בינה או חסרה הבנה.
אין ארוחות חינם
למעשה, קיימות כיום תוכנות תרגום, אך רובן מבוססות על הרעיון של חיסכון בעבודה: התוכנה מציעה תרגום ראשוני, הכולל הרבה סימני שאלה והצעות חליפיות במקומות שבהן התוכנה "יודעת" שהתרגום אינו מושלם, וגם לא מעט טעויות. איך תזהה התוכנה מתי התרגום מפוקפק? הדרך הפשוטה ביותר היא להכריז על ספק כאשר היא מוצאת בידע שלה כמה אפשרויות סבירות באותה מידה, או כאשר לא נמצאה כל אפשרות.
שיטות סטטיסטיות, כפי שנראה בהמשך, מאפשרות דרך נוספת לזיהוי תרגום מפוקפק: ניקח את תוצאת התרגום של המשפט (או חלק ממשפט ארוך) שעליו עובדת התוכנה כרגע, ונחפש אותה באוסף גדול של טקסטים, הדומים במאפייניהם לטקסט שאותו אנו מנסים לתרגם (למשל, טקסטים טכניים מתחום הביולוגיה). אם תוצאה זו אינה מופיעה באוסף, או מופיעה רק בהקשרים שאינם קיימים בטקסט הנוכחי, יש מקום לספק בדבר נכונות התרגום.
בשיטות כאלה, נדרש אדם להשלים את התרגום. הרעיון של שיתוף בין תוכנה לאדם נפוץ בתחומים העסקיים של הבינה המלאכותית. בעסקים, לא מעניין כמה חכמה התוכנה באמת, אלא כמה היא חוסכת עלויות ופותרת בעיות. גישה זו עשויה להצליח – ואכן מופעלת בהצלחה – בתרגום חומר טכני, אך תיכשל בדרך כלל בספרות, שלא לדבר על שירה.
דוגמה לתוכנה כזו הוא פרויקט TransType2, שמשתתפים בו שבעה גופים מסחריים ואקדמיים מספרד, גרמניה, קנדה וצרפת, בתמיכת מימון של האיחוד האירופאי. הפרוייקט, שהסתיים לפני כחודשיים, יצר תוכנה העוזרת למתורגמנים מקצועיים. בחלון אחד מוצג הטקסט בשפת המקור. בחלון שני מקליד המתרגם האנושי טקסט בשפת המטרה, והתוכנה מציעה לו מספר אפשרויות להשלים את המשפט שאותו התחיל.
התוצאות: שיפור של 20-30% בתפוקת מתרגמים המשתמשים בתוכנה בהשוואה לתרגום ידני. תוצאות אלו אולי מאכזבות בהשוואה לחזון של תרגום אוטומטי לחלוטין - כמו זה שתואר בספרי מדע בדיוני כה רבים - אך מספיקות כדי לחסוך כסף וכדי לנצל את כישוריהם הייחודיים של המתרגמים תוך עזרה להם במשימות הפשוטות והמשעממות יותר.
לוגיקה וסטטיסטיקה
ההצעות לתרגום ב- TransType2 באות מתהליך תרגום המבוסס פחות על מילונים ותהליכי הבנת-שפה - גישות שחלק מחסרונותיהן הוזכרו לעיל - ויותר על מודלים סטטיסטיים: כאן אנו עוזבים את התחום, הקשה למחשב וקל לאדם, של ההבנה העמוקה; ועוברים לתחום הקל למחשב וקשה לאדם: ניתוחים מספריים על כמות גדולה מאוד של נתונים. אם נכניס לתוכנה כזו מסמכים רבים בשפת המקור יחד עם תרגומיהם לשפת היעד, תוכל התוכנה עצמה לגלות איזה תרגום מתאים לכל מלה לפי ההקשר שבו היא מופיעה, כאשר "ההקשר" הוא מילים אחרות שבדרך כלל מופיעות ליד מלה זו במשמעות אחת אך אינן צפויות להופיע ליד המלה כאשר כוונת הטקסט לאחת ממשמעויותיה האחרות.
גישה סטטיסטית דומה ננקטה על ידי קווין נייט ודניאל מארסו (Knight, Marcu) מאוניברסיטת דרום קליפורניה בתוכנת ReWrite שפיתחו. התוכנה משתמשת במודל הסטטיסטי גם עבור יצירת משפטים בשפת היעד, וכך מעלה את הסיכוי כי המשפטים שייווצרו יישמעו סבירים. המפתחים מצפים כי שיטה זו תוביל גם לגילויים חדשים בבלשנות על מבנה השפה. הם אינם מזניחים גם את השימושים המעשיים, והקימו חברה מסחרית המשווקת את הטכנולוגיה שפיתחו.
בניגוד לתחום המסחרי, כאשר מנסים ליצור מכונה המתרגמת בצורה בת-השוואה לתרגום אנושי אי אפשר להתחמק מהבעיה העיקרית: בניסיונות ליצור תוכנת תרגום, אין תחליף להבנה אמיתית. מצב זה אופייני לכל ניסיון (כמעט) לפתח תוכנה אינטליגנטית הפועלת "בעולם האמיתי". רק תוכנות הפועלות בעולמות מלאכותיים בעלי חוקים פשוטים ומוגדרים בבירור - כמו שחמט או גיאומטריה - מצליחות להתחמק ממחסומים כאלה ולהגיע להישגים מרשימים. לעומת זאת, ההבדל בין אדם למחשב בתחום התרגום הוא הרבה יותר עמוק.
מחסומים אלה הביאו כמה מחוקרי הבינה המלאכותית לרעיון של "הבעיה השלמה של בינה מלאכותית". זהו רעיון פשוט, שיש לו שני צדדים: מצד אחד, כמעט כל הבעיות המעניינות בבינה מלאכותית לא ייפתרו עד שנגיע למחשב שבאמת מסוגל לחשוב ברמה האנושית - אין "בינה חלקית" כמו שאין "הריון חלקי". מצד שני, אם נפתור רק בעיה אחת בצורה מלאה, כמו למשל בעיית התרגום, נגיע למחשב שיכול לבצע כל משימה אחרת שאנו רואים כמייחדת את בני האדם.