De meest bedreigende ziekte ter wereld is een hersentumor. Een nauwkeurige diagnose kan gunstig zijn voor de overleving van patiënten. Er is echter nog steeds behoefte aan een nauwkeurig diagnostisch systeem dat hersentumoren in een vroeg stadium kan detecteren. Om dit probleem aan te pakken, is er een betrouwbaardere techniek voorgesteld voor het nauwkeurig detecteren van hersentumoren in hun vroege stadia door gebruik te maken van een hybride duaal deep learning-mechanisme met geoptimaliseerde hyperparameters en nauwkeurig afgestelde lagen op basis van de DenseNet121- en EfficientNetB7-modellen. De voorgestelde aanpak gebruikt 2D MRI-beelden als input en geeft een voorspelling van ofwel de aanwezigheid van een tumor of geen aanwezigheid van een tumor voor de binaire classificatiedataset Br35H, en een categorisering van de tumor voor vier andere multiclass-classificatiedatasets. Deze sectie demonstreert daarom de belangrijkste stappen van de voorgestelde aanpak, van gegevensverzameling tot de uiteindelijke output, inclusief gegevensverwerving, gegevensvoorbewerking, gegevenssplitsing, modelselectie, kenmerkextractie, tumorvoorspelling en evaluatie van het voorgestelde model, zoals weergegeven in Figuur 1.

Figuur 1: Workflow van de voorgestelde methodologie. Dit diagram toont de algemene architectuur van het voorgestelde model, inclusief data-acquisitie en preprocessing; twee vooraf getrainde modellen voor kenmerkextractie; concatenatie van hun kenmerken; en hyperparameter-optimalisatie voor de classificatie van het tumortype en -categorie. Klik hier om een grotere versie van deze figuur te bekijken.
Gegevensverwerving
Bij elk experimenteel onderzoek is de eerste stap de data-acquisitie. Hiervoor zijn vijf verschillende publiek beschikbare datasets gekozen, waaronder Br35H24, Figshare25, Sartaj26, Masoud27 en de op MRI-beelden gebaseerde dataset van hersentumoren uit de open-source bibliotheek Kaggle28, die reeds door vele onderzoekers zijn gebruikt voor de diagnose en detectie van hersentumoren. De Br35H-dataset bevat 3.000 beelden bestaande uit twee klassen: gezonde en ongezonde (tumor) hersenbeelden, met 1.500 beelden per klasse, terwijl de Figshare-dataset 3.064 beelden bevat, onderverdeeld in drie groepen op basis van het tumortype: 1.426 beelden van glioom, 708 beelden van meningeom en 930 beelden van hypofysetumoren. De Sartaj-dataset bevat 3.264 beelden gecategoriseerd in vier tumor-klassen: glioom (926 beelden), meningeom (937 beelden), hypofysetumoren (901 beelden) en gezond of geen tumor (500 beelden). Daarnaast bevat de Masoud-dataset eveneens vier verschillende tumor-klassen, waarvan de beelden zijn afkomstig uit de drie bovengenoemde datasets, met een totaal van 7.023 beelden, die verder zijn gecategoriseerd in glioom (1.621 beelden), meningeom (1.645 beelden), hypofyse (1.757 beelden) en gezond of geen tumor (2.000 beelden). De laatst gekozen dataset is een op MRI-beelden gebaseerde dataset, die ook vier klassen bevat met in totaal 5.248 beelden, verder onderverdeeld in tumortypen, waaronder 1.312 glioom-beelden, 1.312 meningeom-beelden, 1.312 hypofyse-beelden en 1.312 beelden van gezond of geen tumor, die reeds gelijkmatig over de tumortypen zijn verdeeld en worden beschouwd als een gebalanceerde dataset.
Gegevensvoorbewerking
Na de gegevensacquisitie is de volgende stap de preprocessing, wat essentieel is voor betere resultaten en nuttiger is voor computationele benaderingen om de beste kenmerken uit de gegevens te extraheren en te leren, wat leidt tot nauwkeurigere resultaten. De eerste stap die werd toegepast, was het herschalen van de beelden. Vijf openbaar beschikbare datasets met verschillende klassen en beeldformaten, zelfs binnen dezelfde dataset voor verschillende tumorklassen, zijn gekozen en uniform herschaald naar 224 x 224 voor een betere modelinterpretatie en leerbaarheid. Daarnaast werd data-augmentatie toegepast op alle datasets door extra monsters vanuit verschillende hoeken te genereren, waardoor de kenmerkextractie en het leren door DL-modellen werden verbeterd. Hiervoor werd een rotatiebereik van 7% toegepast op alle beelden, waarbij ze tot 7 graden werden gedraaid. Verder werd een random shift van 5% toegepast op alle beelden, zowel horizontaal als verticaal, met een verschuiving van 5% in hoogte en breedte ten opzichte van de originele beelden. Daarna werden de beelden met 10% ingezoomd ten opzichte van de originele beelden, en tot slot werden alle beelden horizontaal en verticaal gespiegeld. De belangrijkste reden voor het uitvoeren van data-augmentatie29 is om overfitting te overwinnen en de generalisatie van modellen te verbeteren door te trainen op diverse getransformeerde versies van de originele datamonsters. Voordat de datasets werden gesplitst in training- en validatiesets, werd label-encoding toegepast, wat nuttiger is bij het berekenen van het verlies (loss) tijdens training en validatie, terwijl de datamonsters tegelijkertijd essentiëler worden voor modellen om de labels correct te verwerken. Daarnaast is de dataset verdeeld in trainings- en validatiesets, met een verhouding van 80% tot 20%30 voor elk, en Tabel 2 toont de totale distributie van datamonsters en hun trainings- en validatieverhoudingen.
| Dataset | Tumorklassen | Totaal aantal afbeeldingen | Trainingsafbeeldingen | Validatieafbeeldingen |
| Br35H | Gezond | 1500 | 1200 | 300 |
| Tumor | 1500 | 1200 | 300 |
| Totaal aantal afbeeldingen | 3000 | 2400 | 600 |
| Figshare | Glioom | 1426 | 1141 | 285 |
| Meningeoom | 708 | 566 | 142 |
| Hypofyse | 930 | 744 | 186 |
| Totaal aantal afbeeldingen | 3064 | 2451 | 613 |
| Sartaj | Glioom | 926 | 741 | 185 |
| Meningeoom | 937 | 749 | 188 |
| Geen tumor | 500 | 400 | 100 |
| Hypofyse | 901 | 721 | 180 |
| Totaal aantal afbeeldingen | 3264 | 2611 | 653 |
| Masoud | Glioom | 1621 | 1297 | 324 |
| Meningeoom | 1645 | 1316 | 329 |
| Geen tumor | 2000 | 1600 | 400 |
| Hypofyse | 1757 | 1405 | 352 |
| Totaal aantal afbeeldingen | 7023 | 5618 | 1405 |
| Gebalanceerde dataset van hersentumoren (BBT-Dataset) | Glioom | 1312 | 1050 | 262 |
| Meningeoom | 1312 | 1050 | 262 |
| Geen tumor | 1312 | 1050 | 262 |
| Hypofyse | 1312 | 1050 | 262 |
| Totaal aantal afbeeldingen | 5248 | 4200 | 1048 |
Tabel 2: Verdeling van de dataset. De tabel toont klas-specifieke statistieken van het totale aantal afbeeldingen, evenals de aantallen voor training en validatie in hersentumordatasets.
De Br35H-dataset bestaat uit 3000 afbeeldingen, waarvan er 2400 zijn geselecteerd voor training en 600 voor validatie. De Figshare-dataset omvat 3064 afbeeldingen. Van alle afbeeldingen zijn er 2451 geselecteerd voor training en de resterende 613 voor validatie. De Sartaj-dataset bevat in totaal 3264 afbeeldingen, waarvan 2611 zijn gebruikt voor training en de overige 653 voor validatie. De Masoud-dataset bevat in totaal 7023 afbeeldingen; hiervan zijn 5618 gebruikt voor training en de resterende 1405 voor validatie. De BBT-dataset bevat in totaal 5248 afbeeldingen. Van het totaal aantal afbeeldingen werden er 4200 gebruikt voor trainingsdoeleinden, terwijl de overige 1048 afbeeldingen werden gebruikt voor validatiedoeleinden. Daarnaast illustreert Figuur 2 hieronder de verschillende afbeeldingen van hersentumoren.

Figuur 2: Beelden van hersentumoren, inclusief tumortypen. De dataset bevat vier beelden van gezond hersenweefsel en drie beelden van tumoren: glioom, meningeoom en hypofyse. Klik hier om een grotere versie van deze figuur te bekijken.
Voorgesteld model
Na de voorverwerkingsfase is de volgende stap het voorstellen van een trainingsmodel dat specifiek effectief is voor de classificatie van hersentumoren. Hiervoor is een efficiënt model voor training voorgesteld, specifiek voor het classificeren van hersentumoren. In dit kader wordt een nieuw en efficiënt, op hybride feature-fusie gebaseerd pretrained model voorgesteld, inclusief DenseNet12131,32 en EfficientNetB733, welke werden gebruikt om de kenmerken uit de beelden te extraheren; vervolgens werden deze geëxtraheerde kenmerken geconcatenneerd en doorgegeven aan verschillende gefinetunede hyperparameters, inclusief trainbare en niet-trainbare lagen, om hersentumoren nauwkeurig te diagnosticeren. Dit is geïmplementeerd op vijf verschillende openbaar beschikbare datasets, die in de bovenstaande relevante secties zijn besproken. Verder is het DenseNet121-model in 2017 ontwikkeld door Gao Huang en zijn medewerkers en bestaat dit uit 121 lagen. Het hoofddoel van dit model was het maximaliseren van feature-hergebruik en het vermijden van het vanishing gradient-probleem34. De lagen in dit model zijn georganiseerd in dense blocks, die elk meerdere convolutionele lagen bevatten die kenmerken extraheren en leren. Elke laag gebruikt de feature map van alle voorafgaande lagen als input, en de output hiervan is verbonden met de outputs van die lagen en wordt in een feed-forward-wijze als input doorgegeven aan volgende lagen in hetzelfde blok. Daarnaast worden tussen de dense blocks transitielagen toegevoegd, elk bestaande uit een 1 × 1 convolutionele laag, een BatchNormalization-laag en 2 × 2 average pooling-lagen, die de feature map reduceren om de complexiteit van het model te beheersen. Bovendien wordt een laatste laag toegevoegd met een SoftMax-activatiefunctie (AF) vóór een global average pooling-laag voor classificatie. Het fundamentele ontwerp van het DenseNet121-model is hieronder weergegeven in Figuur 334.

Figuur 3: Architecturale details van DenseNet12134. Deze figuur toont de architecturale details van het DenseNet121-model, inclusief alle dense blocks en transitieblokken. Klik hier om een grotere versie van deze figuur te bekijken.
Verder werd het EfficientNetB7-model in 2019 ontwikkeld door Tan en Lee. Het behoort tot de EfficientNet-familie, met varianten van B0 tot B7, en het hoofddoel is om andere modellen te overtreffen terwijl er minder parameters en minder rekenkracht worden gebruikt. De modelbreedte (aantal kanalen per laag), diepte (aantal lagen) en resolutie kunnen allemaal worden geoptimaliseerd via compound scaling, wat de kernfunctie van het model is. Bovendien bestaat dit model uit MBConv (mobile inverted bottleneck convolutional) blokken, die een 1 × 1 convolutionele expansielaag hebben die verantwoordelijk is voor het uitbreiden van kanalen, een depthwise separable convolution die verantwoordelijk is voor het toepassen van convolutie op elk kanaal afzonderlijk, en een 1 × 1 convolutionele projectielaag die het aantal kanalen terugbrengt naar het oorspronkelijke aantal. Daarnaast bestaat elk MBConv-blok uit Squeeze and Excitation (SE) blokken35, die kanaal-specifieke kenmerken herkalibreren, waardoor het netwerk zich kan concentreren op de belangrijkste kenmerken. Verder wordt in plaats van sigmoid of een andere AF de Swish-functie gebruikt; deze presteert beter dan ReLU doordat negatieve waarden worden toegelaten, wat de gradiëntstroom bevordert. Bovendien wordt voor classificatiedoeleinden een uiteindelijke outputlaag met een SoftMax AF toegevoegd vóór een global average pooling-laag. Figuur 435 toont het basisontwerp van het EfficientNetB7-model, terwijl Figuur 5 de aanbevolen modelarchitectuur laat zien.

Figuur 4: Architectonisch detail van EfficientNetB735. Deze figuur toont het architectonisch detail van het EfficientNetB7-model, inclusief alle mobile inverted bottleneck convolutionele blokken. Klik hier om een grotere versie van deze figuur te bekijken.

Figuur 5: Voorgestelde hybride gefuseerde modelarchitectuur. De voorgestelde architectuur illustreert hoe voorbewerkte beelden worden doorgegeven aan de feature-extractor, die bestaat uit drie aangepaste blokken met verschillende hyperparameters, gevolgd door een outputlaag. Klik hier om een grotere versie van deze figuur te bekijken.
Daarnaast werden eerste kenmerken geëxtraheerd uit de vooraf getrainde DenseNet121- en EfficientNetB7-modellen. De bijgewerkte gewichten van de vooraf getrainde modellen werden geladen in de getrainde modellen, waarbij de niet-trainbare basislagen van de modellen werden bevroren om te voorkomen dat het model opnieuw getraind zou worden. Dit zou het model moeten helpen om de beste kennis uit het verleden te behouden, deze aan te passen in het licht van nieuwe datasamples om de convergentie te verbeteren, en zich te concentreren op extra lagen om te trainen en geavanceerde kenmerken te extraheren. De onderstaande vergelijkingen 1 en 2 tonen de werking van de DenseNet121- en EfficientNetB7-modellen.
(1)
(2)
De bovenstaande vergelijkingen 1 en 2 tonen de werking van het vooraf getrainde model met betrekking tot kenmertextractie; F1 staat voor de output-featuremaps gegenereerd door het vooraf getrainde DenseNet121-model en F2 staat voor de output-featuremaps gegenereerd door het vooraf getrainde EfficientNetB7-model door verwerking toe te passen op de input-afbeeldingen, weergegeven door X. Verder zijn W1 en W2 de leerbare parameters of gewichten geassocieerd met de eerste blokken en lagen van respectievelijk de DenseNet121- en EfficientNetB7-modellen. Bovendien vertegenwoordigen ∈ RN ×H1×W1×C1 en ∈ RN ×H2×W2×C2 respectievelijk de dimensionaliteit van de output-featuremaps van de DenseNet121- en EfficientNetB7-modellen, met dimensies van H1 ×N×W1×C1 en H2 ×N×W2×C2, waarbij N de batchgrootte van de afbeeldingen vertegenwoordigt, die is vastgesteld op 16. Verder vertegenwoordigt H1×W1 respectievelijk de hoogte en breedte van de afbeeldingen voor het DenseNet121-model en H2×W2 de hoogte en breedte van de afbeeldingen voor het EfficientNetB7-model, waarbij is gekozen voor afmetingen van 224 × 224. C1 en C2 vertegenwoordigen respectievelijk het kleurkanaal voor de DenseNet121- en EfficientNetB7-modellen. Nadat de output-featuremaps van het model zijn verkregen als 2560 kanalen output van EfficientNetB7 en 1024 van DenseNet121, wordt de global average pooling 2D36 laag toegepast op de output-featuremaps om de ruimtelijke dimensie te reduceren door het gemiddelde van alle ruimtelijke dimensies naar een enkele vector te brengen, wat gemakkelijker is om door te geven naar de volgende laag voor betere kenmertextractie en patroonherkenning in termen van interpreteerbare kenmerken.
(3)
(4)
De bovenstaande vergelijkingen 3 en 4 tonen de werking van de global average pooling 2D-laag toegepast op respectwelijks de DenseNet121- en EfficientNetB7-modellen, waarbij
en
de procedure laten zien voor het normaliseren van de som door te delen door het totale aantal ruimtelijke locaties voor beide modellen, om ervoor te zorgen dat de gepoolde output een gemiddelde is in plaats van een eenvoudige som.
en
representeren de sommatie over de ruimtelijke dimensies van de feature maps, terwijl i en j worden gebruikt voor het itereren over respectwelijks de hoogte en breedte, om de feature maps voor beide modellen op te tellen. Verder representeren F1(i, j, :) en F2(i, j, :) de waarden van de feature maps op specifieke ruimtelijke posities (i, j) over alle kanalen voor respectwelijks de DenseNet121- en EfficientNetB7-modellen. Deze pooling-operatie aggregeert ruimtelijke informatie tot een compactere en nauwkeurigere representatie, terwijl de belangrijkste kenmerken in elke afbeelding behouden blijven. Bovendien worden de outputs van de global average pooling-lagen geconcateneerd om een enkele feature vector per sample te produceren, wat vaak wordt gebruikt om kenmerken van verschillende modellen te fuseren en de prestaties te verbeteren door gebruik te maken van de sterke punten van beide modellen; vergelijking 5 laat zien hoe dit werkt.
(5)
Bovenstaande vergelijking 5 toont de concatenatieprocedure van twee verschillende model-featurevectoren [G1, G2], waarbij G1 de featurevector van het DenseNet121-model vertegenwoordigt en G2 de featurevector van het EfficientNetB7-model, terwijl de vorm van de geconcatenereerde featurevector wordt weergegeven door RN ×(C1+ C2), waarbij N de batchgrootte is, wat het aantal monsters vertegenwoordigt dat parallel wordt verwerkt, en (C1+ C2) het totale aantal features is dat respectievelijk uit model 1 en 2 wordt verkregen, wat ongeveer 3584 is en parallel wordt verwerkt; de geconcatenereerde output-featurevector wordt weergegeven door G. Verder zijn er drie verschillende blokken toegevoegd om het gefuseerde model aan te passen voor het extraheren van complexere features, het verbeteren van de generalisatie en het voorkomen van overfitting, om zo nauwkeurigere en efficiëntere resultaten te verkrijgen. Elk blok bestaat uit een dense layer met een verschillend aantal neuronen; het eerste blok heeft 1024 neuronen in zijn dense layers, die zich richten op het vastleggen van een breed scala aan features en meer generieke patronen in de data, terwijl het tweede blok 512 neuronen in zijn dense layer heeft, die de features specifiek verfijnen door de dimensionaliteit te verminderen en zich te concentreren op specifiekere patronen. Het derde blok bevat 256 neuronen in zijn dense layer, die de features specifieker distilleren om ervoor te zorgen dat alleen de meest relevante features en patronen naar de outputlaag worden doorgegeven voor het uitvoeren van een relevantere taak. Bovendien zijn L2-regularisatiebenaderingen37 toegevoegd aan elke dense layer in elk blok om overfitting te voorkomen door grotere gewichten te bestraffen, wat er ook toe leidt dat het model complexer wordt. Er is ook een dropoutlaag38 geïntroduceerd na elk blok om willekeurig respectievelijk 30%, 20% en 10% van de neuronen voor blok 1, 2 en 3 te negeren, wat de netwerken dwingt om robuustere features te ontwikkelen die niet afhankelijk zijn van een enkel neuron. Verder is, om het trainingsproces te stabiliseren, een BatchNormalization-laag39 toegepast na elke dense layer, wat ervoor zorgt dat de activaties binnen een stabiel bereik blijven en het model helpt om problemen zoals vanishing gradients en exploding gradients tijdens de trainingsfase te vermijden. Daarnaast heeft deze BatchNormalization-laag het trainingsproces versneld, waardoor het model sneller kon convergeren door het loss-landschap te egaliseren, wat het voor optimizers gemakkelijker maakte om globale minima te vinden. Verder is in elk blok, om non-lineariteit te produceren, leaky ReLU-activatie40 gebruikt, waardoor het model complexe patronen kan leren; leaky ReLU heeft voordelen ten opzichte van andere activatiefuncties doordat het ervoor zorgt dat het neuron niet inactief wordt door een kleine, on-nul gradiënt toe te staan voor negatieve inputs. Verder toont de onderstaande vergelijking 6 de werking van de verschillende blokken die zijn geïntegreerd in het hybride gefuseerde model.
(6)
Nadat de geconcateneerde vector is verkregen, wordt G door de dense layer (volledig verbonden) van blok 1 geleid met 1024 neuronen, waarbij de gewichtsmatrix W1 de inputvector G transformeert naar een 1024-dimensionale outputvector en elk element in de outputvector een lineaire combinatie is van de inputfeatures. Vervolgens wordt de biasvector b1 toegevoegd aan elk van de 1024 elementen in de output, waardoor het model de output van de inputfeatures onafhankelijk kan verschuiven. Daarnaast straft de L2-regularisatieterm: λ||W1||22 grote gewichten af, wat voorkomt dat het model overmatig afhankelijk wordt van een enkel neuron, wat helpt bij het vermijden van overfitting. Hierbij is de gewichtsmatrix van een specifieke laag in het neurale netwerk W1, terwijl ||W1||22 de gekwadrateerde L2-norm van de gewichtsmatrix W1 aanduidt en λ de regularisatieparameter is die de mate van toegepaste regularisatie beheerst, welke in alle blokken is ingesteld op 0,1. Z1 wordt de nieuwe feature-representatie na toepassing van de dense layer en de L2-regularisatie op de input uit de geconcateneerde vector G, zoals weergegeven in vergelijking 6.
Nadat de output van de dense-laag van blok 1 was verkregen als Z1, werd de BatchNormalization-laag toegepast om het trainingsproces te versnellen; onderstaande vergelijking 7 laat zien hoe dit werkt.
(7)
σ2 representeert de variantie van de output van de laatste laag Z1 over de batch, terwijl μ het gemiddelde is van de output Z1, welke afzonderlijk voor elk neuron wordt berekend, zijnde 1024 in de eerste dense laag. Daarentegen is ε een kleine constante die is toegevoegd om numerieke stabiliteit te waarborgen en deling door nul te voorkomen. De genormaliseerde output kan door het model worden aangepast via de leerbare schaalparameter γ, terwijl de genormaliseerde output kan worden verschoven door de leerbare shiftparameter β. Ten slotte zorgt de genormaliseerde output Z1, na toepassing van de BatchNormalization-laag op de output van de dense laag, ervoor dat de activaties een consistente distributie hebben over de verschillende lagen, wat helpt bij het stabiliseren en versnellen van de training. Na de BatchNormalization gaat de genormaliseerde output Z1 door de leaky ReLU-activatiefunctie, die niet-lineariteit in het netwerk introduceert om het leren van complexe patronen in de data te ondersteunen. In plaats van ReLU of een andere activatiefunctie is gekozen voor leaky ReLU; dit is een gemodificeerde versie van de ReLU-functie die ook kleine negatieve waarden meeneemt in plaats van deze op 0 te zetten, zoals bij de ReLU-activatiefunctie, om zo het 'dying ReLU'-probleem te overwinnen. Vergelijking 8 hieronder laat zien hoe dit werkt.
(8)
Waarbij Z1 de output is van de BatchNormalization-laag, die als input naar Leaky ReLU wordt doorgegeven om non-lineariteit toe te passen, terwijl ∝ een kleine constante is die wordt gebruikt om de helling van het negatieve deel van de functie te bepalen. Verder geeft A1 de output weer die wordt verkregen na het toepassen van de non-lineariteit. Ten slotte wordt een dropout-laag toegepast op de output A1 die als input wordt ontvangen van de Leaky ReLu-activatie, zoals weergegeven in vergelijking 9.
(9)
Waarbij A1 de oorspronkelijke output van de activatiefunctie is die is ontvangen van de laatste ReLu-activatiefunctie, en waarbij p de dropout-rate is, die varieert tussen 0 en 1 en is gekozen als respectievelijk 0,3, 0,2 en 0,1 voor drie bloklagen, enkel om een fractie van de neuronen weg te laten. Verder toont A1′ de gewijzigde output na toepassing van de dropout-laag, waarbij sommige neuronen op 0 zijn gezet. Het belangrijkste voordeel van dit gebruik is het voorkomen van overfitting-problemen en het verminderen van co-adaptatie. Vervolgens wordt de output van blok 1, A1′, opnieuw doorgegeven aan het volgende blok om opnieuw abstractere kenmerken te extraheren, waarbij dezelfde parameters als in blok 1 zijn toegepast, met als enig onderscheid 512 neuronen in de dense layer in plaats van 1024 en een dropout-rate van 0,2 in plaats van 0,3; de overige operationele sequenties zijn hetzelfde, zoals beschreven in de onderstaande vergelijkingen 10 tot 13.
(10)
(11)
(12)
(13)
Nadat de output van blok 1 is verkregen als A1′, wordt deze door de dense layer (volledig verbonden) van blok 2 geleid met 512 neuronen, waarbij de gewichtsmatrix W2 de inputvector A1′ transformeert in een 512-dimensionale outputvector, en elk element in de outputvector een lineaire combinatie is van de inputkenmerken. Vervolgens wordt de biasvector b2 toegevoegd aan elk van de 512 elementen in de output, waardoor het model de output van de inputkenmerken onafhankelijk kan verschuiven. Daarnaast is L2-regularisatie toegepast waarbij λ||W2||22 grote gewichten bestraft, wat dient om overfitting te beperken door te voorkomen dat het model een overmatige afhankelijkheid plaatst bij een specifiek neuron in dit specifieke blok. Hierbij is W2 de gewichtsmatrix van een specifieke laag in het neurale netwerk, terwijl λ de regularisatieparameter is die de mate van toegepaste regularisatie beheerst, welke is ingesteld op 0.1. Z2 wordt de nieuwe kenmerkrepresentatie na toepassing van de dense layer en L2-regularisatie op de input uit blok 1, zoals weergegeven in vergelijking 10.
Verder werd de BatchNormalization-laag toegepast op de nieuwe feature Z2, die werd gebruikt om het trainingsproces te versnellen; σ22 representeert de variantie over de batch, terwijl μ2 het gemiddelde is van de output Z2. Hoewel ε een kleine constante is die is toegevoegd om de numerieke stabiliteit te waarborgen, is γ een leerbare schaalparameter waarmee het model de genormaliseerde output kan aanpassen, en β is een leerbare verschuivingsparameter waarmee het model de genormaliseerde output kan verschuiven. Ten slotte, na het toepassen van de BatchNormalization-laag, zoals weergegeven in vergelijking 11, ging de genormaliseerde output Z2 door de leaky ReLU AF, wat non-lineariteit in het netwerk produceerde, zoals weergegeven in vergelijking 12. Hierbij behoort Z2 tot de output van de BatchNormalization-laag, die als input naar Leaky ReLU gaat voor het realiseren van de non-lineariteit. Terwijl A2 de output weergeeft die is verkregen na het toepassen van de non-lineariteit.
Ten slotte wordt een dropout-laag toegepast op de output A2 die als input is ontvangen van de Leaky ReLU-activatie, zoals weergegeven in vergelijking 13. Hierbij is A2 de output van de laatste ReLU-activatiefunctie en is p2 de dropout-rate, die voor dit blok op 0,2 is ingesteld om een fractie van de neuronen weg te laten. Verder toont A2′ de aangepaste output na toepassing van de dropout-laag, waarbij sommige neuronen op 0 zijn gezet. Vervolgens wordt de output van blok 2, A2′, opnieuw doorgegeven aan het derde blok om opnieuw meer abstracte kenmerken te extraheren. Hierbij zijn dezelfde parameters toegepast als in blok 2, met als enige verschillen 256 neuronen in de dense layer in plaats van 512 en een dropout-rate van 0,1 in plaats van 0,2; de overige operationele sequenties zijn gelijk, zoals beschreven in de onderstaande vergelijkingen 14 tot 17.
(14)
(15)
(16)
(17)
Nadat de output van blok 2 is verkregen als A2′, wordt deze doorgegeven aan de dense layer (volledig verbonden) van blok 3 met 256 neuronen, waarbij de gewichtsmatrix W3 de inputvector A2′ transformeert naar een 256-dimensionale outputvector, en elk element in de outputvector een lineaire combinatie is van de inputkenmerken. Vervolgens wordt de biasvector b3 toegevoegd aan elk van de 256 elementen in de output, waardoor het model de output van de inputkenmerken onafhankelijk kan verschuiven. Verder is er L2-regularisatie toegepast waarbij λ||W3||22 grote gewichten bestraft; dit voorkomt dat het model overmatig afhankelijk wordt van een enkel neuron, wat helpt bij het vermijden van overfitting. Hierbij is W3 de gewichtsmatrix van een specifieke laag in het neurale netwerk, terwijl de graad van de toegepaste regularisatie wordt gecontroleerd door de regularisatieparameter λ, die is ingesteld op 0,01. Z3 wordt de nieuwe kenmerkrepresentatie na toepassing van de dense layer en de L2-regularisatie op de input vanuit blok 3, zoals weergegeven in vergelijking 14.
Verder is de BatchNormalization-laag toegepast op de nieuwe kenmerk Z3, wat werd gebruikt om het trainingsproces te versnellen; σ32 vertegenwoordigt de variantie over de batch, terwijl μ3 het gemiddelde is van de output Z3. Daarbij is ε de kleine constante die wordt toegevoegd voor numerieke stabiliteit. De genormaliseerde output kan door het model worden aangepast met de leerbare schaalparameter γ3 en worden verschoven met de leerbare shiftparameter β3. Ten slotte, na het toepassen van de BatchNormalization-laag, zoals weergegeven in vergelijking 15, ging de genormaliseerde output Z3 door de leaky ReLU-activeringsfunctie, die voor non-lineariteit in het netwerk zorgde, zoals weergegeven in vergelijking 16. Hierbij behoort Z3 tot de output van de BatchNormalization-laag, die als input naar Leaky ReLU gaat om non-lineariteit te genereren. Terwijl A3 de output laat zien die wordt verkregen na het toepassen van de non-lineariteit.
Ten slotte wordt een dropout-laag toegepast op de output A3 die als input wordt ontvangen van de Leaky ReLU-activatie, zoals weergegeven in vergelijking 17. Hierbij is A3 de output van de laatste ReLU-activatiefunctie, en p3 de dropout-rate, die voor dit blok op 0.1 is gesteld om een fractie van de neuronen te verwijderen. Verder toont A3′ de gewijzigde output na toepassing van de dropout-laag, waarbij sommige neuronen op 0 zijn gezet.
Verder wordt de output van blok 3 A3′ door de laatste dichte laag geleid voor classificatiedoeleinden met een K-aantal neuronen dat het werkelijke aantal klassen in de dataset vertegenwoordigt, zoals beschreven in vergelijking 18 hieronder.
(18)
De gewichtsmatrix gekoppeld aan de dikke laag is Wk, die verantwoordelijk is voor het transformeren van de 256-dimensionale vector A3′ naar een k-dimensionale vector, die de geleerde kenmerken uit het vorige blok representeert en als output dient. Verder representeert bk de bias-vector die de voorspelling aanpast om te garanderen dat de activatiefunctie een output ongelijk aan nul heeft wanneer de input nul is, en Zk is de output van de laatste laag vóór de toepassing van de activatiefunctie, welke de logits per klasse produceert; tot slot is een SoftMax41-classifier toegepast die de logit Zk omzet in de waarschijnlijkheid van elke klasse, zoals weergegeven in vergelijkingen 19 en 20.
(19)
(20)
Waarbij de voorspelde waarschijnlijkheid van de ide klasse wordt weergegeven door yi, K het aantal klassen is, terwijl Zk, i de logit is voor de ide klasse, en eZk, i de exponentiële waarde is van de logit van de ide klasse. y toont de waarschijnlijkheidsverdeling van alle mogelijke klassen en zorgt ervoor dat de som van de waarschijnlijkheden 1 is. Tabel 3 hieronder geeft de details van de hyperparameters die zijn gebruikt om het voorgestelde hybride model te trainen, inclusief de architecturale details die zijn toegepast voor verbeterde reproduceerbaarheid en prestaties.
| Hyperparameters | Voorgesteld model (FusionNetX) |
| Afbeeldingsgrootte | 224 × 224 |
| Backbone-architectuur | Voorgeconfigureerde EfficientNetB7 en DenseNet121 als BBA1 en BBA2 |
| Data-augmentatie | Rotatiebereik = 7, |
| Breedte/hoogte – verschuivingsbereik tot 0,05, |
| Zoombereik tot 0,01, |
| Horizontaal/verticaal spiegelen |
| Gegevenssplitsingsverhouding | 80% voor training en 20% voor validatie via gestratificeerde steekproefmeting met een vaste random_state = 42 |
| Kenmerkextractie en -fusie | Global average pooling wordt toegepast op de output van elke backbone: 2560 voor BBA1 en 1024 voor BBA2, die vervolgens worden gefuseerd om 3584 gezamenlijke kenmerkvectoren te verkrijgen. |
| Samenstelling van het volledig verbonden blok | 3 volledig verbonden blokken met 1 outputlaag. Elk blok bevat L2-regularisatie (λ=0,01), BatchNormalization, LeakyReLU (α=0,01), Dropout van (0,3, 0,2 en 0,1) en een verborgen dimensie van respectievelijk (1024, 512, 256). Er is geen extra skip-verbinding geïntroduceerd in de fusion head. |
| Activeringsfunctie | Leaky ReLU & SoftMax |
| Optimizer en leersnelheid | Adam met 0,00001 vastgesteld zonder learning rate scheduler. |
| Verliesfunctie | sparse_categorical_crossentropy |
| Batchgrootte | 16 |
| Epochs | 100 vaste epochs voor elke dataset |
| Gebruikt platform | Kaggle Notebook met een P100 GPU en 16 GB VRAM met de TensorFlow- en Keras-platforms. |
Tabel 3: Hyperparameters gebruikt voor het trainen van het voorgestelde model en de voorgestelde architecturale details.Deze tabel geeft de structurele en architecturale details van het voorgestelde model, samen met de gefinetunede parameters en de implementatieomgeving.