# Autism Screening in Toddlers and Adults Using Deep Learning and Fair AI Techniques
## 2 Materials and Methods
### Methodology  
Convolutional Neural Networks (CNNs) are used to recognize patterns in data. The CNN architecture incorporates multiple layers like the convolutional layer, the max pooling layer, and the fully connected layer, where each layer performs a specific task. The convolutional layer includes filters and generates feature maps from input features by performing the convolutional operation, which is depicted as f = \(\mathcal{V}\) (x * \(\text{w}_{\text{f}}+\text{y}_{\text{f}}\)), such that f represents feature maps, while \(\text{w}_{\text{f}}\) depicts kernel weight vectors. x is used to represent input features, and \(\text{y}_{\text{f}}\) depicts the bias. While \(\mathcal{V}\) is used to denote the activation function, + denotes the convolutional operation. Long Short-Term Memory (LSTM) was introduced to solve the problem of vanishing and exploding gradients, commonly seen in recurrent neural networks. LSTM includes logic gates such as the input, output, and forget gates and hidden states of the previous and current timestamps. The gates regulate what information must be added or removed using pointwise multiplication operation and sigmoid function. The proposed architecture (Figure 1) includes both components CNN and LSTM bound together with Particle Swarm Optimization to detect if an individual has ASD accurately. While CNN and LSTM are deployed to capture complex features and patterns from the provided data, PSO is used for optimizing the results to achieve better model performance. Dropout during training has been introduced to eliminate the overfitting issue. Once the CNN and LSTM layers are deployed, dropout is applied to enhance the model's generalization ability. The fully connected layer provides the overall output using the softmax activation function. The PSO can determine the architecture and parameters of the hybrid deep learning network architecture. It can simultaneously optimize the number of layers of CNN and LSTM along with the number of units and epochs. The PSO algorithm witnesses every particle in the swarm incorporating five variables representing the network's hyperparameters. The swarm depicts the possible set of solutions, and each variable in the particle is identified by its position in the search space for each hyperparameter. The search space is initialized with random numbers to depict network layers, filters, and epochs, and the search spaces with respect to hyperparameters are determined, taking into account computational time and efficiency. The fitness function, essentially the Root Mean Square Error (RMSE), is calculated using specific hyperparameters for the network. The velocity and positions of particles get updated frequently, and the algorithm determines the optimal hyperparameter values to minimize the fitness function. Therefore, all three algorithms work together for the overall network to exhibit efficiency. CNNs are used for capturing complex and non-linear relationships of data. LSTMs learn the long-term dependencies among features. Finally, PSO deploys an efficient global search algorithm to find the global minimum of the fitness function to ensure better model performance (Figure 2). Table 1 depicts the hyperparameter setting for the CNN-LSTM-PSO network. The proposed GRU-CNN hybrid neural network architecture combines GRU and CNN networks. Neural networks are prone to issues like short-term memory, vanishing \begin{table}
\begin{tabular}{c c c} \hline \hline
**Optimized Components** & **Hyperparameter** & **Range** \\ \hline \multirow{4}{*}{Convolutional Layer} & Number of filters in 1 st layer & \([2^{0},2^{10}]\) \\  & Filter size in 1 st layer & \([1,5]\) \\  & Number of filters in 2 nd layer & \([2^{0},2^{10}]\) \\  & Filter size in 2 nd layer & \([1,5]\) \\ Pooling & Pooling Size & \([2,5]\) \\ LSTM & Number of hidden nodes & \([10,500]\) \\ Dense & Number of nodes & \([10,200]\) \\  & Learning rate & \([10^{-4},10^{-1}]\) \\  & Dropout rate & \([0,0.2]\) \\ \hline \hline \end{tabular}
\end{table}