Federated learning system
The federated learning system addresses the issue of non-contributing client devices by employing a masking mechanism to minimize their influence, thereby improving the learning process efficiency and accuracy.
Patent Information
- Application Number
- PCT/JP2024/026969
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-07-29
- Publication Date
- 2026-02-05
AI Technical Summary
Federated learning systems are adversely affected by client devices that do not contribute to learning, such as those with meaningless data or non-compliant protocols, leading to decreased performance.
A federated learning system that includes a masking mechanism to reduce the influence of non-contributing client devices by setting parameters beyond a predetermined percentage to zero based on a masking coefficient, and updates the global model using masked local models.
The system effectively reduces the impact of non-contributing client devices on the overall learning process, enhancing the performance and accuracy of the federated learning.
Smart Images

Figure JP2024026969_05022026_PF_FP_ABST
Abstract
Description
Federated Learning System
[0001] The present disclosure relates to a federated learning system that reduces the influence of client devices that do not contribute to federated learning.
[0002] Federated learning is a technology that can generate a model that has learned the characteristics of all data while protecting the data of users participating in the federated learning by sharing only the model (learning gradient) without sharing data.
[0003] For example, by utilizing emails and purchase histories stored on personal devices, in-house study materials and IoT information, and hospital diagnostic information, matching, automatic control, AI medical treatment, etc. Non-Patent Documents 1 and 2, for example, are disclosed as prior art for federated learning.
[0004] H. Brendan McMahan, Eider Moore, Daniel Ramage, Seth Hampson, Blaise Ag¨uera y Arcas, "Communication-Efficient Learning of Deep Networks from Decentralized Data", [online], [Retrieved July 22, 2024], Internet〈URL: https: / / arxiv.org / abs / 1602.05629〉 Sai Praneeth Karimireddy, Lie He, Martin Jaggi, "BYZANTINE-ROBUST LEARNING ON HETEROGENEOUS DATASETS VIA BUCKETING," ICLR 2022, [online], [Retrieved July 22, 2024], Internet〈URL: https: / / arxiv.org / abs / 2006.09365〉
[0005] However, if there are client devices that do not contribute to federated learning, such as devices that contain meaningless data or devices that do not follow the correct learning protocol, the performance of federated learning will decrease.
[0006] Therefore, an object of the present disclosure is to provide a federated learning system that can reduce the influence on federated learning of client devices that do not contribute to learning.
[0007] The disclosed federated learning system includes a group of client devices and a server device. The client devices include a global model receiving unit, a local model learning unit, a local model masking unit, and a local model sending unit. The server device includes a global model updating unit.
[0008] The global model receiving unit receives the global model from the server device. The local model learning unit learns a local model based on the received global model. The local model masking unit masks the local model based on a masking coefficient K determined for each client device by setting to zero the values of parameters other than parameters whose absolute values belong to a predetermined upper percentage based on the masking coefficient K. The local model sending unit sends the masked local model to the server device. The global model updating unit updates the global model based on the masked local models received from the client devices.
[0009] According to the federated learning system of the present disclosure, it is possible to reduce the influence on federated learning of client devices that do not contribute to learning.
[0010] 1 is a block diagram showing the device configuration of a federated learning system according to a first embodiment. FIG. 2 is a block diagram showing an example of connections between terminals functioning as a server device and a client device. FIG. 3 is a block diagram showing the functional configuration of a client device according to a first embodiment. FIG. 4 is a flowchart showing the operation of a client device according to a first embodiment. FIG. 5 is a block diagram showing the functional configuration of a server device according to a first embodiment. FIG. 6 is a flowchart showing the operation of a server device according to a first embodiment. FIG. 7 is a block diagram showing the device configuration of a federated learning system according to a second embodiment. FIG. 8 is a block diagram showing the functional configuration of a client device according to a second embodiment. FIG. 9 is a flowchart showing the operation of a client device according to a second embodiment. FIG. 10 is a block diagram showing the functional configuration of a server device according to a second embodiment. FIG. 11 is a flowchart showing the operation of a server device according to a second embodiment. FIG. 12 is a diagram showing an example of the functional configuration of a computer.
[0011] Hereinafter, embodiments of the present disclosure will be described in detail. Note that components having the same functions are assigned the same numbers, and redundant explanations will be omitted.
[0012] The device configuration of the federated learning system 1 of the first embodiment will be described below with reference to Figure 1. As shown in the figure, the federated learning system 1 of this embodiment comprises a group of client devices 11-1, ..., 11-N (N is the total number of client devices) and a server device 12. Note that i = 1, ..., N is the client device number. The group of client devices 11-1, ..., 11-N and the server device 12 can be realized, for example, by a general-purpose PC. The roles of the group of client devices 11-1, ..., 11-N and the server device 12 may be changed depending on the situation.
[0013] For example, when terminals 4, 5, 6, 7, 8, and 9 are connected so as to be able to communicate as shown in FIG. 2, terminal 4 may function as server device 12 and terminals 5, 6, 8, and 9 connected to terminal 4 may function as client device 11, or terminal 6 may function as server device 12 and terminals 4 and 7 connected to terminal 6 may function as client device 11.
[0014] <Functional Configuration of Client Device 11> Next, the functional configuration of the client device 11 will be described with reference to Fig. 3. As shown in Fig. 3, the client device 11 of this embodiment includes a global model receiving unit 111, a local model learning unit 112, a local model masking unit 113, and a local model sending unit 114.
[0015] <Operation of the client device 11> Next, the operation of the client device 11 will be described with reference to Fig. 4. The global model receiving unit 111 receives a global model (hereinafter, "w") from the server device 12. g The local model learning unit 112 receives the received global model w gThe local model masking unit 113 masks the local model w by setting to zero the values of parameters other than those whose absolute values belong to a predetermined upper ratio based on the masking coefficient K, based on a masking coefficient K determined for each client device 11 (S113). The local model transmitting unit 114 transmits the masked local model (hereinafter referred to as w - (also referred to as "the server device 12") (S114).
[0016] <Masking coefficient K> The masking coefficient K is determined for each client device 11, and the masking coefficient of the i-th client device 11-i is K i The masking coefficient K i The initial value can be determined for K i is executed based on the initial value of
[0017] <Local model w> The local model that the i-th client device 11-i learns in step S112 is expressed as w i This is expressed as follows.
[0018] <Masked local model lol - In the above step S113, the local model to be masked by the i-th client device 11-i is set to w - i This is expressed as follows.
[0019] <top-K i The above-mentioned masking process (step S113) in the i-th client device 11-i is performed as top-K. i It can also be expressed as:
[0020] <Functional Configuration of Server Device 12> Next, the functional configuration of the server device 12 will be described with reference to Fig. 5. As shown in Fig. 5, the server device 12 includes a local model receiving unit 121, a global model updating unit 122, a similarity calculation unit 123, a masking coefficient updating unit 124, and an update data transmitting unit 125.
[0021] <Operation of Server Device 12> Next, the operation of the server device 12 will be described with reference to Fig. 6. The local model receiving unit 121 receives the masked local model w from the client devices. - 1 , ..., w - i , ..., w - N The global model update unit 122 receives the masked local model w received from the client device group (S121). - 1 , ..., w - i , ..., w - N Based on the global model W g For example, the global model update unit 12 updates the local model w - 1 , ..., w - i , ..., w - N Calculate the average of and use this average as the global model w g The update may be performed as
[0022] Next, the similarity calculation unit 123 calculates the local model w received from the i-th client device 11-i. - i The local model w received from another client device 11-j (j≠i) based on - j or the local model w received from the i-th client device 11-i. - i And the updated global model lol g The masking coefficient update unit 124 calculates the masking coefficient K as the similarity corresponding to the i-th client device 11-i becomes more similar (S123). i The masking coefficient K i (S124). The update data transmission unit 125 updates the updated global model w gand the updated masking coefficient K i are transmitted to the corresponding client devices 11-i (S125).
[0023] The i-th client device 11-i performs processing of each of the global model receiving unit 111, the local model learning unit 112, the local model masking unit 113, and the local model transmitting unit 114 based on the updated global model w g and the updated masking coefficient K i The termination condition for the repeated processing between the client device 11 and the server device 12 can be determined arbitrarily.
[0024] <Similarity> The similarity can be calculated using any method. For example, the similarity may be calculated using Euclidean distance, Manhattan distance, Chebyshev distance, cosine similarity, Jaccard coefficient, Dice coefficient, etc. When the distance is used as the similarity, a smaller similarity value indicates more similarity, and a larger similarity value indicates more dissimilarity.
[0025] An example of calculating the similarity (denoted as S) is shown below. - i k is the masked local model w of the i-th client device 11-i - i The kth parameter of - j k is the masked local model w of the j-th client device 11-j. - j represents the k-th parameter of <Masking coefficient K i As described above, the masking coefficient update unit 124 updates the masking coefficient K so that the greater the degree of similarity, the greater the update rate. i The masking coefficient K is updated as follows: i An example of the calculation method is shown below.
[0026] Example 1) K i= 1 / (1 + similarity), where 0<similarity, and this is an example of a calculation method in which the closer the similarity is to 0, the more similar the index is.
[0027] Example 2) After normalizing the similarity to a value between 0 and 1, i = 1 - similarity. Note that this is an example of a calculation method in which the closer the similarity is to 0, the more similar the index is.
[0028] Example 3) After normalizing the similarity to a value between 0 and 1, i = similarity. However, this is an example of a calculation method in which the closer the similarity is to 1, the more similar it is.
[0029] [Modification 1] Masking coefficient K specified in the repetitive process one round before i It would be even more preferable to consider a client device that has performed masking using a value other than the above as an attacker, and add a process in which the server device excludes the client device from the federated learning system.
[0030] [Modification 2] The i-th client device 11-i is a top-K i By other methods, local model w i You may mask the parameters.
[0031] In the first embodiment, the masking process is configured to be executed on a client device, but this is not limiting and the masking process may also be executed on a server device. Hereinafter, with reference to FIG. 7, the device configuration of a federated learning system in a second embodiment, in which the masking process is configured to be executed on a server device, will be described. As shown in the figure, the federated learning system 2 of this embodiment includes a group of client devices 21-1, ..., 21-N and a server device 22. The group of client devices 21-1, ..., 21-N and the server device 22 can be realized, for example, by a general-purpose PC. The roles of the group of client devices 21-1, ..., 21-N and the server device 22 may be changed depending on the situation.
[0032] <Functional Configuration of Client Device 21> Next, the functional configuration of the client device 21 will be described with reference to Fig. 8. As shown in the figure, the client device 21 of this embodiment includes a global model receiving unit 111, a local model learning unit 112, and a local model transmitting unit 214, and differs from the client device 11 of Example 1 in that the local model masking unit 113 is omitted and the local model transmitting unit 114 is changed to the local model transmitting unit 214.
[0033] <Operation of the client device 21> Next, the operation of the client device 21 will be described with reference to Fig. 9. The global model receiving unit 111 receives the global model w from the server device 22. g (S111). The local model learning unit 112 receives the received global model w g The local model transmission unit 214 transmits the trained local model w to the server device 22 (S214). The difference from the first embodiment is that step S113 is omitted, and the masked local model w is transmitted in step S214. - The difference is that we transmit the trained local model w instead of
[0034] <Functional Configuration of Server Device 22> Next, the functional configuration of the server device 22 will be described with reference to Fig. 10. As shown in the figure, the server device 22 includes a local model receiving unit 221, a local model masking unit 113, a global model updating unit 122, a similarity calculation unit 123, a masking coefficient updating unit 124, and an update data transmitting unit 225, and differs from the server device 12 of Example 1 in that the local model receiving unit 121 has been changed to the local model receiving unit 221, the local model masking unit 113 has been added to the server device, and the update data transmitting unit 125 has been changed to the update data transmitting unit 225.
[0035] <Operation of Server Device 22> Next, the operation of the server device 22 will be described with reference to Fig. 11. The local model receiving unit 221 receives the local model w learned from the client devices. 1 , ..., w i , ..., w NThe local model masking unit 113 receives the top-K i Run the local model w 1 , ..., w i , ..., w N is masked (S113).
[0036] The global model update unit 122 updates the top-K i The local model - 1 , ..., w - i , ..., w - N Based on the global model W g is updated (S122).
[0037] The similarity calculation unit 123 calculates the similarity in the same way as in the first embodiment (S123). The masking coefficient update unit 124 updates the masking coefficient K i (S124). The update data transmission unit 225 updates the updated global model w g , 21-i, ..., 21-N (S225). The difference from the first embodiment is that the masked local model w - 1 , ..., w - i , ..., w - N In step S221, the local model w 1 , ..., w i , ..., w N In the first embodiment, step S113, which was the process of the client device 11, is executed in the server device 22. In step S125, the updated global model w g and the updated masking coefficient K i In the previous configuration, both of the updated global model w are transmitted to the corresponding client device 11-i. g , 21-N.
[0038] Furthermore, the i-th client device 21-i performs processing of each of the global model receiving unit 111, the local model learning unit 112, and the local model transmitting unit 214 based on the updated global model w g The server device 22 executes the process of the local model masking unit 113 again based on the updated masking coefficient K i and the received local model w i The termination condition for the repeated processing between the client device 21 and the server device 22 can be determined arbitrarily.
[0039] <Additional Notes> The functions performed by the components described herein may be implemented in circuitry or processing circuitry, including general-purpose processors, application-specific processors, integrated circuits, ASICs (Application Specific Integrated Circuits), a CPU (a Central Processing Unit), conventional circuits, and / or combinations thereof, programmed to perform the described functions. A processor includes transistors and other circuits and is considered to be circuitry or processing circuitry. A processor may also be a programmed processor that executes a program stored in a memory.
[0040] In this specification, a circuitry, unit, or means is hardware that is programmed to realize or performs the described functions, which may be any hardware disclosed herein or any hardware known to be programmed to realize or perform the described functions.
[0041] If the hardware is a processor considered to be a type of circuitry, the circuitry, means, or unit is a combination of the hardware and software used to configure the hardware and / or processor.
[0042] The various processes described above can be implemented by loading a program that executes each step of the above method into the recording unit 10020 of the computer 10000 shown in Figure 12 and operating the control unit 10010, input unit 10030, output unit 10040, etc.
[0043] The program describing the processing contents can be recorded on a computer-readable recording medium, which may be, for example, a magnetic recording device, an optical disk, a magneto-optical recording medium, a semiconductor memory, or any other suitable recording medium.
[0044] The program may be distributed by, for example, selling, transferring, lending, etc. portable recording media such as DVDs and CD-ROMs on which the program is recorded. Furthermore, the program may be stored in a storage device of a server computer, and then transferred from the server computer to other computers via a network, thereby distributing the program.
[0045] A computer that executes such a program may first temporarily store the program recorded on a portable recording medium or transferred from a server computer in its own storage device. Then, when executing a process, the computer reads the program stored on its own recording medium and executes the process in accordance with the read program. Alternatively, the computer may read the program directly from a portable recording medium and execute the process in accordance with the program. Furthermore, the computer may execute the process in accordance with the program each time a program is transferred from a server computer to the computer. Alternatively, the server computer may not transfer the program to the computer, but may instead execute the process through a so-called ASP (Application Service Provider) service, which realizes the processing function by issuing an execution instruction and obtaining the results. Furthermore, the server computer may execute the process at the terminal using a so-called SaaS (Software as a Service) service, which allows users to use part of the server computer along with the program. In this embodiment, the program includes information used for processing by an electronic computer that is equivalent to a program (such as data that is not a direct instruction to a computer but has properties that dictate computer processing).
[0046] Furthermore, in this embodiment, the device is configured by executing a predetermined program on a computer, but at least a part of the processing contents may be realized by hardware.
Claims
1. A federated learning system comprising a group of client devices and a server device, wherein the client devices include: a global model receiving unit that receives a global model from the server device; a local model learning unit that learns a local model based on the received global model; a local model masking unit that masks the local model based on a masking coefficient K determined for each of the client devices by setting to zero the values of parameters of the local model other than parameters whose absolute values belong to a predetermined upper percentage based on the masking coefficient K; and a local model sending unit that sends the masked local model to the server device, and the server device includes a global model updating unit that updates the global model based on the masked local model received from the group of client devices.
2. A federated learning system according to claim 1, wherein the server device: i a similarity calculation unit that calculates, as a similarity corresponding to the i-th client device, either a first similarity that is an average value of similarities between the local model received from the i-th client device and the local models received from other client devices, with the local model received from the i-th client device as a reference, or a second similarity that is a similarity between the local model received from the i-th client device and the updated global model; i The masking coefficient K i a masking coefficient update unit that updates the updated global model and the updated masking coefficient K i and an update data transmission unit that transmits the updated global model and the updated masking coefficient K to the corresponding client device, and the i-th client device performs processing of each unit of the global model receiving unit, the local model learning unit, the local model masking unit, and the local model transmitting unit, based on the updated global model and the updated masking coefficient K. i A federated learning system that runs again based on.
3. A federated learning system comprising a group of client devices and a server device, wherein the client devices include: a global model receiving unit that receives a global model from the server device; a local model learning unit that learns a local model based on the received global model; and a local model sending unit that sends the learned local model to the server device, and the server device includes: a local model masking unit that masks the local model based on a masking coefficient K determined for each of the client devices by setting to zero the values of parameters other than those whose absolute values belong to a predetermined upper percentage based on the masking coefficient K; and a global model updating unit that updates the global model based on the masked local model.
4. A federated learning system according to claim 3, wherein the server device: N is the total number of the client devices, i=1, . . . , N is the number of the client devices, and the masking coefficient of the i-th client device is K i a similarity calculation unit that calculates, as a similarity corresponding to the i-th client device, either a first similarity that is an average value of similarities between the local model received and masked from the i-th client device and the local models received and masked from other client devices, with the local model received and masked from the i-th client device as a reference, or a second similarity that is a similarity between the local model received and masked from the i-th client device and the updated global model; i The masking coefficient K i and an update data transmission unit that transmits the updated global model to the client device group, wherein the i-th client device re-executes the processing of each unit of the global model receiving unit, the local model learning unit, and the local model transmission unit based on the updated global model, and the server device re-executes the processing of the local model masking unit based on the updated masking coefficient K i and a federated learning system that executes again based on the received local model.
Citation Information
Patent Citations
Computer system, learning method, and edge device
JP2023121503A
Computer-implemented method, computer program and computer system (resource-limited federated learning using dynamic masking)
JP2023157843A