Method and device for determining network evolution process, electronic equipment and storage medium
By using edge generation time prediction model in complex network evolution reconstruction, combining real and simulated network sample sets to ensure network sample consistency, solving the problems of insufficient generalization ability and overfitting of existing methods, and achieving more efficient network evolution process prediction.
Patent Information
- Application Number
- CN202510493511.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-04-18
- Publication Date
- 2025-08-29
AI Technical Summary
Existing complex network evolution reconstruction methods lack the generalization ability across different network types and scales, and face the problem of poor overfitting and generalization ability.
By acquiring the target network, using the trained edges to generate a time prediction model, combining the collected real network and the simulated network sample set generated based on the diffusion model, enriching the network samples, and using set network samples similar to the target network attributes for training, ensuring the consistency of the network samples, eliminating transfer learning problems, and improving prediction capabilities.
It significantly improves the universality and efficiency of the edge generation time prediction model, improves the accuracy and credibility of the generation order, and solves the problem of poor overfitting and generalization ability caused by insufficient sample data.
Smart Images

Figure CN120562467A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of complex network analysis and machine learning, and in particular to a method, device, electronic device and storage medium for determining a network evolution process. Background Art
[0002] Complex networks are widely present in natural, social, and technological systems and exhibit dynamic evolutionary characteristics. Their study is crucial for revealing the interaction mechanisms and dynamic behaviors within these systems. While the importance of reconstructing the evolution of complex networks is growing, this task faces significant challenges.
[0003] To this end, researchers have proposed machine learning-based algorithms to predict network evolution. These methods learn the structural characteristics of the network to infer the order in which edges are generated, thereby reconstructing the evolution of the network.
[0004] However, existing data augmentation methods are often limited to specific types of networks and lack the ability to generalize across different network types and scales. Therefore, an effective solution is urgently needed to address the above problems. Summary of the Invention
[0005] To solve the above problems, the present invention provides a method, device, electronic device and storage medium for determining a network evolution process.
[0006] The present invention provides a method for determining a network evolution process, comprising: Acquire a target network, where the target network includes at least two edges; Inputting the target network into a trained edge generation time prediction model to obtain a generation order of all edges in the target network, wherein the edge generation time prediction model is trained based on a first network sample set, wherein the first network sample set includes at least one set network sample, and the network attributes of the set network sample are similar to those of the target network, and the first network sample set includes a collected second network sample set and a third network sample set generated based on a diffusion model; The evolution process of the target network is determined according to the generation order of all edges in the target network.
[0007] According to a method for determining a network evolution process provided by the present invention, before inputting the target network into a trained edge generation time prediction model to obtain the generation order of all edges in the target network, the method further includes: Collecting at least one real network containing timestamp information to obtain a second network sample set, and generating at least one simulated network containing timestamp information based on the trained diffusion model to obtain a third network sample set; Merging the second network sample set and the third network sample set to obtain the first network sample set; Based on the first network sample set, an untrained edge generation time prediction model is trained, verified, and tested to obtain a trained edge generation time prediction model.
[0008] According to a method for determining a network evolution process provided by the present invention, the method includes training, verifying, and testing an untrained edge generation time prediction model based on the first network sample set to obtain a trained edge generation time prediction model, including: For each network sample in the first network sample set, dividing the sample edges in the network sample into a first training set, a first validation set, and a first test set according to a first division ratio; Training the edge generation time prediction model based on the first training set to obtain a trained edge generation time prediction model; Verifying the trained edge generation time prediction model based on the first verification set; If the verification fails, continuing to perform the training of the edge generation time prediction model based on the first training set to obtain a trained edge generation time prediction model and subsequent steps; If the verification is successful, testing the trained edge generation time prediction model based on the first test set; If the test fails, continuing to perform the steps of training the edge generation time prediction model based on the first training set to obtain a trained edge generation time prediction model and subsequent steps; If the test is successful, the trained edge generation time prediction model is used as the trained edge generation time prediction model.
[0009] According to a method for determining a network evolution process provided by the present invention, the edge generation time prediction model includes an embedding unit, a fully connected unit, and a probability distribution unit; The step of training the edge generation time prediction model based on the first training set to obtain a trained edge generation time prediction model includes: Selecting any two sample edges belonging to the same network sample from the first training set, the two sample edges including a first sample edge and a second sample edge; Inputting the first sample edge and the second sample edge into the embedding unit for vector conversion processing to obtain a first embedding vector for the first sample edge and a second embedding vector for the second sample edge; Inputting the first embedding vector and the second embedding vector into the input layer of the fully connected unit for splicing to obtain an input vector; Inputting the input vector into the hidden layer of the fully connected unit for linear transformation and rectified linear processing to obtain a hidden vector; Inputting the hidden vector into the output layer of the fully connected unit for scalar conversion processing to obtain a first scalar corresponding to the first sample edge and a second scalar corresponding to the second sample edge; Inputting the first scalar and the second scalar into the probability distribution unit for probability conversion processing to obtain a first predicted probability and a second predicted probability, wherein the first predicted probability represents a probability that the first sample edge is generated before the second sample edge, and the second predicted probability represents a probability that the second sample edge is generated before the first sample edge; Based on timestamp information of network samples corresponding to the first sample edge and the second sample edge, obtaining a generation order of the first sample edge and the second sample edge; Calculating a first loss value based on the first predicted probability, the second predicted probability, and the generation order, and calculating a second loss value based on a regularization strength and a weight value and a bias value of the output layer; Adjusting model parameters of the edge generation time prediction model based on the first loss value and the second loss value; The edge generation time prediction model is continuously trained until a first training stop condition is reached, thereby obtaining a trained edge generation time prediction model.
[0010] According to a method for determining a network evolution process provided by the present invention, generating at least one simulated network including timestamp information based on a trained diffusion model to obtain a third network sample set includes: For each of the real networks in the second network sample set, sampling edges in the real network according to a set sampling ratio to obtain at least one sub-edge set corresponding to the real network; For each of the sub-edge sets, generating a sampling network corresponding to the sub-edge set; Each of the sampled networks is input into a trained diffusion model to generate at least one simulated network containing timestamp information, and the at least one simulated network containing timestamp information constitutes a third network sample set.
[0011] According to a method for determining a network evolution process provided by the present invention, after inputting each of the sampled networks into a trained diffusion model to generate at least one simulated network containing timestamp information, the method further includes: When the second network sample set does not include the set network sample, generating a static structure based on the network type of the target network; Based on the static structure, guiding the trained diffusion model to generate at least one of the set network samples; Each of the set network samples is added to the third network sample set.
[0012] According to a method for determining a network evolution process provided by the present invention, the diffusion model includes a noise adding unit and a noise removing unit; Before generating at least one simulated network including timestamp information based on the trained diffusion model to obtain the third network sample set, the method further includes: Acquire a fourth network sample set, where the fourth network sample set includes a plurality of network samples; Dividing the fourth network sample set into a second training set, a second validation set, and a second test set according to a second division ratio; Select any network sample from the second training set, and input the network sample into the noise adding unit for noise adding processing to obtain a noisy network; Inputting the noise-added network into the denoising unit for denoising to obtain a denoised network; Calculating a third loss value based on the denoised network and the network sample, and adjusting parameters of the diffusion model based on the third loss value; Continuing to train the diffusion model until a second training stop condition is reached, thereby obtaining a diffusion model that has completed training; Validating the trained diffusion model based on the second validation set; If the verification fails, continue to perform the steps of selecting any network sample from the second training set and subsequent steps; If the verification is successful, testing the trained diffusion model based on the second test set; If the test fails, continue to execute the steps of selecting any network sample from the second training set and subsequent steps; If the test is successful, the diffusion model that has completed training is used as the trained diffusion model.
[0013] The present invention also provides a device for determining a network evolution process, comprising: an acquisition module, configured to acquire a target network, wherein the target network includes at least two edges; an input module configured to input the target network into a trained edge generation time prediction model to obtain a generation order of all edges in the target network, wherein the edge generation time prediction model is trained based on a first network sample set, the first network sample set including at least one set network sample having network attributes similar to those of the target network, the first network sample set including a collected second network sample set and a third network sample set generated based on a diffusion model; The determination module is configured to determine the evolution process of the target network according to the generation order of all edges in the target network.
[0014] The present invention also provides an electronic device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein when the processor executes the computer program, the method for determining the network evolution process as described above is implemented.
[0015] The present invention also provides a non-transitory computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements any of the above-described methods for determining a network evolution process.
[0016] The present invention also provides a computer program product, comprising a computer program, wherein when the computer program is executed by a processor, the computer program implements any of the above methods for determining a network evolution process.
[0017] The present invention provides a method, apparatus, electronic device, and storage medium for determining a network evolution process. The method obtains a target network comprising at least two edges, inputs the target network into a trained edge generation time prediction model, and obtains the generation order of all edges in the target network. The edge generation time prediction model is trained based on a first network sample set, the first network sample set comprising at least one set network sample having network attributes similar to those of the target network, and the first network sample set comprising a collected second network sample set and a third network sample set generated based on a diffusion model. The method determines the generation order of all edges in the target network based on the generation order of all edges in the target network. By enriching network samples and performing data augmentation using the collected network as the second network sample set and a simulated network generated based on the diffusion model as the third network sample set, the method can address the problems of overfitting and poor generalization caused by insufficient sample data. By training the edge generation time prediction model using a sample network with the same properties as the target network, consistency between the sample network and the target network is ensured, eliminating transfer learning issues and improving the prediction capabilities of the edge generation time prediction model. This eliminates the need to retrain the edge generation time prediction model for each specific network, significantly increasing its versatility and efficiency. Using this edge generation time prediction model to predict the target network improves the accuracy and reliability of the generation order. BRIEF DESCRIPTION OF THE DRAWINGS
[0018] In order to more clearly illustrate the technical solutions in the present invention or the prior art, a brief introduction is given below to the drawings required for use in the embodiments or the description of the prior art. Obviously, the drawings described below are some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative work.
[0019] Figure 1 This is one of the flow charts of the method for determining the network evolution process provided by the present invention.
[0020] Figure 2 It is a schematic diagram of the complex network evolution provided by the present invention.
[0021] Figure 3 It is a schematic diagram of the principle of the diffusion model provided by the present invention.
[0022] Figure 4 It is a flow chart of the training edge generation time prediction model provided by the present invention.
[0023] Figure 5 It is a structural diagram of the edge generation time prediction model provided by the present invention.
[0024] Figure 6 This is the second flow chart of the method for determining the network evolution process provided by the present invention.
[0025] Figure 7 It is a structural diagram of the device for determining the network evolution process provided by the present invention.
[0026] Figure 8 It is a structural schematic diagram of the electronic device provided by the present invention. DETAILED DESCRIPTION
[0027] To make the objectives, technical solutions, and advantages of the present invention more clear, the technical solutions of the present invention will be clearly and completely described below in conjunction with the accompanying drawings. Obviously, the embodiments described are only some of the embodiments of the present invention, not all of them. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without making creative efforts shall fall within the scope of protection of the present invention.
[0028] The following combination Figures 1-8 The present invention describes a method, device, electronic device, and storage medium for determining a network evolution process.
[0029] First, the relevant contents of the present invention are briefly described.
[0030] The fundamental components of complex networks are nodes and edges. Nodes represent entities, while edges represent interactions or relationships between entities. The core task of network evolution lies in understanding how nodes and edges change over time to form the observed network structure. This process is crucial for predicting future network evolution trends and designing more effective management and intervention strategies.
[0031] Existing network evolution research primarily focuses on temporal network modeling and link prediction, attempting to infer node and edge behavior patterns from the network's dynamic characteristics. However, these methods often struggle to capture the complete historical evolution of a network, especially when data is scarce or the network complexity is high. Reconstructing historical network evolution is a more complex task, aiming to infer the generation time and order of edges within the network using the existing network structure and partial time series data, thereby fully reconstructing the network's evolutionary process.
[0032] Mathematical models that describe network evolution include temporal network models and generative models. Temporal network models record the dynamic changes of the network by attaching timestamps to the edges of the network, while generative models attempt to infer the laws of network evolution from the known network structure.
[0033] In order to formalize this problem, the following mathematical definition is introduced: Temporal network representation: Let the temporal network , by the node set and edge sets Each side Represents a pair of nodes connections between them, and have associated generation times .in, is a positive integer and is less than or equal to the edge set The number of mid-edges.
[0034] Edge generation order: For any two edges and , define the generation order relationship as follows: in, Represents an edge On the side Previously generated, Represents an edge The generation time is later than or equal to .
[0035] Edge generation time prediction: It can be expressed as a binary relationship prediction problem, the goal is to learn the network structure features To predict the edge generation order : in, is the order in which predictions are generated, function Represents a model that infers generation order based on network structural features.
[0036] Construction of edge generation sequence: Once the generation order of all edges is predicted, the entire edge generation sequence can be obtained , expressed as: here, are the indices of the edges in the order in which the predictions were generated.
[0037] Existing methods mainly rely on machine learning techniques, especially graph embedding and neural networks, to solve the problem of reconstructing the evolution of complex networks. The basic ideas of these methods are as follows: Graph embedding: First, use graph embedding techniques such as Node2Vec, DeepWalk algorithm, or Large-scale Information Network Embedding (LINE) algorithm to map the nodes and edges in the network into a low-dimensional vector space to capture the structural characteristics of the network.
[0038] Feature learning: Through random walks or other methods, embedding representations of nodes and edges are learned, which can reflect the structural roles and relationships of nodes and edges in the network.
[0039] Edge Generation Order Prediction: Using the learned embedding representation as input, a neural network model is trained to predict the generation order of any two edges. This model typically includes one or more hidden layers and can learn the relationship between the edge generation order and network structural characteristics. By determining the generation order of any two edges in the network, the generation time order of the entire network can be obtained, thereby reconstructing the evolution of the network's edges.
[0040] Despite the growing importance of reconstructing the evolution of complex networks, this task faces significant challenges. First, the evolutionary mechanisms of real-world networks are often highly complex and ill-defined, making theoretical reconstruction extremely difficult. Second, the evolution of dynamic networks is rarely fully observable, making it difficult to obtain high-quality labeled data, which in turn limits the application of machine learning algorithms in this area. Furthermore, significant differences between existing network structures and predicted networks can lead to poor model performance across different networks and scenarios.
[0041] To address these challenges, researchers have proposed machine learning-based algorithms to predict network evolution. These methods learn from the network's structural features to infer the order in which edges are generated, thereby reconstructing the network's evolutionary process. However, due to data scarcity, these algorithms suffer from overfitting and poor generalization. Furthermore, existing data augmentation methods are often limited to specific types of networks and lack the ability to generalize across different network types and sizes.
[0042] Existing complex network technologies primarily focus on link prediction, typically studying node connectivity in static networks and the temporal evolution of dynamic networks. These studies focus on improving the accuracy and efficiency of link prediction, addressing data sparsity, and adapting to diverse network characteristics. Examples include optimizing weighted link prediction metrics based on network topology and leveraging node embedding and time interval models to improve prediction accuracy in dynamic networks. However, these approaches primarily focus on predicting the current state of the network and lack systematic reconstruction of the network's historical evolution.
[0043] Figure 1 This is one of the flow charts of the method for determining the network evolution process provided by the present invention, such as Figure 1 As shown, the method includes the following: Step 101: Obtain a target network, where the target network includes at least two edges.
[0044] Specifically, the target network refers to a complex network whose evolution process needs to be determined. At least one edge in the target network does not have an associated generation time. The target network can be any type of complex network, such as an academic citation network, a biological network, or a social network. If the target network is a biological network, the nodes of the target network are the elements that make up the biological system, and the edges are the connections between the elements. If the target network is an academic citation network, the nodes of the target network are the documents, and the edges are the citation relationships between the documents. If the target network is a social network, the nodes of the target network are the users, and the edges are the social relationships between users, such as following, liking, and sending private messages.
[0045] See also Figure 2 , Figure 2 This is a schematic diagram of the evolution of a complex network provided by the present invention: evolution in the real world can include community formation and brain development, etc.; the evolution of a complex network is like a complex network at time T1, which becomes a complex network at time T2, and gradually becomes a complex network at time T n A complex network of moments.
[0046] In practical applications, the target network whose network evolution process needs to be determined can be obtained first, and the target network has at least two edges.
[0047] Step 102: Input the target network into a trained edge generation time prediction model to obtain the generation order of all edges in the target network, wherein the edge generation time prediction model is trained based on a first network sample set, wherein the first network sample set includes at least one set network sample, and the network attributes of the set network sample are similar to those of the target network, and the first network sample set includes a collected second network sample set and a third network sample set generated based on a diffusion model.
[0048] Specifically, the edge generation time prediction model refers to a trained, general model used to predict the edge generation order in the network. The network attributes include network structure and / or network type, and the similarity refers to a similarity greater than a similarity threshold.
[0049] In practical applications, the first network sample set can be used to train an untrained edge generation time prediction model to obtain a trained edge generation time prediction model.
[0050] In addition, in order to improve the accuracy and generalization ability of network evolution prediction, the collected real network can be used as the second network sample set, and the simulated network generated based on the diffusion model can be used as the third network sample set to enrich the network samples, thereby solving the problems of overfitting and poor generalization ability caused by insufficient sample data.
[0051] In order to improve the prediction ability of the edge generation time prediction model for the target network, the edge generation time prediction model can be trained using set network samples of the same type or similar structure as the target network to ensure the consistency between the network samples and the target network, thereby eliminating the transfer learning problem and improving the prediction performance.
[0052] After obtaining a trained edge generation time prediction model, the target network can be input into the edge generation time prediction model. The edge generation time prediction model predicts the generation order of every two edges in the target network, and then determines the generation order of all edges in the target network. In addition, the edge generation time prediction model can also predict the future development trend of the target network.
[0053] It should be noted that in the embodiments of the present invention, the diffusion model is a graph diffusion model, which is a generative model that learns the topological distribution of a network by simulating the random evolution of the network structure. This process consists of two main stages: the forward diffusion process and the backward denoising process.
[0054] The forward diffusion process is a process of gradually introducing noise, which gradually transforms the network structure from the initial state to the Gaussian noise state. This process can be described by the following mathematical expression: in, Indicates adding noise, Indicates that at time step The network structure, is in the time step The noise level, represents a normal distribution, is the identity matrix. This process starts from proceed to , ultimately completely transforming the network structure into noise.
[0055] The reverse denoising process is the inverse of the forward diffusion process. Its goal is to gradually restore the original network structure from the noisy state. This process is achieved by predicting the noise that needs to be removed at each step, which can be described by the following mathematical expression: in, Indicates adding noise, are the parameters of the diffusion model, is the output of the denoising network in the diffusion model, which predicts the The amount of noise that needs to be removed, is the predicted noise variance. The denoising network is usually a deep neural network, such as the transformer, which learns how to predict the original network structure based on the current noise state and time step information.
[0056] See also Figure 3 , Figure 3 This is a schematic diagram of the principle of the diffusion model provided by the present invention: From the original attribute network ( ) to the noise network Then to the noise network , which is the forward (noise-adding) process, where For the noise network To the noisy network Forward (noise) process, is the original attribute network ( ) to the noise network Forward (noising) process. To represent the original attribute network and Step noise network, speculate The inverse (denoising) process of the step-noise network.
[0057] Step 103: Determine the evolution process of the target network according to the generation order of all edges in the target network.
[0058] After obtaining the generation order of all edges in the target network, the behavior pattern of nodes and edges in the target network, that is, the evolution process, can be determined based on the generation order of all edges in the target network.
[0059] The present invention provides a method for determining a network evolution process. The method obtains a target network comprising at least two edges, inputs the target network into a trained edge generation time prediction model, and obtains the generation order of all edges in the target network. The edge generation time prediction model is trained based on a first network sample set, the first network sample set comprising at least one set network sample having network attributes similar to those of the target network, and the first network sample set comprising a collected second network sample set and a third network sample set generated based on a diffusion model. The method then determines the generation order of all edges in the target network. By enriching network samples and performing data augmentation using the collected network as the second network sample set and a simulated network generated based on the diffusion model as the third network sample set, the method can address the problems of overfitting and poor generalization caused by insufficient sample data. By training the edge generation time prediction model using a sample network with the same properties as the target network, consistency between the sample network and the target network is ensured, eliminating transfer learning issues and improving the prediction capabilities of the edge generation time prediction model. This eliminates the need to retrain the edge generation time prediction model for each specific network, significantly increasing its versatility and efficiency. Using this edge generation time prediction model to predict the target network improves the accuracy and reliability of the generation order.
[0060] Optionally, before inputting the target network into a trained edge generation time prediction model to obtain the generation order of all edges in the target network, the method further includes: Collecting at least one real network containing timestamp information to obtain a second network sample set, and generating at least one simulated network containing timestamp information based on the trained diffusion model to obtain a third network sample set; Merging the second network sample set and the third network sample set to obtain the first network sample set; Based on the first network sample set, an untrained edge generation time prediction model is trained, verified, and tested to obtain a trained edge generation time prediction model.
[0061] Specifically, the timestamp information refers to the generation time of the edge A real network refers to a network that exists in the real world. A simulated network refers to a generated virtual network.
[0062] In practical applications, see Figure 4 , Figure 4 This is a flow chart of the training edge generation time prediction model provided by the present invention: real networks (networks of different types and sizes, time series networks) containing timestamp information can be used from the real world as the second network sample set.
[0063] Since the number of real networks containing timestamp information is small, in order to avoid the problems of overfitting and poor generalization ability caused by insufficient sample data, the trained diffusion model can also be used to generate at least one simulated network containing timestamp information (data augmentation) as the third network sample set, which is then merged with the second network sample set to train the edge generation time prediction model.
[0064] The edge generation time prediction model is responsible for predicting the generation order of edges in a temporal network, thereby reconstructing the network's evolutionary history. It is trained using temporal network samples generated using data augmentation (the third network sample set) and the original temporal network (the second network sample set), and employs advanced machine learning techniques to accurately predict edge generation times.
[0065] Through this approach, the edge generation time prediction module can effectively predict the generation order of edges in complex networks, providing a powerful tool for understanding the evolutionary history of networks and predicting their future trends. This data-driven approach provides new perspectives and tools for network science, helping to further advance network evolution research.
[0066] Optionally, the training, validating, and testing an untrained edge generation time prediction model based on the first network sample set to obtain a trained edge generation time prediction model includes: For each network sample in the first network sample set, dividing the sample edges in the network sample into a first training set, a first validation set, and a first test set according to a first division ratio; Based on the first training set, the first validation set, and the first test set, the edge generation time prediction model is trained, validated, and tested to obtain a trained edge generation time prediction model.
[0067] Specifically, the first division ratio refers to the ratio of dividing the first training set, the first validation set, and the first test set, for example, 7:2:1.
[0068] In practical applications, to improve the prediction accuracy and robustness of the edge generation time prediction model, the first network sample set can be divided into a first training set, a first validation set, and a first test set: the edges in each network sample in the first network sample set are divided into the first training set, the first validation set, and the first test set. Each network sample in the first network sample set is traversed to form a complete first training set, first validation set, and first test set.
[0069] For example, for each network sample in the first network sample set, the number of edges in the network sample that need to be divided into the first training set, the first validation set, and the first test set is calculated according to the first division ratio (7:2:1): 、 and ,in, is the total number of edges in the network sample, is the number of edges partitioned into the first training set, is the number of edges divided into the first validation set, is the number of edges that are partitioned into the first test set.
[0070] Furthermore, the edges are divided according to the number of calculations: , , .in, is the edge set of the network sample, is the first training set, is the first validation set, is the first test set, is the index of the edge.
[0071] After obtaining the first training set, the first validation set, and the first test set, the edge generation time prediction model is trained using the first training set, the edge generation time prediction model is verified using the first validation set, and the edge generation time prediction model is tested using the first test set. After all of this is completed, a trained edge generation time prediction model is obtained.
[0072] Optionally, the training, validating, and testing the edge generation time prediction model based on the first training set, the first validation set, and the first test set to obtain a trained edge generation time prediction model includes: Training the edge generation time prediction model based on the first training set to obtain a trained edge generation time prediction model; Verifying the trained edge generation time prediction model based on the first verification set; If the verification fails, continuing to perform the training of the edge generation time prediction model based on the first training set to obtain a trained edge generation time prediction model and subsequent steps; If the verification is successful, testing the trained edge generation time prediction model based on the first test set; If the test fails, continuing to perform the steps of training the edge generation time prediction model based on the first training set to obtain a trained edge generation time prediction model and subsequent steps; If the test is successful, the trained edge generation time prediction model is used as the trained edge generation time prediction model.
[0073] In practical applications, the edge generation time prediction model can be trained based on the first training set to complete the training. The trained edge generation time prediction model can then be verified based on the first validation set. If the verification fails, this indicates that the edge generation time prediction model is not yet effective at making predictions. Further training based on the first training set is required, followed by further verification until successful. If successful, the verified edge generation time prediction model can be tested based on the first test set. If the test fails, this indicates that the edge generation time prediction model is not effective at making predictions. Further training, verification, and testing are required until successful. If successful, the edge generation time prediction model can be put into use, resulting in a trained edge generation time prediction model. In this way, the training effect of the edge generation time prediction model can be ensured using the first training set, the first validation set, and the first test set.
[0074] Optionally, the edge generation time prediction model includes an embedding unit, a fully connected unit, and a probability distribution unit; and the training of the edge generation time prediction model based on the first training set to obtain a trained edge generation time prediction model includes: Selecting any two sample edges belonging to the same network sample from the first training set, the two sample edges including a first sample edge and a second sample edge; Inputting the first sample edge and the second sample edge into the embedding unit for vector conversion processing to obtain a first embedding vector for the first sample edge and a second embedding vector for the second sample edge; Inputting the first embedding vector and the second embedding vector into the fully connected unit for conversion processing to obtain a first scalar corresponding to the first sample edge and a second scalar corresponding to the second sample edge; Inputting the first scalar and the second scalar into the probability distribution unit for probability conversion processing to obtain a first predicted probability and a second predicted probability, wherein the first predicted probability represents a probability that the first sample edge is generated before the second sample edge, and the second predicted probability represents a probability that the second sample edge is generated before the first sample edge; Based on timestamp information of network samples corresponding to the first sample edge and the second sample edge, obtaining a generation order of the first sample edge and the second sample edge; Calculating a loss value based on the first prediction probability, the second prediction probability, and the generation order, and adjusting model parameters of the edge generation time prediction model based on the loss value; The edge generation time prediction model is continuously trained until a first training stop condition is reached, thereby obtaining a trained edge generation time prediction model.
[0075] Specifically, the embedding unit is a processing function unit for embedding vector conversion; the fully connected unit can be a fully connected neural network; and the probability distribution unit can be a Softmax function.
[0076] In practical applications, see Figure 5 , Figure 5 The schematic diagram of the edge generation time prediction model provided by the present invention is as follows: any two sample edges belonging to the same network sample can be selected from the first training set. (first sample edge) and (Second sample edge); using the embedding representation learning method (embedding unit) is and represents a vector, and The embedding vectors are (first embedding vector) and (second embedding vector).
[0077] Further, and Input to the fully connected neural network (fully connected unit) for processing, and get (first scalar) and (Second scalar). Output and After that, the Softmax function in the probability distribution unit is applied to and Converted to the probability distribution that represents the first generation of each edge, that is, the predicted probability: in, is the first predicted probability, is the second predicted probability.
[0078] Next, obtain the labels: Based on the timestamp information carried by the network samples corresponding to the first and second sample edges, obtain the generation times corresponding to the first and second sample edges, respectively, and determine the actual generation order of the first and second sample edges. Then, calculate the loss value based on the first predicted probability, the second predicted probability, and the generation order. Adjust the model parameters of the edge generation time prediction model based on the loss value, and continue training until the first training stop condition is met, resulting in a fully trained edge generation time prediction model.
[0079] In this way, the training efficiency and accuracy of the edge generation time prediction model can be guaranteed.
[0080] Optionally, inputting the first embedding vector and the second embedding vector into the fully connected unit for conversion processing to obtain a first scalar corresponding to the first sample edge and a second scalar corresponding to the second sample edge includes: Inputting the first embedding vector and the second embedding vector into the input layer of the fully connected unit for splicing to obtain an input vector; Inputting the input vector into the hidden layer of the fully connected unit for linear transformation and rectified linear processing to obtain a hidden vector; The hidden vector is input into the output layer of the fully connected unit for scalar conversion processing to obtain a first scalar corresponding to the first sample edge and a second scalar corresponding to the second sample edge.
[0081] Specifically, see Figure 5 , each embedding vector is input into a fully connected neural network (fully connected unit) consisting of three layers: Input layer: The first layer receives input and , concatenate them to form a single input vector ,in is the dimension of the embedding vector, is a real number.
[0082] Hidden layer: The second layer is a hidden layer with dimension This layer applies a linear transformation followed by a ReLU activation function to Processing to obtain the hidden vector , in and are the weight matrix and bias vector of the hidden layer respectively.
[0083] Output layer: The output layer consists of two neurons and produces a scalar output and : , in and are the weights and biases of the output layer.
[0084] In this way, through the input layer, hidden layer and output layer of the fully connected neural network and Process and obtain and , which can improve the efficiency and accuracy of obtaining scalars.
[0085] Optionally, the calculation of the loss value based on the first predicted probability, the second predicted probability and the generation order can be: substituting the first predicted probability, the second predicted probability and the generation order into the classification cross entropy loss function to obtain the loss value.
[0086] The classification cross entropy loss function is . Among them, the real label (generation order) ,like express exist Previously generated, if express exist Then generate. Substitute the first predicted probability, the second predicted probability and the generation order into the classification cross entropy loss function to obtain the classification cross entropy loss value ,Will It can be used as the loss value L.
[0087] Optionally, the loss value includes a first loss value and a second loss value. Accordingly, the loss value is calculated based on the first predicted probability, the second predicted probability and the generation order, which may be: A first loss value is calculated based on the first prediction probability, the second prediction probability, and the generation order, and a second loss value is calculated based on the regularization strength, and the weight value and bias value of the output layer.
[0088] Specifically, the first loss value can be the classification cross entropy loss value , substitute the first predicted probability, the second predicted probability and the generation order into the classification cross entropy loss function to obtain the first loss value .
[0089] Furthermore, to reduce overfitting, regularization strength is introduced to calculate the regularization loss value , which is the second loss value. The regularized loss function is: ,in, is the regularization strength. Loss value is the sum of the first loss value and the second loss value: .
[0090] In this way, by calculating the loss value through the classification cross entropy loss function and the regularization loss function, while ensuring the robustness of the model, the overfitting in the model training can be reduced.
[0091] Optionally, generating at least one simulated network including timestamp information based on the trained diffusion model to obtain a third network sample set includes: For each of the real networks in the second network sample set, sampling edges in the real network according to a set sampling ratio to obtain at least one sub-edge set corresponding to the real network; For each of the sub-edge sets, generating a sampling network corresponding to the sub-edge set; Each of the sampled networks is input into a trained diffusion model to generate at least one simulated network containing timestamp information, and the at least one simulated network containing timestamp information constitutes a third network sample set.
[0092] In practical applications, systematic sampling techniques can be used to generate multiple samples (sampled networks) for generating simulated networks from the original labeled temporal network (the real network in the second network sample set).
[0093] Specifically, see Figure 4 For each real network in the second network sample set, the sampling process starts from a set value that includes the total number of edges of the real network and gradually increases to include all edges in the real network. This gradual increase strategy allows the model to explore the impact of different network densities on the learning process.
[0094] For example, the original temporal network (real network) is represented as: ,in, Is a collection of nodes. is the edge set. is the timestamp set of the edges. The sampling process is based on the set sampling ratio , from the edge set Random sampling in generates a set of sub-edges: Preferably, .
[0095] It should be noted that for each sampling iteration, a new training network can be constructed by retaining the sampled edges and discarding the remaining edges, that is, The maximum connected graph formed is used as the sampling network. In this way, for each real network, a large number of different sampling networks can be generated, each of which represents a unique configuration of the original real network. By changing the percentage of retained edges (setting the sampling ratio ), ensuring the diversity of sampled network structures, which is crucial for robust model training.
[0096] Define a collection of sampling networks ,in Indicates different sampling ratios.
[0097] By traversing each real network in the second network sample set, at least one sampled network corresponding to each real network can be obtained.
[0098] Furthermore, each sampling network is input into the trained diffusion model, and the diffusion model generates a corresponding simulated network containing timestamp information based on each sampling network, that is, the third network sample set.
[0099] Through the above steps, a structured, standardized, and diverse sampling network is provided for the diffusion model. These sampled networks not only contain rich network evolution information, but also, through sampling and enhancement strategies, provide sufficient samples for the edge generation time prediction model to learn the complex patterns of network evolution. This preprocessing ensures that the edge generation time prediction model can effectively capture the dependencies between network structure and edge generation time, laying a solid foundation for subsequent network evolution reconstruction and prediction.
[0100] A single temporal network (real network) often provides insufficient data, which can lead to overfitting of the edge generation time prediction model. When multiple temporal networks are combined, structural inconsistencies can degrade performance. To overcome this, a diffusion model is used to generate simulated networks similar to real networks. By combining real networks and generated simulated networks, the training set is enriched, improving the robustness and fitting ability of the edge generation time prediction model on similar temporal networks.
[0101] It can be seen that the second network sample set not only provides structured and standardized input data for the training of the edge generation time prediction model, but also constructs a sampling network set by sampling from various types and sizes of temporal networks (the second network sample set), and can also be used by the diffusion model to learn the dynamic characteristics of network evolution.
[0102] Optionally, after inputting each of the sampled networks into a trained diffusion model to generate at least one simulated network containing timestamp information, the method further includes: When the second network sample set does not include the set network sample, generating a static structure based on the network type of the target network; Based on the static structure, guiding the trained diffusion model to generate at least one of the set network samples; Each of the set network samples is added to the third network sample set.
[0103] Specifically, in transfer learning, edge generation time prediction models are typically trained based on network samples with some network structures (network types), and then used for prediction on target networks with different network structures (network types). Because the network structures (network types) and temporal characteristics between training and prediction can differ significantly, this can degrade the performance of the edge generation time prediction model. To address this issue, a diffusion model can be used to generate temporal networks (simulated networks) that are similar (identical) to the target network structure (network type). These generated simulated networks are specifically used to train the edge generation time prediction model, ensuring consistency between the network samples and the target network, thereby eliminating transfer learning issues and improving prediction performance. Therefore, if the second network sample set does not contain the set network sample, the simulated network generated based on the corresponding sample network in the second network sample set will also not contain the set network sample. In this case, a static structure can be set to guide the diffusion model to generate at least one set network sample for training the edge generation time prediction model.
[0104] Optionally, the diffusion model includes a noise adding unit and a noise removing unit; and before generating at least one simulated network including timestamp information based on the trained diffusion model to obtain the third network sample set, the method further includes: Get the second training set; Select any network sample from the second training set, and input the network sample into the noise adding unit for noise adding processing to obtain a noisy network; Inputting the noise-added network into the denoising unit for denoising to obtain a denoised network; Calculating a third loss value based on the denoised network and the network sample, and adjusting parameters of the diffusion model based on the third loss value; The diffusion model is continuously trained until a second training stop condition is reached, thereby obtaining a trained diffusion model.
[0105] Specifically, the denoising unit in the diffusion model is a denoising network. The second training set includes at least one network sample.
[0106] In practical applications, a second training set can be used to train the diffusion model: a network sample is selected from the second training set and fed into the denoising unit for noise processing, resulting in a noisy network. The noisy network is then fed into the denoising network for denoising, resulting in a denoised network. The denoised network and the network sample are then substituted into the loss function to calculate a third loss value. The model parameters are then adjusted based on this third loss value, and the diffusion model training continues until the second training stop condition is met, resulting in a trained diffusion model.
[0107] It should be noted that the training of the diffusion model is mainly to train the denoising network, and its goal is to minimize the reconstruction loss, that is, the difference between the predicted network structure (the denoised network) and the true network structure (the network sample). The mean square error (MSE) loss function can be used for calculation, as follows: in, is in the time step The real noise, is the noise predicted by the denoising network. By minimizing , the denoising network learns how to accurately predict the noise that needs to be removed at each step, is a Gaussian distribution.
[0108] Once the denoising network in the diffusion model is trained, it can be used to generate new network samples. This process begins by sampling pure Gaussian noise, then gradually predicts and removes the noise through the denoising network, ultimately generating a complete network structure. The generated network samples can be used for data augmentation, improving the generalization and prediction accuracy of the edge generation time prediction model.
[0109] Optionally, obtaining the second training set includes: Acquire a fourth network sample set, where the fourth network sample set includes a plurality of network samples; The fourth network sample set is divided into a second training set, a second validation set and a second test set according to a second division ratio.
[0110] Specifically, the second division ratio refers to the ratio of dividing the second training set, the second validation set, and the second test set, for example, 7:1.5:1.5.
[0111] In practical applications, various networks can be collected as network samples to form the fourth network sample set. To improve the prediction accuracy and robustness of the edge generation time prediction model, the fourth network sample set can be divided into a second training set, a second validation set, and a second test set according to a second partitioning ratio: The edges in each network sample in the first network sample set are divided into a first training set, a first validation set, and a first test set. Each network sample in the first network sample set is traversed to form a complete first training set, a first validation set, and a first test set.
[0112] For example, the fourth network sample set is set to , The fourth network sample set contains network samples; according to the second division ratio (7: 1.5: 1.5), calculate The network samples are divided into the second training set, the second validation set and the second test set: First, determine the collection size: 、 and ,in, express The size of (i.e., the number of network samples in the fourth network sample set), is the size of the second training set, is the size of the second validation set, is the size of the second test set.
[0113] Then, partition the set: , , .in, For the second training set, is the second validation set, For the second test set, is the index of the network sample.
[0114] Optionally, continuing to train the diffusion model until a second training stop condition is reached to obtain a trained diffusion model includes: Continuing to train the diffusion model until a second training stop condition is reached, thereby obtaining a trained diffusion model; Validating the trained diffusion model based on the second validation set; If the verification fails, continue to perform the steps of selecting any network sample from the second training set and subsequent steps; If the verification is successful, testing the trained diffusion model based on the second test set; If the test fails, continue to execute the steps of selecting any network sample from the second training set and subsequent steps; If the test is successful, the diffusion model that has completed training is used as the trained diffusion model.
[0115] In practical applications, the diffusion model can be trained using the second training set to complete the training. The trained diffusion model can then be validated using the second validation set. If validation fails, this indicates that the diffusion model is not yet capable of generating a good network. Further training and validation are required on the second training set until successful validation. If validation succeeds, the validated diffusion model can be tested using the second test set. If the test fails, this indicates that the diffusion model is not yet capable of generating a good network. Further training, validation, and testing are required until successful validation. If successful, the diffusion model can be put into use, resulting in a trained diffusion model. In this way, the second training set, second validation set, and second test set ensure the effectiveness of the diffusion model training.
[0116] The following combination Figure 6 , the method for determining the network evolution process provided by the present invention is further explained.
[0117] Figure 6 This is one of the flow charts of the method for determining the network evolution process provided by the present invention, such as Figure 6 As shown, the method includes: Step 601: Obtain a fourth network sample set, and divide the fourth network sample set into a second training set, a second validation set, and a second test set according to a second division ratio.
[0118] Step 602: Based on the second training set, the second validation set, and the second test set, the diffusion model is trained, validated, and tested to obtain a trained diffusion model.
[0119] Step 603: Collect at least one real network containing timestamp information to obtain a second network sample set.
[0120] Step 604: For each real network in the second network sample set, sample the edges in the real network according to the set sampling ratio to obtain at least one sub-edge set corresponding to the real network, and for each sub-edge set, generate a sampled network corresponding to the sub-edge set; Step 605: Input each sampled network into the trained diffusion model to generate at least one simulated network containing timestamp information. The at least one simulated network containing timestamp information constitutes a third network sample set.
[0121] Step 606: Acquire the target network.
[0122] Step 607: Determine whether the second network sample set includes a set network sample.
[0123] If not, go to step 608; if so, go to step 609.
[0124] The network attributes of the network sample are set to be similar to those of the target network.
[0125] Step 608: Generate a static structure based on the network type of the target network; guide the trained diffusion model to generate at least one set network sample based on the static structure; and add each set network sample to the third network sample set.
[0126] Step 609: Merge the second network sample set and the third network sample set to obtain a first network sample set.
[0127] Step 610: For each network sample in the first network sample set, divide the sample edges in the network sample into a first training set, a first validation set, and a first test set according to a first division ratio.
[0128] Step 611: Based on the first training set, the first validation set, and the first test set, the edge generation time prediction model is trained, validated, and tested to obtain a trained edge generation time prediction model.
[0129] Step 612: Input the target network into the trained edge generation time prediction model to obtain the generation order of all edges in the target network.
[0130] Step 613: Determine the evolution process of the target network according to the generation order of all edges in the target network.
[0131] The method for determining the network evolution process provided by this invention uses a set network sample with the same properties as the target network to train the edge generation time prediction model, ensuring consistency between the network sample and the target network. This eliminates transfer learning issues and improves the predictive capability of the edge generation time prediction model. It also eliminates the need to retrain the edge generation time prediction model for each specific network, significantly increasing the versatility and efficiency of the edge generation time prediction model. Using this edge generation time prediction model to predict the target network can improve the accuracy and reliability of the generation order.
[0132] The method for determining the network evolution process provided by the present invention is tested.
[0133] First, we collected several real-world complex network datasets, including academic citation networks and biological networks. For each network, we collected node and edge timestamp information to construct temporal network data. Data preprocessing included cleaning the data, removing outliers (such as networks without timestamp information) and incomplete records (networks containing discrete variables), and constructing adjacency matrices and node feature vectors to prepare input data for training edge generation time prediction models.
[0134] Three types of generated datasets (collections of simulated networks) were also constructed, each designed to simulate different aspects of real-world network evolution. These datasets include the Barabási-Albert (BA) model, the Popularity-similarity-optimization (PSO) model, and the Fitness model. Each has a unique network generation mechanism, providing rich scenarios for model training and testing.
[0135] The BA model is a preferential connection model that generates networks by simulating that new nodes are connected to existing highly connected nodes with a higher probability (i.e., the "rich get richer" effect). This model can produce networks with scale-free properties, in which a small number of nodes have a large number of connections, while most nodes have few connections.
[0136] The PSO model combines node popularity and similarity to simulate connection formation in a network. In this model, the probability of a connection between a new node and an existing node depends not only on the node's popularity but also on their similarity in feature space. The Fitness model assigns a fitness value to each node, representing its ability to attract connections. The probability of a connection between a new node and an existing node is determined by the product of the node's fitness and degree, thus simulating the dynamic process of node competition for connections.
[0137] Subsequently, all datasets are divided into training, validation, and test sets, with the proportions usually being 70%, 15%, and 15%.
[0138] During training, the diffusion model and the evolution predictor (edge generation time prediction model) are trained using the training set data, optimizing the loss function, including the cross-entropy loss and regularization term. Hyperparameter tuning is a key step in improving model performance. Hyperparameters such as the learning rate, batch size, and number of iterations are adjusted to achieve optimal model performance. Model performance is evaluated using the validation set data, and early stopping is performed to avoid overfitting.
[0139] In our research, the edge generation time prediction model was implemented and evaluated using the PyTorch framework. All training and testing processes were performed on a single machine equipped with an NVIDIA RTX 4090 GPU. To ensure the reliability and accuracy of the experimental results, each experiment was run at least five times, each using a different random seed. The average results of these experiments were recorded and reported to evaluate the performance of the edge generation time prediction model. The relevant experimental results are detailed in Table 1. Through this series of experimental design and evaluation, the predictive power and generalization performance of the edge generation time prediction model under different network conditions were fully verified.
[0140] Table 1 The following describes a device for determining a network evolution process provided by the present invention. The device for determining a network evolution process described below and the method for determining a network evolution process described above can refer to each other.
[0141] Figure 7 FIG. 1 is a schematic diagram of the structure of the device for determining the network evolution process provided by the present invention. Figure 7 As shown, the device includes: An acquisition module 701 is configured to acquire a target network, where the target network includes at least two edges; An input module 702 is configured to input the target network into a trained edge generation time prediction model to obtain a generation order of all edges in the target network, wherein the edge generation time prediction model is trained based on a first network sample set, wherein the first network sample set includes at least one set network sample having network attributes similar to those of the target network, and the first network sample set includes a collected second network sample set and a third network sample set generated based on a diffusion model; The determination module 703 is configured to determine the evolution process of the target network according to the generation order of all edges in the target network.
[0142] Optionally, the apparatus further includes a first training module configured to: Collecting at least one real network containing timestamp information to obtain a second network sample set, and generating at least one simulated network containing timestamp information based on the trained diffusion model to obtain a third network sample set; Merging the second network sample set and the third network sample set to obtain the first network sample set; Based on the first network sample set, an untrained edge generation time prediction model is trained, verified, and tested to obtain a trained edge generation time prediction model.
[0143] Optionally, the first training module is specifically configured to: For each network sample in the first network sample set, dividing the sample edges in the network sample into a first training set, a first validation set, and a first test set according to a first division ratio; Training the edge generation time prediction model based on the first training set to obtain a trained edge generation time prediction model; Verifying the trained edge generation time prediction model based on the first verification set; If the verification fails, continuing to perform the training of the edge generation time prediction model based on the first training set to obtain a trained edge generation time prediction model and subsequent steps; If the verification is successful, testing the trained edge generation time prediction model based on the first test set; If the test fails, continuing to perform the steps of training the edge generation time prediction model based on the first training set to obtain a trained edge generation time prediction model and subsequent steps; If the test is successful, the trained edge generation time prediction model is used as the trained edge generation time prediction model.
[0144] Optionally, the edge generation time prediction model includes an embedding unit, a fully connected unit and a probability distribution unit; The first training module is specifically configured as follows: Selecting any two sample edges belonging to the same network sample from the first training set, the two sample edges including a first sample edge and a second sample edge; Inputting the first sample edge and the second sample edge into the embedding unit for vector conversion processing to obtain a first embedding vector for the first sample edge and a second embedding vector for the second sample edge; Inputting the first embedding vector and the second embedding vector into the input layer of the fully connected unit for splicing to obtain an input vector; Inputting the input vector into the hidden layer of the fully connected unit for linear transformation and rectified linear processing to obtain a hidden vector; Inputting the hidden vector into the output layer of the fully connected unit for scalar conversion processing to obtain a first scalar corresponding to the first sample edge and a second scalar corresponding to the second sample edge; Inputting the first scalar and the second scalar into the probability distribution unit for probability conversion processing to obtain a first predicted probability and a second predicted probability, wherein the first predicted probability represents a probability that the first sample edge is generated before the second sample edge, and the second predicted probability represents a probability that the second sample edge is generated before the first sample edge; Based on timestamp information of network samples corresponding to the first sample edge and the second sample edge, obtaining a generation order of the first sample edge and the second sample edge; Calculating a first loss value based on the first predicted probability, the second predicted probability, and the generation order, and calculating a second loss value based on a regularization strength and a weight value and a bias value of the output layer; Adjusting model parameters of the edge generation time prediction model based on the first loss value and the second loss value; The edge generation time prediction model is continuously trained until a first training stop condition is reached, thereby obtaining a trained edge generation time prediction model.
[0145] Optionally, the first training module is specifically configured to: For each of the real networks in the second network sample set, sampling edges in the real network according to a set sampling ratio to obtain at least one sub-edge set corresponding to the real network; For each of the sub-edge sets, generating a sampling network corresponding to the sub-edge set; Each of the sampled networks is input into a trained diffusion model to generate at least one simulated network containing timestamp information, and the at least one simulated network containing timestamp information constitutes a third network sample set.
[0146] Optionally, the first training module is specifically configured to: generating a static structure based on the network type of the target network when the second network sample set does not include the set network sample; Based on the static structure, guiding the trained diffusion model to generate at least one of the set network samples; Each of the set network samples is added to the third network sample set.
[0147] Optionally, the diffusion model includes a noise adding unit and a noise removing unit; The apparatus further includes a second training module configured to: Acquire a fourth network sample set, where the fourth network sample set includes a plurality of network samples; Dividing the fourth network sample set into a second training set, a second validation set, and a second test set according to a second division ratio; Select any network sample from the second training set, and input the network sample into the noise adding unit for noise adding processing to obtain a noisy network; Inputting the noise-added network into the denoising unit for denoising to obtain a denoised network; Calculating a third loss value based on the denoised network and the network sample, and adjusting parameters of the diffusion model based on the third loss value; Continuing to train the diffusion model until a second training stop condition is reached, thereby obtaining a diffusion model that has completed training; Validating the trained diffusion model based on the second validation set; If the verification fails, continue to perform the steps of selecting any network sample from the second training set and subsequent steps; If the verification is successful, testing the trained diffusion model based on the second test set; If the test fails, continue to execute the steps of selecting any network sample from the second training set and subsequent steps; If the test is successful, the diffusion model that has completed training is used as the trained diffusion model.
[0148] Figure 8 An example of a physical structure diagram of an electronic device is shown below. Figure 8 As shown, the electronic device may include: a processor 810, a communications interface 820, a memory 830, and a communications bus 840, wherein the processor 810, the communications interface 820, and the memory 830 communicate with each other via the communications bus 840. The processor 810 may invoke logic instructions in the memory 830 to execute a method for determining a network evolution process, the method comprising: obtaining a target network, the target network comprising at least two edges; inputting the target network into a trained edge generation time prediction model to obtain a generation order of all edges in the target network, the edge generation time prediction model being trained based on a first network sample set, the first network sample set comprising at least one set network sample having network properties similar to those of the target network, the first network sample set comprising a collected second network sample set and a third network sample set generated based on a diffusion model; and determining the evolution process of the target network based on the generation order of all edges in the target network.
[0149] Furthermore, the logic instructions in the aforementioned memory 830 can be implemented as software functional units and, when sold or used as independent products, can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, or the portion that contributes to the prior art, or a portion of the technical solution, can be embodied in the form of a software product. This computer software product, stored in a storage medium, includes instructions for enabling a computer device (which can be a personal computer, server, or network device, etc.) to perform all or part of the steps of the methods described in various embodiments of the present invention. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, mobile hard drives, read-only memories (ROMs), random access memories (RAMs), magnetic disks, or optical disks.
[0150] On the other hand, the present invention also provides a computer program product, which includes a computer program, which can be stored on a non-transitory computer-readable storage medium. When the computer program is executed by a processor, the computer can execute the network evolution process determination method provided by the above methods, the method including: obtaining a target network, the target network including at least two edges; inputting the target network into a trained edge generation time prediction model to obtain the generation order of all edges in the target network, the edge generation time prediction model is trained based on a first network sample set, the first network sample set includes at least one set network sample, the network properties of the set network sample are similar to the network properties of the target network, the first network sample set includes a collected second network sample set and a third network sample set generated based on a diffusion model; according to the generation order of all edges in the target network, the evolution process of the target network is determined.
[0151] On the other hand, the present invention also provides a non-transitory computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements a method for determining a network evolution process provided by the above-mentioned methods, the method comprising: obtaining a target network, the target network comprising at least two edges; inputting the target network into a trained edge generation time prediction model to obtain a generation order of all edges in the target network, the edge generation time prediction model being trained based on a first network sample set, the first network sample set comprising at least one set network sample, the network properties of the set network sample being similar to those of the target network, the first network sample set comprising a collected second network sample set and a third network sample set generated based on a diffusion model; determining the evolution process of the target network according to the generation order of all edges in the target network.
[0152] The device embodiments described above are merely illustrative. The units described as separate components may or may not be physically separate, and the components shown as units may or may not be physical units, i.e., they may be located in one location or distributed across multiple network units. Some or all of the modules may be selected based on actual needs to achieve the objectives of the present embodiment. Persons of ordinary skill in the art will be able to understand and implement the present invention without inventive effort.
[0153] Through the above description of the embodiments, those skilled in the art will clearly understand that each embodiment can be implemented using software plus a necessary general-purpose hardware platform, or of course, hardware. Based on this understanding, the essence of the above technical solution, or the portion that contributes to the prior art, can be embodied in the form of a software product. This computer software product can be stored in a computer-readable storage medium, such as ROM / RAM, a magnetic disk, or an optical disk, and includes a number of instructions for causing a computer device (such as a personal computer, server, or network device) to execute the methods described in each embodiment or certain portions of the embodiments.
[0154] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, rather than to limit it. Although the present invention has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some of the technical features therein. However, these modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the various embodiments of the present invention.
Claims
1. A method for determining a network evolution process, characterized in that: include: Acquire a target network, where the target network includes at least two edges; Inputting the target network into a trained edge generation time prediction model to obtain a generation order of all edges in the target network, wherein the edge generation time prediction model is trained based on a first network sample set, wherein the first network sample set includes at least one set network sample, and the network attributes of the set network sample are similar to those of the target network, and the first network sample set includes a collected second network sample set and a third network sample set generated based on a diffusion model; The evolution process of the target network is determined according to the generation order of all edges in the target network.
2. The method for determining a network evolution process according to claim 1, wherein: Before inputting the target network into the trained edge generation time prediction model to obtain the generation order of all edges in the target network, the method further includes: Collecting at least one real network containing timestamp information to obtain a second network sample set, and generating at least one simulated network containing timestamp information based on the trained diffusion model to obtain a third network sample set; Merging the second network sample set and the third network sample set to obtain the first network sample set; Based on the first network sample set, an untrained edge generation time prediction model is trained, verified, and tested to obtain a trained edge generation time prediction model.
3. The method for determining a network evolution process according to claim 2, wherein: The step of training, validating, and testing an untrained edge generation time prediction model based on the first network sample set to obtain a trained edge generation time prediction model includes: For each network sample in the first network sample set, dividing the sample edges in the network sample into a first training set, a first validation set, and a first test set according to a first division ratio; Training the edge generation time prediction model based on the first training set to obtain a trained edge generation time prediction model; Verifying the trained edge generation time prediction model based on the first verification set; If the verification fails, continuing to perform the training of the edge generation time prediction model based on the first training set to obtain a trained edge generation time prediction model and subsequent steps; If the verification is successful, testing the trained edge generation time prediction model based on the first test set; If the test fails, continuing to perform the steps of training the edge generation time prediction model based on the first training set to obtain a trained edge generation time prediction model and subsequent steps; If the test is successful, the trained edge generation time prediction model is used as the trained edge generation time prediction model.
4. The method for determining a network evolution process according to claim 3, wherein: The edge generation time prediction model includes an embedding unit, a fully connected unit and a probability distribution unit; The step of training the edge generation time prediction model based on the first training set to obtain a trained edge generation time prediction model includes: Selecting any two sample edges belonging to the same network sample from the first training set, the two sample edges including a first sample edge and a second sample edge; Inputting the first sample edge and the second sample edge into the embedding unit for vector conversion processing to obtain a first embedding vector for the first sample edge and a second embedding vector for the second sample edge; Inputting the first embedding vector and the second embedding vector into the input layer of the fully connected unit for splicing to obtain an input vector; Inputting the input vector into the hidden layer of the fully connected unit for linear transformation and rectified linear processing to obtain a hidden vector; Inputting the hidden vector into the output layer of the fully connected unit for scalar conversion processing to obtain a first scalar corresponding to the first sample edge and a second scalar corresponding to the second sample edge; Inputting the first scalar and the second scalar into the probability distribution unit for probability conversion processing to obtain a first predicted probability and a second predicted probability, wherein the first predicted probability represents a probability that the first sample edge is generated before the second sample edge, and the second predicted probability represents a probability that the second sample edge is generated before the first sample edge; Based on timestamp information of network samples corresponding to the first sample edge and the second sample edge, obtaining a generation order of the first sample edge and the second sample edge; Calculating a first loss value based on the first predicted probability, the second predicted probability, and the generation order, and calculating a second loss value based on a regularization strength and a weight value and a bias value of the output layer; Adjusting model parameters of the edge generation time prediction model based on the first loss value and the second loss value; The edge generation time prediction model is continuously trained until a first training stop condition is reached, thereby obtaining a trained edge generation time prediction model.
5. The method for determining a network evolution process according to claim 2, wherein: The step of generating at least one simulated network including timestamp information based on the trained diffusion model to obtain a third network sample set includes: For each of the real networks in the second network sample set, sampling edges in the real network according to a set sampling ratio to obtain at least one sub-edge set corresponding to the real network; For each of the sub-edge sets, generating a sampling network corresponding to the sub-edge set; Each of the sampled networks is input into a trained diffusion model to generate at least one simulated network containing timestamp information, and the at least one simulated network containing timestamp information constitutes a third network sample set.
6. The method for determining a network evolution process according to claim 5, wherein: After inputting each of the sampled networks into the trained diffusion model to generate at least one simulated network containing timestamp information, the method further includes: generating a static structure based on the network type of the target network when the second network sample set does not include the set network sample; Based on the static structure, guiding the trained diffusion model to generate at least one of the set network samples; Each of the set network samples is added to the third network sample set.
7. The method for determining a network evolution process according to claim 2, wherein: The diffusion model includes a noise adding unit and a noise removing unit; Before generating at least one simulated network including timestamp information based on the trained diffusion model to obtain the third network sample set, the method further includes: Acquire a fourth network sample set, where the fourth network sample set includes a plurality of network samples; Dividing the fourth network sample set into a second training set, a second validation set, and a second test set according to a second division ratio; Select any network sample from the second training set, and input the network sample into the noise adding unit for noise adding processing to obtain a noisy network; Inputting the noise-added network into the denoising unit for denoising to obtain a denoised network; Calculating a third loss value based on the denoised network and the network sample, and adjusting parameters of the diffusion model based on the third loss value; Continuing to train the diffusion model until a second training stop condition is reached, thereby obtaining a diffusion model that has completed training; Validating the trained diffusion model based on the second validation set; If the verification fails, continue to perform the steps of selecting any network sample from the second training set and subsequent steps; If the verification is successful, testing the trained diffusion model based on the second test set; If the test fails, continue to execute the steps of selecting any network sample from the second training set and subsequent steps; If the test is successful, the diffusion model that has completed training is used as the trained diffusion model.
8. A device for determining a network evolution process, characterized in that: include: an acquisition module, configured to acquire a target network, wherein the target network includes at least two edges; an input module configured to input the target network into a trained edge generation time prediction model to obtain a generation order of all edges in the target network, wherein the edge generation time prediction model is trained based on a first network sample set, the first network sample set including at least one set network sample having network attributes similar to those of the target network, the first network sample set including a collected second network sample set and a third network sample set generated based on a diffusion model; The determination module is configured to determine the evolution process of the target network according to the generation order of all edges in the target network.
9. An electronic device comprising a memory, a processor, and a computer program stored in the memory and running on the processor, characterized in that: When the processor executes the computer program, the method for determining the network evolution process according to any one of claims 1 to 7 is implemented.
10. A non-transitory computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the method for determining the network evolution process according to any one of claims 1 to 7 is implemented.
Citation Information
Patent Citations
Sample capacity expansion model training method, capacity expansion method, equipment and storage medium
CN118152801A