GPT
M

mDeBERTa-v3-base-mnli-xnli

קוד פתוח

MoritzLaurermit2022-03-02

  • transformers
  • pytorch
  • onnx
  • safetensors
  • deberta-v2

פתרון מדויק לסיווג טקסטים בלי לאמן מודל מאפס, שתומך במאה שפות שונות. הוא נשען על DeBERTa-v3 ומציג דיוק מרשים במשימות הסקה ישירות.

  • 279Mפרמטרים
  • 512טוקנים בהקשר
  • 2.4 GBמשקל הקבצים
  • 320,801הורדות בחודש

מה זה

המודל מבצע הסקה לוגית בין משפטים ומאפשר סיווג טקסטים לקטגוריות חופשיות בלי דוגמאות אימון מוקדמות. הבסיס שלו אומן במקור על ידי מיקרוסופט על קורפוס CC100, ולאחר מכן עבר כוונון ייעודי על מאגר MNLI באנגלית ותרגומים מקצועיים מתוך XNLI. הבחירה לא להשתמש בתרגום מכונה נועדה למנוע פגיעה באיכות ביתר השפות, והיא שומרת על יכולת הכללה טובה יותר.

בבדיקות מול 15 שפות במבחן XNLI, המודל מגיע לממוצע של 80.8 אחוזי דיוק, כשהתוצאה באנגלית עומדת על 88.3 אחוז ובשפות כמו גרמנית, ספרדית או ערבית סביב 80 עד 84 אחוז. המשמעות בשטח היא שאפשר לזרוק עליו טקסט בשפה זרה עם רשימת תוויות באנגלית או באותה שפה, ולקבל סיווג אמין בלי לגעת בארכיטקטורה.

מתאים ל

  • סיווג פניות תמיכה

    מיון מיילים ופניות נכנסות למחלקות שונות בכמה שפות בלי צורך לבנות מערך נתונים מתויג מראש.

  • ניתוח סנטימנט רב־לשוני

    זיהוי אם ביקורת או תגובה ברשת היא חיובית, שלילית או ניטרלית על גבי מגוון שפות רחב.

  • בדיקת תאימות עובדתית

    אימות האם משפט אחד תומך, סותר או ניטרלי ביחס למשפט מקור באמצעות משימת NLI ישירה.

איפה זה נופל

חלון ההקשר מוגבל ל־512 טוקנים, כך שהוא לא מתאים למסמכים ארוכים, חוזים או מאמרים שלמים בלי פירוק מוקדם לפסקאות. הכרטיס מציין במפורש שגרסאות transformers ישנות מתחת ל־4.13 גורמות לבעיות בטוקנייזר, וקיימת בעיה ידועה בתמיכה של mDeBERTa ב־FP16. בנוסף, הביצועים שלו בשפות שלא נכללו במערך הבדיקה של XNLI צפויים להיות נמוכים יותר מ־80 האחוזים שהוצגו, ולכן חובה לבדוק אותו על נתונים אמיתיים לפני פריסה לייצור.

שאלות
נפוצות

האם המודל תומך בעברית בצורה טובה?

הבסיס אומן על קורפוס CC100 שכולל עברית, אך נתוני הכוונון הישירים של XNLI לא כללו אותה. המודל מסוגל להעביר ידע לשפות נוספות, אבל רמת הדיוק בעברית תהיה כנראה נמוכה יותר מ־80 האחוזים שהתקבלו בשפות שנבדקו רשמית, ולכן מומלץ לבדוק מדגם ידני לפני שמסתמכים עליו.

האם צריך לאמן את המודל על הדאטה שלי כדי להתחיל לעבוד?

לא. המודל מיועד מראש לסיווג ללא דוגמאות מוקדמות, כך שמספיק להגדיר לו את הטקסט ואת שמות הקטגוריות שמעניינות אתכם. אם תרצו לשפר ביצועים למקרה קצה ספציפי אפשר לאמן אותו הלאה, אבל הוא עובד ישר מהקופסה.

איך מריצים

עם 279 מיליון פרמטרים ומשקל קבצים של 2.4 גיגה בייט, המודל רץ בקלות על גבי כרטיס מסך ביתי בסיסי עם 6 עד 8 גיגה זיכרון, ואפשר להריץ אותו גם על מעבד רגיל אם זמן התגובה פחות קריטי. הטעינה נעשית ישירות דרך ספריית transformers בפייתון באמצעות שורות קוד בודדות בתוך pipeline ייעודי לסיווג.

אם יש לכם שרת מקומי קטן עם GPU, אין שום סיבה לשלם לספקי ענן לפי קריאה, שכן העלויות של מודל בגודל כזה הן זניחות. לעומת זאת, אם אתם צריכים זמני תגובה מהירים מאוד על חומרה חלשה במיוחד, כדאי לשקול מודל קטן יותר כמו multilingual-MiniLMv2-L6-mnli-xnli שהיוצר עצמו מציע כחלופה קלה.

from transformers import pipeline

pipe = pipeline("zero-shot-classification", model="MoritzLaurer/mDeBERTa-v3-base-mnli-xnli")
print(pipe("שלום"))

הרישיון

רישיון MIT מאפשר שימוש חופשי לחלוטין, כולל שימוש מסחרי, שינוי הקוד והפצה סגורה בתוך מוצרים. התנאי היחיד הוא שמירת הצהרת זכויות היוצרים של היוצר המקורי בתוך הפרויקט שלכם.

  • שימוש מסחרי
  • שינוי הקוד
  • הפצה מחדש

הרישיון המלא בעמוד המודל ↗