Training device, training method, and program

The learning device trains a neural network model to account for queuing delays at network nodes, addressing inaccuracies in conventional simulators by optimizing parameters based on error calculations, enhancing network performance estimation accuracy.

WO2026150563A1PCT designated stage Publication Date: 2026-07-16NT T INC

Patent Information

Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
NT T INC
Filing Date
2025-01-10
Publication Date
2026-07-16

AI Technical Summary

Technical Problem

Conventional network simulators increase development time and costs due to simulating actual network functions on a packet-by-packet basis, and existing node modeling methods do not accurately account for queuing delays at network nodes, leading to inaccuracies in performance estimation.

Method used

A learning device that calculates errors between estimated and measured performance information, including queuing delays, to train a neural network model that accounts for queuing delays at network nodes using a mathematical model, optimizing model parameters to minimize combined errors.

Benefits of technology

This approach improves the accuracy of network performance estimation by considering queuing delays, reducing the need for large datasets and complex parameter tuning, enabling reliable throughput and delay predictions even with small data sets.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure JP2025000702_16072026_PF_FP_ABST
    Figure JP2025000702_16072026_PF_FP_ABST
Patent Text Reader

Abstract

This training device for training a model corresponding to a node on a network comprises: a first error calculation unit that calculates a first error between performance information of the node estimated by the model and performance information measured at the node; a second error calculation unit that calculates, by using the performance information estimated by the model, a second error between a queuing delay time at the node computed on the basis of a mathematical model and a queuing delay time measured at the node; and an update unit that updates a parameter of the model on the basis of the first error and the second error.
Need to check novelty before this filing date? Find Prior Art

Description

Learning device, learning method, and program

[0001] This invention relates to a technique for training machine learning models corresponding to nodes on a network.

[0002] Traditionally, network simulators have been used to simulate network (NW) systems. Network simulators are equipped with models corresponding to nodes (which can also be called NW nodes or NW functions) as communication devices.

[0003] Conventional network simulators simulate network nodes by preparing the same circuits and programs as actual network functions within the simulator. Furthermore, these simulators utilize circuits and programs that faithfully reproduce the internal workings of the node during the simulation.

[0004] As described above, conventional network simulators, which prepare the same circuits and programs as actual network functions on the simulator, increase development time and costs. Furthermore, when performing simulations, the circuits and programs that reproduce the internal workings of the nodes operate on a packet-by-packet basis, which increases the time required to complete the simulation.

[0005] In contrast, Non-Patent Document 1 discloses a node modeling method for easily modeling nodes. This node modeling method predicts the performance of a node using a model trained by machine learning, which uses a set of node configuration information, input traffic information, and node performance information obtained based on these inputs as training data. Non-Patent Document 2 also discloses a method using transfer learning aimed at improving node performance.

[0006] K. Hattori, et.al., "Network Digital Replica using Neural-Network-based Network Node Modeling," Netsoft2022K. Hattori, et.al., "Meta Learner-Based Transfer Learning: Bridging Simulation and Actual Router Metrics," HPSR2024

[0007] The technology disclosed in Non-Patent Document 1 above employs a supervised learning method, requiring the collection of a large dataset to improve the model's accuracy. In contrast, the technology disclosed in Non-Patent Document 2 allows for highly accurate performance estimation even in network environments with small datasets by supplementing real data with simulation data. However, transferring parameters from simulation data to real data requires determining the parameter range to be transferred, making the process cumbersome.

[0008] Network nodes (e.g., routers, switches, passive optical networks (PONs), etc.) include the function of concentrators that aggregate (or multiplex) data. In actual networks, multiple nodes (concentrators) are connected in multiple stages. Data queuing delays occur at the concentrators.

[0009] However, the prior art disclosed in Non-Patent Documents 1 and 2 does not train a model that takes into account queuing delays at the nodes (concentration points), so there is room for improvement in the accuracy of node performance estimation by the model.

[0010] This invention has been made in view of the above points, and aims to provide a technology that enables model training that takes into account queuing delays at nodes.

[0011] According to the disclosed technology, a learning device is provided for learning a model corresponding to nodes on a network, comprising: a first error calculation unit that calculates a first error between performance information of the node estimated by the model and performance information measured at the node; a second error calculation unit that calculates a second error between the queuing delay time at the node calculated based on a mathematical model using the performance information estimated by the model and the queuing delay time measured at the node; and an update unit that updates the parameters of the model based on the first error and the second error.

[0012] According to the disclosed technology, it is possible to train a model that takes into account queuing delays at the nodes.

[0013] This is a diagram showing an example configuration of the learning device 100. This is a diagram showing a detailed example configuration of the learning unit 120. This is a flowchart for explaining the operation of the learning unit 120. This is a diagram for explaining a specific processing example. This is a configuration diagram of the NW simulator 200 (inference device). This is a diagram showing an example of the hardware configuration of the device.

[0014] Hereinafter, embodiments of the present invention (this embodiment) will be described with reference to the drawings. The embodiments described below are merely examples, and the embodiments to which the present invention is applied are not limited to the embodiments described below.

[0015] (Outline of the Embodiment) In this embodiment, the learning device 100, described later, learns a model corresponding to a node on the network. This model may also be called a node model. This model is intended for use in a network simulator, but the target for which this model is used is not limited to a network simulator.

[0016] Model training uses training data that combines node configuration information, input traffic information, and features such as topology, with node performance information such as throughput and queuing delay.

[0017] During model training in the learning device 100, when estimating node performance using the model, in addition to calculating the error with the correct label in the supervised learning model, a mathematical model based on the number of times each data (e.g., packet) passes through the aggregation point (convergence point) in the network is introduced into the loss function. In this mathematical model, the queuing delay of the aggregation point is calculated, and the error with the actual queuing delay is calculated. This improves the accuracy of network performance estimation during aggregation, enabling more accurate node performance estimation.

[0018] In this embodiment, the node includes a concentrator. The node is not limited to a specific network device, but could be, for example, a router, a switch, or a passive optical network (PON).

[0019] Furthermore, in this embodiment, the model learned by the learning device 100 is a neural network model.

[0020] (Example of device configuration) Figure 1 shows an example of the configuration of a learning device 100 for learning a model in this embodiment. As shown in Figure 1, the learning device 100 has an input unit 110, a learning unit 120, an output unit 130, and a data storage unit 140.

[0021] The input unit 110 receives training data and other information to be used for training in the learning unit 120. The learning unit 120 trains the model using the training data. The output unit 130 outputs the trained model (specifically, the model's parameters, etc.). The data storage unit 140 stores pre-configured data necessary for training (e.g., packet processing time, system utilization rate, etc., which will be described later). The training data input from the input unit 110 is stored in the data storage unit 140, and the learning unit 120 reads and uses the data stored in the data storage unit 140.

[0022] Figure 2 is a diagram showing the functional configuration of the learning unit 120 in more detail. As shown in Figure 2, the learning unit 120 includes a node performance inference unit 123, a ground truth label error calculation unit 124, a convergence unit observation unit 125, a mathematical model calculation unit 126, and a composite error calculation unit 127. The node performance inference unit 123 includes a network measurement unit 121 and a performance estimation unit 122.

[0023] The node performance inference unit 123 may be located outside the learning unit 120. The learning unit 120 may also be a standalone device (computer). Such a device may be called a learning device. Furthermore, the correct label error calculation unit 124, the mathematical model calculation unit 126, and the composite error calculation unit 127 may be referred to as the first error calculation unit, the second error calculation unit, and the update unit, respectively.

[0024] Figure 2 also shows the node 200 that is the target of measurement. Note that the number of nodes to be measured is not limited to one. There may be multiple nodes to be measured.

[0025] (Device Operation) The operation of the learning unit 120 shown in Figure 2 will be explained according to the procedure in the flowchart in Figure 3.

[0026] <S1 (Step 1): Information Acquisition> In S1, the network measurement unit 121 acquires and stores the following information (1) to (3) from the node 200. The network measurement unit 121 also outputs a dataset consisting of the following information (1) to (3) to the performance estimation unit 122.

[0027] (1) Node configuration information (2) Input traffic information (3) Node performance information in (1) and (2) Node configuration information is, for example, the number of CPUs allocated to node 200. Input traffic information is the amount of traffic input to node 200.

[0028] Node performance information is performance information observed at node 200. Examples of performance items in this node performance information include throughput, queuing delay, packet drop rate, and processing delay. (3) The node performance information is used as ground truth data in training. More specifically, in this embodiment, throughput and queuing delay are used as node performance information.

[0029] <S2: Performance Estimation> In S2, the performance estimation unit 122 has a model to be learned (node model), and uses this model to estimate the node performance from the input data set. Note that the "performance estimation unit 122" may be considered as this model.

[0030] That is, the performance estimation unit 122 takes as input the data set (node setting information, input traffic information) received from the network measurement unit 121, and outputs an inference value of the node performance estimated using the model. Specifically, the inference value of the estimated node performance is the estimated throughput and the estimated queuing delay time.

[0031] The inference value of the estimated node performance is input to each of the correct label error calculation unit 124 and the mathematical model calculation unit 126.

[0032] <S3: Error Calculation> In S3, the correct label error calculation unit 124 compares the estimation result output by the performance estimation unit 122 with the actual observed data (this is called the correct label), and calculates the error between them.

[0033] More specifically, the correct label error calculation unit 124 calculates the error between the estimated queuing delay time calculated by the performance estimation unit 122 and the measured queuing delay time collected by the network measurement unit 121.

[0034] Note that the error calculated by the correct label error calculation unit 124 is not limited to the error related to the queuing delay time. For example, the error between the measured throughput and the estimated throughput may be calculated.

[0035] <S4: Counting the Number of Concentrators> In S4, the concentrator number observation unit 125 counts the number of concentrators that the target data passes through on the NW based on the concentrator information input from the network measurement unit 121 and the path information (topology) of the target data (packet).

[0036] As described above, since the node includes a concentrator, the concentrator number observation unit 125 counts the number of nodes that the target data passes through on the NW.

[0037] For example, if the target data travels through the path "Node A -> Node B -> Node C", the number of clusters (number of nodes) will be 3. The cluster count observation unit 125 also obtains information about which nodes the target data travels through (in the above example, the information for "Node A -> Node B -> Node C") from, for example, the network measurement unit 121. The cluster count observation unit 125 passes the count / acquired information to the mathematical model calculation unit 126.

[0038] <S5: Error Calculation> In S5, first, the mathematical model calculation unit 126 uses a mathematical model to mathematically calculate (estimate) the queuing delay time of the target node 200 using the throughput (throughput that becomes the input to the target node 200) estimated by the performance estimation unit 122 for the node preceding the node 200.

[0039] The method for calculating the queuing delay time by the mathematical model calculation unit 126 is not limited to a specific method, but in this embodiment, as an example, the Polacek-Khinchin formula in queuing theory, "W q = λ・E[S 2 Queuing delay time W is calculated using ]÷(2(1-ρ)) q Calculate.

[0040] In the above formula, λ is the arrival rate. In this embodiment, λ is the throughput (throughput that becomes the input to the target node 200) estimated by the performance estimation unit 122 for the node preceding node 200.

[0041] E[S 2 ] is the packet processing time, and ρ is the system utilization rate. In this embodiment, E[S 2 The values ​​for ] and ρ are predetermined values. These predetermined values ​​are stored in the data storage unit 140 beforehand, and the learning unit 120 reads these values ​​from the data storage unit 140 and uses them.

[0042] The mathematical model calculation unit 126 calculates the error between the mathematically calculated queuing delay time for node 200 and the measured queuing delay time measured at node 200.

[0043] Furthermore, the mathematical model calculation unit 126 calculates, based on the information received from the concentrating unit observation unit 125, the error between the mathematically calculated queuing delay time and the measured queuing delay time measured at each of the multiple nodes through which the data passes. The multiple nodes through which the data passes include the node 200 mentioned above.

[0044] The mathematical model calculation unit 126 calculates the sum of multiple "errors between mathematically calculated queuing delay times and measured queuing delay times measured at the nodes" obtained from multiple nodes, and defines this as error P.

[0045] The mathematical model calculation unit 126 calculates P × W using a pre-set weight W and outputs P × W to the composite error calculation unit 127.

[0046] <S6: Combined Error Calculation> In S6, the combined error calculation unit 127 calculates the combined error as the sum of the error calculated by the correct label error estimation unit 124 and the error P × W calculated by the mathematical model calculation unit 126. The combined error calculation unit 127 updates the parameters of the model (performance estimation unit 122) so that the combined error is minimized.

[0047] (Specific Processing Example) A more specific processing example of the learning unit 120 will be explained with reference to Figure 4. The model (f(X;θ)) in Figure 4 corresponds to the performance estimation unit 122. In Figure 4, the model is shown as an image of a neural network. The queuing model shown in Figure 4 is an image of the mathematical model used by the mathematical model calculation unit 126 to calculate the queuing delay time.

[0048] The mathematical model calculation unit 126 calculates a queuing model loss that corresponds to "the error between the mathematically calculated queuing delay time and the measured queuing delay time measured at the node."

[0049] The correct label error calculation unit 124 calculates a model loss that corresponds to the error between the estimated queuing delay time and the measured queuing delay time. The combined error calculation unit 127 calculates the combined error and optimizes the model so that the combined error is minimized.

[0050] Hereinafter, in order to explain the processing content in an easy-to-understand manner, in the case where the nodes through which data passes are "Node A -> Node B -> Node C", (1) the learning process for one node and (2) the learning process for multiple nodes will be described.

[0051] (1) Learning process for one node Here, assume that the one node is Node C. The model (performance estimation unit 122) is input with the node setting information of Node C and the input traffic information (the information of the traffic output from Node B and input to Node C). The model outputs the estimated throughput and the estimated queuing delay time.

[0052] The correct label error estimation unit 124 calculates the error (L data ) between the queuing delay time estimated by the model and the queuing delay time observed for Node C.

[0053] The mathematical model calculation unit 126 uses the estimated throughput (input to Node C) for Node B before Node C as the arrival rate, and calculates the queuing delay time W q of Node C based on the mathematical model.

[0054] Also, the mathematical model calculation unit 126 calculates the error (L q ) between the mathematically estimated queuing delay time W queue and the queuing delay time observed for Node C. The composite error calculation unit 127 updates the parameters of the model (performance estimation unit 122) so as to minimize L = L data + L queue .

[0055] (2) Learning process for multiple nodes As described above, here, the case of "Node A -> Node B -> Node C" is considered. The model (performance estimation unit 122) estimates the throughput and the queuing delay time for each of Node A, Node B, and Node C.

[0056] The ground truth label error estimation unit 124 calculates the ground truth label error for each of nodes A, B, and C, and the mathematical model calculation unit 126 calculates the error based on the mathematical model for each of nodes A, B, and C.

[0057] For each of Node A, Node B, and Node C, the (correct label error, error based on the mathematical model) is (L data A, L queue A), (L data B, L queue B), (L data C, L queue It is denoted as C).

[0058] The mathematical model calculation unit 126 calculates the sum of errors (L) based on the mathematical model for the three nodes. queue A+L queue B+L queue We find C) and call this P. The mathematical model calculation unit 126 calculates P × W by multiplying by the weight W.

[0059] The combined error calculation unit 127 calculates the sum of errors (L) calculated by the correct label error estimation unit 124. data A+L data B+L data The parameters of the model (performance estimation unit 122) are updated so that the sum of C) and P × W is minimized.

[0060] The model parameters are optimized by repeatedly executing the above learning process. The number of iterations can be a predetermined number, or it can be the number of iterations until the learning converges (e.g., the amount of parameter updates falls below a threshold). Furthermore, methods such as backpropagation can be used to update the model parameters.

[0061] (Example of node model usage) The trained model (referred to as a node model) trained by the learning device 100 can be used, for example, in the NW simulator 200 shown in Figure 5. Specifically, the NW simulator 200 is a computer that operates using software. The NW simulator 200 may also be called an inference device. Alternatively, the NW simulator 200 may also be called a conformance tester.

[0062] As shown in Figure 5, the NW simulator 200 includes a trained node model 300. Figure 5 shows a simulation in which the node model 300 is deployed along the network path through which traffic flows from terminal A to terminal B.

[0063] The NW simulator 200 performs various tests on the node model 300. For example, it inputs traffic data from terminal A (e.g., traffic volume) to the node model 300 and obtains performance information such as throughput or queuing delay time as output from the node model 300.

[0064] The NW simulator 200 has pre-programmed performance requirements for NW devices corresponding to the node model 300. The NW simulator 200 compares the performance information obtained from the node model 300 with the performance requirements, verifies whether the performance information meets the performance requirements, and outputs the verification result (e.g., performance requirements are met, or performance requirements are not met).

[0065] Subsequently, for example, a standards compliance verifier determines, based on the verification results, whether the network equipment corresponding to node model 300 complies with the standards.

[0066] Furthermore, for example, a network designer can evaluate the performance information, which is output from the node model 300, and utilize the evaluation results for network design, configuration changes, etc.

[0067] (Example Hardware Configuration) Any of the devices described in this embodiment (learning device 100, learning unit 120, NW simulator 200, inference device, etc.) can be realized, for example, by having a computer execute a program. This computer may be a physical computer or a virtual machine on the cloud.

[0068] In other words, the device can be realized by using hardware resources such as the CPU and memory built into a computer to execute a program corresponding to the processing performed by the device. The program can be recorded on a computer-readable recording medium (such as portable memory), saved, and distributed. It can also be provided via a network, such as the Internet or email.

[0069] Figure 6 shows an example of the hardware configuration of the computer described above. The computer in Figure 6 has a drive device 1000, an auxiliary storage device 1002, a memory device 1003, a CPU 1004, an interface device 1005, a display device 1006, an input device 1007, an output device 1008, etc., all of which are interconnected by bus B. The computer may also be equipped with a GPU.

[0070] The program that enables processing on the computer is provided on a recording medium 1001, such as a CD-ROM or memory card. When the recording medium 1001 containing the program is set in the drive device 1000, the program is installed from the recording medium 1001 to the auxiliary storage device 1002 via the drive device 1000. However, the program does not necessarily have to be installed from the recording medium 1001; it may also be downloaded from another computer via a network. The auxiliary storage device 1002 stores the installed program as well as necessary files and data.

[0071] The memory device 1003 reads and stores a program from the auxiliary storage device 1002 when a program startup command is received. The CPU 1004 implements the functions related to the memory device 1003 according to the program stored in the memory device 1003. The interface device 1005 is used as an interface for connecting to a network, etc. The display device 1006 displays a GUI (Graphical User Interface) etc., based on a program. The input device 1007 consists of a keyboard and mouse, buttons, or a touch panel, etc., and is used to input various operation commands. The output device 1008 outputs the calculation results.

[0072] (Effects of the Embodiment) As described above, the technology described in this embodiment enables the training of a model that takes into account the actual queuing delay by using the error between the queuing delay time calculated using a mathematical model and the measured queuing delay time when training a model corresponding to a node on the network.

[0073] This eliminates the need for large amounts of data, the complex parameter tuning required in transfer learning, and the need to combine it with delay estimation based on queuing theory. As a result, reliable prediction of throughput and delay becomes possible even with small amounts of data, improving the accuracy of network performance estimation, including the converging section.

[0074] Furthermore, by using the node model learned with the technology according to this embodiment in the network simulator, the behavior of the nodes in the network simulator in response to input traffic (performance measurement results, statistical information of each node, etc.) can be made closer to the actual behavior of the nodes.

[0075] The following additional information is disclosed regarding the embodiments described above.

[0076] <Notes> (Note 1) A learning device for learning a model corresponding to nodes on a network, comprising: a first error calculation unit that calculates a first error between performance information of the node estimated by the model and performance information measured at the node; a second error calculation unit that calculates a second error between the queuing delay time at the node calculated based on a mathematical model using the performance information estimated by the model and the queuing delay time measured at the node; and an update unit that updates the parameters of the model based on the first error and the second error. (Note 2) The learning device according to Note 1, wherein the update unit updates the parameters of the model based on the sum of a plurality of second errors calculated for a plurality of nodes through which data passes on the network and the first error. (Appendix 3) A learning method performed by a learning device that learns a model corresponding to a node on a network, comprising: a first error calculation step of calculating a first error between performance information of the node estimated by the model and performance information measured at the node; a second error calculation step of calculating a second error between the queuing delay time at the node calculated based on a mathematical model using the performance information estimated by the model and the queuing delay time measured at the node; and an update step of updating the parameters of the model based on the first error and the second error. (Appendix 4) A non-temporary storage medium storing a program for causing a computer to function as a part of the learning device described in Appendix 1 or 2.

[0077] Although this embodiment has been described above, the present invention is not limited to this specific embodiment, and various modifications and changes are possible within the scope of the gist of the invention as described in the claims.

[0078] 100 Learning device 110 Input unit 120 Learning unit 121 Network measurement unit 122 Performance estimation unit 123 Node performance inference unit 124 Ground truth label error calculation unit 125 Number of convergence units observation unit 126 Mathematical model calculation unit 127 Composite error calculation unit 130 Output unit 140 Data storage unit 200 NW simulator 300 Node model 1000 Drive device 1001 Recording medium 1002 Auxiliary storage device 1003 Memory device 1004 CPU 1005 Interface device 1006 Display device 1007 Input device 1008 Output device

Claims

1. A learning device for learning a model corresponding to nodes on a network, comprising: a first error calculation unit that calculates a first error between performance information of the node estimated by the model and performance information measured at the node; a second error calculation unit that calculates a second error between the queuing delay time at the node calculated based on a mathematical model using the performance information estimated by the model and the queuing delay time measured at the node; and an update unit that updates the parameters of the model based on the first error and the second error.

2. The learning device according to claim 1, wherein the update unit updates the parameters of the model based on the sum of a plurality of second errors calculated for a plurality of nodes through which data passes on the network, and the first error.

3. A learning method performed by a learning device that learns a model corresponding to a node on a network, comprising: a first error calculation step of calculating a first error between performance information of the node estimated by the model and performance information measured at the node; a second error calculation step of calculating a second error between the queuing delay time at the node calculated based on a mathematical model using the performance information estimated by the model and the queuing delay time measured at the node; and an update step of updating the parameters of the model based on the first error and the second error.

4. A program for causing a computer to function as a component of the learning device described in claim 1 or 2.