Bone scintigraphy based on deep learning model and modified growth optimizer

The growth optimizer (GO)GO is a new metaheuristic algorithm for global optimization; The learning and reflection processes individuals use during their social growth activities serve as the main source of inspiration for its design. Learning is the process by which people grow via gaining knowledge from the external world. examining one’s shortcomings and modifying one’s learning techniques to support one’s growth is the process of Reflection64.(1) Learning phase:Four combined gaps are mathematically modeled in the GO learning phase: the gap amidst the leader and the elite (\(\:Gap\)1), the gap amidst the leader and the bottom (\(\:Gap\)2), the gap amidst the elite and the bottom (\(\:Gap\)3), and the gap amidst two random individuals (\(\:Gap\)4).$$\:\left\{\begin{array}{c}{Gap}_{1}={X}_{best}-{X}_{better\:}\\\:{Gap}_{2}={X}_{best}-{X}_{worse}\\\:{Gap}_{3}={X}_{better}-{X}_{worse}\\\:{Gap}_{4}={X}_{L1}-{X}_{L2}\end{array}\right.$$
(1)
Equation (1) describes the mathematical model for each collection of gaps. In which \(\:{X}_{best}\) stands for the society’s leader, and \(\:{X}_{better}\:\)represent for one of the next P1 − 1 best individuals, denoted as an elite, \(\:{X}_{worse}\:\)is one of the population’s P1 lowest-ranking individuals and is at the bottom of the social hierarchy. Both \(\:{X}_{L1}\) and \(\:{X}_{L1}\) are different individuals from the ith individuals randomly. The gap among two individuals is measured by\(\:\:Gap\)k (k = 1, 2, 3, 4).The learning effect of LFk on the kth group gap will be influenced by it, and LFk is modeled as follows (Eq. (2)).The ith individual utilizes SFi to measure his range of acceptable knowledge.$$\:{\:LF}_{K}=\frac{\|{Gap}_{k}\|}{\sum\:_{k=1}^{4}\|{Gap}_{k}\|},\:k=\left(\text{1,2},\text{3,4}\right)$$
(2)
where LFk stands for the normalized ratio of the kth group gap’s \(\:{Gap}_{k}\:\) Euclidean distance, and it has a range of [0,1].$$\:{SF}_{i}=\frac{{GR}_{i}}{{GR}_{max}}$$
(3)
In which GRi is the ith individual’s growth resistance and GRmax is the biggest growth resistance of all.$$\:{KA}_{k}=S{F}_{i}\cdot\:L{F}_{k}\cdot\:{Gap}_{k}\:,(k=\text{1,2},\text{3,4})$$
(4)
In which \(\:{KA}_{k}\)is the knowledge gained by the ith individual from the gap’s Kth set, \(\:S{F}_{i}\:\)is an evaluation of its situation, whereas \(\:L{F}_{k}\:\)is an evaluation of the exterior situation.Equation (5) provides the ith individual’s specific learning process.$$\:{X}_{i}^{It+1}={X}_{i}^{It}+K{A}_{1}+K{A}_{2}+K{A}_{3}+K{A}_{4}$$
(5)
Which It is the current iteration’s number an \(\:{X}_{i}\:\) is the ith individual who grows by assimilating the knowledge acquired throughout the learning phase.$$\:{X}_{i}^{It+1}=\left\{\begin{array}{c}{X}_{i}^{It+1}\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:if\:f\left({X}_{i}^{It+1}\right)<f\left({X}_{i}^{It}\right)\\\:\left\{\begin{array}{c}{X}_{i}^{It+1}\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:if\:{r}_{1}<{p}_{2}\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\\\:{X}_{i}^{It}\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:else\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\end{array}\right.\end{array}\right.$$
(6)
The ranking of the ith individual in GR ascending order is represented by ind(i), where \(\:{r}_{1}\) is a uniformly handed out randomized number in the range [0, 1] If the ith individual fails to update, P2 decides whether the freshly gained knowledge is retained. \(\:{p}_{2}\:\)in this instance is 0.001. As a result of the space restriction of Eq. (6), Here is the complete conditional judgment statement for retaining recently obtained knowledge r1< P2 & & ind(i) ∼= ind(1).This does not simply mean that when an individual update fails, the individual has a 0.001 chance of entering the next-generation population, However, it also guarantees that the current global optimal solution can’t be replaced, or else the algorithm will fail to converge.(2) Reflection phase.Equations (7) and (8) are used to mathematically describe the reflective process of GO.$$\:{X}_{i,j}^{It+1}=\left\{\begin{array}{c}\left\{\begin{array}{c}Ib+{r}_{4}\times\:\left(ub-Ib\right)\:\:\:if\:{r}_{3}<AF\\\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:if\:{r}_{2}<{P}_{3}\\\:{X}_{i,j}^{It}+{r}_{5}\times\:\left({R}_{j}-{X}_{i,j}^{It}\right)\:\:\:\:\:\:\:\:else\end{array}\right.\\\:{X}_{i,j}^{It}\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:else\end{array}\right.$$
(7)
$$\:AF=0.01+0.99\times\:(1-\frac{{FE}_{s}}{Max{FE}_{s}})$$
(8)
in which \(\:Ib\) and \(\:ub\) are the search domain’s upper and lower bounds, and \(\:{r}_{2},\:{r}_{3},\:{r}_{4}\), and \(\:{r}_{5}\:\)are uniformly dispensed randomized numbers in the scope [0,1]. The chance of reflection is determined by the value of \(\:{P}_{3}\), which is typically set to 0.3. The maximum number of evaluations (MaxFEs) and the current number of evaluations (FEs) make up the attenuation factor (\(\:AF\)).During the reflection period, the jth aspect of the ith individual will be guided by some higher-level individual (\(\:\text{R}\)). The same is true for the learning stage; once the ith individual has completed its reflection, it should assess whether it has grown. The entire verification procedure, as well as the following operations, are still being carried out utilizing Eq. (6).The arithmetic optimization algorithmArithmetic is a fundamental component of number theory and modern mathematics. as well as algebra, analysis, and geometry. Arithmetic operators (i.e., Subtraction, Addition, Division, and Multiplication) are typically the conventional calculation methods used to study numbers; The basic idea for the proposed AOA is to use arithmetic operators to solve arithmetic problems. More details can be found at65,66.Proposed methodThere are four phases in the developed method: feature extraction, feature selection, classification, and model evaluation. Segmenting the input image from the gamma-camera scan of the bone was the first step. Then, using machine learning, the features extracted from the segmented image are used to predict the classification of the bone state. The feature extraction and feature selection processes are thoroughly explained in the ensuing subsections. The stages of the suggested method are depicted in Fig. 1.Fig. 1Phases of the proposed method.
Feature extraction phase
Given the high demand for deploying deep learning models on the edge and mobile devices, the creation of models that fit in mobile platforms presents notable challenges in terms of model size and processing speed, mainly when dealing with medical image processing applications. To overcome these challenges, we integrate a Mobile Vision Transformer (MobileViT) model67,68 in our framework to capture highly complex representations from raw medical imagery using two primary components including ViT and lightweight CNN featuring a limited number of parameters.In our framework, we harnessed the power of MobileViTv2 as the fundamental feature extraction module. MobileViTv2 introduces a separable self-attention mechanism with a linear complexity approach, while the traditional MobileViT model relies on the (MHA) multi-headed self-attention mechanism. Thus, MobileViTv2 can diminish the computational complexity and possess a fast latency with fewer training parameters. The model is a core component in both the training process and the extraction of image feature representations. The input images were resized to a uniform resolution of 244 × 244 pixels for the training and feature extraction, as depicted in Fig. 2.Fig. 2The MobileViTv2 block architecture components.(1) Depth-wise Separable Convolution (DSC).This architectural novelty in MobileViTv2 enables it to perform computations based on the number of image patches using element-wise operations, as opposed to matrix multiplications employed in traditional self-attention mechanisms. In contrast to the conventional convolutional approach that contains three phases (unfolding, local processing (matrix multiplication), and folding) for capturing global features, the MobileViTv2 block leverages transformer-based global processing instead of local processing through convolutions (unfolding, transformers stack, and folding). In addition, the DSC block possesses two convolution operations, including depth-wise convolution and point-wise convolution. This synergy of CNN and ViT properties empowers the MobileViT block to learn more efficient image representations while employing fewer trainable parameters.(2) Separable Self-Attention Mechanism.Compared to traditional self-attention mechanisms, which possess a quadratic complexity related to input sequence length, MobileViTv2 incorporates a separable self-attention mechanism to overcome this issue. The MobileViTv2 incorporates self-attention separately for each head, which converts the complexity to linear using element-wise operations to compute attention instead of traditional matrix multiplications. Equation 14 defines the mathematical representation of self-attention where V, K, and Q, represent value matrices, key, and query respectively. The key vectors’ dimensions are represented by the dk$$\:Attention\left(Q,\:K,\:V\right)=Softmax\left(\frac{Q\left({K}^{T}\right)}{\sqrt{{d}_{k}}}\right)\cdot V$$
(9)
(3) MobileViTv2 Block.The MobileViTv2 core building blocks comprise a separable self-attention mechanism, residual connections, and feed-forward networks. In addition, the DSC block captures both local and global information in the data. For instance, MobileViTv2 introduces the inverted residuals, which reverse the traditional structure to narrow-to-wide-to-narrow instead of wide-to-narrow-to-wide structure by incorporating the depth-wise convolution operations. Meanwhile, linear bottlenecks are employed to produce a linear output to overcome the challenges in the inverted residual structure. The MobileViTv2 stacks several transformer blocks to process the flattened patches as visual tokens and model global dependencies.Before the last classification layer, we perform feature extraction of the learned representations for each image as a feature vector of size 1 × 256, which will be fed to the proposed feature selection algorithm in our framework for further processing. During the training process, The MobileViTv2 model was fine-tuned for 100 epochs with the early stopping mechanism on an NVIDIA GTX1080 GPU. A batch of size 16 and 0.001 learning rate were selected as the network training hyper-parameters where AdamW optimizer was used.Proposed feature selection algorithmThe main phases of the suggested FS method are presented in this section. as shown in Fig. 3. The goal of the GO-AOA approach presented here is to improve GO’s exploring ability by utilizing the AOA method.Fig. 3The proposed algorithm’s main structure.To start, the GO-AOA divides the input dataset into training and testing sets, which correspond to 80% and 20% of the input data instances, respectively. Next, for the provided problem (feature selection), define the parameters and create a population that represents a set of individuals. Then initialize the population \(\:X\) by using the following formula:$$\:X=lb+\left(ub-lb\right)\times\:rand\left(N,D\right),\:i=1,\dots\:.,N$$
(10)
where N shows population size. D stands for the population dimension. \(\:ub\) and \(\:lb\) refer to the upper and lower and bound.In the second stage (the loop iteration process), to obtain an ascending ranking array of the complete population, first sort the individuals by growth resistance (GR). This information is then stored in ind. Then the best fitness value (\(\:{X}_{best}\)) is assigned, the current iteration’s optimal solution (\(\:{X}_{best}\)) is updated before each iteration, and the real-time global optimal solution \(\:\left(gbestx\right)\) is updated at each evaluation. In general, the fitness value is computed using the following formula:$$\:Fi{t}_{i}=\alpha\:{E}_{i}+\left(1-\alpha\:\right)\frac{\left|B{X}_{i}\right|}{D}$$
(11)
$$\:B{X}_{i}=\left\{\begin{array}{c}1\:\:\:\:\:\:\:if\:{X}_{i}\ge\:0.5\:\\\:0\:\:\:\:\:otherwise\:\end{array}\:\:\:\:\right.$$
(12)
where \(\:\alpha\:\in\:\left[\text{0,1}\right]\) refers to random value balance between the error of classification \(\:{E}_{i}\) and the ratio of selected features (i.e., \(\:\frac{\left|B{X}_{i}\right|}{D}\)). The value of \(\:\left|B{X}_{i}\right|\) refers to the number of selected features which corresponding to ones in the Boolean vector \(\:B{X}_{i}\) of \(\:{X}_{i}\) that defined in Eq. (12).Exploration phase: first the \(X_{better}\) and one \(X_{worse}\) will be selected to participate and compute the \(GAP_{k}, \, LF_{k}, \, SF_{i}, {\text{and}}\, KA_{k}\) in Eqs. (1)–(4) then switching the exploration phase of the GO with the exploration phase of AOA, This process is formulated using Eqs. (10)–(12).Exploitation phase: Equations (7) and (8) will be utilized by the algorithm to process the jth dimension for the ith individual; the ith individual and the real-time global optimal solution (gbestx) are then updated using Eq. (6).In Eq. (8) we change the value of AF to be:$$\:AF=0.02+0.33\times\:(1-\frac{It}{M\_Iter})$$
(13)
Termination criterion: If the current number of evaluations (It) attains the maximum number of iterations (\(M_{iter}\)) then return the gbestx and stop the program otherwise turn to the loop iteration process. The pseudo-code for the proposed model is given in Algorithm 1.Algorithm 1 Step of proposed algorithm.The complexity of the GOAOAWithin this part, we discuss the complexity of the developed GOAOA model as feature selection method. The complexity of GOAOA depends on the number of solutions \(\:N\), number of features \(\:D\), and the total number of iterations \(\:M\_Iter\).$$\:O\left(GOAOA\right)=N\times\:D+\left(N\times\:D+N\times\:D+N\times\:Coff+N\times\:D\right)\times\:M\_Iter\:\:$$$$\:O\left(GOAOA\right)=N\times\:D+\left(3 N\times\:D+N\times\:Coff\right)\times\:M\_Iter$$where \(\:Coff\) refers to the number of fitness evaluation.

Hot Topics

Related Articles