It was a task (assignment) for Natural Language Processing Course (Spring 2020).
The task was to implement an abusive language classi_er using Recurrent Neural Networks (RNNs) in Python 3.
The main modules to implement to achieve the goal of this assignment were
-
Data pre-processor to transform raw data into a format suitable for input to the model,
-
Token encoder to represent each token with a vector of real numbers,
-
RNN classifier to assign a label to each input sequence that shows whether it is offensive or not,
-
Training function that performs forward and backward propagation, and
-
Evaluation function that evaluates the performance of the model in every training epoch.
The sourcecode is given in code folder. hw2_4_prep.ipynb has code for preprocessing. Other 3 notebook has 3 models.