# Research on Feature Fusion Method Based on Graph Convolutional Networks
## 3 Methods
### Graph Convolutional Networks Module  
To enable the training of the GNN, the initial step of the model involves constructing the text graph, which entails transforming the text into a graph representation. Assuming the current text comprises n words, we define the text graph as follows: \(\mathrm{G}=\{\mathrm{E},\mathrm{N}\}\), where \(\mathrm{E}\in\{\mathrm{e_{ij}}|\mathrm{i}\in[1,\mathrm{n}],\mathrm{j}\in[1, \mathrm{n}]\}\) is the set of edges in the text graph, and \(\mathrm{N}\in\{\mathrm{v_{1}},\dots,\mathrm{v_{n}}\}\) is the set of nodes in the text graph. The set of node vectors is denoted as \(\mathrm{X}\in\mathbb{R}^{\mathrm{N}\times\mathrm{N}}=\{\mathrm{x_{1}},\dots, \mathrm{x_{i}},\dots,\mathrm{x_{n}}\}\), where \(\mathrm{d}\) represents the embedding dimension of words, \(\mathrm{x_{i}}\) represents the vector representation of \(\mathrm{v_{i}}\), \(\mathrm{A}\in\mathbb{R}^{\mathrm{N}\times\mathrm{N}}\) represents the adjacency matrix, and \(\mathrm{A_{ij}}\) represents the weight value between nodes \(\mathrm{v_{i}}\) and \(\mathrm{v_{j}}\), which is calculated as in Equation (1). These weights are calculated using PMI values as described in Equation (2). \[\mathrm{A_{ij}}= \begin{cases}\mathrm{PMI}\big{(}\mathrm{v_{i}},\mathrm{v_{j}} \big{)},&\mathrm{PMI}\big{(}\mathrm{v_{i}},\mathrm{v_{j}}\big{)}>0\\ \mathrm{TF}-\mathrm{IDF}_{ij},&\mathrm{(i\text{ is document,}j\text{ is word})}\\ 1,&\mathrm{i=j}\\ 0,&\mathrm{otherwise}\end{cases}  \tag{1}\]  
\[\mathrm{PMI}\big{(}\mathrm{v_{i}},\mathrm{v_{j}}\big{)}=\log\frac{\mathrm{p} \big{(}\mathrm{v_{i}},\mathrm{v_{j}}\big{)}}{\mathrm{p}\big{(}\mathrm{v_{i}} \mathrm{v_{j}}\big{)}} \tag{2}\]  
Each word or document is used as input with one-hot coded vectors, and the schematic diagram for the construction of the text map is shown in Figure 3.  
Figure 3: Schematic diagram of text map construction (using the R8 dataset as an example). Word nodes are represented individually, document nodes are represented by Di, and different colors indicate different document categories. The edge between a word node and a document node is constructed based on the word’s occurrence in a document, represented by a black solid line, and its weight is the word’s TF-IDF value in a document. The edge between words is constructed based on the word’s co-occurrence across the entire corpus, represented by a black dashed line in the graph, and the weight is computed using the point-to-point mutual information (PMI) to compute the weights between two-word nodes. After building the text graph, it is fed into a simple two-layer GCN. As affirmed by [PERSON] and [PERSON] in their 2017 article \"Semi-supervised Classification with Graph Convolutional Networks\", a two-layer GCN performs optimally. The second-layer embeddings of nodes (representing words and documents) are sized equivalently to the label set and are input into a softmax classifier:  
\[\text{Z}=\text{softmax}\left(\overset{\sim}{\text{A}}\text{ReLU}\left( \overset{\sim}{\text{A}}\text{X}\text{W}_{0}\right)\text{W}_{1}\right) \tag{3}\]  
where \(\overset{\sim}{\text{A}}=\text{D}^{-1/2}\text{AD}^{-1/2}\) is the normalized symmetric adjacency matrix, and \(\text{softmax}(\text{x}_{i})=\frac{1}{Z}\text{exp}(\text{x}_{i})\) with \(\text{Z}=\sum_{i}\text{exp}(\text{x}_{i})\).