| Literature DB >> 33810176 |
Jaeyong Kang1, Zahid Ullah1, Jeonghwan Gwak1,2,3,4.
Abstract
Brain tumor classification plays an important role in clinical diagnosis and effective treatment. In this work, we propose a method for brain tumor classification using an ensemble of deep features and machine learning classifiers. In our proposed framework, we adopt the concept of transfer learning and uses several pre-trained deep convolutional neural networks to extract deep features from brain magnetic resonance (MR) images. The extracted deep features are then evaluated by several machine learning classifiers. The top three deep features which perform well on several machine learning classifiers are selected and concatenated as an ensemble of deep features which is then fed into several machine learning classifiers to predict the final output. To evaluate the different kinds of pre-trained models as a deep feature extractor, machine learning classifiers, and the effectiveness of an ensemble of deep feature for brain tumor classification, we use three different brain magnetic resonance imaging (MRI) datasets that are openly accessible from the web. Experimental results demonstrate that an ensemble of deep features can help improving performance significantly, and in most cases, support vector machine (SVM) with radial basis function (RBF) kernel outperforms other machine learning classifiers, especially for large datasets.Entities:
Keywords: brain tumor classification; deep learning; ensemble learning; machine learning; transfer learning
Mesh:
Year: 2021 PMID: 33810176 PMCID: PMC8004778 DOI: 10.3390/s21062222
Source DB: PubMed Journal: Sensors (Basel) ISSN: 1424-8220 Impact factor: 3.576
Work Related to Brain Tumor Classification.
| Author | Type of Solution | Classification Method | Objective | Dataset | Feature Extraction Method | Accuracy |
|---|---|---|---|---|---|---|
| Rajan and Sundar, 2019 | Classical Machine Learning-based Solutions | Support vector machine (SVM) | Tumor detection and segmentation | 41 magnetic resonance (MR) images | Adaptive Gray-Level Co-Occurrence Matrix (AGLCM) | 98% |
| Kharrat et al., 2010 | Hybrid method-Genetic algorithm with SVM | Classification of brain tumor into normal, malignant, and benign tumor | 83 MR images | Wavelet-based features | 98.14% | |
| Shree and Kumar, 2018 | Probabilistic neural network (PNN) | Classification of brain MRI into normal and abnormal | 650 MR images | Gray level co-occurrence matrix | 95% | |
| Arunachalam and Royappan, 2017 | Feed-forward back propagation neural network | Classification of brain MRI into normal and abnormal | 230 MR images | Gabor, GLCM, and discrete wavelet transform (DWT) | 99.8% | |
| Ullah et al., 2020 | Feed-forward neural network | Classification of brain MRI intonormal and abnormal | 71 MR images | DWT | 95.8% | |
| B. Ural, 2018 | PNN | Brain tumor detection | 25 MR images | k-mean with fuzzy c-mean (KMFCM) | 90% | |
| Preethi and Ashwarya, 2019 | Deep neural network (DNN) | Classification of tumor and non-tumor image | 20 MR images | GLCM + Wavelet GLCM | 99.3% | |
| Francisco et al., 2021 | Advanced Deep Learning-based Solutions | Multi-pathway convolutional neural network (CNN) | Brain tumor classification | 3064 MR images | CNN | 97.3% |
| Deepak and Ameer, 2019 | Deep transfer learning | Classification of glioma, meningioma, and pituitary tumors | 3064 MR images | GoogleNet | 98% | |
| Ahmet and Mohammad, 2020 | CNN models | Brain tumor detection and classification | 253 MR images | CNN | 97.2% | |
| Das et al., 2019 | CNN | Brain tumor classification | 3064 MR images | CNN | 94.39% | |
| Saed et al., 2017 | CNN | Classification of brain MRI into normal and abnormal | 587 MR images | CNN | 91.16% | |
| Saxena et al., 2019 | CNN networks with transfer learning | Binary classification of brain tumor into normal and abnormal | 253 MR images | CNN | 95% | |
| Paul et al., 2017 | Fully connected and CNN | Brain tumor classification | 3064 MR images | CNN | 91.43% | |
| Hemanth et al., 2019 | CNN | MR brain image classification into normal and abnormal | 220 MR images | CNN | 94.5% |
Figure 1Architecture of our proposed model using feature ensemble based on deep feature evaluation and selection.
Figure 2Step to crop the magnetic resonance (MR) images.
Figure 3Architecture of Convolutional Neural Networks.
Figure 4Concept of transfer learning.
Kernel types and their required parameters.
| Kernel | Equation | Parameters |
|---|---|---|
| Linear |
| - |
| Sigmoid |
|
|
| RBF |
|
|
Details of the dataset.
| Types | Number of Class | Training Set | Test Set |
|---|---|---|---|
| BT-small-2c | 2 | 202 | 51 |
| BT-large-2c | 2 | 2400 | 600 |
| BT-large-4c | 4 | 2611 | 653 |
Figure 5The examples of brain MR images in BT-small-2c, BT-large-2c, and BT-large-4c datasets.
Accuracies of pre-trained CNN models with ML classifiers on BT-small-2c dataset (⋆ : top-3 features based on average accuracy).
| Deep Feature from the Pre-Trained CNN Model | ML Classifier—Accuracy | |||||||||
|---|---|---|---|---|---|---|---|---|---|---|
| FC | Gaussian NB | AdaBoost | k-NN | RF | SVM (Linear) | SVM (Sigmoid) | SVM (RBF) | ELM | Average | |
| ResNet-50 feature | 0.9216 | 0.8431 | 0.8431 | 0.8627 | 0.8824 | 0.8235 | 0.8824 | 0.9020 | 0.9020 | 0.8736 |
| ResNet-101 feature | 0.9216 | 0.8824 | 0.8431 | 0.8235 | 0.9020 | 0.8235 | 0.8824 | 0.9020 | 0.8824 | 0.8736 |
| DenseNet-121 feature | 0.9216 | 0.7647 | 0.8235 | 0.9216 | 0.8824 | 0.8431 | 0.8824 | 0.8627 | 0.9020 | 0.8671 |
| DenseNet-169 feature ⋆ | 0.9608 | 0.8039 | 0.8627 | 0.9020 | 0.9412 | 0.9608 | 0.9608 | 0.9804 | 0.9412 |
|
| VGG-16 feature | 0.8431 | 0.7451 | 0.7451 | 0.7059 | 0.8431 | 0.8627 | 0.8627 | 0.8039 | 0.8039 | 0.8017 |
| VGG-19 feature | 0.8235 | 0.6863 | 0.7843 | 0.6863 | 0.8235 | 0.8235 | 0.8235 | 0.8235 | 0.9020 | 0.7974 |
| AlexNet feature | 0.9216 | 0.7255 | 0.8431 | 0.7843 | 0.9020 | 0.8235 | 0.8627 | 0.9020 | 0.9020 | 0.8519 |
| Inception V3 feature ⋆ | 0.9216 | 0.8824 | 0.9020 | 0.8235 | 0.9412 | 0.9020 | 0.9020 | 0.9020 | 0.9020 | 0.8976 |
| ResNeXt-50 feature ⋆ | 0.9412 | 0.9020 | 0.9020 | 0.9020 | 0.9216 | 0.9216 | 0.9216 | 0.9216 | 0.9216 | 0.9172 |
| ResNeXt-101 feature | 0.9216 | 0.8039 | 0.8235 | 0.8235 | 0.9020 | 0.8627 | 0.9020 | 0.9216 | 0.9216 | 0.8758 |
| ShuffleNet V2 feature | 0.8431 | 0.7647 | 0.9216 | 0.8627 | 0.9020 | 0.9412 | 0.9412 | 0.9412 | 0.9412 | 0.8954 |
| MobileNet V2 feature | 0.8824 | 0.8431 | 0.7843 | 0.8431 | 0.8824 | 0.8627 | 0.8824 | 0.8824 | 0.8627 | 0.8584 |
| MnasNet feature | 0.9216 | 0.7843 | 0.8235 | 0.8235 | 0.9216 | 0.8431 | 0.8627 | 0.8627 | 0.9020 | 0.8606 |
| Average |
| 0.8024 | 0.8386 | 0.8281 | 0.8959 | 0.8688 | 0.8899 | 0.8929 | 0.8989 | |
The bold text represents the highest average accuracy of all ML classifier or all deep features.
Accuracies of pre-trained CNN models with ML classifiers on BT-large-2c dataset (⋆ : top-3 features based on average accuracy).
| Deep Feature from the Pre-Trained CNN Model | ML Classifier—Accuracy | |||||||||
|---|---|---|---|---|---|---|---|---|---|---|
| FC | Gaussian NB | AdaBoost | k-NN | RF | SVM (Linear) | SVM (Sigmoid) | SVM (RBF) | ELM | Average | |
| ResNet-50 feature | 0.9767 | 0.8117 | 0.9600 | 0.9767 | 0.9400 | 0.9750 | 0.9750 | 0.9817 | 0.9667 | 0.9515 |
| ResNet-101 feature | 0.9767 | 0.8250 | 0.9433 | 0.9733 | 0.9567 | 0.9750 | 0.9733 | 0.9800 | 0.9717 | 0.9528 |
| DenseNet-121 feature ⋆ | 0.9750 | 0.8383 | 0.9600 | 0.9817 | 0.9683 | 0.9683 | 0.9683 | 0.9833 | 0.9817 | 0.9583 |
| DenseNet-169 feature | 0.9750 | 0.8400 | 0.9650 | 0.9783 | 0.9633 | 0.9667 | 0.9650 | 0.9800 | 0.9800 | 0.9570 |
| VGG-16 feature | 0.9550 | 0.7383 | 0.8833 | 0.9617 | 0.9283 | 0.9517 | 0.9500 | 0.9650 | 0.9550 | 0.9209 |
| VGG-19 feature | 0.9550 | 0.7067 | 0.8850 | 0.9600 | 0.9300 | 0.9550 | 0.9550 | 0.9633 | 0.9450 | 0.9172 |
| AlexNet feature | 0.9633 | 0.7067 | 0.9200 | 0.9550 | 0.9500 | 0.9400 | 0.9500 | 0.9750 | 0.9633 | 0.9248 |
| Inception V3 feature | 0.9817 | 0.8317 | 0.9567 | 0.9800 | 0.9567 | 0.9750 | 0.9733 | 0.9883 | 0.9800 | 0.9581 |
| ResNeXt-50 feature | 0.9717 | 0.8600 | 0.9550 | 0.9817 | 0.9550 | 0.9700 | 0.9683 | 0.9833 | 0.9750 | 0.9578 |
| ResNeXt-101 feature ⋆ | 0.9783 | 0.8583 | 0.9633 | 0.9833 | 0.9617 | 0.9717 | 0.9717 | 0.9817 | 0.9817 |
|
| ShuffleNet V2 feature | 0.9433 | 0.8533 | 0.9533 | 0.9700 | 0.9517 | 0.9617 | 0.9617 | 0.9783 | 0.9700 | 0.9493 |
| MobileNet V2 feature | 0.9667 | 0.8400 | 0.9367 | 0.9700 | 0.9450 | 0.9617 | 0.9617 | 0.9783 | 0.9633 | 0.9470 |
| MnasNet feature ⋆ | 0.9817 | 0.8550 | 0.9467 | 0.9750 | 0.9567 | 0.9700 | 0.9733 | 0.9817 | 0.9833 | 0.9581 |
| Average | 0.9692 | 0.8127 | 0.9406 | 0.9728 | 0.9510 | 0.9647 | 0.9651 |
| 0.9705 | |
The bold text represents the highest average accuracy of all ML classifier or all deep features.
Accuracies of pre-trained CNN models with ML classifiers on BT-large-4c dataset (⋆ : top-3 features based on average accuracy).
| Deep Feature from the Pre-Trained CNN Model | ML Classifier—Accuracy | |||||||||
|---|---|---|---|---|---|---|---|---|---|---|
| FC | Gaussian NB | AdaBoost | k-NN | RF | SVM (Linear) | SVM (Sigmoid) | SVM (RBF) | ELM | Average | |
| ResNet-50 feature | 0.8760 | 0.6937 | 0.6570 | 0.8576 | 0.8530 | 0.8744 | 0.8760 | 0.8989 | 0.8591 | 0.8273 |
| ResNet-101 feature | 0.8867 | 0.7228 | 0.6799 | 0.8438 | 0.8499 | 0.8897 | 0.8897 | 0.9081 | 0.8683 | 0.8377 |
| DenseNet-121 feature | 0.8913 | 0.7106 | 0.7198 | 0.8943 | 0.8744 | 0.8698 | 0.8729 | 0.9158 | 0.8760 | 0.8472 |
| DenseNet-169 feature ⋆ | 0.8959 | 0.7228 | 0.7335 | 0.8821 | 0.8652 | 0.8652 | 0.8729 | 0.9204 | 0.8806 | 0.8487 |
| VGG-16 feature | 0.8760 | 0.6677 | 0.7106 | 0.8331 | 0.8300 | 0.8606 | 0.8606 | 0.8744 | 0.8423 | 0.8173 |
| VGG-19 feature | 0.8683 | 0.5942 | 0.6309 | 0.8346 | 0.8377 | 0.8606 | 0.8606 | 0.8790 | 0.8453 | 0.8013 |
| AlexNet feature | 0.8637 | 0.6340 | 0.6554 | 0.8714 | 0.8453 | 0.8652 | 0.8683 | 0.9066 | 0.8361 | 0.8162 |
| Inception V3 feature | 0.8652 | 0.6708 | 0.6830 | 0.8300 | 0.8132 | 0.8591 | 0.8591 | 0.8867 | 0.8438 | 0.8123 |
| ResNeXt-50 feature | 0.8744 | 0.7152 | 0.6891 | 0.8775 | 0.8346 | 0.8560 | 0.8576 | 0.8959 | 0.8560 | 0.8285 |
| ResNeXt-101 feature | 0.8851 | 0.6692 | 0.7198 | 0.8714 | 0.8346 | 0.8744 | 0.8744 | 0.8989 | 0.8744 | 0.8336 |
| ShuffleNet V2 feature ⋆ | 0.8637 | 0.7152 | 0.7381 | 0.8637 | 0.8576 | 0.8989 | 0.8989 | 0.9112 | 0.8606 | 0.8453 |
| MobileNet V2 feature | 0.8928 | 0.6983 | 0.7136 | 0.8897 | 0.8423 | 0.8851 | 0.8851 | 0.9158 | 0.8729 | 0.8440 |
| MnasNet feature ⋆ | 0.8851 | 0.6922 | 0.7458 | 0.8928 | 0.8515 | 0.8959 | 0.8959 | 0.9127 | 0.8775 |
|
| Average | 0.8788 | 0.6851 | 0.6982 | 0.8648 | 0.8453 | 0.8735 | 0.8748 |
| 0.8610 | |
The bold text represents the highest average accuracy of all ML classifier or all deep features.
Accuracies of ensemble of pre-trained CNN models with ML classifiers on BT-small-2c dataset.
| Deep Feature from the Pre-Trained CNN Model | ML Classifier—Accuracy | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| FC | Gaussian NB | AdaBoost | k-NN | RF | SVM (Linear) | SVM (Sigmoid) | SVM (RBF) | ELM | |
| DenseNet-169 feature |
| 0.8039 | 0.8627 | 0.9020 |
|
|
|
|
|
| Inception V3 feature | 0.9216 | 0.8824 |
| 0.8235 |
| 0.9020 | 0.9020 | 0.9020 | 0.9020 |
| ResNeXt-50 | 0.9412 |
| 0.9020 | 0.9020 | 0.9216 | 0.9216 | 0.9216 | 0.9216 | 0.9216 |
| (DenseNet-169 + Inception V3) feature | 0.9412 | 0.8627 | 0.9020 | 0.8824 | 0.9020 | 0.9412 | 0.9412 | 0.9608 |
|
| (DenseNet-169 + ResNeXt-50) feature | 0.9412 |
|
| 0.8627 | 0.9216 | 0.9216 | 0.9412 | 0.9412 |
|
| (Inception V3 + ResNeXt-50) feature | 0.9412 |
| 0.8824 |
|
| 0.9216 | 0.9412 | 0.9412 |
|
| (DenseNet-169 + Inception V3 + ResNeXt-50) feature | 0.9412 |
|
| 0.9020 | 0.9216 | 0.9020 | 0.9412 | 0.9412 | 0.9216 |
The bold text represents the highest accuracy for each ML classifier.
Accuracies of ensemble of pre-trained CNN models with ML classifiers on BT-large-2c dataset.
| Deep Feature from the Pre-Trained CNN Model | ML Classifier—Accuracy | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| FC | Gaussian NB | AdaBoost | k-NN | RF | SVM (Linear) | SVM (Sigmoid) | SVM (RBF) | ELM | |
| DenseNet-121 feature | 0.9750 | 0.8383 | 0.9600 | 0.9817 | 0.9683 | 0.9683 | 0.9683 | 0.9833 | 0.9817 |
| ResNeXt-101 feature | 0.9783 | 0.8583 | 0.9633 | 0.9833 | 0.9617 | 0.9717 | 0.9717 | 0.9817 | 0.9817 |
| MnasNet feature | 0.9817 | 0.8550 | 0.9467 | 0.9750 | 0.9567 | 0.9700 | 0.9733 | 0.9817 | 0.9833 |
| (DenseNet-121 + ResNeXt-101) feature | 0.9800 | 0.8733 | 0.9700 | 0.9817 | 0.9667 | 0.9783 | 0.9783 | 0.9833 | 0.9850 |
| (DenseNet-121 + MnasNet) feature | 0.9817 | 0.8767 | 0.9633 |
| 0.9683 | 0.9700 | 0.9717 | 0.9783 | 0.9767 |
| (ResNeXt-101 + MnasNet) feature |
| 0.8700 | 0.9633 |
| 0.9667 |
|
|
| 0.9850 |
| (DenseNet-121 + ResNeXt-101 + MnasNet) feature |
|
|
| 0.9817 |
| 0.9783 | 0.9800 |
|
|
The bold text represents the highest accuracy for each ML classifier.
Accuracies of ensemble of pre-trained CNN models with ML classifiers on BT-large-4c dataset.
| Deep Feature from the Pre-Trained CNN Model | ML Classifier—Accuracy | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| FC | Gaussian NB | AdaBoost | k-NN | RF | SVM (Linear) | SVM (Sigmoid) | SVM (RBF) | ELM | |
| DenseNet-169 feature | 0.8959 | 0.7228 | 0.7335 | 0.8821 | 0.8652 | 0.8652 | 0.8729 | 0.9204 | 0.8806 |
| Shufflenet feature | 0.8637 | 0.7152 | 0.7381 | 0.8637 | 0.8576 | 0.8989 | 0.8989 | 0.9112 | 0.8606 |
| MnasNet feature | 0.8851 | 0.6922 | 0.7458 | 0.8928 | 0.8515 | 0.8959 | 0.8959 | 0.9127 | 0.8775 |
| (DenseNet-169 + Shufflenet) feature | 0.8959 |
| 0.7427 | 0.8821 | 0.8668 | 0.8668 | 0.8714 | 0.9204 | 0.8744 |
| (DenseNet-169 + MnasNet) feature | 0.9142 | 0.7259 | 0.7274 |
| 0.8668 |
|
|
| 0.8790 |
| (Shufflenet + MnasNet) feature | 0.8913 | 0.7305 | 0.7397 | 0.8943 |
| 0.8974 | 0.8974 | 0.9127 | 0.8637 |
| (DenseNet-169 + Shufflenet + MnasNet) feature |
| 0.7397 |
|
| 0.8760 |
|
|
|
|
The bold text represents the highest accuracy for each ML classifier.
Computational complexity of ensemble of pre-trained CNN models with ML classifiers on BT-large-4c dataset.
| Deep Feature from the Pre-Trained CNN Model | ML Classifier—Accuracy | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| FC | Gaussian NB | AdaBoost | k-NN | RF | SVM (Linear) | SVM (Sigmoid) | SVM (RBF) | ELM | |
| (DenseNet-169 + Shufflenet) feature | 0.0222 | 0.0214 | 0.2709 | 5.0436 | 0.0148 | 1.7390 | 1.9813 | 2.2653 | 0.1831 |
| (DenseNet-169 + MnasNet) feature | 0.0225 | 0.0232 | 0.3070 | 5.5191 | 0.0187 | 1.9650 | 2.1004 | 2.5780 | 0.2184 |
| (Shufflenet + MnasNet) feature | 0.0224 | 0.0186 | 0.2403 | 4.3021 | 0.0170 | 1.4580 | 1.4725 | 2.2544 | 0.1784 |
| (DenseNet-169 + Shufflenet + MnasNet) feature | 0.0229 | 0.0312 | 0.4133 | 7.4238 | 0.0247 | 2.6586 | 2.8507 | 3.4730 | 0.2772 |