GPT
S

speech-emotion-recognition-with-openai-whisper-large-v3

קוד פתוח

firdhokkapache-2.02024-09-21

  • transformers
  • safetensors
  • whisper
  • audio-classification
  • generated_from_trainer

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

  • 637Mפרמטרים
  • 2.4 GBמשקל הקבצים
  • 15,042הורדות בחודש
  • 120לייקים

מה זה

במקום לתמלל טקסט ואז לנחש עליו רגש, המודל הזה לוקח את האודיו ישירות ומסווג אותו לאחת משבע קטגוריות: כעס, גועל, פחד, שמחה, ניטרליות, עצב או הפתעה. הוא מתבסס על ארכיטקטורת Whisper Large v3 עם ראש סיווג ייעודי ומכיל כ־637 מיליון פרמטרים. האימון נעשה על שילוב של ארבעה מאגרי נתונים ידועים בתחום, בהם RAVDESS, SAVEE, TESS ו־URDU.

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

מתאים ל

  • סיווג שיחות במוקדי שירות

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

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

    מיפוי רגעי מתח, הפתעה או שמחה לאורך רצועת קול בלי לתמלל שעות של חומר.

  • מחקר אקדמי על דיבור

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

איפה זה נופל

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

בבדיקה לאורך שלבי האימון רואים גם שהחל מאיטרציה שמונה ה־Validation Loss מתחיל לטפס עד 0.8334, סימן ברור ל־overfitting מסוים.

שאלות
נפוצות

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

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

זה יעבוד טוב על הקלטות בעברית?

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

איך מריצים

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

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

from transformers import pipeline

pipe = pipeline("audio-classification", model="firdhokk/speech-emotion-recognition-with-openai-whisper-large-v3")
print(pipe("שלום"))

הקבצים

6 קבצים במאגר, 2.4 GB סך הכול. הקישורים מובילים ישירות ל־Hugging Face.

הרישיון

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

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

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