# Predicting Shot Accuracy in Badminton Using Quiet Eye Metrics and Neural Networks
## 4 Methodology
### Neural Network Model  
#### 4.6.1 Neural Network Base Architecture  
We implemented a deep neural network using TensorFlow Version 2.17 and Keras Version 3.4.1. The architecture consists of:  
* Input Layer: 12 neurons (6 QE metrics, 6 biomechanical features).
* Hidden Layers: Three fully connected layers with 64, 32, and 16 neurons, respectively, using ReLU activation.
* Output Layer: Single neuron with sigmoid activation for binary classification (hit/miss).  
A schematic diagram of the neural network is shown in Figure 1. The Python Version 3.10 script to create and train a neural network model to predict shot accuracy based on QE metrics is shown in Appendix A.  
Our neural network model is innovative in its multimodal data integration, combining both QE metrics and biomechanical features as inputs. This integration allows the model to capture complex interactions between visual attention strategies and physical execution that are crucial in badminton performance. Furthermore, the model is designed for  
Figure 1: Schematic diagram of the Neural Network Architecture developed in this study.  
real-time predictive capabilities, with low latency that enables potential in-game analysis and feedback. This real-time aspect is critical for practical applications in training and competition settings, where immediate insights can inform decision-making and performance optimization.  
Next, we outline the foundational equations that characterize the architecture and operation of the neural network.  
1. Neuron Activation: This equation describes how each neuron processes its inputs. \[\begin{split} Z&=W\cdot X+b\\ A&=activation(Z)\end{split}\] (1) where: \(Z\) is the weighted sum of inputs and biases. \(W\) is the weight matrix for the layer. \(X\) is the input data. \(b\) is the bias term. \(A\) is the neuron's activation.
2. Forward Propagation: Forward propagation computes the output of each layer in the network. \[A^{(l)}=activation\left(W^{(l)}\cdot A^{(l-1)}+b^{(l)}\right)\] (2) where: \(A^{(l)}\) is the output of layer \(l\). \(W^{(l)}\) and \(b^{(l)}\) are the weights and biases for layer \(l\). \(A^{(l-1)}\) is the output from the previous layer.
3. Loss Function: The loss function measures the difference between predicted and actual values, guiding the learning process. The binary cross-entropy loss function measures how far off the predicted probabilities are from the actual binary outcomes, helping the model adjust and learn more accurately. It is minimized during training to improve the model's predictive accuracy. \[Loss=-\frac{1}{m}\sum[ylog(A)+(1-y)\log(1-A)]\] (3) where: \(A\) is the predicted probability from the output layer. \(y\) is the actual label (0 or 1). \(m\) is the number of training examples.
4. Backpropagation: Backpropagation updates the network's weights to minimize the cost function. \[W^{(l)}=W^{(l)}-\alpha\cdot dW^{(l)}b^{(l)}=b^{(l)}-\alpha\cdot db^{(l)}\] (4) where: \(\alpha\) is the learning rate. \(dW^{(l)}\) is the gradient of the weight matrix for layer \(l\). \(db^{(l)}\) is the gradient of the bias term for layer \(l\).