גידול מוחי הוא אחת המחלות המאיימות ביותר בעולם. אבחנה מדויקת יכולה להשפיע לטובה על הישרדותם של המטופלים. עם זאת, קיים צורך במערכת אבחון מדויקת המסוגלת לזהות גידולי מוח בשלב מוקדם. כדי לטפל בבעיה זו, הוצעה טכניקה מהימנה יותר לזיהוי מדויק של גידולי מוח בשלבים מוקדמים, באמצעות מנגנון למידה עמוקה כפול והיברידי עם היפר-פרמטרים מותאמים ושכבות מכוונות המבוססות על המודלים DenseNet121 ו-EfficientNetB7. הגישה המוצעת מקבלת תמונות MRI דו-ממדיות (2D) כקלט ומפיקה תחזית של קיום גידול או אי-קיום גידול עבור מערך הנתונים לסיווג בינארי Br35H, וסיווג סוג הגידול עבור ארבעה מערכי נתונים אחרים לסיווג רב-מחלקי. לפיכך, סעיף זה מדגים את השלבים המרכזיים של הגישה המוצעת, מרגע איסוף הנתונים ועד הפלט הסופי, כולל רכישת נתונים, עיבוד מקדים של נתונים, פיצול נתונים, בחירת מודל, חילוץ מאפיינים, חיזוי גידול והערכה של המודל המוצע, כפי שמוצג ב-איור 1.

איור 1: זרימת העבודה של המתודולוגיה המוצעת. תרשים זה מציג את הארכיטקטורה הכוללת של המודל המוצע, הכוללת רכישת נתונים ועיבוד מקדימה; שני מודלים מאומנים מראש למיצוי מאפיינים; שרשור של המאפיינים שלהם; וכוונון היפר-פרמטרים לסיווג הגידול וסוגו. אנא לחצו כאן כדי לצפות בגרסה מורחבת של איור זה.
רכישת נתונים
בכל מחקר ניסויי, השלב הראשון הוא רכישת נתונים. לשם כך, נבחרו חמישה מאגרי נתונים שונים הזמינים לציבור, כולל Br35H24, Figshare25, Sartaj26, Masoud27, ומאגר נתונים המבוסס על תמונות MRI של גידולי מוח מהספרייה בקוד פתוח Kaggle28, אשר כבר שימשו חוקרים רבים לאבחון וזיהוי גידולי מוח. מאגר הנתונים Br35H מכיל 3,000 תמונות הכוללות שתי מחלקות: תמונות מוח בריא ותמונות מוח לא בריא (גידול), עם 1,500 תמונות בכל מחלקה, בעוד שמאגר הנתונים Figshare כולל 3,064 תמונות, המחולקות לשלוש קבוצות על סמך סוג הגידול: 1,426 תמונות של glioma, 708 תמונות של meningioma, ו-930 תמונות של גידולי היפופיזה. מאגר הנתונים Sartaj כולל 3,264 תמונות המסווגות לארבע מחלקות של גידולים: gliomas (926 תמונות), meningiomas (937 תמונות), גידולי היפופיזה (901 תמונות), ובריא או ללא גידול (500 תמונות). יתרה מכך, מאגר הנתונים Masoud כולל גם הוא ארבע מחלקות גידולים שונות, ותמונותיהן נלקחו משלושת מאגרי הנתונים שהוזכרו לעיל, עם סה"כ 7,023 תמונות, המסווגות להלן ל-glioma (עם 1,621 תמונות), meningioma (עם 1,645 תמונות), היפופיזה (עם 1,757 תמונות), ובריא או ללא גידול (עם 2,000 תמונות). מאגר הנתונים האחרון שנבחר הוא מאגר נתונים המבוסס על תמונות MRI, הכולל גם הוא ארבע מחלקות עם סה"כ 5,248 תמונות, המחולקות לסוגי גידולים, כולל 1,312 תמונות glioma, 1,312 תמונות meningioma, 1,312 תמונות היפופיזה, ו-1,312 תמונות בריאות או ללא גידול, אשר מחולקות באופן שווה לסוגי הגידולים ונחשבות למאגר נתונים מאוזן.
עיבוד מקדימה של נתונים
לאחר רכישת הנתונים, השלב הבא הוא עיבוד מקדמי (preprocessing), החיוני להשגת תוצאות טובות יותר ומועיל יותר עבור גישות חישוביות להפקה וללימוד של המאפיינים המיטביים מהנתונים, באופן המוביל לתוצאות מדויקות יותר. השלב הראשון שיושם היה שינוי גודל תמונות. נבחרו חמישה מאגרי נתונים הזמינים לציבור, הכוללים מחלקות וגדלי תמונות שונים, אפילו בתוך אותו מאגר נתונים עבור מחלקות גידולים שונות, והם שונו באופן אחיד לגודל של 224x224 לשיפור הפרשנות והלמידה של המודל. יתרה מכך, הוחל הגברה של נתונים (data augmentation) על כל מאגרי הנתונים על ידי יצירת דגימות נוספות מזוויות שונות, ובכך שופרו הפקת המאפיינים והלמידה על ידי מודלים של למידה עמוקה (DL). לשם כך, הוחל טווח סיבוב של 7% על כל התמונות, תוך סיבובן עד ל-7 מעלות. בנוסף, הוחלה הזזה אקראית של 5% על כל התמונות בצורה אופקית ואנכית, עם הזזה של 5% בגובה וברוחב ביחס לתמונות המקוריות. לאחר מכן, התמונות הוגדלו (zoom in) ב-10% ביחס לתמונות המקוריות, ולבסוף, כל התמונות הועתקו במראה (flipped) באופן אופקי ואנכי. הסיבה העיקרית לביצוע הגברת נתונים29 הוא להתגבר על התאמת-יתר (overfitting) ולשפר את יכולת ההכללה של המודלים על ידי אימון על גרסאות שונות ועבורו של מדגמי הנתונים המקוריים. לפני פיצול מערכי הנתונים לאימון ולאימות, הוחל קידוד תוויות (label encoding), המסייע יותר בחישוב ההפסד (loss) במהלך האימון והאימות, ובמקביל הופך את מדגמי הנתונים לחיוניים יותר עבור המודלים כדי לעבד את התוויות בצורה נכונה. בנוסף, מערך הנתונים חולק למערכי אימון ואימות, ביחס של 80% ל-20%.30 עבור כל אחד, ו- טבלה 2 מציג את ההתפלגות הכללית של דגימות הנתונים ואת יחסי האימון והתיקוף שלהן.
| סט נתונים | סוגי גידולים | סך הכל תמונות | תמונות אימון | תמונות תיקוף |
| Br35H | בריא | 1500 | 1200 | 300 |
| גידול | 1500 | 1200 | 300 |
| סך התמונות | 3000 | 2400 | 600 |
| Figshare | גליומה | 1426 | 1141 | 285 |
| מנינגיומה | 708 | 566 | 142 |
| בלוטתיתהית | 930 | 744 | 186 |
| סה"כ תמונות | 3064 | 2451 | 613 |
| סרטאג׳ | גליומה | 926 | 741 | 185 |
| מנינגיומה | 937 | 749 | 188 |
| ללא גידול | 500 | 400 | 100 |
| בלוטת הפיתואיטרי (בלוטת היפופיזה) | 901 | 721 | 180 |
| סך הכל תמונות | 3264 | 2611 | 653 |
| מסעוד | גליומה | 1621 | 1297 | 324 |
| מנינגיומה | 1645 | 1316 | 329 |
| ללא גידול | 2000 | 1600 | 400 |
| בלוטת יותרת המוח | 1757 | 1405 | 352 |
| סה"כ תמונות | 7023 | 5618 | 1405 |
| מאגר נתונים מאוזן של גידולי מוח (BBT-Dataset) | גליומה | 1312 | 1050 | 262 |
| מנינגיומה | 1312 | 1050 | 262 |
| ללא גידול | 1312 | 1050 | 262 |
| בלוטת הפיתואיטרי (בלוטתיתהית) | 1312 | 1050 | 262 |
| סה"כ תמונות | 5248 | 4200 | 1048 |
טבלה 2: התפלגות מערך הנתונים. הטבלה מציגה סטטיסטיקות לפי מחלקה של סך מספר התמונות, ומספר תמונות האימון והתיקוף במאגרי נתונים של גידולי מוח.
מערך הנתונים Br35H כולל 3000 תמונות, מתוכן נבחרו 2400 לאימון ו-600 לאימות. מערך הנתונים Figshare כולל 3064 תמונות; מכלל התמונות, 2451 נבחרו לאימון, וה-613 הנותרות לאימות. מערך הנתונים Sartaj כולל סך הכל 3264 תמונות, מתוכן 2611 שימשו לאימון וה-653 הנותרות לאימות. מערך הנתונים Masoud כולל סך הכל 7023 תמונות; מתוכן, 5618 שימשו לאימון, וה-1405 הנותרות לאימות. מערך הנתונים BBT כולל סך הכל 5248 תמונות. מתוך סך התמונות, 4200 נבחנו למטרות אימון, בעוד ששאר 1048 התמונות נבחנו למטרות אימות. בנוסף, איור 2 להלן ממחיש את תמונות גידולי המוח השונות.

איור 2: תמונות של גידולי מוח, כולל סוגי הגידולים. מערך הנתונים כולל ארבע תמונות של רקמת מוח בריאה ושלוש תמונות של גידולים: גליומה, מנינגיומה וגידול בבלוטת יותרה. אנא לחץ כאן כדי להציג גרסה מוגדלת של איור זה.
המודל המוצע
בעקבות שלב עיבוד המקדמים, השלב הבא הוא להציע מודל אימון היעיל רק לסיווג גידולי מוח. לשם כך, הוצע מודל אימון יעיל, המיועד ספציפית לסיווג גידולי מוח. למטרה זו מוצע מודל מאומן-מראש (pretrained) חדש ויעיל המבוסס על מיזוג תכונות היברידי (hybrid feature fusion), הכולל את DenseNet12131,32 ו-EfficientNetB733, אשר שימשו לחילוץ התכונות מהתמונות; בהמשך, תכונות אלו שחולצו שורשרו והועברו להיפר-פרמטרים שונים שעברו כוונון עדין (fine-tuning), כולל שכבות הניתנות לאימון ושכבות שאינן ניתנות לאימון, כדי לאבחן גידולי מוח במדויק. המודל הוטמע על חמישה מאגרי נתונים שונים הזמינים לציבור, אשר נדונו בסעיפים קודמים רלוונטיים. יתרה מכך, מודל ה-DenseNet121 פותח על ידי Gao Huang ועמיתיו בשנת 2017 והוא כולל 121 שכבות. המטרה העיקרית של מודל זה הייתה להתמקד במקסום שימוש חוזר בתכונות ומניעת בעיית הגרדיאנט הנעלם (vanishing gradient problem)34. השכבות במודל זה מאורגנות בבלוקים צפופים (dense blocks), שכל אחד מהם מכיל מספר שכבות קונבולוציה (convolutional layers) המחלצות ולומדות תכונות. כל שכבה מקבלת כמבוא את מפת התכונות מכל השכבות הקודמות, והפלט שלה מחובר לפלטים של אותן שכבות ומועבר כמבוא לשכבות הבאות באותו בלוק באופן של הזנה קדימה (feed-forward). בנוסף, שכבות מעבר (transition layers) מתווספות בין הבלוקים הצפופים, כשכל אחת מהן מורכבת משכבת קונבולוציה של 1 × 1, שכבת BatchNormalization ושכבות average pooling של 2 × 2, המצמצמות את מפת התכונות כדי לשלוט במורכבות המודל. יתרה מכך, מתווספת שכבה סופית עם פונקציית אקטיבציה (AF) מסוג SoftMax לפני שכבת global average pooling לצורך הסיווג. התכנון הבסיסי של מודל ה-DenseNet121 מוצג ב-איור 334 להלן.

איור 3: פירוט ארכיטקטוני של DenseNet12134. איור זה מציג את הפירוט הארכיטקטוני של מודל ה-DenseNet121, כולל כל הבלוקים הדחוסים ובלוקי המעבר. אנא לחצו כאן כדי לצפות בגרסה גדולה יותר של איור זה.
בנוסף, מודל ה-EfficientNetB7 פותח על ידי Tan ו-Lee בשנת 2019. הוא שייך למשפחת ה-EfficientNet, עם וריאנטים מ-B0 עד B7, ומטרתו העיקרית היא להשיג ביצועים טובים יותר מאחרים תוך שימוש בפחות פרמטרים ובפחות כוח עיבוד. רוחב המודל (מספר הערוצים לשכבה), העומק (מספר השכבות) והרזולוציה ניתנים לכיוונון עדין באמצעות compound scaling, המהווה את תכונת הליבה של המודל. יתרה מכך, מודל זה מורכב מבלוקי MBConv (mobile inverted bottleneck convolutional), הכוללים שכבת הרחבה קונבולוציונית של 1 × 1 האחראית להרחבת הערוצים, depthwise separable convolution האחראית להחלת קונבולוציה על כל ערוץ בנפרד, ושכבת הקרנה קונבולוציונית של 1 × 1 המצמצמת את מספר הערוצים למספר המקורי. בנוסף, כל בלוק MBConv כולל בלוקי Squeeze and Excitation (SE)35, המבצעים כיול מחדש של מאפיינים ברמת הערוץ, ובכך מסייעים לרשת להתמקד במאפיינים החשובים ביותר. כמו כן, במקום sigmoid או כל AF אחר, נעשה שימוש בפונקציית Swish, המניבה ביצועים טובים יותר מ-ReLU על ידי מתן אפשרות לערכים שליליים, דבר המסייע בזרימת הגרדיאנט. מעבר לכך, נוספה שכבת פלט סופית עם AF מסוג SoftMax לפני שכבת global average pooling לצורכי סיווג. איור 435 מציג את התכנון הבסיסי של מודל ה-EfficientNetB7, בעוד שאיור 5 מציג את ארכיטקטורת המודל המומלצת.

איור 4: פירוט ארכיטקטוני של EfficientNetB735. איור זה מציג את הפירוט הארכיטקטוני של מודל EfficientNetB7, כולל כל בלוקי הקונבולוציה מסוג mobile inverted bottleneck. אנא לחץ כאן כדי לצפות בגרסה גדולה יותר של איור זה.

איור 5: ארכיטקטורת המודל המאוחה וההיברית המוצעת. הארכיטקטורה המוצעת ממחישה כיצד תמונות שעברו עיבוד מקדמי מועברות למחלץ התכונות, המורכב משלושה בלוקים מותאמים אישית עם היפר-פרמטרים שונים, ולאחריהם שכבת פלט. אנא לחץ כאן כדי לצפות בגרסה גדולה יותר של איור זה.
בנוסף, מאפיינים ראשוניים הופקו ממודלי DenseNet121 ו-EfficientNetB7 שסיימו אימון מוקדם (pretrained). המשקולות המעודכנות של המודלים שעברו אימון מוקדם נטענו אל המודלים המאומנים, והשכבות הבסיסיות שאינן ניתנות לאימון של המודלים הוקפאו כדי למנוע את אימון המודל מחדש. פעולה זו אמורה לסייע למודל לשמר את הידע המיטבי שרכש בעבר, להתאימו לאור דגימות נתונים חדשות כדי לשפר את ההתכנסות (convergence), ולהתמקד בשכבות נוספות לצורך אימון והפקה של מאפיינים מתקדמים. משוואות 1 ו-2 להלן מציגות את אופן הפעולה של מודלי DenseNet121 ו-EfficientNetB7.
(1)
(2)
משוואות 1 ו-2 לעיל מראות את אופן הפעולה של המודל המאומן מראש בנוגע לחילוץ מאפיינים; F1 מציין את מפות המאפיינים של הפלט המופקות על ידי מודל DenseNet121 המאומן מראש, ו-F2 מציין את מפות המאפיינים של הפלט המופקות על ידי מודל EfficientNetB7 המאומן מראש באמצעות עיבוד תמונות הקלט, המיוצגות על ידי X. בנוסף, W1 ו-W2 הם הפרמטרים הלמידים או המשקולות הקשורים לבלוקים ולשכבות הראשונות של מודלי DenseNet121 ו-EfficientNetB7, בהתאמה. יתר על כן, ∈ RN ×H1×W1×C1 ו-∈ RN ×H2×W2×C2 מייצגים את ממדיה של מפות המאפיינים של הפלט של מודלי DenseNet121 ו-EfficientNetB7, בהתאמה, עם ממדים של H1 ×N×W1×C1 ו-H2 ×N×W2×C2, כאשר N מייצג את גודל האצווה (batch size) של התמונות, שנקבע כ-16. בנוסף, H1×W1 מייצג את הגובה והרוחב של התמונות עבור מודל DenseNet121, ו-H2×W2 מייצג את הגובה והרוחב של התמונות עבור מודל EfficientNetB7, אשר נבחרו בגדלי גובה ורוחב של 224 × 224. C1 ו-C2 מייצגים את ערוץ הצבע עבור מודלי DenseNet121 ו-EfficientNetB7, בהתאמה. לאחר קבלת מפות המאפיינים של הפלט מהמודל כ-2560 ערוצי פלט מ-EfficientNetB7 ו-1024 מ-DenseNet121, שכבת global average pooling 2D36 מיושמת על מפות המאפיינים של הפלט כדי להפחית את הממד המרחבי על ידי חישוב הממוצע של כל הממדים המרחביים לווקטור יחיד, דבר המקל על ההעברה לשכבה הבאה לצורך חילוץ מאפיינים וזיהוי תבניות טובים יותר במונחים של מאפיינים הניתנים לפירוש.
(3)
(4)
משוואות 3 ו-4 לעיל מראות את פעולת שכבת ה-global average pooling 2D המיושמת על מודלי DenseNet121 ו-EfficientNetB7, בהתאמה, כאשר
ו-
מראות את תהליך הנורמליזציה של הסכום על ידי חלוקה במספר הכולל של המיקומים המרחביים עבור שני המודלים, כדי להבטיח שהפלט של ה-pooling יהיה ממוצע ולא סכום פשוט.
ו-
מייצגות את הסיכום על פני הממדים המרחביים של מפות המאפיינים (feature maps), בעוד ש-i ו-j משמשים למעבר על הגובה והרוחב, בהתאמה, לצורך סיכום מפות המאפיינים עבור שני המודלים. יתרה מכך, F1(i, j, :) ו-F2(i, j, :) מייצגים את ערכי מפות המאפיינים במיקומים מרחביים ספציפיים (i, j) על פני כל הערוצים עבור מודלי DenseNet121 ו-EfficientNetB7, בהתאמה. פעולת pooling זו מרכזת מידע מרחבי לייצוג דחוס ומדויק יותר, תוך שימור המאפיינים החשובים ביותר בכל תמונה. בנוסף, הפלטים של שכבות ה-global average pooling משורשרים (concatenated) כדי להפיק וקטור מאפיינים יחיד עבור כל דגימה; וקטור זה משמש לעיתים קרובות למיזוג מאפיינים ממודלים שונים כדי לשפר את הביצועים על ידי ניצול החוזקות של שני המודלים; משוואה 5 מראה כיצד הדבר מתבצע.
(5)
משוואה 5 לעיל מציגה את הליך השרשור של שני וקטורי מאפיינים של מודלים שונים [G1, G2], כאשר G1 מייצג את וקטור המאפיינים של מודל DenseNet121 ו-G2 מייצג את וקטור המאפיינים של מודל EfficientNetB7, בעוד שהצורה של וקטור המאפיינים המשורשר מיוצגת על ידי RN ×(C1+ C2), כאשר N הוא גודל האצווה (batch size), המייצג את מספר הדגימות המעובדות במקביל, ו-(C1+ C2) הוא המספר הכולל של המאפיינים המתקבלים ממודל 1 ו-2 בהתאמה, אשר מסתכם ב-3584 ומעובדים במקביל, ווקטור מאפייני הפלט המשורשר מיוצג על ידי G. יתרה מכך, שלושה בלוקים שונים נוספו כדי לשנות את המודל הממוזג לצורך חילוץ מאפיינים מורכבים יותר, שיפור ההכללה ומניעת התאמת יתר (overfitting), כדי להשיג תוצאות מדויקות ויעילות יותר. כל בלוק מורכב משכבה צפופה (dense layer) עם מספר שונה של נוירונים; הבלוק הראשון כולל 1024 נוירונים בשכבות הצפופות שלו, המתמקדים בלכידה של טווח רחב של מאפיינים ותבניות גנריות יותר בנתונים, בעוד שהבלוק השני כולל 512 נוירונים בשכבה הצפופה שלו, אשר מזקקים באופן ספציפי את המאפיינים על ידי הפחתת ממדיות והתמקדות בתבניות ספציפיות יותר. הבלוק השלישי מכיל 256 נוירונים בשכבה הצפופה שלו, המזקקים את המאפיינים באופן ספציפי יותר כדי להבטיח שרק המאפיינים והתבניות הרלוונטיים ביותר יעברו לשכבת הפלט לביצוע משימה רלוונטית יותר. בנוסף, גישות רגולריזציית L237 נוספו לכל שכבה צפופה בכל בלוק כדי למנוע התאמת יתר על ידי הענקת קנס למשקולות גדולות יותר, דבר שגורם למודל להיות מורכב יותר. שכבת dropout38 נכנסה לשימוש גם היא לאחר כל בלוק כדי להתעלם באופן אקראי מ-30%, 20% ו-10% מהנוירונים עבור בלוקים 1, 2 ו-3 בהתאמה, מה שמאלץ את הרשתות לפתח מאפיינים חסונים (robust) יותר שאינם תלויים בנוירון בודד. יתרה מכך, כדי לייצב את תהליך האימון, שכבת BatchNormalization39 מיושמת לאחר כל שכבה צפופה, מה שמבטיח שההפעלות (activations) יישארו בטווח יציב ועוזר למודל להימנע מבעיות כגון הגרדיאנטים הנעלמים (vanishing gradients) והגרדיאנטים המתפוצצים (exploding gradients) במהלך שלב האימון. בנוסף, שכבת BatchNormalization זו האאיצה את תהליך האימון, מה שאיפשר למודל להתכנס מהר יותר על ידי החלקת נוף ההפסד (loss landscape), דבר שהקל על האופטימייזרים להגיע למינימום גלובלי. להלבה, בכל בלוק, כדי לייצר אי-ליניאריות, נעשה שימוש בהפעלת leaky ReLU40, המאפשרת למודל ללמוד תבניות מורכבות; ל-leaky ReLU יש יתרונות על פני פונקציות הפעלה אחרות בכך שהיא מבטיחה שהנוירון לא יהיה לא פעיל על ידי התרת גרדיאנט קטן שאינו אפס עבור קלטים שליליים. לבסוף, משוואה 6 להלן מציגה את פעולתם של הבלוקים השונים המשולבים עם המודל הממוזג ההיברידי.
(6)
לאחר קבלת הווקטור המשורשר, G מועבר דרך השכבה הצפופה (fully connected) של בלוק 1 עם 1024 נוירונים, שבה מטריצת המשקולות W1 הופכת את ווקטור הקלט G לווקטור פלט בעל 1024 ממדים, כאשר כל איבר בווקטור הפלט הוא שילוב ליניארי של מאפייני הקלט. בנוסף, ווקטור ההטיה b1 מתווסף לכל אחד מ-1024 האיברים בפלט, מה שמאפשר למודל להסיט את הפלט של מאפייני הקלט באופן עצמאי. יתרה מכך, איבר רגולריזציית L2: λ||W1||22 מעניש משקולות גדולות, מה שמונע מהמודל להסתמך יתר על המידה על נוירון בודד ומסייע במניעת overfitting. כאשר מטריצת המשקולות של שכבה מסוימת ברשת הנוירונים היא W1, בעוד ש-||W1||22 מייצגת את ריבוע נורמת L2 של מטריצת המשקולות W1, ו-λ הוא פרמטר הרגולריזציה השולט במידת הרגולריזציה המיושמת, אשר נקבע ל-0.1 בכל הבלוקים. Z1 הופך לייצוג המאפיינים החדש לאחר החלת השכבה הצפופה וכן רגולריזציית L2 על הקלט שהועבר מהווקטור המשורשר G, כפי שמוצג במשוואה 6.
לאחר קבלת הפלט משכבת הצפיפות של בלוק 1 כ- Z1, הוחלה שכבת BatchNormalization, ששימשה להגברת מהירות תהליך האימון, ומשוואה 7 להלן מראה כיצד היא פועלת.
(7)
σ2 מייצג את השונות של הפלט של השכבה האחרונה Z1 לאורך ה-batch, בעוד ש-μ הוא הממוצע של הפלט Z1 המחושב בנפרד עבור כל נוירון, אשר היו 1024 בשכבה הצפופה (dense layer) הראשונה. מנגד, ε הוא קבוע זניח המוטמע כדי להבטיח יציבות נומרית ולמנוע חלוקה באפס. ניתן להתאים את הפלט הנורמלי על ידי המודל באמצעות כיוונון פרמטר קנה המידה הניתן ללמידה γ, בעוד שניתן להסיט את הפלט הנורמלי באמצעות פרמטר ההסטה הניתן ללמידה β. לבסוף, לאחר החלת שכבת ה-BatchNormalization על הפלט של השכבה הצפופה, הפלט הנורמלי Z1 מבטיח שלפעולות ההפעלה (activations) תהיה התפלגות עקבית על פני השכבות השונות, דבר המסייע לייצב ולהאיץ את האימון. לאחר ה-BatchNormalization, הפלט הנורמלי Z1 עובר דרך פונקציית ההפעלה leaky ReLu, אשר מייצרת אי-ליניאריות ברשת המסייעת בלמידת תבניות מורכבות בנתונים. במקום לבחור ב-ReLU או בפונקציית הפעלה אחרת, נבחרה leaky ReLU, שהיא גרסה שונה של פונקציית ReLU הלוקחת בחשבון גם ערכים שליליים קטנים במקום להפוך אותם ל-0 כפי שקורה בפונקציית ההפעלה ReLU, ובכך פותרת את בעיית ה-dying ReLU. משוואה 8 להלן מראה כיצד היא פועלת.
(8)
כאשר Z1 מייצג את הפלט של שכבת ה-BatchNormalization, אשר מועבר כקלט ל-Leaky ReLU לצורך ביצוע אי-ליניאריות, בעוד ש-∝ הוא קבוע קטן המשמש לקביעת השיפוע של החלק השלילי של הפונקציה. יתרה מכך, A1 מראה את הפלט המתקבל לאחר החלת האי-ליניאריות. לבסוף, שכבת dropout מוחלת על הפלט A1 שהתקבל כקלט מהפעלה של Leaky ReLu, כפי שמוצג במשוואה 9.
(9)
כאשר A1 הוא הפלט המקורי של פונקציית ההפעלה שהתקבל מפונקציית ההפעלה ReLu האחרונה, וכאשר p הוא שיעור ה-dropout, הנ🍸ה בין 0 ל-1 ונבחר כ-0.3, 0.2 ו-0.1 עבור שלוש שכבות בלוקים, בהתאמה, למטרת השמטת חלק מהנוירונים. יתרה מכך, A1′ מייצג את הפלט המעובד לאחר יישום שכבת ה-dropout, שבה חלק מהנוירונים הוגדרו כ-0. היתרון המרכזי בשימוש בשיטה זו הוא מניעת בעיות התאמת-יתר (overfitting) וכן הפחתת co-adaptation. בנוסף, הפלט מבלוק 1, A1′, מועבר שוב לבלוק הבא לצורך חילוץ תכונות מופשטות יותר, תוך יישום אותם פרמטרים שבלוק 1, עם הבחנה של 512 נוירונים בשכבה הצפופה (dense layer) במקום 1024 ושיעור dropout של 0.2 במקום 0.3; שאר רצפי הפעולות זהים, כפי שמתואר במשוואות 10 עד 13 להלן.
(10)
(11)
(12)
(13)
לאחר קבלת הפלט מבלוק 1 כ- A1′, הוא מועבר דרך השכבה הצפופה (dense layer, מקושרת באופן מלא) של בלוק 2 בעלת 512 נוירונים, כאשר מטריצת המשקולות W2 הופכת את וקטור הקלט A1′ לוקטור פלט בעל 512 ממדים, וכל איבר בוקטור הפלט הוא שילוב ליניארי של תכונות הקלט. בהמשך, וקטור ההטיה b2 מתווסף לכל אחד מ-512 האיברים בפלט, מה שמאפשר למודל להזיז את הפלט של תכונות הקלט באופן עצמאי. בנוסף, הוחלה רגולריזציית L2 שבה: λ||W2||22 הענישה משקולות גבוהות, דבר המשמש להפחתת התאמת-יתר (overfitting) על ידי מניעה מהמודל להסתמך באופן מופרז על נוירון ספציפי בבלוק זה. כאשר W2 היא מטריצת המשקולות של שכבה מסוימת ברשת העצבית, בעוד ש-λ הוא פרמטר הרגולריזציה השולט במידת הרגולריזציה המוחלת, אשר נקבע כ-0.1. Z2 הופך לייצוג התכונות החדש לאחר החלת השכבה הצפופה ורגולריזציית L2 על הקלט שהועבר מבלוק 1, כפי שמוצג במשוואה 10.
בנוסף, שכבת BatchNormalization הוחלה על המאפיין החדש Z2, אשר שימשה להגברת מהירות תהליך האימון; σ22 מייצג את השונות לאורך ה-batch, בעוד ש-μ2 הוא הממוצע של הפלט Z2. בעוד ש-ε הוא קבוע קטן המוטמע כדי להבטיח יציבות מספרית, γ הוא פרמטר קנה-מידה (scale) הניתן ללמידה המאפשר למודל לשנות את הפלט הנורמלי, ו-β הוא פרמטר הזזה (shift) הניתן ללמידה המאפשר למודל להזיז את הפלט הנורמלי. לבסוף, לאחר החלת שכבת ה-BatchNormalization, המוצגת במשוואה 11, הפלט הנורמלי Z2 עבר דרך פונקציית אקטיבציה מסוג leaky ReLU, שיצרה אי-ליניאריות ברשת, כפי שמוצג במשוואה 12. כאשר Z2 שייך לפלט של שכבת ה-BatchNormalization, העובר ל-Leaky ReLU כקלט לצורך ביצוע אי-ליניאריות. בעוד ש-A2 מראה את הפלט המתקבל לאחר החלת האי-ליניאריות.
לבסוף, שכבת dropout מוחלת על הפלט A2 המתקבל כקלט מהפעלת Leaky ReLU, כפי שמוצג במשוואה 13. כאשר A2 הוא הפלט המתקבל מפונקציית ההפעלה ReLU האחרונה, ו-p2 הוא שיעור ה-dropout, שנבחר להיות 0.2 עבור בלוק זה, וזאת לצורך השמטת חלק מהנוירונים. בהמשך, A2′ מייצג את הפלט המעובד לאחר החלת שכבת ה-dropout, שבה חלק מהנוירונים נקבעו ל-0. לאחר מכן, הפלט מבלוק 2, A2′, מועבר שוב לבלוק השלישי לצורך חילוץ של מאפיינים מופשטים יותר, תוך החלת אותם פרמטרים המופיעים בבלוק 2, עם הבחנה של 256 נוירונים בשכבה הצפופה (dense layer) במקום 512, ושיעור dropout של 0.1 במקום 0.2; שאר רצפי הפעולות נותרים זהים, כפי שמתואר במשוואות 14 עד 17 להלן.
(14)
(15)
(16)
(17)
לאחר קבלת הפלט מבלוק 2 כ-A2′, הוא מועבר דרך השכבה הצפופה (fully connected) של בלוק 3 הכוללת 256 נוירונים, שבה מטריצת המשקולות W3 הופכת את וקטור הקלט A2′ לוקטור פלט בן 256 ממדים, כאשר כל איבר בווקטור הפלט הוא שילוב ליניארי של מאפייני הקלט. בהמשך, וקטור ההטיה b3 מתווסף לכל אחד מ-256 האיברים בפלט, מה שמאפשר למודל להזיז את הפלט של מאפייני הקלט באופן עצמאי. בנוסף, הוחלה רגולריזציית L2 שבה: λ||W3||22 מענשה משקולות גדולות, דבר המונע מהמודל להסתמך יתר על המידה על נוירון בודד ומסייע במניעת overfitting. כאשר, W3 היא מטריצת המשקולות של שכבה מסוימת ברשת העצבית, בעוד שדרגת הרגולריזציה המיושמת נשלטת על ידי פרמטר הרגולריזציה λ, אשר נקבע ל-0.01. Z3 הופך לייצוג המאפיינים החדש לאחר יישום השכבה הצפופה וכן רגולריזציית L2 על הקלט שעבר מבלוק 3, כפי שמוצג במשוואה 14.
בנוסף, שכבת ה-BatchNormalization הוחלה על המאפיין החדש Z3, אשר שימשה להאצת תהליך האימון; σ32 מייצג את השונות לאורך ה-batch, בעוד ש-μ3 הוא הממוצע של הפלט Z3. מאידך, ε הוא קבוע קטן שנוסף לצורך יציבות נומרית. ניתן להתאים את הפלט הנורמלי על ידי המודל באמצעות פרמטר קנה מידה למידה γ3, ולהסיטו באמצעות פרמטר הזזה למידה β3. לבסוף, לאחר החלת שכבת ה-BatchNormalization, המוצגת במשוואה 15, הפלט הנורמלי Z3 עבר דרך פונקציית האקטיבציה leaky ReLU, אשר יצרה אי-ליניאריות ברשת, כפי שמוצג במשוואה 16. כאשר Z3 שייך לפלט של שכבת ה-BatchNormalization, העובר ל-Leaky ReLU כקלט לביצוע אי-ליניאריות. בעוד ש-A3 מציג את הפלט המתקבל לאחר החלת האי-ליניאריות.
לבסוף, שכבת dropout מיושמת על הפלט A3 שהתקבל כקלט מהפעלת Leaky ReLU, כפי שמוצג במשוואה 17. כאשר A3 הוא הפלט שהתקבל מפונקציית ההפעלה ReLU האחרונה, ו-p3 הוא קצב ה-dropout, שנבחר להיות 0.1 עבור בלוק זה, לצורך השמטת חלק מהנוירונים. בנוסף, A3′ מייצג את הפלט המשונה לאחר יישום שכבת ה-dropout, שבה חלק מהנוירונים הוגדרו כ-0.
בנוסף, הפלט מבלוק 3 A3′ הועבר דרך השכבה הצפופה (dense layer) האחרונה לצורכי סיווג, עם מספר K של נוירונים המייצג את מספר המחלקות בפועל במערך הנתונים, כפי שמתואר במשוואה 18 להלן.
(18)
מטריצת המשקולות הקשורה לשכבה העבה היא Wk, האחראית להמרת הווקטור בן 256 הממדים A3′ לווקטור בן k ממדים, המייצג את המאפיינים שנלמדו מהבלוק הקודם ויוצא כפלט. בנוסף, bk מייצג את וקטור ההטיה (bias) המתאים את התחזית כדי להבטיח שלפונקציית ההפעלה יהיה פלט שאינו אפס כאשר הקלט הוא אפס, ו-Zk הוא הפלט של השכבה הסופית לפני הפעלת פונקציית ההפעלה, והוא מייצר את ה-logits עבור כל מחלקה; לבסוף, הוחל מסווג SoftMax41 הממיר את ה-logit Zk להסתברות של כל מחלקה, כפי שמוצג במשוואות 19 ו-20.
(19)
(20)
כאשר ההסתברות החזויה עבור המחלקה ה-ith מיוצגת על ידי yi, K הוא מספר המחלקות, בעוד ש- Zk, i הוא ה-logit עבור המחלקה ה-ith, ו- eZk, i הוא האקספוננט של ה-logit של המחלקה ה-ith. y מראה את התפלגות ההסתברות של כל המחלקות האפשריות ומבטיח שסכום ההסתברויות יהיה 1. טבלה 3 להלן מספקת את פרטי ההיפר-פרמטרים ששימשו לאימון המודל ההיברידי המוצע, כולל הפרטים הארכיטקטוניים שאומצו לשיפור השחזור והביצועים.
| הפרמטרים ההיפר-למידתיים (Hyper Parameters) | המודל המוצע (FusionNetX) |
| גודל תמונה | 224 × 224 |
| ארכיטקטורת שלד | EfficientNetB7 ו-DenseNet121 מאומנים מראש כ-BBA1 ו-BBA2 |
| העשרת נתונים | טווח סיבוב = 7, |
| רוחב/גובה – טווח הזזה עד 0.05, |
| טווח זום עד 0.01, |
| היפוך אופקי/אנכי |
| יחס פיצול הנתונים | 80% לאימון ו-20% לוולידציה באמצעות דגימה מרובדת (stratified sampling) עם randome_state קבוע = 42 |
| חילוץ ומיזוג מאפיינים | איחוד ממוצע גלובלי (Global average pooling) מיושם על הפלט של כל שלד (backbone): 2560 עבור BBA1 ו-1024 עבור BBA2, והם ממוזגים כדי לקבל 3584 וקטורי מאפיינים משותפים. |
| הרכב בלוק מחובר באופן מלא | 3 בלוקים מחוברים במלואם (fully connected) עם שכבת פלט אחת. כל בלוק מכיל רגולריזציית L2 (λ=0.01), נורמליזציה של אצווה (BatchNormalization), LeakyReLU (α=0.01), Dropout של (0.3, 0.2, ו-0.1) וממד נסתר של (1024, 512, 256) בהתאמה. לא הוכנסו חיבורי דילוג (Skip connection) נוספים בראש המיזוג (fusion head). |
| פונקציית אקטיבציה | Leaky ReLU & SoftMax |
| אופטימייזר וקצב למידה | Adam עם 0.00001 קבוע ללא מתזמן קצב למידה. |
| פונקציית הפסד | sparse_categorical_crossentropy |
| גודל סדרה | 16 |
| עידנים | 100 תקופות (epochs) קבועות עבור כל מערך נתונים |
| הפלטפורמה שבה נעשה שימוש | מחברת Kaggle בעלת GPU מסוג P100 ו-16GB VRAM עם פלטפורמות TensorFlow ו-Keras. |
טבלה 3: היפר-פרמטרים ששימשו לאימון המודל המוצע ופרטים אדריכליים מוצעים. טבלה זו מפרטת את הפרטים המבניים והאדריכליים של המודל המוצע, יחד עם פרמטרים שעברו כוונון עדין (fine-tuned) וסביבת המימוש.