Heterogeneous simulation test platform for joint learning systems
By designing a heterogeneous simulation test platform for joint learning systems, the problem of being unable to build a heterogeneous test platform for virtual systems similar to the real environment is solved, and effective verification of joint learning solutions and improved functionality and practicality of heterogeneous systems are achieved.
Patent Information
- Application Number
- CN202110047867.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-01-14
- Publication Date
- 2025-05-16
- Estimated Expiration
- 2041-01-14
AI Technical Summary
The prior art cannot build a heterogeneous test platform for virtual systems similar to the real environment, and cannot effectively simulate the computing, communication and storage capabilities of different edge devices, resulting in the inability to verify the effectiveness of joint learning solutions.
A joint learning system heterogeneous simulation test platform was designed. By abstracting and modeling known systems, using simulation and abstract forms to simulate hardware, network and computing resource limitations in real environments, and to build a virtual system heterogeneous test platform similar to the real environment.
It realizes the simulation of different application scenarios in heterogeneous systems, verify the effectiveness of joint learning solutions, improves the functionality and practicality of the system, supports the merging and sharing of different databases and resources, and ensures the security of user privacy.
Smart Images

Figure CN114764389B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of joint learning systems, and in particular to a joint learning system heterogeneous simulation test platform. Background Art
[0002] Federated learning refers to a series of algorithms, but it can collect model parameters. The server coordinates edge devices to participate in learning. Each edge device has learning data. Each edge device uses its own data to learn a local model and uploads its own parameters to the server with or without encryption. The server averages or weighted averages the collected parameters and broadcasts them to each edge device. Federated learning is a distributed machine learning method that can learn from large amounts of scattered data stored on devices such as mobile phones. It is a more general implementation of "introducing code into data, rather than data into code" and solves basic issues such as privacy, ownership, and data location. Federated learning can achieve smarter models, lower latency, and lower power consumption while ensuring privacy.
[0003] Federated learning enables mobile devices to collaboratively learn a shared prediction model while saving all learning data on the device, thereby decoupling machine learning from cloud storage data, downloading the current model to the device, improving it by learning data on the device, and then summarizing the changes into a centralized small update. Only this update is sent to the cloud and transmitted using encryption technology. In the cloud, it is immediately averaged with other users' updates to improve the shared model. All learning data remains on the local device and is not sent to cloud storage. Heterogeneous systems are two or more systems with different architectures. Two systems (such as SQL databases and postgres databases, etc.) cannot be directly connected and need to access each other's data through interfaces. A system composed of multiple systems with different architectures is a heterogeneous system. Due to the different computing, communication, and storage capabilities of different edge devices in actual federated learning application scenarios, it is impossible to simulate different actual application scenarios to verify the shortcomings of different federated learning solutions. Summary of the invention
[0004] The purpose of the present invention is to provide a heterogeneous simulation test platform for a joint learning system to solve the problem in the above background technology that it is impossible to build a virtual system heterogeneous test platform similar to the real environment.
[0005] To achieve the above object, the present invention provides the following technical solution: a heterogeneous simulation test platform for a joint learning system, including a server, a client and an operating environment,
[0006] The server provides computing services, acts as a node on the network, and stores and processes data and information on the network;
[0007] The client corresponds to the server and is a program that provides local services to customers. It is usually installed on a common client and needs to work in conjunction with the server.
[0008] The operating environment determines the virtual environment simulation parameters.
[0009] Preferably, the server can declare various parameters of the client, load data (detection), load models and learn, and the declared various parameters of the client send data and information to the client by initializing the client list / parameters.
[0010] Preferably, the client performs environment initialization, load data and load model in sequence, and the environment initialization data and information are sent to the operating environment. The initial value of each round of the operating environment is the same and normally distributed.
[0011] Preferably, the virtual simulation environment parameters in the operating environment include: operating speed, net speed, communication and hardware.
[0012] Preferably, the loading data (detection) distributes the data set to the load data of the client, and the data and information of the load data are sent to the load model.
[0013] Preferably, the data and information of the load model are divided into two lines, one is sent to local learning, and the other is sent to local testing.
[0014] Preferably, the data and information of the loaded model are sent to the learning for judgment. When the judgment is "Y", the model is distributed to local learning. When the judgment is "N", the data and information are sent to the global test.
[0015] Preferably, the locally learned data and information are sent to the total after passing through loss / accuracy / model parameters, and the total data and information are sent to the global test.
[0016] Preferably, the global test sends data and information to the local test after passing through the global model.
[0017] Preferably, the heterogeneous simulation test platform of the joint learning system comprises the following steps:
[0018] Step 1: The server can declare various parameters of the client, load data (detection), load models and learn, declare various parameters of the client, and send data and information to the client after initializing the client list / parameters.
[0019] Step 2: The client performs environment initialization, load data, and load model in sequence. The environment initialization data and information are sent to the operating environment. The initial values of each round of the operating environment are the same and normally distributed.
[0020] Step 3: The virtual simulation environment parameters in the operating environment include: operating speed, net speed, communication and hardware.
[0021] Step 4: Loading data (detection) distributes the data set to the client's load data, and the data and information of the load data are sent to the load model.
[0022] Step 5: The data and information of the load model are divided into two lines, one for local learning and the other for local testing.
[0023] Step 6: The data and information of the loaded model are sent to the learning for judgment. When the judgment is "Y", the model is distributed to local learning. When the judgment is "N", the data and information are sent to the global test.
[0024] Step 7: Locally learned data and information are sent to the aggregate after loss / accuracy / model parameters, and the aggregated data and information are sent to the global test.
[0025] Step 8: Global test sends data and information to local test after passing through the global model.
[0026] Compared with the prior art, the present invention has the following beneficial effects:
[0027] This heterogeneous simulation test platform for the federated learning system abstracts and models based on known systems, and uses simulation and abstraction to simulate and abstract problems in the real environment of federated learning due to limitations in hardware, network, computing resources, etc., to solve the heterogeneous problem of the federated learning system. In actual federated learning application scenarios, different edge devices have different computing, communication, and storage capabilities. Based on known system data such as hardware computing power, network latency, communication bandwidth, etc., abstraction and modeling are performed to build a virtual system heterogeneous test platform similar to the real environment. Different actual application scenarios can be simulated to verify different federated learning solutions, which is more practical and can realize the merger and sharing of data information resources, hardware equipment resources, and human resources between different databases. A key point is to establish a global data model or global external view based on the local database model. At the same time, the collected data also supports access to historical data. Users perform decision support queries through the unified data interface provided by the data warehouse. This global model is particularly important for establishing advanced decision support systems. The federated learning system can collect model parameters, and the server coordinates edge devices to participate in learning. Each edge device has learning data. Each edge device uses its own data to learn a local model and uploads its own parameters to the server in encrypted or unencrypted form. The server averages or weighted averages the collected parameters and broadcasts them to each edge device. Federated learning can produce smarter models, lower latency and less power consumption, while ensuring user privacy in the cloud. The two ends form a collaborative update for a shared model, decoupling machine learning from the need to store data in the cloud, making the model smarter, with lower latency, and more energy-efficient, while protecting user privacy from threats. In addition to updating the shared model, users can also use the improved model immediately. The experience obtained will vary depending on the individual's usage. The relevant data is accessed through the Internet of Things, and then model learning, model updates, and computational storage are performed locally. A series of aggregate calculations and processing are performed on the models provided by each user, and the combined global model is sent to each user. This process is repeated until a better model is learned, which is convenient for users to call and share value. It is suitable for edge devices with different computing, communication, and storage capabilities, has stronger functionality and practicality, is easy to operate, and has better joint learning effects. BRIEF DESCRIPTION OF THE DRAWINGS
[0028] Figure 1 It is a flow chart of the present invention. DETAILED DESCRIPTION
[0029] The following will be combined with the drawings in the embodiments of the present invention to clearly and completely describe the technical solutions in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.
[0030] The present invention provides a technical solution: a joint learning system heterogeneous simulation test platform, including a server, a client and an operating environment,
[0031] The server provides computing services and acts as a node on the network, storing and processing data and information on the network;
[0032] The client corresponds to the server and is a program that provides local services to customers. It is usually installed on a common client and needs to work with the server.
[0033] The operating environment determines the virtual environment simulation parameters.
[0034] Furthermore, the server can declare various parameters of the client, load data (detection), load models and learn, declare various parameters of the client, and send data and information to the client by initializing the client list / parameters.
[0035] Furthermore, the client performs environment initialization, load data and load model in sequence, and the environment initialization data and information are sent to the operating environment. The initial values of each round of the operating environment are the same and normally distributed.
[0036] Furthermore, the virtual simulation environment parameters in the operating environment include: operating speed, net speed, communication and hardware.
[0037] Further, the loading data (detection) distributes the data set to the client's load data, and the data and information of the load data are sent to the load model.
[0038] Furthermore, the data and information of the load model are divided into two lines, one for local learning and the other for local testing.
[0039] Furthermore, the data and information of the loaded model are sent to the learning for judgment. When the judgment is "Y", the model is distributed to local learning, and when the judgment is "N", the data and information are sent to the global test.
[0040] Furthermore, the locally learned data and information are sent to the aggregate after loss / accuracy / model parameters, and the aggregated data and information are sent to the global test.
[0041] Furthermore, the global test sends data and information to the local test after passing through the global model.
[0042] Embodiment 1:
[0043] The steps of the heterogeneous simulation test platform of the joint learning system are as follows:
[0044] Step 1: The server can declare various parameters of the client, load data (detection), load models and learn, declare various parameters of the client, and send data and information to the client after initializing the client list / parameters.
[0045] Step 2: The client performs environment initialization, load data, and load model in sequence. The environment initialization data and information are sent to the operating environment. The initial values of each round of the operating environment are the same and normally distributed.
[0046] Step 3: The virtual simulation environment parameters in the operating environment include: operating speed, net speed, communication and hardware.
[0047] Step 4: Loading data (detection) distributes the data set to the client's load data, and the data and information of the load data are sent to the load model.
[0048] Step 5: The data and information of the load model are divided into two lines, one for local learning and the other for local testing.
[0049] Step 6: The data and information of the loaded model are sent to the learning for judgment. When the judgment is "Y", the model is distributed to local learning. When the judgment is "N", the data and information are sent to the global test.
[0050] Step 7: Locally learned data and information are sent to the aggregate after loss / accuracy / model parameters, and the aggregated data and information are sent to the global test.
[0051] Step 8: Global test sends data and information to local test after passing through the global model.
[0052] Embodiment 2:
[0053] The steps of the heterogeneous simulation test platform of the joint learning system are as follows:
[0054] Step 1: The server can declare various parameters of the client, load data (detection), load models and learn, declare various parameters of the client, and send data and information to the client after initializing the client list / parameters.
[0055] Step 2: The virtual simulation environment parameters in the operating environment include: operating speed, net speed, communication and hardware.
[0056] Step 3: The client performs environment initialization, load data and load model in turn. The environment initialization data and information are sent to the operating environment. The initial values of each round of the operating environment are the same and normally distributed.
[0057] Step 4: Loading data (detection) distributes the data set to the client's load data, and the data and information of the load data are sent to the load model.
[0058] Step 5: The data and information of the load model are divided into two lines, one for local learning and the other for local testing.
[0059] Step 6: The data and information of the loaded model are sent to the learning for judgment. When the judgment is "Y", the model is distributed to local learning. When the judgment is "N", the data and information are sent to the global test.
[0060] Step 7: Locally learned data and information are sent to the aggregate after loss / accuracy / model parameters, and the aggregated data and information are sent to the global test.
[0061] Step 8: Global test sends data and information to local test after passing through the global model.
[0062] Embodiment three:
[0063] The steps of the heterogeneous simulation test platform of the joint learning system are as follows:
[0064] Step 1: The server can declare various parameters of the client, load data (detection), load models and learn, declare various parameters of the client, and send data and information to the client after initializing the client list / parameters.
[0065] Step 2: The client performs environment initialization, load data, and load model in sequence. The environment initialization data and information are sent to the operating environment. The initial values of each round of the operating environment are the same and normally distributed.
[0066] Step 3: The virtual simulation environment parameters in the operating environment include: operating speed, net speed, communication and hardware.
[0067] Step 4: Loading data (detection) distributes the data set to the client's load data, and the data and information of the load data are sent to the load model.
[0068] Step 5: The data and information of the load model are divided into two lines, one for local learning and the other for local testing.
[0069] Step 6: Locally learned data and information are sent to the aggregate after loss / accuracy / model parameters, and the aggregated data and information are sent to the global test.
[0070] Step 7: The data and information of the loaded model are sent to the learning for judgment. When the judgment is "Y", the model is distributed to local learning. When the judgment is "N", the data and information are sent to the global test.
[0071] Step 8: Global test sends data and information to local test after passing through the global model.
[0072] Embodiment 4:
[0073] The steps of the heterogeneous simulation test platform of the joint learning system are as follows:
[0074] Step 1: The server can declare various parameters of the client, load data (detection), load models and learn, declare various parameters of the client, and send data and information to the client after initializing the client list / parameters.
[0075] Step 2: The virtual simulation environment parameters in the operating environment include: operating speed, net speed, communication and hardware.
[0076] Step 3: The client performs environment initialization, load data and load model in turn. The environment initialization data and information are sent to the operating environment. The initial values of each round of the operating environment are the same and normally distributed.
[0077] Step 4: Loading data (detection) distributes the data set to the client's load data, and the data and information of the load data are sent to the load model.
[0078] Step 5: The data and information of the load model are divided into two lines, one for local learning and the other for local testing.
[0079] Step 6: Locally learned data and information are sent to the aggregate after loss / accuracy / model parameters, and the aggregated data and information are sent to the global test.
[0080] Step 7: The data and information of the loaded model are sent to the learning for judgment. When the judgment is "Y", the model is distributed to local learning. When the judgment is "N", the data and information are sent to the global test.
[0081] Step 8: Global test sends data and information to local test after passing through the global model.
[0082] Embodiment five:
[0083] The steps of the heterogeneous simulation test platform of the joint learning system are as follows:
[0084] Step 1: The server can declare various parameters of the client, load data (detection), load models and learn, declare various parameters of the client, and send data and information to the client after initializing the client list / parameters.
[0085] Step 2: The client performs environment initialization, load data, and load model in sequence. The environment initialization data and information are sent to the operating environment. The initial values of each round of the operating environment are the same and normally distributed.
[0086] Step 3: Loading data (detection) distributes the data set to the client's load data, and the data and information of the load data are sent to the load model.
[0087] Step 4: The virtual simulation environment parameters in the operating environment include: operating speed, net speed, communication and hardware.
[0088] Step 5: The data and information of the load model are divided into two lines, one for local learning and the other for local testing.
[0089] Step 6: The data and information of the loaded model are sent to the learning for judgment. When the judgment is "Y", the model is distributed to local learning. When the judgment is "N", the data and information are sent to the global test.
[0090] Step 7: Locally learned data and information are sent to the aggregate after loss / accuracy / model parameters, and the aggregated data and information are sent to the global test.
[0091] Step 8: Global test sends data and information to local test after passing through the global model.
[0092] Embodiment six:
[0093] The steps of the heterogeneous simulation test platform of the joint learning system are as follows:
[0094] Step 1: The server can declare various parameters of the client, load data (detection), load models and learn, declare various parameters of the client, and send data and information to the client after initializing the client list / parameters.
[0095] Step 2: The client performs environment initialization, load data, and load model in sequence. The environment initialization data and information are sent to the operating environment. The initial values of each round of the operating environment are the same and normally distributed.
[0096] Step 3: Loading data (detection) distributes the data set to the client's load data, and the data and information of the load data are sent to the load model.
[0097] Step 4: The data and information of the load model are divided into two lines, one for local learning and the other for local testing.
[0098] Step 5: The virtual simulation environment parameters in the operating environment include: operating speed, net speed, communication and hardware.
[0099] Step 6: The data and information of the loaded model are sent to the learning for judgment. When the judgment is "Y", the model is distributed to local learning. When the judgment is "N", the data and information are sent to the global test.
[0100] Step 7: Locally learned data and information are sent to the aggregate after loss / accuracy / model parameters, and the aggregated data and information are sent to the global test.
[0101] Step 8: Global test sends data and information to local test after passing through the global model.
[0102] Embodiment seven:
[0103] The steps of the heterogeneous simulation test platform of the joint learning system are as follows:
[0104] Step 1: The server can declare various parameters of the client, load data (detection), load models and learn, declare various parameters of the client, and send data and information to the client after initializing the client list / parameters.
[0105] Step 2: The client performs environment initialization, load data, and load model in sequence. The environment initialization data and information are sent to the operating environment. The initial values of each round of the operating environment are the same and normally distributed.
[0106] Step 3: The data and information of the load model are divided into two lines, one for local learning and the other for local testing.
[0107] Step 4: Loading data (detection) distributes the data set to the client's load data, and the data and information of the load data are sent to the load model.
[0108] Step 5: The virtual simulation environment parameters in the operating environment include: operating speed, net speed, communication and hardware.
[0109] Step 6: The data and information of the loaded model are sent to the learning for judgment. When the judgment is "Y", the model is distributed to local learning. When the judgment is "N", the data and information are sent to the global test.
[0110] Step 7: Locally learned data and information are sent to the aggregate after loss / accuracy / model parameters, and the aggregated data and information are sent to the global test.
[0111] Step 8: Global test sends data and information to local test after passing through the global model.
[0112] Embodiment eight:
[0113] The steps of the heterogeneous simulation test platform of the joint learning system are as follows:
[0114] Step 1: The server can declare various parameters of the client, load data (detection), load models and learn, declare various parameters of the client, and send data and information to the client after initializing the client list / parameters.
[0115] Step 2: Virtual simulation environment parameters in the operating environment include: operating speed, net speed, communication and hardware
[0116] Step 3: The client performs environment initialization, load data and load model in turn. The environment initialization data and information are sent to the operating environment. The initial value of each round of the operating environment is the same and normally distributed.
[0117] Step 4: Loading data (detection) distributes the data set to the client's load data, and the data and information of the load data are sent to the load model.
[0118] Step 5: The data and information of the load model are divided into two lines, one for local learning and the other for local testing.
[0119] Step 6: The data and information of the loaded model are sent to the learning for judgment. When the judgment is "Y", the model is distributed to local learning. When the judgment is "N", the data and information are sent to the global test.
[0120] Step 7: Locally learned data and information are sent to the aggregate after loss / accuracy / model parameters, and the aggregated data and information are sent to the global test.
[0121] Step 8: Global test sends data and information to local test after passing through the global model.
[0122] Embodiment nine:
[0123] The steps of the heterogeneous simulation test platform of the joint learning system are as follows:
[0124] Step 1: The virtual simulation environment parameters in the operating environment include: operating speed, net speed, communication and hardware.
[0125] Step 2: The server can declare various parameters of the client, load data (detection), load models and learn, declare various parameters of the client, and send data and information to the client after initializing the client list / parameters.
[0126] Step 3: The client performs environment initialization, load data and load model in turn. The environment initialization data and information are sent to the operating environment. The initial values of each round of the operating environment are the same and normally distributed.
[0127] Step 4: Loading data (detection) distributes the data set to the client's load data, and the data and information of the load data are sent to the load model.
[0128] Step 5: The data and information of the load model are divided into two lines, one for local learning and the other for local testing.
[0129] Step 6: The data and information of the loaded model are sent to the learning for judgment. When the judgment is "Y", the model is distributed to local learning. When the judgment is "N", the data and information are sent to the global test.
[0130] Step 7: Locally learned data and information are sent to the aggregate after loss / accuracy / model parameters, and the aggregated data and information are sent to the global test.
[0131] Step 8: Global test sends data and information to local test after passing through the global model.
[0132] Embodiment ten:
[0133] The steps of the heterogeneous simulation test platform of the joint learning system are as follows:
[0134] Step 1: The virtual simulation environment parameters in the operating environment include: operating speed, net speed, communication and hardware.
[0135] Step 2: The server can declare various parameters of the client, load data (detection), load models and learn, declare various parameters of the client, and send data and information to the client after initializing the client list / parameters.
[0136] Step 3: The client performs environment initialization, load data and load model in turn. The environment initialization data and information are sent to the operating environment. The initial values of each round of the operating environment are the same and normally distributed.
[0137] Step 4: Loading data (detection) distributes the data set to the client's load data, and the data and information of the load data are sent to the load model.
[0138] Step 5: The data and information of the load model are divided into two lines, one for local learning and the other for local testing.
[0139] Step 6: The data and information of the loaded model are sent to the learning for judgment. When the judgment is "Y", the model is distributed to local learning. When the judgment is "N", the data and information are sent to the global test.
[0140] Step 7: Global test sends data and information to local test after passing through the global model.
[0141] Step 8: Locally learned data and information are sent to the aggregate after loss / accuracy / model parameters, and the aggregated data and information are sent to the global test.
[0142] Finally, it should be noted that the above content is only used to illustrate the technical solution of the present invention, rather than to limit the scope of protection of the present invention. Simple modifications or equivalent substitutions of the technical solution of the present invention by ordinary technicians in this field do not deviate from the essence and scope of the technical solution of the present invention.
Claims
1. The heterogeneous simulation test platform of the joint learning system includes a server, a client and an operating environment, and is characterized by: The server provides computing services, acts as a node on the network, and stores and processes data and information on the network; The client corresponds to the server and is a program that provides local services to customers. It is usually installed on a common client and needs to work in conjunction with the server. The operating environment determines the virtual environment simulation parameters; The server can declare various parameters of the client, load data, load models and learn, and the server can declare various parameters of the client and send data and information to the client by initializing the client list / parameters; The client performs environment initialization, load data and load model in sequence, and the environment initialization data and information are sent to the operating environment. The initial value of each round of the operating environment is the same and normally distributed; The data and information of the load model are divided into two lines, one is sent to local learning, and the other is sent to local testing; the data and information of the local learning are sent to the total after loss / accuracy / model parameters, and the data and information of the total are sent to the global test; The global test sends data and information to the local test after passing through the global model; The virtual simulation environment parameters in the operating environment include: operating speed, net speed, communication and hardware.
2. The heterogeneous simulation test platform for the joint learning system according to claim 1 is characterized by: The loading data distributes the data set to the client's load data, and the data and information of the load data are sent to the load model.
3. The heterogeneous simulation test platform for the joint learning system according to claim 1 is characterized by: The data and information of the loaded model are sent to the learning for judgment. When the judgment is "Y", the model is distributed to local learning. When the judgment is "N", the data and information are sent to the global test.
4. The heterogeneous simulation test platform for the joint learning system according to any one of claims 1 to 3, characterized in that: The steps are as follows: Step 1: The server can declare various parameters of the client, load data, load models and learn, declare various parameters of the client, and send data and information to the client after initializing the client list / parameters; Step 2: The client performs environment initialization, load data, and load model in sequence. The data and information of environment initialization are sent to the operating environment. The initial values of each round of the operating environment are the same and normally distributed. Step 3: The virtual simulation environment parameters in the running environment include: running speed, net speed, communication and hardware; Step 4: Load the data distribution data set to the client's load data, and send the data and information of the load data to the load model; Step 5: The data and information of the load model are divided into two lines, one for local learning and the other for local testing; Step 6: The data and information of the loaded model are sent to the learning for judgment. When the judgment is "Y", the model is distributed to local learning. When the judgment is "N", the data and information are sent to the global test. Step 7: Locally learned data and information are sent to the aggregate after loss / accuracy / model parameters, and the aggregated data and information are sent to the global test; Step 8: Global test sends data and information to local test after passing through the global model.
Citation Information
Patent Citations
Multi-scale converged network simulation task mapping method under heterogeneous environment
CN108183826A
A multi-task collaborative identification method and system
CN109947954A