## 3 Methodology
### Key Event Detection  
**Graph-Based Community Discovery:** Since the phrases are extracted from a massive amount of news text, their quantity is also quite large. As a result, the constructed graph structure is also relatively large. Based on the entire process, an unsupervised community detection algorithm needs to be selected. Additionally, it is hoped that the algorithm can perform calculations quickly. The Louvain community detection algorithm typically performs well when dealing with large networks and is an unsupervised algorithm that is computationally efficient. Therefore, this algorithm was chosen for this stage. The Louvain algorithm [15], a modularity-based community discovery algorithm, is used to detect non-overlapping community structures in graphs. The goal of optimization is to maximize the modularity of the entire structure of the graph (community network). Modularity is used to describe the density of communities in the graph structure. The algorithm initially treats each node as a community, and considers the neighboring nodes of each community separately, attempting to merge them. It finds the partition method with the largest change in modularity and divides it into the same community. Iterative calculations are performed until there is no further change. The modularity formula is given in Equation (11).  
\[Q=\frac{1}{2R}\sum_{uv}\biggl{[}w_{uv}-\frac{k_{u}k_{v}}{2R}\biggr{]}\delta(u,v) \tag{11}\]  
where \(u\) and \(v\) are two nodes in \(G^{\prime}\), with \(u\ \in\ [1,M]\) and \(v\ \in\ [1,M]\). \(R\) represents the total number of edges in \(G^{\prime}\) and \(w_{uv}\) represents the weight of the edge between nodes \(u\) and \(v\). \(k_{u}\) and \(k_{v}\) are the degree of nodes \(u\) and \(v\), respectively. If nodes \(u\) and \(v\) are in the same community, \(\delta(u,v)=1\); otherwise, \(\delta(u,v)=0\).  
The algorithm has a low time complexity and is suitable for large-scale networks and works well. It is currently one of the most commonly used and efficient algorithms. Therefore, in this paper, this algorithm is used to cluster the deep semantic high-quality phrase graph \(G^{\prime}\) and initially generate the key event family \(C^{\prime}\), as shown in Equation (12).  
\[C=\text{Louvain}\bigl{(}G^{\prime}\bigr{)} \tag{12}\]  
where \(C\) is the set of clusters generated using [PERSON]'s algorithm, \(C=\{C_{1},C_{2},\ldots,C_{r}\}\), and \(r\) is the total number of communities found. Clusters with node number 1 are omitted, leaving each cluster containing two or more nodes, denoted as \(C^{\prime}\).  
**Extraction of Key Event Document:** Based on Equation (12), the news documents in corpus \(D\) are divided into sets (or clusters) of key event documents corresponding to each cluster of deep sub-semantic high-quality phrases in \(C^{\prime}\). However, using only phrases for matching may lose documents that express the same event but with different wording. The article selection module IKEDS [7], based on the results of community discovery, enables the selection of documents for the same event but using different wording. This selection module, IKEDS, is used in this paper to further process the community discovery result \(C^{\prime}\) of the deep high-quality phrase graph in order to extract the complete (identically and differently worded) key event documents corresponding to each cluster of deep semantic high-quality phrases in \(C^{\prime}\), denoted by \(K_{i}\), which represents the set of all documents for the with key event extracted. Based on the above method, Equation (13) is constructed to extract the complete set of key event documents corresponding to \(C^{\prime}\), denoted by \(\mathcal{K}\).  
\[\mathcal{K}=\text{IKEDS}\big{(}C^{\prime}\big{)} \tag{13}\]  
where \(\mathcal{K}=\{K_{1},K_{2},\dots,K_{l}\}\), \(K_{i}\subset D\). \(l\) represents the number of key events.