TextCNN: The Convolutional Neural Networks for Sentence Classification (TextCNN), performs convolutions, of different kernel sizes, on textual data [1]}. This is done by performing convolutions over the embedding matrix that represents the input sentences. The convolutions performed are parallel and independent of one another. The architecture of TextCNN implemented is an Embedding Layer followed by 5 convolutional blocks. Each one of those blocks consists of a 2D Convolutional Layer followed by a ReLU activation function and a 1D Max Pooling Layer. The output of all blocks is concatenated into a single vector that goes through a dropout phase with \(p=0.8\) , and the result then goes to a Linear Layer that returns the classification vector.
