Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
Detailed Action
This action is in response to the claims filed 3/15/2024:
Claims 45 – 64 are pending.
Claims 1, 11, and 20 are independent.
Claim Rejections - 35 USC § 112
The following is a quotation of 35 U.S.C. 112(b):
(b) CONCLUSION.—The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the inventor or a joint inventor regards as the invention.
The following is a quotation of 35 U.S.C. 112 (pre-AIA ), second paragraph:
The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the applicant regards as his invention.
Claims 51 and 59 rejected under 35 U.S.C. 112(b) or 35 U.S.C. 112 (pre-AIA ), second paragraph, as being indefinite for failing to particularly point out and distinctly claim the subject matter which the inventor or a joint inventor (or for applications subject to pre-AIA 35 U.S.C. 112, the applicant), regards as the invention.
Regarding claim 51, "the sequences zk" lacks antecedent basis. Claim 51 introduces "a sequence zk" such that it's unclear if zk is singular or plural.
Regarding claim 59, "the computational problem" lacks antecedent basis. Neither claim 59 or parent claim 57 introduce a "computational problem". Either "A computational problem" or "the computational task" are recommended.
Regarding claim 59, "the computational result" lacks antecedent basis. Claim 57 recites "computational results" plural such that it would be unclear which of the computational results was "the computation result".
Claim Rejections - 35 USC § 101
101 Rejection
35 U.S.C. 101 reads as follows:
Whoever invents or discovers any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof, may obtain a patent therefor, subject to the conditions and requirements of this title.
Claims 45-64 are rejected under 35 USC § 101 because the claimed invention is directed to non-statutory subject matter.
Regarding Claim 45: Claim 45 is rejected under 35 U.S.C. 101 because the claimed invention is directed to an abstract idea without significantly more.
Step 1 Analysis: Claim 45 is directed to an non-transitory computer-readable recording medium having stored therein a program that causes a computer to execute a process, which is directed to a product, one of the statutory categories.
Step 2A Prong One Analysis: Claim 45 under its broadest reasonable interpretation is a series of mental processes and mathematical calculations. For example, but for the generic computer components language, the above limitations in the context of this claim encompass machine learning processing, including the following:
associating a secret key K with a computational task, wherein the secret key K defines a transform Tk to be used by the agent entities when reporting computational results of the computational task to the server entity, and wherein the transform Tk has an inverse Tk −1 (observation, evaluation, and judgement),
configuring the agent entities with the computational task (observation, evaluation, and judgement)
performing the iterative learning process with the agent entities until a termination criterion is met, wherein the server entity as part of performing the iterative learning process applies the inverse Tk −1 of the transform Tk to the computational results received from the agent entities (observation, evaluation, and judgement based on mathematical calculations and relationships (See instant specification ¶0047 “Each agent entity 300 a, 300 b performs a local optimization of the model by running T steps of a stochastic gradient descent update on θ(i), based on its local training data; θ k ( i , τ ) = θ k ( i , τ - 1 ) - η k ∇ f k ( θ k ( i , τ - 1 ) ) , τ = 1 , … , T ,”))
Therefore, claim 45 recites an abstract idea which is a judicial exception.
Step 2A Prong Two Analysis: Claim 45 recites additional elements “server entity” and “agent entity”. However, these additional features are computer components recited at a high-level of generality, such that they amount to no more than mere instructions to apply the judicial exception using a generic computer component. An additional element that merely recites the words “apply it” (or an equivalent) with the judicial exception, or merely includes instructions to implement an abstract idea on a computer, or merely uses a computer as a tool to perform an abstract idea, does not integrate the judicial exception into a practical application (See MPEP 2106.05(f)). Therefore, claim 45 is directed to a judicial exception.
Step 2B Analysis: Claim 45 does not include additional elements that are sufficient to amount to significantly more than the judicial exception. As discussed above with respect to the lack of integration of the abstract idea into a practical application, the additional elements recited in claim 45 amount to no more than mere instructions to apply the judicial exception using a generic computer component.
For the reasons above, claim 45 is rejected as being directed to non-patentable subject matter under §101. This rejection applies equally to independent claim 63 which recites a system, as well as to dependent claims 46-56.
Independent claim 63 recites additional instructions to apply the judicial exception using generic computer components “a communications interface configured for direct or indirect communications with agent entities; and processing circuitry operative to perform an iterative learning process with the agent entities, based on the processing circuitry being configured to cause the server entity to.”
The additional limitations of the dependent claims are addressed briefly below:
Dependent claim 46 recites additional instructions to apply the judicial exception using the generic computer components “the method further comprises configuring the agent entities with the secret key K over a secure channel established between the server entity and the agent entities”
Dependent claim 47 recites additional observation, evaluation, and judgement “the secret key K is a function of any one or more of: a pseudo-random number, identifiers of user equipment in which the agent entities are provided, randomness extracted from hardware of a network node in which the server entity is provided, or a time-stamp.”
Dependent claim 48 recites additional observation, evaluation, and judgement “the secret key K defines a sequential pattern of values to be applied by the agent entities to the computational results, and wherein the transform Tk is represented by the sequential pattern of values”
Dependent claim 49 recites additional mathematical calculations and relationships “the transform Tk is represented by a matrix Lk having an inverse Lk −1, and wherein the computational results received from the agent entities are multiplied with the inverse Lk −1 of the matrix Lk when the inverse Tk −1 of the transform Tk is applied to the computational results”
Dependent claim 50 recites additional observation, evaluation, and judgement “the transform Tk is the same for all the agent entities”
Dependent claim 51 recites additional mathematical calculations and relationships “the transform Tk defines a sequence zk of pseudo-random noise, seeded by the secret key K, to be added to the computational results by the agent entities, wherein the sequence zk of pseudo-random noise for a first of the agent entities and for a second of the agent entities have identical values but with opposite signs, and wherein the sequences zk of pseudo-random noise for all the agent entities sum to zero”
Dependent claim 52 recites additional insignificant extra-solution activity of gathering and outputting data (See MPEP 2106.05(g)) “provides a parameter vector of the computational task to the agent entities; receives the computational results as a function of the parameter vector from the agent entities;” which is well-understood, routine, and conventional in the art (See MPEP 2106.05(d)(II)(i)). Claim 52 also recites additional mathematical calculations and relationships “obtains inverse transformed computational results by applying the inverse Tk −1 of the transform Tk to the computational results; and updates the parameter vector as a function of an aggregate of the inverse transformed computational results”
Dependent claim 53 recites additional observation, evaluation, and judgement “updating the secret key K for a next iteration of the iterative learning process, whereby a new transform is defined, the new transform having a new inverse”
Dependent claim 54 recites additional observation, evaluation, and judgement “updating the secret key K according to a pre-determined schedule known to the server entity and the agent entities”
Dependent claim 55 recites additional insignificant extra-solution activity of gathering and outputting data (See MPEP 2106.05(g)) “providing an indication to the agent entities as to whether or not to apply the transform Tk when reporting the computational results of the computational task to the server entity” which is well-understood, routine, and conventional in the art (See MPEP 2106.05(d)(II)(i))
Dependent claim 56 recites additional instructions to apply the judicial exception using generic computer components “the server entity is provided in a network node, and each of the agent entities is provided in a respective user equipment”
Regarding Claim 57: Claim 57 is rejected under 35 U.S.C. 101 because the claimed invention is directed to an abstract idea without significantly more.
Step 1 Analysis: Claim 57 is directed to an non-transitory computer-readable recording medium having stored therein a program that causes a computer to execute a process, which is directed to a product, one of the statutory categories.
Step 2A Prong One Analysis: Claim 57 under its broadest reasonable interpretation is a series of mental processes. For example, but for the generic computer components language, the above limitations in the context of this claim encompass iterative learning processing, including the following:
performing the iterative learning process with the server entity until a termination criterion is met, wherein the agent entity as part of performing the iterative learning process applies the transform Tk to the computational results before sending the computational results to the server entity (observation, evaluation, and judgement based on mathematical calculations and relationships (See instant specification ¶0047 “Each agent entity 300 a, 300 b performs a local optimization of the model by running T steps of a stochastic gradient descent update on θ(i), based on its local training data; θ k ( i , τ ) = θ k ( i , τ - 1 ) - η k ∇ f k ( θ k ( i , τ - 1 ) ) , τ = 1 , … , T ,”))
Therefore, claim 57 recites an abstract idea which is a judicial exception.
Step 2A Prong Two Analysis: Claim 57 recites additional elements “server entity” and “agent entity”. However, these additional features are computer components recited at a high-level of generality, such that they amount to no more than mere instructions to apply the judicial exception using a generic computer component. An additional element that merely recites the words “apply it” (or an equivalent) with the judicial exception, or merely includes instructions to implement an abstract idea on a computer, or merely uses a computer as a tool to perform an abstract idea, does not integrate the judicial exception into a practical application (See MPEP 2106.05(f)). Claim 57 also recites additional insignificant extra-solution activity of gathering and outputting data “obtaining a secret key K that is associated with a computational task, wherein the secret key K defines a transform Tk to be used by the agent entity when reporting computational results of the computational task to the server entity; obtaining configuring in terms of the computational task from the server entity;” which does not integrate the judicial exception into a practical application (See MPEP 2106.05(g)). Therefore, claim 57 is directed to a judicial exception.
Step 2B Analysis: Claim 57 does not include additional elements that are sufficient to amount to significantly more than the judicial exception. As discussed above with respect to the lack of integration of the abstract idea into a practical application, the additional elements recited in claim 57 amount to no more than mere instructions to apply the judicial exception using a generic computer component and insignificant extra-solution activity. The gathering and outputting data is considered well-understood, routine, and conventional in the art (See MPEP 2106.05(d)(II)(i)).
For the reasons above, claim 57 is rejected as being directed to non-patentable subject matter under §101. This rejection applies equally to independent claim 64 which recites a system, as well as to dependent claims 58-62.
Independent claim 64 recites additional instructions to apply the judicial exception using generic computer components “a communications interface configured for direct or indirect communications with agent entities; and processing circuitry operative to perform an iterative learning process with the agent entities, based on the processing circuitry being configured to cause the server entity to.”
The additional limitations of the dependent claims are addressed briefly below:
Dependent claim 58 recites additional insignificant extra-solution activity of gathering and outputting data (See MPEP 2106.05(g)) “obtaining the secret key K comprises obtaining the secret key K from the server entity over a secure channel established between the agent entity and the server entity” which is well-understood, routine, and conventional in the art (See MPEP 2106.05(d)(II)(i))
Dependent claim 59 recites additional insignificant extra-solution activity of gathering and outputting data (See MPEP 2106.05(g)) “obtains a parameter vector of the computational problem from the server entity”, “obtains a transformed computational result by applying the transform Tk to the computational result”, and “reports the transformed computational result to the server entity” which is well-understood, routine, and conventional in the art (See MPEP 2106.05(d)(II)(i)). Claim 47 also recites additional observation, evaluation, and judgement “determines the computational result of the computational task as a function of the obtained parameter vector for the iteration and of data locally obtained by the agent entity”
Dependent claim 60 recites additional insignificant extra-solution activity of gathering and outputting data (See MPEP 2106.05(g)) “obtaining an update of the secret key K for a next iteration of the iterative learning process, whereby a new transform is defined.” which is well-understood, routine, and conventional in the art (See MPEP 2106.05(d)(II)(i))
Dependent claim 61 recites additional observation, evaluation, and judgement “updating the secret key K according to a pre-determined schedule known to the agent entity and the server entity”
Dependent claim 62 recites additional insignificant extra-solution activity of gathering and outputting data (See MPEP 2106.05(g)) “obtaining an indication from the server entity as to whether or not to apply the transform Tk when reporting the computational results of the computational task to the server entity.” which is well-understood, routine, and conventional in the art (See MPEP 2106.05(d)(II)(i))
Therefore, when considering the elements separately and in combination, they do not add significantly more to the inventive concept. Accordingly, claims 45-64 are rejected under 35 U.S.C. § 101.
Claim Rejections - 35 USC § 103
In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status.
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
The factual inquiries for establishing a background for determining obviousness under 35 U.S.C. 103 are summarized as follows:
1. Determining the scope and contents of the prior art.
2. Ascertaining the differences between the prior art and the claims at issue.
3. Resolving the level of ordinary skill in the pertinent art.
4. Considering objective evidence present in the application indicating obviousness or nonobviousness.
Claims 45-48, 50, and 52-63 are rejected under U.S.C. §103 as being unpatentable over the combination of Matsumoto (US20220004815A1) and Jiang (“Secure Neural Network in Federated Learning with Model Aggregation under Multiple Keys”, 2021).
PNG
media_image1.png
440
702
media_image1.png
Greyscale
FIG. 1 of Matsumoto
Regarding claim 45, Matsumoto teaches A method for performing an iterative learning process with agent entities, the method being performed by a server entity, the method comprising: ([¶0008] "A learning system according to embodiments trains a learning model. The learning system includes a model generation device and n pieces (n is an integer equal to or greater than three) of calculation devices" [¶0032] "The learning system 10 includes a management device 20" [¶0033] "Each of the n pieces of calculation devices 30 may be a server on the network" [¶0106] "the learning system 10 enables the n pieces of calculation devices 30 to train the learning model, while keeping secrecy of the training data from the n pieces of calculation devices 30." Model generation device interpreted as a server entity)
associating a secret key K with a computational task, wherein the secret key K defines a transform Tk to be used by the agent entities when reporting computational results of the computational task to the server entity, ([¶0096] "The model generation device 40 and each of the n pieces of calculation devices 30 share the configuration of the learning model and the distributed learning model." [¶0100] "a model expression represented by an equation using the result data as a variable and using the training data as a value" The claimed secret key in Matusmoto is the secret parameterized model expression associated with the computational task (the trained/transformed distributed parameter groups sent back to the server for aggregation/inverse transform).)
and wherein the transform Tk has an inverse Tk −1; ([¶0100] "the inverse function of a model expression represented by an equation using the result data as a variable and using the training data as a value")
configuring the agent entities with the computational task; and([¶0035] "the configuration of a learning model is determined in advance" [¶0052] "The share reception unit 58 of each of the n pieces of calculation devices 30 receives the m pieces of distribution training data from the model generation device 40" Matsumoto configures each agent with both components of the computational task: model configuration and task data. Each calculation device therefore knows what model to train and receives that particular data on which to train it)
performing the iterative learning process with the agent entities ([¶0052] "The training unit 60 of each of the n pieces of calculation devices 30 trains the distributed learning model having a configuration same as that of the learning model, using the received m pieces of distribution training data.")
wherein the server entity as part of performing the iterative learning process applies the inverse Tk −1 of the transform Tk to the computational results received from the agent entities.([¶0032] "The learning system 10 includes a management device 20" [¶0100] "the parameter restoration unit 66 substitutes the corresponding distribution parameter group into the inverse function of a model expression represented by an equation using the result data as a variable and using the training data as a value" See FIG. 1 management device which comprises model generation device which is shown in FIG. 2 as comprising parameter restoration unit 66).
While one of ordinary skill in the art would recognize that neural network training is iterative in nature requiring a termination criteria, Matsumoto does not explicitly teach until a termination criterion is met.
Jiang, in the same field of endeavor, teaches until a termination criterion is met, ([p. 50 Algorithm 2] "number of iterations T").
Matsumoto as well as Jiang are directed towards secret sharing in distributed neural network training. Therefore, Matsumoto as well as Jiang are analogous art in the same field of endeavor. It would have been obvious before the effective filing date of the claimed invention to combine the teachings of Matsumoto with the teachings of Jiang by performing the distributed training loop iteratively. Jiang provides as additional motivation for combination ([p. 5] “one-time model averaging cannot ensure the accuracy of final model and thus we need iterations”). This motivation for combination also applies to the remaining claims which depend on this combination.
Regarding claim 46, the combination of Matsumoto and Jiang teaches The method according to claim 45, wherein the method further comprises configuring the agent entities with the secret key K (Matsumoto [¶0040] "The model generation device 40 also generates n pieces of shared parameter groups in which the restored parameter group of the learning model is kept secret by the distribution process of the secret sharing scheme" [¶0106] "the learning system 10 enables the n pieces of calculation devices 30 to train the learning model, while keeping secrecy of the training data from the n pieces of calculation devices 30." In Matsumoto the restored model parameter group is the operative secret parameterization of the model expression (the secret key))
over a secure channel established between the server entity and the agent entities. (Jiang [p. 50] "secure-two party addition […] as long as the encryption scheme is considered secure, the protocol is secure." [p. 50] "Our scheme is secure under the semi-honest threat model" See also FIG. 1).
Regarding claim 47, the combination of Matsumoto and Jiang teaches The method according to claim 45, wherein the secret key K is a function of any one or more of: a pseudo-random number, identifiers of user equipment in which the agent entities are provided, randomness extracted from hardware of a network node in which the server entity is provided, or a time-stamp. (Matsumoto [¶0071] "the data holder selects a field K to be a∈K. Subsequently, the data holder selects (K−1) pieces (1<K≤n) of elements (r1, r2, . . . , rk−1) of K at random. Subsequently, the data holder generates a polynomial of degree (K−1) (W(P)) in which a symbol a is used as an intercept, as indicated in the following equation (1)." [¶0073] "By performing the process described above, the data holder can safely distribute and save the original data (a) into the n numbers of servers (Si, S2, . . . , Sn) using the threshold secret sharing scheme.").
Regarding claim 48, the combination of Matsumoto and Jiang teaches The method according to claim 45, wherein the secret key K defines a sequential pattern of values to be applied by the agent entities to the computational results, and wherein the transform Tk is represented by the sequential pattern of values.(Matsumoto [¶0091] "the m×n pieces of training data into n pieces of groups each including m pieces of training data. For example, when X1, . . . , Xnm are data continuous in time series, the splitting unit 52 splits data into [X1, . . . , Xm], [Xm+1, . . . , X2m], . . . , [X(n−1)m+1, . . . , Xnm] such that the m pieces of training data included in one group are continuous in time series." [¶0096] "The model generation device 40 and each of the n pieces of calculation devices 30 share the configuration of the learning model and the distributed learning model." [¶0100] "a model expression represented by an equation using the result data as a variable and using the training data as a value" Matsumoto is explicit that the secret key K comprises a sequential pattern of result data and training data where Matsumoto is also explicit that the training data is an mxn sequential pattern and wherein the secret key K is used to define a sequential pattern of weights and biases).
Regarding claim 50, the combination of Matsumoto and Jiang teaches The method according to claim 45, wherein the transform Tk is the same for all the agent entities.(Matsumoto [¶0096] "The distributed learning model has a configuration same as that of the learning model. […] when the distribution training data is supplied, the same data as that of the supplied distribution training data is output.").
Regarding claim 52, the combination of Matsumoto and Jiang teaches The method according to claim 45, wherein the server entity during each iteration of the iterative learning process: provides a parameter vector of the computational task to the agent entities;(Matsumoto [¶0057] "The model secret sharing unit 72 generates n pieces of shared parameter groups for the parameter group of the learning model restored by the parameter restoration unit 66")
receives the computational results as a function of the parameter vector from the agent entities;(Matsumoto [¶0042] "Each of the n pieces of calculation devices 30 then transmits the calculated distribution result data to the inference device 42.")
obtains inverse transformed computational results by applying the inverse Tk −1 of the transform Tk to the computational results; and(Matsumoto [¶0100] " the parameter restoration unit 66 substitutes the corresponding distribution parameter group into the inverse function of a model expression represented by an equation using the result data as a variable and using the training data as a value, for each of the k1 pieces of calculation devices 30. Subsequently, the parameter restoration unit 66 restores the inverse function of the learning model using the k1 pieces of inverse functions")
updates the parameter vector as a function of an aggregate of the inverse transformed computational results.(Matsumoto [¶0100] "The parameter restoration unit 66 then generates a parameter group of the learning model, on the basis of the restored inverse function of the learning model." Matsumoto's threshold restoration aggregates the received parameter shares and generates the central model parameter group. The reconstructed parameter group is based on an aggregate of the inverse-processed agent reports).
Regarding claim 53, the combination of Matsumoto and Jiang teaches The method according to claim 45, wherein the method further comprises updating the secret key K for a next iteration of the iterative learning process, whereby a new transform is defined, the new transform having a new inverse.(Matsumoto [¶0098] "The inverse function of the equation representing the learning model is a function using the result data output from the learning model as a variable" Matsumoto is explicit that the inverse relates to the output of the model at each training iteration such that the transform/inverse is a new transform/inverse at every iteration).
Regarding claim 54, the combination of Matsumoto and Jiang teaches The method according to claim 45, further comprising updating the secret key K according to a pre-determined schedule known to the server entity and the agent entities.(Matsumoto [¶0099] "Subsequently, at S19, the parameter restoration unit 66 generates a parameter group of the learning model on the basis of the k1 pieces of distribution parameter groups received from the k1 pieces of calculation devices 30, by the restoration process of the secret sharing scheme." [¶0103] "Subsequently, at S22, the model secret sharing unit 72 generates n pieces of shared parameter groups" [¶0104] "Subsequently, at S23, the model transmission unit 74 transmits the corresponding shared parameter group among the n pieces of shared parameter groups, to each of the n pieces of calculation devices 30." See also FIG. 8 and 9 for the pre-determined schedule known to the server entity and agent entities).
Regarding claim 55, the combination of Matsumoto and Jiang teaches The method according to claim 45, wherein the method further comprises providing an indication to the agent entities as to whether or not to apply the transform Tk when reporting the computational results of the computational task to the server entity.(Matsumoto [¶0096] "The model generation device 40 and each of the n pieces of calculation devices 30 share the configuration of the learning model and the distributed learning model." [¶0100] "a model expression represented by an equation using the result data as a variable and using the training data as a value" Receiving the model share and distributed input operationally tells the calculation devices to perform the distributed transform. See also FIG. 14 where distribution training data ro shared parameter group could reasonably be interpreted as indications to the agent entities as to whether or not to apply the transform when reporting the computational results).
Regarding claim 56, the combination of Matsumoto and Jiang teaches The method according to claim 45, wherein the server entity is provided in a network node, (Matsumoto [¶0008] "The learning system includes a model generation device and n pieces (n is an integer equal to or greater than three) of calculation devices. The n pieces of calculation devices are connected to the model generation device via a network.")
and each of the agent entities is provided in a respective user equipment.(Jiang [p. 47] "To train a global model among mobile phone users, each user updates local model parameters and uploads the parameters").
Regarding claim 57, Matsumoto teaches A method for performing an iterative learning process with a server entity, the method being performed by an agent entity, the method comprising: ([¶0008] "A learning system according to embodiments trains a learning model. The learning system includes a model generation device and n pieces (n is an integer equal to or greater than three) of calculation devices" [¶0032] "The learning system 10 includes a management device 20" [¶0033] "Each of the n pieces of calculation devices 30 may be a server on the network" [¶0106] "the learning system 10 enables the n pieces of calculation devices 30 to train the learning model, while keeping secrecy of the training data from the n pieces of calculation devices 30.")
obtaining a secret key K that is associated with a computational task, wherein the secret key K defines a transform Tk to be used by the agent entity when reporting computational results of the computational task to the server entity;([¶0096] "The model generation device 40 and each of the n pieces of calculation devices 30 share the configuration of the learning model and the distributed learning model." [¶0100] "a model expression represented by an equation using the result data as a variable and using the training data as a value" The claimed secret key in Matsumoto is the secret parameterized model expression associated with the computational task. The model expression is task specific because the same predetermined model configuration is used by the model-generation device and each calculation device. Its parameter group is the secret mathematical information learned through the task.)
obtaining configuring in terms of the computational task from the server entity; and([¶0035] "the configuration of a learning model is determined in advance" [¶0052] "The share reception unit 58 of each of the n pieces of calculation devices 30 receives the m pieces of distribution training data from the model generation device 40" Matsumoto configures each agent with both components of the computational task: model configuration and task data. Each calculation device therefore knows what model to train and receives that particular data on which to train it)
performing the iterative learning process with the server entity([¶0008] "The learning system includes a model generation device" [¶0010] "The share reception unit receives the m pieces of distribution training data from the model generation device")
wherein the agent entity as part of performing the iterative learning process applies the transform Tk to the computational results before sending the computational results to the server entity.([¶0098] "at S18, the parameter reception unit 64 of the model generation device 40 receives the trained distribution parameter group from each of the k1 pieces of calculation devices 30 among the n pieces of calculation devices 30. In this example, the k1 pieces are the number of shares required for restoring the inverse function of the equation representing the learning model" The claimed secret key in Matusmoto is the secret parameterized model expression associated with the computational task (the trained/transformed distributed parameter groups sent back to the server for aggregation/inverse transform).).
However, Matsumoto does not explicitly teach until a termination criterion is met.
Jiang, in the same field of endeavor, teaches until a termination criterion is met, ([p. 50 Algorithm 2] "number of iterations T").
Matsumoto as well as Jiang are directed towards secret sharing in distributed neural network training. Therefore, Matsumoto as well as Jiang are analogous art in the same field of endeavor. It would have been obvious before the effective filing date of the claimed invention to combine the teachings of Matsumoto with the teachings of Jiang by performing the distributed training loop iteratively. Jiang provides as additional motivation for combination ([p. 5] “one-time model averaging cannot ensure the accuracy of final model and thus we need iterations”). This motivation for combination also applies to the remaining claims which depend on this combination.
Regarding claim 58, the combination of Matsumoto and Jiang teaches The method according to claim 57, wherein obtaining the secret key K comprises obtaining the secret key K from the server entity over a secure channel established between the agent entity and the server entity.(Jiang [p. 50] "secure-two party addition […] as long as the encryption scheme is considered secure, the protocol is secure." [p. 50] "Our scheme is secure under the semi-honest threat model" See also FIG. 1).
Regarding claim 59, the combination of Matsumoto and Jiang teaches The method according to claim 57, wherein the agent entity during each iteration of the iterative learning process: obtains a parameter vector of the computational problem from the server entity;(Matsumoto [¶0057] "The model secret sharing unit 72 generates n pieces of shared parameter groups for the parameter group of the learning model restored by the parameter restoration unit 66" See also FIG. 1)
determines the computational result of the computational task as a function of the obtained parameter vector for the iteration and of data locally obtained by the agent entity;(Matsumoto [¶0050] "the secret sharing unit 54 generates the distribution training data for each of the m pieces of training data included in the i-th group (i is any integer equal to or greater than one and equal to or less than n) among the n pieces of groups, using the i-th element (Pi) among n pieces of elements (P1, P2, . . . , Pi, . . . Pn), by the distribution process of the secret sharing scheme. By performing such a process, the secret sharing unit 54 can generate the m pieces of distribution training data corresponding to each of the n pieces of groups.")
obtains a transformed computational result by applying the transform Tk to the computational result; and(Matsumoto [¶0098] "at S18, the parameter reception unit 64 of the model generation device 40 receives the trained distribution parameter group from each of the k1 pieces of calculation devices 30 among the n pieces of calculation devices 30. In this example, the k1 pieces are the number of shares required for restoring the inverse function of the equation representing the learning model" The claimed secret key in Matsumoto is the secret parameterized model expression associated with the computational task (the trained/transformed distributed parameter groups sent back to the server for aggregation/inverse transform).)
reports the transformed computational result to the server entity.(Matsumoto [¶0010] "The parameter transmission unit transmits a trained distribution parameter group in the distributed learning model to the model generation device." See FIG. 1 and 2).
Regarding claim 60, the combination of Matsumoto and Jiang teaches The method according to claim 57, wherein further comprising obtaining an update of the secret key for a next iteration of the iterative learning process, whereby a new transform is defined.(Matsumoto [¶0098] "The inverse function of the equation representing the learning model is a function using the result data output from the learning model as a variable" Matsumoto is explicit that the inverse relates to the output of the model at each training iteration such that the transform/inverse is a new transform/inverse at every iteration).
Regarding claim 61, the combination of Matsumoto and Jiang teaches The method according to claim 57, further comprising updating the secret key according to a pre-determined schedule known to the agent entity and the server entity.(Matsumoto [¶0099] "Subsequently, at S19, the parameter restoration unit 66 generates a parameter group of the learning model on the basis of the k1 pieces of distribution parameter groups received from the k1 pieces of calculation devices 30, by the restoration process of the secret sharing scheme." [¶0103] "Subsequently, at S22, the model secret sharing unit 72 generates n pieces of shared parameter groups" [¶0104] "Subsequently, at S23, the model transmission unit 74 transmits the corresponding shared parameter group among the n pieces of shared parameter groups, to each of the n pieces of calculation devices 30." See also FIG. 8 and 9 for the pre-determined schedule known to the server entity and agent entities).
Regarding claim 62, the combination of Matsumoto and Jiang teaches The method according to claim 57, wherein the method further comprises obtaining an indication from the server entity as to whether or not to apply the transform Tk when reporting the computational results of the computational task to the server entity.(Matsumoto [¶0096] "The model generation device 40 and each of the n pieces of calculation devices 30 share the configuration of the learning model and the distributed learning model." [¶0100] "a model expression represented by an equation using the result data as a variable and using the training data as a value" Receiving the model share and distributed input operationally tells the calculation devices to perform the distributed transform. See also FIG. 14 where distribution training data ro shared parameter group could reasonably be interpreted as indications to the agent entities as to whether or not to apply the transform when reporting the computational results).
Regarding claim 63, claim 63 is directed towards a system for performing the method of claim 45. Therefore, the rejection applied to claim 45 also applies to claim 63. Claim 63 also recites additional elements A server entity comprising: a communications interface configured for direct or indirect communications with agent entities; and processing circuitry operative to perform an iterative learning process with the agent entities, based on the processing circuitry being configured to cause the server entity to: (Matsumoto [¶0140] "FIG. 18 is a diagram illustrating an example of a hardware configuration of the calculation device 30, the model generation device 40, and the inference device 42. For example, the calculation device 30 is implemented by an information processing device having a hardware configuration as illustrated in FIG. 18. The model generation device 40 and the inference device 42 are also implemented by the similar hardware configuration. The information processing device includes a central processing unit (CPU) 301, a random access memory (RAM) 302, a read only memory (ROM) 303, an operation input device 304, a display device 305, a storage device 306, and a communication device 307" See also FIG. 1 and FIG. 2).
Regarding claim 64, claim 64 is directed towards a system for performing the method of claim 57. Therefore, the rejection applied to claim 57 also applies to claim 64. Claim 64 also recites additional elements An agent entity comprising: a communications interface configured for direct or indirect communications with a server entity; and processing circuitry operative to perform an iterative learning process with the server entity, based on the processing circuitry being configured to cause the agent entity to: ([¶0140] "FIG. 18 is a diagram illustrating an example of a hardware configuration of the calculation device 30, the model generation device 40, and the inference device 42. For example, the calculation device 30 is implemented by an information processing device having a hardware configuration as illustrated in FIG. 18. The model generation device 40 and the inference device 42 are also implemented by the similar hardware configuration. The information processing device includes a central processing unit (CPU) 301, a random access memory (RAM) 302, a read only memory (ROM) 303, an operation input device 304, a display device 305, a storage device 306, and a communication device 307" See also FIG. 1 and FIG. 2).
Claim 49 is rejected under U.S.C. §103 as being unpatentable over the combination of Matsumoto and Jiang and in further view of Suresh (US20180089587A1).
Regarding claim 49, the combination of Matsumoto and Jiang teaches The method according to claim 45.
However, the combination of Matsumoto and Jiang doesn't explicitly teach wherein the transform Tk is represented by a matrix Lk
having an inverse Lk −1,
and wherein the computational results received from the agent entities are multiplied with the inverse Lk −1 of the matrix Lk when the inverse Tk −1 of the transform Tk is applied to the computational results.
Suresh, in the same field of endeavor, teaches the transform Tk is represented by a matrix Lk ([¶0157] "The client computing device 230 can further include a rotater 242. The rotater 242 can rotate a vector by a random rotation matrix (e.g., by multiplying the vector by the matrix).")
having an inverse Lk −1, ([¶0176] "At 514, the server computing device de-rotates the mean rotated vector by an inverse random rotation matrix to obtain a mean de-rotated vector. For example, the inverse random rotation matrix can be the inverse of the random rotation matrix used at 504.")
and wherein the computational results received from the agent entities are multiplied with the inverse Lk −1 of the matrix Lk when the inverse Tk −1 of the transform Tk is applied to the computational results. ([¶0177] "The method 500 can include generating, by the server computing device, the inverse random rotation matrix based at least in part on the seed. [...] the operations illustrated at 512 and 514 can be performed in reverse order, such that the vectors are individually de-rotated prior to taking the mean.").
The combination of Matsumoto and Jiang as well as Suresh are directed towards privatizing training data in distributed neural network training. Therefore, the combination of Matsumoto and Jiang as well as Suresh are analogous art in the same field of endeavor. It would have been obvious before the effective filing date of the claimed invention to combine the teachings of the combination of Matsumoto and Jiang with the teachings of Suresh by applying an invertible rotation matrix as the transform. Suresh provides as additional motivation for combination ([¶0020] “performing the random rotation prior to quantization can significantly reduce the quantization error, thereby leading to improved communication efficiency.”).
Claim 51 is rejected under U.S.C. §103 as being unpatentable over the combination of Matsumoto and Jiang and in further view of Bonawitz (“Practical Secure Aggregation for Federated Learning on User-Held Data”, 2016).
Regarding claim 51, the combination of Matsumoto and Jiang teaches The method according to claim 45.
However, the combination of Matsumoto and Jiang doesn't explicitly teach wherein the transform Tk defines a sequence zk of pseudo-random noise, seeded by the secret key K,
to be added to the computational results by the agent entities,
wherein the sequence zk of pseudo-random noise for a first of the agent entities and for a second of the agent entities have identical values but with opposite signs,
and wherein the sequences zk of pseudo-random noise for all the agent entities sum to zero.
Bonawitz, in the same field of endeavor, teaches the transform Tk defines a sequence zk of pseudo-random noise, seeded by the secret key K, ([p. 4] "a single secret value may be expanded to a vector of pseudorandom values by using it to seed a cryptographically secure pseudorandom generator (PRG) […] pu,v = PRG(su,v)")
to be added to the computational results by the agent entities, ([p. 3] "When a user computes yu, she only includes those perturbations related to surviving users; that is, yu = xu + v∈U1 pu,v (mod R)")
wherein the sequence zk of pseudo-random noise for a first of the agent entities and for a second of the agent entities have identical values but with opposite signs, ([p. 4] "take pu,v = PRG(su,v) for u < v, pu,v = −PRG(su,v) for u >v,andpu,v = 0for u = v" Bonawitz explicitly defines the pairwise perturbations according to the user's ordering where the two agents use the identical pseudorandom sequence with one applying the positive and the other applying the negative sequence)
and wherein the sequences zk of pseudo-random noise for all the agent entities sum to zero.([p. 3] "the resulting sum will be masked by the perturbations that yu would have cancelled […] all perturbations cancel out:" [p. 4] "pu,v = 0 for u = v").
The combination of Matsumoto and Jiang as well as Bonawitz are directed towards privatizing training data in distributed neural network training. Therefore, the combination of Matsumoto and Jiang as well as Bonawitz are analogous art in the same field of endeavor. It would have been obvious before the effective filing date of the claimed invention to combine the teachings of the combination of Matsumoto and Jiang with the teachings of Bonawitz by applying invertible pseudo-random noise. Bonawitz provides as additional motivation for combination ([p. 4] “the protocol meaningfully increases security (by protecting against anything less than an actively malicious attack by the server) and provides forward secrecy”).
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure. Guo (“Secure Weighted Aggregation for Federated Learning”, 2021) is directed towards using secret sharing in a distributed training environment.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to SIDNEY VINCENT BOSTWICK whose telephone number is (571)272-4720. The examiner can normally be reached M-F 7:30am-5:00pm EST.
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Miranda Huang can be reached on (571)270-7092. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/SIDNEY VINCENT BOSTWICK/Examiner, Art Unit 2124