## 2 Preliminaries
### Deep Learning (DL)
This unique capability makes RNNs highly effective for tasks that require understanding context and sequential information [79]. The RNN is developed to handle sequential data by incorporating loops within the network, allowing information to be carried forward across different time steps. This enables the network to effectively model temporal dependencies, such as those found in natural language processing and financial forecasting [12]. * Long-short term memory (LSTM): Introduced by [PERSON] and [PERSON] in 1997, LSTM networks are an advanced variant of RNNs designed to address the shortcomings of traditional RNNs [80]. Unlike vanilla RNN, which struggles with retaining information over long sequences, LSTM incorporates specialized memory cells designed to preserve information over extended periods. LSTM [81] utilizes three types of gates--input, forget, and output gates--to regulate data flow into and out of these memory cells. This gating mechanism enables LSTM to selectively retain and update information, making it particularly adept at handling tasks that involve long-term dependencies and complex temporal patterns. * Gated recurrent unit (GRU): A GRU [82] streamlines the architecture of LSTM networks by integrating the functions of the forget and input gates into a single update gate. Additionally, GRUs combine the cell and hidden states into one unified representation. This simplification reduces the computing complexity of the model while preserving its capacity to capture long-term dependencies effectively. * Bidirectional recurrent neural networks (BRNNs): A bidirectional RNN [83] enhances a traditional RNN by processing input sequences in both forward and backward directions. This dual-direction approach allows the network to access and utilize past and future context within a sequence. Such bidirectional processing is particularly advantageous in natural language processing (NLP) tasks, where a comprehensive understanding of the entire sentence context is essential for accurate interpretation and analysis. * Graph neural networks (GNNs): Graph neural networks (GNNs) are specialized for analyzing data represented as graph structures, where connections between entities are as crucial as the entities themselves. Unlike traditional neural networks, which process unstructured data, GNNs excel in capturing and analyzing the complex interplay between entities within the graph. They are well suited for applications such as social networks, molecular chemistry, and recommendation systems [84]. The message-passing mechanism [85] in a GNN involves nodes exchanging information with their neighboring nodes. This process allows the network to develop context-aware representations. Graph convolutions [86] extend traditional convolution operations from grid-like data structures to graphs, enabling the network to process nodes while considering the graph's structure and properties. Attention mechanisms [87] further enhance GNNs by weighing the importance of various neighbors, resulting in more nuanced and context-sensitive representations. * Generative adversarial networks (GANs): [PERSON] et al. [88] described another use of adversarial examples in generative adversarial networks (GANs). Neural networks often learn the probability of training examples (e.g., the probability distribution of the training data). GANs can generate more examples based on the estimated probability distribution. They are based on game theory rather than optimization. Unsupervisedlearning using generative models reduces the number of training examples required, the amount of time to train, and the required supervision using training input and output examples. Generative models ignore finding a tractable density function and instead learn a tractable sample generation process in GANs and generative stochastic networks (that came before GANs). Other examples include generative modeling by GANs, variational autoencoders, and fully visible belief nets.