במחקר זה נעשה שימוש במאגרי הנתונים BVC Challenging Voice Set ו-Mozilla Common Voice הזמינים לציבור, ללא מעורבות ישירה של משתתפים. לפיכך, לא נדרשו אישור אתי ממוסד או הסכמה מדעת נוספת. עובדו רק הנתונים הדרושים לסיווג מגדר וגיל, ולא נעשה ניסיון לזהות דוברים בודדים. מתודולוגיית זרימת העבודה המלאה של המסגרת המוצעת מוצגת ב-איור 1.
איסוף נתונים
מערך הנתונים ששימש בגישה המוצעת כלל קבצי אודיו בפורמט .wav שהשיגו מתוך BVC Challenging Voice Set, מערך נתונים קולי הזמין לציבור אשר פותח על ידי קבוצת Biometrics Vision and Computing (BVC) ומארח ב-GitHub32. מערך הנתונים הכיל הקלטות קוליות מ-526 אנשים, כולל 336 דוברים זכרים ו-190 דוברות נקבה. הוא כלל כ-3,964 הקלטות, הכוללות הקלטות של משפט בודד ושל מספר משפטים מכל דובר. טבלה 2 מסכמת את המאפיינים הדמוגרפיים, הכיסוי השפתי, תכונות ההקלטה, אסטרטגיית חלוקת הנתונים והגדרות עיבוד המקדם ששימשו עבור מערכי נתוני הדיבור במסגרת VoiceNet-RAI המוצעת.
חילוץ מאפיינים
קבצי שמע עובדו כדי להוציא תכונות חיוניות, אשר נשמרו לאחר מכן בקובץ CSV. מטא-נתונים, כולל גיל, מגדר והגייה של הדובר, הופקו מקובצי ה-README המתאימים. נעשה שימוש בשפת Python, יחד עם חבילת SciPy, לעיבוד קבצי ה-WAV ולהוצאת מאפיינים רלוונטיים. פונקציות התדר וה-Fast Fourier Transform (FFT) של NumPy שימשו להמרת אותות השמע מהמישור של הזמן למישור התדר. קבצי ה-WAV ייצגו את האמפליטודה כפונקציה של הזמן; עם זאת, מאפיינים הקשורים לתדר שיכולים להבדיל בין קולות גברים לנשים היו בעלי עניין רב יותר עבור משימת הסיווג33.
כדי להמיר את אותות השמע לייצוגים במישור התדר, הוטמעה התמרת פורייה בדידה (DFT) באמצעות אלגוריתם ה-FFT. התמרת פורייה ממירה אות במישור הזמן לספקטרום תדרים. מכיוון שספקטרום זה לא שימר מידע זמני, אות השמע חולק למקטעים חופפים, והתמרת פורייה הוחלה על כל מקטע באמצעות גישת התמרת פורייה לזמן קצר (STFT). הפונקציה np.fft.fft ייצרה את ספקטרום התדרים המרוכב, בעוד ש-np.fft.fftfreq סיפקה את תדרי הדגימה המתאימים. בספריית הדגימות היו זמינים 10 קבצי שמע עבור דובר יחיד. כל קובץ WAV עובד באמצעות חלונות גלישה של 200 ms כדי לחלץ את התדרים הדומיננטיים. לדוגמה, הקלטת שמע של 4 שניות הניבה רשימה של 20 ערכי תדר. עבור ספרייה המכילה 10 הקלטות, 10 הרשימות המתאימות, שכל אחת מהן הכילה 20 ערכי תדר, אוחדו לרשימה של רשימות. התדרים סוננו כדי לשמר ערכים שבין 20 Hz ל-280 Hz, בעוד שרעש פוטנציאלי סביב 50 Hz הוצא מהניתוח.
ייצוג מאפיינים היברידי של MFCC ו-wav2vec 2.0
כדי ללכוד הן ייצוגי דיבור הקשריים ברמה גבוהה והן מאפיינים אקוסטיים ברמה נמוכה, מחקר זה השתמש באסטרטגיית חילוץ מאפיינים היברידית ששילבה מאפייני MFCC עם השקהות (embeddings) של wav2vec 2.0 המבוססות על Transformer.
חילוץ מאפייני MFCC
מקדמי קפסטרליים בתדר-מל (MFCCs) הם מאפיינים הנמצאים בשימוש נרחב בעיבוד אותות קול ואודיו, במיוחד עבור יישומים כגון זיהוי דיבור וזיהוי דובר34,35. במחקר זה, מיצוי ה-MFCC הפך את אותות האודיו לווקטורי מאפיינים המייצגים תכונות רלוונטיות תפיסתיות של הדיבור. התהליך התחיל ב-pre-emphasis להגברת רכיבי תדר גבוה, ולאחריו framing ו-windowing כדי לחלק את האות למסגרות קצרות וחופפות. כל דגימת אודיו נדגמה מחדש תחילה ל-16 kHz וחולקה למסגרות של 25-ms עם חפיפה של 10-ms. לאחר מכן הוחלה התמרת פורייה מהירה (Fast Fourier Transform) על כל מסגרת כדי להמיר את האות מהמישור הזמן למישור התדר.
ספקטרום התדרים שהתקבל הועבר דרך סדרה של בנקי מסנני Mel שקירבו את תגובת התדר הבלתי ליניארית של התפיסה השמיעתית האנושית. בנקי מסננים אלה הדגישו תדרים רלוונטיים יותר מבחינה תפיסית תוך הפחתת התרומה של תדרים פחות אינפורמטיביים. לאחר מכן חושב הלוגריתם של הפלט מכל בנק מסננים כדי לקרב את הרגישות הלוגריתמית של השמיעה האנושית לעוצמת קול. לאחר מכן הוחלה התמרת קוסינוס בדידה (DCT) על האנרגיות הלוגריתמיות של בנקי המסננים כדי לבטל את המתאם בין המקדמים וליצור ייצוג דחוס של אות השמע. המקדמים שהתקבלו, המכונה MFCCs, לכדו מאפיינים ספקטרליים חשובים של הדיבור. MFCCs שימשו לסיווג מגדר וגיל מכיוון שהם לכדו מאפיינים אקוסטיים שהבדילו בין קולות על פי תכונות אלו.
חילוץ שיבוצים (embeddings) של wav2vec 2.0
מודל ה-wav2vec 2.0 Base עבר אימון מקדים על מאגרי דיבורים גדולים שאינם מתויגים. המודל כלל מקודד Transformer רב-שכבתי שעיבד קלטי גלי קול גולמיים והפיק שיבדים (embeddings) של דיבור בהקשר36.
בהינתן צורת גל קלט x ∈ RT, מודל wav2vec 2.0 ייצר רצף של ייצוגים חבויים:
Z = {z1,z1,....,zn},zi ∈ R768 (1)
כאשר לכל וקטור שיכון (embedding vector) הייתה ממדיות של 768. כדי לקבל ייצוג באורך קבוע המתאים לסיווג, בוצע תהליך של temporal mean pooling על פני כל שלבי הזמן.
(2)
מנגנון היתוך מאפיינים
המאפיינים של MFCC ו-wav2vec 2.0 הוחברו באמצעות שרשור ברמת המאפיין. באופן ספציפי, מאפייני ה-MFCC אוגדו תחילה באמצעות ממוצע זמני כדי להפיק וקטור באורך קבוע.
m ∈ R40 (3)
וקטור המאפיינים ההיברידי הסופי התקבל באופן הבא:
h = [m || zpooled] ∈ R808 (4)
כאשר || מסמנת שרשור. מיזוג זה שילב שיכומים (embeddings) קשריים עמוקים עם מאפיינים ספקטרליים שנוצרו ידנית, מה שאפשר למודל ללכוד הן מידע סמנטי ברמה גבוהה והן תבניות אקוסטיות מפורטות.
כל דגימות השמע דוגמו מחדש תחילה ל-16 kHz. מאפייני MFCC חושבו עבור כל פריים (frame) והושגו עבורם ממוצעים זמניים כדי להפיק וקטור קבוע בעל 40 ממדים, בעוד ששיכמודי (embeddings) wav2vec 2.0 עברו מיעון ממוצע (mean-pooled) לאורך הזמן כדי להפיק ייצוג בעל 768 ממדים. מכיוון ששתי קבוצות המאפיינים הומרו לווקטורים באורך קבוע לפני האיחוד, לא נדרש סנכרון זמני ברמת הפריים. ייצוגי ה-MFCC וה-wav2vec שהתקבלו שורשרו לאחר מכן לווקטור מאפיינים היברידי בעל 808 ממדים לפני שהועברו למודל הסיווג.
שילוב עם EfficientNet-Lite
וקטור המאפיינים המאוחד, h, עוצב מחדש לפורמט המתאים ללמידת מאפיינים והוזן למודל EfficientNet-Lite לצורך אימון. שכבת היטל מחוברת באופן מלא מיפתה תחילה את הווקטור בן 808 הממדים למרחב לטנטי בעל ממדים גבוהים יותר, ולאחר מכן בלוקים של EfficientNet-Lite זיקקו מאפיינים היררכיים. שכבות של נורמליזציית אצוות (Batch normalization) וdropout שימשו להפחתת התאמת-יתר (overfitting) ולשיפור הכללה של המודל. פונקציית ההפעלה SoftMax שימשה להפקת ההסתברויות החזויות הסופיות עבור מחלקות המגדר והגיל. הייצוג המאוחד, h ∈ R808, טופל בתחילה כוקטור מאפיינים חד-ממדי והועבר דרך שכבת היטל מחוברת באופן מלא שמיפתה אותו ל-4,096 ממדים. הייצוג הממופה עוצב לאחר מכן מחדש לטנזור של 1 × 64 × 64 לפני שהוזן לארכיטקטורת EfficientNet-Lite.
כדי להתאים לייצוג תכונות של דיבור בערוץ יחיד, במקום קלט תמונה קונבנציונלי בעל שלושה ערוצים, שונו השכבה הקונבולוציונית של הקלט במודל EfficientNet-Lite המקורי משלושה ערוצי קלט לאחד. שאר בלוקי חילוץ התכונות של EfficientNet-Lite נשמרו ללא שינויים ארכיטקטוניים משמעותיים. שכבת average pooling גלובלית אדפטיבית הוחלה על מפות התכונות הסופיות כדי להפיק ייצוג באורך קבוע. ראש הסיווג המקורי הוחלף בשכבה מחוברת באופן מלא (fully connected) ספציפית למשימה, המכילה שתי יחידות פלט לסיווג מגדר ומספר היחידות המתאים לקבוצות הגילים שהוגדרו מראש. לבסוף, פונקציית ההפעלה SoftMax הוחלה כדי להפיק הסתברויות למחלקות. הייצוג ההיברידי המוצע שילב שיבוצי דיבור (embeddings) מודרניים בפיקוח עצמי עם תכונות מסורתיות של עיבוד אותות. שיבוצי wav2vec 2.0 לכדו מידע קונטקסטואלי ותלויות לטווח רחוק, בעוד שתכונות ה-MFCC סיפקו מידע אקוסטי משלים ברמה נמוכה. השילוב של ייצוגים אלו שיפר את ביצועי הסיווג, במיוחד בתנאי דיבור רועשים ורב-לשוניים.
מסווג ML
במחקר זה, נותח הביצועים של מספר אלגוריתמי ML לצורך סיווג מגדר וקבוצת גיל על בסיס קול.
יער אקראי (Random Forest)
Random Forest (RF) שימש כסיווג (classifier) חסון של למידת מכונה (ML), המשלב מספר עצי החלטה (DTs) כדי לשפר את דיוק התחזיות ולהפחית התאמת יתר (overfitting). RF פעל באמצעות הליך של למידה בהרכבה (ensemble-learning), שבו תחזיות ממספר עצים אוגרו כדי להפיק את התחזית הסופית37,38. גישה זו אפשרה ל-RF ללכוד דפוסים מגוונים בנתונים תוך הפחתת התאמת היתר הנלווית בדרך כלל לעצי החלטה בודדים. האקראיות שהוכנסה במהלך בניית העצים שיפרה את יכולת ההכללה של המודל, מה שהפך את RF למתאים למשימות סיווג כגון סיווג מגדר וגיל מתוך נתוני קול.
רגרסיה לוגיסטית
רגסיה לוגיסטית (LR) שימשה כמודל ML סטטיסטי לסיווג39. עבור סיווג בינארי, LR מעריכה את ההסתברות לתוצאה מסוימת על בסיס מאפייני הקלט באמצעות הפונקציה הלוגיסטית (סיגמואיד), וההסתברויות המתוּלדות משמשות ליצירת תחזיות מחלקה. LR הייתה ישימה גם לבעיות סיווג רב-מחלקי הכוללות יותר משתי מחלקות. עבור סיווג רב-מחלקי, LR השתמשה בגישות כגון one-vs-rest או רגרסיית SoftMax, בהתאם להגדרות הסיווג.
מסווג עצי אקסטרה (Extra Tree Classifier)
השתמשו במסווג עצי תמרור (ETC) כאלגוריתם למידה מתוך מקבץ (ensemble learning), אשר שילב מספר עצי החלטה (DTs) כדי להפיק תחזיות40,41. בניגוד ל-RF, ה-ETC מ einführt אקראיות נוספת על ידי בחירת מאפיינים מועמדים וספי סבחי פיצול באופן אקראי במהלך בניית העץ. הליך זה יצר עצים בעלי מתאם נמוך יותר והפחית את רגישות המודל למאפיינים בודדים, ובכך שיפר את העמידות לרעש. השתמשו במדד ג'יני (Gini index) כקריטריון פיצול להערכת חשיבות המאפיינים ולחלוקת הנתונים.
מכונת וקטור תומך
נעשה שימוש במכונת וקטורים תומכים (SVM) כמסווג ML כדי לזהות גבול החלטה אופטימלי במרחב מאפיינים רב-ממדי42. המטרה הייתה לקבוע היפרמישור שימקסם את השוליים בין המחלקות. שוליים רחבים יותר בין גבול ההחלטה לנקודות הנתונים הקרובות ביותר תמכו בדרך כלל בהפרדה טובה יותר בין המחלקות ובביכולת הכללה. SVM היה ישיים למספר משימות ML, כולל סיווג, רגרסיה וניתוח נתונים מבוסס מאפיינים.
רשתות נוירונים קונבולוציוניות
רשתות נוירונים קונבולוציוניות (CNNs) שימשו כמודלים של למידה עמוקה (DL) למשימות סיווג הכוללות ייצוגים מובנים של נתוני תמונה ואודיו. רשתות CNN חד-ממדיות (1D-CNNs) יושמו באופן נרחב גם על נתונים סקוונציאליים וטקסטואליים. ארכיטקטורות CNN השתמשו במסננים קונבולוציוניים ובפעולות בריכה (pooling) כדי לחלץ מאפיינים מבדילים מנתוני הקלט43,44. עבור סיווג מגדר וגיל מנתוני קול, הוחלו רשתות CNN על ייצוגים המופקים מדיבור כדי ללמוד דפוסים הקשורים לגובה הצליל, תדר, טון ומאפיינים קוליים אחרים הרלוונטיים להבחנה בין קבוצות גיל ומגדר.
VGG19
VGG19 שימשה כארכיטקטורת DL המאופיינת במבנה היררכי עמוק ואחיד יחסית לחילוץ תכונות45. הארכיטקטורה שלה השתמשה במסננים קונבולוציוניים קטנים בגודל 3 × 3 לאורך 19 שכבות, מה שאיפשר חילוץ הדרגתי של תכונות מבחינות. כאשר הוחלה על ייצוגים המופקים מדיבור, VGG19 לכדה הן דפוסים אקוסטיים ברמה נמוכה, כגון שינויים בגובה הצליל וב tầncy, והן תכונות מבחנות ברמה גבוהה יותר. הארכיטקטורה העמוקה שלה אפשרה הפשטה הדרגתית של תכונות לצורך מידול מאפיינים קוליים הקשורים למגדר ולגיל.
EfficientNet-Lite
EfficientNet-Lite שימשה כארכיטקטורת DL יעילה מבחינה חישובית46,47. המודל השתמש באסטרטגיית סקלה מאוזנת כדי להשיג ביצועי סיווג חזקים תוך דרישה למשאבים חישוביים מועטים יותר מאשר ארכיטקטורות DL כבדות יותר. גישת הסקלה המשולבת שלו שקללה יחד את עומק המודל, רוחבו ורזולוציית הקלט כדי להשיג חילוץ תכונות יעיל.
EfficientNet-Lite נבחר עבור מסגרת VoiceNet-RAI המוצעת בשל הארכיטקטורה הקלה שלו והאיזון המוטב בין ביצועי הסיווג למורכבות המודל. בהשוואה לארכיטקטורות כבדות יותר, הוא השתמש בבלוקים קונבולוציוניים יעילים ובסקלינג מורכב (compound scaling) כדי להשיג למידת מאפיינים אפקטיבית עם פחות פרמטרים ודרישות חישוב נמוכות יותר. מאפיינים אלו הפכו את EfficientNet-Lite למתאים עבור מסגרת סיווג הדיבור המוצעת, ואפשרו פוטנציאל לפריסה בסביבות עם משאבים מוגבלים.
MobileNet
MobileNet שימשה כארכיטקטורת DL קלה עבור יישומים עם משאבים חישוביים מוגבלים, כולל סביבות מחשוב ניידות ומחשוב קצה48. היעילות החישובית שלה הושגה בעיקר באמצעות קונבולוציות נפרדות לעומק (depthwise separable convolutions), אשר הפחיתו את מספר הפרמטרים ואת הפעולות החישוביות בהשוואה לארכיטקטורות קונבולוציוניות קונבנציונליות. מאפיינים אלו הפכו את MobileNet למתאימה להערכת סיווג מגדר וגיל מתוך נתוני קול, תוך שמירה על דרישות חישוביות נמוכות יחסית.
InceptionV3
InceptionV3 שימשה כארכיטקטורה עמוקה לחילוץ מאפיינים היררכיים מייצוגים המופקים מדיבור49. הארכיטקטורה שילבה פעולות קונבולוציה, איחוד (pooling) ופעולות מעורבות כדי לחלץ מאפיינים ברמות שונות של הפשטה. לצורך סיווג מגדר וגיל מנתוני קול, InceptionV3 שימשה ללמידה של תבניות אקוסטיות מורכבות וייצוגים היררכיים הקשורים לווריאציות במאפייני הקול.
פרמטרי הערכה
דיוק (Accuracy) היה אחד ממדדי ההערכה השכיחים ביותר למשימות סיווג50. על אף שהדיוק סיפק מדד שימושי לביצועי הסיווג הכלליים, הוא לא תמיד סיפק הערכה מקיפה, במיוחד עבור מערכי נתונים לא מאוזנים. לכן, נעשה שימוש במדדים נוספים, כולל דיוק חיזוי (precision), רגישות (recall) ומדד F1 (F1-score), כדי להעריך את ביצועי המודל. מדדים אלו סיפקו הערכה מקיפה יותר על ידי התחשבות בחיזויים נכונים ושגויים עבור כל מחלקה.
דיוק הוגדר כיחס בין תצפיות שסווגו נכון למספר התצפיות הכולל. למרות שדיוק הוא מדד אינפורמטיבי במיוחד עבור מערכי נתונים מאוזנים, מערך הנתונים ששימש במחקר זה היה לא מאוזן. לכן, כאשר חושבו ופורשו מדדי הסיווג, נלקחו בחשבון חיוביים אמיתיים (TP), חיוביים שגויים (FP), שליליים אמיתיים (TN) ושליליים שגויים (FN). המשוואה להלן מייצגת את ההגדרה הסטנדרטית של דיוק:
דיוק = (TP+TN)/(TP+TN+FP+FN)×100 (5)
דיוק (Precision) מעריך את יכולתו של המסווג להחזיר רק מקרים רלוונטיים:
דיוק= TP/(TP+FP) ×100 (6)
Recall, הידוע גם כרגישות (sensitivity), מודד את יכולתו של המסווג לזהות את כל המקרים הרלוונטיים:
רגישות (Recall)= TP/(FN+TP) × 100 (7)
מדד ה-F1-score משלב בין דיוק (precision) לרגישות (recall) למדד אחד, והוא שימושי במיוחד להערכת ביצועי סיווג במערכי נתונים לא מאוזנים:
F1-Score =2 ×(PPV ×TPR)/(TPR+PPV) × 100 (8)