Uploaded by yoni keren

AiReportCs portable

advertisement
‫הטכניון ‪ -‬מכון טכנולוגי לישראל‬
‫הפקולטה למדעי המחשב‬
‫דו"ח סיכום פרויקט‬
‫אילו תכונות ניתן ללמוד מתמונות פנים?‬
‫מבצע‪:‬‬
‫יוני קרן‬
‫‪Yoni Keren‬‬
‫מרצה‪:‬‬
‫שאול מרקוביץ‬
‫מתרגל‪:‬‬
‫יותם אשל‬
‫‪Shaul Markovic‬‬
‫‪Yotam Eshel‬‬
‫סמסטר רישום‪ :‬אביב תשע"ז‬
‫תאריך הגשה‪ :‬נובמבר‪2018 ,‬‬
‫תוכן עניינים‬
‫‪ 1‬מבוא‬
‫‪1.1‬‬
‫‪1 ..............................................................................................................................................‬‬
‫הקדמה ‪1 ..............................................................................................................................................‬‬
‫‪ 2‬עבודות קודמות ‪2 ..........................................................................................................................................‬‬
‫‪ 3‬האלגוריתם ‪3 ............................. ................................ ................................ ................................‬‬
‫‪3.1‬‬
‫הקדמה‪-‬מקורות למידה ‪3 .......................................................................................................................‬‬
‫‪3.2‬‬
‫למידה עמוקה ‪3 .....................................................................................................................................‬‬
‫‪3.2.1‬‬
‫‪4 ................................................................................................ Convolution Neural Network‬‬
‫‪3.2.2‬‬
‫‪4 ................................................................................................................................... Resnet‬‬
‫‪3.3‬‬
‫‪5 ...........................................................................................Multi-Task Learning/Transfer Learning‬‬
‫‪3.4‬‬
‫למידה עם תיוגים חלקיים ‪6 ....................................................................................................................‬‬
‫‪ 4‬מאגר המידע ‪7 ..............................................................................................................................................‬‬
‫‪4.1‬‬
‫כריית המידע ‪7 ......................................................................................................................................‬‬
‫‪4.2‬‬
‫ניקוי (פילטור) המידע ‪7 ..........................................................................................................................‬‬
‫‪4.3‬‬
‫נתונים טכניים על המאגר ‪8 ....................................................................................................................‬‬
‫‪4.4‬‬
‫התפלגות המידע ‪9 .................................................................................................................................‬‬
‫‪4.5‬‬
‫‪4.4.1‬‬
‫לפי גילאים ‪9 ..........................................................................................................................‬‬
‫‪4.4.2‬‬
‫לפי נטיה מינית ‪10 .............................................................................................................‬‬
‫‪4.4.3‬‬
‫לפי מבנה גוף ‪10 ..................................................................................................................‬‬
‫‪4.4.4‬‬
‫לפי מוצא אתני ‪12 .............................................................................................................‬‬
‫‪4.4.5‬‬
‫לפי רמת השכלה ‪13 .........................................................................................................‬‬
‫חלוקת ה‪ Dataset‬ל‪15 .................................................................................... Training,Validation,Test‬‬
‫‪ 5‬ניסויים מעניינים וכושלים ‪16 ..........................................................................................................................‬‬
‫‪5.1‬‬
‫אימון תוך כפיית תדירות השנתונים בהתאם ל‪ dataset‬עליו נבחנים ‪16 ......................................................‬‬
‫‪5.2‬‬
‫התחשבות ברזולוציה ע"י מנגנון ‪17 ........................................................................................ attention‬‬
‫‪ 6‬אימון הרשת ‪18 ............................................................................................................................................‬‬
‫‪6.1‬‬
‫‪ Random Search‬לעומת ‪18 ............................................................................................... Grid Search‬‬
‫‪6.2‬‬
‫ניסויים טכניים‪-‬מציאת ‪ hyper-parameters‬מתאימים ‪19 ...........................................................................‬‬
‫‪6.3‬‬
‫פרטים טכניים‪-‬בחירת הרשת ואימון הרשת ‪21 ........................................................................................‬‬
‫‪ 7‬ניסויים עקרוניים‪-‬תכונות ‪22 ...........................................................................................................................‬‬
‫‪7.1‬‬
‫נטיה מינית ‪22 .......................................................................................................................................‬‬
‫‪7.1.1‬‬
‫הביצוע האנושי בקטגוריה זו (‪22 ................................. )Human performance‬‬
‫‪7.1.2‬‬
‫ניסוי נאיבי ראשון‪ -‬אימון על כל ה‪23 ............................ Training Set‬‬
‫‪7.1.3‬‬
‫ניסוי שני‪ -‬אימון על ‪ Dataset‬שאינו ‪23 .............................................................. Biased‬‬
‫‪7.1.4‬‬
‫ניסוי שלישי‪-‬מדידת המסווג באותה שיטה כמו המאמר‬
‫‪24‬‬
‫‪7.2‬‬
‫‪7.1.5‬‬
‫ניסוי רביעי‪-‬סיווג לפי מספר תמונות לאדם ‪27 ................................‬‬
‫‪7.1.6‬‬
‫ניסוי חמישי‪-‬שימוש ב‪29 ............................................. Selective Classification‬‬
‫מבנה גוף‪32 ................................................................................................................................. \BMI‬‬
‫‪7.2.1‬‬
‫ניסוי ראשון‪-‬סיווג לפי מבנה גוף ‪32 ..............................................................‬‬
‫‪7.2.2‬‬
‫ניסוי שני‪ :‬סיווג ללא מבנה גוף ממוצע ‪34 .............................................‬‬
‫‪7.2.3‬‬
‫‪7.3‬‬
‫‪7.4‬‬
‫הגדרת ‪35 ........................................................................................................................... BMI‬‬
‫‪7.2.4‬‬
‫סיכום העבודה הקודמת בנושא ‪36 ................................................................‬‬
‫‪7.2.5‬‬
‫המשך עבודה על ה‪36 ................................................................... Face to BMI Dataset‬‬
‫‪7.2.6‬‬
‫סיווג לפי הקטגוריות הרפואיות ‪38 ...............................................................‬‬
‫‪7.2.7‬‬
‫השוואה לביצוע האנושי ‪39 .....................................................................................‬‬
‫‪7.2.8‬‬
‫השוואה לביצוע האנושי והתוצאות של העבודה‬
‫הקודמת‬
‫‪39‬‬
‫מוצא אתני ‪43 ........................................................................................................................................‬‬
‫‪7.3.1‬‬
‫עבודות קודמות ‪43 ...........................................................................................................‬‬
‫‪7.3.2‬‬
‫ניסוי ראשון‪-‬מסווג נאיבי ‪43 .................................................................................‬‬
‫מזלות‪49 ...............................................................................................................................................‬‬
‫‪7.4.1‬‬
‫‪7.5‬‬
‫ניסוי‪-‬מסווג נאיבי ‪49 .....................................................................................................‬‬
‫אינטלגנציה\השכלה ‪50 ..........................................................................................................................‬‬
‫‪7.5.1‬‬
‫עבודות קודמות ‪50 ...........................................................................................................‬‬
‫‪7.5.2‬‬
‫ניסויים‪-‬שיערוך רמת האינטלגנציה באמצעות רמת‬
‫ההשכלה‬
‫‪50‬‬
‫‪7.5.3‬‬
‫התוצאות על המסווג הנאיבי‪50 ............................................................………….‬‬
‫‪7.5.4‬‬
‫ניסוי שני‪-‬האם ישנו אות משמעותי? ‪51 ...................................................‬‬
‫‪ 8‬תוצאות‪-‬סיכום ‪54 ..........................................................................................................................................‬‬
‫‪8.1‬‬
‫השוואה ל‪ Microsoft‬ו‪54 .......................................................................................................... Amazon‬‬
‫‪8.2‬‬
‫הערה קטנה ‪55 .....................................................................................................................................‬‬
‫‪ 9‬עבודות המשך אפשריות‪56 ...........................................................................................................................‬‬
‫רשימת מקורות ‪57‬‬
‫תקציר‬
‫בפרוייקט זה נשאל אילו תכונות ניתן ללמוד מתמונות פנים‪.‬‬
‫במהלך הפרוייקט‪:‬‬
‫‪ .1‬יצרתי ‪ Dataset‬מתוייג הרבה יותר גדול מ‪( ImageNet‬מבחינת מספר התמונות)‪.‬‬
‫‪ .2‬למדתי מספר דברים על למידה מעבר לחומר הקורס‬
‫‪ .3‬בחנתי אילו תכונות‪,‬נכון להיום‪,‬ניתן ללמוד מתמונות פנים בלבד‬
‫‪ .4‬העליתי את הרשת שאימנתי לענן‪how-look.com -‬‬
‫‪ 1‬מבוא‬
‫‪ 1.1‬הקדמה‬
‫נושא שמעניין אותי הוא‪ -‬מה אפשר לומר על אדם בהינתן תמונה שלו?‬
‫עיניין זה הוביל אותי לכאן‪.‬‬
‫הרבה עבודות בפרוייקט בבינה מלאכותית לוקחות איזהשהוא אובייקט (למשל שחקן נ‪.‬ב‪.‬א) ומנסות לחזות דבר‬
‫מה (למשל מספר הנקודות למשחק שהוא יקלע בעונה הבאה) ואז שואלות‪-‬מאילו תכונות נוכל ללמוד?‬
‫למשל‪,‬הממוצע בעונה קודמת‪,‬תפקיד‪,‬גיל וכו' וכו'‪.‬‬
‫עבודה זו יחודית מהבחינה הזו שהכיוון בעיקרון הוא הפוך‪-‬אני שואל אילו תכונות ניתן ללמוד!‬
‫היא גם יחודית הן התכונות שהיא בוחנת‪,‬שנבדקו מעט או בכלל לא‪-‬‬
‫נטיה מינית‪,‬רמת השכלה‪/‬אינטלגנציה‪,‬מזל‪,‬מוצא אתני ומבנה גוף והן בגלל כמות המידע שהיתה ברשותי‪.‬‬
‫למעשה‪,‬זו התמונה שעמדה לנגד עיניי‪:‬‬
‫איור ‪-1‬ביצועים כפונקציה של גודל המידע‬
‫(אציין שבהנתן מודל ספציפי כמות המידע יכולה לשפר רק את שגיאת ה‪ Variance‬אך הגרף נכון מכיוון שלמידה‬
‫עמוקה היא משפחה של מודלים) ולכן גם אם ניסיתי לחדש מבחינה אלגוריתמית (ראה את הפרק ניסויים מעניינים‬
‫וכושלים) נקטתי בעבודה זו בשיטת "‪ "Brute Force‬ע"י כך שהשגתי מידע בסדר גודל חסר תקדים (לפי מיטב‬
‫ידיעתי)‪.‬‬
‫‪ 2‬עבודות קודמות‬
‫עבודה זו כתובה במעין "מיני מאמרים" (ראה פרק ‪ 7‬ניסויים עקרוניים‪-‬תכונות)‪.‬‬
‫לנוחיות הקורא‪ ,‬בחרתי לתת פרטים רלוונטיים נוספים על העבודות הקודמות כאשר אכתוב על הנושאים‬
‫המתאימים (למשל‪,‬לציין עבודות קודמות על הערכת ‪ BMI‬כאשר אכתוב על הנושא)‬
‫במקום לחזור על עצמי או שהקורא יצטרך לדפדף בחזרה לפה‪.‬‬
‫‪ 3‬האלגוריתם‬
‫בפרק זה אתן הסבר קצר ותמציתי על הדברים העיקריים שלמדתי בנוסף לקורס "מבוא לבינה מלאכותית"‬
‫שחשובים להבנת עבודה זו‪ .‬אם המונחים שמופיעים בראשי הפרקים המוזכרים אינם זרים לך‪,‬הרגש‪/‬י חופשי‪/‬ה‬
‫לדלג על פרק זה לחלוטין‪.‬‬
‫‪ 3.1‬הקדמה‪-‬מקורות למידה‬
‫ישנם הרבה מקורות גרועים ללמידה באינטרנט נכון להיום בנושאים אלו‪-‬אז חשוב לי לציין את המקורות מהם‬
‫למדתי‪,‬למקרה שיהיה מישהו שקורא עבודה זו ומעוניין להעמיק בלמידה על למידה‪:‬‬
‫‪-Machine Learning-Coursera(Andrew Ng) .1‬קורס פחות מתמטי וקליל(לקח לי ‪ 3‬ימים) אבל נותן‬
‫אינטואיציות שמרצים אחרים לא נותנים (יש למרצה ידע תיאורטי ופרקטי נרחב במיוחד)‬
‫‪ -Stanford’s CS229 .2‬קורס מתמטי מאוד ועמוק על למידה בסיסית‪ -‬עוזר להעמיק את ההבנה‬
‫‪ Stanford’s CS231N .3‬קורס שסטנפורד פירסמו בו את כל ההרצאות וגם שיעורי בית (הם לקחו לי בערך‬
‫חודש לעשות‪,‬אבל הם תורמים המון להבנה הבסיסית של מספר נושאים חשובים)‬
‫‪-Deep Learning-Answer Ng(Coursera) .4‬קורסים קלילים במיוחד‪ ,‬אבל יש בהם נושאים פרקטיים שלא‬
‫נתקלתי בהם בקורסים באקדמיה ועזרו לי מאוד (למשל תכנון ובדיקת מודלים‪.)Multi-tasking,‬‬
‫‪ 3.2‬למידה עמוקה‬
‫למידה עמוקה זהו שם "סקסי" עבור התקשורת לרשת ניורונים בעלת יותר משכבה אחת בין הכניסה ליציאה‪.‬‬
‫זהו‪,‬אין בזה שום דבר מיסטי או קשה‪.‬‬
‫רשת ניורונים זהו פשוט אלגוריתם למידה (כמו שעץ או ‪ knn‬הם אלגוריתמי למידה שנלמדו בכיתה) שמקבל‬
‫תשומת לב גדולה (ולדעת רבים וטובים אולי יתרה) מכיוון שזהו אלגוריתם שטוב בלמידה על ‪unstructured data‬‬
‫(דוגמאות למידע שכזה‪-‬תמונה‪,‬וידאו‪,‬קטע אודיו)‪ .‬זהו אלגוריתם (טכנית‪,‬משפחה של אלגוריתמים) איננו מסובך‬
‫בכלל‪ -‬קישור להסבר טוב‪.‬‬
‫‪Convolution Neural Network 1.2.3‬‬
‫או בקצרה ‪ CNN‬היא קבוצה של אלגוריתמי למידה (תת קבוצה של "רשתות ניורונים") בעלת אריכטקטורה‬
‫שמתחשבת במבנה הפיזי של התמונה (במיקום של הפיקסלים‪-‬ליתר דיוק ולמי שלמד ראיה ממוחשבת‪-‬מדובר‬
‫פשוט במספר מסננים (או בעברית קרנלים) בכל שכבה שמשקליהם נלמדים באופן אוטומטי‪,‬כאשר כמובן ישנה‬
‫פונקציית אקטיבציה לא לינארית בין שכבה לשכבה [אחרת מספר שכבות קונבולוציה שקולות לשכבה אחת])‪.‬‬
‫‪Resnet 1.2.2‬‬
‫היא קבוצת אלגוריתמי למידה‪ -‬בעיקרון תת קבוצה של "רשתות ניורונים"‪,‬שלראשונה נוצלה ב‪ 2015‬על מנת לזכות‬
‫בתחרות ‪.Imagenet‬‬
‫איור ‪-2‬הרעיון הבסיסי של ‪Resnet‬‬
‫הרעיון הבסיסי הוא‪-‬החוקרים (‪ )Microsoft Asia‬גילו שמנקודה מסויימת‪,‬ככל שמוסיפים שכבות לרשת‪,‬הביצועים‬
‫יורדים‪ .‬אבל זה לא היה קורה אם במקום השכבות הנוספות היינו שמים את פונקציית הזהות‪.‬‬
‫ה‪ Skip connection‬שמוצג באיור לעיל נועד לכך שבמידת הצורך עבור כל שכבה פונקציית הזהות תוכל להלמד‬
‫יותר בקלות‪,‬ואכן בכנס (זמין ב‪ )Youtube‬ובמאמר הם הראו אמפירית שבארכיטקטורה זו באופן כללי הביצועים‬
‫הם פונקצייה מונוטונית לא יורדת של מספר השכבות‪.‬‬
‫כאשר אזכיר במהלך העבודה ‪ Resnet‬ומספר‪,‬למשל ‪ ,Resnet18‬הכוונה היא לרשת קונבולוציה שהבלוקים‬
‫הבסיסיים שלה הם עם ‪ Skip connection‬ומספר השכבות הכולל של הרשת הוא ‪.18‬‬
‫‪Multi-Task Learning/Transfer Learning 3.3‬‬
‫ארחיב מהם ומתי (לפי מיטב הבנתי) להשתמש בכל אחד מהם‪:‬‬
‫‪ :Transfer Learning‬העברת ה"ידע" שנלמד ממשימה אחת למשימה אחרת‪.‬‬
‫נניח שאימנת רשת שמזהה חתולים (מוציאה הסתברויות למצבים ‪,1 0‬כאשר המצבים ‪ 1 0‬הם "אין חתול‬
‫בתמונה‪,‬ו"יש רק חתול בתמונה" בהתאמה)[לצורך הפשטות נניח שלא יתכן יותר מבע"ח אחד ב‪ dataset‬שלנו וגם‬
‫לא במטרה שלשמה המערכת מאומנת]‪,‬ועכשיו עליך לאמן רשת שמזהה פינגווינים‪ .‬אם מספר הדוגמאות של‬
‫תמונות של חתולים גדול מאוד יחסית למספר התמונות בהם יש פינגווינים (ונניח שמספר זה הוא מצומצם מספיק‬
‫כך שאי אפשר לאמן רשת רק על פינגווינים ולקבל תוצאות טובות)‪-‬אז זהו מצב קלאסי ל‪ :Transfer Learning‬פשוט‬
‫עליך לקחת את הרשת שאומנה על חתולים‪,‬ולאמן אותה לזהות פינגווינים (במקום להגריל משקלים לרשת זיהוי‬
‫הפינגווינים‪,‬פשוט להחליף חלק מהשכבות האחרונות ברשת שאומנה על חתולים ולאמן רק אותן‪,‬או לאמן עם קצב‬
‫למידה נמוך עבור השכבות הראשונות)‪.‬‬
‫מדוע זה עובד? מכיוון שהקלט דומה(תמונה של בע"ח או שלא)‪,‬וגם חלק מהמאפיינים דומים(מאפיינים של בע"ח‪-‬‬
‫עיניים וכדומה‪ -‬בפועל מדובר במאפיינים אבסטרקטיים אשר בד"כ איננו יכולים להבינם) כל שאנו מצפים‬
‫שהמאפיינים שנלמדו בשכבות הראשונות יהיו דומים עבור שתי המשימות‪.‬‬
‫יש להשתמש בכלי זה כאשר ישנה משימה עם פחות דוגמאות בהרבה ממשימות אחרות שמהן נעביר את הידע‪.‬‬
‫‪ :Multi-Task Learning‬למידה של מספר משימות במקביל‪ .‬בדוגמא האחרונה‪,‬אם יש לך מספיק זמן לאימון‪,‬ומספר‬
‫התמונות של פינגווינים הוא דומה למספר התמונות של חתולים‪,‬תוכל ללמוד גם את משימת הפינגווינים וגם את‬
‫משימת החתולים ביחד‪.‬‬
‫יש להשתמש בכלי זה כאשר ישנן מספר משימות דומות עם מספר דוגמאות דומה לכל משימה‬‫החלק שעיניין אותי במיוחד‪-‬העובדה שאם הרשת רחבה דיה‪ ,‬אימון על מספר משימות במקביל באופן כללי‬
‫משפר (או לא מפחית) את ביצועי הרשת‪,‬לעומת רשת שאומנה רק עבור משימה ספציפית אחת! ]‪[1‬‬
‫‪ 3.3‬למידה עם תיוגים חלקיים‬
‫הרכבתי את מאגר המידע ממספר מקורות‪,‬כאשר למספר אתרים לא היו חלק מהתיוגים (למשל‪,‬ככל שידוע‬
‫לי‪,‬באופן כללי ארה"ב לא מפרסמת את הנטיה המינית של העצורים)‪.‬‬
‫מכיוון שיש ברשותי כמות גדולה של תמונות עם תיוגים חלקיים‪,‬היה עליי להתחשב בכך‪:‬‬
‫איור ‪multi task Learning-3‬‬
‫נניח שעבור בעיית הלמידה יש לנו ‪ 3‬תיוגים אפשריים (מגדר‪,‬נטיה מינית‪,‬מבנה גוף) עבור שלוש משימות‪,‬אבל‬
‫בפועל עבור תמונה ספציפית יש לנו רק ‪ 2‬תיוגים (מגדר ומבנה גוף)‪,‬למשל התיוגים עבור התמונה יכולים להיות‬
‫(זכר‪,???,‬אתלטי)‪,‬כאשר ??? מסמן תיוג חסר‪ .‬זהו מצב שכאמור נתקלתי בו הרבה‪.‬‬
‫כל מה שעלינו לעשות הוא לאפס את ה‪ Loss‬עבור המשימה שאין לנו עבורה תיוג (טכנית‪,‬גם כל קבוע יעבוד‪-‬‬
‫הגרדיאנט עבור המשימה יהיה ‪-.)...0‬כלומר "להתעלם" מהמשימה עליה אין לנו תיוג (במקרה זה נטיה‬
‫מינית)‪,‬אבל ללמוד את שאר המשימות "כרגיל"‪ .‬בצורה כזו הרשת תוכל ללמוד משאר המשימות‪.‬‬
‫‪ 3‬מאגר המידע‬
‫‪ 3.1‬כריית המידע‬
‫בפרק זה אפרט (עד כמה שאני יכול) על יצירת מאגר המידע‪.‬‬
‫כריתי מידע ממספר אתרים גדולים‪,‬שיש בהם קונספט של פרופיל‪ ,‬כלומר‪,‬קיים אדם אחד עבור כל פרופיל‪ ,‬ומספר‬
‫תמונות עבור כל פרופיל שכזה‪ .‬מספר דוגמאות לאתרים בהם יש קונספט של פרופיל (לא בהכרח כריתי מאף אחד‬
‫מהם)‪.Facebook,Twitter,Instagram,OKCupid,Twitter,Linkedin-‬‬
‫לכל אתר יש את ה ‪ bias‬שלו‪,‬למשל כאמור עבור מספר אתרים מארה"ב בהם מופיעים תמונות של עצירים‪,‬יופיעו‬
‫בעיקר גברים וגם ההתפלגות האתנית מאוד נטויה (‪.)biased‬‬
‫לכן במהלך כריית המידע השתדלתי לקחת אתרים "משלימים" במידת האפשר‪ .‬לדוגמא‪,‬כאשר לקחתי תמונות‬
‫מאתר היכרויות‪ ,‬מכיוון שהגילאים באתר ההיכרויות הם מגיל ‪ 18‬ומעלה‪ ,‬מצאתי מקור לתמונות של ילדים ובני‬
‫נוער אשר הן מתוייגות‪,‬על מנת שהאלגוריתם יוכל ללמוד גם על קבוצה זו‪.‬‬
‫הכריה עצמה מתבצעת תוך ניצול המבנה הפנימי של כל אתר‪ ,‬או מבנה ה‪ DOM‬שנוצר ‪.‬‬
‫אתן מספר דוגמאות לאופ ן הבחירה שלי באיזה מידע להשתמש ומתי (כאמור‪,‬קיימים אוקיינוסים מאוד עמוקים של‬
‫מידע מתוייג ונגיש) במהלך כתיבת העבודה‪.‬‬
‫‪ 3.2‬ניקוי (פילטור) המידע‬
‫עבור כל פרופיל‪,‬הנחת היסוד היא שיתכנו מספר תמונות בפרופיל שבהן בעל הפרופיל לא יופיע‪ ,‬כלומר יתכן‬
‫שהאדם יעלה תמונות של ילדיו‪,‬חיות המחמד שלו‪ ,‬או כל דבר אחר‪.‬‬
‫על מנת לנקות את המידע‪,‬השתמשתי בשני כלים‪:‬‬
‫‪ .1‬מזהה פנים‪( Face detector-‬מסיפריה פתוחה ‪)dlib -‬‬
‫‪ Face Recognition. .2‬אלגוריתם שפייסבוק פיתחו (הפרוייקט עצמו נקרא ‪)Open Face‬‬
‫כדי לזהות את האדם שמופיע הכי הרבה בתמונות עבור פרופיל ספציפי‪.‬‬
‫אם לא קיים אדם "מובהק" שכזה‪ ,‬בגלל שיש לי המון מידע ורציתי תיוג נקי ככל האפשר‪ ,‬פשוט התעלמתי מכל‬
‫התמונות באותו פרופיל‪ .‬אם קיים אדם שכזה‪,‬ההנחה היא שהוא בעל הפרופיל‪ .‬מבדיקה ידנית שערכתי על כמה‬
‫אלפי תמונות‪,‬כמות הרעש במאגר (תמונות שמתוייגות לא נכון) היא פחות מאחוז‪-‬ניקיון גדול הרבה יותר ממאגרים‬
‫מפורסמים (של תמונות מתוייגות)‪.‬‬
‫‪ 3.3‬נתונים טכניים על המאגר‬
‫גודל מאגר המידע שהתקבל הינו מעל ‪ 40‬מיליון תמונות‪,‬כאשר לאחר הניקיון שצויין לעיל‪,‬נשארות בסביבות‬
‫ה‪ 70%‬של התמונות (יותר מ‪ 28‬מיליון תמונות)‪.‬‬
‫לשם השוואה‪ ,‬הנה השוואה למאגרי מידע מפורסמים‪:‬‬
‫‪Name‬‬
‫‪Labelled by‬‬
‫‪#Labels/Example‬‬
‫‪#Examples‬‬
‫‪By‬‬
‫‪Hand‬‬
‫‪~1‬‬
‫‪14,197,122‬‬
‫‪Stanford‬‬
‫‪ImageNet‬‬
‫‪Mixed‬‬
‫‪~5‬‬
‫‪~330,000‬‬
‫‪Microsoft‬‬
‫‪COCO‬‬
‫)‪Auto (most‬‬
‫‪~1.2‬‬
‫‪~9,000,000 URLS‬‬
‫‪Google‬‬
‫‪Open Images‬‬
‫*‪Hand‬‬
‫‪>15‬‬
‫‪41,829,115‬‬
‫‪Technion‬‬
‫‪Ours‬‬
‫איור‪ 4-‬השוואה למאגרי תמונות מתוייגות גדולים‬
‫כלומר‪,‬במילים אחרות‪,‬גם אחרי פילטור המאגר‪ ,‬מבחינת מספר התמונות‪,‬יש לי מספר שיותר גדול ממה שגופים‬
‫כמו גוגל‪,‬סטנפורד וממיקרוסופט פירסמו‪ .‬ביחד‪.‬‬
‫‪ 3.3‬התפלגות המידע‬
‫בחרתי להביא את התפלגות המידע פה‪,‬ולא בתת הנושא המתאים‪-‬כדי שפרק ‪ 7‬הקורא יוכל לראות את התוצאות‬
‫ביחד (אחרת מרוב דיאגרמות לא רואים את התוכן)‪.‬‬
‫‪ 3.3.1‬לפי גילאים‬
‫הנה התפלגות מאגר המידע לפי גילאים‪:‬‬
‫איור ‪ 5‬התפלגות המידע במאגר שכריתי לפי גילאים‬
‫כפי שניתן לראות באיור ‪ 5‬התפלגות המידע במאגר שכריתי לפי גילאים‪,‬המאגר עצמו הוא מאוד ‪ biased‬וישנם‬
‫הרבה פחות בני נוער או אנשים מבוגרים (‪.)+70‬‬
‫מצד שני‪,‬יש לשים לב שלמשל בגילאי הנוער בהם ישנן פחות דוגמאות‪,‬מדובר ביותר מ‪ 5000‬דוגמאות לכל שנתון‪.‬‬
‫בתחום הפופולארי של חיזוי גיל‪,‬נכון להיום‪,‬כאשר יש ‪ dataset‬של ‪ 20,000‬תמונות לכל השנתונים ביחד מכנים‬
‫אותו "גדול"‪.‬‬
‫מבחינה פרקטית‪,‬ההשפעה של ‪ bias‬שכזה על תוצאות המסווג אותו אימנתי‪,‬גם אם אינן זניחות‪ ,‬הן לא‬
‫משמעותיות כפי שחשבתי שיקרה‪ .‬אפשר לראות זאת מבחינה פרקטית באתר‪-‬להעלות תמונות של בני‬
‫נוער‪,‬למשל‪.‬‬
‫‪ 3.3.2‬לפי נטיה מינית‬
‫הנה החלוקה לפי נטיה מינית‪:‬‬
‫‪1400000‬‬
‫‪1169379‬‬
‫‪1123566‬‬
‫‪1200000‬‬
‫‪1000000‬‬
‫‪800000‬‬
‫‪600000‬‬
‫‪#Images‬‬
‫‪400000‬‬
‫‪200000‬‬
‫‪100508‬‬
‫‪38901‬‬
‫‪0‬‬
‫‪Gay Men‬‬
‫‪Gay Women Straight Men‬‬
‫‪Straight‬‬
‫‪Women‬‬
‫איור ‪-6‬התפלגות המידע לפי נטיה מינית‬
‫כפי שנראה בהמשך‪,‬ל‪ bias‬זה תהיה השפעה גדולה על המסווג הנאיבי‪-‬אך מספרים אלה עקביים עם הערכות‬
‫קודמות ]‪ [2‬לגבי יחס האוכלוסיות הסטרייטיות והגאות‪.‬‬
‫‪ 3.3.3‬לפי מבנה גוף‬
‫אפשר לכתוב מספר עמודים רק על הסטטיסטיקה של מבנה גוף כפונקציה של תכונות שונות כגון‪:‬‬
‫מוצא אתני‪,‬מיקום‪,‬גיל‪,‬אבל בחרתי להביא את הסטטיסטיקה כפונקציה של מגדר‪:‬‬
Women by body type
600000
513318
500000
400000
330493
300000
200000
100000
69707
140875
106624
0
Thin
Athletic
Average
Slightly
overweight
Overweight
#Images
‫התפלגות נשים לפי מבנה גוף‬-7 ‫איור‬
Men by body type
600000
493499
500000
365725
400000
300000
200000
100000
93388
76880
16083
0
Thin
Athletic
Average
Slightly
overweight
Overweight
#Images
‫התפלגות גברים לפי מבנה גוף‬-8 ‫איור‬
.‫אכתוב בהרחבה על מידע זה בחלק "ניסויים עקרוניים" בעבודה‬
‫‪ 3.3.3‬לפי מוצא אתני‬
‫אכתוב את הסטטוס של התפלגות המידע לפני הניסויים‪-‬אך כפי שנראה במהלך הניסויים‪ -‬אני אדלה עוד מידע‬
‫כתוצאה ישירה מהניסויים‪.‬‬
‫‪Males by ethnicity‬‬
‫‪682129‬‬
‫‪210583‬‬
‫‪10009‬‬
‫‪Indian‬‬
‫‪126742‬‬
‫‪69395‬‬
‫‪Latino‬‬
‫‪16689‬‬
‫‪6206‬‬
‫‪Black‬‬
‫‪Native‬‬
‫‪American‬‬
‫‪White‬‬
‫‪Asian‬‬
‫‪800000‬‬
‫‪700000‬‬
‫‪600000‬‬
‫‪500000‬‬
‫‪400000‬‬
‫‪300000‬‬
‫‪200000‬‬
‫‪100000‬‬
‫‪0‬‬
‫‪Mixed‬‬
‫‪#Images‬‬
‫איור ‪-9‬התפלגות הגברים לפי מוצא אתני‬
‫‪Females by ethnicity‬‬
‫‪700000‬‬
‫‪604332‬‬
‫‪600000‬‬
‫‪500000‬‬
‫‪430270‬‬
‫‪400000‬‬
‫‪300000‬‬
‫‪97243‬‬
‫‪92463‬‬
‫‪8800‬‬
‫‪2432‬‬
‫‪8543‬‬
‫‪200000‬‬
‫‪100000‬‬
‫‪0‬‬
‫‪Indian‬‬
‫‪Latino‬‬
‫‪Black‬‬
‫‪Native‬‬
‫‪American‬‬
‫‪White‬‬
‫‪Asian‬‬
‫‪#Images‬‬
‫איור ‪-10‬התפלגות הנשים לפי מוצא אתני‬
‫‪Mixed‬‬
‫איכותית ניתן לראות שהתפלגות שתי האוכלוסיות דומה אך קיימים ההבדלים הבאים‪:‬‬
‫‪.1‬מספר הנשים ההודיות שקיימות במאגר‪-‬רק קצת יותר מ‪.2000‬‬
‫‪.2‬ישנן באופן יחסי‪,‬הרבה יותר נשים שחורות מגברים שחורים במאגר‪.‬‬
‫‪.3‬יש מספר זעום של אנשים ממוצא אסיאתי‪,‬כאשר מספר הגברים בקטגוריה זו כפול ממספר הנשים‪.‬‬
‫נראה את ההשפעה של הבדלים אלו על התוצאות בהמשך‪.‬‬
‫‪ 3.3.4‬לפי רמת השכלה‬
‫אני חושב שיש הרבה מאוד גורמים שיכולים להשפיע על רמת ההשכלה‪ :‬מגדר‪,‬גיל‪,‬רקע סוציו‪-‬אקונומי‪,‬נסיבות חיים‬
‫ועוד ועוד‪ .‬כהרגלי בקודש‪,‬אפריד בשלב זה את הגרפים רק ע"פ המגדר‪.‬‬
‫‪Women by education level‬‬
‫‪425842‬‬
‫‪379811‬‬
‫‪450000‬‬
‫‪400000‬‬
‫‪350000‬‬
‫‪300000‬‬
‫‪250000‬‬
‫‪172635‬‬
‫‪172635‬‬
‫‪200000‬‬
‫‪150000‬‬
‫‪100000‬‬
‫‪53999‬‬
‫‪50000‬‬
‫‪4347‬‬
‫‪0‬‬
‫‪Phd‬‬
‫‪Masters‬‬
‫‪BA‬‬
‫‪College‬‬
‫‪High school Attended‬‬
‫‪university‬‬
‫איור ‪-11‬התפלגות הנשים לפי רמת ההשכלה‬
‫‪Men by education level‬‬
‫‪600000‬‬
‫‪491128‬‬
‫‪500000‬‬
‫‪400000‬‬
‫‪300000‬‬
‫‪205059‬‬
‫‪150824‬‬
‫‪5568‬‬
‫‪173931‬‬
‫‪200000‬‬
‫‪100000‬‬
‫‪39833‬‬
‫‪0‬‬
‫‪Phd‬‬
‫‪Masters‬‬
‫‪BA‬‬
‫‪College‬‬
‫‪High school Attended‬‬
‫‪university‬‬
‫איור ‪-12‬התפלגות הגברים לפי רמת ההשכלה‬
‫בפרק ‪ 7‬נראה מהן תוצאות הסיווג הנאיביות‪,‬וכיצד נפרש אותן בדרך מעניינת‪.‬‬
‫‪ 3.4‬חלוקת ה‪ Dataset‬ל‪Training,Validation,Test‬‬
‫על מנת לוודא שאין זליגה של מידע ל‪ validation/test‬כלומר‪,‬לוודא שהמידע שעליו אנחנו נבחנים שונה (‪ (Test‬או‬
‫מכווננים את ה)‪ hyper-parameters(Validation‬דאגתי לכך שיהיו פרופילים שונים ממש בין כל סט וסט (כך שאדם‬
‫מסויים יוכל להופיע רק באחד מתוך שלושת הסטים)‪.‬‬
‫בנוסף ישנה נקודה מעניינת לגבי חלוקת המידע‪ :‬ישנו כלל אצבע של חלוקת המידע בין הסטים‪-‬אימון ולידציה‬
‫ובוחן‪ ,‬ל‪ 20 60‬ו‪ 20‬אחוזים בהתאמה‪ .‬אך מתברר (למדתי זאת בקורס של ‪ Andrew Wang‬על למידה עמוקה)‬
‫שכאשר ישנו מספר עצום של דוגמאות‪,‬ומכיוון שהדבר שחשוב לנו בסט הבוחן והולידציה הוא שסטים אלו ייצגו‬
‫מספיק טוב את האוכלוסיה שמעניינת אותנו‪ ,‬ניתן לקחת כמות קבועה וגדולה דיה של תמונות עבור סטים אלו‬
‫ולהתאמן על כל שאר התמונות (כלומר‪,‬חלוקה של ‪ 0.005,0.005 99.9‬היא מצויינת כל עוד סטי הבוחן והולידציה‬
‫מייצגים את האוכלוסיה הכללית בצורה טובה)‪.‬‬
‫על מנת לוודא שסטים אלו ייצגו היטב את האוכלוסיה‪,‬בחרתי גודל זה להיות המינימום מבין ‪ 15,000‬ל‪ 20%‬עבור‬
‫כל אחת מהאוכלוסיות שכריתי (ילדים‪,‬בני נוער‪,‬מבוגרים)‪ 15,000 .‬הוא מספר שרירותי‪-‬בחרתי אותו כך שיהיה‬
‫שווה לגודל סט בוחן המקסימלי מבין כל ה‪ Datasets‬שהאקדמיה משתמשת בהן במאפיין הפופולארי ביותר מבין‬
‫כל אלה שאימנתי עליהם (גיל)‪.‬‬
‫‪ 4‬ניסויים מעניינים וכושלים‬
‫בפרק זה אתאר בקצרה מספר ניסיונות שלאו דווקא צלחו‪,‬אך למדתי מהם‪ ,‬תוך כדי הפרוייקט‪:‬‬
‫‪ 4.1‬אימון תוך כפיית תדירות השנתונים בהתאם ל‪ dataset‬עליו‬
‫נבחנים‬
‫כותרת קצת מסורבלת‪ -‬אך אחד הרעיונות המעניינים היה כזה‪:‬‬
‫חלק מההבדל שנוצר בין השגיאה על ה‪ training set‬וה‪ validation set‬או ה‪ test set‬יכול להיווצר כתוצאה‬
‫מהתפלגות שונה של המידע‪ .‬במקרה הזה למשל‪,‬חשבתי שאם למשל ב‪ dataset‬שעליו נתאמן תהיה לצורך‬
‫ההמחשה הרבה יותק מבוגרים מילדים‪,‬אך אנו נבחנים כאשר יש הרבה יותר ילדים ממבוגרים‪,‬שגיאת הבוחן יכולה‬
‫להיות יותר גדולה בגלל זה‪.‬‬
‫לכן ניסיתי ל"כפות" את המי דע‪ ,‬כך שיהיה מפולג בדיוק כמו סט הבוחן (אפשר לדון אם זה סוג של זליגת מידע או‬
‫לא)‪ .‬הדרך שבה עשיתי זאת היא‪-‬עבור כל קבוצה שמופיעה באופן יותר תדיר באופן יחסי לקבוצה שמופיעה‬
‫בתדירות הנמוכה ביותר‪,‬הגרלתי את התמונות עליהן נתאמן ב‪ epoch‬זה כך שמספר התמונות בקבוצה זו תהיה‬
‫באותה תדירות כמו סט הבוחן‪ .‬כך נוצר מצב שבכל ‪ epoch‬המערכת התאמנה על אותה התפלגות כמו סט הבוחן‪.‬‬
‫בכל אופן‪,‬לאחר מספר שבועות של ניסויים הסתבר לי שהעיניין הזה לא משפר כלל את ביצועי המערכת (כנראה‬
‫שסה"כ הביצועים יורדים קצת באופן הזה)‪.‬‬
‫באותו נושא (אופן ההכ ללה של רשתות) הופתעתי לגלות שהמערכת יכולה לזהות בני נוער בצורה טובה‪ ,‬למרות‬
‫שבאופן יחסי (כפי שהראיתי ב‪ )Error! Reference source not found.‬מספר בני הנוער הוא נמוך בצורה‬
‫משמעותית‪.‬‬
‫משני הדברים האלו (שהפתיעו אותי) אפשר לראות שכאשר מדובר במספר עצום של תמונות‪,‬כנראה שיכולת‬
‫ההכללה של המערכת פחות רגישה להתפלגות המידע (לפחות לא על פני הגילאים)‪.‬‬
‫‪ 4.2‬התחשבות ברזולוציה ע"י מנגנון ‪attention‬‬
‫רעיון מעניין אחר הוא התחשבות ברזולוציה‪.‬‬
‫כאשר ה‪ face detector‬מזהה פנים‪,‬ולפני שמזינים את הפנים למערכת‪,‬הרי ידועה לנו הרזולוציה (או גודל‬
‫ה‪ ) bounding box‬שממנה נלקחו הפנים‪ .‬אם גודל המרובע הזה הוא קטן‪ ,‬אז הקלט למערכת יהיה שונה מאוד‬
‫מאשר מרובע גדול (רזולוציה נמוכה לעומת רזולוציה גבוהה)‪.‬‬
‫אם כך‪,‬חשבתי לנסות רשת שבה כל הפילטרים (בכל שכבה) מוכפלים ביציאה של מנגנון ‪ attention‬שמתאים‬
‫לשכבה זו (הרעיון הוא שיש פילטרים שיותר חשובים כאשר הרזולוציה גבוהה ויש כאלה שיותר חשובים כאשר‬
‫הרזולוציה נמוכה)‪,‬כאשר המפתח למנגנון ה‪ attention‬בכל שכבה הוא קבועה ושווה לרזולוציה (כמובן שביצעתי‬
‫‪ rescaling‬לתחום ]‪ .) [-1,1‬התוצאות שקיבלתי היו קצת יותר טובות‪,‬אבל לא מספיק לטעמי יותר טובות באופן יחסי‬
‫למספר הפרמטרים שהוספו‪.‬‬
‫‪ 6‬אימון הרשת‬
‫בפרק זה ארחיב על מספר פרטים טכניים על אימון הרשת‬
‫‪ Random Search 6.1‬לעומת ‪Grid Search‬‬
‫ישנו תחום חשוב (והוא עדיין "חם" מבחינת מחקר) של אופטימיזציה של היפר פרמטרים‪.‬‬
‫היפרפרמטרים הם פרמטרים שלא נלמדים ישירות מהמידע‪,‬אך השפעתם בד"כ קריטית על תוצאות האימון‪.‬‬
‫דוגמאות‪ :‬קצב למידה‪ ,‬מידת הרגולריזציה‪ ,‬הארכיטקטורה של הרשת‪.‬‬
‫במאמר ידוע ]‪ [3‬מ‪ 2012‬הוסבר ההבדל בין ‪ random search‬לבין ‪:grid search‬‬
‫איור ‪-13‬איור מתוך המאמר ]‪ [3‬שמבהיר את העיניין‬
‫‪ Grid search‬היא הדרך הכי נאיבית לבצע אופטימיזציה של ההיפר פרמטרים‪ .‬כלומר עבור כל ‪hyper parameters‬‬
‫קובעים מראש סט מסויים של ערכים שעוברים עליהם‪ .‬הדבר דומה ללולאות ‪ for‬מקוננות‪,‬כאשר גודל הקינון שווה‬
‫למספר ה ‪ hyper parameters‬עליהם מעוניינים לבצע אופטימיזציה‪-‬החישוביות מאוד כבדה במיוחד כאשר יש‬
‫מספר גדול של ‪ hyper-parameters‬שעליהם מעוניינים לבצע אופטימיזציה‪.‬‬
‫לעומת זאת ב‪ Random Search‬מגרילים את כל ערכי ה ‪.hyper parameters‬‬
‫נשמע אומנם מוזר‪ ,‬אך האיור איור ‪-13‬איור מתוך המאמר שמבהיר את העיניין מסביר מדוע זה יותר טוב‪:‬‬
‫בד"כ יש ‪ hyper parameters‬הרבה יותר חשובים (למשל קצב למידה) וכאלה שהרבה פחות חשובים‪,‬וכאשר‬
‫מגרילים את הערכים‪,‬בעצם עורכים יותר ניסויים עם ערכים שונים עבור אלה היותר חשובים‪.‬‬
‫אם למשל התקציב שלנו עבור אופטימיזציה של ‪ hyper parameters 2‬מספיק ל ‪ n2‬ניסויים‪,‬ב ‪ grid search‬נעבור‬
‫(איכותית) על ‪ n‬ערכים עבור כל אחד משני ה‪ hyper parameters‬ב‪ ,grid search‬ו‪ n2‬ערכים שונים עבור כל אחד‬
‫מהם ב‪.random search‬‬
‫(וההבדל כמובן מתחדד כאשר מספר ה ‪ hyper parameters‬גדל)‪.‬‬
‫‪ 6.2‬ניסויים טכניים‪-‬מציאת ‪ hyper-parameters‬מתאימים‬
‫הנה שני איורים שמבהירים איך נעשה הדבר בצורה פרקטית‪:‬‬
‫איור ‪-14‬דיוק אחרי ‪ 2‬אפוקים כפונקציה של קצב הלמידה‬
‫איור ‪ -15‬דיוק אחרי ‪ 2‬אפוקים כפונקציה של מידת הרגולריזציה(‪)L2‬‬
‫ההקשר בהדגמה זו הוא חיזוי מגדר כאשר הדיוק הוא מספר התמונות עבורן המסווג צודק חלקי סך התמונות‪.‬‬
‫בכל אופן‪ ,‬כל נקודה בשני הגרפים מייצגת בעצם רשת שונה שאומנה עבור שני ‪ epochs‬מלאים‪.‬‬
‫ניתן לראות מאיור ‪-14‬דיוק אחרי ‪ 2‬אפוקים כפונקציה של קצב הלמידה שהטווח בו יש להתמקד הוא )‪)-3,-4.5‬‬
‫בחיפוש עצמו (יש לשים לב שזו סקלה לוגריתמית כלומר ‪ 10‬בחזקת‪ ....‬אבל לצורך ההבנה זה לא מהותי)‪,‬ומאיור‬
‫‪ -15‬דיוק אחרי ‪ 2‬אפוקים כפונקציה של מידת הרגולריזציה(‪)L2‬אפשר לראות שאפשר להתמקד בסדרת הניסויים‬
‫הבאה ברגולריזציה שקטמה מ‪ .-2‬סדרת הניסויים הבאה תתמקד בערכים שציינתי‪,‬עם יותר ‪.epochs‬‬
‫בדרך זו בחרתי את ערכי ה ‪ hyper parameters‬איתם אימנתי את הרשת‪.‬‬
‫‪ 6.3‬פרטים טכניים‪-‬בחירת הרשת ואימון הרשת‬
‫השתמשתי ב‪( Pytorch‬למדתי גם ‪ TensorFlow‬במסגרת הפרוייקט‪,‬אבל עברתי ל‪ Pytorch‬ולדעתי זה אכן‬
‫‪ framework‬הרבה יותר מוצלח מהרבה מאוד בחינות)‪.‬‬
‫בהמלצת אלעד הופר‪,‬בחרתי ארכיטקטורה ש"הוכיחה" את עצמה‪ -‬ספציפית ‪ resnet 18‬ו‪.resnet 34‬‬
‫בחרתי ברשתות פחות עמוקות(למרות שאני מודע לכך שככל שהרשת יותר עמוקה‪,‬באופן כללי התוצאות יכולות‬
‫להיות יותר טובות) בגלל סיבות פרקטיות‪-‬עם המספר העצום של התמונות שהיו ברשותי ועם החומרה הקיימת‪,‬גם‬
‫כך רק להריץ את הניסויים שציינתי בסעיף הקודם לוקח מספר שבועות!‬
‫לשם שלמות ההסבר‪,‬אציין שהמעבד הגרפי היה ‪,Nvidia GeForce GTX 1080 Ti‬ומספר התמונות בהן השתמשתי‬
‫בפועל עמד על קצת יותר מ‪ 3‬מיליון (אציין שמכיוון שההבדל בין ביצוע הרשת על ה‪ training set‬וה‪validation set‬‬
‫לגבי גיל היה קטן יחסית‪-‬שזו אינדיקציה ל‪ variance‬נמוך‪-‬עבור הרשתות היחסית קטנות‪,‬גם הוספה של מספר גדול‬
‫יותר של תמונות לא היתה משפרת את ביצועי הרשת בקטגוריה זו)‪ .‬ה‪ optimizier‬בו השתמשתי היה ‪.Adam‬‬
‫הרשת‪,‬אותה בפרק הבא אכנה "המסווג הנאיבי" )‪ (Resnet34‬למדה באמצעות ‪ Multi-task Learning‬כאשר עבור‬
‫כל משימה יש ראש )‪ Fully Connected(FC‬נפרד‪,‬ושאר המשקלים של הרשת משותפים לכל המשימות‪.‬‬
‫‪ 7‬ניסויים עקרוניים‪-‬תכונות‬
‫בפרק זה אתאר את הניסויים (וההחלטות) שקיבלתי כאשר אימנתי את המערכת לזהות את התכונות‪-‬‬
‫נטיה מינית‪,‬מבנה גוף‪,‬רמת השכלה מזל ומוצא אתני‪,‬תשובה לכל קטגוריה לחוד לשאלה "האם ניתן ללמוד‬
‫מתמונות פנים בלבד‪,‬בעזרת האלגוריתמים הקיימים היום על התכונה יותר מאשר מסווג אקראי לחלוטין" (או כזה‬
‫שפועל לפי התפלגות האוכלוסיה בלי קשר לתמונה עצמה)‪.‬‬
‫בתחילת כל פרק אשתמש באותו מסווג בדיוק שאימנתי בעזרת ‪( Multi-Task Learning‬אותו אחד שציינתי בסוף‬
‫הפרק הקודם) שאומן על קצת יותר מ‪ 3‬מיליון תמונות‪,‬אנתח ואשפר במידת הצורך‪.‬‬
‫‪ 7.1‬נטיה מינית‬
‫בעבודה שפורסמה עליה כתבה בגארדיאן ]‪ [4‬ונכתבה ב‪ ,Stanford‬לקחו ‪ 35,326‬תמונות פנים (שחציים סטרייטים‬
‫וחציים לא)‪,‬הכניסו כל תמונה ל‪ (VGG-Face) Face recognition‬שמוצאו הוא וקטור של ‪ 4096‬מספרים‪,‬הורידו את‬
‫המימדיות של וקטור זה בעזרת ‪ SVD‬לוקטור של ‪ 500‬מספרים‪,‬‬
‫ועל וקטור זה אימנו מסווג מסוג ‪ Logistic regression‬בנפרד עבור גברים ועבור נשים (‪ 2‬מסווגים שונים עבור שני‬
‫המגדרים)‪.‬‬
‫כאשר בחנו את ביצועי האלגוריתם(והשוו אותם לביצועי אנשים)‪,‬לקחו שתי תמונות‪ :‬תמונה אחת של סטרייט‬
‫ותמונה אחת של גיי‪,‬ושאלו (את האלגוריתם\את האנשים) מי הוא הסטרייט\גיי בתמונה‪.‬‬
‫נוסח בדיקה זו יהיה חשוב בהמשך כאשר ארצה להשוות תוצאות (במידת האפשר)‪,‬אך המטרה שלי היא‪ -‬בהינתן‬
‫תמונה אחת‪,‬כאשר לא ידוע שום דבר על האדם שבתמונה‪,‬אני מעוניין להשיג את הביצועים ה"טובים ביותר"‬
‫(נראה עוד מעט שספציפית בנושא זה ישנן נקודות מאוד עדינות)‪.‬‬
‫‪ 7.1.1‬הביצוע האנושי בקטגוריה זו (‪)Human performance‬‬
‫כדי לתת הערכה ראשונית לגבי שגיאת בייס (השגיאה של המסווג הטוב ביותר האפשרי לגבי האוכלוסיה הכללית)‬
‫עבור קטגוריה זו אשתמש בביצוע האנושי (כך נחסום מלמעלה את שגיאת בייס)‪,‬ולכן אזכיר בקצרה‪ ,‬שהביצוע‬
‫האנושי בקטגוריה זו נע בין ‪ 55%‬ל‪ [5] [6] [7] [4] 65%‬יש כאמור לשים לב בקריאת המאמר לדרך המדידה‬
‫(למשל יש לשים לב אם זו הערכה בהינתן שתי תמונות שידוע שאחת מהן הוא של סטרייט והשניה של גאה‪ ,‬או‬
‫תמונה אחת)‪.‬‬
‫‪ 7.1.2‬ניסוי נאיבי ראשון‪ -‬אימון על כל ה‪Training Set‬‬
‫בתחילה אבחן את ביצועי המסווג שציינתי בתחילת הפרק‪,‬שאומן על יותר מ‪ 3‬מיליון תמונות‪.‬‬
‫ניסיון זה מוביל למסווג אשר יש לו על סט הולידציה דיוק של ‪ ,96.6%‬אך אינני מרוצה מביצועיו בכלל‪.‬‬
‫מדוע? ובכן‪,‬הוא השיג דיוק של ‪ 99.4%‬על הסטרייטים‪,‬ודיוק של ‪ 11.5%‬על הגאים(!)‪.‬‬
‫כלומר‪,‬בגלל שהרוב המוחלט של האוכלוסיה עליה אימנתי הינם סטרייטים‪,‬הרשת למדה (איכותית) לומר שגברים‬
‫כמעט תמיד רוצים נשים‪,‬ונשים כמעט תמיד רוצות גברים‪.‬‬
‫במונחים מקצועיים‪ Accuracy,‬איננו המדד הנכון היחיד במקרה זה‪.‬‬
‫ה‪ TP/(TP+FN) -Recall‬במקרה הנ"ל הינו כאמור ‪ .11.5%‬למרות שגם ‪ Recall‬איננו המדד הרלוונטי היחיד‪,‬ברור‬
‫שלא נרצה מסווג שאומר על הרוב המוחלט של האנשים שהם סטרייטים‪.‬‬
‫‪ 7.1.3‬ניסוי שני‪ -‬אימון על ‪ Dataset‬שאינו ‪Biased‬‬
‫מתוצאות הניסוי הראשון תכננתי את הניסוי השני‪ ,‬כך שהפעם ב‪ Dataset‬לא ניתן יהיה לדעת את הנטיה המינית‬
‫בהינתן המגדר‪ .‬לכן לקחתי מספר זהה של סטרייטים וגאים גם עבור גברים וגם עבור נשים (כלומר‪,‬חצי הגברים‬
‫סטרייטים וחצי מהנשים סטרייטיות)‪-‬מספר התמונות הכולל הינו ‪ 278,818‬ואז אימנתי ‪ Resnet18‬על ‪ Dataset‬זה‪.‬‬
‫כעת קיבלתי תוצאות מעניינות‪ .‬בתחילה בדקתי את הדיוק על סט הולידציה לפי קטגוריות שונות‪:‬‬
‫סטרייטים‬
‫גאים‬
‫סטרייטיות‬
‫גאות‬
‫‪77.6%‬‬
‫‪65.1%‬‬
‫‪68.1%‬‬
‫‪63.1%‬‬
‫איור ‪-16‬תוצאות נטיה מינית על סט הולידציה‬
‫אלו תוצאות מפתיעות וגבוהות ביחס לביצוע האנושי ולכן החלטתי לבדוק בשלב זה את התוצאות על סט הבוחן‬
‫ששמתי בצד (לא השתמשתי בסט הבוחן כלל עד שלב זה‪,‬לרבות כיוונון היפר פרמטרים או בחינה כלשהיא)‪:‬‬
‫סטרייטים‬
‫גאים‬
‫סטרייטיות‬
‫גאות‬
‫‪76.6%‬‬
‫‪73.2%‬‬
‫‪67.1%‬‬
‫‪62.7%‬‬
‫איור ‪-17‬תוצאות נטיה מינית על סט הבוחן‬
‫כלומר‪,‬מבחינה פרקטית התוצאות זהות על סט הולידציה וסט הבוחן‪ -‬לא היה איזהשהוא ‪ overfitting‬גדול‬
‫של הרשת על סט הולידציה ביחס לסט הבוחן!‬
‫‪ 7.1.3‬ניסוי שלישי‪-‬מדידת המסווג באותה שיטה כמו המאמר‬
‫בניסוי זה אשווה בין התוצאות שהמאמר ]‪ [4‬פירסם‪,‬לבין המסווג שקיבלתי‪,‬כאשר אשתמש באותה שיטת מדידה‬
‫כמו המאמר‪-‬כאמור‪,‬המאמר השווה בין שני אנשים שונים שידוע שאחד מהם הוא סטרייט והשני גאה בכל איטרציה‬
‫של הניסוי‪.‬‬
‫כמו כן‪,‬המאמר לקח מספר משתנה של תמונות עבור כל אדם (מ‪ 1‬עד ‪ )5‬ולמשל במקרה של ‪ 5‬תמונות לאדם‬
‫מיצע את ‪ 5‬הסיכויים שהמסווג הוציא עבור ‪ 5‬התמונות‪.‬‬
‫מכיוון שיש הרבה זוגות שאפשר לבחור‪ ,‬מה שעשיתי הוא כאשר ביצעתי את הניסוי עבור ‪ n‬תמונות לאדם הוא‪-‬‬
‫מבין כל הפרופילים שיש להם ‪ n‬תמונות ומעלה הגרלתי בהסתברות שווה (ביחס לפרופילים ולא ביחס למספר‬
‫התמונות‪ -‬על מנת שלא יווצר מצב בו אדם משפיע יותר כאשר יש לו בפרופיל יותר תמונות) סטרייט וגאה‪,‬ועל שני‬
‫פרופילים אלה מדדתי את ביצועי המסווג בדרך שצויינה לעיל‪ .‬חזרתי על ניסוי זה ‪ 40,000‬פעמים עבור כל מגדר‪.‬‬
‫הנה התוצאות שקיבלתי עבור נשים‪:‬‬
‫‪Women-Accuracy‬‬
‫‪77.00%‬‬
‫‪76.00%‬‬
‫‪75.00%‬‬
‫‪74.00%‬‬
‫‪73.00%‬‬
‫‪72.00%‬‬
‫‪71.00%‬‬
‫‪70.00%‬‬
‫‪8‬‬
‫‪7‬‬
‫‪6‬‬
‫‪5‬‬
‫‪4‬‬
‫‪3‬‬
‫‪2‬‬
‫‪1‬‬
‫‪#Images per person‬‬
‫איור ‪-18‬תוצאות המסווג בדרך המדידה של המאמר‪-‬נשים‬
‫ואלה התוצאות עבור גברים‬
‫‪Men-Accuracy‬‬
‫‪92.00%‬‬
‫‪90.00%‬‬
‫‪88.00%‬‬
‫‪86.00%‬‬
‫‪84.00%‬‬
‫‪82.00%‬‬
‫‪80.00%‬‬
‫‪78.00%‬‬
‫‪8‬‬
‫‪7‬‬
‫‪6‬‬
‫‪5‬‬
‫‪4‬‬
‫‪3‬‬
‫‪2‬‬
‫‪#Images Per person‬‬
‫איור ‪ -19‬תוצאות המסווג בדרך המדידה של המאמר‪-‬גברים‬
‫‪1‬‬
‫כמו שניתן לראות מאיור ‪ -19‬תוצאות המסווג בדרך המדידה של המאמר‪ -‬קיבלתי עבור גאים תוצאה שעוברת את‬
‫ה‪( 90%‬למרות שמספר הדוגמאות עבור נשים היה גבוה יותר) אך יש לזכור‪-‬התנאים הם ‪ 2n‬תמונות (למשל ‪5‬‬
‫תמונות עבור כל אחד מהם‪-‬ולכן ‪ 10‬תמונות) וגם ידע מוקדם שאחד מהנבדקים סטרייט והשני לא‪.‬‬
‫אנצל הזדמנות זו ואסביר את ההבדל בין התוצאות שאני קיבלתי לבין המסווג שהמאמר ]‪ [4‬מדבר עליו איכותית‬
‫וכמותית‪ :‬קיבלתי תוצאה קצת פחות "טובה" ממה שהמאמר מציין (‪ 90.55%‬לעומת ‪ 91%‬מקסימלי אצל‬
‫גברים‪ 76.3%,‬דיוק מקסימלי אצל נשים לעומת ‪ 83%‬במאמר) אבל‪:‬‬
‫‪. 1‬מאגרי המידע שונים‪,‬ובפרט בניגוד למאמר לא הגבלתי את איכות התמונה וגם לא את זויות הפנים‪.‬‬
‫במאמר בחרו רק פנים מיושרות למצלמה ורק תמונות איכותיות יחסית‪,‬ובנוסף לכך הגבילו את מוצא האנשים‬
‫שבתמונה לאנשים לבנים (‪ )Caucasians‬בלבד בעוד שאני לא הגבלתי את מאגר התמונות שלי‪.‬‬
‫כלומר מאגר המידע שלי (לפי מה שמתואר במאמר) הוא יותר "אמיתי" ולכן יותר "קשה" ללמידה‪-‬וגם סט הבוחן‬
‫קשה יותר באותו אופן‪.‬‬
‫‪.2‬במאמר השתמשו ב‪ Face Recognition‬ועליו בנו ‪.Logistic Regression‬‬
‫היתרון בשיטה שלהם הוא שעבור אותו אדם ספציפי ועבור תמונות שונות‪,‬פלט המסווג יהיה כנראה עם שונות‬
‫הרבה יותר נמוכה‪ .‬החיסרון הוא שבאימון שאינו מקצה לקצה כמו שבוצע פה (ובהינתן שיש "מספיק" דוגמאות‬
‫לאימון מקצה לקצה) יהיו ‪( features‬תכונות אבסטרקטיות שהרשת לומדת) שהרשת לא יכולה ללמוד כלל (כי זה‬
‫לא אימון מקצה לקצה)‪.‬‬
‫אני לא בטוח מדוע במאמר לא ניסו לאמן רשת מקצה לקצה‪ -‬הם רק כתבו בקצרה שהם עשו זאת אך חששו‬
‫מ‪ .Overfitting‬בעיניי זו טענה מוזרה‪,‬הרי בדיוק לצורך זה יש סט ולידציה(וסט בוחן)‪,‬וגם אם מספר התמונות‬
‫שלהם היה קטן משלי (עבור קטגוריה זו) פי ‪ ,8‬ובהנחה שהם לא היו בטוחים‪ -‬ניתן היה לבצע ‪.Cross validation‬‬
‫‪ 7.1.4‬ניסוי רביעי‪-‬סיווג לפי מספר תמונות לאדם‬
‫בניסוי זה אבחן את ביצועי המסווג‪,‬כאשר מוזנות מספר תמונות לאותו אדם‪ ,‬אך ללא אדם נוסף (בניגוד למאמר)‪.‬‬
‫בחרתי לצורך השלמות להציג את המידע עבור כל אחת מ‪ 4‬האוכלוסיות (גבר‪/‬אישה)(סטרייט‪/‬גאה) בנפרד‪:‬‬
‫‪Male-Straight‬‬
‫‪0.88‬‬
‫‪0.86‬‬
‫‪0.84‬‬
‫‪0.82‬‬
‫‪0.8‬‬
‫‪0.78‬‬
‫‪0.76‬‬
‫‪0.74‬‬
‫‪0.72‬‬
‫‪0.7‬‬
‫‪8‬‬
‫‪7‬‬
‫‪8‬‬
‫‪7‬‬
‫‪6‬‬
‫‪4‬‬
‫‪5‬‬
‫‪3‬‬
‫‪2‬‬
‫‪1‬‬
‫‪#Images‬‬
‫איור ‪-20‬הדיוק עבור אוכלוסיית הגברים הסטרייטים‬
‫‪Male-Gay‬‬
‫‪0.84‬‬
‫‪0.82‬‬
‫‪0.8‬‬
‫‪0.78‬‬
‫‪0.76‬‬
‫‪0.74‬‬
‫‪0.72‬‬
‫‪0.7‬‬
‫‪0.68‬‬
‫‪6‬‬
‫‪4‬‬
‫‪5‬‬
‫‪3‬‬
‫‪#Images‬‬
‫איור ‪-21‬הדיוק עבור גברים גאים‬
‫‪2‬‬
‫‪1‬‬
‫‪Female-straight‬‬
‫‪0.73‬‬
‫‪0.72‬‬
‫‪0.71‬‬
‫‪0.7‬‬
‫‪0.69‬‬
‫‪0.68‬‬
‫‪0.67‬‬
‫‪0.66‬‬
‫‪8‬‬
‫‪7‬‬
‫‪8‬‬
‫‪7‬‬
‫‪6‬‬
‫‪4‬‬
‫‪5‬‬
‫‪3‬‬
‫‪2‬‬
‫‪1‬‬
‫‪#Images‬‬
‫איור ‪-22‬הדיוק עבור נשים סטרייטיות‬
‫‪Female-Gay‬‬
‫‪0.68‬‬
‫‪0.67‬‬
‫‪0.66‬‬
‫‪0.65‬‬
‫‪0.64‬‬
‫‪0.63‬‬
‫‪0.62‬‬
‫‪0.61‬‬
‫‪0.6‬‬
‫‪6‬‬
‫‪4‬‬
‫‪5‬‬
‫‪3‬‬
‫‪2‬‬
‫‪1‬‬
‫‪#Images‬‬
‫איור ‪-23‬הדיוק עבור נשים גאות‬
‫מהאיורים ניתן לראות שבאופן כללי‪,‬ניתן לסווג בצורה יותר טובה עבור כל האוכלוסיות כאשר ישנה יותר מתמונה‬
‫אחת‪,‬אך ההבדל בין סיווג בעזרת ‪ 3-4‬תמונות או בעזרת הרבה יותר תמונות הוא זניח יחסית‪-‬לעיתים הרעש היה‬
‫גדול יותר מהבדל זה‪ .‬אציין שיש הבדל גדול מאוד בין איורים אלה לאיורים מהסעיף הקודם (שמשווה למאמר)‪:‬‬
‫פה למשל עבור ‪ 5‬תמונות‪,‬באמת מדובר ב‪ 5‬תמונות (יש אדם אחד בלבד)‪ ,‬ואילו בסעיף הקודם מדובר היה ב‪5‬‬
‫תמונות לאדם (יש לזכור שכל ניסוי שם עירב שני אנשים) ולכן למעשה הסיווג בוצע בעזרת ‪ 10‬תמונות‪.‬‬
‫‪ 7.1.6‬ניסוי חמישי‪-‬שימוש ב‪Selective Classification‬‬
‫הכיוון שלי הוא לפרסם את העבודה שלי באתר‪ ,‬ועדיף שלא (מבחינת חויית משתמש) לבקש מספר תמונות מכל‬
‫אדם כדי לבצע סיווג סביר‪ ,‬ובנוסף נרצה כמה שפחות לפגוע ברגשותיהם של המשתמשים‪-‬נרצה לבצע כמה‬
‫שפחות טעויות‪.‬‬
‫קיים מאמר שיצא לפני כשנה שנכתב ע"י דוקטורנט מהטכניון ]‪ [8‬בדיוק על נושא זה (התחום קיים כבר כמה‬
‫עשרות שנים)‪.‬‬
‫בצורה תמציתית‪,‬פשוט ניתן לבחור לא לסווג (‪ )Reject‬כאשר הרשת לא בטוחה "מספיק" בסיווגה‪.‬‬
‫למשל בסיווג מגדר(גבר\אישה)‪ ,‬אם פלט המסווג הוא "הסתברות" של ‪ 51.5%‬שבתמונה יש גבר‪,‬אז אולי הרשת‬
‫לא בטוחה מספיק‪,‬ואז אפשר לפרש את פלט הרשת כ"לא יודעת" ואם ההסתברות היא ‪ 98.8%‬אז הרשת בטוחה‬
‫ולכן נסכים להוציא תוצאה‪-‬יש לבחון את ה‪ Threshold‬שממנו והלאה נסכים לסווג‪.‬‬
‫המאמר מציע חיפוש בינארי בהינתן רמת ביטחון מבוקשת‪ ,‬אך בבעיה הזו מדובר במשהו דינמי‪ -‬ההחלטה לגבי‬
‫הסף של רמת הביטחון שתקבע בסיווג תלויה בכמה מהאוכלוסיה יהיה עליי ל"וותר"‪.‬‬
‫לכן בחרתי בדרך שונה מאשר המאמר‪:‬‬
‫מיינתי את התמונות לפי רמת הביטחון של הרשת בסיווג‪ .‬מכיוון שפה מדובר בבעיית סיווג בינארית הגדרתי זאת‬
‫להיות פשוט )‪ max(p1,p2‬כאשר ‪ p1,p2‬הן ההסתברויות של האדם להיותו סטרייט וגאה בהתאמה‪)p1+p2=1( .‬‬
‫לאחר מכן ציירתי גרפים של הדיוק על כל אחת מהאוכלוסיות כפונקציה של מספר התמונות אותן לא סיווגנו‪ ,‬כאשר‬
‫נפטרים קודם מהתמונות עליהן המסווג הכי פחות בטוח‪ .‬לבסוף עליי לציין שמכיוון שאני תופס את הסף של רמת‬
‫הביטחון בתור היפר פרמטר‪,‬ביצעתי את הבחירה הזו על סט הולידציה‪ .‬הנה התוצאות‪:‬‬
‫‪Straight Women‬‬
‫‪100.00%‬‬
‫‪80.00%‬‬
‫‪60.00%‬‬
‫‪40.00%‬‬
‫‪20.00%‬‬
‫‪0.00%‬‬
‫‪1‬‬
‫‪625‬‬
‫‪1249‬‬
‫‪1873‬‬
‫‪2497‬‬
‫‪3121‬‬
‫‪3745‬‬
‫‪4369‬‬
‫‪4993‬‬
‫‪5617‬‬
‫‪6241‬‬
‫‪6865‬‬
‫‪7489‬‬
‫‪8113‬‬
‫‪8737‬‬
‫‪9361‬‬
‫‪9985‬‬
‫‪10609‬‬
‫‪11233‬‬
‫‪11857‬‬
‫‪12481‬‬
‫‪13105‬‬
‫‪13729‬‬
‫‪14353‬‬
‫‪#Images discarded‬‬
‫איור ‪-24‬דיוק על נשים סטרייטיות כפונקציה של מספר התמונות אותן בחרנו לא לסווג‬
‫‪Gay Women‬‬
‫‪100.00%‬‬
‫‪90.00%‬‬
‫‪80.00%‬‬
‫‪70.00%‬‬
‫‪60.00%‬‬
‫‪50.00%‬‬
‫‪40.00%‬‬
‫‪30.00%‬‬
‫‪20.00%‬‬
‫‪10.00%‬‬
‫‪0.00%‬‬
‫‪1‬‬
‫‪626‬‬
‫‪1251‬‬
‫‪1876‬‬
‫‪2501‬‬
‫‪3126‬‬
‫‪3751‬‬
‫‪4376‬‬
‫‪5001‬‬
‫‪5626‬‬
‫‪6251‬‬
‫‪6876‬‬
‫‪7501‬‬
‫‪8126‬‬
‫‪8751‬‬
‫‪9376‬‬
‫‪10001‬‬
‫‪10626‬‬
‫‪11251‬‬
‫‪11876‬‬
‫‪12501‬‬
‫‪13126‬‬
‫‪13751‬‬
‫‪14376‬‬
‫‪#Images discarded‬‬
‫איור ‪ -25‬דיוק על נשים גאות כפונקציה של מספר התמונות אותן בחרנו לא לסווג‬
‫‪Straight Men‬‬
‫‪100.00%‬‬
‫‪90.00%‬‬
‫‪80.00%‬‬
‫‪70.00%‬‬
‫‪60.00%‬‬
‫‪50.00%‬‬
‫‪40.00%‬‬
‫‪30.00%‬‬
‫‪20.00%‬‬
‫‪10.00%‬‬
‫‪0.00%‬‬
‫‪1‬‬
‫‪587‬‬
‫‪1173‬‬
‫‪1759‬‬
‫‪2345‬‬
‫‪2931‬‬
‫‪3517‬‬
‫‪4103‬‬
‫‪4689‬‬
‫‪5275‬‬
‫‪5861‬‬
‫‪6447‬‬
‫‪7033‬‬
‫‪7619‬‬
‫‪8205‬‬
‫‪8791‬‬
‫‪9377‬‬
‫‪9963‬‬
‫‪10549‬‬
‫‪11135‬‬
‫‪11721‬‬
‫‪12307‬‬
‫‪12893‬‬
‫‪13479‬‬
‫‪#Images discarded‬‬
‫איור ‪ -26‬דיוק על גברים סטרייטים כפונקציה של מספר התמונות אותן בחרנו לא לסווג‬
‫‪Gay Men‬‬
‫‪100.00%‬‬
‫‪90.00%‬‬
‫‪80.00%‬‬
‫‪70.00%‬‬
‫‪60.00%‬‬
‫‪50.00%‬‬
‫‪40.00%‬‬
‫‪30.00%‬‬
‫‪20.00%‬‬
‫‪10.00%‬‬
‫‪0.00%‬‬
‫‪1‬‬
‫‪626‬‬
‫‪1251‬‬
‫‪1876‬‬
‫‪2501‬‬
‫‪3126‬‬
‫‪3751‬‬
‫‪4376‬‬
‫‪5001‬‬
‫‪5626‬‬
‫‪6251‬‬
‫‪6876‬‬
‫‪7501‬‬
‫‪8126‬‬
‫‪8751‬‬
‫‪9376‬‬
‫‪10001‬‬
‫‪10626‬‬
‫‪11251‬‬
‫‪11876‬‬
‫‪12501‬‬
‫‪13126‬‬
‫‪13751‬‬
‫‪14376‬‬
‫‪#Images discarded‬‬
‫איור ‪ -27‬דיוק על גברים גאים כפונקציה של מספר התמונות אותן בחרנו לא לסווג‬
‫מהאיורים אפשר לראות מספר תופעות מעניינות‪:‬‬
‫‪. 1‬באופן כללי‪,‬אפשר לומר שכאשר "נפטרים" מתמונות עליהן המסווג פחות "בטוח בעצמו"‪,‬הביצועים עולים‪.‬‬
‫‪. 2‬מקרה חריג ויוצא דופן היא אוכלוסיית הגברים הסטרייטים‪ .‬אפשר לראות שמשום מה עבור אוכלוסיה זו‪ ,‬קיים‬
‫מצב "כשל" שבו הרשת בטוחה יחסית בתחזיותיה‪,‬אך טועה! תופעה דומה קיימת ב"זנב" אוכלוסיית הנשים‬
‫הסטרייטיות (דווקא בתמונות בהן המסווג מאוד בטוח באופן יחסי הוא טועה יותר)‬
‫‪.3‬לצערי‪,‬באופן כללי השיפוע עולה ולכן לא ניתן לבחור ‪ threshold‬שיגלם פשרה בין רמת ביטחון ורמת דיוק עבור‬
‫הרשת‪/‬בעיה הספציפית הזו‪.‬‬
‫יחד עם זאת‪,‬תובנה מעניינת מאוד לגבי המסווג שהתקבל הוא‪-‬כאשר המסווג מאוד מאוד בטוח בעצמו‪,‬יתכן שהוא‬
‫טועה‪ .‬לכן ניתן לתת חיווי עד כמה אנו בטוחים בביצועי המסווג‪ ,‬וחיווי זה יהיה שונה (ולא פונקציה מונוטונית של)‬
‫מפלט המסווג‪ -‬כאמור יש רוויה (או אפילו ירידה‪-‬תלוי באוכלוסיה) ברמות היותר גבוהות של "ביטחון" שמפגין‬
‫המסווג עצמו‪.‬‬
‫‪ 7.2‬מבנה גוף\‪BMI‬‬
‫למה לחזות בכלל מבנה גוף לפי פנים? לא עדיף לחזות מבנה גוף‪...‬לפי תמונת גוף? ‪‬‬
‫אז ככה‪:‬‬
‫קודם כל זה כיוון מחקר עתידי שלי‪ ,‬אך בטכנולוגיה הכי טובה שידועה לי שקיימת כרגע (‪ )Mask-Rcnn‬שמתיימרת‬‫לקחת מהתמונה את כל הפיקסלים של אדם מסוים כולל הגוף שלו‪,‬ובכן‪,‬לדעתי היא לא קרובה ל‪Face detectors‬‬
‫שקיימים כרגע מבחינת הדיוק‪,‬ויותר חשוב‪-‬מבחינה פרקטית עדיין אינה מספיק טובה כדי לעבוד עם מוצר אמיתי‪.‬‬
‫פעמים רבות מידי המערכת הזו לוקחת רק חלק מאדם מסויים‪,‬או מתייגת איחוד של שני אנשים בתור אדם אחד‪.‬‬
‫לעיתים קרובות תמונת הגוף לא קיימת‪,‬ויש רק תמונת פנים שעל פיה עלינו לשפוט‪.‬‬‫בפרט‪,‬באתרי היכרויות או אפליקציות כמו ‪,Tinder‬קיימים אנשים רבים שמספקים רק תמונת פנים‪.‬‬
‫אפשר לראות את התפלגות המידע שעליה אימנתי את המערכת באיור ‪-7‬התפלגות נשים לפי מבנה גוף ואיור ‪-8‬‬
‫התפלגות גברים לפי מבנה גוף בפרק על מאגר המידע‪.‬‬
‫חשוב לי בשלב זה לציין פרט קריטי‪ :‬התיוגים נעשו ע"י המשתמשים עצמם ובמילים אחרות‪-‬‬
‫אדם אשר יש לו עודף משקל‪,‬יכל לסווג את עצמו כבעל מבנה גוף ממוצע‪,‬אתלטי או עודף משקל קל‪.‬‬
‫לכן‪,‬מצב זה בעייתי יותר מהמצב שהיה קיים בנטיה מינית‪-‬התיוגים עצמם רועשים יותר‪.‬‬
‫בנוסף כפי שניתן לראות בהתפלגות המידע‪-‬התיוג הכי פופולרי הוא "מבנה גוף ממוצע"‪.‬‬
‫החלטתי אם כך בנוסף לאמן רשת שתעריך את ה‪ BMI‬של אדם מסויים‪.‬‬
‫עשיתי זאת כאשר מצאתי עבודה קודמת שנעשתה ב‪,[9] MIT‬וארחיב עליה בהמשך‪.‬‬
‫נתחיל בניסויים‪:‬‬
‫‪ 7.2.1‬ניסוי ראשון‪-‬סיווג לפי מבנה גוף‬
‫בניסוי זה נסתכל על ביצועי הרשת שציינתי בתחילת הפרק‪.‬‬
‫מכיוון שזהו כבר לא מסווג בינארי (ישנן ‪ 5‬מחלקות כאשר מדובר בסוג גוף) בחרתי להביא את המידע בצורת‬
‫‪ .Confusion Matrix‬משמעות "סיווג" פה היא‪-‬המחלקה לה ניתנה ה"הסתברות" הגבוהה ביותר ע"י הרשת‪ .‬עשיתי‬
‫ניסוי זה על סט הולידציה‪ .‬הנה התוצאות עבור נשים‪:‬‬
‫‪Classified‬‬
‫‪slightly‬‬
‫‪Truth‬‬
‫‪Overweight‬‬
‫‪overweight‬‬
‫‪Average‬‬
‫‪Athletic‬‬
‫‪Thin‬‬
‫‪0‬‬
‫‪9‬‬
‫‪787‬‬
‫‪73‬‬
‫‪34‬‬
‫‪Thin‬‬
‫‪2‬‬
‫‪44‬‬
‫‪1134‬‬
‫‪158‬‬
‫‪21‬‬
‫‪Athletic‬‬
‫‪54‬‬
‫‪1055‬‬
‫‪5039‬‬
‫‪91‬‬
‫‪36‬‬
‫‪Average‬‬
‫‪240‬‬
‫‪1670‬‬
‫‪1839‬‬
‫‪1‬‬
‫‪0‬‬
‫‪overweight‬‬
‫‪408‬‬
‫‪758‬‬
‫‪378‬‬
‫‪0‬‬
‫‪0‬‬
‫‪Overweight‬‬
‫‪slightly‬‬
‫איור ‪-28‬ה‪ Confusion Matrix‬עבור נשים‬
‫והנה התוצאות עבור גברים‪:‬‬
‫‪Classified‬‬
‫‪slightly‬‬
‫‪Truth‬‬
‫‪Overweight‬‬
‫‪overweight‬‬
‫‪Average‬‬
‫‪Athletic‬‬
‫‪Thin‬‬
‫‪0‬‬
‫‪6‬‬
‫‪262‬‬
‫‪418‬‬
‫‪24‬‬
‫‪Thin‬‬
‫‪0‬‬
‫‪44‬‬
‫‪2298‬‬
‫‪3817‬‬
‫‪25‬‬
‫‪Athletic‬‬
‫‪2‬‬
‫‪186‬‬
‫‪3733‬‬
‫‪1642‬‬
‫‪23‬‬
‫‪Average‬‬
‫‪2‬‬
‫‪295‬‬
‫‪982‬‬
‫‪99‬‬
‫‪0‬‬
‫‪overweight‬‬
‫‪3‬‬
‫‪93‬‬
‫‪119‬‬
‫‪28‬‬
‫‪0‬‬
‫‪Overweight‬‬
‫‪slightly‬‬
‫איור ‪-29‬ה‪ Confusion Matrix‬עבור גברים‬
‫משני איורים אלה אפשר לראות ש‪:‬‬
‫‪.1‬ברוב המחלקות‪,‬אפשר לראות כי בדומה ל‪,Prior‬המחלקה לה המסווג נתן את המשקל הגדול ביותר היא בד"כ‬
‫"מבנה גוף ממוצע"‪ .‬יחד עם זאת‪,‬עבור אנשים שתייגו עצמם כבעלי עודף משקל לא קל‪,‬ניתן לראות כי עבור נשים‬
‫המסווג נטה לסווג בעזרת המחלקות של אנשים בעלי עודף משקל‪,‬אפילו יותר מאשר "ממוצע"‪.‬‬
‫‪. 2‬עבור נשים שסיווגו עצמן כבעלות עודף משקל‪,‬קיימת רק תמונה אחת (מתוך ‪ )15000‬שלא סווגה ע"י אחת‬
‫המחלקות שמתאימות לנשים בעלות עודף משקל או סוג גוף ממוצע‪.‬‬
‫‪.3‬לעומת זאת אצל גברים‪,‬מעבר למחלקה ה"טריוויאלית" (מבנה גוף ממוצע)‪,‬שתי המחלקות שהמסווג סיווג בפועל‬
‫אליהן הן "אתלטי" או "עודף משקל נמוך"‪ .‬אפשר להבין למה זה "משתלם" לרשת באיור ‪-8‬התפלגות גברים לפי‬
‫מבנה גוף ‪ :‬ישנם הרבה (באופן יחסי לנשים) גברים שסיווגו עצמם כבעלי מבנה גוף אתלטי‪.‬‬
‫‪-‬באופן כללי אני חושב שככל שהמסווג פחות בטוח בעצמו‪,‬כך הסיווג יתקרב יותר ויותר ל‪.Prior‬‬
‫‪ 7.2.2‬ניסוי שני‪ :‬סיווג ללא מבנה גוף ממוצע‬
‫כמסקנה מתוצאות הניסוי הראשון("מבנה גוף ממוצע" יותר מדי דומיננטי)בניתי את הניסוי השני בצורה הבאה‪:‬‬
‫הגדרתי את המחלקה שסווגה ככזו שיש לה ה"הסתברות" הגבוהה ביותר מבין המחלקות שאינן "מבנה גוף‬‫ממוצע"‪ .‬כל השאר ללא שינוי (הרשת‪,‬התוצאות מוצגות על סט הולידציה)‪.‬‬
‫‪Classified‬‬
‫‪slightly‬‬
‫‪Truth‬‬
‫‪Overweight‬‬
‫‪overweight‬‬
‫‪Athletic‬‬
‫‪Thin‬‬
‫‪1‬‬
‫‪251‬‬
‫‪437‬‬
‫‪199‬‬
‫‪Thin‬‬
‫‪2‬‬
‫‪448‬‬
‫‪767‬‬
‫‪121‬‬
‫‪Athletic‬‬
‫‪51‬‬
‫‪4291‬‬
‫‪1538‬‬
‫‪256‬‬
‫‪Average‬‬
‫‪240‬‬
‫‪3244‬‬
‫‪226‬‬
‫‪12‬‬
‫‪overweight‬‬
‫‪395‬‬
‫‪1114‬‬
‫‪27‬‬
‫‪2‬‬
‫‪Overweight‬‬
‫‪slightly‬‬
‫איור ‪ -30‬ה‪ Confusion Matrix‬עבור נשים(ללא "מבנה גוף ממוצע")‬
‫‪Classified‬‬
‫‪slightly‬‬
‫‪Truth‬‬
‫‪Overweight‬‬
‫‪overweight‬‬
‫‪Athletic‬‬
‫‪Thin‬‬
‫‪0‬‬
‫‪19‬‬
‫‪647‬‬
‫‪39‬‬
‫‪Thin‬‬
‫‪0‬‬
‫‪302‬‬
‫‪5799‬‬
‫‪43‬‬
‫‪Athletic‬‬
‫‪1‬‬
‫‪1117‬‬
‫‪4325‬‬
‫‪76‬‬
‫‪Average‬‬
‫‪0‬‬
‫‪848‬‬
‫‪502‬‬
‫‪8‬‬
‫‪slightly‬‬
‫‪overweight‬‬
‫‪160‬‬
‫‪3‬‬
‫‪0‬‬
‫‪80‬‬
‫‪Overweight‬‬
‫איור ‪ -31‬ה‪ Confusion Matrix‬עבור גברים(ללא "מבנה גוף ממוצע")‬
‫מהנתונים אפשר להסיק מספר דברים מעניינים‪:‬‬
‫‪ .1‬עבור נשים שתייגו עצמן כבעלות יתר משקל (ולמרות שלא איפשרתי סיווג ל"מבנה גוף ממוצע")‪,‬עדיין‬
‫קיימות מעט מאוד נשים שהמסווג מסווגן כבעלות מבנה גוף רזה\אתלטי‪,‬ולהיפך‪.‬‬
‫‪ .2‬עבור גברים קיים למסווג קושי להבחין בין משקל יתר קטן לבין מבנה גוף אתלטי‪-‬אני לא בטוח אם זה‬
‫בגלל האוכלוסיה (ראה איור ‪-8‬התפלגות גברים לפי מבנה גוף) או בגלל משהו פיזיולוגי‪.‬‬
‫‪ .3‬עבור נשים שהגדירו את עצמן כבעלות מבנה גוף ממוצע‪ ,‬המסווג נוטה לתייגן מחדש (לעומת ה‪)Prior‬‬
‫כבעלות עודף משקל‪ .‬לעומת זאת‪,‬גברים שהגדירו עצמם כך הוא מסווג ממש לפי ה‪( Prior‬אותה‬
‫התפלגות של בעלי עודף משקל לעומת בעלי מבנה גוף אתלטי)‪-‬יתכן שהעיניין נובע ישירות מהקושי‬
‫שציינתי בסעיף הקודם‪.‬‬
‫בשלב זה רציתי לקבל תוצאות יותר איכותיות‪,‬ולכן עברתי לאמן משערך ‪.BMI‬‬
‫אתייחס לעבודה הקודמת שמצאתי על נושא זה ]‪ [10‬אך קודם לכן‪,‬מה זה בכלל ‪ ?BMI‬‬
‫‪ 3.2.1‬הגדרת ‪BMI‬‬
‫‪ BMI‬הינו מדד רפואי המוגדר כמשקל של אדם(בקילו) חלקי הגובה שלו(במטרים) בריבוע‬
‫]𝑔𝑘[𝑡‪𝑊𝑒𝑖𝑔ℎ‬‬
‫] ‪𝐻𝑒𝑖𝑔ℎ𝑡 2 [𝑚2‬‬
‫כאשר לפי ספרות הרפואית באופן כללי‪:‬‬
‫‪ BMI<18.5‬הוא תת משקל‬
‫‪ 18.5=>BMI<=24.9‬הוא מדד תקין‬
‫= 𝐼𝑀𝐵‬
‫‪ 25=>BMI<=29.9‬הוא מצב של עודף משקל‬
‫‪ 30=>BMI‬הוא עודף משקל קיצוני‪.‬‬
‫‪ 7.2.3‬סיכום העבודה הקודמת בנושא‬
‫מחברי העבודה ]‪ [10‬השיגו ‪ 4206‬תמונות פנים עם תיוגים מדוייקים לגבי ה‪ BMI‬של כל תמונת פנים‪,‬ואימנו על גבי‬
‫הפלט של )‪ Face recognition(VGG-Face‬מסווג לינארי (‪.)SVM‬‬
‫החיסרון לדעתי בשיטה שלהם הוא שמערכת זיהוי הפנים אומנה למזער את ההבדל בין שני פלטים על שתי‬
‫תמונות של אותו אדם (או להגדיל את ההבדל כאשר אלו שתי תמונות של שני אנשים שונים)‪ -‬כלומר‪,‬באופן עקרוני‬
‫עבור אדם שהרזה או השמין מאוד ועבור שתי תמונות שלו לפני ואחרי‪ -‬מערכת זיהוי הפנים אומנה להוציא פלט‬
‫דומה‪.‬‬
‫בנוסף עליי לציין שהתמונות בעלות ‪ Bias‬חמור‪-‬ישנן מספר ספור של תמונות של "תת משקל" (ראה התפלגות‬
‫המידע בהמשך)‪-‬כפי שנראה בהמשך‪,‬אתקן את העיניין ע"י לקיחת דוגמאות יותר מתאימות ל"עולם האמיתי"‪.‬‬
‫‪ 7.2.4‬המשך עבודה על ה‪Face to BMI Dataset‬‬
‫בכל אופן‪,‬ביקשתי וקיבלתי את ה‪ Dataset‬של ‪ MIT‬מהכותב הראשי (‪,)Enes‬ומכיוון שמספר התמונות קטן מאוד‬
‫ביחס למספר התמונות שקיימות על שאר המשימות(כאמור ‪ 4206‬לעומת יותר מ‪ 3‬מיליון)‪,‬‬
‫החלטתי לבצע ‪ Transfer Learning‬על הרשת המקורית שאומנה על כל המידע (‪ 3‬מיליון תמונות פנים) ועם‬
‫משימות בעלות קורלציה גבוהה ככל הנראה (‪ BMI/Body type‬הן שתי משימות עם קורלציה גבוהה ביניהן)‪.‬‬
‫באופן פרקטי‪,‬הקפאתי את כל משקלי הרשת שאימנתי (‪,)Resnet34‬והוספתי עוד ראש ‪ FC‬עבור המשימה החדשה‪.‬‬
‫מהניסיון שיש לי עם הערכת גיל‪,‬השתמשתי בארכיטקטורה אותה הציעו בעבודה ]‪ [11‬אבל עבור ‪.BMI‬‬
‫בקצרה‪,‬אם נבצע רגרסיה (מוצא הרשת הוא מספר ממשי)‪,‬הרשת נוטה ל"התכנס" לכיוון הממוצע ככל שהיא אינה‬
‫"בטוחה" בעצמה‪-‬במשימה הערכת גיל זה מתבטא באנשים מבוגרים שההערכה לגביהם היא מספר שנים פחות‬
‫(לעומת התוצאות בעבודה ]‪ )[11‬ולהיפך (לילדים "נוספים" מספר שנים)‪ .‬לעומת זאת בארכיטקטורה בה אני‬
‫אשתמש‪,‬כל תיוג ‪ BMI‬מעוגל למספר השלם הכי קרוב לו‪,‬ועבור כל מספר שלם בין ‪ 17‬ל‪ 50‬יצרתי מחלקה (הבעיה‬
‫מנוסחת כל כבעיית סיווג‪ -‬סה"כ ‪ 34‬מחלקות)‪,‬ואז שערוך הגיל הוא פשוט ה"תוחלת" לפי התפלגות ה"הסתברויות"‬
‫שהמסווג מוציא כפלט‪ .‬החלטתי לקטוע את התיוגים במספרים אלו בגלל מיעוט הדוגמאות בטווחים שקטנים מ‪17‬‬
‫וגדולים מ‪ .50‬הנה התפלגות המידע על כל מאגר המידע הזה‪:‬‬
‫‪Face2BMI distribution‬‬
‫‪300‬‬
‫‪250‬‬
‫‪200‬‬
‫‪150‬‬
‫‪#Images‬‬
‫‪100‬‬
‫‪50‬‬
‫‪0‬‬
‫‪100‬‬
‫‪80‬‬
‫‪40‬‬
‫‪60‬‬
‫‪20‬‬
‫‪BMI‬‬
‫‪0‬‬
‫‪-50‬‬
‫איור ‪-32‬התפלגות המידע של ‪ Face2BMI‬כפונקציה של ה‪BMI‬‬
‫כאשר אימנתי‪,‬הסתכלתי על ה‪ Mean Absolute Error‬בין התיוגים האמיתיים לבין מה שהרשת מתייגת‪ .‬על‬
‫ה‪ Training set‬מדובר ב‪ 3.3‬בערך ועל ה‪ Validation set‬מדובר ב‪.3.88‬‬
‫אני לא יודע אם א לו תוצאות טובות או גרועות (לא מצאתי מקור שמעריך ביצועי אנשים בהערכת ‪ BMI‬באופן ישיר‬
‫ובטח שלא על המאגר הזה)‪,‬אז אערוך את שני הניסויים הבאים כדי להעריך את הביצועים בכל זאת‬
‫‪ .1‬סיווג לפי הקטגוריות המוגדרות בסעיף הגדרת ‪BMI‬‬
‫‪ .2‬השוואה לתוצאות אותן קיבלו החבר'ה מ‪ [9] MIT‬כאשר הם הישוו את ביצועי המסווג לביצוע האנושי‬
‫(ובאותה הזדמנות אכתוב על המתודולוגיה בה הם השתמשו בניסויים)‪.‬‬
‫‪ 7.2.6‬סיווג לפי הקטגוריות הרפואיות‬
‫בניסוי זה‪,‬לקחתי את המסווג שקיבלתי בסעיף הקודם‪,‬ובחנתי (ע"י ‪ )Confusion Matrix‬את ביצועיו‪,‬כאשר במקום‬
‫לקחת את הערך המוחלט של ההפרש בין התיוג האמיתי לשערוך (ה‪,)MAE‬חילקתי את ה‪ BMI‬לקבוצות (כפי‬
‫שמוגדר בספרות הרפואית‪-‬ראה ‪ )7.2.3‬וניסיתי לראות איך המסווג טועה‪:‬‬
‫‪Classified‬‬
‫‪Obese‬‬
‫‪Overweight‬‬
‫‪Normal‬‬
‫‪12‬‬
‫‪66‬‬
‫‪30‬‬
‫‪Normal‬‬
‫‪65‬‬
‫‪117‬‬
‫‪18‬‬
‫‪Overweight‬‬
‫‪410‬‬
‫‪58‬‬
‫‪3‬‬
‫‪Obese‬‬
‫‪Truth‬‬
‫איור ‪-33‬ה‪ Confusion matrix‬עבור משערך ה‪.BMI‬‬
‫אז קודם כל‪,‬יש לשים לב שאין את הקטגוריה "תת משקל"‪-‬וזו לא טעות‪ .‬בכל מאגר המידע ישנן ‪ 4‬תמונות שיכולות‬
‫להיחשב "תת משקל"‪-‬בסט הבוחן היו בדיוק ‪ 0‬כאלו‪,‬ובנוסף המסווג לא שיערך אף אחת מהתמונות בתור כזו‬
‫שמתאימה לקטגוריה תת משקל‪.‬‬
‫מה‪ Confusion matrix‬ניתן ללמוד מספר דברים‪:‬‬
‫‪.1‬עבור אנשים בעלי ‪ BMI‬נורמלי‪-‬רובם מסווגים כבעלי עודף משקל‪ .‬תכונה מאוד לא רצויה‪.‬‬
‫‪. 2‬אנשים בעלי עודף משקל גבוה מסווגים לרוב ככאלה‪,‬וכאשר המסווג "מתבלבל" זה בד"כ עם המחלקה השכנה‬
‫(לוגית) היחידה שלו (עודף משקל רגיל)‪.‬‬
‫‪. 3‬רוב האנשים בעלי עודף משקל לא קיצוני מסווגים ככאלה‪,‬וכאשר המסווג טועה‪,‬הוא נוטה לטעות לכיוון "מעלה"‬
‫(עודף משקל קיצוני)‪.‬‬
‫‪ 7.2.7‬השוואה לביצוע האנושי‬
‫מקור המידע היחיד שיש לי לגבי הביצוע האנושי בקטגוריה זו הוא אותה עבודה ]‪ .[10‬אפרט את שיטת הניסוי‬
‫והמדידה שלהם ואשווה את התוצאות למסווג שאני אימנתי‪.‬‬
‫‪ 7.2.7‬השוואה לביצוע האנושי והתוצאות של העבודה הקודמת‬
‫כדי להשוות לביצוע האנושי‪ ,‬בעבודה הקודמת ]‪( [10‬ובאופן דומה למתולוגיה של המאמר מסטנפורד ]‪,)[4‬הם‬
‫לקחו זוגות של אנשים אשר קיים ביניהם הפרש מסוים של ‪ BMI‬ושאלו את האנשים\האלגוריתם מיהו האדם‬
‫היותר שמן ומיהו היותר רזה‪ .‬במאמר עצמו הם הביאו את הנתונים לגבי הדיוק כפונקציה של הפרש ה‪ BMI‬עבור‬
‫‪ 3‬קבוצות "הפרשים" (מתחת ל‪,5.5‬בין ‪ 5.5‬ל‪ 10.5‬ובין ‪ 10.5‬ל‪ )15.5‬ועל מנת להשוות את התוצאות‪,‬אלה הנתונים‬
‫שהסתכלתי עליהם הפעם‪ .‬הנה התוצאות‪:‬‬
‫‪Accuracy-BMI difference‬‬
‫‪100.00%‬‬
‫‪89.60%‬‬
‫‪84.30%82.70%‬‬
‫‪90.00%‬‬
‫‪81.40%‬‬
‫‪78.90%‬‬
‫‪75.20%‬‬
‫‪80.00%‬‬
‫‪63.50%‬‬
‫‪61.50%‬‬
‫‪56.20%‬‬
‫‪Human‬‬
‫‪70.00%‬‬
‫‪60.00%‬‬
‫‪50.00%‬‬
‫‪MIT‬‬
‫‪40.00%‬‬
‫‪Technion‬‬
‫‪30.00%‬‬
‫‪20.00%‬‬
‫‪10.00%‬‬
‫‪0.00%‬‬
‫‪10.5-15.5‬‬
‫‪5.5-10.5‬‬
‫‪0.5-5.5‬‬
‫‪BMI difference‬‬
‫איור ‪-34‬המשערך שלי לעומת המשערך של החבר'ה מ‪ MIT‬ולעומת הביצוע האנושי‬
‫מהאיור ניתן לראות שהמשערך ‪ BMI‬שלי‪-‬ובכל שלושת הקטגוריות שנמדדו‪-‬מתפקד יותר טוב גם מהמשערך של‬
‫‪ MIT‬וגם מהביצוע האנושי כפי שנמדד על ידם‪.‬‬
‫תוצאה זו לא מפתיעה‪ -‬אני ביצעתי ‪ Transfer Learning‬על אלגוריתם שלמד‪,‬בין היתר‪,‬להבדיל בין סוגי גוף‬
‫שונים‪ ,‬בעוד שהם לקחו ‪ features‬מאלגוריתם שמטרתו למזער את ההבדל בין שני הפלטים שלו עבור שתי‬
‫תמונות של אותו אדם (וכאמור בפרט גם תמונות לפני ואחרי הדיאטה‪,‬כלומר לא בהכרח רגיש למבנה גוף)‪.‬‬
‫יחד עם זאת‪,‬חשוב לי לציין שבשלב זה ביצועי המשערך אינם משביעים את רצוני בכלל‪-‬מהניסוי הקודם עולה‬
‫שהמשערך יקטלג את רוב האנשים שאינם בעלי עודף משקל‪,‬כבעלי עודף משקל‪ .‬מובן מדוע בשלב זה לא אפרסם‬
‫דבר כזה באתר ‪ ‬זה נובע‪,‬בין היתר‪,‬מה‪(Prior‬ראה איור ‪-32‬התפלגות המידע של ‪ Face2BMI‬כפונקציה של‬
‫ה‪.)BMI‬‬
‫מכיוון שהמשערך הראה שיתכנו ביצועים גבוהים בתחום זה‪,‬ומכיוון שאני לא רוצה להעליב את אוכלוסיית אלה‬
‫שאינם בעלי עודף משקל‪,‬החלטתי לייצר מאגר מתוייג של ‪ BMI‬מדוייק‪,‬כאשר האוכלוסיה היא לא בהכרח אנשים‬
‫שהרזו כמו שנעשה עד כה (ואז יש ‪ Bias‬לכיוון אוכלוסיית בעלי עודף המשקל כפי שראינו בניסוי קודם)‪.‬‬
‫יש עוד מאמר בנושא ]‪ [12‬שבלשון המעטה לא לטעמי (הסיבות לדעה שלי הן מחוץ למסגרת עבודה זו)‪,‬אך הם‬
‫השתמשו במאגר מפורסם של תמונות אסירים שנקרא ‪ [13] Morph2‬שמכיל קצת יותר מ‪ 55,000‬תמונות של‬
‫אסירים (יותר מ‪ 80%‬מהם שחורים‪,‬ומעל ‪ 85%‬גברים) כאשר גישה למאגר נמכרת ב‪ .$199‬יחד עם זאת‪,‬המידע‬
‫על ה‪ BMI‬של האסירים לא מפורסם כחלק מהמאגר (הגישה למידע זה היתה רק לכותבי המאמר ]‪.)[12‬‬
‫כהערת אגב‪,‬המאגר הזה נמצא בשימוש כבר יותר מ‪ 12‬שנים עבור הערכת גיל באקדמיה (כולל מאמרים שפורסמו‬
‫למשל ב‪ )cvpr2018‬למרות שהוא מאוד מאוד ‪ biased‬גם מבחינת הגילאים (יש שונות נמוכה ובנוסף אין נוער או‬
‫ילדים)‪,‬וגם מבחינת ההרכב האתני‪/‬מגדרי‪.‬‬
‫בדקתי בעצמי‪,‬ומסתבר שבארה"ב למשל המצב הוא שלכל ‪ State‬יש מאגר אסירים‪,‬וחלק ממאגרים אלה פתוחים‬
‫לגמרי‪-‬לרבות תמונת האסיר‪,‬הגובה והמשקל שלו כאשר התמונה נלקחה‪,‬תאריך לידה מדוייק והתאריך כאשר‬
‫נלקחה התמונה‪,‬המוצא האתני ורשימת העבירות שבוצעו לאורך השנים ע"י אותו אסיר‪.‬‬
‫הגובה והמשקל המדוייקים הם בדיוק מה שהייתי צריך בשלב הזה של העבודה‪.‬‬
‫לכן ובאופן טבעי‪,‬הכנתי מאגר משלי של תמונות אסירים (מכיל מעל ‪ 230,000‬תמונות)‪,‬עם תיוגים מדוייקים של‬
‫משקל\גובה ובנוסף ישנם באופן יחסי הרבה יותר לבנים בתמונות (ההתפלגות היא בערך ‪.)40\60‬‬
‫הנה התפלגות המידע של מאגר זה כפונקציה של ה‪:BMI‬‬
‫‪Prisoners BMI distribution‬‬
‫‪30000‬‬
‫‪25000‬‬
‫‪20000‬‬
‫‪15000‬‬
‫‪#Images‬‬
‫‪10000‬‬
‫‪5000‬‬
‫‪0‬‬
‫‪100‬‬
‫‪80‬‬
‫‪40‬‬
‫‪60‬‬
‫‪0‬‬
‫‪20‬‬
‫‪BMI‬‬
‫איור ‪-35‬התפלגות ה‪BMI‬של האסירים‬
‫כפי שניתן לראות‪,‬אם נשווה עם המאגר שבו ‪ MIT‬השתמשו‪:‬‬
‫‪.1‬מאגר זה גדול פי יותר מ‪100‬‬
‫‪.2‬קיימים אנשים בתת משקל (כלומר‪,‬יותר מ‪ 4‬דוגמאות)‬
‫‪.3‬אין ‪ bias‬לעודף משקל‪,‬ולמעשה יצא גרף שנראה כמו התפלגות נורמלית עם ממוצע של ‪ 24‬בערך‪.‬‬
‫לאחר ‪ Finetuning/Transfer Learning‬על המידע הזה‪,‬אלה התוצאות על ה‪ Test set‬של ‪( MIT‬רציתי להשוות‬
‫את אותן תמונות בדיוק)‪:‬‬
‫‪Classified‬‬
‫‪Obese‬‬
‫‪Overweight‬‬
‫‪Normal‬‬
‫‪1‬‬
‫‪57‬‬
‫‪50‬‬
‫‪Normal‬‬
‫‪23‬‬
‫‪126‬‬
‫‪51‬‬
‫‪Overweight‬‬
‫‪289‬‬
‫‪174‬‬
‫‪8‬‬
‫‪Obese‬‬
‫‪Truth‬‬
‫ניתן לראות שהדיוק (מבחינת הסיווג) על אנשים אשר ה‪ BMI‬שלהם נורמלי עלה‪,‬בעוד שהדיוק על אנשים בעלי‬
‫עודף משקל כבד ירד‪-‬שוב זה כתוצאה ישירה מהתפלגות המידע עליו המערכת למדה‪ .‬בשלב זה לא הייתי מסופק‬
‫מכיוון שהטעות על אנשים שאינם בעלי עודף משקל היא עדיין גדולה ולכן החלטתי לאמן את כל המערכת‬
‫מחדש‪,‬כאשר ‪ BMI‬הוא המשימה ה"חדשה" שהתווספה לשאר המשימות‪,‬ואז התוצאות הן‪:‬‬
‫‪Classified‬‬
‫‪Obese‬‬
‫‪Overweight‬‬
‫‪Normal‬‬
‫‪0‬‬
‫‪14‬‬
‫‪94‬‬
‫‪Normal‬‬
‫‪1‬‬
‫‪45‬‬
‫‪154‬‬
‫‪Overweight‬‬
‫‪29‬‬
‫‪287‬‬
‫‪155‬‬
‫‪Obese‬‬
‫‪Truth‬‬
‫ניתן לראות שקיימת כעת נטיה עבור המסווג לטובת ‪ BMI‬תקין(נורמלי)‪-‬שוב‪,‬מכיוון שכך היא האוכלוסיה‪.‬‬
‫את רוב האנשים בעלי משקל תקין הרשת סיווגה נכון‪,‬אך את רוב אלה בעלי עודף משקל קל‪,‬היא עדיין סיווגה‬
‫בתור עודף משקל תקין‪,‬בעוד שאת אלה בעלי עודף משקל כבד היא סיווגה בתור בעלי עודף משקל קל‪.‬‬
‫למרות אחוז ה"דיוק" הנמוך יותר עבור רשת זו עבור ה‪ Test set‬של ‪(MIT‬זה קורה מכיוון שהקטגוריה הדומיננטית‬
‫שם היא בעלי עודף משקל כבד)‪,‬אעדיף אותה על פני הרשת הראשונה‪,‬שנוטה מאוד לטובת ‪ BMI‬שמתאים לעודף‬
‫משקל כבד‪-‬בכל מקרה אינני מרוצה לגמרי מאף אחת מהתוצאות של הרשתות אותן אימנתי בקטגוריה זו‪.‬‬
‫למרות זאת‪,‬בכל מקרה אני אסיק מכל האמור לעיל (ראה איור ‪-34‬המשערך שלי לעומת המשערך של החבר'ה‬
‫מ‪ MIT‬ולעומת הביצוע האנושי) שזוהי תכונה ניתנת ללמידה‪-‬גם אם ההרגשה שלי היא שאפשר לעשות יותר‪.‬‬
‫‪ 7.3‬מוצא אתני‬
‫‪ 7.3.1‬עבודות קודמות‬
‫ככל הידוע לי‪,‬לא קיימות עבודות קודמות שקרובות לעבודה זו‪.‬‬
‫העבודה הקרובה ביותר שמצאתי ]‪ [14‬יצרה ‪ Dataset‬קטן (‪ 675‬תמונות) והשתמשה בשיטות למידה שמתאימות‬
‫לגודל הקטן (‪ )PCA+SVM‬ואז ניסתה לייצר מסווג בינארי עבור השאלה "האם זהו בריטי פקיסטני או לא?"‪.‬‬
‫‪ 7.3.2‬ניסוי ראשון‪-‬מסווג נאיבי‬
‫כהרגלי‪,‬אסתכל על ביצועי המסווג שהזכרתי בתחילת הפרק‪,‬ואמשיך משם לפי התוצאות שהתקבלו ממסווג זה‪.‬‬
‫כאשר הצגתי את התפלגות האוכלוסיה לפי מוצא אתני (ראה איור ‪-9‬התפלגות הגברים לפי מוצא אתני איור ‪-10‬‬
‫התפלגות הנשים לפי מוצא אתני ) כתבתי שכפי שניתן לראות התפלגות הגברים והנשים לפי מוצא אתני דומה אך‬
‫ההבדלים הם‪:‬‬
‫‪.1‬מספר הנשים ההודיות שקיימות במאגר‪-‬רק קצת יותר מ‪( 2000‬לעומת יותר מ‪ 10‬אלף גברים)‪.‬‬
‫‪.2‬ישנן באופן יחסי‪,‬הרבה יותר נשים שחורות מגברים שחורים במאגר‪.‬‬
‫‪.3‬יש מספר זעום של אנשים ממוצא אסיאתי‪,‬כאשר מספר הגברים בקטגוריה זו כפול ממספר הנשים‪.‬‬
‫כעת נראה אם וכיצד הבדלים אלו משחקים תפקיד עבור המסווג הנאיבי‪.‬‬
‫אציין בקצרה את ביצועי הרשת (מבחינת דיוק‪,‬למרות שהתמונה האמיתית מתבהרת כאשר מסתכלים על ה‬
‫‪ :)confusion matrix‬עבור גברים הביצועים (דיוק) הם ‪ 85.7%‬ועבור נשים ‪.87.1%‬‬
‫בניתי ‪ Confusion matrix‬על סט הולידציה‪,‬ובנוסף רציתי לראות את ההבדל בין גברים לנשים (ניתן לחלק את‬
‫המידע לעוד הרבה מאוד קטגוריות‪-‬אבל רציתי רק לגעת בנושא [גם כך הנגיעה שלי הרבה יותר עמוקה מהמאמר‬
‫]‪ )] [14‬ולכן הרצתי בנפרד את הרשת עבור גברים ועבור נשים‪.‬‬
Classified
Native
Truth
Mixed
Asian
White
American
Black
Latino
Indian
Mixed
130
28
236
0
333
111
10
Asian
11
89
25
0
7
11
12
White
9
17
8159
0
42
88
7
3
2
50
0
57
7
1
Black
75
0
47
0
3513
34
3
Latino
80
28
600
0
76
519
15
Indian
6
7
15
0
5
5
42
Native
American
‫ עבור גברים‬Confusion matrix‫ה‬-36 ‫איור‬
Classified
Native
Truth
Mixed
Asian
White
American
Black
Latino
Indian
Mixed
208
20
188
0
478
286
0
Asian
8
75
12
0
5
37
0
White
17
1
7329
0
23
164
0
5
0
45
0
23
23
0
Black
82
3
42
0
4415
43
0
Latino
53
0
259
0
36
746
2
Indian
4
12
0
14
9
1
Native
American
‫ עבור נשים‬Confusion Matrix‫ה‬-37 ‫איור‬
‫אפשר ללמוד הרבה מאוד ממטריצות אלה‪ .‬הדברים שבולטים בעיניי‪:‬‬
‫‪ .1‬המסווג לא הכליל עבור נשים הודיות ‪( -‬ישנן ‪ 2000‬נשים הודיות ו‪ 10000‬גברים הודים במאגר‪ -‬שניהם‬
‫הם אחוזים זעומים במאגר הכללי) –אחוז הדיוק עבור נשים הודיות הוא אפסי (סיווג נכון רק הודית‬
‫אחת)‪,‬בעוד שאת רוב הגברים ההודיים המסווג סיווג נכון‪ .‬זה מצביע על נקודת חולשה בולטת מבחינת‬
‫יכולת ההכללה בנושא "גברים‪-‬נשים" ואותו רקע אתני‪.‬‬
‫‪ .2‬המסווג יודע לזהות בצורה יותר טובה נשים לטיניות לעומת גברים לטיניים (למעשה הדיוק עבור גברים‬
‫לטיניים קטן מ‪ -50%‬והוא נוטה להתבלבל עם גברים שחורים)‪ .‬זו תוצאה מעניינת‪ :‬אומנם במאגר יש‬
‫באופן יחסי פחות גברים לטיניים (לעומת נשים לטיניות) אבל הרבה יותר נשים שחורות(יותר מ‪ 400‬אלף‬
‫לעומת יותר מ‪ 200‬אלף גברים שחורים) ולכן הייתי מצפה שיהיה למסווג יותר "משתלם" "להתבלבל"‬
‫לכיוון נשים שחורות‪ .‬הדבר עשוי להצביע על סוג של "רוויה"‪-‬כלומר במקרה הספציפי הזה‪,‬מעל מספר‬
‫מסויים של תמונות‪,‬עוד תמונות לא מלמדות "הרבה" את המסווג‪.‬‬
‫‪ .3‬באופן יחסי למספר הזעום של אסיאתים במאגר‪,‬המסווג נותן ביצועים מצויינים בקטגוריה זו‪,‬וכצפוי עבור‬
‫גברים הביצועים הם יותר גבוהים מאשר עבור נשים‪.‬‬
‫‪ .4‬המסווג לא סיווג אפילו תמונה אחת בתור אינדיאני (‪-)Native American‬וזאת למרות שמספר הדוגמאות‬
‫שיש למסווג באותו סדר גודל של האנשים האסיאתיים(ישנן יותר נשים אינדיאניות מאסיאתיות)‪ .‬ניתן‬
‫להסיק מכך שזו משימה יותר קשה‪.‬‬
‫מסקנות מהניסוי הראשוני (רשימת ה"קניות" על מנת שהמסווג יהיה ברמה גבוהה)‪:‬‬
‫עליי להוסיף עוד תמונות של נשים הודיות באופן דחוף (עוד תמונות של הודים בהחלט לא יזיקו)‬‫עליי להוסיף עוד תמונות של עוד גברים לטיניים (עוד תמונות של נשים לטיניות לא יזיקו)‬‫‪-‬אופציונלי לצרכי מחקר‪:‬להוסיף עוד תמונות של אינדיאנים‪.‬‬
‫הוספתי פרופילים בהתאם לרשימה לעיל‪,‬ואחרי ההוספה התפלגות האוכלוסיה לפי מוצא אתני היא כזו‪:‬‬
‫‪Males by ethnicity‬‬
‫‪682129‬‬
‫‪146024‬‬
‫‪210583‬‬
‫‪68593‬‬
‫‪Indian‬‬
‫‪70308‬‬
‫‪12490‬‬
‫‪Latino‬‬
‫‪Black‬‬
‫‪Native‬‬
‫‪American‬‬
‫‪White‬‬
‫‪Asian‬‬
‫‪126742‬‬
‫‪800000‬‬
‫‪700000‬‬
‫‪600000‬‬
‫‪500000‬‬
‫‪400000‬‬
‫‪300000‬‬
‫‪200000‬‬
‫‪100000‬‬
‫‪0‬‬
‫‪Mixed‬‬
‫‪#Images‬‬
‫איור ‪-38‬התפלגות הגברים לפי מוצא אתני לאחר ההוספה‬
‫‪Females by ethnicity‬‬
‫‪700000‬‬
‫‪604332‬‬
‫‪600000‬‬
‫‪500000‬‬
‫‪430270‬‬
‫‪400000‬‬
‫‪300000‬‬
‫‪157479‬‬
‫‪27743‬‬
‫‪59969‬‬
‫‪16914‬‬
‫‪92463‬‬
‫‪200000‬‬
‫‪100000‬‬
‫‪0‬‬
‫‪Indian‬‬
‫‪Latino‬‬
‫‪Black‬‬
‫‪Native‬‬
‫‪American‬‬
‫‪White‬‬
‫‪Asian‬‬
‫‪Mixed‬‬
‫‪#Images‬‬
‫איור ‪-39‬התפלגות הנשים לפי מוצא אתני לאחר ההוספה‬
‫לאחר ההוספה הנ"ל (קצת יותר מ‪ 340,000‬תמונות הוספו) מדדתי ביצועים על אותו סט ולידציה בדיוק(ללא‬
‫שינוי)‪ .‬הדיוק עבור נשים וגברים בהתאמה‪( 86.0%,86.7%:‬במדד הזה הביצועים כמעט זהים לחלוטין לביצועים‬
‫שלפני הוספת קבוצות המיעוט) ואלה ה‪ Confusion matrix‬לאחר ההוספה‪:‬‬
‫‪Classified‬‬
‫‪Native‬‬
‫‪Latino‬‬
‫‪Indian‬‬
‫‪Black‬‬
‫‪American‬‬
‫‪Asian‬‬
‫‪White‬‬
‫‪Mixed‬‬
‫‪Truth‬‬
‫‪51‬‬
‫‪152‬‬
‫‪372‬‬
‫‪0‬‬
‫‪183‬‬
‫‪35‬‬
‫‪57‬‬
‫‪Mixed‬‬
‫‪25‬‬
‫‪14‬‬
‫‪4‬‬
‫‪0‬‬
‫‪9‬‬
‫‪102‬‬
‫‪1‬‬
‫‪Asian‬‬
‫‪42‬‬
‫‪171‬‬
‫‪39‬‬
‫‪0‬‬
‫‪8053‬‬
‫‪17‬‬
‫‪3‬‬
‫‪White‬‬
‫‪3‬‬
‫‪14‬‬
‫‪58‬‬
‫‪0‬‬
‫‪44‬‬
‫‪1‬‬
‫‪0‬‬
‫‪10‬‬
‫‪38‬‬
‫‪3547‬‬
‫‪0‬‬
‫‪43‬‬
‫‪5‬‬
‫‪29‬‬
‫‪Black‬‬
‫‪51‬‬
‫‪682‬‬
‫‪98‬‬
‫‪0‬‬
‫‪407‬‬
‫‪41‬‬
‫‪41‬‬
‫‪Latino‬‬
‫‪57‬‬
‫‪4‬‬
‫‪6‬‬
‫‪0‬‬
‫‪10‬‬
‫‪1‬‬
‫‪2‬‬
‫‪Indian‬‬
‫‪Native‬‬
‫‪American‬‬
‫איור ‪ -40‬ה‪ Confusion matrix‬עבור גברים‬
‫‪Classified‬‬
‫‪Native‬‬
‫‪Latino‬‬
‫‪Indian‬‬
‫‪Black‬‬
‫‪American‬‬
‫‪Asian‬‬
‫‪White‬‬
‫‪Mixed‬‬
‫‪Truth‬‬
‫‪7‬‬
‫‪258‬‬
‫‪525‬‬
‫‪0‬‬
‫‪179‬‬
‫‪46‬‬
‫‪165‬‬
‫‪Mixed‬‬
‫‪2‬‬
‫‪19‬‬
‫‪6‬‬
‫‪0‬‬
‫‪13‬‬
‫‪95‬‬
‫‪2‬‬
‫‪Asian‬‬
‫‪5‬‬
‫‪210‬‬
‫‪29‬‬
‫‪0‬‬
‫‪7256‬‬
‫‪19‬‬
‫‪15‬‬
‫‪White‬‬
‫‪0‬‬
‫‪17‬‬
‫‪28‬‬
‫‪0‬‬
‫‪45‬‬
‫‪2‬‬
‫‪4‬‬
‫‪1‬‬
‫‪39‬‬
‫‪4452‬‬
‫‪0‬‬
‫‪37‬‬
‫‪4‬‬
‫‪52‬‬
‫‪Black‬‬
‫‪20‬‬
‫‪751‬‬
‫‪57‬‬
‫‪0‬‬
‫‪226‬‬
‫‪24‬‬
‫‪30‬‬
‫‪Latino‬‬
‫‪6‬‬
‫‪7‬‬
‫‪13‬‬
‫‪0‬‬
‫‪1‬‬
‫‪1‬‬
‫‪4‬‬
‫‪Indian‬‬
‫‪Native‬‬
‫‪American‬‬
‫איור ‪ -41‬ה‪ Confusion matrix‬עבור נשי‬
‫מהשוואה בין הביצועים לפני ההוספה ואחריה‪,‬אפשר לומר "בגדול" שה"תשלום" עבור ביצועים יותר טובים עבור‬
‫קבוצות המיעוט(קבוצות אתניות שמופיעות בצורה פחות שכיחה במאגר המידע) הוא ביצוע מעט פחות טוב על‬
‫קבוצות הרוב(לבנים ושחורים‪-‬שכיחים במאגר המידע)‪ .‬במילים אחרות‪,‬המסווג הגזעני בעולם צריך חיזוקים של‬
‫קבוצות המיעוט‪.‬‬
‫קונקרטית הנה הביצועים לפני ואחרי על קבוצות הרוב (לבנים ושחורים) (הנתונים הבאים ניתנים לחישוב ישירות‬
‫מ‪ 4‬ה‪ confusion matrices‬שהובאו ולנוחיות הקורא)‪:‬‬
‫‪Black‬‬
‫‪Black‬‬
‫‪Male Female‬‬
‫‪White‬‬
‫‪White‬‬
‫‪Accuracy‬‬
‫‪Male Female‬‬
‫‪96.3%‬‬
‫‪97.2% 95.7%‬‬
‫‪Before 98.0%‬‬
‫‪96.7%‬‬
‫‪96.3% 96.6%‬‬
‫‪After 96.7%‬‬
‫ניתן לראות שהביצועים ירדו באחוז בערך על הלבנים בעוד שאין הבדל עבור השחורים (עבור גברים שחורים‬
‫הביצועים עלו מעט‪,‬אך לדעתי זה כנראה מהאופי הסטוכססטי של האימון)‪.‬‬
‫נבחן את קבוצות המיעוט לפני ואחרי ההוספה‪.‬‬
‫‪Latin‬‬
‫‪Latian‬‬
‫‪Indian‬‬
‫‪Indian‬‬
‫‪Asian‬‬
‫‪Female‬‬
‫‪Male‬‬
‫‪Male Female‬‬
‫‪68.0%‬‬
‫‪39.3%‬‬
‫‪2.5%‬‬
‫‪52.5%‬‬
‫‪67.8%‬‬
‫‪51.6%‬‬
‫‪69.3% 71.25% 18.75%‬‬
‫‪Male Female‬‬
‫‪54.7%‬‬
‫‪Asian‬‬
‫‪Accuracy‬‬
‫‪Before 57.4%‬‬
‫‪After 65.8%‬‬
‫ניתן לראות שהביצועים עבור קבוצות המיעוט עלה (כצפוי)‪ -‬פרט ל‪ 2‬הפתעות‪-‬ביצועים גרועים עבור נשים הודיות‪,‬‬
‫(התירוץ הוא שהוספתי "רק" כ‪ 20‬אלף תמונות של נשים הודיות)‪-‬ובנוסף הופתעתי לגלות שהביצוע עבור נשים‬
‫לטיניות לא עלה‪,‬למרות שמספר הדוגמאות גדל ב‪( 50%‬מ‪ 100‬ל‪ 150‬אלף)‪ .‬בנוסף‪,‬עדיין שום תמונה לא סווגה‬
‫כאינדיאני‪-‬מה שמעיד על קושי המסווג עבור קבוצה אתנית זו‪.‬‬
‫בכל אופן‪,‬ניתן לראות שהביצועים עבור רוב הקבוצות האתניות הוא יותר טוב מביצוע אקראי (ולמעשה עבור כמעט‬
‫כל הקבוצות האתניות‪,‬הדיוק הוא מעל ‪,50%‬למרות התפלגות המידע)‪.‬‬
‫בתור עבודה עתידית‪,‬אפשר לקחת התפלגות אחידה של הקבוצות האתניות השונות ולראות איך הביצועים‬
‫משתנים‪,‬וגם להבין מה גורם למסווג להחליט לאיזו קבוצה אתנית תמונה שייכת (אני מניח שזה עשוי להיות נושא‬
‫רגיש)‪.‬‬
‫‪ 7.3‬מזלות‬
‫ככל הידוע לי‪,‬לא קיימות עבודות קודמות בנושא שערוך מזל לפני תמונות פנים‪.‬‬
‫בכל מקרה‪,‬יש אנשים שמאמינים בעיניין של מזלות‪,‬הורוסקופים וכו‘ –ומאמינים שאנשים ששייכים למזלות שונים‬
‫הם בעלי אופי שונה‪,‬ואף שכוכבי לכת שונים משפיעים על המזלות השונים‪.‬‬
‫בפרק זה אשאל את השאלה‪-‬האם ניתן ללמוד איזה מזל אדם מסויים מתמונות פנים?‬
‫בחרתי לא להציג גרף של מספר התמונות כפונקציה של המזל מפני שההתפלגות כמעט אחידה‪.‬‬
‫‪ 7.3.1‬ניסוי‪-‬מסווג נאיבי‬
‫בניסוי זה אבחן את ביצועי המסווג הנאיבי באותה שיטתיות בה בחנתי את ביצועיו בפרקים קודמים‪.‬‬
‫מכיוון שביצועי המסווג (פר מזל) לא היו טובים‪,‬בחרתי לשאול אם בכלל יש "אות" כלשהוא‪.‬‬
‫עשיתי זאת בדרך הבאה‪ :‬עבור כל תמונה בסט הולידציה‪,‬נסתכל על ‪ 6‬המזלות הכי "סבירים" מבחינת המסווג‪.‬‬
‫אם המזל הנכון נמצא שם‪,‬הסיווג יחשב נכון‪,‬אחרת יחשב לא נכון‪.‬‬
‫לאחר מכן‪,‬אשווה את ביצועי המסווג‪,‬למסווג שתמיד מוציא כפלט את ‪ 6‬המזלות הכי נפוצים במאגר (הוא "מסווג"‬
‫לאותן מזלות בלי קשר לתמונה ולכן אקרא לו מעתה "המסווג הקבוע")‪.‬‬
‫בנוסף‪,‬מכיוון שחילקתי את התוצאות לנשים וגברים בנפרד בפרקים הקודמים‪,‬אציג את התוצאות באותה צורה‬
‫בקטגוריה זו‪.‬‬
‫התוצאות עבור נשים‪:‬‬
‫‪ 53.6%‬הצלחה (כפי שהגדרתי לעיל) למסווג שאימנתי‪ 51.7%,‬למסווג הקבוע‪.‬‬
‫התוצאות עבור גברים‪:‬‬
‫‪ 50.9%‬הצלחה למסווג שאימנתי‪ 52.4%,‬למסווג הקבוע‪.‬‬
‫כפי שאולי ניתן היה לצפות מראש‪,‬התוצאות עבור המסווג שאימנתי אינן יותר טובות מה"מסווג הקבוע"‪.‬‬
‫בנוסף‪,‬ההתפלגות של מאגר המידע היא כמעט אחידה כפונקציה של המזל (בניגוד לפרק על נטיה מינית למשל‪,‬בו‬
‫שיניתי את התפלגות האוכלוסייה שעליה המסווג למד) ולכן בשלב זה אסיק שמזל אינו ניתן ללמידה מתמונות‬
‫פנים (לפחות לא עם האלגוריתמים הכי מתקדמים שקיימים היום)‪.‬‬
‫יש לציין שפלט המסווג עבור קטגוריה זו הוא גם "אחיד"‪-‬כלומר ה"הסתברות" היא בערך ‪ 1/12‬לכל מזל עבור רוב‬
‫התמונות‪.‬‬
‫‪ 7.4‬אינטלגנציה\השכלה‬
‫‪ 7.4.1‬עבודות קודמות‬
‫בעבודה היחידה שידועה לי ]‪ [15‬בנושא שיערוך אינטלגנציה בעזרת תמונה‪,‬מדדו את האינטלגנציה של ‪80‬‬
‫סטודנטים לביולוגיה (‪ 40‬גברים‪ 40,‬נשים) ואז נתנו ל‪ 160‬מדרגים (מהפקולטה ללימודים הומניסטיים) לשערך את‬
‫רמת האינטלגנציה של כל אחד מה‪ 80‬הללו‪ .‬בעבודה זו הגיעו למסקנה שיש קורלציה גבוהה בין השיערוך לבין‬
‫רמת ה אינטלגנציה כאשר משערכים תמונה של גבר‪,‬אבל לא בתמונה של אישה (בלי קשר למין האדם שמשערך)‪.‬‬
‫‪ 7.4.2‬ניסויים‪-‬שיערוך רמת האינטלגנציה באמצעות רמת ההשכלה‬
‫בעולם אידאלי‪,‬כחלק ממאגר המידע‪,‬היה לי המידע לגבי רמת המשכל המדוייקת עבור כל אחת מהתמונות‪-‬אבל זה‬
‫לא המצב‪ .‬לכן בחלק זה אתייחס ל‪ IQ‬בתור ‪ latent variable‬אשר תלוי במשתנה אחר שהוא כן ‪-Observable‬‬
‫רמת ההשכלה‪ .‬לרמת ההשכלה יש לי תיוג מדוייק עבור מליוני אנשים ולכן בחרתי בדרך זו‪ .‬אציין שדרך זו נובעת‬
‫לא רק מההיגיון שלי אלא גם מבוססת על מחקרים (למשל ]‪ ([16‬שמראים קשר ישיר בין משתנים אלה‪.‬‬
‫אציין שיש עוד משתנים שיכולים להשפיע (גיל‪,‬רקע סוציו‪-‬אקונומי‪,‬נסיבות חיים) על רמת ההשכלה‪,‬אך בעבודה זו‬
‫אתייחס לשאר המשתנים בתור "רעש"‪-‬בין אם יש לי הנתונים המתאימים כדי לבודד אותם ובין אם לא‪.‬‬
‫‪ 7.4.3‬התוצאות על המסווג הנאיבי‬
‫בחרתי הפעם שלא להביא את ה‪ Confusion matrix‬של הסיווג של המסווג ה"נאיבי" (אותו מסווג שהזכרתי‬
‫בתחילת הפרק שאומן על יותר מ‪ 3‬מיליון תמונות‪-‬שמרתי את המטריצה למקרה הצורך) מכיוון שמצאתי שהיא לא‬
‫אינפורמטיבית‪,‬אלא פשוט לכתוב את המסקנות‪:‬‬
‫‪.1‬כצפוי‪,‬המחלקה אליה המסווג נוטה היא ‪– High School‬המחלקה הנפוצה ביותר ב‪ Data‬שיש לי‪.‬‬
‫‪.2‬ככל שרמת ההשכלה עלתה‪,‬כך גם הנטיה של המסווג לסווג את האדם בתור בעל השכלה‬
‫‪. 3‬מעיון (ידני) על פני מספר אנשים‪,‬ניכר שהתפלגות מוצא המסווג שונה לגמרי עבור אנשים בעלי השכלות שונות‪.‬‬
‫בשלב זה נשים לב שהתיוגים לגבי ההשכלה יחודיים מפני שאפשר לדבר כאן על יחס בין התוויות‪,‬כלומר אנחנו‬
‫נצפה (בממוצע!) למשל שאדם בעל דוקטורט יהיה בעל מנת משכל גדולה יותר מאדם בעל תואר ראשון‪ ,‬ואדם‬
‫בעל תואר ראשון באותו אופן בעל מנת משכל גדולה (שוב‪,‬בממוצע!) יותר מאדם שסיים תיכון‪.‬‬
‫‪ 7.4.3‬ניסוי שני‪-‬האם ישנו אות משמעותי?‬
‫בהתאם לכך ובצורה הפשוטה ביותר‪,‬כדי לראות אם יש איזהשהוא "אות" שאפשר לפרשו בצורה פשוטה‪,‬החלטתי‬
‫ל בצע "המרה" ישירה מרמת ההשכלה לרמת האינטלגנציה ע"י הטבלה הבאה (הנתונים התקבלו במחקר שנעשה‬
‫בארה"ב ומתייחסים לממוצע של כל קבוצת אנשים)‪:‬‬
‫‪Education Level IQ level‬‬
‫‪87‬‬
‫‪No High School Diploma‬‬
‫‪99‬‬
‫‪High School‬‬
‫‪104‬‬
‫‪Associate degree‬‬
‫‪113‬‬
‫‪Bachelor’s degree‬‬
‫‪117‬‬
‫‪Master’s degree‬‬
‫‪124‬‬
‫‪Phd and up‬‬
‫איור ‪-42‬ההמרה מרמת ההשכלה לרמת האינטלגנציה‬
‫בהינתן פלט המסווג (למרות שלא מדובר בהסתברויות ממש גם כאשר זהו הפלט של ‪,Softmax‬אתייחס לפלט‬
‫המסווג בתור הסתברויות)‪,‬אעריך עבור כל אדם את תוחלת מנת המשכל שלו בהתאם לטבלה הנ"ל (כלומר אכפיל‬
‫את ה"הסתברויות" שמוציא המסווג לכל מחלקה‪,‬בממוצע המצויין באיור ‪-42‬ההמרה מרמת ההשכלה לרמת‬
‫האינטלגנציה המתאים לכל מחלקה)‪.‬‬
‫אז הנה הניסוי עצמו‪ :‬באופן דומה לגישה בה נקטו בסטנפורד בהערכת נטיה מינית‪,‬בכל "תת ניסוי" אריץ את‬
‫האלגוריתם על ‪ 2‬תמונות של אנשים בעלי השכלה שונה‪,‬ועבור כל אחד מהם אעריך בעזרת המסווג את מנת‬
‫המשכל בדרך שתיארתי לעיל‪ .‬אם מנת המשכל המשוערכת של האדם בעל ההשכלה הגבוהה יותר יותר גבוהה‬
‫ממנת המשכל המשוערכת של האדם השני‪,‬אחשיב תת ניסוי זה ל"האלגוריתם הצליח"‪,‬אחרת "האלגוריתם נכשל"‪.‬‬
‫ביצעתי ‪" 40,000‬תתי ניסויים" כאלה על זוגות של תמונות עבור כל מגדר‪,‬ובנוסף לכך שמרתי את הנתונים לפי‬
‫ההבדל האמיתי בין רמות ההשכלה‪-‬למשל ההבדל בין בעל תואר דוקטור (‪ )124‬לבין בעל תואר שני (‪ )117‬יהיה‬
‫‪.124-117=7‬‬
‫הנה התוצאות עבור ‪ 2*40,000‬תת הניסויים‪,‬מחולקים כהרגלי לפי מגדר‪,‬כאשר כל גרף מוצג כפונקציה של הבדל‬
‫המושערך בין מנות המשכל (לפי התיוגים האמיתיים של רמות ההשכלה‪,‬מומרים על פי איור ‪-42‬ההמרה מרמת‬
‫ההשכלה לרמת האינטלגנציהלמנות משכל משוערכות)‪:‬‬
‫‪Accuracy vs difference in estimated‬‬
‫‪IQ-Female‬‬
‫‪100.00%‬‬
‫‪80.00%‬‬
‫‪60.00%‬‬
‫‪40.00%‬‬
‫‪20.00%‬‬
‫‪0.00%‬‬
‫‪30‬‬
‫‪25‬‬
‫‪20‬‬
‫‪15‬‬
‫‪10‬‬
‫‪5‬‬
‫‪0‬‬
‫‪Difference in IQ estimate‬‬
‫איור ‪-43‬הצלחת המסווג עבור נשים כפונקציה של ההבדל המשוערך בין מנת המשכל‬
‫‪Accuracy vs difference in estimated‬‬
‫‪IQ-Male‬‬
‫‪100.00%‬‬
‫‪80.00%‬‬
‫‪60.00%‬‬
‫‪40.00%‬‬
‫‪20.00%‬‬
‫‪0.00%‬‬
‫‪30‬‬
‫‪25‬‬
‫‪20‬‬
‫‪15‬‬
‫‪10‬‬
‫‪5‬‬
‫‪0‬‬
‫‪Difference in IQ estimate‬‬
‫איור ‪ -44‬הצלחת המסווג עבור גברים כפונקציה של ההבדל המשוערך בין מנת המשכל‬
‫מהגרפים לעיל אפשר להסיק מספר דברים‪:‬‬
‫‪. 1‬אפשר לראות שככל שההבדל בין האייקיו המשוערך (יש לזכור שהוא פשוט תלוי בהבדל בין רמות ההשכלה של‬
‫שני האנשים בכל תת ניסוי שכזה) גדל‪,‬כך גם למסווג יותר קל להבחין בין האדם בעל "מנת המשכל" הגבוהה יותר‬
‫ל"מנת המשכל" הנמוכה יותר‬
‫‪ .2‬ישנו "אות" ברור למרות הרעש (כאמור‪,‬רמת ההשכלה תלויה בהרבה גורמים שונים‪,‬שהתייחסתי אליהם כאל‬
‫רעש‪-‬אך ברור שאותו אדם ממש בנסיבות שונות עשוי להיות ללא תואר או בעל דוקטורט)‪.‬‬
‫‪.3‬בניגוד למחקר הפסיכולוגי שפורסם בעבר (]‪ ) [15‬אני לא רואה הבדל מהותי מאוד בין הערכת אינטלגנציה‬
‫בגברים או בנשים (המחקר הגיע למסקנה שעבור נשים‪,‬אנשים לא יכולים להבחין ברמת האינטלגציה על סמך‬
‫תמונות)‪.‬‬
‫זה יכול לנבוע ממספר סיבות‪:‬‬
‫יתכן שמספר הדגימות במחקר שציינתי (היו סה"כ ‪ 80‬תמונות) לא היה מספיק גדול‪ .‬בנוסף‪,‬הדגימות נעשו‬‫מסטודנטים בלבד‪,‬ואני לא בטוח שבכל אופן זו אוכלוסיה שמייצגת היטב את האוכלוסיה הכללית‪.‬‬
‫יתכן שאנשים מסווגים אינט לגנציה פחות טוב בנשים לעומת האלגוריתם (אציין שזוהי ממש השערה לא‬‫מבוססת‪,‬אני חושב שאפשר לאשש מדעית השערה כזו רק כאשר משווים את הביצועים על אותו ‪.)Data‬‬
‫ניסיתי להשיג את התמונות מהמחקר שציינתי‪,‬אך הכותב הראשי (פרופסור ירוסלב) אמר שאין לו רשות‬
‫מהנבדקים לפרסם את התמונות‪( .‬המאמר עצמו משתף איזוהיא טבלת אקסל בלבד ללא תמונות בתור‬
‫ה”‪.)”dataset‬‬
‫בכל מקרה‪,‬התוצאות הנ"ל לא משאירות לי מנוס מלהגיע למסקנה הסנסציונית שהאלגוריתמים שקיימים היום‬
‫יכולים להבחין באינטלגנציה‪,‬גם בגברים וגם בנשים!‬
‫‪ 7‬תוצאות‪-‬סיכום‬
‫סיכום התוצאות מהפרק הקודם‪:‬‬
‫הראיתי שניתן ללמוד מבנה גוף‪,‬מוצא אתני‪,‬אינטלגנציה וגם נטיה מינית (במובן מסויים) אך לא מזל‪.‬‬
‫בנוסף ראינו פעם אחר פעם את רגישות האלגוריתמים שקיימים כיום להתפלגות האוכלוסיה עליה מתאמנים‪.‬‬
‫מכיוון שעבודה זו נכתבת בסגנון שלי‪-‬אציג את סיכום התוצאות גם בדרך שלי‪.‬‬
‫בסופו של יום‪ ,‬מה שהכי רלוונטי בעיניי הוא‪ ,‬איך האלגוריתם עובד בעולם האמיתי‪.‬‬
‫‪ 7.1‬השוואה ל‪ Microsoft‬ו‪Amazon‬‬
‫ב"עולם האמיתי" יש לי משהו יפה להראות‪:‬‬
‫קיים אתר של ‪ /https://www.how-old.net Microsoft‬שמשתמש ב‪ API‬ש‪ Microsoft‬מוכרים בכסף (‪.)per call‬‬
‫יש לציין ש‪ Microsoft‬כבר מספר שנים משפרים את ביצועי המערכת שלהם (הנה קטע משעשע מתחילת הדרך‬
‫של האתר של ‪-Microsoft‬‬
‫‪)https://www.youtube.com/watch?v=xv-_ctQpIuY‬‬
‫בנוסף יש ל‪ Amazon‬שירות שנקרא ‪( Amazon Rekognition‬ה‪ K-‬זו לא טעות) ושוב‪,‬אמאזון מציעים למפתחים‬
‫גישה ל‪ API‬שמעריך גיל ומגדר‪.‬‬
‫אני בניתי אתר (חובבני‪,‬אני יודע‪-‬סה"כ הקדשתי רק מספר שבועות ללימוד בניית אתרים וגם שרת)‪.‬‬
‫‪ http://how-look.com‬והעליתי את אלגוריתם הלמידה העמוקה לשרת‬
‫כך שכל אחד יכול להריץ תמונה ולהשוות את האלגוריתם שלי עם האלגוריתמים של ‪ Microsoft‬ו‪.Amazon‬‬
‫האתר שלי עובד בצורה פשוטה ע"י גרירת תמונה ל‪ Browser‬או בחירת קובץ‪.‬‬
‫קשה לי לומר בכמה‪ ,‬וה"כמה" תלוי באיזה סט תמונות לוקחים‪ ,‬אבל באופן כללי האלגוריתם שלי עובד יותר טוב‬
‫מהאלגוריתמים ש ‪ Microsoft‬ו‪ Amazon‬פיתחו במשך הזמן(היו להם מספר שנים)‪,‬גם מבחינת חיזוי המגדר וגם‬
‫מבחינת חיזוי הגיל‪( .‬לצערי אין אפשרות להשוות קטגוריות אחרות שאימנתי‪-‬כי הן לא קיימות בחברות הנ"ל)‪.‬‬
‫בשלב זה אני בוחר באתר להביא את כל הנתונים לרבות אינטלגנציה (בצורת "נראה יותר חכם מאיקס אחוזים‬
‫מהאוכלוסיה"‪,‬כאשר אני משווה את הנתונים לאוכלוסיית סט הבוחן) פרט לפלט המסווג על הנטיה המינית למרות‬
‫שראינו שנטיה מינית היא בעיה יותר "קלה" מאינטלגנציה‪-‬מכיוון שזהו נושא רגיש ואי הדיוקים כרגע "גדולים" מדי‬
‫לטעמי‪.‬‬
‫‪ 7.2‬הערה קטנה‬
‫עיניין שאף מאמר מעשרות המאמרים שקראתי בתחום חיזוי הגיל ע"י תמונה לא התייחס אליו‪ ,‬אבל שמתי לב אליו‬
‫בפועל‪ ,‬הוא ההבדל בין גיל כרונולוגי לגיל ביולוגי‪.‬‬
‫כלומר אדם יכול להיות בגיל ביולוגי נמוך או גבוה מהגיל הכרונולוגי שלו ]‪.[17‬‬
‫הדבר ניכר כאשר לקחתי תמונות של עצורים מארה"ב‪ -‬באופן כללי הגיל החזוי היה יותר גבוה מהגיל הכרונולוגי‬
‫(אני מניח שהדבר נובע מנסיבות חיים יותר קשות‪,‬אך יתכן שמאורח חיים פחות בריא [עישון‪,‬סמים‪,‬אלכוהול])‪.‬‬
‫אני לא מבין דבר בתחום אז אני לא יכול להרחיב‪,‬אבל אני חושב שחשוב לציין את זה‪.‬‬
‫באופ ן כללי‪ ,‬אם האוכלוסיה עליה מריצים את האלגוריתם תהיה שונה מהותית מהאוכלוסיה עליה אימנתי את‬‫הרשת‪ ,‬אצפה לתוצאות פחות טובות באופן יחסי‪.‬‬
‫‪ 9‬עבודות המשך אפשריות‬
‫השקעתי בעבודה זו הרבה מאוד‪,‬אך אציין מספר דברים מעניינים שהייתי עושה אם היה לי אינסוף זמן (אעבוד‬
‫בזמני החופשי על חלק מהדברים שאני הולך לציין)‪:‬‬
‫‪.1‬נטיה לאלימות ‪:‬מאגר האסירים שהורדתי מאפשר לדעת אילו עבירות כל אסיר ביצע‪,‬ונראה לי מעניין אם אפשר‬
‫(למשל) ללמוד נטיה לאלימות של אדם בהינתן תמונה בלבד‪.‬‬
‫‪.2‬בריאות‪:‬יש לי מידע על הרגלי עישון‪,‬שתיה‪,‬צריכת סמים ומידת פעילות ספורטיבית‪-‬מעניין אם למידה אפשרית‬
‫בתחום זה‪.‬‬
‫‪.3‬ילדים ‪:‬בעזרת סיווג גילאים ומגדר (שנלמדו כחלק מהמסווג אך לא הוצגו מכיוון שהרבה עבודות קודמות הראו‬
‫שזה אפשרי) הורדתי מיליוני תמונות של משפחות‪-‬מעניין אם בהינתן זוג‪,‬מהו "מרחב הילדים" אותו הם יכולים‬
‫לעשות (אני מכיר הרבה אחים ואחיות שדומים מבחינה חיצונית כך שאני מעריך שמרחב זה "לא גדול") ואם‬
‫מרחב זה ניתן ללמידה מתמונות הורים וילדיהם בלבד‪( .‬אציין שהאלגוריתמים הגנרטיביים שבשימוש כיום לוקים‬
‫בחסר לטעמי‪,‬בפרט תשאל כל "מומחה" ל ‪ GAN‬איך הוא בחר את קצב הלמידה)‪.‬‬
‫רשימת מקורות‬
]1[
.pp. 41-75, 1997 ,28 ‫ כרך‬,Machine learning ”,Multitask learning “ ,R. Caruana
]2[ The prevalence of homosexual behavior and attraction in the United “ ,R. L. J. A. W. a. D. W. Sell
Archives of ”,.States, the United Kingdom and France: Results of national population-based samples
.pp. 235-248, 1995 ,sexual behavior 24.3
]3[ Journal of Machine
”,Random search for hyper-parameter optimization“ ,J. a. Y. B. Bergstra
.pp. 281-305, 2012 ,Learning Research
]4[ Deep neural networks are more accurate than humans at detecting sexual “ ,Y. a. M. K. Wang
.2017 ”,orientation from facial images
]5[ by homosexual and )”gaydar“( Detection of sexual orientation“ ,B. D. Lyons .& .M. L. A. B. G
.pp. 345-352, 2014 ,Archives of sexual behavior ”,.heterosexual women
]6[ Accuracy of judgments of sexual orientation from thin slices of “ ,N. M. H. a. B. C. Ambady
.1999 , Journal of personality and social psychology 77.3 ”,.behavior
]7[ Female sexual orientation is perceived accurately, rapidly, and “ ,N. O. N. A. a. K. C. H. Rule
pp. ,Journal of Experimental Social Psychology 45.6 ”,.automatically from the face and its features
.1245-1251, 2009
]8[ Advances in neural ”,.Selective classification for deep neural networks“ ,Y. a. R. E.-Y. Geifman
.2017 ,information processing systems
]9[ Face-to-BMI: using computer vision to infer body “ ,W. I. Kocabey .& .E. C. M. O. F. A. Y. M. J. T. A
.2017 ,.arXiv preprint arXiv:1703.03156 ”,.mass index on social media
]10[ ”,.Face-to-BMI: using computer vision to infer body mass index on social media“ ,E. e. a. Kocabey
.2017 ,arXiv preprint arXiv:1703.03156
]11[ Proceedings ”,Dex: Deep expectation of apparent age from a single image“ ,R. T. a. L. V. G. R. Rothe
.2015 ,of the IEEE International Conference on Computer Vision Workshops
]12[ ”,A computational approach to body mass index prediction from face images“ ,L. a. G. G. Wen
.2013 ,Image and Vision Computing
]13[
.2006 ,IEEE Conf. on AFGR ”,a longitudinal image database of normal adult “ ,T. T. M. K. Ricanek
]14[ A Machine Learning Approach for Ethnic Classification: The “ ,M. T. Jilani .& .S. K. U. H. B. A. M. L. A
.2017 ,Cyberworlds (CW), 2017 International Conference IEEE ”,British Pakistani Face
]15[ Perceived intelligence is associated with measured intelligence in men but “ ,K. V. C. a. J. F. Kleisner
.2014 ,PloS one ”,not women
]16[ Increased educational level is related with higher IQ “ ,O. A. Tommasi .& .M. P. L. C. R. A. F. J. S. A
”,scores but lower g-variance: evidence from the standardization of the WAIS-R for Italy
.2015 ,Intelligence
]17[ Statistical Models and Methods ”,.Virtual (Biological) Age Versus Chronological Age“ ,M. Finkelstein
.pp. 69-81, 2008 ,for Biomedical and Technical Systems. Birkhäuser Boston
Download