$$\rightleftharpoonup{xx}$$
$$\longleftharp{xx}$$,
$$\longrightharp{xx}$$,
בסיס תיאורטי מקיף
רכיב QAS: מסגרת ה-QAS מורכבת משלושה מקטעים, כפי שמוצג באיור 3: i) מודול עיבוד שאלות (QPM), ii) מודול עיבוד מסמכים (DPM) ו-iii) מודול חילוץ וניסוח תשובות (AEFM). המערכת מקבלת שאלות המתחלקות לשתי קטגוריות עיקריות: עובדה ולא-עובדה. שאלות עובדתיות משתמשות בדרך כלל במילות חקירה כמו מה, איפה, מתי או מי, בעוד ששאלות שאינן עובדתיות משתמשות במילים כמו איך ולמה.
DPM: מהרשימה המסופקת, המשתמש רשאי לבחור קטע ספציפי. לאחר מכן, כל אסימון בקטע מתויג באמצעות תיוג חלק מהדיבור (POS). כדי לחלץ פעלים, זהה את כל האסימונים המתויגים כפעלים. שלב פעלים אלה עם רשימה של פעלים לא קונבנציונליים והחל לוגיקה עבור פעלים רגילים. צור מבנה נתונים (מערך) המכיל את הפעלים שחולצו, הזמנים שלהם וצורות ה-ing שלהם.
QPM: המערכת מקבלת קלט בצורה של שאלה מהמשתמש. הטקסט עובר אסימונים באמצעות המחלקה StringTokenizer, והאסימונים המתקבלים מאוחסנים במבנה נתונים נפרד. מבנה נתונים זה מוחזר לאחר מכן לשימוש נוסף בתוך התוכנית.
AEFM: הצעד הראשון הוא זיהוי הפועל בשאלה הנתונה. הפועל שזוהה לאחרונה מותאם כעת לאסימונים שנוצרו בשלב עיבוד המסמכים. המקרה הנבחר עבור סוג מסוים של שאלה עובדתית (כגון מה או מתי) מנוצל כדי לחלץ ולבנות את התשובה בצורה מדויקת יותר.
לפני בחירת סוג התשאול, המשתמש מתבקש תחילה לבחור את הקטע לבחירתו. ה-QPM אחראי לעיבוד שאלת המשתמש והעברתה ל-AEFM. ה-AEFM משתמש בחילוצים המתקבלים מה-DPM ובמסמכים המעובדים המכילים את הפורמט המתויג של מסמך הקלט המקורי. המודול יעביר את האלגוריתמים הנדרשים למודול הפורמולציה כדי לקבל את התשובה הרצויה.

איור 3: רכיבי QAS. האיור ממחיש את התהליך בן ארבעת השלבים של מערכת QA: שאלות, עיבוד שאלות, עיבוד תשובות ותשובה. בעיבוד שאלות, המערכת מסווגת את השאלה. בעיבוד תשובות, הוא מוצא ובודק מסמכים וקטעים כדי לייצר את התשובה. אנא לחץ כאן לצפייה בגרסה גדולה יותר של איור זה.
דגם BERT: כדי לגלות את האסוציאציות בין מילים בטקסט, שיטת BERT משתמשת בשנאי. ישנם שני מנגנונים בשנאי - מקודד ומפענח28, אך רק המקודד נחוץ ל-BERT. BERT נוקט בגישה דו-כיוונית וסורק באופן שיטתי את טקסט הקלט כדי ללמד את עצמו את משמעות המילים בהקשר שלהן. המקודד לוקח כקלט סדרה של אסימונים שעברו וקטוריזציה. לאחר מכן הווקטורים מוזנים לרשת העצבית, המייצרת סדרה של וקטורים המשקפים את הקלט. וקטור הפלט של מילה משתנה בהתאם למשפט שבו היא מופיעה. הווקטור של מילה עשוי להשתנות בהתאם להקשר שבו היא מופיעה; לדוגמה, ל"כמו" ב"הוא אוהב לשחק קריקט" יש וקטור שונה מ"כמו" ב"פניו הפכו אדומות כמו עגבנייה". הגישה מתחילה בשלב של עיבוד טקסט לפני המעבר לשלב בניית המודל. השלבים ש-BERT נוקט כדי לעבד טקסט נדונים בסעיף28 הבא.
עיבוד טקסט: מודל BERT מייצג טקסט קלט בהתאם למערכת עקרונות שנקבעה. בנוסף, גורם זה תורם לשיפור הביצועים של הדגם. הטמעת הקלט ב-BERT מורכבת משילוב של שלושה סוגים נפרדים של הטמעות28.
הטמעות מיקום (PEs): כדי ללמוד את המידע הקשור לסדר בהטמעות, נעשה שימוש ב-PEs. PEs משמשים לשחזור מידע על הסדר שאבד בשנאים. BERT מפתחת PEs נפרדים במיוחד עבור כל נקודה ברצף הקלט. ל-BERT יש את היכולת להעביר את המידע המיקומי של מילים בתוך משפט על ידי שימוש ב-PEs. זה מאפשר ל-BERT ללכוד ולייצג ביעילות את הרצף או הסדר של המילים.
הטמעות משפטים (SEs): בנוסף, כדי לסייע למודל להבחין בין המשפט הראשון לשני, BERT לומד הטמעה ייחודית לכל אחד מהם. הוא גם מסוגל לקבל משפטים זוגיים כקלט לפעילויות כגון QA.
הטבעת אסימונים (TEs): TEs נלמדים עבור כל אסימון באוצר המילים של אסימון WordPiece. אוצר המילים של אסימון WordPiece מורכב מיחידות תת-מילים הנגזרות ממילים שנמצאות בתוך הקורפוס. כדוגמה להמחשה, אוסף אוצר מילים זה יקיף את כל מילות המשנה האפשריות של המונח שאלה, כולל Questio, Questi וכן הלאה.
ייצוג הקלט של אסימון נבנה על ידי חיבור ההטמעות שלו ברמת הפלח והמיקום. בשל כך, זוהי גישת הטמעה נרחבת המספקת שפע של מידע למודל. איור 49 מתאר את ההטמעות של מודל BERT.

איור 4: הטמעות BERT. האיור מראה כיצד נוצרות הטמעות קלט עבור מודל שנאי. זה מתחיל ברצף קלט: [CLS] השמיים [MASK] מעוננים [SEP] ירד גשם [SEP]. כל אסימון ברצף מקבל הטמעה משלו, כגון Ethe או E[MASK]. לאחר מכן, הטמעות משפטים מתווספות לכל משפט, כגון EA עבור הראשון ו- EB עבור השני. הטמעות מיקום, המסומנות E0 עד E9, כלולות גם הן כדי לציין את המיקום של כל אסימון. כל אלה משולבים ליצירת הטמעות הקלט הסופיות. נתון זה שונהמ-9. אנא לחץ כאן לצפייה בגרסה גדולה יותר של איור זה.
תכנון QAS באמצעות BERT: לשם המחשה, בחנו את השאלה הזו בשילוב עם פסקה שנלקחה מערך בוויקיפדיה על פוטבול ליג28.
שאלה: היכן הוקמה הפוטבול ליג?
מעבר: בשנת 1888 נוסדה ליגת הפוטבול באנגליה, והפכה לראשונה מבין תחרויות כדורגל מקצועניות רבות. במהלך המאה ה-20, כמה מסוגי הכדורגל השונים גדלו והפכו לכמה מענפי הספורט הקבוצתיים הפופולריים ביותר בעולם.
תשובה: אנגליה
מודל ה-BERT משתמש בחילוץ אסימונים הן מהשאלה והן מההקשר, ולאחר מכן משלב אותם לקלט מאוחד. כאמור, התהליך מתחיל בשימוש באסימון [CLS], המשמש כאינדיקטור לתחילת משפט. בנוסף, נעשה שימוש במפריד [SEP] כדי להפריד באופן ברור בין השאלה לקטע. בנוסף לאסימון [SEP], BERT משלב SEs כדי להבחין בין השאלה לבין הקטע28 המכיל את התשובה. BERT משתמש בשני SEs, אחד מוקדש לשאלה והשני לקטע, כדי לבסס הבחנה ברורה ביניהם. ההטמעות משולבות לאחר מכן עם ייצוג חם אחד של28 אסימונים כדי להבדיל בין השאלה לקטע. תהליך זה מתואר באיור 5.

איור 5: ייצוג קלט BERT. האיור ממחיש כיצד נוצרות הטמעות קלט עבור QAS מבוסס BERT. זה מתחיל עם האסימון [CLS], ואז השאלה כמה? [SEP], והקטע BERT גדול הוא, כל אחד עם שיבוצי המשפטים שלו (A לשאלה, B לקטע). הטמעות אסימון, משפט ומיקום משולבות כדי ליצור את הקלט הסופי. אנא לחץ כאן לצפייה בגרסה גדולה יותר של איור זה.
לאחר מכן, הייצוג המוטבעהמשולב 28 של השאלה וההקשר משמש כקלט במודל BERT. השכבה הנסתרת הסופית של BERT משתנה כדי להשתמש ב-SoftMax כדי ליצור התפלגויות הסתברות. התפלגויות אלו קובעות את מדדי ההתחלה והסיום של תת-מחרוזת בתוך משפט טקסט הקלט, המייצג תשובה, כפי שמתואר באיור 6, עבור ייצוג חזותי.

איור 6: זרימת עבודה של עיבוד BERT עבור QA. האיור מראה כיצד מודל BERT עובד עבור QA. הוא מציג רצף קלט הכולל שאלה, המסומנת על ידי אסימון סיווג [CLS] בהתחלה ואסימון מפריד [SEP] בסוף, ואחריו הקשר, מופרד על ידי אחר [SEP]. האסימונים ברצף זה הופכים להטמעות. לאחר מכן המודל חוזה את מיקומי ההתחלה והסיום של התשובה בתוך הקטע. אנא לחץ כאן לצפייה בגרסה גדולה יותר של איור זה.
מסד נתונים וקטורי (VD): VD17,18 היא מערכת מיוחדת לאחסון, ניהול, אינדקס ושאילתות ביעילות של ייצוגים וקטוריים בממדים גבוהים של נתונים. וקטורים נוצרים לרוב ממודלים של למידה עמוקה ומכילים מידע סמנטי או הקשרי על הנתונים. כל ממד של וקטור מייצג תכונה ספציפית. הטמעות הן ייצוגים מספריים של אובייקטים כגון טקסט, תמונות, סרטונים ואודיו. הטמעות אלו משמשות ביישומים שונים, כולל למידת מכונה (ML), NLP, מערכות המלצות, ראייה ממוחשבת ו-IR. VDs מאפשרים חיפושי דמיון יעילים ושאילתות סמנטיות על ידי קיבוץ אובייקטים דומים קרוב זה לזה במרחב הווקטורי. Facebook AI Similarity Search (FAISS)29 הוא VD בולט ששימש במחקר זה כדי לזהות את ההקשר הרלוונטי ביותר לשאילתות משתמשים. טבלה 2 מתארת את המאפיינים העיקריים של VDs ומקרי השימוש בהם.
| תכונה | תיאור |
| נתונים בממדים גבוהים | מטפל בנתונים עם מאות או אלפי ממדים. |
| השכן הקרוב ביותר (ANN) | מאפשר חיפושי דמיון מהירים על ידי קירוב מרחקים. |
| מדרגיות | תומך במערכי נתונים בקנה מידה גדול עם מיליארדי וקטורים. |
| שילוב | משתלב לעתים קרובות עם מסגרות וכלים של AI/ML לזרימות עבודה חלקות. |
| שאילתות בזמן אמת | מספק חיפושים וקטוריים עם השהיה נמוכה עבור יישומים אינטראקטיביים. |
טבלה 2: המאפיינים העיקריים של VD. הטבלה מדגישה תכונות חשובות של VD. אלה כוללים טיפול בנתונים בממדים גבוהים, הפעלת חיפושי דמיון מהירים באמצעות אלגוריתמים של ANN, קנה מידה למערכי נתונים גדולים, עבודה עם כלי AI ו-ML ותמיכה בשאילתות מהירות בזמן אמת לשימוש אינטראקטיבי.
מדדי הערכת ביצועים: מערכת SCD-QA הוערכה באמצעות שני מדדים עיקריים: ציון EM14 ומודל חביון15. ציון EM, מדד סטנדרטי במחקרי QA, מעריך את דיוק החיזוי על ידי מדידת שיעור התשובות החזויות התואמות בדיוק את האמת הבסיסית. עבור קבוצה של N שאלות, ציון ה-EM מוגדר רשמית במשוואה 1 באופן הבא:
כאשר
(1)
מדד זה מקצה ציון של 1 להתאמה מדויקת עם תשובת ההתייחסות, ו-0 לכל הפרש.
מדד ההשהיה מכמת את זמן העיבוד הכולל הנדרש למערכת כדי ליצור תגובה לשאילתה בודדת. מדד זה מחושב כזמן שחלף הממוצע בכל השאילתות, כפי שמוצג במשוואה 2:
(2)
כאשר Tמתחילi ו-T סוףi הם חותמות הזמן המסמנות את ההתחלה והסיום של עיבוד השאילתה i, בהתאמה. ההשהיה מדווחת ב-s ולוכדת את היענות המערכת, המקיפה את כל השלבים מעיבוד קלט ועד ליצירת תשובות.
שיטת
על מנת ליישם את ה-SCD-QA, משולבים במאמר זה מחקרי הבדיקה הבאים.
מערך נתונים של SCD-QA: מערך נתונים מוצע30 מוצג ליישום מערכת SCD-QA. מערך נתונים זה נגזר מקורפוס טקסט המכיל כללי דוקטורט לשנת 20228, עבור הנחיות סטודנטים מ-NIT ארונאצ'ל פראדש, הודו. כדי להקים את מערכת SCD-QA, יש צורך ליצור קובץ JSON שיקיף את כל המידע הרלוונטי בפורמט מדויק. מערך הנתונים נוצר מקורפוס הטקסט באמצעות כלי הביאור Haystack (גרסה 2.18.1)31, מסגרת קוד פתוח. כלי זה מקל על יצירת מערך הנתונים SCD-QA בסגנון SQuAD14. השלבים ליצירת מערך נתונים מבואר מסוג SQuAD מקובץ ה-PDF מוצגים באיור 7, והמבנה של מערך הנתונים שלנו בסגנון SQuAD מתואר באיור 8.

איור 7: שלבים ליצירת מערך נתונים מבואר מקובץ PDF. האיור ממחיש זרימת עבודה מדורגת ליצירת מערך נתונים מבואר בסגנון SQuAD באמצעות כלי Haystack. הוא מתאר את התהליך החל מחילוץ טקסט מקובצי PDF, ניקויו ופיצולו למעברים, הערות ידניות של זוגות שאלות-תשובות, אחסון ההערות בפורמט SQuAD JSON, ולבסוף ייצוא מערך הנתונים לאימון מודלים. אנא לחץ כאן לצפייה בגרסה גדולה יותר של איור זה.

איור 8: מבנה מערך הנתונים של עובדות QA. האיור מציג מבנה נתונים של JSON המייצג פסקה וצמד QA ממערך נתונים. יש בו קטע פסקאות, המכיל קבוצה של שאלות ותשובות. שאלה אחת שואלת, מהו הציון המינימלי הנדרש כדי להתקבל לדוקטורט במדעים? לכל שאלה יש תעודת זהות ומערך תשובות. התשובה כוללת מזהה מסמך, מזהה שאלה, הטקסט 60% ציונים, מיקום ההתחלה של התשובה וקטגוריית תשובה לא מוגדרת. דגל is_impossible מוגדר כ- false. אנא לחץ כאן לצפייה בגרסה גדולה יותר של איור זה.
מערך הנתונים בנוי כרשימת מילונים, כאשר כל מילון מכיל שדות מפתח כגון נתונים, פסקאות, שאלה, answer_id, document_id, question_id, טקסט, answer_start, answer_end, is_impossible והקשר.
נתונים: הוא מכיל את המידע הכולל על תשובות לשאלות.
פסקאות: הקשר מסוים, יחד עם השאלות והתשובות שלו.
שאלה: שאלה מסוימת.
answer_id: מספר זיהוי ייחודי לכל טקסט תשובה.
document_id: מספר זיהוי ייחודי לכל הקשר.
question_id: מספר זיהוי ייחודי לכל שאלה.
טקסט: טקסט התשובה.
answer_start: מיקום ההתחלה של התשובה הנכונה בהקשר.
answer_end: מיקום סיום התשובה של התשובה הנכונה בהקשר.
is_impossible: זה אומר אם התשובה לשאלה שנשאלה זמינה בהקשר או לא.
הקשר: קורפוס הטקסט שממנו ניתן למצוא תשובה.
כל 80 השאלות במערך הנתונים המוצע עוקבות אחר פורמט השאלות העובדתיות והלא עובדתיות. דוגמאות של סוגים מסוימים של שאלות ממוסגרות מוצגות בטבלה 3.
| שאלות |
| מיהו נ.ב? |
| מהו גודל הגופן של המסמך המתקדם? |
| כמה ימים יש בחופשת לידה? |
טבלה 3: שאלה לדוגמה ממערך הנתונים. הטבלה מציגה דוגמאות לשני סוגים של שאלות: הראשונה והשנייה הן שאלות עובדתיות, ואילו השלישית היא שאלה לא עובדתית.
FAISS: FAISS (גרסה faiss_cpu-1.9.0)29,32, שפותחה על ידי Facebook AI Research (FAIR), היא ספריית קוד פתוח המאפשרת חיפוש דמיון יעיל ואשכולות של וקטורים צפופים. הוא תוכנן במיוחד לניהול נתונים בקנה מידה גדול וממדים גבוהים ביעילות. מערכת זו מאפשרת חיפושי ANN מהירים וניתנים להרחבה בתוך מערכי נתונים הכוללים מיליוני או מיליארדי וקטורים. הוא נמצא בשימוש נרחב ביישומים הקשורים להטמעות, כולל NLP, מערכות המלצות ואחזור תמונות או וידאו. FAISS מציעה שיטות אינדקס מרובות, כולל שטוח (כוח גס), קובץ הפוך (IVF), גרפים היררכיים של עולם קטן הניתנים לניווט (HNSW) וקוונטיזציה של מוצרים (PQ). שיטות אלה מאפשרות למשתמשים למטב את ביצועי החיפוש בהתאם לגודל הנתונים, הממדים ומפרטי החומרה. במחקר זה נעשה שימוש באינדקס שטוח, המבצע חיפוש בכוח גס תוך שימוש במרחק L2 (אוקלידי) כדי לזהות את השכנים הקרובים ביותר. יכולת ההרחבה של המערכת תומכת הן ביישומי CPU והן ב-GPU, ומאפשרת חישובים בעלי ביצועים גבוהים על פני מערכי נתונים נרחבים. בנוסף, הוא מספק גמישות כדי לייעל את האיזון בין מהירות ודיוק בהתבסס על דרישות יישום ספציפיות. FAISS משמש לעתים קרובות ב-NLP כדי להעריך דמיון סמנטי בהטמעות, כגון BERT או Word2Vec. FAISS משמש ב-QAS לאחסון וניהול ייצוגים וקטוריים של מסמכים או משפטים. הוא מבצע חיפושי ANN משוערים33 כדי לאחזר את ההקשר הרלוונטי ביותר לשאלות משתמשים, ומשפר את החיפוש הסמנטי עם הטמעות ממודלים של שנאים כגון BERT. FAISS הוא כלי בסיסי בתהליכי עבודה של AI ו-ML בשל הרבגוניות שלו.
מודל BERT-large-uncased-whole-word-masking-finetuned- SQuAD: העבודה הנוכחית משתמשת במודל שפה מאומן מראש המכונה BERT-large-uncased-whole-word-masking fine-tuned-squad9 כדי לפתח QAS עובדתי באמצעות מערך הנתונים המוצע במחקר. מודל BERT עבר הכשרה מוקדמת ב-BookCorpus, מערך נתונים של 11,038 ספרים שלא פורסמו9, כמו גם בוויקיפדיה האנגלית, למעט רשימות, טבלאות וכותרות. הדגם המדובר אינו מסומן, כלומר אינו מבחין בין המילים אנגלית ואנגלית. המודל הוא מודל שנאי מאומן מראש שהוכשר על כמות משמעותית של נתונים באנגלית באמצעות גישה בפיקוח עצמי. המודל הוכשר מראש אך ורק על טקסטים גולמיים, ללא הערות אנושיות. זה מאפשר לו למנף כמות גדולה של נתונים נגישים לציבור. תהליך ההכשרה המקדים כולל יצירה אוטומטית של תשומות ותוויות מהטקסטים המסופקים. המודל הוכשר עם שתי מטרות ספציפיות9:
MLM: התהליך כולל מיסוך אקראי של 15%9 מהמילים במשפט הקלט. לאחר מכן המודל מעבד את כל המשפט המסיכה וחוזה את המילים המסיכות. גישה זו שונה מרשתות עצביות חוזרות קונבנציונליות (RNNs), שבדרך כלל מעבדות מילים ברצף, וממודלים אוטורגרסיביים כמו GPT, המשתמשים במיסוך פנימי של אסימונים עתידיים. הפונקציונליות מאפשרת למודל לרכוש ייצוג דו-כיווני של המשפט.
NSP: בשלב הקדם-אימון, המודל משלב שני משפטים מוסווים כקלט. במקרים מסוימים, משפטים אלה סמוכים בטקסט המקורי, מה שמעיד על קשר ישיר. במקרים אחרים, הם לא, כלומר אין קרבה מקורית או הקשר המקשר ביניהם. השלב הבא כולל את המודל המנבא אם שני המשפטים קוהרנטיים מבחינה לוגית.
המודל הנוכחי מאופיין בתצורה שלאחר מכן: ארכיטקטורת המודל מורכבת מ-24 שכבות, עם ממד נסתר של 1024. הוא משתמש ב-16 ראשי קשב ויש לו בסך הכל 336 מיליון פרמטרים9.
WordPiece משמש לאסימונים של הטקסטים בגודל אוצר מילים של 30,000 מילים בשלבי העיבוד המקדים. לאחר מכן הקלט של המודל ייראה כך: [CLS] משפט A [SEP] משפט B [SEP]. הדרישה היחידה היא שהאורך הכולל של המשפטים המשולבים יהיה פחות מ-512 אסימונים9. המודל הספציפי שהוכשר מראש מניב את התפוקה הבאה: ציון F1 שהושג הוא 93.15%, בעוד שציון ההתאמה המדויק הוא 86.91%9.
מודל Distilbert/distilbert-base-cased-distilled-squad: מודל DistilBERT10 הוא גרסה קומפקטית, מהירה ויעילה יותר של מודל BERT9 , שפותח כדי לשמור על רוב יכולת ההבנה הסמנטית של BERT תוך שהוא פחות עתיר משאבים ומתאים יותר ליישומים מעשיים עם יכולת חישובית מוגבלת. הגרסה distilbert-base-cased-distilled-squad כווננה עדינה ב-SQuAD14 למשימות QA. המודל משתמש בארכיטקטורת השנאי, כולל גודל מופחת של 66 מיליון פרמטרים לעומת 110 מיליון של BERT, תוך שמירה על 97% מהיעילות של BERT בהבנת השפה. DistilBERT מגיעה לכך באמצעות שיטה המכונה זיקוק ידע, המעבירה מידע ממודל BERT הגדול יותר למודל DistilBERT הקומפקטי יותר. בגלל גודלו הקטן יותר, הוא יכול להסיק מידע מהר יותר ולהשתמש בפחות זיכרון, מה שהופך אותו למושלם עבור יישומים מוגבלים במשאבים כמו מכשירים ניידים או קצה. המודל, שכוונן בקפידה על מערך הנתונים של SQuAD 1.1, מפגין מיומנות יוצאת דופן במשימות QA חילוץ, לפיה המטרה היא לאתר קטע טקסט מהקשר מוגדר שעונה על שאלה. DistilBERT משיגה כ-85% מציון ה-F1 של BERT בטבלת המובילים של SQuAD ושומרת על חלק ניכר מהיכולת הלשונית של BERT, למרות גודלה הקטן. מודל זה הוא פתרון יעיל במיוחד לעבודות QA ברמת הייצור, וממטב הן את הביצועים והן את היעילות החישובית.
Deepset/roberta-base-squad2: דגם Deepset/roberta-base-squad212,13 הוא גרסה מכווננת של ארכיטקטורת RoBERTa. הוא תוכנן במיוחד עבור מערך הנתונים SQuAD14 2.0, הכולל שאלות שנענו ושלא ניתן לענות עליהן. מסגרת RoBERTa משופרת זו מבטלתאת 9 משרות ה-NSP של BERT. הוא גם משתמש במיסוך דינמי במהלך האימון כדי להגביר את היעילות והביצועים במשימות הבנת NL. לדגם 125 מיליון פרמטרים והוא משתמש בשנאי דו-כיווני. זה מאפשר לו לרכוש מידע הקשרי משני הכיוונים ולהצטיין במשימות QA חילוץ.
כוונון עדין ב-SQuAD 2.0 מאפשר למודל לזהות את טווח התגובה הנכון בהקשר נתון ולזהות מתי אין תשובה. הוא משתמש בטוקנייזר קידוד זוגות בתים (BPE) המטפל בטוקניזציה של תת-מילים ושומר על רגישות לאותיות גדולות. זה משפר את יכולתו לעבד מילים לא שגרתיות ומורכבות. המודל מתפקד היטב, ומשיג בערך 85%-90% F1 ו-80%-85% EM. היכולת שלו לזהות שאלות שאין עליהן מענה והפריסה היעילה שלו הופכות אותו לבעל ערך עבור שירות לקוחות, אחזור ידע ועוזרים וירטואליים.
הדרך היעילה ביותר לפרוס דגמי BERT מכווננים עדינים של SQuAD עבור QA היא להשתמש בצינור Hugging Face Transformers34. מסגרת זו מייעלת טוקניזציה, עיצוב קלט, טעינת מודלים ועיבוד לאחר פלט. מודלים אלה מוכרים באופן נרחב ביעילותם ב-QA חילוץ, כאשר התשובה היא טווח טקסט שאוחזר ישירות מההקשר הנתון. כדי להנחות את היישום, ההליך הבא מתאר את השלבים לביצוע מודלים של BERT.
קלט והגדרה: תהליך זה דורש ארבעה כניסות עיקריות ופרמטרי הגדרה: שם הדגם, שצוין כמזהה מחרוזת מ-Hugging Face Hub (לדוגמה, google-bert/bert-large-uncased-whole-word-masking-finetuned-squad, distilbert/distilbert-base-cased-distilled-squad, או deepset/roberta-base-squad2); השאלה (Q), המסופקת כמחרוזת המכילה את השאילתה; וההקשר (C), מחרוזת המייצגת את הטקסט או הקטע הרלוונטיים. הכלי העיקרי בו נעשה שימוש הוא פונקציית הצינור ברמה גבוהה מספריית השנאים של Hugging Face (גרסה 4.57.0) ב-Python (גרסה 3.12.12).
תהליך: ביצוע (צינור חיבוק פנים): התהליך מורכב משישה שלבים עיקריים ומשתמש בצינור חיבוק פנים כדי לטפל במורכבות משימת ה-QA:
התקן ספרייה: התחל בהתקנת הספרייה הנדרשת עם הפקודה pip להתקין שנאים. התקנה זו מאפשרת גישה למודלים ולפונקציונליות היעילה של הצינור.
צינור ייבוא: ייבא את פונקציית קו הצינור באמצעות: מקו צינור ייבוא שנאים.
אתחול צינור QA: אתחל את קו הצינור של QA באמצעות qa_pipeline = pipeline("question-answering", model=""). פקודה זו מורידה את המודל ואת הטוקנייזר, והופכת אותם מוכנים להסקה.
הגדר קלט: הגדר שאלה = ... והקשר = ... כדי להכין את נתוני המודל.
הפעל מסקנה: העבר את השאלה וההקשר לקו הצינור עם תוצאה = qa_pipeline(שאלה=שאלה, הקשר=הקשר). המודל מעבד את הקלט ומספק תשובה.
חלץ תשובה: קבל את מחרוזת התשובה ממילון הפלט באמצעות: answer = result['answer'].
פלט: התהליך מייצר מספר פרמטרי פלט בסדר הבא: תשובה (טווח הטקסט שחולץ מההקשר, מוצג כמחרוזת), ציון (ערך נקודה צפה המכמת את הביטחון של המודל בחיזוי שלו), ומדדי התחלה וסיום (מספרים שלמים המציינים את מיקומי התווים של טווח התשובה בתוך ההקשר).
שנאי משפטים/all-MiniLM-L6-v2: ה-all-MiniLM-L6-v235 הוא שנאי משפטים מאומן מראש מספריית Sentence-Transformers (גרסה 5.1.1)36. הוא ממוטב להטמעת טקסט יעילה ומדויקת. פותח על מסגרת MiniLM של מיקרוסופט, הוא כולל שש שכבות שנאים והטמעות 384 מימדים. עיצוב זה מאזן בין ביצועים למיומנות חישובית, מה שהופך אותו למתאים ליישומים בזמן אמת. המודל אומן על למעלה ממיליארד זוגות ביטויים ממערכי נתונים כמו SNLI, MultiNLI, מדדי STS ונתונים שנסרקו באינטרנט. כתוצאה מכך, הוא מפגין מיומנות בדמיון סמנטי, קיבוץ ומשימות הקשורות לחיפוש. בגלל גודלו הקטן (~22MB) וביצועי ההסקה המשופרים, ה-All-MiniLM-L6-v2 מפשט יישומים כגון חיפוש סמנטי, זיהוי כפילויות וסיווג טקסט. למרות שהוא קל משקל, הוא מספק דיוק חזק במדדים כגון STS-B ו-SICK-R, מה שהופך אותו לבחירה יעילה עבור תרחישים ניתנים להרחבה ומוגבלים במשאבים. זרימת העבודה ליצירת ההטמעה באמצעות שנאי משפטים מתוארת באיור 9 להלן.

איור 9: שלב בתהליך ההטמעה באמצעות מודל שנאי המשפט. האיור ממחיש את זרימת העבודה ליצירת הטמעות טקסט באמצעות מסגרת שנאי המשפטים. הוא מתאר את התהליך מייבוא ספריות וטעינת מודל מאומן מראש ועד הכנת נתוני טקסט, יצירת הטמעות, המרתם למערכי NumPy ואחסונם למשימות במורד הזרם כמו אינדקס או חיפוש דמיון. אנא לחץ כאן לצפייה בגרסה גדולה יותר של איור זה.
אלגוריתם מוצע: מחקר זה מתאר מתודולוגיה מוצעת באלגוריתם 1 לפיתוח מערכת SCD-QA מבוססת SeCD, המסוגלת לענות על שאלות עובדתיות ולא עובדתיות שנשאלו על ידי משתמשים.
אלגוריתם 1: אלגוריתם של מערכת SCD-QA מבוססת SeCD המוצעת
קלט: קבוצה של קובץ הקשר גולמי (C) ושאילתת המשתמש (Q).
פלט: ה-LLM האופטימלי מבוסס השנאי (M') שנבחר והתגובה שנוצרה על ידי M'.
הקשרים מקדימים לעיבוד: הוסף הערות לערכת ההקשר הגולמי C כדי ליצור מערך נתונים מובנה בפורמט DSQuAD .
DSQuAD = fאנונאט (C)
צור הטמעות הקשר: השתמשבהטמעת f של שנאי משפט כדי להמיר כל הקשר c
DSQuAD להטמעה ec.

הטמעות אחסון: אחסן את Ec במסד נתונים וקטורי V לחיפוש דמיון יעיל.

צור הטמעת שאילתה: הפוך את שאילתת המשתמש Q להטמעה eq באמצעות אותו שנאי משפטים.

אחזור הקשר: אחזר את הטמעת
ההקשר הרלוונטית ביותר ממסד הנתונים V בהתבסס על דמיון ל- eq.

כאשר sim(eq,e c), היא פונקציית הדמיון.
העבר הקשר ל-LLMs: הזין את ההקשר
שאוחזר ל-3 LLMs מבוססי שנאים: Google-BERT (M1), DistilBERT (M2), RoBERTa (M3) ומודל מסורתי: TF-IDF+Cosine Similarity (M4)

הערכת מודל: השווה את התגובות {R1,R 2,R 3,R 4} באמצעות פונקציית הערכה feval, שנותנת ציון לכל תגובה.

בחר את הדגם הטוב ביותר: זהה את המודל M' עם ציון ההערכה הגבוה ביותר S'

צור פלט סופי: השתמש ב-M' כדי ליצור את התגובה הסופית R בהתבסס על

קצה
תהליך האלגוריתם המוצע מתאר גישה שיטתית (איור 10) לבחירת LLM אידיאלי מבוסס שנאי כדי לענות על שאלות המשתמשים. הוא משלב עיבוד מקדים, אחזור הקשר מבוסס הטמעה והערכה מרובת מודלים כדי להבטיח תשובות איכותיות ורלוונטיות להקשר. להלן מוסבר התהליך שלב אחר שלב לבהירות:
הכנת נתונים ועיבוד מקדים: השלב הראשון כולל עיבוד נתונים טקסטואליים גולמיים-
קלט: קבצי הטקסט הגולמי8 מותאמים למערכת.
כלי הערות31: הקלט הופך למערך נתונים מובנה בפורמט SQuAD14 . שלב זה כולל יצירת זוגות QA. הוא גם מארגן נתונים טקסטואליים רלוונטיים בבלוקי הקשר מוגדרים היטב.
פלט: מערך הנתונים מוכן כעת ליצירת הטמעות.
יצירת הטמעת הקשר: כדי לאפשר אחזור הקשר יעיל וניתן להרחבה, מוחל מודל Sentence-Transformer35,36 מאומן על מערך הנתונים המבואר. שנאי זה ממיר טקסט להטמעות בממדים גבוהים הלוכדים משמעות סמנטית. ההטמעות מאוחסנות ב-VD, FAISS29,32 כדי לאפשר חיפושים מהירים מבוססי דמיון.
עיבוד שאילתות משתמש: כאשר משתמש שולח שאלה, השאלה מעובדת על ידי אותו שנאי משפטים35,36. זה יוצר הטמעה מתאימה באותו מרחב וקטורי29,32 כמו הטמעות ההקשר. עיצוב זה מבטיח שניתן להתאים את השאילתה לערכי הקשר רלוונטיים.
אחזור הקשר באמצעות דמיון וקטורי: באמצעות מדד דמיון (למשל, דמיון קוסינוס), המערכת משווה את הטמעת השאילתה עם הטמעות הקשר מאוחסנות. המערכת בוחרת את ההקשר הרלוונטי ביותר על סמך ציון הדמיון הגבוה ביותר. זה מבטיח שרק הקשר רלוונטי מועבר למודלים במורד הזרם. התהליך מפחית את התקורה החישובית ומשפר את הרלוונטיות.
הערכת מודל על פני מספר LLMs: ההקשר שנבחר מוערך על ידי שלושה LLMs מבוססי שנאים: Google-BERT28, DistilBERT10 ו-RoBERTa12. הוא מוערך גם על ידי TF-IDF37 מסורתי מבוסס מילות מפתח עם מודל דמיון קוסינוס. כל מודל מעבד את ההקשר ומייצר תגובה לשאלת המשתמש.
הערכה השוואתית: התגובות מארבעת המודלים של LLM מוערכות באמצעות שני מדדים מרכזיים. ראשית, התאמה סמנטית מוערכת על ידי EM14. שנית, חביון המודל מנותח על ידי זמני התגובה הממוצעים15.
בחירת מודל ותפוקה סופית: המודל בעל הביצועים הטובים ביותר נבחר כ-LLM המתאים לשאלת המשתמש. התגובה הסופית מהדגם הנבחר נחשבת. זה מבטיח איזון בין יעילות חישובית לאיכות תגובה.

איור 10: זרימת העבודה של מערכת SCD-QA באמצעות מודלים מבוססי שנאים. האיור מראה כיצד פועלת מערכת SCD-QA. ראשית, קובץ הקשר גולמי מעובד על ידי כלי הערות ליצירת מערך נתונים בפורמט SQuAD. לאחר מכן שנאי משפט מייצר הטמעות, המאוחסנות במסד נתונים וקטורי של FAISS. כאשר משתמש שואל שאלה, המערכת יוצרת עבורה הטמעה ובוחרת את ההקשר הרלוונטי ביותר. הוא משווה שלושה מודלים מבוססי שנאים - Google-BERT, DistilBERT ו-RoBERTa, וציון דמיון מסורתי אחד של TFIDF + קוסינוס - ומשתמש במודלים בעלי הביצועים הטובים ביותר כדי לספק את התשובה. אנא לחץ כאן לצפייה בגרסה גדולה יותר של איור זה.