Secret global model calculation device, local model registration method, and program
The secret global model computation device and system efficiently register local models in a local model management table using secure computation, addressing inefficiencies in existing methods and speeding up global model calculation in federated learning.
Patent Information
- Application Number
- JP2024511020
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2022-03-31
- Publication Date
- 2025-08-26
- Estimated Expiration
- 2042-03-31
AI Technical Summary
The existing method of managing local models in a local model management table for calculating a global model in federated learning is inefficient, requiring recreation of the table during parameter share registration, leading to prolonged calculation times.
A secret global model computation device and system that utilize a local model management table with attributes (m, k) for efficient registration of parameter shares, eliminating the need for recreating the table during registration, using secure computation to speed up the process.
This approach allows for efficient registration of local models in the local model management table, reducing calculation time and enhancing the efficiency of global model calculation in federated learning.
Smart Images

Figure 0007729474000001 
Figure 0007729474000002 
Figure 0007729474000003
Abstract
Description
[Technical Field]
[0001] The present invention relates to a federated learning technique, and more particularly to a technique for efficiently registering local models in a local model management table used when calculating a global model from local models. [Background technology]
[0002] Federated learning is a technique for learning without consolidating learning data in a single device. For example, FedAVG, described in Non-Patent Document 1, is an example of a federated learning technique.
[0003] FIG. 1 shows the basic configuration of a federated learning system 90. The federated learning system 90 includes M (M is an integer equal to or greater than 2) local model learning devices 1001, ..., 100 M and a global model calculation device 900. The basic operation of the federated learning system 90 is as follows: Local model learning devices 1001, ..., 100 M Each local model learning device 1001, ..., 100 uses the learning data recorded in its own recording unit to learn a local model. M The local model calculation device 900 transmits the local model to the global model calculation device 900 via the network 800. The global model calculation device 900 calculates the global model using the received local model. After the calculation is completed, the global model calculation device 900 transmits the global model to the local model learning devices 1001, ..., 100 via the network 800. M The local model learning device 1001, ..., 100 MThe global model calculation device 900 then uses the received global model to re-learn the local model. By repeating this operation, the federated learning system 90 advances model learning. At this time, the global model calculation device 900 manages the parameters of the local model using, for example, a local model management table as shown in FIG. 2. Here, the local model is a neural network composed of K layers, and the local model management table stores attributes whose attribute values are identifiers k (1≦k≦K, where K is an integer of 2 or more) that identify the layers, and the local model learning device 100 m The mth local model is a local model trained by the ...
[0004] When using federated learning technology, the learning data is not taken out of the local model learning device, so it is possible to eliminate concerns about data taking out and at the same time to speed up learning through parallel learning. However, for example, if the local model learning devices 1001, ..., 100 M There is a risk that the training data may be inferred if the parameters of the model being trained are tracked and leaked during the communication process between the global model computation device 900. In order to avoid such a risk, it is conceivable to use secure computation for the calculation of the global model.
[0005] Secure computation is a method of obtaining the result of a specified computation without restoring the encrypted numerical value (see, for example, Reference Non-Patent Document 1). In the method of Reference Non-Patent Document 1, encryption is performed by distributing multiple pieces of information from which a numerical value can be restored to three secure computing devices, and the results of addition / subtraction, constant sum, multiplication, constant multiplication, logical operations (negation, logical product, logical sum, exclusive logical sum), and data format conversion (integer, binary number) can be stored in a distributed state, i.e., encrypted, among the three secure computing devices without restoring the numerical value. In general, the number of shares is not limited to 3 and can be N (N is an integer equal to or greater than 3), and a protocol that realizes secure computation through cooperative computation by N secure computing devices is called a multi-party protocol.
[0006] (Reference Non-Patent Document 1: Koji Senda, Hiroki Hamada, Dai Igarashi, Katsumi Takahashi, “Rethinking Lightweight Verifiable Three-Party Secure Function Computation,” In CSS, 2010.) [Prior art documents] [Non-patent literature]
[0007] [Non-Patent Document 1] McMahan, B., E. Moore, D. Ramage, et al, “Communication-efficient learning of deep networks from decentralized data,” In Artificial Intelligence and Statistics, pp.1273-1282, 2017. Summary of the Invention [Problem to be solved by the invention]
[0008] However, if a local model management table with the same structure as that shown in Figure 2 is used to manage the parameters of the local model and calculate the global model, the calculation of the global model will take a very long time because the table will have to be recreated when registering the parameter shares of the local model in the local model management table due to the combination of the parameter share registration method and the database.
[0009] SUMMARY OF THE INVENTION It is therefore an object of the present invention to provide a technique for efficiently registering local models in a local model management table used when calculating a global model from local models in associative learning. [Means for solving the problem]
[0010] In one aspect of the present invention, a secret global model computation device in a federated learning system is provided, where M and K are integers of 2 or more and N is an integer of 3 or more, the local model is a neural network composed of K layers, the local model management table is a table including an attribute whose attribute value is a pair (m, k) (1≦m≦M, 1≦k≦K) of an identifier m that identifies a local model and an identifier k that identifies a layer, and an attribute whose attribute value is a parameter share of the local model, the secret global model computation device being a local model learning device that learns M local models using learning data, and a secret global model computation system made up of N secret global model computation devices that secretly computes a global model from the M local models, the secret global model computation device including a transceiver that receives a parameter share of a local model (hereinafter referred to as the mth local model) learned by one of the M local model learning devices (hereinafter referred to as the mth local model learning device (where m satisfies 1≦m≦M)), and a transmitter / receiver that receives a parameter share of a local model (hereinafter referred to as the mth local model) learned by one of the M local model learning devices, k) and a parameter share registration unit that registers the parameter share of the m-th local model in the local model management table using K records, with the share of the parameter of the k-th layer of the m-th local model (1≦k≦K) being one record.
[0011] In one aspect of the present invention, a secret global model computation device in a federated learning system includes: M local model learning devices that learn local models using learning data; and N secret global model computation devices that secretly compute a global model from the M local models. The secret global model computation device includes: a transmitter / receiver that receives a parameter share of a local model (hereinafter referred to as the mth local model) learned by one of the M local model learning devices (hereinafter referred to as the mth local model learning device (where m satisfies 1≦m≦M)); a transmitter / receiver that receives a parameter share of a local model (hereinafter referred to as the mth local model) learned by one of the M local model learning devices; and a secret global model computation system that secretly computes a global model from the M local models. The secret global model computation device includes: a transmitter / receiver that receives a parameter share of a local model (hereinafter referred to as the mth local model) learned by one of the M local model learning devices (hereinafter referred to as the mth local model learning device (where m satisfies 1≦m≦M)); and a receiver / receiver that receives a parameter share of a local model (hereinafter referred to as the mth local model) learned by the pair of identifiers (m, k) (1≦m≦M, 1≦k≦K). k) and a parameter share registration unit that registers the parameter share of the m-th local model in the local model management table using K records, with the share of a parameter (1≦k≦K) included in the k-th vector of the m-th local model being one record. [Effects of the Invention]
[0012] According to the present invention, it is possible to efficiently register local models in a local model management table used when calculating a global model from local models in associative learning. [Brief explanation of the drawings]
[0013] [Figure 1] FIG. 1 is a diagram showing the basic configuration of a federated learning system 90. [Figure 2] FIG. 10 is a diagram illustrating the structure of a conventional local model management table. [Figure 3] FIG. 10 is a diagram showing the structure of a local model management table according to the present invention. [Figure 4] FIG. 1 is a block diagram showing the configuration of an associative learning system 10. [Figure 5] FIG. 2 is a block diagram showing the configuration of a local model learning device 100m. [Figure 6] FIG. 2 is a block diagram showing the configuration of a secret global model calculation device 200n. [Figure 7] 10 is a flowchart showing the operation of the local model learning device 100m. [Figure 8] 10 is a flowchart showing the operation of the secret global model calculation system 20. [Figure 9] FIG. 2 is a diagram illustrating an example of the functional configuration of a computer that realizes each device according to an embodiment of the present invention. DETAILED DESCRIPTION OF THE INVENTION
[0014] Hereinafter, embodiments of the present invention will be described in detail. Components having the same functions are given the same numbers, and duplicated explanations will be omitted.
[0015] Before describing each embodiment, the notation used in this specification will be explained.
[0016] ^ (caret) represents a superscript, e.g., x y^z Yes z is a superscript to x, and x y^z Yes z is a subscript to x. Also, _ (underscore) represents a subscript. For example, x y_z Yes z is a superscript to x, and x y_z Yes z is a subscript to x.
[0017] The superscripts "^" and "~" such as ^x and ~x for a certain letter x should be written directly above the "x", but due to restrictions on the notation in the specification, they are written as ^x and ~x.
[0018] <Technical background> <<Secure calculation>> The secure computation in the present invention is constructed by combining existing secure computation operations. The operations required for this secure computation include, for example, concealment, addition, subtraction, multiplication, division, logical operations (negation, logical AND, logical OR, exclusive OR), and comparison operations (=, <, >, ≦, ≧). Below, we will explain some of the operations, including their notations.
[0019] [Redacted] Let [[x]] be the value of x concealed by secret sharing (hereinafter referred to as a share of x). Any secret sharing method can be used. For example, 61 -1) Shamir secret sharing on Z2 and replication secret sharing on Z2 can be used.
[0020] Multiple secret sharing methods may be combined within a single algorithm. In this case, they will be converted into each other as appropriate.
[0021] Also, N-dimensional vector → x=(x1, …, x N ) for [[ → x]]=([[x1]], …, [[x N ]]). That is, [[ → x]] is → The nth element of x, x n Share [[x n ]] is a vector with n-th element. Similarly, M×N matrix A=(a m,n )(1≦m≦M, 1≦n≦N), let [[A]] be the (m, n)th element a of A. m,n Share of [[a m,n Let ]] be the matrix whose element is (m, n).
[0022] Note that x is called the plaintext of [[x]].
[0023] Specific examples of a method for obtaining [[x]] from x (concealment) and a method for obtaining x from [[x]] (restoration) are described in Reference Non-Patent Document 1 and Reference Non-Patent Document 2.
[0024] (Reference Non-Patent Document 2: Shamir, A., "How to share a secret", Communications of the ACM, Vol. 22, No. 11, pp. 612-613, 1979.) [Addition, Subtraction, Multiplication, Division] Secure addition [[x]]+[[y]] takes inputs [[x]] and [[y]] and outputs [[x+y]]. Secure subtraction [[x]]-[[y]] takes inputs [[x]] and [[y]] and outputs [[xy]]. Secure multiplication [[x]]×[[y]] (sometimes expressed as mul([[x]], [[y]])) takes inputs [[x]] and [[y]] and outputs [[x×y]]. Secure division [[x]] / [[y]] (sometimes expressed as div([[x]], [[y]])) takes inputs [[x]] and [[y]] and outputs [[x / y]].
[0025] Specific methods for addition, subtraction, multiplication, and division include those described in Reference Non-Patent Documents 3 and 4.
[0026] (Reference Non-Patent Document 3: Ben-Or, M., Goldwasser, S. and Wigderson, A., “Completeness theorems for non-cryptographic fault-tolerant distributed computation”, Proceedings of the twentieth annual ACM symposium on Theory of computing, ACM, pp. 1-10, 1988.) (Reference Non-Patent Document 4: Gennaro, R., Rabin, MO and Rabin, T., “Simplified VSS and fast-track multiparty computations with applications to threshold cryptography”, Proceedings of the seventeenth annual ACM symposium on Principles of distributed computing, ACM, pp.101-111, 1998.) [Logical Operations] Secure negation not[[x]] takes [[x]] as input and outputs [[not(x)]]. Secure logical conjunction and([[x]], [[y]]) takes [[x]], [[y]] as input and outputs [[and(x, y)]]. Secure logical sum or([[x]], [[y]]) takes [[x]], [[y]] as input and outputs [[or(x, y)]]. Secure exclusive OR xor([[x]], [[y]]) takes [[x]], [[y]] as input and outputs [[xor(x, y)]].
[0027] Note that logical operations can be easily configured by combining addition, subtraction, multiplication, and division.
[0028] [Comparison operation] Equality judgment by secret calculation =([[x]], [[y]]) (may also be expressed as equal([[x]], [[y]])) takes [[x]] and [[y]] as inputs and outputs [[1]] if x = y, and [[0]] otherwise. Comparison <([[x]], [[y]]) by secret calculation takes [[x]] and [[y]] as inputs and outputs [[1]] if x < y, and [[0]] otherwise. Comparison >([[x]], [[y]]) by secret calculation takes [[x]] and [[y]] as inputs and outputs [[1]] if x > y, and [[0]] otherwise. Comparison ≤([[x]], [[y]]) by secret calculation takes [[x]] and [[y]] as inputs and outputs [[1]] if x ≤ y, and [[0]] otherwise. Comparison ≥([[x]], [[y]]) by secret calculation takes [[x]] and [[y]] as inputs and outputs [[1]] if x ≥ y, and [[0]] otherwise.
[0029] Note that the comparison operation can be easily constructed by combining logical operations.
[0030] <<Local model management table>> As explained in [Problem to be Solved by the Invention], calculating a global model using the local model management table of FIG. 2 is extremely inefficient. Therefore, in the present invention, a global model is calculated using a local model management table such as that shown in FIG. 3. The local model management table of FIG. 3 is a table including an attribute (hereinafter referred to as an identifier attribute) whose attribute value is a pair (m, k) (1≦m≦M, 1≦k≦K, where M and K are integers equal to or greater than 2) of an identifier m that identifies a local model and an identifier k that identifies a layer, and an attribute (hereinafter referred to as a parameter attribute) whose attribute value is a share of a parameter, and is composed of MK records. In the record of the local model management table of FIG. 3, when the value of the identifier attribute is (m, k), the value of the corresponding parameter attribute represents the share of a parameter of the kth layer of the mth local model. Using the local model management table of FIG. 3 eliminates the need to recreate the table when registering the parameter share of a local model in the local model management table, thereby reducing the amount of calculation and speeding up the calculation of the global model.
[0031] First Embodiment The federated learning system 10 will be described below with reference to Figs. 4 to 8. Fig. 4 is a block diagram showing the configuration of the federated learning system 10. The federated learning system 10 includes M (M is an integer of 2 or more) local model learning devices 1001, ..., 100 M and a secret global model calculation system 20. The secret global model calculation system 20 includes N (N is an integer of 3 or more) secret global model calculation devices 2001, ..., 200 N Local model learning devices 1001, ..., 100 M are connected to the network 800 and can communicate with the secret global model calculation system 20. The secret global model calculation devices 2001, ..., 200 N are connected to a network 800 and can communicate with each other. The network 800 may be, for example, a communication network such as the Internet or a broadcast communication path. FIG. 5 shows the local model learning device 100. m6 is a block diagram showing the configuration of the secret global model calculation device 200 (1≦m≦M). n 7 is a block diagram showing the configuration of the local model learning device 100 (1≦n≦N). m 8 is a flowchart showing the operation of the secret global model calculation system 20.
[0032] As shown in FIG. 5, the local model learning device 100 m is the local model learning unit 110 m and the parameter share calculation unit 120 m and a global model acquisition unit 130. m and the parameter calculation unit 140 m and the learning start condition determination unit 150 m and the transmitting / receiving unit 180 m and recording unit 190 m Recording unit 190 m The local model learning device 100 m The recording unit 190 is a component that records information necessary for the processing of the m For example, records training data and local model parameters. Here, as mentioned above, the local model is a neural network consisting of K layers (K is an integer greater than or equal to 2). The training data is updated as appropriate.
[0033] As shown in FIG. 6, the secret global model calculation device 200 n is a parameter share registration unit 210 n and the learning start condition determination unit 220 n and the global model calculation unit 230 n and the transmitting / receiving unit 280 n and recording unit 290 n Parameter share registration unit 210 n and the transmitter / receiver 280 n and Recording Section 290 n Excluding the secret global model computing device 200 nEach of the components is configured to be able to execute operations required to realize the function of each component, such as concealment, addition, subtraction, multiplication, division, logical operation, and comparison operation, among the operations required for calculation of the global model. In the present invention, the specific functional configuration for realizing each operation is sufficient if it is a configuration that can execute existing algorithms, and since these are conventional configurations, detailed description will be omitted. In addition, the recording unit 290 n The secret global model calculation device 200 n The recording unit 290 is a component that records information necessary for the processing of the n For example, the local model management table and the parameter share of the global model are recorded. Here, the local model management table is a table including an attribute whose attribute value is a set (m, k) (1≦m≦M, 1≦k≦K) of an identifier m that identifies a local model and an identifier k that identifies a layer, as described above, and an attribute whose attribute value is a parameter share of the local model. Note that the secret global model computing device 200 n is a local model learning device 100 in that it does not record learning data. m The global model is a neural network consisting of K layers with the same structure as the local model.
[0034] N secret global model calculation devices 200 n By the collaborative computation by the above, the secret global model computation system 20 realizes the secure computation of the global model, which is a multi-party protocol. Therefore, the learning start condition determination means 220 (not shown) of the secret global model computation system 20 includes the learning start condition determination units 2201, ..., 220 N The global model calculation means 230 (not shown) is composed of global model calculation units 2301, ..., 230 N It consists of:
[0035] Hereinafter, the local model learning device 100 will be described with reference to FIG. m The operation of the local model learning device 100 will be described. mThe mth local model learning device 100, the local model learning device 100 m The local model learned by the m-th local model learning device 100 is referred to as the m-th local model. In other words, the m-th local model learning device 100 learns the m-th local model using learning data.
[0036] S110 m In the local model learning unit 110 m is the recording unit 190 m In the first learning of the m-th local model, the local model learning unit 110 m is stored in advance in the recording unit 190 m Alternatively, the initial values of the parameters of the m-th local model may be set using initial values recorded in the local model learning unit 110, or may be set using initial values generated using random numbers. m is S130, which will be described later. m The global model obtained in step 1 is used to set the initial values of the parameters of the m-th local model.
[0037] S120 m In the parameter share calculation unit 120 m is S110 m The parameter share calculation unit 120 calculates the parameter share of the m-th local model from the parameters of the m-th local model learned in the above step. m When the calculation is completed, the transmitting / receiving unit 180 m Using the secret global model calculation device 2001, ..., 200 N send the share of parameters of the mth local model to
[0038] S130 m In the global model acquisition unit 130 m is S120 m After processing is completed or S150 m After a predetermined time has elapsed since the end of the process, the transmitting / receiving unit 180 m Using the secret global model calculation device 2001, ..., 200N Obtain the parameter shares of the global model from
[0039] S140 m In the parameter calculation unit 140 m is S130 m The parameter calculation unit 140 calculates the parameters of the global model from the share of the parameters of the global model obtained in the step 140. m The parameters of the calculated global model are recorded in the recording unit 190. m The recording unit 190 m At least two global model parameters, namely, the global model parameters obtained in the current calculation and the global model parameters obtained in the previous calculation, are recorded in .
[0040] S150 m In the learning start condition determination unit 150 m is S140 m The parameters of the global model calculated in step S110 are compared with the parameters of the global model obtained in the previous calculation, and if the parameters of the two global models are different, it is determined that the learning start condition is satisfied, and m Otherwise, it is determined that the learning start condition is not satisfied, and the process proceeds to S130. m Return to processing.
[0041] The operation of the secret global model computation system 20 will be described below with reference to Fig. 8. Here, the secret global model computation system 20 secretly computes a global model from M local models.
[0042] In S210, the secret global model calculation device 200 n (1≦n≦N) parameter share registration unit 210 n is a transceiver unit 280 nThe parameter share of the m-th local model learned by the m-th local model learning device 100 received using the above is used as input, and the parameter share of the m-th local model is registered in the local model management table using K records, with a pair of identifiers (m, k) and the parameter share of the k-th layer of the m-th local model (1≦k≦K) being one record.
[0043] In S220, if the number of newly registered local models since the last global model calculation exceeds or becomes equal to or greater than a predetermined value (the value is between 1 and M), the learning start condition determination means 220 determines that the learning start condition is met and executes the processing of S230; otherwise, it determines that the learning start condition is not met and returns to the processing of S210.
[0044] In S230, the global model calculation means 230 calculates the parameter share of the global model using the parameter shares of the local models managed in the local model management table. For example, the global model calculation means 230 determines the parameter share of the global model to be the average of the parameter shares of the corresponding first to Mth local models. Note that by expressing the parameter share of each model using a vector and performing various calculations, it is possible to speed up processing.
[0045] (Variation) In the first embodiment, the local model has been described as a neural network composed of K layers, but in general, the local model may be a model expressed using K vectors. In this case, the local model management table is a table including an attribute whose attribute value is a set (m, k) (1≦m≦M, 1≦k≦K) of an identifier m that identifies the local model and an identifier k that identifies the vector that constitutes the local model, and an attribute whose attribute value is a share of the parameter of the local model. Also, in S210, the secret global model calculation device 200 n (1≦n≦N) parameter share registration unit 210 nis a transceiver unit 280 n The parameter share of the m-th local model learned by the m-th local model learning device 100 received using the above is used as input, and the parameter share of the m-th local model is registered in the local model management table using K records, with the identifier pair (m, k) and the parameter share (1≦k≦K) included in the k-th vector of the m-th local model being one record.
[0046] According to an embodiment of the present invention, it is possible to efficiently register local models in a local model management table used when calculating a global model from local models in federated learning.
[0047] <Additional Notes> The processing of each unit of each of the above-mentioned devices may be realized by a computer, in which case the processing content of the functions that each device should have is described by a program. Then, by loading this program into recording unit 2020 of computer 2000 shown in Fig. 9 and operating arithmetic processing unit 2010, input unit 2030, output unit 2040, auxiliary recording unit 2025, etc., various processing functions of each of the above-mentioned devices are realized on the computer.
[0048] The device of the present invention may, for example, be a single hardware entity, having an input unit capable of inputting signals from outside the hardware entity, an output unit capable of outputting signals to outside the hardware entity, a communication unit to which a communication device (e.g., a communication cable) can be connected for communication with outside the hardware entity, a CPU (which may also include a central processing unit, cache memory, registers, etc.) as an arithmetic processing unit, RAM and ROM as memories, an external storage device such as a hard disk, and buses connecting these input unit, output unit, communication unit, CPU, RAM, ROM, and external storage device so as to enable data exchange. If necessary, the hardware entity may also be provided with a device (drive) capable of reading and writing to a recording medium such as a CD-ROM. An example of a physical entity equipped with such hardware resources is a general-purpose computer.
[0049] The external storage device of the hardware entity stores the programs required to realize the above-mentioned functions and the data required for processing these programs (the programs may be stored in a ROM, which is a read-only storage device, for example, instead of an external storage device). Data obtained by processing these programs is stored in RAM, the external storage device, etc. as appropriate.
[0050] In the hardware entity, each program stored in an external storage device (or ROM, etc.) and data required for processing each program are loaded into memory as needed, and interpreted, executed, and processed by the CPU as appropriate. As a result, the CPU realizes predetermined functions (each component represented as the above, "... unit," "... means," etc.). In other words, each component in the embodiments of the present invention may be configured by a processing circuitry.
[0051] As described above, when the processing functions of the hardware entities (apparatuses of the present invention) described in the above embodiments are realized by a computer, the processing contents of the functions that the hardware entities should have are described by a program. Then, by executing this program on a computer, the processing functions of the hardware entities are realized on the computer.
[0052] The program describing the processing contents can be recorded on a computer-readable recording medium, such as a non-transitory recording medium, specifically a magnetic recording device, an optical disk, or the like.
[0053] The program may be distributed, for example, by selling, transferring, lending, etc. a portable recording medium such as a DVD or CD-ROM on which the program is recorded. Furthermore, the program may be stored in a storage device of a server computer, and then transferred from the server computer to another computer via a network, thereby distributing the program.
[0054] A computer that executes such a program, for example, first stores the program recorded on a portable recording medium or transferred from a server computer in its own non-transitory storage device, the auxiliary storage unit 2025. Then, when executing a process, the computer loads the program stored in its own non-transitory storage device, the auxiliary storage unit 2025, into the storage unit 2020 and executes processing in accordance with the loaded program. Alternatively, as another execution mode of this program, the computer may load the program directly from a portable recording medium into the storage unit 2020 and execute processing in accordance with the program. Furthermore, each time a program is transferred from a server computer to this computer, the computer may execute processing in accordance with the received program. Alternatively, the server computer may not transfer the program to this computer, but may instead execute the processing function by issuing an execution instruction and obtaining the results, thereby executing the above-described processing through a so-called ASP (Application Service Provider) type service. Note that the program in this embodiment includes information used for processing by a computer that is equivalent to a program (such as data that is not a direct instruction to a computer but has properties that define computer processing).
[0055] Furthermore, in this embodiment, the device is configured by executing a predetermined program on a computer, but at least a part of the processing contents may be realized by hardware.
[0056] The present invention is not limited to the above-described embodiment, and various modifications can be made without departing from the spirit of the present invention.
Claims
1. M and K are integers of 2 or more, and N is an integer of 3 or more, The local model is a neural network composed of K layers, and the local model management table is a table including an attribute whose attribute value is a pair (m, k) (1≦m≦M, 1≦k≦K) of an identifier m for identifying a local model and an identifier k for identifying a layer, and an attribute whose attribute value is a parameter share of the local model; A secret global model computation device in a federated learning system including M local model learning devices that learn local models using learning data, and a secret global model computation system that is composed of N secret global model computation devices that secretly compute a global model from the M local models, a transceiver unit that receives a share of parameters of a local model (hereinafter referred to as the mth local model) learned by one local model learning device (hereinafter referred to as the mth local model learning device (where m satisfies 1≦m≦M)) among the M local model learning devices; a parameter share registration unit that registers the parameter share of the m-th local model in the local model management table using K records, where one record is a pair of identifiers (m, k) and a parameter share of the k-th layer of the m-th local model (1≦k≦K); A secret global model calculation device including:
2. M and K are integers of 2 or more, and N is an integer of 3 or more, the local model is a model represented by K vectors, the local model management table is a table including an attribute having an attribute value that is a set (m, k) (1≦m≦M, 1≦k≦K) of an identifier m that identifies a local model and an identifier k that identifies a vector that constitutes the local model, and an attribute having an attribute value that is a share of a parameter of the local model; A secret global model computation device in a federated learning system including M local model learning devices that learn local models using learning data, and a secret global model computation system that is composed of N secret global model computation devices that secretly compute a global model from the M local models, a transceiver unit that receives a share of parameters of a local model (hereinafter referred to as the mth local model) learned by one local model learning device (hereinafter referred to as the mth local model learning device (where m satisfies 1≦m≦M)) among the M local model learning devices; a parameter share registration unit that registers the parameter share of the m-th local model in the local model management table using K records, where one record is a pair of identifiers (m, k) and a parameter share (1≦k≦K) included in the k-th vector of the m-th local model; A secret global model calculation device including:
3. M and K are integers of 2 or more, and N is an integer of 3 or more, The local model is a neural network composed of K layers, and the local model management table is a table including an attribute whose attribute value is a pair (m, k) (1≦m≦M, 1≦k≦K) of an identifier m for identifying a local model and an identifier k for identifying a layer, and an attribute whose attribute value is a parameter share of the local model; a transmitting / receiving step in which a secret global model calculation device in a federated learning system including M local model learning devices that learn local models using learning data and N secret global model calculation devices that secretly calculate a global model from the M local models receives a share of parameters of a local model (hereinafter referred to as the mth local model) learned by one local model learning device (hereinafter referred to as the mth local model learning device (where m satisfies 1≦m≦M)) among the M local model learning devices; a parameter share registration step in which the secret global model computing device registers the parameter share of the m-th local model in the local model management table using K records, with one record being a pair of identifiers (m, k) and a parameter share of the k-th layer of the m-th local model (1≦k≦K); Local model registration methods, including:
4. M and K are integers of 2 or more, and N is an integer of 3 or more, the local model is a model represented by K vectors, the local model management table is a table including an attribute having an attribute value that is a set (m, k) (1≦m≦M, 1≦k≦K) of an identifier m that identifies a local model and an identifier k that identifies a vector that constitutes the local model, and an attribute having an attribute value that is a share of a parameter of the local model; a transmitting / receiving step in which a secret global model calculation device in a federated learning system including M local model learning devices that learn local models using learning data and N secret global model calculation devices that secretly calculate a global model from the M local models receives a share of parameters of a local model (hereinafter referred to as the mth local model) learned by one local model learning device (hereinafter referred to as the mth local model learning device (where m satisfies 1≦m≦M)) among the M local model learning devices; a parameter share registration step in which the secret global model calculation device registers the parameter share of the m-th local model in the local model management table using K records, where one record is a pair of identifiers (m, k) and a parameter share (1≦k≦K) included in the k-th vector of the m-th local model; Local model registration methods, including:
5. A program for causing a computer to function as the secret global model calculation device according to claim 1 or 2.
Citation Information
Patent Citations
Systems and Methods for Providing a Modified Loss Function in Federated-Split Learning
US20220029971A1
Distributed and federated learning using multi-layer machine learning models
US20220083917A1
Model integration device, method, and program, and inference, inspection, and control system
WO2020148998A1