1.07k likes | 1.35k Views
Mikel L. Forcada et al., Apertium: a free/open-source platform for rule-based machine translation, Machine Translation Volume 25 (2011). מגישים: אבישי (שי) גרץ וניצן חריזמן סמינר לבלשנות חישובית 236817, סמסטר חורף תשע"ב מדעי המחשב, טכניון. אפרטיום מערכת תרגום מכונה חופשית מבוססת חוקים.
E N D
Mikel L. Forcada et al., Apertium: a free/open-source platform for rule-based machine translation, Machine Translation Volume 25 (2011) מגישים: אבישי (שי)גרץ וניצן חריזמן סמינר לבלשנות חישובית 236817, סמסטר חורף תשע"ב מדעי המחשב, טכניון אפרטיוםמערכת תרגום מכונה חופשית מבוססת חוקים
תפריט היום • מנה ראשונה: • סקירה כללית של מכונת התרגום אפרטיום ומאפייניה • מנה עיקרית: • מבנה מנוע האפרטיום • מגבלות • בסיסי נתונים • השוואה מול מכונות תרגום אחרות • קינוח: • סקירה של שתי תוספות לאפרטיום והשפעותיהן • הוספת שמות מתוייגים • הוספת חלקי משפטים מתורגמים
נעים להכיר • אפרטיום – מכונת תרגום מבוססת חוקים (Rule Based Machine Translation) • שפת הליבה - ספרדית • www.apertium.org
תרגום מכונה מבוסס קורפוס (סטטיסטי)- SMT • מבוסס על קורפוס (=טקסט) דו-לשוני • בחירת התרגום – על פי הסטטיסטיקה של המילה:התרגום הנפוץ ביותר בקורפוס המקבילי • הנכונות של התרגום תלויה ב: • קיום של מאגר גדול המכיל טקסטים מקבילים בשתי השפות- כל המרבה הרי זה משובח • כוח חישוב וגודל הזיכרון המוקצים לכך גדולים דיים • דוגמא:Google Translator
תרגום מכונה מבוסס חוקים- RBMT • מבוסס על מידע בלשני: • מילון מורפולוגי • מילונים דו- לשוניים • חוקי דקדוק • חוקי תרגום מבנים לשוניים • הביצוע אינו מבוסס על קורפוסים • דוגמא: אפרטיום
תרגום מכונה מבוסס קורפוס מול מבוסס חוקים- רהיטות מול נאמנות למקור • רהיטות- המשפט בשפת היעד הינו שוטף והגיוני באוזני דוברי השפה • נאמנות- המשפט בשפת היעד הינו נאמן מבחינת משמעותו למשפט בשפת המקור
תרגום מכונה מבוסס קורפוס מול מבוסס חוקים- רהיטות מול נאמנות למקור • דוגמאות (Google translate מול אפרטיום): • גוגל מבצע ניתוח שגוי של המילה חברי (חברים+ סמיכות במקום חבר+שלי) • תרגומו של המשפט השמאלי תקין מבוסס חוקים מבוסס קורפוס ניסיתי להעביר מסר לחברי הקרוב מהבית I tried to send a message to members of the nearest house I tried to send a message to my close friend from the house Intenté enviar un mensaje a mi amigo cercano de la casa
תרגום מכונה מבוסס קורפוס מול מבוסס חוקים- רהיטות מול נאמנות למקור • דוגמאות (Google translate מול אפרטיום): • חוסר ההכרות של גוגל עם הביטוי הובילה לתרגום שוטף כלשהו שלא נאמן למקור • חוסר ההיכרות של אפרטיום עם הביטוי המקביל הובילה לתרגום מילולי נאמן למקור אך לא נפוץ בשפת היעד (הביטוי הנפוץ הוא Ojos que no ven, corazón que no sient) מבוסס חוקים מבוסס קורפוס אחד בפה ואחד בלב One mouth and one heart Out of sight, out of mind Fuera de vista fuera de mente
תרגום מכונה מבוסס קורפוס מול מבוסס חוקים- רהיטות מול נאמנות למקור • מסקנות: • התרגום מבוסס הקורפוס (google) מפיק תוצאה הגיונית רהוטה בשפת היעד, אולם לא בהכרח נאמנה למקור • התרגום מבוסס החוקים (אפרטיום) מפיק תוצאה נאמנה למקור אולם לא בהכרח רהוטה
תרגום מכונה מבוסס קורפוס מול מבוסס חוקים- עקביות טרמינולוגית • האם ביטוי כלשהו בשפת היעד יתורגם תמיד באופן זהה לשפת המקור • דוגמאות (Google translate): מבוסס קורפוס • על כלבים וגנבים הוא שם מוכר לסרט ועל כן גוגל מצליח לתרגמו לשם הסרט המתאים באנגלית • כאשר לשם הסרט מתווספת מילה אחרת אשר משנה את ההקשר התרגום משתנה לתרגום המילולי המתאים על כלבים וגנבים The Dalmatians על כלבים וגנבים ופושעים About dogs and thieves and criminals
תרגום מכונה מבוסס קורפוס מול מבוסס חוקים- עקביות טרמינולוגית • האם ביטוי כלשהו בשפת היעד יתורגם תמיד באופן זהה לשפת המקור • התרגום מבוסס החוקים: • ביטויים יתורגמו לרוב באותו האופן ללא תלות בהקשר
תרגום מכונה מבוסס קורפוס מול מבוסס חוקים- עקביות טרמינולוגית • מסקנות- • ת"מ (תרגום מכונה) מבוססחוקים(אפרטיום) יתרגם ביטוי באופן זהה תמיד • ת"מ (תרגום מכונה) סטטיסטי (google) ייתכן ויתרגם ביטוי באופנים שונים כתלות בהקשר
תרגום מכונה מבוסס קורפוס מול מבוסס חוקים- עקביות טרמינולוגית • דוגמא נוספת (עבור מכונה מבוססת קורפוס)- • ב-2008 נתגלה כי גוגל מתרגמים שמות מדינות בצורה שגויה, למשל דוגמא לתרגום משפט מאנגלית לאיטלקית בגוגל: טקסט בשפת היעד טקסט בשפת המקור תרגום מאנגלית לאיטלקית
תרגום מכונה מבוסס קורפוס מול מבוסס חוקים- עקביות טרמינולוגית • שמות של מדינות נוספות בהקשרים שונים תורגמו בצורה שגויה • אחת הסברות לבעיה: • הקורפוסים המקביליים שעליהם התבסס האלגוריתם היו אתרים של חברות בעלות סניפים בארצות שונות • אתרים של אותה חברה בשתי מדינות שונות הם בעלי תוכן זהה – מלבד, למשל, כתובת הסניף המקומי... כך, לפי ההשערה, קרה שמדינה אחת תורגמה למדינה אחרת • הבעיה תוקנה תוך מספר ימים
תרגום מכונה מבוסס קורפוס מול מבוסס חוקים (המשך) • אבחון שגיאות: • במכונת תרגום (מ"ת) מבוססת חוקים קל יותר לאבחן ולתקן שגיאות מכיוון שמקורן בחוקים דטרמיניסטיים ומוגדרים היטב • במ"ת סטטיסטית קשה יותר לאבחן ולתקן שגיאות מכיוון שמקור השגיאה הינו סטטיסטי ולא מבוסס על חוקים מוגדרים
תרגום מכונה מבוסס קורפוס מול מבוסס חוקים (המשך) • הרחבה לשפות אחרות: • מ"ת מבוססת חוקים- מידע בלשני לזוג שפות עוזר לבנות מידע בלשני לזוגות נוספים, ולמעשה מהווה בסיס לבניית מ"ת בין זוגות נוספים. זאת כיוון שמידע בלשני חד לשוני עבור שפה מסוימת יכול לשמש לבניית תרגום מכונה בינה ובין כל שפה אחרת • דוגמא: מ"ת בין אנגלית לגרמנית יכולה לשמש בסיס לבניית מ"ת בין אנגלית לצרפתית ע"י שימוש במידע הבלשני שנאגר עבור אנגלית • מ"ת סטטיסטית- אלגוריתם כללי המשמש לתרגום בין זוג שפות, עשוי לשמש לתרגום בין מספר שפות נוספות. זאת כיוון שהאלגוריתם לא בהכרח משתמש בתכונות ייחודיות לשפה אלא במאפיינים סטטיסטיות הרלוונטיים לכלל השפות (בהינתן קורפוסים גדולים מספיק)
תרגום מכונה מבוסס קורפוס מול מבוסס חוקים (המשך) • מ"ת מבוססת חוקים שואפת להגיע לכיסוי מושלם של 100 אחוז של השפה • תיאורטית אפשר להכניס את כל חוקי השפה למאגרי המכונה • מ"ת מבוססת קורפוס כנראה לא תוכל להגיע ל-100 אחוז דיוק • מבוסס סטטיסטיקה ולכן (כמעט)תמיד יש טעויות • הטיות מורפולוגיות נדירות וכדומה
תרגום מכונה מבוסס קורפוס מול מבוסס חוקים (המשך) • שפות עבורן קשה לבנות מכונה סטטיסטית: • שפות בעלות מספר קטן של קורפוסים- אין תשתית גדולה ואמינה דיה על מנת לבסס עליה את התרגום הסטטיסטי • עשירות מבחינה מורפולוגית- יש צורך לאגד מספר גדול משמעותית של קורפוסים על מנת להיתקל מספר גדול דיו של פעמים בכל הטייה אפשרית (דלילות מידע) • דוגמא: המילה "אהבתיה" ככל הנראה לא תופיע מספר גדול דיו של פעמים בקורפוס סטנדרטי (בהנחה שלשלמה ארצי לא היה שיר כזה..). זאת בניגוד לפועל אהבה (love) באנגלית אשר לה משמעותית פחות הטיות • פתרון אפשרי: שילוב אלמנט בלשני וחיפוש הפועל אהב במקום נטיותיו השונות
תרגום מכונה מבוסס קורפוס מול מבוסס חוקים (המשך)
אפרטיום - רקע • תוכנת קוד פתוח אשרהוקמה בשנת 2004 על ידי משרד המסחר הספרדי • מטרה: לתרגם באופן אוטומטי בין שפות שונות המדוברות בספרד (קטאלונית, גאליציאנית) • מאז הורחבה המערכת לתמוך בזוגות רבות של שפות אך המוקד נשאר ספרדית
אפרטיום – רקע (המשך) • שלב 1 (2005): • התבססה על תוכנות קיימות לתרגום ספרדית-קטאלונית וספרדית-פורטוגזית • תמיכה בתרגום מכונה של שפות דומות מאוד • שלב 2 (2006): • הרחבה של מבנה ההעברה (transfer structure) כדי לתמוך בשפות מעט יותר רחוקות (למשל אנגלית)
אפרטיום- מטרות • המטרות של הפרויקט: • לאפשר לציבור גישה חופשית ולא מוגבלת למכונת תרגום מוצלחת ככל הניתן • לספק פלטפורמת קוד פתוח למשימות של תרגום מכונה ועיבוד שפות טבעיות • לעשות שימוש במידע הבלשני הקיים • להקל על המנשק עם תוכנות קוד פתוח אחרות • להבטיח את קידום התחום של תרגום מכונה והמחקר בעיבוד שפות טבעיות
מנוע האפרטיום העברת הטקסט בשפת המקור דרך מספר מנתחים Deformatter- הזנחת סימני עריכה מנתח מורפולוגי- ניתוח מורפולוגי עבור כל מילה תיוג חלקי דיבר- זיהוי חלק הדיבר המתאים עבור כל מילה
מנוע האפרטיום העברת הטקסט בשפת המקור דרך מספר מנתחים העברה מבנית - תרגום משפת המקור לשפת היעד מצרף (chunker)- צירוף המילים ליחידות גדולות יותר העברה לקסיקלית- תרגום המילים מצרף גלובלי(inter chunk)- ביצוע פעולות בין היחידות לאחר-המצרף (post chunk)- פירוק היחידות לצורות הלקסיקליות
מנוע האפרטיום העברת הטקסט בשפת המקור דרך מספר מנתחים העברה מבנית - תרגום משפת המקור לשפת היעד יצירת משפט חוקי בשפת היעד יצירה מורפולוגית- יצירת המילים בשפת היעד לאחר-יצירה- ביצוע התאמות אורתוגרפיות ופונטיות Reformatter- הוספת סימני עריכה
מנוע האפרטיום (המשך) • Deformatter- • מוסיף סוגריים לסימני עריכה
מנוע האפרטיום (המשך) • מנתח מורפולוגי- • עבור המילה we יש ניתוח מורפולוגי יחיד Prpers – הלמה של We, מציין רבים גוף ראשון Prn- pronoun כינוי גוף Subj - subject – נושא (We חייב להיות נושא) Mf – masculine, feminine – יכול להיות גם זכר וגם נקבה Pl – plural - רבים ^- תחילת צורת פני שטח (המילים כפי שהן מופיעות בטקסט) /- הפרדה בין צורות לקסיקליות (אוסף תכונות) המתאימות לצורת פני השטח $- סיום הטיפול בצורת פני שטח
מנוע האפרטיום (המשך) • מנתח מורפולוגי- • נשים לב שעבור המילה go יש לנו שני פירושים אפשריים מתאימים בעלי תכונות שונות • פועל בזמן הווה • פועל בצורת המקור Vblex – standard verb – פועל רגיל Inf – infinitive – צורת מקור Pres – present – הווה ^- תחילת צורת פני שטח (המילים כפי שהן מופיעות בטקסט) /- הפרדה בין צורות לקסיקליות (אוסף תכונות) המתאימות לצורת פני השטח $- סיום הטיפול בצורת פני שטח
מנוע האפרטיום (המשך) • מנתח מורפולוגי- Prpers – הלמה של We, מציין רבים גוף ראשון Vaux– auxiliary verb – פועל עזר Prn – pronoun – כינוי גוף Vblex – standard verb – פועל רגיל Subj - subject – נושא (We חייב להיות נושא) Inf – infinitive – צורת מקור P1 – 1st person – גוף ראשון Pres – present – הווה Mf – masculine, feminine – יכול להיות גם זכר וגם נקבה Sp – singular, plural – יחיד, רבים Pl – plural - רבים Sint – synthetic – ניתן לעשות לזה הטייה ל-older
מנוע האפרטיום (המשך) • מנתח מורפולוגי- • תפקיד ראשון: • מחלק את הטקסט לצורות פני השטח (surface forms) • צורות פני השטח- המילים כפי שהן מופיעות בטקסט, על פני השטח, זאת בניגוד לניתוח המילה המכיל מידע עמוק יותר אודותיה • צורת פני השטח יכולה להכיל מילה אחת או מספר מילים המשמשות כביטוי
מנוע האפרטיום (המשך) • מנתח מורפולוגי- • תפקיד שני- • למה- החלק הבסיסי והעיקרי של מילה. • דוגמא: הצחקתם הצחיק • קטגוריה לקסיקלית- חלקי דיבר, מאפיינים מורפולוגיים ותחביריים • דוגמא: הצחקתם פועל, גוף שלישי, עבר • לכל צורת פני שטח מותאמות צורות לקסיקליות (lexical forms) (אחת או יותר) • צורה לקסיקלית מורכבת מלמה, קטגוריה לקסיקלית ומידע מורפולוגי נוסף • הצורות הלקסיקליות נוצרות באמצעות FST (finite state transducer) אשר מבוסס על המילון המורפולוגי בשפת המקור
המילון המורפולוגי באפרטיום • המילונים שמורים בקבצי XML • פרדיגמה (Paradigm): • ערך המציין הטייה = טבלת כל הנטיות של הלמה • ערך מילוני (Word entry): • ערך מילוני של מילה עם הפנייה להטייה הרלוונטית • דוגמה לחוק באפרטיום (יוצאים מהכלל באנגלית): • הטייה של יחיד ורבים של מילים כמו bacteria, data: • ערך מילוני:
המילון המורפולוגי באפרטיום (המשך) • הערך המילוני (התיאורטי – זוהי הוספה שלנו שכן אפרטיום אינו תומך בעברית)של המילה "כלב": • ערך הפרדיגמה התיאורטית של צורת הרבים הרגילה (סיומת '-ים')לשמות עצם:
המילון המורפולוגי באפרטיום (המשך) • פרדיגמה יכולה לכלול גם נטיות של זכר/נקבה, משקלים, זמנים וכדומה – הן של צורות סטנדרטיות והן של צורות חריגות של השפה
FST • מכונה (מעין אוטומט דטרמיניסטי) המשמשת לניתוח וייצור מורפולוגיים: • ניתן לפרק צורת פני שטח לתכונות המרכיבות אותה • ניתן להרכיב צורת פני שטח מהתכונות המרכיבות אותה
FST • דוגמא ל-FST: • הדוגמא אינה לקוחה מן המאמר והינה אמצעי שאנו רוצים להציג להבהרת המושג FST • Cat+ N(noun)+PL(plural)cats • Mouse+ N(noun)+PL(plural)mice
מנוע האפרטיום (המשך) • מתייג חלקי דיבר- • עבור צורת פני השטח we נבחרת הצורה הלקסיקלית היחידה שנמצאה עבורה
מנוע האפרטיום (המשך) • מתייג חלקי דיבר- • עבור צורת פני השטח go נבחרת הצורה הלקסיקלית המסמלת את צורת המקור של הפועל
מנוע האפרטיום (המשך) • מתייג חלקי דיבר-
מנוע האפרטיום (המשך) • מתייג חלקי דיבר- • התרת דו המשמעות של צורות פני השטח(surface forms) אשר להם מספר צורות לקסיקליות (lexical forms) • ההתרה מתבצע באופן סטטיסטי באמצעות המנגנון HMM (Hidden Markov Model - לא מפורט במאמר)
HMM • HMM ((Hidden Markov model הינו מודל סטטיסטי • מטרה: מציאת חלק הדיבר הסביר ביותר לכל צורת פני שטח במשפט, כתלות במילים האחרות במשפט • מבוסס על שני מבני נתונים: 1) מעברים – לכל מעבר מחלק דיבר 2) פלטים – בהינתן קטגוריה א' ל-ב' ישנה הסתברות כלשהי תחבירית כלשהי, מהי ההסתברות ליצירת כל אחת מן המילים שבלקסיקון
HMM (cont.) • בהינתן הנתונים הללו מריצים אלגוריתם תכנות דינמי שמספק לנו את רצף חלקי הדיבר הסבירים ביותר שייצרו את המשפט הנתון
מנוע האפרטיום (המשך) • מצרף- • הצורה הלקסיקלית המתאימה למילה we יצרה יחידה תחבירית- נושא כינוי גוף. יחידה זו מכילה צורה לקסיקלית יחידה (בסוגרים המסולסלים) • המספרים המופיעים בסוגריים המשולשות מצביעים על כך שיש לרשת מתכונות היחידה התחבירית, את התכונה המתאימה במספר • דוגמא: <4> מתייחס לתכונה <GD> כלומר הצורה הלקסיקלית צריכה לרשת את תכונת המין (GD) כאשר זו תוכרע
מנוע האפרטיום (המשך) • מצרף- • הצורות הלקסיקליות המתאימות למילים will ו-go אוחדו ליחידה תחבירית אחת: פועל עזר+פועל • נשים לב שבעת התרגום לספרדית שתי הצורות הלקסיקליות אוחדו לצורה לקסיקלית אחת בשפת היעד “ir” (ללכת- צורת המקור)
מנוע האפרטיום (המשך) • מצרף- • הצורה הלקסיקלית המתאימה למילה to יצרה יחידה תחבירית אחת: מילת-יחס
מנוע האפרטיום (המשך) • מצרף- • הצורות הלקסיקליות המתאימות למילים the, old ו-park אוחדו ליחידה תחבירית אחת: כמת יידוע + שם תואר+ שם עצם (det_nom_adj) • נשים לב ששם התואר ושם העצם החליפו מקום – כמו בעברית (the old park –> הפארק הישן)
מנוע האפרטיום (המשך) • מצרף-
מנוע האפרטיום (המשך) • מצרף- • מאגד את אוסף הצורות הלקסיקליות במשפט ליחידות תחביריות • לדוגמא: צירוף שמני (ילד יפה) , צירוף פעלי (אכל תפוח) • מפעיל העברה לקסיקלית ( (lexical transfer • באמצעות מילון דו-לשוני מתרגם כל צורה לקסיקלית בשפת המקור לצורה לקסיקלית מתאימה בשפת היעד
מנוע האפרטיום (המשך) • מצרף גלובאלי- • ניתן לראות בדוגמא הבלעות של יחידה אחת בתוך יחידה אחרת– Prnsubj (נושא-כינויי גוף) נבלע בתוך verbcj (פעול עזר+פועל) • כינוי הגוף נבלע למעשה בתוך הפועל • דוגמא לתופעה בעברית: אנחנו + בעתיד+ ללכת = נלך • נשים לב שחלק מהתכונות שהיו מיועדות להשלמה קודם הושלמו • למשל <PD> (גוף לא ידוע) קיבל את <p1> (גוף ראשון)
מנוע האפרטיום (המשך) • מצרף גלובאלי-