
Bidirectional-GRU (KEIS-BiGRU):
Recurrent Neural Network (RNN) suffers from a gradient vanishing problem. Long Short Term Memory (LSTM) lstm has been proposed to solve the mentioned problem. Gated Recurrent Unit (GRU) [1]} as well as have been proposed to solve the gradient vanishing problem. Two gates have been used (reset and update gate) in GRU architecture. The main reasons that prefers applied GRU over LSTMs (i.e. GRU tends to provide parallel performance with less complex structures compared to LSTM). The mathematical formulation of GRU can be expressed as:
\(h_{t} = (1 - z_{t}) \odot h_{t-1} + z_{t} \odot \tilde{h}_{t} \) 
where
\(\tilde{h}_{t} = tanh(W_{h}x_{t} + r_{t} \odot (U_{h}h_{t-1}) + b_{h}) \) 
\(z_{t} = \sigma (W_{z}x_{t} + U_{z}h_{t-1} + b_{h}) \) 
\(r_{t} = \sigma (W_{r}x_{t} + U_{r}h_{t-1} + b_{h}) \) 
where \(z_{t}\)  EQ (REF ) explains the update gate, \(r_{t}\)  EQ (REF ) represent the reset gate, and \(\tilde{h}_{t}\)  EQ (REF ) explains the current memory content. Weight matrices are represented as \(W_h, W_z, W_r, U_h\)  \(U_z, U_r, b_h \) , \(x_t\)  explains the vector input to the timestep \(t\) , \(ht\)  EQ (REF ) explains the final current exposed hidden state, and \(\odot \)  explains the element-wise multiplication.
It's started with passing a sequence of words through an embedding layer followed Bidirectional GRU layer of 128 neurons, then Gaussian Noise of (0.1). Afterword, Global Average Pooling has been used to extract the discriminative features of the input tweet to prepare that for the next layer. Dense layer of 35 neurons has been applied followed by Dropout layer of (0.2) to prevent overfitting. Finally, the output layer will be Dense of (1) neuron with sigmoid function.

Convolutional Neural Networks (KEIS-CNN):
In deep learning, Convolutional Neural Networks (CNN) show the significant success in the fields of computer vision. The first CNN architecture for text classification proposed by [2]} which provides a remarkable enhancement on the performance of NLP tasks. Consequently, it can obtain the linguistic patterns from window of sequence words represented as embedding vectors.
It's started with passing a sequence of words through an embedding layer followed by Gaussian Noise of (0.1). As we know Conv2D have to reshape the input to be compatible to receive the previous shape. Four Conv2D layers have been used. Each individual Conv2D sharing different filter size (1, 3, 5, 7) respectively. Moreover, the number of filters is 36 for all layers which aims to obtain the local information features. Afterward, each Conv2D layer passed to Max Pool 2D layer (MaxPool2D). In the last step, each layer has been concatenated together which aims to identify better output. In order to feed the next layer, we used Dropout layer of (0.25) to reduce over-fitting followed by dense layers of 35 neurons. The output is fed into single sigmoid which can obtain the output class of the given tweet.

