GPT
T

toxic-comment-model

קוד פתוח

martin-haרישיון לא דווח2022-03-02

  • transformers
  • pytorch
  • distilbert
  • text-classification
  • en

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

  • 512טוקנים בהקשר
  • 256 MBמשקל הקבצים
  • 351,979הורדות בחודש
  • 70לייקים

מה זה

מדובר בהתאמה של DistilBERT למשימת סיווג של תגובות פוגעניות ברשת. הפרויקט אומן על עשרה אחוזים מהנתונים של תחרות Jigsaw ב־Kaggle, במשך כשלוש שעות על מעבד גרפי יחיד מסוג P-100. עם משקל של 256 מגה בייט, הוא מיועד לרוץ מהר ובזול בלי צורך בתשתיות כבדות.

במבחן על עשרת אלפים שורות שלא נכללו באימון, הוא הציג דיוק כללי של 94 אחוזים, אבל ציון ה־F1 שלו עומד על 0.59 בלבד. הפער הזה חושף בעיה מהותית. בגלל שרוב הטקסטים ברשת אינם רעילים, קל להגיע לאחוז דיוק גבוה פשוט על ידי סימון הכל כתקין. ציון ה־F1 הנמוך מראה שהוא מתקשה לתפוס את התגובות הבעייתיות בפועל או מייצר לא מעט אזעקות שווא, כך שאי אפשר לסמוך עליו בעיניים עצומות.

מתאים ל

  • סינון ראשוני בצ'אט

    זיהוי גס ומהיר של קללות באנגלית לפני שמציגים הודעה לשאר המשתמשים.

  • תיעדוף בדיקות ידניות

    ניתוב תגובות חשודות לבודק אנושי לפי סף רגישות שמוגדר מראש.

  • ניקוי נתונים למחקר

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

איפה זה נופל

היוצר מודה בגלוי בהטיה קשה נגד קבוצות זהות מסוימות. בדירוגי ה־AUC לפי אוכלוסיות, המודל מציג ביצועים ירודים במיוחד מול מוסלמים ויהודים, עם ציונים של 0.689 ו־0.749 בלבד. משפט עובדתי תמים לחלוטין שמגדיר מוסלמים מתויג אצלו מיד כתוכן רעיל. בנוסף הוא תומך באנגלית בלבד, כך שטקסט בעברית לא רלוונטי כאן כלל. הכנסה שלו למוצר בלי מנגנון סינון עוקף תחסום משתמשים לגיטימיים רק בגלל שהזכירו מילים מסוימות.

שאלות
נפוצות

האם כדאי להשתמש בו לסינון תגובות באתר ישראלי?

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

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

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

איך מריצים

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

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

from transformers import pipeline

pipe = pipeline("text-classification", model="martin-ha/toxic-comment-model")
print(pipe("שלום"))

הקבצים

8 קבצים במאגר, 256 MB סך הכול. הקישורים מובילים ישירות ל־Hugging Face.

הרישיון

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

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