The impact of the vast quantities of user-generated web content can be both positive and negative. While it improves information accessibility, it also can facilitate the propagation of online harassment, such as hate speech. Recently, the Pew Research Center111http://www.pewinternet.org/2017/07/11/online-harassment-2017/ reported that “roughly four-in-ten Americans have personally experienced online harassment, and 63% consider it a major problem. Beyond the personal experience, two-thirds of Americans reported having witnessed abusive or harassing behavior towards others online.”
In response to the growth in online hate, there has been a trend of developing automatic hate speech detection models to alleviate online harassment Warner and Hirschberg (2012); Waseem and Hovy (2016). However, a common problem with these methods is that they focus on coarse-grained classifications with only a small set of categories. To the best of our knowledge, the existing work on hate speech detection formulates the task as a classification problem with no more than seven classes. Building a model for more fine-grained multiclass classification is more challenging since it requires the model to capture finer distinctions between each class.
Moreover, fine-grained classification is necessary for fine-grained hate speech analysis. Figure 1 is a portion of the hate group map published by the Southern Poverty Law Center (SPLC)222https://www.splcenter.org, where a hate group is defined as “an organization that – based on its official statements or principles, the statements of its leaders, or its activities – has beliefs or practices that attack or malign an entire class of people, typically for their immutable characteristics.” The SPLC divides the 954 hate groups in the United States into 17 categories according to their ideologies (e.g. Racist Skinhead, Anti-Immigrant, and others). The SPLC monitors hate groups throughout the United States by a variety of methodologies to determine the activities of groups and individuals: reviewing hate group publications and reports by citizens, law enforcement, field sources and the news media, and conducting their own investigations. Therefore, building automatic classification models to differentiate between the social media posts from different hate groups is both challenging and of practical significance.
In this paper, we propose a fine-grained hate speech classification task that separates tweets posted by 40 hate groups of 13 different hate group categories. Although CVAE is commonly used as a generative model, we find it can achieve competitive results and tends to be more robust when the size of the training dataset decreases, compared to the commonly used discriminative neural network models. Based on this insight, we design a Hierarchical CVAE model (HCVAE) for this task, which leverages the additional hate group category (ideology) information for training. Our contributions are three-fold:
This is the first paper on fine-grained hate speech classification that attributes hate groups to individual tweets.
We propose a novel Hierarchical CVAE model for fine-grained tweet hate speech classification.
Our proposed model improves the Micro-F1 score of up to 10% over the baselines.
In the next section, we outline the related work on hate speech detection, fine-grained text classification, and Variational Autoencoder. In Section 3, we explore the CVAE as a discriminative model, and our proposed method is described in Section 4. Experimental results are presented and discussed in Section 5. Finally, we conclude in Section 6.
2 Related Work
2.1 Hate Speech Detection
An extensive body of work has been dedicated to automatic hate speech detection. Most of the work focuses on binary classification. Warner and Hirschberg (2012) differentiate between anti-semitic or not. Gao et al. (2017), Zhong et al. (2016), and Nobata et al. (2016) differentiate between abusive or not. Waseem and Hovy (2016), Burnap and Williams (2016), and Davidson et al. (2017) focus on three-way classification. Waseem and Hovy (2016)classify each input tweet as racist hate speech, sexist hate speech, or neither. Burnap and Williams (2016) build classifiers for hate speech based on race, sexual orientation or disability, while Davidson et al. (2017) train a model to differentiate among three classes: containing hate speech, only offensive language, or neither. Badjatiya et al. (2017) use the dataset provided by Waseem and Hovy (2016) to do three-way classification. Our work is most closely related to Van Hee et al. (2015), which focuses on fine-grained cyberbullying classification. However, this study only focuses on seven categories of cyberbullying while our dataset consists of 40 classes. Therefore, our classification task is much more fine-grained and challenging.
2.2 Fine-grained Text Classification
Our work is also related to text classification. Convolutional Neural Networks (CNN) have been successfully applied to the text classification task.Kim (2014) applies CNN at the word level while Zhang et al. (2015) apply CNN at the character level. Johnson and Zhang (2015) exploit the word order of text data with CNN for accurate text categorization. Socher et al. (2013)2015); Yogatama et al. (2017). Lai et al. (2015) and Zhou et al. (2015) further combine RNN with CNN. Tang et al. (2015) and Yang et al. (2016) exploit the hierarchical structure for document classification. Tang et al. (2015) generate from the sentence representation to the document representation while Yang et al. (2016) generate from the word-level attention to the sentence-level attention. However, the division of the hierarchies in our HCVAE is according to semantic levels, rather than according to document compositions. We generate from the category-level representations to the group-level representations. Moreover, the most commonly used datasets by these works (Yelp reviews, Yahoo answers, AGNews, IMDB reviews Diao et al. (2014)) have no more than 10 classes.
2.3 Variational Autoencoder
Variational Autoencoder (VAE) Kingma and Welling (2013) has achieved competitive results in many complicated generation tasks, such as handwritten digits Kingma and Welling (2013); Salimans et al. (2015), faces Kingma and Welling (2013); Rezende et al. (2014), and machine translation Zhang et al. (2016). CVAE Larsen et al. (2016); Sohn et al. (2015) is an extension of the original VAE framework that incorporates conditions during generation. In addition to image generation, CVAE has also been successfully applied to several NLP tasks, such as dialog generation Zhao et al. (2017). Although so far CVAE has always been used as a generative model, we explore the performance of the CVAE as a discriminative model and further propose a hierarchical CVAE model, which exploits the hate group category (ideology) information for training.
3 CVAE Baseline
We formulate our classification task as the following equation:
where , are the tweet text and hate group label respectively, is the dataset.
Instead of directly parameterizing , it can be further written as the following equation:
where is the latent variable. Since the integration over is intractable, we instead try to maximize the corresponding evidence lower bound (ELBO):
where is the Kullback–Leibler (KL) divergence. is the likelihood distribution, is the posterior distribution, and is the prior distribution. These three distributions are parameterized by , , and
. Therefore, the training loss function is:
The above loss function consists of two parts. The first part is the reconstruction loss. Optimizing can push the predictions made by the posterior network and the likelihood network closer to the ground truth labels. The second part is the KL divergence loss. Optimizing it can push the output distribution of the prior network and that of the posterior network closer to each other, such that during testing, when the ground truth label
is no longer available, the prior network can still output a reasonable probability distribution over.
Figure 2 illustrates the structure of the CVAE model during training (the structure used for testing is different). The likelihood network is a Multilayer Perceptron (MLP). The structure of both the posterior network and the prior network
is a bidirectional Long Short-Term Memory (Bi-LSTM)Hochreiter and Schmidhuber (1997) layer followed by an MLP. The Bi-LSTM is used to encode the tweet text. The only difference between the posterior and the prior network is that for the posterior network the input for the MLP is the encoded text concatenated with the group label while for the prior network only the encoded text is fed forward. During testing, the posterior network will be replaced by the prior network to generate the distribution over the latent variable (i.e. will replace ). Thus during testing, the ground truth labels will not be used to make predictions.
We assume the latent variable
has a multivariate Gaussian distribution:for the posterior network, and for the prior network. The detailed computation process is as follows:
where is the Bi-LSTM function and is the output of the Bi-LSTM layer at the last time step. is the function of the MLP in the posterior network and is that of the MLP in the prior network. The notation means concatenation. The latent variables and are randomly sampled from and , respectively. During training, the input for the likelihood network is :
where is the function of the MLP in the likelihood network. During testing, the prior network will substitute for the posterior network. Thus for testing, the input for the likelihood is instead of :
4 Our Approach
One problem with the above CVAE method is that it utilizes the group label for training, but ignores the available hate group category (ideology) information of the hate speech. As mentioned in Section 1, hate groups can be divided into different categories in terms of ideologies. Each hate group belongs to a specific hate group category. Considering this hierarchical structure, the hate category information can potentially help the model to better capture the subtle differences between the hate speech from different hate groups. Therefore, we extend the baseline CVAE model to incorporate the category information. In this case, the objective function is as follows:
where is the hate group category label and
where and are latent variables. Therefore, the ELBO of our method is the sum of the ELBOs of and :
During testing, the prior networks will substitute the posterior networks and the ground truth labels and are not utilized. Hence the prior in the above equation cannot be parametrized as a network that directly takes the ground truth label and as inputs. Instead, we parameterize it as shown in the right part of Figure 3. We assume that is trained to be a latent representation of , so we use and as inputs for this prior network.
According to the ELBO above, the corresponding loss function is the combination of the loss function for the category classification () and that for the group classification ().
Figure 3 shows the structure of our model for training. By assuming the latent variables and
have multivariate Gaussian distributions, the actual outputs of the posterior and prior networks are the mean and variance:, for the two posterior networks, and , for the two prior networks. Note that in addition to these four distributions, there is another distribution as shown in Figure 3. This distribution is generated only with the input text , so it provides the basic distribution (in order to avoid confusion, we call it the basic distribution instead of the prior distribution) for both two posterior networks and two prior networks. With this basic distribution, the two posterior networks only need to capture the additional signals learned from and labels. Similarly, the prior networks only need to learn the additional signals learned by the posterior networks. The detailed computation process during training is shown as the following equations:
where is the Bi-LSTM function and e is the output of the Bi-LSTM layer at the last time step. , , , and are the functions of four different MLPs. is the Bi-LSTM function in the prior network . The latent variables , , , and are randomly sampled from the Gaussian distributions , , , and respectively. As mentioned above, is the basic distribution while , , , and are trained to capture the additional signals. Therefore, is added to and , then the results and are further added to and , respectively, as shown in the following equations:
where is the Bi-LSTM function and is the function of the MLP in the prior network . is element-wise addition. During training, and are fed into the likelihood networks:
where and are the functions of the MLPs in two likelihood networks. During testing, the prior networks will substitute the posterior networks, so the latent variable is randomly sampled from the Gaussian distributions , and the last four equations above (Equation 22 - 25) will be replaced by the following ones:
Algorithm 1 illustrates the complete training and testing process. refers to the Binary Cross Entropy loss. Note that during training, the ground truth category labels and group labels are fed to the posterior network to generate latent variables. But during testing, the latent variables are generated by the prior network, which only utilizes the texts as inputs.
|SVM + tf-idf||.653||.834||.835||.521||.771||.772|
|LR + tf-idf||.586||.787||.792||.494||.727||.736|
We collect the data from 40 hate group Twitter accounts of 13 different hate ideologies, e.g., white nationalist, anti-immigrant, racist skinhead, among others. The detailed themes and core values behind each hate ideology are discussed in the SPLC ideology section.333https://www.splcenter.org/fighting-hate/extremist-files/ideology For each hate ideology, we collect a set of Twitter handles based on hate groups identified by the SPLC center.444https://www.splcenter.org/fighting-hate/extremist-files/groups For each hate ideology, we select the top three handles in terms of the number of followers. Due to ties, there are four different groups in several categories of our dataset. The dataset consists of all the content (tweets, retweets, and replies) posted with each account from the group’s inception date, as early as 07-2009, until 10-2017. Each instance in the dataset is a tuple of (tweet text, hate category label, hate group label). The complete dataset consists of approximately 3.5 million tweets. Note that due to the sensitive nature of the data, we anonymously reference the Twitter handles for each hate group by using IDs throughout this paper. The distribution of the data is illustrated in Figure 4.
5.2 Experimental Settings
In addition to the discriminative CVAE model described in Section 3, we implement for other baseline methods and an upper bound model as follows.
Support Vector Machine (SVM): We implement an SVM model with linear kernels. We use L2 regularization and the coefficient is 1. The input features are the Term Frequency Inverse Document Frequency (TF-IDF) values of up to 2-grams.
Logistic Regression (LR)
: We implement the Logistic Regression model with L2 regularization. The penalty parameter C is set to 1. Similar to the SVM model, we use TF-IDF values of up to 2-grams as features.
Character-level Convolutional Neural Network (Char-CNN): We implement the character-level CNN model for text classification as described in Zhang et al. (2015). It is 9 layers deep with 6 convolutional layers and 3 fully-connected layers. The configurations of the convolutional layers are kept the same as those in Zhang et al. (2015).
Bi-LSTM: The model consists of a bidirectional LSTM layer followed by a linear layer. The embedded tweet text is fed into the LSTM layer and the output at the last time step is then fed into the linear layer to predict .
Upper Bound: The upper bound model also consists of a bidirectional LSTM layer followed by a linear layer. The difference between this model and Bi-LSTM is that it takes the tweet text along with the ground truth category label as input during both training and testing. The LSTM layer is used to encode . The encoding result is concatenated with the ground truth category label and then fed into the linear layer to give the prediction of the hate group . Since it utilizes for prediction during testing, this model sets an upper bound performance for our method.
For the baseline CVAE, Bi-LSTM, the upper bound model, and the HCVAE, we use randomly initialized word embeddings with size 200. All the neural network models are optimized by the Adam optimizer with learning rate 1e-4. The batch size is 20. The hidden size of all the LSTM layers in these models is 64 and all the MLPs are three-layered with non-linear activation function Tanh. For the CVAE and the HCVAE, the size of the latent variables is set to 256.
All the baseline models and our model are evaluated on two datasets. We first use the complete dataset for training and testing. 90% of the instances are used for training and the rest for testing. In order to evaluate the robustness of the baseline models and our model, we also randomly selected a subset (10%) of the original dataset for training while the testing dataset is fixed. Since the upper bound model is used to set an upper bound on performance, we do not evaluate it on the smaller training dataset. We use Macro-F1, Micro-F1, and Weighted-F1 to evaluate the classification results. As shown in Figure 4, the dataset is highly imbalanced, which causes problems for training the above models. In order to alleviate this problem, we use a weighted random sampler to sample instances from the training data. However, the testing dataset is not sampled, so the distribution of the testing dataset remains the same as that of the original dataset. This allows us to evaluate the models’ performance on the data with a realistic distribution.
5.3 Experimental Results
The experimental results are shown in Table 1. The testing dataset keeps the imbalanced distribution of the original data, so the Macro-F1 score of each method is significantly lower than the Micro-F1 score and the Weighted-F1 score. Comparing the performance of the Bi-LSTM model and that of the baseline CVAE model shows that although CVAE is traditionally used as a generative model, it can also achieve competitive performance as a discriminative model.
All the methods achieve lower F1 scores when using the smaller training dataset. Due to the imbalanced distribution of our dataset, half of the 40 groups has less than 1k tweets in the smaller training dataset, which leads to the sharp decline in the Macro-F1 scores of all the methods. However, the performance of both CVAE-based models degrades less than that of the other two neural network models (the Bi-LSTM model and the Char-CNN model) according to the Micro-F1 Weighted-F1 scores. These two CVAE-based models tend to be more robust when the size of the training dataset is smaller. The difference between the CVAE-based models and the other two models is that both the Bi-LSTM model and the Char-CNN model directly compress the input text into a fixed-length latent variable while the CVAE model explicitly models the posterior and likelihood distributions over the latent variable. The result is that, during testing, the inference strategy of the Bi-LSTM model and the Char-CNN model is actually comparing the compressed text to the compressed instances in the training dataset while the strategy of the CVAE-based models is to compare the prior distributions over the latent variable. Compared with the compressed text, prior distributions may capture higher level semantic information and thus enable better generalization.
By further utilizing the hate category label for training, the HCVAE outperforms the baseline CVAE on all three metrics. Figure 5 illustrates the difference between the predictions made by the HCVAE and the CVAE. As shown in the figure, most of the lighter girds are in the dashed squares while most of the darker girds are outside. This indicates that the HCVAE model tends to correct the prediction of the CVAE’s misclassified instances to be closer to the ground truth. In most cases, the misclassified instances can be directly corrected to the ground truth (the diagonal). In other cases, they are not corrected to the ground truth but are corrected to the hate groups of the same categories as the ground truth (the dashed squares). This shows that additional ideology information is useful for the model to better capture the subtle differences among tweets posted by different hate groups.
Although our method outperforms the baseline methods, there is still a gap between its performance and the upper bound performance. We analyze this in the following section.
5.4 Error Analysis
As mentioned above, in some cases our model misclassified the tweet as a group under the same category as the ground truth. Take, for instance, the tweet from Group1: The only good #muslim is a #dead #muslim. Our HCVAE model predicts it as from Group2. But both Group1 and Group2 are under the category “neo nazi”. One possible reason for this kind of error is that the imbalance of the dataset adversely affects the performance of our method. Figure 6 shows the F1 scores achieved by the HCVAE on each group. The performance of the model tends to be much lower when the number of the group’s training instances decreases. Although we use the weighted random sampler to alleviate the problem of the imbalanced dataset, repeating the very limited data instances (less than 3k) of a group during training cannot really help the posterior and prior networks to give a reasonable distribution that can generalize well on unseen inputs. Therefore, when the model comes into the instances in the testing dataset, the performance can be less satisfactory. This is a common problem for all the methods, which is the cause of the significantly lower Macro-F1 scores.
Another type of error is caused by the noisy dataset. Take, for instance, the tweet from Group3 under the category “ku klux klan”: we must secure the existence of our people and future for the White Children !! Our model classifies it as from Group4 under the category “neo nazi”, which makes sense but is an error.
In this paper, we explore the CVAE as a discriminative model and find that it can achieve competitive results. In addition, the performance of the CVAE-based models tend to be more stable than that of the others when the dataset gets smaller. We further propose an extension of the basic discriminative CVAE model to incorporate the hate group category (ideology) information for training. Our proposed model has a hierarchical structure that mirrors the hierarchical structure of the hate groups and the ideologies. We apply the HCVAE to the task of fine-grained hate speech classification, but this Hierarchical CVAE framework can be easily applied to other tasks where the hierarchical structure of the data can be utilized.
- Badjatiya et al. (2017) Pinkesh Badjatiya, Shashank Gupta, Manish Gupta, and Vasudeva Varma. 2017. Deep learning for hate speech detection in tweets. In Proceedings of the 26th International Conference on World Wide Web Companion, pages 759–760. International World Wide Web Conferences Steering Committee.
Burnap and Williams (2016)
Pete Burnap and Matthew L Williams. 2016.
Us and Them: Identifying Cyber Hate on Twitter across Multiple
EPJ Data Science, 5(1):11.
- Davidson et al. (2017) Thomas Davidson, Dana Warmsley, Michael Macy, and Ingmar Weber. 2017. Automated hate speech detection and the problem of offensive language. arXiv preprint arXiv:1703.04009.
- Diao et al. (2014) Qiming Diao, Minghui Qiu, Chao-Yuan Wu, Alexander J Smola, Jing Jiang, and Chong Wang. 2014. Jointly modeling aspects, ratings and sentiments for movie recommendation (jmars). In Proceedings of the 20th ACM SIGKDD international conference on Knowledge discovery and data mining, pages 193–202. ACM.
Gao et al. (2017)
Lei Gao, Alexis Kuppersmith, and Ruihong Huang. 2017.
Recognizing explicit and implicit hate speech using a weakly
supervised two-path bootstrapping approach.
Proceedings of the Eighth International Joint Conference on Natural Language Processing (Volume 1: Long Papers), volume 1, pages 774–782.
- Hochreiter and Schmidhuber (1997) Sepp Hochreiter and Jürgen Schmidhuber. 1997. Long short-term memory. Neural computation, 9(8):1735–1780.
- Johnson and Zhang (2015) Rie Johnson and Tong Zhang. 2015. Effective use of word order for text categorization with convolutional neural networks. In Proceedings of the 2015 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies, pages 103–112.
- Kim (2014) Yoon Kim. 2014. Convolutional neural networks for sentence classification. In Proceedings of the 2014 Conference on Empirical Methods in Natural Language Processing (EMNLP), pages 1746–1751.
- Kingma and Welling (2013) Diederik P Kingma and Max Welling. 2013. Auto-encoding variational bayes. arXiv preprint arXiv:1312.6114.
- Lai et al. (2015) Siwei Lai, Liheng Xu, Kang Liu, and Jun Zhao. 2015. Recurrent convolutional neural networks for text classification. In AAAI, volume 333, pages 2267–2273.
Larsen et al. (2016)
Anders Boesen Lindbo Larsen, Søren Kaae Sønderby, Hugo Larochelle, and
Ole Winther. 2016.
Autoencoding beyond pixels using a learned similarity metric.
Proceedings of the 33rd International Conference on International Conference on Machine Learning-Volume 48, pages 1558–1566. JMLR. org.
- Nobata et al. (2016) Chikashi Nobata, Joel Tetreault, Achint Thomas, Yashar Mehdad, and Yi Chang. 2016. Abusive language detection in online user content. In Proceedings of the 25th international conference on world wide web, pages 145–153. International World Wide Web Conferences Steering Committee.
Rezende et al. (2014)
Danilo Jimenez Rezende, Shakir Mohamed, and Daan Wierstra. 2014.
Stochastic backpropagation and approximate inference in deep generative models.In International Conference on Machine Learning, pages 1278–1286.
- Salimans et al. (2015) Tim Salimans, Diederik Kingma, and Max Welling. 2015. Markov chain monte carlo and variational inference: Bridging the gap. In International Conference on Machine Learning.
- Socher et al. (2013) Richard Socher, Alex Perelygin, Jean Wu, Jason Chuang, Christopher D Manning, Andrew Ng, and Christopher Potts. 2013. Recursive deep models for semantic compositionality over a sentiment treebank. In Proceedings of the 2013 conference on empirical methods in natural language processing, pages 1631–1642.
- Sohn et al. (2015) Kihyuk Sohn, Honglak Lee, and Xinchen Yan. 2015. Learning structured output representation using deep conditional generative models. In Advances in Neural Information Processing Systems.
- Tai et al. (2015) Kai Sheng Tai, Richard Socher, and Christopher D Manning. 2015. Improved semantic representations from tree-structured long short-term memory networks. In Proceedings of the 53rd Annual Meeting of the Association for Computational Linguistics and the 7th International Joint Conference on Natural Language Processing (Volume 1: Long Papers), volume 1, pages 1556–1566.
- Tang et al. (2015) Duyu Tang, Bing Qin, and Ting Liu. 2015. Document modeling with gated recurrent neural network for sentiment classification. In Proceedings of the 2015 conference on empirical methods in natural language processing, pages 1422–1432.
- Van Hee et al. (2015) Cynthia Van Hee, Els Lefever, Ben Verhoeven, Julie Mennes, Bart Desmet, Guy De Pauw, Walter Daelemans, and Véronique Hoste. 2015. Detection and Fine-grained Classification of Cyberbullying Events. In RANLP’15: International Conference Recent Advances in Natural Language Processing, pages 672–680.
- Warner and Hirschberg (2012) William Warner and Julia Hirschberg. 2012. Detecting Hate Speech on the World Wide Web. In ACL’12: Proceedings of the 2nd Workshop on Language in Social Media, pages 19–26. Association for Computational Linguistics.
- Waseem and Hovy (2016) Zeerak Waseem and Dirk Hovy. 2016. Hateful symbols or hateful people? predictive features for hate speech detection on twitter. In Proceedings of the NAACL student research workshop, pages 88–93.
- Yang et al. (2016) Zichao Yang, Diyi Yang, Chris Dyer, Xiaodong He, Alex Smola, and Eduard Hovy. 2016. Hierarchical attention networks for document classification. In Proceedings of the 2016 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies, pages 1480–1489.
- Yogatama et al. (2017) Dani Yogatama, Chris Dyer, Wang Ling, and Phil Blunsom. 2017. Generative and discriminative text classification with recurrent neural networks. arXiv preprint arXiv:1703.01898.
Zhang et al. (2016)
Biao Zhang, Deyi Xiong, Hong Duan, Min Zhang, et al. 2016.
Variational neural machine translation.In Proceedings of the 2016 Conference on Empirical Methods in Natural Language Processing, pages 521–530.
- Zhang et al. (2015) Xiang Zhang, Junbo Zhao, and Yann LeCun. 2015. Character-level convolutional networks for text classification. In Advances in neural information processing systems, pages 649–657.
- Zhao et al. (2017) Tiancheng Zhao, Ran Zhao, and Maxine Eskenazi. 2017. Learning discourse-level diversity for neural dialog models using conditional variational autoencoders. In Proceedings of the 55th Annual Meeting of the Association for Computational Linguistics (Volume 1: Long Papers), volume 1, pages 654–664.
Zhong et al. (2016)
Haoti Zhong, Hao Li, Anna Cinzia Squicciarini, Sarah Michele Rajtmajer,
Christopher Griffin, David J Miller, and Cornelia Caragea. 2016.
Content-Driven Detection of Cyberbullying on the Instagram Social
IJCAI’16: Proceedings of the 25th International Joint Conference on Artificial Intelligence, pages 3952–3958.
- Zhou et al. (2015) Chunting Zhou, Chonglin Sun, Zhiyuan Liu, and Francis Lau. 2015. A c-lstm neural network for text classification. arXiv preprint arXiv:1511.08630.