## 3 The Proposed Model
### Disease Classification Model
#### 3.4.2 Image Classification Using VELM Model  
Finally, the classification of medical images is performed by the VELM model. The VELM was utilized as a classifier in this work. The VELM is a significant ML model which enhances classification accuracy while maintaining high processing speeds and robustness to noise and outliers in the input data. An ELM is a type of artificial neural network (ANN) with a single hidden layer (HL) [28]. Here, the weight that connects input to the HL and HL to biases are randomized. The weights between the output and HLs are computed by the Moore-Penrose inverse, making the training model faster. Several ELMs can be used for classification to increase detection accuracy. Each individual ELM is trained using similar data. In the process of detection, the sample is used for all the ELMs and output is computed. Based on the majority voting, the last output is computed. Assume, an ELM with activation functions \(f\) and \(l\) hidden neurons in HL. If there is \(N\) training sample of the form \((x_{i},\ t_{i})\), where \(x_{i}=[x_{i1},\ x_{i2},\ \dots,\ x_{in}]^{T}\in R^{n}\) and \(t_{i}=[t_{i1},\ t_{i2},\ \dots,\ t_{in}]^{T}\in R^{m}\) (\(m=2\)) then the output can be represented as  
\[0_{i}=\sum_{j=1}^{1}v_{j}f\big{(}u_{j},\ b_{j},\ x_{i}\big{)} \tag{22}\]  
for, \(i=1,2,3,\dots,N\).  
Where \(u_{j}\in R^{n}\) and \(b_{j}\in R\) denote the learning parameters of \(j\)th hidden neuron. \(v_{j}=[v_{j1},\ v_{j2},\ \dots,\ v_{jm}]^{T}\) indicates the weight vector that connects \(j\)th hidden neurons to output neurons. This can be represented as follows:  
\[O=HV \tag{23}\]  
where,  
\[H=\begin{bmatrix}f(u_{1},b_{1},x_{1})&\dots&f(u_{l},b_{l},x_{1})\\ \vdots&\vdots&\vdots\\ f(u_{1},b_{1},x_{N})&\dots&f\Big{(}u_{l},b_{l},x_{N}\Big{)}\end{bmatrix},V= \begin{bmatrix}v_{1}^{T}\\ \vdots\\ v_{l}^{T}\end{bmatrix}\text{and }O=\begin{bmatrix}\ o_{1}^{T}\\ \vdots\\ o_{N}^{T}\end{bmatrix}\]  
The \(u_{j}\) and \(b_{j}\) parameters are randomly initialized for minimizing the error \(||O-T||\), where \(T=(t_{1},\ t_{2},\dots,t_{N})\), that is independent of input dataset. The output weights can be expressed by finding the least square solution,  
\[V=H^{+}T \tag{24}\]  
where the symbol \(\"+\"\) characterizes the Moore-Penrose generalized inverse of matrix. It implies ELM is trained. In \(V\)-ELM, \(k\)-th ELM is used. The equivalent number of hidden layers initialized this ELM. The learning parameter \(u_{j}\) and \(b_{j}\) of each ELM is initialized in a random fashion. Next, each ELM is trained on a similar dataset and the results are computed. In detection stage, a set of samples of the form \(y_{i}=[y_{i1},\ y_{i2},\ \dots,\ y_{in}]\) is used for each ELM. The output \(0_{i}=[0,\ 1]\) or \(0_{i}=[1,\ 0]\) of every individual ELM is taken, and majority voting receives the last output. For every \(i\) sample, a vector \(C_{i}\in Z_{>=0}^{2}\) has been used for storing the class labels recognized by dissimilar ELMs. At first, \(C_{i}\) is initialized to zero \((C_{i}=[0,0])\) once an ELM output takes place; the value of equivalent location in \(C_{i}\) can be raised by \(1\). For instance, assume output of \(ELM_{1}\) is \([1,\ 0]\) now \(C_{i}\) become \([1,\ 0]\).  
Output of \(ELM_{2}\) is again \([1,\ 0]\), then \(C_{i}\) becomes \([2,\ 0]\). Output of \(ELM_{3}\) is \([0,\ 1]\), then \(C_{i}\) becomes \([2,\ 1]\). Once each \(k\) output is reached, then the concluding output is evaluated.