# Arabic Hate Speech Detection Using Deep Recurrent Neural Networks
## 2 Literature Review  
A great deal of research has been carried out on hate speech in various languages, especially English. The authors of [8] proposed the use of a convolutional neural network for the classification of hate speech. The dataset they used divided hate speech into several sections, including racist sentences, sexist sentences, harmful words, and threatening phrases, such as death threats. The database consisted of 6655 tweets: 91 racism tweets, 946 sexism tweets, 18 tweets with both racism and sexism, and 5600 non-hate-speech tweets. Among the different algorithms used, they reported that the best results achieved were a precision of 86.61%, a recall of 70.42%, and an F-score of 77.38%. The authors of [9] proposed the use of a support vector machine (SVM) for multiclass classification. Their dataset consisted of 14,509 tweets annotated to three categories: hate, offensive, and OK. In these experiments, the authors also proposed surface n-grams, word skip-grams, and Brown clusters as the features to be extracted. The total dataset consisted of 2399 sentences classified as hate, 4836 sentences classified as offensive, and 7274 sentences classified as OK. They reported that the best accuracy of 78% was achieved using a character 4-g model. The authors of [10] collected 17,567 Facebook posts annotated as no hate, weak hate, and strong hate as a dataset for their proposed system. They proposed the use of two methods to capture and classify hate phrases and speech, which are published daily on one of the largest social networking sites--Facebook. The two methods used in this study were support vector machines (SVM) and long short-term memory (LSTM), which is a recurrent neural network (RNN). The SVM system provides excellent and wide levels for analyzing and classifying linguistic texts, and these features have been used well in polar sentiment classification tasks. On the other hand, the LSTM system was used to expand the ranges in order to dissect longer sentences that were not observably accurate from the first scan. Among their results, the authors reported the highest accuracy of 80.6% using the SVM classifier. In [11], the authors proposed the use of an ensemble neural network for the classification of hate speech and used two publicly available datasets. Although accuracy was not reported as a result, the reported mean of the ensemble was 78.62%. The authors of [12] used seven publicly available datasets along with a state-of-the-art linear SVM. However, this study concentrated on feature extraction and specifically whether to use the extracted feature or engineer a set of features that might produce better results. The authors concluded that the selection (engineering) of a set of features produced better results than using all the extracted features. Moving away from the English language, the authors of [13] created a new dataset consisting of 1100 tweets annotated and labeled as hate speech or non-hate speech. The features used in this study were word n-gram with n = 1 and n = 2 and character n-gram with n = 3 and n = 4 plus negative sentiment. Several machine learning algorithms were tested, including naive Bayes (NB), support vector machine (SVM), Bayesian logistic regression (BLR), and random forest decision tree (RF). The highest F-measure of 93.5% was reported when using RF as a classifier. The authors of [14] used a publicly available dataset of tweets that were divided into 260 tweets labeled \"hate speech\" and 445 tweets labeled \"non-hate speech\". The five proposed and tested classifiers included NB, K-nearest neighbors (KNN), maximum entropy (ME), RF, and SVM. The authors used two ensemble methods: hard voting and soft voting. They concluded that the best results were achieved using ensemble methods and reported the best result when using soft voting with an F1 measure of 79.8% on an unbalanced dataset and 84.7% on a balanced dataset.