## 3 Background
### Multi-View Graph Attention Networks  
A multi-view graph is a relational graph that consists of different relationships among the nodes (or, technically, multiple graphs with the same nodes, but different edges). This inspired [39] to extend the graph convolutional networks (GCNs) to relational graph convolutional networks (RGCNs), to consider them. Let \(\mathcal{R}\) be the number of relations. In regard to Twitter, relationships can include following/follower, tweet/retweet, replies/mentions, or any interaction. The updated node representation was modified to include the relations, as indicated in Equation (8):  
\[h^{\prime}_{i}=\sigma\Bigl{(}\mathbf{W}_{0}^{(l)}\times\ h_{i}^{(l-1)}\Bigr{)}+ \sigma\left(\sum_{r\in\mathcal{R}}\sum_{j\in\mathcal{N}_{i}^{r}}\frac{1}{ \mathcal{N}_{i}^{r}}\times\mathbf{W}_{r}^{(l)}\times h_{j}^{(l-1)}\right) \tag{8}\]  
where \(\mathcal{N}_{i}^{r}\) represented the neighbors of node \(i\) with respect to relation \(r\). \(\mathbf{W}_{0}^{(l)}\) was the relation-independent weight matrix for the self-loop edges to include node \(i\) representation. This equation summed the nodes' representations across all relations, to obtain the final nodes' representations. As can be seen, RGCN--which was modeled using Equation (8)--did not consider the importance of the neighbors among the relations. We propose our framework, a multi-view graph attention network which was adopted from [18], and combines both GAT and RGCN. The new model calculated the relation-wise attention coefficients for ranking the influence of the neighbors among different interactions (relationships). We simply modified Equation (8) to define the view-specific node representation as follows:  
\[h^{\prime}_{i,r}=\sigma\Bigl{(}\alpha^{r}_{ii}\times\ h_{i,r}^{(l-1)}\Bigr{)}+ \sigma\left(\sum_{j\in\mathcal{N}_{i}^{r}}\alpha^{r}_{ij}\times\mathbf{W}_{r}^{(l )}\times\ h_{j}^{(l-1)}\right) \tag{9}\]The relation-specific attention coefficient in Equation (9) was described by \(\alpha^{r}_{ij}\). This time, the attention for the self-loop term was relation-specific. The reason for this was because every node had a different set of neighbors in each relation. The formula for calculating \(\alpha^{r}_{ij}\) is shown in Equation (10):  
\[\alpha^{r}_{ij}=\frac{\exp\Bigl{(}z^{T}_{r}\times LeakyReLU\left(\mathbf{W}_{r} \times\left[h^{(l-1)}_{i,r}||h^{(l-1)}_{j,r}\right]\right)\Bigr{)}}{\sum_{k\in \mathcal{N}^{r}_{i}}\exp\Bigl{(}z^{T}_{r}\times LeakyReLU\left(\mathbf{W}_{r} \times\left[h^{(l-1)}_{i,r}||h^{(l-1)}_{k}\right]\right)\Bigr{)}} \tag{10}\]  
Finally, we aggregated the nodes' representations across the different views by using a weighted sum with parameter \(\beta\) (number between 0 and 1). This differed from the approach used in [18], as we did not want to add overhead to the training of the model. Additionally, because we had datasets with different types of relations (edges), we decided to combine them into two views only (\(\mathcal{R}=2\)), where a view contained a set of the edges, and the rest were in the other view. This was done for each dataset. Thus, the aggregation across the views is shown in Equation (11):  
\[h^{final}_{i}=\beta\ \times h^{\prime}_{i,r_{1}}+(1-\beta)\times h^{\prime}_{i,r _{2}} \tag{11}\]  
where \(r_{1}\) and \(r_{2}\) were the two views (\(\mathcal{R}=\{r_{1}\,\ r_{2}\}\)). The model was trained by optimizing the loss function, using the Adam optimizer. We used the binary cross-entropy loss function, as we had only two classes (human and bot):  
\[Loss=\sum_{i\in\varphi}\bigl{[}-l_{i}\times\log\bigl{(}l^{\prime}_{i}\bigr{)}- (1-l_{i})\times\log\bigl{(}1-l^{\prime}_{i}\bigr{)}\bigr{]} \tag{12}\]  
We considered only a portion of the labeled samples for calculating the training loss, as indicated by \(\varphi\).