SQuAD — בנצ'מרק, לא מאגר-אימון — יותר מ-100,000 שאלות על ויקיפדיה

מודלים ושפה

הגדרה

SQuAD (Stanford Question Answering Dataset) הוא בנצ'מרק להבנת-טקסט שנבנה מיותר מ-100,000 שאלות שכתבו עובדי-המונים על קטעי ויקיפדיה — לא מאגר-אימון, אלא מבחן שמודד עד כמה מודל מאתר תשובה מדויקת בתוך טקסט נתון.

מבחן-מדידה, לא מאגר-אימון: איך SQuAD עובד

SQuAD (ראשי-תיבות של Stanford Question Answering Dataset) הוא בנצ'מרק להבנת-טקסט-נקרא (Reading Comprehension) שפיתחו חוקרים באוניברסיטת סטנפורד — פראנב רג'פורקר (Pranav Rajpurkar), ג'יאן ג'אנג, קונסטנטין לופיירב ופרסי ליאנג — ופרסמו ב-2016. בשונה ממאגרי-נתונים כמו MNIST או ImageNet, שמזינים מודל בזמן-האימון וקובעים מה הוא לומד לזהות, SQuAD נועד לתפקיד ההפוך: הוא לא מלמד מודל דבר על עצמו, אלא בודק, אחרי שהאימון כבר הסתיים, עד כמה טוב המודל מאתר תשובה מדויקת בתוך טקסט שהוא רואה לראשונה. ההבחנה הזו — מאגר שמאמן מול מבחן שמודד — היא הסיבה שהבנצ'מרק הזה שייך לקטגוריה שעוסקת במודלים ובאופן שפונים אליהם, לא לקטגוריית נתוני-האימון.

המשימה עצמה פשוטה לניסוח אך קשה לביצוע: לכל שאלה מצורף קטע-טקסט מתוך ערך ויקיפדיה, והתשובה חייבת להיות קטע-רציף (Span) שמופיע מילה-במילה בתוך אותו קטע — לא ניסוח חופשי. שיטת-ההערכה כוללת שני מדדים משלימים: Exact Match (EM, שדורש התאמה מדויקת של הטקסט שהוחזר) ו-F1 (שנותן ניקוד חלקי על חפיפה בין התשובה שהמודל נתן לתשובה הנכונה, גם כשההתאמה אינה מושלמת מילה-במילה).

1.1: יותר מ-100,000 שאלות על 500+ ערכי ויקיפדיה

הגרסה המקורית, SQuAD 1.1, מכילה יותר מ-100,000 זוגות שאלה-תשובה שכתבו עובדי-המונים (Crowdworkers) על יותר מ-500 ערכי ויקיפדיה. במאמר המקורי דיווחו המחברים גם על ביצוע-ייחוס אנושי — 86.8 ב-F1 ו-77.0 ב-Exact Match — כדי לתת קנה-מידה למה ש"תשובה טובה" אמורה להיראות; המודל הטוב ביותר שהחוקרים עצמם בדקו ב-2016, מודל רגרסיה-לוגיסטית פשוט יחסית, הגיע לניקוד F1 של 51.0 בלבד — פער עצום מול בני-אדם, שהפך את סגירתו למטרה מחקרית ברורה לשנים הבאות.

2.0: כשהמודל צריך לדעת גם מתי לא לענות

ב-2018 הרחיבו רג'פורקר, רובין ג'יה ופרסי ליאנג את הבנצ'מרק ל-SQuAD 2.0, במאמר שכותרתו מתארת את הרעיון במדויק: "Know What You Don't Know" (לדעת מה אתה לא יודע). הגרסה החדשה משלבת את כל שאלות 1.1 יחד עם יותר מ-50,000 שאלות בלתי-ניתנות-למענה נוספות, שנכתבו במכוון כך שיישמעו דומות לשאלות-אמיתיות אך אין להן תשובה בקטע הנתון. המשימה קשה משמעותית יותר: מערכת חייבת לא רק לענות כשיש תשובה, אלא גם לזהות מתי אין תשובה נתמכת בטקסט ולהימנע מלענות — יכולת "להודות באי-ידיעה" שרוב המודלים הראשונים לא היו טובים בה. לפי המאמר, מערכת חזקה שהגיעה ל-86 אחוזי F1 ב-1.1 צנחה ל-66 אחוזי F1 בלבד כשנבדקה על 2.0 — פער שממחיש כמה שאלות-האי-ודאות הוסיפו קושי אמיתי, לא רק עוד דוגמאות.

ההשפעה: מ-BERT ואילך

SQuAD הפך למדד-הייחוס המרכזי להבנת-טקסט-נקרא בדיוק בתקופה שבה החלה מהפכת הטרנספורמרים (Transformer). כשגוגל פרסמה את BERT באוקטובר 2018, הדוגמה המרכזית להוכחת-העוצמה שלו הייתה תוצאות SQuAD: 93.2 F1 על גרסה 1.1 — מעל רף-הביצוע האנושי שמופיע בלוח-התוצאות של הבנצ'מרק, 91.2 F1 — ו-83.1 F1 על גרסה 2.0 הקשה יותר. ההישג הזה הפך תוך זמן קצר לנקודת-ייחוס שממנה כמעט כל מודל-שפה חדש נבדק, גם מול SQuAD, ודחף מעבדות-מחקר רבות לפתח ארכיטקטורות מבוססות-טרנספורמר משלהן, במטרה לשפר בדיוק את סוג המשימה שהבנצ'מרק הזה מודד.

רוויה: כשמודלים עוברים את בני-האדם

כמו בנצ'מרקים מוצלחים אחרים, ההצלחה של SQuAD הביאה בסופו של דבר לרוויה שלו. לפי לוח-התוצאות הרשמי שמנהלת קבוצת-המחקר של סטנפורד, ביצוע-הייחוס האנושי על SQuAD 2.0 עומד על כ-86.8 אחוזי EM וכ-89.5 אחוזי F1 — ואילו המודל המוביל בלוח (מערכת-אנסמבל בשם IE-Net) עבר את שני המדדים, עם כ-90.9 אחוזי EM וכ-93.2 אחוזי F1. כשמודלים מובילים עוברים את בני-האדם באופן עקבי, הבנצ'מרק מפסיק להבחין ביניהם, וקהילת-המחקר עוברת למדדים קשים יותר — בדיוק הדפוס שהוביל בהמשך לפיתוח GLUE ו-SuperGLUE כאבני-דרך הבאות, אחרי ש-SQuAD מיצה את עצמו כמדד-אבחנה בין מודלים מובילים.

איך נבנה המאגר, ומה המשימה לא בודקת

שני מאמרי-היסוד תיארו גם את שיטת-הבנייה: עובדי-המונים קיבלו פסקה מתוך ערך ויקיפדיה, והתבקשו לחבר עד חמש שאלות עליה ולסמן בתוך אותה פסקה את קטע-הטקסט המדויק שמהווה תשובה. שיטה זו יצרה מאגר-שאלות טבעי יחסית וזול להפקה בקנה-מידה גדול, אך גם קבעה מראש את גבולות המשימה: המודל לא נדרש לנסח תשובה במילים שלו, לשלב מידע משני קטעים שונים, או לחפש תשובה במקום שבו היא לא ניתנת מראש — בשונה ממצב-שימוש אמיתי של מנוע-חיפוש או עוזר-AI, שבו לרוב אין פסקה "נכונה" שכבר הוגשה מראש. המגבלה הזו, יחד עם הרוויה שתוארה למעלה, היא שהניעה בהמשך את המעבר למאגרי שאלות-ותשובות מבוססי-אחזור פתוחים יותר (Open-Domain QA), שבהם המערכת צריכה קודם למצוא את המסמך הרלוונטי מתוך אוסף ענק, ורק אחר-כך לחלץ ממנו תשובה.

SQuAD 1.1 מול SQuAD 2.0: מה השתנה
SQuAD 1.1 (2016)SQuAD 2.0 (2018)
מספר שאלותיותר מ-100,000אותן שאלות + יותר מ-50,000 בלתי-ניתנות-למענה
סוג המשימהאיתור קטע-תשובה בטקסטאיתור קטע-תשובה, או זיהוי שאין תשובה נתמכת
ביצוע-ייחוס אנושיכ-86.8% F1 (לפי המאמר המקורי; EM 77.0%)כ-89.5% F1 / כ-86.8% EM (לוח-התוצאות הרשמי)
ציון BERT (2018)93.2 F183.1 F1

שאלות נפוצות ❓

מה ההבדל בין SQuAD למאגר-אימון כמו MNIST?

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

איך מודדים ציון ב-SQuAD?

בשני מדדים משלימים: Exact Match (התאמה מדויקת של הטקסט המוחזר) ו-F1 (ניקוד חלקי לפי חפיפה בין תשובת המודל לתשובה הנכונה).

מה ההבדל בין SQuAD 1.1 ל-SQuAD 2.0?

גרסה 2.0, מ-2018, מוסיפה יותר מ-50,000 שאלות בלתי-ניתנות-למענה שנכתבו להישמע כמו שאלות אמיתיות — ודורשת מהמודל גם לזהות מתי אין תשובה נתמכת בטקסט ולהימנע מלענות.

האם SQuAD עדיין רלוונטי כבנצ'מרק היום?

פחות מבחינה-אבחנתית: מודלים מובילים כבר עברו את ביצוע-הייחוס האנושי על שתי הגרסאות, כך שהבנצ'מרק מיצה את עצמו כמדד להבדלה ביניהם, וקהילת-המחקר עברה למדדים קשים יותר כמו GLUE ו-SuperGLUE.