# Collecting a Large Scale Dataset for Classifying Fake News Tweets Using Weak Supervision
## 4 Approach
### Text Features  
The features above do not consider the actual contents of the tweet. For representing the textual contents of the tweet, we explored two alternatives: a bag of words (BOW) model using TF-IDF vectors, and a neural Doc2 vec model [31] trained on the corpus. For the BOW approach, we explored the use both of word unigrams and word bigrams. The results of an initial experiment using different learners in their default configuration, and running cross validation on the training set, are depicted in Table 2. It can be observed that unigrams work better than bigrams for BOW models, most likely due to the high dimensionality of the latter. For doc2 vec, two variants exist. On the one hand, the Continuous Bag-of-words model (CBOW) predicting a word at hand based on its context. The context is represented in a bag-of-words fashion, thus the order of the words is not considered. On the other hand, the Continuous Skip-gram model which predicts the surrounding words given a word [32]. Doc2 Vec does not only use word vectors, but also paragraph vectors which represent a text of arbitrary length rather than single words. Word vectors are shared across paragraphs whereas paragraph vectors are only shared across the contexts within a paragraph. With Doc2 Vec, it is possible to represent texts of variable length with a vector of a fixed size which is usually much smaller than the vocabulary size. This vector can then be used as features for tasks requiring a two dimensional text representation like the one in this paper. Again, two frameworks can be applied to achieve the vectors. The _Distributed Memory Model_ (PV-DM) is similar to CBOW, but also includes a paragraph matrix in addition to the word vectors which then are used to predict a word in the context. Similar to the skip-gram model for Word2 Vec, the _Distributed Bag-of-words for paragraph vectors_ (PV-DBOW) predicts words from a small window given the paragraph matrix. The order of the words in this window is not considered [31]. The Python library _gensim_ ([[https://radimrehurek.com/gensim/](https://radimrehurek.com/gensim/)]([https://radimrehurek.com/gensim/](https://radimrehurek.com/gensim/)), accessed on 7 June 2017) was used to create the vectors. As an input for Doc2 Vec, preprocessing stage five was considered. This stage also includes stopwords. However, Doc2 Vec is able to handle them through the sample parameter, which randomly downsamples higher-frequency words ([[https://radimrehurek.com/gensim/models/doc2](https://radimrehurek.com/gensim/models/doc2) vec.html]([https://radimrehurek.com/gensim/models/doc2](https://radimrehurek.com/gensim/models/doc2) vec.html), accessed on 7 June 2017). While the BOW model yields a fixed number of features (since each possible word in the corpus is regarded as a single feature), we can directly influence the number of features created by Doc2 Vec. We have experimented with 100, 200, and 300 dimensions, training the model using the _gensim_ Python library ([[https://radimrehurek.com/gensim/](https://radimrehurek.com/gensim/)]([https://radimrehurek.com/gensim/](https://radimrehurek.com/gensim/)), accessed on 7 June 2017), and using both the Distributed Memory (DM) and the Distributed Bag of Words (DBOW) variant. In an initial experiment, running cross validation on the training set, DBOW constantly outperformed DM, but the number of dimensions for which the best results were achieved varied across the learning algorithms, as depicted in Figure 5. Comparing the results to those obtained with BOW above, we can observe that doc2 vec yields superior results. Hence, we used doc2 vec for text representation in the subsequent experiments, using the best performing configuration for each learning algorithm from the initial experiments (Interaction effects of the parameter settings for doc2 vec and the learning algorithm were not analyzed due to the size of the combined parameter search space).