Associated learning system, associative learning device, associative learning method, and associative learning program
Patent Information
- Application Number
- JP2022579256
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2021-02-05
- Publication Date
- 2025-02-19
- Estimated Expiration
- 2041-02-05
AI Technical Summary
【0016】 本発明の各視点によれば、連合学習の技術に秘密計算を組み合わせることに寄与する連合学習システム、連合学習装置、連合学習方法および連合学習プログラムを提供することができる。
Smart Images

Figure 0007632492000010 
Figure 0007632492000011 
Figure 0007632492000012
Abstract
Description
[Technical field]
[0001] The present invention relates to a federated learning system, a federated learning device, a federated learning method, and a federated learning program. [Background technology]
[0002] In the field of machine learning, there is a technology called Federated Learning (FL). Federated learning is a technology in which each user provides their own data for training a common model without disclosing it to other clients. This technology contributes to improving the accuracy of model training because it can increase the amount and diversity of data used for model training without disclosing the data owned by each user to other clients.
[0003] The basic method of federated learning, which consists of a central server and multiple clients, is as follows: The central server owns the model to be trained, and transmits this model to each client. Each client trains the received model using data it owns, and transmits the updated parameters obtained as a result of this training to the central server. The central server updates the model by taking the weighted average of the model update parameters received from each client, based on the amount of data from each client. In this way, by transmitting and receiving the update parameters and performing calculations, it is possible to train the model without disclosing the data owned by each user to other clients.
[0004] As described above, in federated learning, it is necessary to transmit and receive update parameters even if data owned by each user is not disclosed to other clients. In addition, there are known attacks that leak information about training data from the update parameters of each client. Therefore, there is a demand to keep the update parameters secret, and a technique for keeping the update parameters secret using multi-party secure computation based on secret sharing is also known (for example, see Non-Patent Document 1). [Prior art documents] [Non-patent literature]
[0005] [Non-Patent Document 1] Bonawitz, Keith, et al. "Practical secure aggregation for privacy-preserving machine learning." Proceedings of the 2017 ACM SIGSAC Conference on Computer and Communications Security. 2017. Summary of the Invention [Problem to be solved by the invention]
[0006] The disclosures of the above-mentioned prior art documents are incorporated herein by reference. The following analysis has been carried out by the present inventors.
[0007] There are various known attacks against secret sharing multi-party secure computation (hereafter simply referred to as "secure computation"), and the methods for ensuring the security of secure computation against these attacks also vary. For example, some of the participants in the secure computation may collude to illegally obtain secrets, or participants may tamper with information sent and received, and ensuring security against these attacks involves a kind of trade-off. Therefore, it is preferable to select appropriate security measures depending on the situation in which secure computation is actually used. In addition, when combining federated learning technology and secure computation, it is preferable to flexibly select the role of the central server.
[0008] In view of the above-mentioned problems, an object of the present invention is to provide a federated learning system, a federated learning device, a federated learning method, and a federated learning program that contribute to combining federated learning technology with secure computation. [Means for solving the problem]
[0009] In a first aspect of the present invention, there is provided a federated learning system having two or more federated learning devices connected to each other via a network for training a common model, each of the federated learning devices comprising: a model memory unit that copies and stores the common model as a local model; a local training unit that trains the local model using data owned by the federated learning device; a secret sharing unit that decomposes local update parameters indicating the results of training the local model into shares using an additive secret sharing scheme and distributes the shares to other federated learning devices; an aggregate secret calculation unit that secretly calculates a share of a global update parameter by adding the shares of the local update parameters and multiplying the plaintext by a constant; and a global training unit that restores the shares of the global update parameters to update the common model.
[0010] In a second aspect of the present invention, there is provided a federated learning system comprising a federated learning server device and a federated learning client device connected to each other via a network for training a common model, wherein the federated learning client device comprises a model memory unit that copies and stores the common model as a local model, a local training unit that trains the local model using data owned by the federated learning client device, a secret sharing unit that decomposes local update parameters indicating the results of training the local model into shares using an additive secret sharing scheme and transmits them to the federated learning server device, and a global training unit that restores the shares of global update parameters received from the federated learning server device and updates the common model, and the federated learning server device comprises an aggregation secret calculation unit that secretly calculates the shares of global update parameters by adding the shares of the local update parameters and multiplying the plaintext by a constant, and transmits the shares of the global update parameters to the federated learning client device.
[0011] In a third aspect of the present invention, there is provided a federated learning device, which is one of two or more federated learning devices connected to each other via a network for training a common model, and which includes: a model memory unit that copies and stores the common model as a local model; a local training unit that trains the local model using data owned by the federated learning device; a secret sharing unit that decomposes local update parameters indicating the results of training the local model into shares using an additive secret sharing scheme and distributes the shares to other federated learning devices; an aggregate secret calculation unit that secretly calculates a share of a global update parameter by adding the shares of the local update parameters and multiplying the plaintext by a constant; and a global training unit that restores the share of the global update parameter to update the common model.
[0012] In a fourth aspect of the present invention, there is provided a federated learning device, which is one of two or more federated learning devices connected to each other via a network for training a common model, and which includes: a model memory unit that copies and stores the common model as a local model; a local training unit that trains the local model using data owned by the federated learning device; a secret sharing unit that decomposes local update parameters indicating the results of training the local model into shares using an additive secret sharing scheme and distributes the shares to a second federated learning device; and a global training unit that restores the shares of global update parameters secretly calculated by the second federated learning device by adding the shares of the local update parameters and multiplying plaintext by a constant, thereby updating the common model.
[0013] In a fifth aspect of the present invention, there is provided a federated learning device, which is one of two or more federated learning devices connected to each other via a network in order to aggregate local update parameters indicating results of other federated learning devices training local models using data owned by the other federated learning devices, the federated learning device having an aggregation secret calculation unit that secretly calculates a share of a global update parameter by adding shares obtained by decomposing the local update parameters using an additive secret sharing scheme and multiplying the shares by a constant with a plaintext, and transmits the share of the global update parameter to the other federated learning devices.
[0014] In a sixth aspect of the present invention, there is provided a federated learning method in which two or more federated learning devices connected to each other via a network work together to train a common model, the federated learning method comprising the steps of: replicating and storing the common model as a local model; training the local model using data owned by the federated learning device; decomposing local update parameters indicating the results of training the local model into shares using an additive secret sharing scheme and distributing them to other federated learning devices; secretly calculating a share of a global update parameter by adding the shares of the local update parameters and multiplying a plaintext by a constant; and restoring the share of the global update parameter to update the common model.
[0015] In a seventh aspect of the present invention, there is provided a federated learning program for training a common model in cooperation with two or more federated learning devices connected to each other via a network, the federated learning program including: duplicating and storing the common model as a local model; training the local model using data owned by the federated learning device; decomposing a local update parameter indicating a result of training the local model into shares by an additive secret sharing method and distributing the local update parameter to other federated learning devices; secretly calculating a share of a global update parameter by adding the shares of the local update parameter and multiplying a plaintext by a constant; and restoring the share of the global update parameter to update the common model. This program can be recorded in a computer-readable storage medium. The storage medium can be a non-transient medium such as a semiconductor memory, a hard disk, a magnetic recording medium, or an optical recording medium. The present invention can also be embodied as a computer program product. Effect of the Invention
[0016] According to each aspect of the present invention, it is possible to provide a federated learning system, a federated learning device, a federated learning method, and a federated learning program that contribute to combining the federated learning technique with secure computation. [Brief description of the drawings]
[0017] [Figure 1] FIG. 1 is a block diagram showing an example of a functional configuration of a federated learning system according to the first embodiment. [Diagram 2] FIG. 2 is a block diagram illustrating an example of a functional configuration of the associative learning device according to the first embodiment. [Diagram 3] FIG. 3 is a flowchart showing an outline of the procedure of the associative learning method in the first embodiment. [Figure 4] FIG. 4 is a block diagram illustrating an example of a functional configuration of a federated learning system according to the second embodiment. [Diagram 5] FIG. 5 is a block diagram illustrating an example of a functional configuration of an associative learning device according to the second embodiment. [Figure 6] FIG. 6 is a flowchart showing an outline of the procedure of the associative learning method according to the second embodiment. [Figure 7] FIG. 7 is a block diagram illustrating an example of a functional configuration of a federated learning system according to the third embodiment. [Figure 8] FIG. 8 is a block diagram illustrating an example of a functional configuration of an associative learning device according to the third embodiment. [Figure 9] FIG. 9 is a flowchart showing an outline of the procedure of the associative learning method according to the third embodiment. [Figure 10] FIG. 10 is a block diagram illustrating an example of a functional configuration of a federated learning system according to the fourth embodiment. [Figure 11] FIG. 11 is a block diagram illustrating an example of a functional configuration of a federated learning client device in the fourth embodiment. [Figure 12] FIG. 12 is a block diagram illustrating an example of a functional configuration of a federated learning server device in the fourth embodiment. [Figure 13] FIG. 13 is a system flowchart showing an outline of the procedure of the associative learning method in the fourth embodiment. [Figure 14] FIG. 14 is a block diagram illustrating an example of a functional configuration of a federated learning system according to the fifth embodiment. [Figure 15] FIG. 15 is a block diagram illustrating an example of a functional configuration of a federated learning client device in the fifth embodiment. [Figure 16] FIG. 16 is a block diagram illustrating an example of a functional configuration of a federated learning server device in the fifth embodiment. [Figure 17] FIG. 17 is a system flowchart showing an outline of the procedure of the associative learning method in the fifth embodiment. [Figure 18] FIG. 18 is a block diagram illustrating an example of a functional configuration of a federated learning system according to the sixth embodiment. [Figure 19] FIG. 19 is a block diagram illustrating an example of a functional configuration of a federated learning client device in the sixth embodiment. [Figure 20] FIG. 20 is a block diagram illustrating an example of a functional configuration of a federated learning server device in the sixth embodiment. [Figure 21] FIG. 21 is a system flowchart showing an outline of the procedure of the associative learning method in the sixth embodiment. [Figure 22] FIG. 22 is a diagram illustrating an example of a hardware configuration of the associative learning device. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0018] Hereinafter, an embodiment of the present invention will be described with reference to the drawings. However, the present invention is not limited to the embodiment described below. In addition, in each drawing, the same or corresponding elements are appropriately assigned the same reference numerals. Furthermore, it should be noted that the drawings are schematic, and the dimensional relationship of each element, the ratio of each element, etc. may differ from the actual ones. There may also be parts in which the dimensional relationship and ratio differ between the drawings.
[0019] [First embodiment] Hereinafter, the associative learning system and associative learning device according to the first embodiment will be described with reference to FIGS.
[0020] Fig. 1 is a block diagram showing an example of a functional configuration of an associative learning system according to the first embodiment. As shown in Fig. 1, associative learning system 100 according to the first embodiment includes first to N-th associative learning devices 100_i (i = 0, 1, ..., N-1). The first to N-th associative learning devices 100_i (i = 0, 1, ..., N-1) are connected to each other via a network so as to be able to communicate with each other. Here, N is a natural number equal to or greater than 2.
[0021] The first to Nth federated learning devices 100_i (i = 0, 1, ..., N-1) are operated by independent organizations (users). The first to Nth federated learning devices 100_i (i = 0, 1, ..., N-1) store data that each organization does not want to disclose to the outside. Meanwhile, each organization does not want to disclose its own data to the outside, but each organization wants to utilize the data of others and machine-learn a common model.
[0022] In federated learning, the first to Nth associative learning devices 100_i (i=0, 1, ..., N-1) replicate a common model as a local model and train this local model using data owned by each device. Then, update parameters indicating the results of training the local models are aggregated. However, there is a possibility that secrets may be leaked from these update parameters. Therefore, in the federated learning system 100 in the first embodiment, each of the first to Nth associative learning devices 100_i (i=0, 1, ..., N-1) has the following configuration.
[0023] Fig. 2 is a block diagram showing an example of a functional configuration of an associative learning device in the first embodiment. As shown in Fig. 2, first to N-th associative learning devices 100_i (i = 0, 1, ..., N-1) each include a model storage unit 101_i, a local training unit 102_i, a secret sharing unit 103_i, an aggregate secure computation unit 104_i, and a global training unit 105_i.
[0024] The model storage unit 101_i is a storage device for replicating and storing a common model to be jointly learned as a local model. Also, the local training unit 102_i is a processing unit for training the local model using the data owned by each of the first to Nth joint learning devices 100_i (i = 0, 1, …, N - 1).
[0025] The secret sharing unit 103_i is a processing unit for decomposing a local update parameter indicating the result of training the local model into shares by an additive secret sharing method and transmitting them to the other first to Nth joint learning devices 100_i (i = 0, 1, …, N - 1).
[0026] Here, the additive secret sharing method is a secret sharing method for decomposing the value x into a sum in the residue class ring Z L as follows.
[0027]
Number
[0028] In the N-out-of-N additive secret sharing, the value x decomposed into a sum in the residue class ring Z L is distributed and held by the first to Nth joint learning devices 100_i (i = 0, 1, …, N - 1) as follows. Sometimes, what is distributed and held in this way is called a share of the value x.
[0029]
Number
[0030] The shares configured in this way have a replication degree of 1, that is, each of the first to Nth joint learning devices 100_i (i = 0, 1, …, N - 1) holds x i respectively. This means that even if t < N among the N participants collude, the original value x cannot be restored, and it is most secure against collusion attacks.
[0031] The secret sharing unit 103_i updates the local update parameters, which indicate the results of training the local model, in the coset ring Z L The decomposed values are then transmitted to the first to N-th associative learning devices 100_i (i=0, 1, . . . , N-1) according to the above method.
[0032] The aggregate secure computation unit 104_i is a processing unit for secretly computing a share of a global update parameter by adding up the shares of the local update parameter and multiplying the plaintext by a constant. i (i=0, 1, ..., N-1) is different for each of the first to N-th associative learning devices 100_i (i=0, 1, ..., N-1). In addition, the amount of data possessed by each of the first to N-th associative learning devices 100_i (i=0, 1, ..., N-1) is also different.
[0033] Therefore, in order to obtain a share of a global update parameter by aggregating the shares of the local update parameters, each of the first to Nth federated learning devices 100_i (i=0, 1, . . . , N−1) aggregates the amount of data V i The local update parameter Δ i We need to calculate the weighted average of (i=0,1,…,N-1).
[0034] The aggregate secret computation unit 104_i adds the shares of the local update parameters and multiplies the plaintext by a constant to obtain the amount of data V i The local update parameter Δ i Calculate the weighted average of (i=0,1,…,N-1) where V is the amount of data. i (i=0, 1, . . . , N-1) may be acquired and stored in advance, or may be transmitted together with the transmission of the share of the local update parameters.
[0035] Generally, in secure computation, a lot of communication costs are incurred when performing multiplication. However, addition and constant multiplication of plaintext can be calculated without communication. Specifically, it can be calculated as follows.
[0036] Addition of shares [x]+[y]=[z] is z i = x i + y i [z] mod n i =(z i , z i+1 , ... , z i+N-1 ) can be calculated. Also, the constant multiple of the plaintext [x]·c=[x·c] is x' i = c x i mod n, [x c] i =(x' i , x' i+1 , ... , x' i+N-1 ) can be calculated.
[0037] The global training unit 105_i is a processing unit for restoring the share of the global update parameter to update the common model. The global training unit 105_i receives each share of the global update parameter secretly shared among the first to Nth associative learning devices 100_i (i=0, 1, ..., N-1) and restores the global update parameter. Then, the global training unit 105_i applies the restored global update parameter to the common model that was the target of the associative learning, thereby training the common model.
[0038] As described above, the federated learning system in the first embodiment can perform federated learning while keeping local update parameters secret, since the first to Nth federated learning devices 100_i (i=0, 1, ..., N-1) have the above-mentioned configurations. Note that the federated learning system in the first embodiment can perform processing only by secret calculation of addition and constant multiples of plaintext (without multiplication), and therefore has low communication costs. In addition, the federated learning system in the first embodiment uses N-out-of-N additive secret sharing with a replication degree of 1, and therefore has high security against collusion attacks.
[0039] (method) Here, a description will be given of the associative learning method in the first embodiment. Fig. 3 is a flowchart showing an outline of the procedure of the associative learning method in the first embodiment.
[0040] As shown in FIG. 3, the federated learning method in the first embodiment includes a model duplication step (S11), a local training step (S12), an update parameter secret sharing step (S13), an update parameter aggregation step (S14), and a global training step (S15).
[0041] In a model duplication step (S11), each of the first to Nth associative learning devices 100_i (i=0, 1, ..., N-1) duplicates and stores a common model to be subjected to associative learning as a local model. Then, in a local training step (S12), each of the first to Nth associative learning devices 100_i (i=0, 1, ..., N-1) trains the local model using data owned by each of the first to Nth associative learning devices 100_i (i=0, 1, ..., N-1).
[0042] In the secret sharing step (S13) of the update parameters, the local update parameters obtained in the local training step (S12) are decomposed into shares by an additive secret sharing method and transmitted to the other first to Nth federated learning devices 100_i (i = 0, 1, …, N−1). Here, the additive secret sharing method uses the above-described N-out-of-N additive secret sharing. That is, the additive secret sharing method in the first embodiment has a replication degree of 1, and different shares are transmitted to each of the first to Nth federated learning devices 100_i (i = 0, 1, …, N−1). That is, even if t < N of the N participants collude, the original value x cannot be restored, which means that it is highly secure against collusion attacks.
[0043] In the aggregation step (S14) of the update parameters, each of the first to Nth federated learning devices 100_i (i = 0, 1, …, N−1) secretly calculates the share of the global update parameters by adding the received shares of the local update parameters and multiplying by a plaintext constant multiple. Specifically, each of the first to Nth federated learning devices 100_i (i = 0, 1, …, N−1) calculates the weighted average of the local update parameters Δ i (i = 0, 1, …, N−1) weighted by the amount of data V i (i = 0, 1, …, N−1) it owns.
[0044] In the global training step (S15), each of the first to Nth federated learning devices 100_i (i = 0, 1, …, N−1) restores the share of the global update parameters and updates the common model. Specifically, each of the first to Nth federated learning devices 100_i (i = 0, 1, …, N−1) receives each share of the globally updated parameters secretly distributed from the other first to Nth federated learning devices 100_i (i = 0, 1, …, N−1) and restores the globally updated parameters. Then, each of the first to Nth federated learning devices 100_i (i = 0, 1, …, N−1) trains the common model by applying the restored global update parameters to the common model that was the target of the federated learning.
[0045] As described above, in the federated learning method of the first embodiment, the first to N-th federated learning devices 100_i (i=0, 1, ..., N-1) have the above-mentioned configurations, and thus can perform federated learning while keeping local update parameters secret. Note that the federated learning method of the first embodiment can perform processing only by addition and secure calculation of a constant multiple of plaintext (without multiplication), and therefore has low communication costs. In addition, the secure computation system of the first embodiment uses N-out-of-N additive secret sharing with a replication degree of 1, and therefore has high security against collusion attacks.
[0046] [Second embodiment] Next, an associative learning system and an associative learning device according to a second embodiment will be described with reference to FIGS.
[0047] Fig. 4 is a block diagram showing an example of a functional configuration of an associative learning system according to the second embodiment. As shown in Fig. 4, associative learning system 200 according to the second embodiment includes first to N-th associative learning devices 200_i (i = 0, 1, ..., N-1). The first to N-th associative learning devices 200_i (i = 0, 1, ..., N-1) are connected to each other via a network so as to be able to communicate with each other. Here, N is a natural number equal to or greater than 3.
[0048] As in the other embodiments, the first to Nth federated learning devices 200_i (i = 0, 1, ..., N-1) are each operated by an independent organization (user), and each organization does not want to disclose its own data to the outside, but each organization wants to utilize the other's data and train a common model by machine learning.
[0049] Fig. 5 is a block diagram showing an example of a functional configuration of an associative learning device in the second embodiment. As shown in Fig. 5, the first to N-th associative learning devices 200_i (i = 0, 1, ..., N-1) each include a model storage unit 201_i, a local training unit 202_i, a secret sharing unit 203_i, an aggregate secure computation unit 204_i, a global training unit 205_i, a first stationary fraud detection unit 206_i, and a second stationary fraud detection unit 207_i.
[0050] The model memory unit 201_i is a storage device for replicating and storing a common model to be federated as a local model. Also, the local training unit 202_i is a processing unit for training the local model using the data owned by each of the first to Nth federated learning devices 200_i (i = 0, 1, …, N−1).
[0051] The secret sharing unit 203_i is a processing unit for decomposing the local update parameters indicating the result of training the local model into shares by an additive secret sharing method and transmitting them to the other first to Nth federated learning devices 200_i (i = 0, 1, …, N−1).
[0052] The additive secret sharing method used in the second embodiment is a special form of additive secret sharing, (N−t)-out-of-N replicated secret sharing [(N−t,N)-RSS]. Since (N−t)-out-of-N replicated secret sharing is a special form of additive secret sharing, the value x is decomposed into a sum in the residue class ring Z of order L as follows. L as a sum in.
[0053]
Equation
[0054] Then, in (N−t)-out-of-N replicated secret sharing, the value x decomposed into a sum in the residue class ring Z of order L is distributed and held as follows so that the replication degree becomes t + 1. However, t(t + 1) < N. That is, for example, when N = 3, t = 1. L as a sum in.
[0055]
Equation
[0056] When secret sharing is performed as described above, it is safe even if t participants out of N participants collude to restore the value. In addition, as will be described later, since the degree of replication is t+1, even if t participants collude to tamper with the value, the fraud can be detected and the process can be stopped.
[0057] The first stop-type fraud detection unit 206_i is a processing unit that requests other associative learning devices to transmit their shares of local update parameters, and stops processing if the shares of local update parameters transmitted in response to the request do not match.
[0058] As described above, in (Nt)-out-of-N replication-based secret sharing, t+1 people hold copies of the same sub-share. Therefore, even if t people collude to tamper with values, they cannot tamper with all the sub-shares to the same value. Therefore, the first stop-type cheating detection unit 206_i requests t other associative learning devices 200_i that should hold copies of the same sub-share as itself to transmit their shares of local update parameters, and if the shares of local update parameters transmitted in response to the request do not match, it determines that a cheater is present and stops processing.
[0059] On the other hand, when the share of the local update parameter transmitted in response to the request matches, the first stop-type fraud detection unit 206_i does not stop processing, but adopts it as the correct share of the local update parameter. It is also possible to determine whether the share of the local update parameter matches by converting it into a hash value using a hash function before transmitting it, rather than directly transmitting the share. When the hash value is transmitted, it is possible to reduce the amount of communication.
[0060] The aggregate secret computation unit 204_i secretly computes the share of the global update parameter by adding the share of the local update parameter adopted as the correct share of the local update parameter by the first stop-type fraud detection unit 206_i and multiplying the plaintext by a constant. Specifically, the aggregate secret computation unit 204_i computes the amount of data V i The local update parameter Δ i Calculate the weighted average of (i=0,1,…,N-1).
[0061] The second stop-type fraud detection unit 207_i is a processing unit for stopping the process when the shares of the global update parameters received during restoration do not match. Since the shares of the global update parameters are secretly shared among the first to Nth associative learning devices 100_i (i=0, 1, ..., N-1), during restoration, it is necessary to collect the shares of the global update parameters secretly shared among the first to Nth associative learning devices 100_i (i=0, 1, ..., N-1). At this time, if the shares of the global update parameters have been tampered with, the global update parameters cannot be restored correctly.
[0062] The second stop-type fraud detection unit 207_i requests the other t+1 associative learning devices 200_i that should hold copies of the same sub-shares of the global update parameters to transmit their shares of the global update parameters, and if the shares of the global update parameters transmitted in response to the request do not match, it determines that a fraudster has been mixed in and stops processing. On the other hand, if the shares of the global update parameters transmitted in response to the request match, the second stop-type fraud detection unit 207_i adopts them as the correct shares of the global update parameters.
[0063] In addition, when judging whether the shares of the global update parameters match, it is also possible to convert the shares into hash values using a hash function and then transmit them, rather than transmitting them directly. If the hash values are transmitted, it is possible to reduce the amount of communication.
[0064] The global training unit 205_i is a processing unit for restoring the share of the global update parameters to update the common model. The global training unit 205_i restores the global update parameters adopted as the correct share of the global update parameters by the second stop-type fraud detection unit 207_i. Then, the global training unit 205_i applies the restored global update parameters to the common model that was the subject of the associative learning, thereby training the common model.
[0065] As described above, the federated learning system in the second embodiment can perform federated learning while keeping local update parameters secret, since the first to Nth federated learning devices 200_i (i=0, 1, ..., N-1) have the above-mentioned configurations. Note that the federated learning system in the second embodiment can perform processing only by secret calculation of addition and constant multiples of plaintext (without multiplication), and therefore has low communication costs. In addition, the federated learning system in the second embodiment uses (Nt)-out-of-N replica secret sharing with a replication degree of t+1, so that even if t people collude to tamper with a value, it can detect the fraud and stop the processing.
[0066] (method) Here, a description will be given of an associative learning method in the second embodiment. Fig. 6 is a flowchart showing an outline of the procedure of the associative learning method in the second embodiment.
[0067] As shown in FIG. 6, the federated learning method in the second embodiment includes a model duplication step (S21), a local training step (S22), an update parameter secret sharing step (S23), a first stop-type cheating detection step (S24), an update parameter aggregation step (S25), a second stop-type cheating detection step (S26), and a global training step (S27).
[0068] In a model duplication step (S21), each of the first to Nth associative learning devices 200_i (i=0, 1, ..., N-1) duplicates and stores a common model to be the subject of associative learning as a local model. Then, in a local training step (S22), each of the first to Nth associative learning devices 200_i (i=0, 1, ..., N-1) trains the local model using data owned by each of the first to Nth associative learning devices 200_i (i=0, 1, ..., N-1).
[0069] In the update parameter secret sharing step (S23), each of the first to N-th federated learning devices 200_i (i=0, 1, ..., N-1) decomposes the local update parameters obtained in the local training step (S22) into shares using an additive secret sharing scheme and transmits the shares to the other first to N-th federated learning devices 200_i (i=0, 1, ..., N-1). Here, the additive secret sharing scheme uses the above-mentioned (Nt)-out-of-N replication secret sharing. That is, the additive secret sharing scheme in the second embodiment is a secret sharing scheme for a coset ring Z L The value x decomposed into the sum of x and t is secretly shared so that the replication degree is t+1.
[0070] In (Nt)-out-of-N replication-based secret sharing, t+1 people hold copies of the same sub-share. Therefore, even if t people collude to tamper with values, they cannot tamper with all the sub-shares to the same value. Therefore, in the first stop-type cheating detection step (S24), t other federated learning devices 200_i that should be holding copies of the same sub-share as the device itself are requested to transmit their shares of local update parameters to the other federated learning devices, and if the shares of local update parameters transmitted in response to the request do not match, it is determined that a cheater is present.
[0071] In a first stop-type fraud detection step (S24), each of the first to Nth associative learning devices 200_i (i=0, 1, ..., N-1) requests the other associative learning devices to transmit their shares of local update parameters, and if the shares of local update parameters transmitted in response to the request do not match (S24; N), it is determined that a fraudster is present and processing is stopped.
[0072] On the other hand, in the first stop-type fraud detection step (S24), if the shares of the local update parameters transmitted in response to a request by each of the first to Nth associative learning devices 200_i (i = 0, 1, ..., N-1) match (S24; Y), the processing is not stopped and the shares of the local update parameters are adopted as the correct shares.
[0073] In the update parameter aggregation step (S25), the first to N-th associative learning devices 200_i (i=0, 1, ..., N-1) secretly calculate the share of the global update parameter by adding up the shares of the local update parameters adopted as the shares of the correct local update parameters in the first stop-type fraud detection step (S24) and multiplying the plaintext by a constant. In the update parameter aggregation step (S25), the amount of data V i The local update parameter Δ i Calculate the weighted average of (i=0,1,…,N-1).
[0074] In a second stop-type fraud detection step (S26), the first to N-th associative learning devices 200_i (i=0, 1, . . . , N-1) stop processing when the shares of the global update parameters received during restoration do not match.
[0075] In the second stop-type fraud detection step (S26), the t+1 other associative learning devices 200_i that should hold copies of the same sub-share of the global update parameter are requested to transmit their shares of the global update parameter to the other associative learning devices, and if the shares of the global update parameter transmitted in response to the request do not match (S26; N), it is determined that a fraudster has been present and the process is stopped. On the other hand, if the shares of the global update parameter transmitted in response to the request match (S26; Y), the second stop-type fraud detection unit 207_i adopts them as the correct shares of the global update parameter.
[0076] In a global training step (S27), the first to N-th associative learning devices 200_i (i = 0, 1, ..., N-1) restore the share of global update parameters to update the common model. The first to N-th associative learning devices 200_i (i = 0, 1, ..., N-1) restore the global update parameters adopted as the correct share of global update parameters in the second stop-type fraud detection step (S26). Then, the first to N-th associative learning devices 200_i (i = 0, 1, ..., N-1) apply the restored global update parameters to the common model that was the subject of the associative learning, thereby training the common model.
[0077] As described above, in the federated learning method of the second embodiment, since the first to N-th federated learning devices 200_i (i=0, 1, ..., N-1) have the above-mentioned configurations, federated learning can be performed with local update parameters kept secret. Note that the federated learning method of the second embodiment can perform processing only by secret calculation of addition and constant multiples of plaintext (without multiplication), and therefore communication costs are low. In addition, since the federated learning system of the second embodiment uses (Nt)-out-of-N replica secret sharing with a replication degree of t+1, even if t people collude to tamper with values, it is possible to detect the fraud and stop the processing.
[0078] [Third embodiment] Next, an associative learning system and an associative learning device according to a third embodiment will be described with reference to FIGS.
[0079] Fig. 7 is a block diagram showing an example of a functional configuration of an associative learning system according to the third embodiment. As shown in Fig. 7, associative learning system 300 according to the third embodiment includes first to N-th associative learning devices 300_i (i = 0, 1, ..., N-1). The first to N-th associative learning devices 300_i (i = 0, 1, ..., N-1) are connected to each other via a network so as to be able to communicate with each other. Here, N is a natural number equal to or greater than 4.
[0080] As in the other embodiments, the first to Nth federated learning devices 300_i (i = 0, 1, ..., N-1) are each operated by an independent organization (user), and each organization does not want to disclose its own data to the outside, but each organization wants to utilize the other's data and train a common model by machine learning.
[0081] Fig. 8 is a block diagram showing an example of a functional configuration of an associative learning device in the third embodiment. As shown in Fig. 8, first to N-th associative learning devices 300_i (i = 0, 1, ..., N-1) each include a model storage unit 301_i, a local training unit 302_i, a secret sharing unit 303_i, an aggregate secure computation unit 304_i, a global training unit 305_i, a first persistent fraud detection unit 306_i, and a second persistent fraud detection unit 307_i.
[0082] Model storage unit 301_i is a storage device for duplicating and storing a common model to be the subject of associative learning as a local model, and local training unit 302_i is a processing unit for training the local model using data owned by each of first to Nth associative learning devices 300_i (i=0, 1, ..., N-1).
[0083] The secret sharing unit 303_i is a processing unit for decomposing local update parameters, which indicate the results of training a local model, into shares using an additive secret sharing scheme and transmitting the shares to the other first to Nth federated learning devices 300_i (i=0, 1, ..., N-1).
[0084] The additive secret sharing scheme used in the third embodiment is a special form of additive secret sharing, the (N - 2t)-out-of-N replicated secret sharing [(N - 2t, N)-RSS]. Since the (N - 2t)-out-of-N replicated secret sharing is a special form of additive secret sharing, the value x is decomposed into a sum in the residue class ring Z L as follows.
[0085]
Number
[0086] Furthermore, in the (N - 2t)-out-of-N replicated secret sharing, the value x decomposed into a sum in the residue class ring Z L is distributed and held as follows so that the replication degree becomes 2t + 1. Here, t(2t + 1) < N. That is, for example, when N = 4, t = 1.
[0087]
Number
[0088] When secret sharing is performed as described above, even if t out of N participants collude and attempt to restore the value, it is secure. Also, as will be described later, since the replication degree becomes 2t + 1, even if t people collude and tamper with the value, the correct value can be selected and the process can be continued.
[0089] The first continuous fraud detection unit 306_i is a processing unit that requests the shares of the local update parameters to be sent to other federated learning devices, and adopts, as the correct shares of the local update parameters, those in which the majority of the shares of the local update parameters transmitted in response to the request match.
[0090] As described above, in (N-2t)-out-of-N replica-based secret sharing, 2t+1 people hold copies of the same sub-share. Therefore, even if t people collude to tamper with the values, they cannot tamper with all the sub-shares to the same value, and the t+1 people hold the correct value. In other words, the correct value is the majority. Therefore, the first continuous cheating detection unit 306_i requests the other 2t federated learning devices 300_i that should hold copies of the same sub-share as itself to transmit their shares of the local update parameters, and adopts the majority of the shares of the local update parameters transmitted in response to the request as the correct value.
[0091] In addition, if the federated learning device 300_i that provides the local update parameters is operated by an attacker and has already been tampered with at the time when the federated learning device 300_i secretly shares the local update parameters, it may happen that the majority of the shares of the local update parameters do not match. In such a case, the first continuous fraud detection unit 306_i does not adopt the local update parameters and continues processing as if they did not exist.
[0092] In addition, when determining whether a share of a local update parameter matches, the share may be converted into a hash value using a hash function before being transmitted, rather than being transmitted directly. If a hash value is transmitted, the amount of communication can be reduced.
[0093] The aggregate secret calculation unit 304_i secretly calculates the share of the global update parameter by adding the share of the local update parameter adopted by the first continuous fraud detection unit 306_i as the correct share of the local update parameter and multiplying the plaintext by a constant. Specifically, the aggregate secret calculation unit 304_i calculates the amount of data V i The local update parameter Δ i Calculate the weighted average of (i=0,1,…,N-1).
[0094] The second continuous fraud detection unit 307_i adopts the majority of the shares of the global update parameters received during the restoration as the correct local update parameter shares. The second continuous fraud detection unit 307_i requests the other 2t associative learning devices 300_i that should hold copies of the same sub-shares of the global update parameters to transmit their shares of the global update parameters, and adopts the majority of the shares of the global update parameters transmitted in response to the request as the correct value.
[0095] In addition, when judging whether the shares of the global update parameters match, it is also possible to convert the shares into hash values using a hash function and then transmit them, rather than transmitting them directly. If the hash values are transmitted, it is possible to reduce the amount of communication.
[0096] The global training unit 305_i is a processing unit for restoring the share of the global update parameters to update the common model. The global training unit 305_i restores the global update parameters adopted as the correct share of the global update parameters by the second continuous fraud detection unit 307_i. Then, the global training unit 305_i applies the restored global update parameters to the common model that was the subject of the associative learning, thereby training the common model.
[0097] As described above, the federated learning system in the third embodiment can perform federated learning while keeping local update parameters secret, since the first to Nth federated learning devices 300_i (i=0, 1, ..., N-1) have the above-mentioned configurations. Note that the federated learning system in the third embodiment can perform processing only by secret calculation of addition and constant multiples of plaintext (without multiplication), and therefore has low communication costs. In addition, the federated learning system in the third embodiment uses (N-2t)-out-of-N replication-based secret sharing with a replication degree of 2t+1, so that even if t people collude to tamper with a value, it can select a correct value and continue processing.
[0098] (method) Here, a description will be given of an associative learning method according to the third embodiment. Fig. 9 is a flowchart showing an outline of the procedure of the associative learning method according to the third embodiment.
[0099] As shown in FIG. 9, the federated learning method in the third embodiment includes a model duplication step (S31), a local training step (S32), an update parameter secret sharing step (S33), a first continuous fraud detection step (S34), an update parameter aggregation step (S35), a second continuous fraud detection step (S36), and a global training step (S37).
[0100] In a model duplication step (S31), each of the first to Nth associative learning devices 300_i (i=0, 1, ..., N-1) duplicates and stores a common model to be the subject of associative learning as a local model. Then, in a local training step (S32), each of the first to Nth associative learning devices 300_i (i=0, 1, ..., N-1) trains the local model using data owned by each of the first to Nth associative learning devices 300_i (i=0, 1, ..., N-1).
[0101] In the update parameter secret sharing step (S33), each of the first to N-th federated learning devices 300_i (i=0, 1, ..., N-1) decomposes the local update parameters obtained in the local training step (S32) into shares using an additive secret sharing scheme and transmits the shares to the other first to N-th federated learning devices 300_i (i=0, 1, ..., N-1). Here, the additive secret sharing scheme uses the above-mentioned (N-2t)-out-of-N replication type secret sharing. That is, the additive secret sharing scheme in the third embodiment is L The value x decomposed into the sum of x and t is secretly shared so that the degree of replication is 2t+1.
[0102] In (N-2t)-out-of-N replica-based secret sharing, 2t+1 people hold copies of the same sub-share. Therefore, even if t people collude to tamper with the values, they cannot tamper with all the sub-shares to the same value, and the t+1 people hold the correct value. In other words, the correct value is the majority. Therefore, in the first continuous cheating detection step (S34), a request is made to the other 2t federated learning devices 300_i that should be holding copies of the same sub-share as the device itself to transmit their shares of the local update parameters, and the share of the local update parameters that matches the majority transmitted in response to the request is adopted as the correct value.
[0103] In the update parameter aggregation step (S35), the first to N-th associative learning devices 300_i (i=0, 1, ..., N-1) secretly calculate the share of the global update parameter by adding up the shares of the local update parameters adopted as the shares of the correct local update parameters in the first continuous fraud detection step (S34) and multiplying the plaintext by a constant. In the update parameter aggregation step (S35), the amount of data V i The local update parameter Δ i Calculate the weighted average of (i=0,1,…,N-1).
[0104] In a second continuous fraud detection step (S36), the first to Nth associative learning devices 300_i (i = 0, 1, ..., N-1) adopt the majority of the shares of the global update parameters received during restoration as the correct share of the local update parameters.
[0105] In a second continuous fraud detection step (S36), 2t other associative learning devices 300_i that should hold copies of the same sub-shares of the global update parameters are requested to transmit their shares of the global update parameters to the other associative learning devices, and the share of the global update parameters that matches the majority transmitted in response to the request is adopted as the correct share of the global update parameters.
[0106] In a global training step (S37), the first to N-th associative learning devices 300_i (i = 0, 1, ..., N-1) restore the share of global update parameters to update the common model. The first to N-th associative learning devices 300_i (i = 0, 1, ..., N-1) restore the global update parameters adopted as the correct share of global update parameters in the second continuous fraud detection step (S36). Then, the first to N-th associative learning devices 300_i (i = 0, 1, ..., N-1) apply the restored global update parameters to the common model that was the subject of the associative learning, thereby training the common model.
[0107] As described above, in the federated learning method of the third embodiment, since the first to N-th federated learning devices 300_i (i=0, 1, ..., N-1) have the above-mentioned configurations, federated learning can be performed with the local update parameters kept secret. Note that the federated learning method of the third embodiment can perform processing only by secret calculation of addition and constant multiples of plaintext (without multiplication), and therefore communication costs are low. In addition, since the federated learning system of the third embodiment uses (N-2t)-out-of-N replication-based secret sharing with a replication degree of 2t+1, it is possible to select a correct value and continue processing even if t people collude to tamper with a value.
[0108] [Fourth embodiment] Next, a federated learning system, a federated learning server device, and a federated learning client device according to a fourth embodiment will be described with reference to FIGS.
[0109] Fig. 10 is a block diagram showing an example of a functional configuration of a federated learning system according to the fourth embodiment. As shown in Fig. 10, a federated learning system 400 according to the fourth embodiment includes first to N-th federated learning client devices 410_i (i = 0, 1, ..., N-1) and first to N-th federated learning server devices 420_i (i = 0, 1, ..., N-1). The first to N-th federated learning client devices 410_i (i = 0, 1, ..., N-1) and the first to N-th federated learning server devices 420_i (i = 0, 1, ..., N-1) are connected to each other via a network so as to be able to communicate with each other. Here, N is a natural number equal to or greater than 2.
[0110] The first to Nth federated learning client devices 410_i (i=0, 1, ..., N-1) are each operated by an independent organization (user). The first to Nth federated learning client devices 410_i (i=0, 1, ..., N-1) store data that each organization does not want to disclose to the outside. Meanwhile, each organization does not want to disclose its own data to the outside, but each organization wants to utilize the data mutually and machine-learn a common model. The first to Nth federated learning server devices 420_i (i=0, 1, ..., N-1) are each operated by an independent organization (user).
[0111] That is, the federated learning system 400 according to the fourth embodiment is a server-client type federated learning system. More specifically, as described below, the federated learning system 400 according to the fourth embodiment is a federated learning system in which the roles of the federated learning system 100 in the first embodiment are divided into a server and a client. Therefore, the first to Nth federated learning client devices 410_i (i=0, 1, ..., N-1) and the first to Nth federated learning server devices 420_i (i=0, 1, ..., N-1) are distinguished for convenience of explanation, but it is also possible to adopt the same hardware configuration. In addition, it is also possible to adopt an operation such as executing a program with limited functions in the same hardware configuration.
[0112] Fig. 11 is a block diagram showing an example of a functional configuration of a federated learning client device in the fourth embodiment. As shown in Fig. 11, the first to Nth federated learning client devices 410_i (i = 0, 1, ..., N-1) each include a model storage unit 401_i, a local training unit 402_i, a secret sharing unit 403_i, and a global training unit 405_i. On the other hand, Fig. 12 is a block diagram showing an example of a functional configuration of a federated learning server device in the fourth embodiment. As shown in Fig. 12, the first to Nth federated learning server devices 420_i (i = 0, 1, ..., N-1) each include an aggregate secret computation unit 404_i.
[0113] The model storage unit 401_i in the first to Nth federated learning client devices 410_i (i=0, 1, ..., N-1) is a storage device for duplicating and storing a common model to be the subject of federated learning as a local model. The local training unit 402_i is a processing unit for training the local model using data owned by each of the first to Nth federated learning client devices 410_i (i=0, 1, ..., N-1).
[0114] The secret sharing unit 403_i in the first to Nth federated learning client devices 410_i (i=0, 1, ..., N-1) is a processing unit for decomposing local update parameters indicating the results of training a local model into shares using an additive secret sharing scheme and transmitting the shares to the other first to Nth federated learning client devices 410_i (i=0, 1, ..., N-1).
[0115] The additive secret sharing scheme used in the fourth embodiment is N-out-of-N additive secret sharing. That is, the secret sharing unit 403_i updates the local update parameters, which indicate the results of training the local model, in a coset ring Z L The decomposed values are transmitted to the first to N-th federated learning server devices 420_i (i=0, 1, . . . , N−1) so that the replication degree is 1.
[0116] The aggregate secret calculation unit 404_i in the first to N-th federated learning server devices 420_i (i=0, 1, ..., N-1) secretly calculates the share of the global update parameter by adding up the shares of the local update parameter received from the first to N-th federated learning client devices 410_i (i=0, 1, ..., N-1) and multiplying the plaintext by a constant. Specifically, the aggregate secret calculation unit 404_i calculates the amount of data V i The local update parameter Δ i Calculate the weighted average of (i=0,1,…,N-1).
[0117] The global training unit 405_i in the first to Nth federated learning client devices 410_i (i=0, 1, ..., N-1) is a processing unit for restoring the share of global update parameters to update the common model. The global training unit 405_i restores the global update parameters adopted as the share of global update parameters received from the first to Nth federated learning server devices 420_i (i=0, 1, ..., N-1). Then, the global training unit 405_i applies the restored global update parameters to the common model that was the target of the federated learning, thereby training the common model.
[0118] As described above, the federated learning system in the fourth embodiment can perform federated learning while keeping local update parameters secret, since the first to Nth federated learning client devices 410_i (i=0, 1, ..., N-1) and the first to Nth federated learning server devices 420_i (i=0, 1, ..., N-1) have the above-mentioned configurations. Note that the federated learning system in the fourth embodiment can perform processing only by secret calculation of addition and constant multiples of plaintext (without multiplication), so communication costs are low. In addition, the federated learning system in the fourth embodiment uses N-out-of-N additive secret sharing with a replication degree of 1, so it is highly secure against collusion attacks.
[0119] (method) Here, a description will be given of an associative learning method in the fourth embodiment. Fig. 13 is a system flowchart showing an outline of the procedure of the associative learning method in the fourth embodiment.
[0120] 13, the federated learning method in the fourth embodiment includes processes performed by the first to Nth federated learning client devices 410_i (i=0, 1, ..., N-1) and processes performed by the first to Nth federated learning server devices 420_i (i=0, 1, ..., N-1). The processes performed by the first to Nth federated learning client devices 410_i (i=0, 1, ..., N-1) include a model duplication step (S41), a local training step (S42), an update parameter secret sharing step (S43), and a global training step (S45), and the processes performed by the first to Nth federated learning server devices 420_i (i=0, 1, ..., N-1) include an update parameter aggregation step (S44).
[0121] In a model duplication step (S41), each of the first to Nth federated learning client devices 410_i (i=0, 1, ..., N-1) duplicates and stores a common model to be subjected to federated learning as a local model. Then, in a local training step (S42), each of the first to Nth federated learning client devices 410_i (i=0, 1, ..., N-1) trains the local model using data owned by each of the first to Nth federated learning client devices 410_i (i=0, 1, ..., N-1).
[0122] In the update parameter secret sharing step (S43), the local update parameters obtained in the local training step (S42) are decomposed into shares by an additive secret sharing scheme, and the first to Nth federated learning client devices 410_i (i=0, 1, ..., N-1) transmit the shares to the first to Nth federated learning server devices 420_i (i=0, 1, ..., N-1). Here, the additive secret sharing scheme uses the above-mentioned N-out-of-N additive secret sharing. That is, the additive secret sharing scheme in the fourth embodiment has a replication degree of 1, and transmits different shares to each of the first to Nth federated learning server devices 420_i (i=0, 1, ..., N-1).
[0123] In the update parameter aggregation step (S44), each of the first to N-th federated learning server devices 420_i (i=0, 1, ..., N-1) secretly calculates the share of the global update parameter by adding up the share of the received local update parameter and multiplying the plaintext by a constant. Specifically, each of the first to N-th federated learning server devices 420_i (i=0, 1, ..., N-1) secretly calculates the share of the global update parameter by adding up the share of the received local update parameter and multiplying the plaintext by a constant. i The local update parameter Δ i Calculate the weighted average of (i=0,1,…,N-1).
[0124] In the global training step (S45), each of the first to Nth federated learning client devices 410_i (i=0, 1, ..., N-1) restores the share of the global update parameter to update the common model. Specifically, each of the first to Nth federated learning client devices 410_i (i=0, 1, ..., N-1) receives each share of the secretly shared global update parameter from the first to Nth federated learning server devices 420_i (i=0, 1, ..., N-1) and restores the global update parameter. Then, each of the first to Nth federated learning client devices 410_i (i=0, 1, ..., N-1) applies the restored global update parameter to the common model that was the target of the federated learning, thereby training the common model.
[0125] As described above, in the federated learning method in the fourth embodiment, the first to Nth federated learning client devices 410_i (i=0, 1, ..., N-1) and the first to Nth federated learning server devices 420_i (i=0, 1, ..., N-1) cooperate with each other to perform federated learning while keeping local update parameters secret. Note that the federated learning system in the fourth embodiment can perform processing only by secret calculation of addition and constant multiples of plaintext (without multiplication), and therefore has low communication costs. In addition, the federated learning system in the fourth embodiment uses N-out-of-N additive secret sharing with a replication degree of 1, and therefore has high security against collusion attacks.
[0126] [Fifth embodiment] Next, a federated learning system, a federated learning server device, and a federated learning client device according to the fifth embodiment will be described with reference to FIGS.
[0127] Fig. 14 is a block diagram showing an example of a functional configuration of a federated learning system according to the fifth embodiment. As shown in Fig. 14, a federated learning system 500 according to the fifth embodiment includes first to N-th federated learning client devices 510_i (i = 0, 1, ..., N-1) and first to N-th federated learning server devices 520_i (i = 0, 1, ..., N-1). The first to N-th federated learning client devices 510_i (i = 0, 1, ..., N-1) and the first to N-th federated learning server devices 520_i (i = 0, 1, ..., N-1) are connected to each other via a network so as to be able to communicate with each other. Here, N is a natural number equal to or greater than 3.
[0128] The first to Nth federated learning client devices 510_i (i = 0, 1, ..., N-1) are each operated by an independent organization (user). The first to Nth federated learning client devices 510_i (i = 0, 1, ..., N-1) store data that each organization does not want to disclose to the outside. Meanwhile, each organization does not want to disclose its own data to the outside, but each organization wants to utilize the data mutually and machine-learn a common model. The first to Nth federated learning server devices 520_i (i = 0, 1, ..., N-1) are each operated by an independent organization (user).
[0129] That is, the federated learning system 500 according to the fifth embodiment is a server-client type federated learning system. More specifically, as described below, the federated learning system 500 according to the fifth embodiment is a federated learning system in which the roles of the federated learning system 200 in the second embodiment are divided into a server and a client. Therefore, the first to Nth federated learning client devices 510_i (i=0, 1, ..., N-1) and the first to Nth federated learning server devices 520_i (i=0, 1, ..., N-1) are distinguished for convenience of explanation, but it is also possible to adopt the same hardware configuration. In addition, it is also possible to adopt an operation such as executing a program with limited functions in the same hardware configuration.
[0130] Fig. 15 is a block diagram showing an example of a functional configuration of a federated learning client device in the fifth embodiment. As shown in Fig. 15, the first to Nth federated learning client devices 510_i (i = 0, 1, ..., N-1) each include a model storage unit 501_i, a local training unit 502_i, a secret sharing unit 503_i, a global training unit 505_i, and a second stop-type cheating detection unit 507_i. Meanwhile, Fig. 16 is a block diagram showing an example of a functional configuration of a federated learning server device in the fifth embodiment. As shown in Fig. 16, the first to Nth federated learning server devices 520_i (i = 0, 1, ..., N-1) each include an aggregate secret computation unit 504_i and a first stop-type cheating detection unit 506_i.
[0131] The model storage unit 501_i in the first to Nth federated learning client devices 510_i (i=0, 1, ..., N-1) is a storage device for duplicating and storing a common model to be the subject of federated learning as a local model. The local training unit 502_i is a processing unit for training the local model using data owned by each of the first to Nth federated learning client devices 510_i (i=0, 1, ..., N-1).
[0132] The secret sharing unit 503_i in the first to Nth federated learning client devices 510_i (i = 0, 1, ..., N-1) is a processing unit for decomposing local update parameters indicating the results of training a local model into shares using an additive secret sharing scheme and transmitting the shares to the other first to Nth federated learning client devices 510_i (i = 0, 1, ..., N-1).
[0133] The additive secret sharing scheme used in the fifth embodiment is an (Nt)-out-of-N replication type secret sharing. That is, the secret sharing unit 503_i updates the local update parameters, which indicate the results of training the local model, in a coset ring Z L The decomposed values are transmitted to the first to N-th federated learning server devices 520_i (i=0, 1, . . . , N-1) so that the replication degree becomes t+1.
[0134] The first stop-type fraud detection unit 506_i in the first to Nth federated learning server devices 520_i (i = 0, 1, ..., N-1) is a processing unit that requests other federated learning server devices to transmit their shares of local update parameters, and stops processing if the shares of local update parameters transmitted in response to the request do not match.
[0135] As mentioned above, in (Nt)-out-of-N replica-based secret sharing, t+1 people hold copies of the same sub-share. Therefore, even if t people collude to tamper with the values, they cannot tamper with all the sub-shares to the same value. Therefore, the first stop-type cheating detection unit 506_i requests t other federated learning server devices 520_i that should hold copies of the same sub-share as itself to transmit their shares of local update parameters. If the shares of local update parameters transmitted in response to the request do not match, the first stop-type cheating detection unit 506_i determines that a cheater is present and stops processing.
[0136] On the other hand, when the share of the local update parameter transmitted in response to the request matches, the first stop type fraud detection unit 506_i does not stop the process, but adopts it as the correct share of the local update parameter. It is also possible to judge whether the share of the local update parameter matches by converting it into a hash value using a hash function before transmitting it, rather than directly transmitting the share. When the hash value is transmitted, it is possible to reduce the amount of communication.
[0137] The aggregate secret calculation unit 504_i in the first to N-th federated learning server devices 520_i (i=0, 1, ..., N-1) secretly calculates the share of the global update parameter by adding the share of the local update parameter adopted as the correct share of the local update parameter by the first stop-type fraud detection unit 506_i and multiplying the plaintext by a constant. Specifically, the aggregate secret calculation unit 504_i calculates the amount of data V i The local update parameter Δ i Calculate the weighted average of (i=0,1,…,N-1).
[0138] The second stop-type fraud detection unit 507_i in the first to Nth federated learning client devices 510_i (i=0, 1, ..., N-1) is a processing unit for stopping processing when the shares of the global update parameters received during restoration do not match. The second stop-type fraud detection unit 507_i requests the t+1 first to Nth federated learning server devices 520_i (i=0, 1, ..., N-1) that should hold copies of the same sub-shares of the global update parameters to transmit the shares of the global update parameters, and when the shares of the global update parameters transmitted in response to the request do not match, it determines that a fraudster is present and stops processing. On the other hand, when the shares of the global update parameters transmitted in response to the request match, the second stop-type fraud detection unit 507_i adopts them as the correct shares of the global update parameters.
[0139] In addition, when judging whether the shares of the global update parameters match, it is also possible to convert the shares into hash values using a hash function and then transmit them, rather than transmitting them directly. If the hash values are transmitted, it is possible to reduce the amount of communication.
[0140] The global training unit 505_i in each of the first to Nth federated learning client devices 510_i (i=0, 1, ..., N-1) is a processing unit for restoring the share of global update parameters to update the common model. The global training unit 505_i restores the global update parameters adopted as the correct share of global update parameters by the second stop-type fraud detection unit 507_i. Then, the global training unit 505_i applies the restored global update parameters to the common model that was the target of the federated learning, thereby training the common model.
[0141] As described above, the federated learning system in the fifth embodiment can perform federated learning with local update parameters kept secret by having the first to Nth federated learning client devices 510_i (i=0, 1, ..., N-1) and the first to Nth federated learning server devices 520_i (i=0, 1, ..., N-1) have the above-mentioned configurations. Note that the federated learning system in the fifth embodiment can perform processing only by secret calculation of addition and constant times of plain text (without multiplication), so communication costs are low. In addition, the federated learning system in the fifth embodiment uses (Nt)-out-of-N replication-based secret sharing with a replication degree of t+1, so that even if t people collude to tamper with a value, it can detect the fraud and stop the processing.
[0142] (method) Here, a description will be given of the associative learning method in the fifth embodiment. Fig. 17 is a system flowchart showing an outline of the procedure of the associative learning method in the fifth embodiment.
[0143] 17, the federated learning method in the fifth embodiment includes a process performed by the first to Nth federated learning client devices 510_i (i=0, 1, ..., N-1) and a process performed by the first to Nth federated learning server devices 520_i (i=0, 1, ..., N-1). The process performed by the first to Nth federated learning client devices 510_i (i=0, 1, ..., N-1) includes a model duplication step (S51), a local training step (S52), an update parameter secret sharing step (S53), a second stop-type cheating detection step (S56), and a global training step (S57), and the process performed by the first to Nth federated learning server devices 520_i (i=0, 1, ..., N-1) includes a first stop-type cheating detection step (S54) and an update parameter aggregation step (S55).
[0144] In a model duplication step (S51), each of the first to Nth federated learning client devices 510_i (i=0, 1, ..., N-1) duplicates and stores a common model to be subjected to federated learning as a local model. Then, in a local training step (S52), each of the first to Nth federated learning client devices 510_i (i=0, 1, ..., N-1) trains the local model using data owned by each of the first to Nth federated learning client devices 510_i (i=0, 1, ..., N-1).
[0145] In the update parameter secret sharing step (S53), the local update parameters obtained in the local training step (S52) are decomposed into shares by an additive secret sharing scheme, and the first to Nth federated learning client devices 510_i (i=0, 1, ..., N-1) transmit the shares to the first to Nth federated learning server devices 520_i (i=0, 1, ..., N-1). Here, the additive secret sharing scheme uses the above-mentioned (Nt)-out-of-N replication secret sharing scheme. That is, the additive secret sharing scheme in the fifth embodiment has a replication degree of t+1.
[0146] In the first stop type fraud detection step (S54), each of the first to Nth federated learning server devices 520_i (i=0,1,...,N-1) requests the other federated learning server devices to transmit their share of local update parameters, and if the share of local update parameters transmitted in response to the request does not match (S54;N), it is determined that a fraudster has been detected and processing is stopped. On the other hand, if the share of local update parameters transmitted in response to the request matches (S54;Y), processing is not stopped and the share of local update parameters is adopted as the correct share.
[0147] In the update parameter aggregation step (S55), the first to N-th federated learning server devices 520_i (i=0, 1, ..., N-1) secretly calculate the share of the global update parameter by adding up the shares of the local update parameters adopted as the shares of the correct local update parameters in the first stop-type fraud detection step (S54) and multiplying the plaintext by a constant. In the update parameter aggregation step (S55), the amount of data V i The local update parameter Δ i Calculate the weighted average of (i=0,1,…,N-1).
[0148] In the second stop type fraud detection step (S56), the first to Nth federated learning client devices 510_i (i=0, 1, ..., N-1) stop processing if the shares of the global update parameters received during restoration do not match. In the second stop type fraud detection step (S56), t+1 federated learning server devices 520_i that should hold a copy of the same sub-share of the global update parameters are requested to transmit their shares of the global update parameters, and if the shares of the global update parameters transmitted in response to the request do not match (S56; N), it is determined that a fraudster has been detected and processing is stopped. On the other hand, if the shares of the local update parameters transmitted in response to the request match (S56; Y), they are adopted as the correct shares of the global update parameters.
[0149] In a global training step (S57), the first to Nth federated learning client devices 510_i (i=0, 1, ..., N-1) restore the share of global update parameters to update the common model. The first to Nth federated learning client devices 510_i (i=0, 1, ..., N-1) restore the global update parameters adopted as the correct share of global update parameters in the second stop-type fraud detection step (S56). Then, the first to Nth federated learning client devices 510_i (i=0, 1, ..., N-1) apply the restored global update parameters to the common model that was the subject of the federated learning, thereby training the common model.
[0150] As described above, in the federated learning method in the fifth embodiment, the first to Nth federated learning client devices 510_i (i=0, 1, ..., N-1) and the first to Nth federated learning server devices 520_i (i=0, 1, ..., N-1) cooperate with each other to perform federated learning while keeping local update parameters secret. Note that the federated learning system in the fifth embodiment can perform processing only by secret calculation of addition and constant multiples of plain text (without multiplication), and therefore has low communication costs. In addition, the federated learning system in the fifth embodiment uses (Nt)-out-of-N replication-based secret sharing with a replication degree of t+1, so that even if t people collude to tamper with values, it can detect the fraud and stop the processing.
[0151] [Sixth embodiment] Next, a federated learning system, a federated learning server device, and a federated learning client device according to a sixth embodiment will be described with reference to FIGS.
[0152] Fig. 18 is a block diagram showing an example of a functional configuration of a federated learning system according to the sixth embodiment. As shown in Fig. 18, a federated learning system 600 according to the sixth embodiment includes first to N-th federated learning client devices 610_i (i = 0, 1, ..., N-1) and first to N-th federated learning server devices 620_i (i = 0, 1, ..., N-1). The first to N-th federated learning client devices 610_i (i = 0, 1, ..., N-1) and the first to N-th federated learning server devices 620_i (i = 0, 1, ..., N-1) are connected to each other via a network so as to be able to communicate with each other. Here, N is a natural number equal to or greater than 4.
[0153] The first to Nth federated learning client devices 610_i (i=0, 1, ..., N-1) are each operated by an independent organization (user). The first to Nth federated learning client devices 610_i (i=0, 1, ..., N-1) store data that each organization does not want to disclose to the outside. Meanwhile, each organization does not want to disclose its own data to the outside, but each organization wants to utilize the data mutually and machine-learn a common model. The first to Nth federated learning server devices 620_i (i=0, 1, ..., N-1) are each operated by an independent organization (user).
[0154] That is, the federated learning system 600 according to the sixth embodiment is a server-client type federated learning system. More specifically, as described below, the federated learning system 600 according to the sixth embodiment is a federated learning system in which the roles of the federated learning system 300 in the third embodiment are divided into a server and a client. Therefore, the first to Nth federated learning client devices 610_i (i=0, 1, ..., N-1) and the first to Nth federated learning server devices 620_i (i=0, 1, ..., N-1) are distinguished for convenience of explanation, but it is also possible to adopt the same hardware configuration. In addition, it is also possible to adopt an operation such as executing a program with limited functions in the same hardware configuration.
[0155] Fig. 19 is a block diagram showing an example of a functional configuration of a federated learning client device in the sixth embodiment. As shown in Fig. 19, the first to Nth federated learning client devices 610_i (i = 0, 1, ..., N-1) each include a model storage unit 601_i, a local training unit 602_i, a secret sharing unit 603_i, a global training unit 605_i, and a second continuous cheating detection unit 607_i. On the other hand, Fig. 20 is a block diagram showing an example of a functional configuration of a federated learning server device in the sixth embodiment. As shown in Fig. 20, the first to Nth federated learning server devices 620_i (i = 0, 1, ..., N-1) each include an aggregate secret computation unit 604_i and a first continuous cheating detection unit 606_i.
[0156] The model storage unit 601_i in the first to Nth federated learning client devices 610_i (i=0, 1, ..., N-1) is a storage device for duplicating and storing a common model to be the subject of federated learning as a local model. The local training unit 602_i is a processing unit for training the local model using data owned by each of the first to Nth federated learning client devices 610_i (i=0, 1, ..., N-1).
[0157] The secret sharing unit 603_i in the first to Nth federated learning client devices 610_i (i = 0, 1, ..., N-1) is a processing unit for decomposing local update parameters indicating the results of training a local model into shares using an additive secret sharing scheme and transmitting the shares to the other first to Nth federated learning server devices 620_i (i = 0, 1, ..., N-1).
[0158] The additive secret sharing scheme used in the sixth embodiment is an (N-2t)-out-of-N replication type secret sharing. That is, the secret sharing unit 603_i updates the local update parameters, which indicate the results of training the local model, in a coset ring Z L The decomposed values are transmitted to the first to N-th federated learning server devices 620_i (i=0, 1, . . . , N-1) so that the replication degree is 2t+1.
[0159] The first continuous fraud detection unit 606_i in the first to Nth federated learning server devices 620_i (i = 0, 1, ..., N-1) is a processing unit that requests the transmission of a share of a local update parameter and adopts the share of a local update parameter that matches the majority of the shares of the local update parameter transmitted in response to the request as the correct share of the local update parameter.
[0160] As described above, in (N-2t)-out-of-N replica-based secret sharing, 2t+1 people hold copies of the same sub-share. Therefore, even if t people collude to tamper with the values, they cannot tamper with all the sub-shares to the same value, and t+1 people hold the correct value. In other words, the correct value is the majority. Therefore, the first continuous cheating detection unit 606_i requests the 2t first to Nth federated learning server devices 620_i (i=0, 1, ..., N-1) that should hold copies of the same sub-share as itself to transmit shares of the local update parameters, and adopts the majority of the shares of the local update parameters transmitted in response to the request as the correct value.
[0161] In addition, if the first to Nth federated learning client devices 610_i (i=0,1,...,N-1) that provide the local update parameters are operated by an attacker and have already been tampered with at the time when the first to Nth federated learning client devices 610_i (i=0,1,...,N-1) secretly share the local update parameters, it may happen that the majority of the shares of the local update parameters do not match. In such a case, the first continuous fraud detection unit 606_i does not adopt the local update parameters and continues processing as if they did not exist.
[0162] In addition, when determining whether a share of a local update parameter matches, the share may be converted into a hash value using a hash function before being transmitted, rather than being transmitted directly. If a hash value is transmitted, the amount of communication can be reduced.
[0163] The aggregate secret calculation unit 604_i in the first to N-th federated learning server devices 620_i (i=0, 1, ..., N-1) secretly calculates the share of the global update parameter by adding the share of the local update parameter adopted as the correct share of the local update parameter by the first continuous fraud detection unit 606_i and multiplying the plaintext by a constant. Specifically, the aggregate secret calculation unit 604_i calculates the amount of data V i The local update parameter Δ i Calculate the weighted average of (i=0,1,…,N-1).
[0164] The second continuous fraud detection unit 607_i in the first to Nth federated learning client devices 610_i (i=0, 1, ..., N-1) adopts the majority of the shares of the global update parameters received during restoration as the correct share of the global update parameters. The second continuous fraud detection unit 607_i requests the 2t+1 first to Nth federated learning server devices 620_i (i=0, 1, ..., N-1) that should hold copies of the same sub-shares of the global update parameters to transmit their shares of the global update parameters, and adopts the majority of the shares of the global update parameters transmitted in response to the request as the correct value.
[0165] In addition, when judging whether the shares of the global update parameters match, it is also possible to convert the shares into hash values using a hash function and then transmit them, rather than transmitting them directly. If the hash values are transmitted, it is possible to reduce the amount of communication.
[0166] The global training unit 605_i in each of the first to Nth associative learning client devices 610_i (i=0, 1, ..., N-1) is a processing unit for restoring the share of global update parameters to update the common model. The global training unit 605_i restores the global update parameters adopted by the second continuous fraud detection unit 607_i as the correct share of global update parameters. Then, the global training unit 605_i applies the restored global update parameters to the common model that was the subject of the associative learning, thereby training the common model.
[0167] As described above, the federated learning system in the sixth embodiment can perform federated learning with local update parameters kept secret by having the first to Nth federated learning client devices 610_i (i=0, 1, ..., N-1) and the first to Nth federated learning server devices 620_i (i=0, 1, ..., N-1) have the above-mentioned configurations. Note that the federated learning system in the sixth embodiment can perform processing only by secret calculation of addition and constant multiples of plain text (without multiplication), so communication costs are low. In addition, the federated learning system in the sixth embodiment uses (N-2t)-out-of-N replication-based secret sharing with a replication degree of 2t+1, so that even if t people collude to tamper with a value, the correct value can be selected and processing can be continued.
[0168] (method) Here, a description will be given of an associative learning method in the sixth embodiment. Fig. 21 is a system flowchart showing an outline of the procedure of the associative learning method in the sixth embodiment.
[0169] 21, the federated learning method in the sixth embodiment includes a process performed by the first to Nth federated learning client devices 610_i (i=0, 1, ..., N-1) and a process performed by the first to Nth federated learning server devices 620_i (i=0, 1, ..., N-1). The process performed by the first to Nth federated learning client devices 610_i (i=0, 1, ..., N-1) includes a model duplication step (S61), a local training step (S62), an update parameter secret sharing step (S63), a second continuous fraud detection step (S66), and a global training step (S67), and the process performed by the first to Nth federated learning server devices 620_i (i=0, 1, ..., N-1) includes a first continuous fraud detection step (S64) and an update parameter aggregation step (S65).
[0170] In a model duplication step (S61), each of the first to Nth federated learning client devices 610_i (i=0, 1, ..., N-1) duplicates and stores a common model to be subjected to federated learning as a local model. Then, in a local training step (S62), each of the first to Nth federated learning client devices 610_i (i=0, 1, ..., N-1) trains the local model using data owned by each of the first to Nth federated learning client devices 610_i (i=0, 1, ..., N-1).
[0171] In an update parameter secret sharing step (S63), the local update parameters obtained in the local training step (S62) are decomposed into shares by an additive secret sharing scheme, and the first to Nth federated learning client devices 610_i (i=0, 1, ..., N-1) transmit the shares to the first to Nth federated learning server devices 620_i (i=0, 1, ..., N-1). Here, the additive secret sharing scheme uses the above-mentioned (N-2t)-out-of-N replication secret sharing scheme. That is, the replication degree of the additive secret sharing scheme in the sixth embodiment is 2t+1.
[0172] In (N-2t)-out-of-N replica-based secret sharing, 2t+1 people hold copies of the same sub-share. Therefore, even if t people collude to tamper with the values, they cannot tamper with all the sub-shares to the same value, and the t+1 people hold the correct value. In other words, the correct value is the majority. Therefore, in the first continuous cheating detection step (S64), a request is made to the other 2t federated learning server devices 620_i that should hold copies of the same sub-share as the self device to transmit shares of the local update parameters, and the shares of the local update parameters that match the majority of those transmitted in response to the request are adopted as the correct value.
[0173] In the update parameter aggregation step (S65), the first to N-th federated learning server devices 620_i (i=0, 1, ..., N-1) secretly calculate the share of the global update parameter by adding up the shares of the local update parameters adopted as the shares of the correct local update parameters in the first continuous fraud detection step (S64) and multiplying the plaintext by a constant. In the update parameter aggregation step (S65), the amount of data V i The local update parameter Δ i Calculate the weighted average of (i=0,1,…,N-1).
[0174] In a second continuous fraud detection step (S66), the first to Nth federated learning client devices 610_i (i=0, 1, ..., N-1) adopt as correct global update parameter shares those that match a majority of the shares of the global update parameters received during restoration. In the second continuous fraud detection step (S66), 2t+1 federated learning server devices 620_i that should hold copies of the same sub-shares of the global update parameters are requested to transmit their global update parameter shares, and those that match a majority of the shares of the global update parameters transmitted in response to the request are adopted as correct global update parameter shares.
[0175] In a global training step (S67), the first to Nth federated learning client devices 610_i (i=0, 1, ..., N-1) restore the share of global update parameters to update the common model. The first to Nth federated learning client devices 610_i (i=0, 1, ..., N-1) restore the global update parameters adopted as the correct share of global update parameters in the second continuous fraud detection step (S66). Then, the first to Nth federated learning client devices 610_i (i=0, 1, ..., N-1) apply the restored global update parameters to the common model that was the subject of the federated learning, thereby training the common model.
[0176] As described above, in the federated learning method in the sixth embodiment, the first to Nth federated learning client devices 610_i (i=0, 1, ..., N-1) and the first to Nth federated learning server devices 620_i (i=0, 1, ..., N-1) cooperate with each other to perform federated learning while keeping the local update parameters secret. The federated learning system in the sixth embodiment can perform processing only by secret calculation of addition and constant multiples of plain text (without multiplication), so that communication costs are low. In addition, the federated learning system in the sixth embodiment uses (N-2t)-out-of-N replication-based secret sharing with a replication degree of 2t+1, so that even if t people collude to tamper with a value, the correct value can be selected and processing can be continued.
[0177] [Hardware configuration example] Fig. 22 is a diagram showing a hardware configuration example of a federated learning device. That is, the hardware configuration example shown in Fig. 22 is a hardware configuration example of the federated learning devices 100_i, 200_i, 300_i, the federated learning client devices 410_i, 510_i, 610_i, and the federated learning server devices 420_i, 520_i, 620_i (i = 0, 1, ..., N-1). The information processing device (computer) adopting the hardware configuration shown in Fig. 22 executes the above-described secure computation method as a program, thereby enabling the realization of each function of the federated learning devices 100_i, 200_i, 300_i, the federated learning client devices 410_i, 510_i, 610_i, and the federated learning server devices 420_i, 520_i, 620_i (i = 0, 1, ..., N-1).
[0178] However, the hardware configuration example shown in FIG. 22 is an example of a hardware configuration that realizes each function of the federated learning devices 100_i, 200_i, 300_i, the federated learning client devices 410_i, 510_i, 610_i, and the federated learning server devices 420_i, 520_i, 620_i (i = 0, 1, ..., N-1), and is not intended to limit the hardware configurations of the federated learning devices 100_i, 200_i, 300_i, the federated learning client devices 410_i, 510_i, 610_i, and the federated learning server devices 420_i, 520_i, 620_i (i = 0, 1, ..., N-1). Federated learning devices 100_i, 200_i, 300_i, federated learning client devices 410_i, 510_i, 610_i, and federated learning server devices 420_i, 520_i, 620_i (i=0, 1, . . . , N-1) may include hardware not shown in FIG.
[0179] As shown in FIG. 22, hardware configuration 10 that may be adopted by federated learning devices 100_i, 200_i, 300_i, federated learning client devices 410_i, 510_i, 610_i, and federated learning server devices 420_i, 520_i, 620_i (i = 0, 1, ..., N-1) includes a CPU (Central Processing Unit) 11, a main memory device 12, an auxiliary memory device 13, and an IF (Interface) section 14, which are interconnected, for example, by an internal bus.
[0180] The CPU 11 executes each command included in the federated learning program executed by the federated learning devices 100_i, 200_i, 300_i, the federated learning client devices 410_i, 510_i, 610_i, and the federated learning server devices 420_i, 520_i, 620_i (i=0, 1, ..., N-1). The main storage device 12 is, for example, a RAM (Random Access Memory), and temporarily stores various programs such as the secure computation program executed by the federated learning devices 100_i, 200_i, 300_i, the federated learning client devices 410_i, 510_i, 610_i, and the federated learning server devices 420_i, 520_i, 620_i (i=0, 1, ..., N-1) for processing by the CPU 11.
[0181] The auxiliary storage device 13 is, for example, a hard disk drive (HDD), and can store various programs such as a secure computation program executed by the federated learning devices 100_i, 200_i, 300_i, the federated learning client devices 410_i, 510_i, 610_i, and the federated learning server devices 420_i, 520_i, 620_i (i=0, 1, ..., N-1) for a medium to long term. Various programs such as a secure computation program can be provided as a program product recorded in a non-transitory computer-readable storage medium. The auxiliary storage device 13 can be used to store various programs such as a secure computation program recorded in a non-transitory computer-readable storage medium for a medium to long term. The IF unit 14 provides an interface for input / output between the federated learning devices 100_i, 200_i, 300_i, the federated learning client devices 410_i, 510_i, 610_i, and the federated learning server devices 420_i, 520_i, 620_i (i=0, 1, . . . , N-1).
[0182] An information processing device employing the above-described hardware configuration 10 executes the aforementioned associative learning method as a program to realize each of the functions of associative learning devices 100_i, 200_i, 300_i, associative learning client devices 410_i, 510_i, 610_i, and associative learning server devices 420_i, 520_i, 620_i (i = 0, 1, ..., N-1).
[0183] A part or all of the above-described embodiments can be described as, but is not limited to, the following supplementary notes. [Appendix 1] A federated learning system comprising two or more federated learning devices connected to each other via a network for training a common model, Each of the associative learning devices a model storage unit that replicates and stores the common model as a local model; a local training unit that trains the local model using data owned by the federated learning device; a secret sharing unit that decomposes local update parameters, which indicate the results of training the local model, into shares by an additive secret sharing scheme and distributes the shares to other federated learning devices; an aggregation and secure computation unit for secretly computing a share of a global update parameter by adding the shares of the local update parameter and multiplying the plaintext by a constant; a global training part for recovering the shares of the global update parameters to update the common model; A federated learning system comprising: [Appendix 2] A federated learning system as described in Appendix 1, comprising a first stop-type fraud detection unit that requests other federated learning devices to transmit a share of the local update parameters, and stops processing if the shares of the local update parameters transmitted in response to the request do not match. [Appendix 3] The federated learning system according to claim 1 or 2, further comprising a second stop-type fraud detection unit that stops processing if the shares of the global update parameters received during the restoration do not match. [Appendix 4] A federated learning system as described in Appendix 1, comprising a first continuous fraud detection unit that requests other federated learning devices to transmit their shares of the local update parameters, and adopts the majority of the shares of the local update parameters transmitted in response to the request as the correct share of the local update parameters. [Appendix 5] 5. The federated learning system of claim 1, further comprising a second persistent fraud detection unit that adopts a majority of the shares of the global update parameters received during the restoration as a correct share of the local update parameters. [Appendix 6] A federated learning system including a federated learning server device and a federated learning client device connected to each other via a network for training a common model, The federated learning client device, a model storage unit that replicates and stores the common model as a local model; a local training unit that trains the local model using data owned by the federated learning client device; a secret sharing unit that decomposes local update parameters, which indicate the results of training the local model, into shares by an additive secret sharing scheme and transmits the shares to the federated learning server device; a global training unit that restores a share of global update parameters received from the federated learning server device to update the common model; Equipped with A federated learning system comprising an aggregation and secret calculation unit in which the federated learning server device secretly calculates a share of a global update parameter by adding the share of the local update parameter and multiplying the plaintext by a constant, and transmits the share of the global update parameter to the federated learning client device. [Appendix 7] The federated learning system described in Appendix 6, wherein the federated learning server device requests other federated learning server devices to transmit their shares of the local update parameters, and a first stop-type fraud detection unit stops processing if the local update parameters transmitted in response to the request do not match. [Appendix 8] The federated learning system of claim 6 or 7, wherein the federated learning client device is provided with a second stop-type fraud detection unit that stops processing if the share of the global update parameters received during the restoration does not match. [Appendix 9] The federated learning system of claim 6, further comprising a first continuous fraud detection unit that requests other federated learning server devices to transmit the share of the local update parameters, and adopts the majority of the shares of the local update parameters transmitted in response to the request as the correct share of the local update parameters. [Appendix 10] The federated learning system of claim 6 or 9, further comprising a second persistent fraud detection unit that adopts the majority of the shares of the global update parameters received during the restoration as the correct share of the local update parameters. [Appendix 11] Two or more federated learning devices networked together to train a common model, a model storage unit that replicates and stores the common model as a local model; a local training unit that trains the local model using data owned by the federated learning device; a secret sharing unit that decomposes local update parameters, which indicate the results of training the local model, into shares by an additive secret sharing scheme and distributes the shares to other federated learning devices; an aggregation and secure computation unit for secretly computing a share of a global update parameter by adding the shares of the local update parameter and multiplying the plaintext by a constant; a global training part for recovering the shares of the global update parameters to update the common model; A federated learning device comprising: [Appendix 12] Two or more federated learning devices networked together to train a common model, a model storage unit that replicates and stores the common model as a local model; a local training unit that trains the local model using data owned by the federated learning device; a secret sharing unit that decomposes local update parameters, which indicate the results of training the local model, into shares by an additive secret sharing scheme and distributes the shares to a second federated learning device; a global training unit that restores a share of a global update parameter secretly calculated by the second federated learning device by adding the share of the local update parameter and multiplying the plaintext by a constant, and updates the common model; A federated learning device comprising: [Appendix 13] One of two or more federated learning devices connected to each other via a network to aggregate local update parameters indicating results of training a local model by the other federated learning devices using data owned by the other federated learning devices, an aggregate secret calculation unit that secretly calculates a share of a global update parameter by adding shares obtained by decomposing the local update parameter by an additive secret sharing scheme and multiplying the shares by a constant of a plain text; A federated learning device that transmits its share of the global update parameters to the other federated learning devices. [Appendix 14] A federated learning method in which two or more federated learning devices connected to each other via a network cooperate to train a common model, replicating and storing the common model as a local model; training the local model using data owned by the federated learner; decomposing local update parameters indicating the results of training the local model into shares using an additive secret sharing scheme and distributing the shares to other federated learning devices; secretly computing a share of a global update parameter by adding the share of the local update parameter and multiplying the plaintext by a constant; updating the common model by restoring the shares of the global update parameters; Federated learning methods. [Appendix 15] A federated learning program for training a common model in cooperation with two or more federated learning devices connected to each other via a network, replicating and storing the common model as a local model; training the local model using data owned by the federated learner; decomposing local update parameters indicating the results of training the local model into shares using an additive secret sharing scheme and distributing the shares to other federated learning devices; secretly computing a share of a global update parameter by adding the share of the local update parameter and multiplying the plaintext by a constant; updating the common model by restoring the shares of the global update parameters; Associated learning programs.
[0184] The disclosures of the above cited patent documents are incorporated herein by reference. Within the scope of the entire disclosure of the present invention (including the scope of claims), modifications and adjustments of the embodiments and examples are possible based on the basic technical ideas. Furthermore, within the scope of the entire disclosure of the present invention, various combinations or selections (including partial deletions) of various disclosed elements (including each element of each claim, each element of each embodiment or example, each element of each drawing, etc.) are possible. In other words, the present invention naturally includes various modifications and corrections that a person skilled in the art would be able to make in accordance with the entire disclosure including the scope of claims and the technical ideas. In particular, with regard to the numerical ranges described in this specification, any numerical value or small range included in the range should be construed as being specifically described even if not otherwise specified. Furthermore, the disclosures of the above cited documents, if necessary, in accordance with the spirit of the present invention, may be used in part or in whole in combination with the disclosures of this specification as part of the disclosure of the present invention, and are deemed to be included in the disclosures of this application. [Explanation of symbols]
[0185] 100,200,300,400,500,600 Federated Learning System 100_i, 200_i, 300_i Associative learning device 410_i, 510_i, 610_i Federated learning client device 420_i, 520_i, 620_i Federated learning server device 101_i, 201_i, 301_i, 401_i, 501_i, 601_i Model memory section 102_i, 202_i, 302_i, 402_i, 502_i, 602_i Local Training Department 103_i, 203_i, 303_i, 403_i, 503_i, 603_i Secret sharing part 104_i, 204_i, 304_i, 404_i, 504_i, 604_i Aggregated Secret Computation Unit 105_i, 205_i, 305_i, 405_i, 505_i, 605_i Global Training Department 206_i, 506_i First stop type fraud detection unit 207_i, 507_i Second stop type fraud detection unit 306_i, 606_i First continuous fraud detection unit 307_i, 607_i Second continuous fraud detection unit 10 Hardware Configuration 11 CPU(Central Processing Unit) 12 Main storage 13 Auxiliary storage device 14 IF (Interface) Section
Claims
1. A federated learning system comprising two or more federated learning devices connected to each other via a network for training a common model, Each of the associative learning devices a model storage unit that replicates and stores the common model as a local model; a local training unit that trains the local model using data owned by the federated learning device; a secret sharing unit that decomposes local update parameters, which indicate the results of training the local model, into shares by an additive secret sharing scheme and distributes the shares to other federated learning devices; an aggregation and secure computation unit for secretly computing a share of a global update parameter by adding the shares of the local update parameter and multiplying the plaintext by a constant; a global training part for recovering the shares of the global update parameters to update the common model; A federated learning system comprising:
2. 2. The federated learning system according to claim 1, wherein each of the federated learning devices is provided with a first stop-type fraud detection unit that requests other federated learning devices to transmit a share of the local update parameters and stops processing if the shares of the local update parameters transmitted in response to the request do not match.
3. The federated learning system according to claim 1 or 2, wherein each of the federated learning devices is provided with a second stop-type fraud detection unit that stops processing if the shares of the global update parameters received during the restoration do not match.
4. 2. The federated learning system according to claim 1, further comprising a first continuous fraud detection unit that requests other federated learning devices to transmit their shares of the local update parameters, and adopts a majority of the shares of the local update parameters transmitted in response to the request as a correct share of the local update parameters.
5. The federated learning system according to claim 1 or claim 4, wherein each of the federated learning devices is provided with a second continuous fraud detection unit that adopts as the correct global update parameter share the share of the global update parameter that matches a majority of the shares of the global update parameter received during the restoration.
6. A federated learning system including a federated learning server device and a federated learning client device connected to each other via a network for training a common model, The federated learning client device, a model storage unit that replicates and stores the common model as a local model; a local training unit that trains the local model using data owned by the federated learning client device; a secret sharing unit that decomposes local update parameters, which indicate the results of training the local model, into shares by an additive secret sharing scheme and transmits the shares to the federated learning server device; a global training unit that restores a share of global update parameters received from the federated learning server device to update the common model; Equipped with A federated learning system comprising an aggregation and secret calculation unit in which the federated learning server device secretly calculates a share of a global update parameter by adding the share of the local update parameter and multiplying the plaintext by a constant, and transmits the share of the global update parameter to the federated learning client device.
7. The federated learning system of claim 6, further comprising a first stop-type fraud detection unit that requests other federated learning server devices to transmit a share of the local update parameters and stops processing if the local update parameters transmitted in response to the request do not match.
8. The federated learning system according to claim 6 or claim 7, wherein the federated learning client device is provided with a second stop-type fraud detection unit that stops processing if the share of the global update parameters received during the restoration does not match.
9. The federated learning system of claim 6, further comprising a first continuous fraud detection unit that requests other federated learning server devices to transmit their shares of the local update parameters, and adopts the majority of the shares of the local update parameters transmitted in response to the request as the correct share of the local update parameters.
10. The federated learning system according to claim 6 or claim 9, wherein the federated learning client device is provided with a second continuous fraud detection unit that adopts the majority of the shares of the global update parameters received during the restoration as the correct share of the global update parameters.
11. Two or more federated learning devices networked together to train a common model, a model storage unit that replicates and stores the common model as a local model; a local training unit that trains the local model using data owned by the federated learning device; a secret sharing unit that decomposes local update parameters, which indicate the results of training the local model, into shares by an additive secret sharing scheme and distributes the shares to other federated learning devices; an aggregation and secure computation unit for secretly computing a share of a global update parameter by adding the shares of the local update parameter and multiplying the plaintext by a constant; a global training part for recovering the shares of the global update parameters to update the common model; A federated learning device comprising:
12. Two or more federated learning devices networked together to train a common model, a model storage unit that replicates and stores the common model as a local model; a local training unit that trains the local model using data owned by the federated learning device; a secret sharing unit that decomposes local update parameters, which indicate the results of training the local model, into shares by an additive secret sharing scheme and distributes the shares to a second federated learning device; a global training unit that restores a share of a global update parameter secretly calculated by the second federated learning device by adding the share of the local update parameter and multiplying the plaintext by a constant, and updates the common model; A federated learning device comprising:
13. One of two or more federated learning devices connected to each other via a network to aggregate local update parameters indicating results of training a local model by the other federated learning devices using data owned by the other federated learning devices, an aggregate secret calculation unit that secretly calculates a share of a global update parameter by adding shares obtained by decomposing the local update parameter by an additive secret sharing scheme and multiplying the shares by a constant of a plain text; A federated learning device that transmits its share of the global update parameters to the other federated learning devices.
14. A federated learning method in which two or more federated learning devices connected to each other via a network cooperate to train a common model, comprising: replicating and storing the common model as a local model; training the local model using data owned by the federated learner; decomposing local update parameters indicating the results of training the local model into shares using an additive secret sharing scheme and distributing the shares to other federated learning devices; secretly computing a share of a global update parameter by adding the share of the local update parameter and multiplying the plaintext by a constant; updating the common model by restoring the shares of the global update parameters; Federated learning methods.
15. A federated learning program for training a common model in cooperation with two or more federated learning devices connected to each other via a network, Each of the associative learning devices comprises: replicating and storing the common model as a local model; training the local model using data owned by the federated learner; decomposing local update parameters indicating the results of training the local model into shares using an additive secret sharing scheme and distributing the shares to other federated learning devices; secretly computing a share of a global update parameter by adding the share of the local update parameter and multiplying the share by a constant of the plaintext; and restoring the shares of the global update parameters to update the common model. Associated learning programs.
Citation Information
Patent Citations
Federated learning model training method and device
CN111860829A
Data Reproducibility Using Blockchains
US20180316502A1