## 3 Background
### Problem Definition  
We let \(G\) be a graph defined as \(G=(V,\ E)\), where \(V\) was a set of nodes of size \(N\); each node represented a Twitter account, and \(E\) was the adjacency matrix. Nodes of the graph were described using the feature matrix \(\mathbf{X}=\{x_{i}\}_{i=1}^{N}\) of dimension \(N\times F\), where \(F\) was the number of features in total for each node, and each row was the feature vector of node \(i\). Each account was associated with a set of numerical features, \(Nu\), and categorical features, \(C\). Therefore, \(x_{i}=\{Nu_{i},\ C_{i}\}\) for \(i=0,\ 1,\ 2,\ 3,\dots,\ N\).  
The relationships among the different nodes were presented in the adjacency matrix \(E\) of size \(N\times N\), where \(e_{ij}\in\{0,\ 1\}\) indicated whether there was an edge (relationship) between node \(i\) and \(j\). The diagonal elements of this matrix were the self-loop edges of the nodes (an edge from the node to itself). As our graph was undirected, the adjacency matrix was symmetric, and hence \(e_{ij}=e_{ji}\).  
Labels of the nodes were included in the label vector \(l\) of size \(N\), where \(l_{i}\ \in\{0,\ 1\}\) was the ground truth of node \(i\), to indicate if this node was a human account \((0)\) or a bot account \((1)\).  
The Twitter bot detection problem was modeled as a binary classification task under the semi-supervised learning schema shown in Figure 1. This was because we had a large dataset, but only a few nodes were labeled. Here, we found a function \(f:(Nu_{i},\ C_{i}\,\ E)\to l^{\prime}\), that mapped each feature vector of a node to its true label, such that the predicted label \(l^{\prime}\) was close to the ground truth \(l\) for maximum prediction accuracy (or minimum prediction error).  
\begin{table}
\begin{tabular}{c c c} \hline \hline
**Detection Approach** & **Strengths** & **Limitations** \\ \hline \multirow{8}{*}{Feature-Based} & \multirow{8}{*}{Good overall performance, as the literature reported [6]: Easy to implement when trained data are available, especially as some literature works provide their code for testing [7]; Commonly used, enabling combination of techniques and avoidance of pitfalls and mistakes reported in previous work [25];} & Bias to trained datasets (including representative samples), performs less well with new data [26]; Available datasets do not include the full list of features, due to user privacy issues; therefore, not all features are available for testing and analyzing [27]; Some techniques are based on assumptions which lack wide application [22]; Using the accuracy rate is not enough to evaluate the performance of the proposed work [28]. \\ \hline \multirow{8}{*}{Graph-Based} & Helpful when detecting influence ranking [29]. Using visualization mapping to more easily identity influence/rank [29]; Understanding links/behavior patterns; Detecting communities based on similarities/dissimilarities [30]. \\ \cline{1-1} \cline{2-3}  & \multirow{4}{*}{Hulpful when detecting influence ranking [29]. Using visualization mapping to more easily identity influence/rank [29]; Understanding links/behavior patterns; Detecting communities based on similarities/dissimilarities [30].} \\ \cline{1-1} \cline{2-3}  & \multirow{4}{*}{Graph-Based} & \multirow{4}{*}{Hulpful when detecting influence ranking [29]. Using visualization mapping to more easily identity influence/rank [29]; Understanding links/behavior patterns; Detecting communities based on similarities/dissimilarities [30].} \\ \cline{1-1} \cline{2-3}  & & \\ \cline{1-1} \cline{2-3}  & \multirow{4}{*}{Crowdsourcing} & Humans are more able to distinguish differences in the Turing test [33]; Good with a small amount of data; Useful to build a ground-truth baseline [34]. \\ \cline{1-1} \cline{2-3}  & & \\ \cline{1-1} \cline{2-3}  & & \\ \hline \hline \end{tabular}
\end{table}
Table 1: Supervised learning approaches’ strengths and limitations.