DETAILED ACTION
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 .
This action is responsive to the Application filed on July 8, 2024. Claims 1-11 are pending in the case. Claims 1 and 7 are the independent claims.
This action is non-final.
Claim Interpretation
The following is a quotation of 35 U.S.C. 112(f):
(f) Element in Claim for a Combination. – An element in a claim for a combination may be expressed as a means or step for performing a specified function without the recital of structure, material, or acts in support thereof, and such claim shall be construed to cover the corresponding structure, material, or acts described in the specification and equivalents thereof.
The following is a quotation of pre-AIA 35 U.S.C. 112, sixth paragraph:
An element in a claim for a combination may be expressed as a means or step for performing a specified function without the recital of structure, material, or acts in support thereof, and such claim shall be construed to cover the corresponding structure, material, or acts described in the specification and equivalents thereof.
The claims in this application are given their broadest reasonable interpretation using the plain meaning of the claim language in light of the specification as it would be understood by one of ordinary skill in the art. The broadest reasonable interpretation of a claim element (also commonly referred to as a claim limitation) is limited by the description in the specification when 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, is invoked.
As explained in MPEP § 2181, subsection I, claim limitations that meet the following three-prong test will be interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph:
(A) the claim limitation uses the term “means” or “step” or a term used as a substitute for “means” that is a generic placeholder (also called a nonce term or a non-structural term having no specific structural meaning) for performing the claimed function;
(B) the term “means” or “step” or the generic placeholder is modified by functional language, typically, but not always linked by the transition word “for” (e.g., “means for”) or another linking word or phrase, such as “configured to” or “so that”; and
(C) the term “means” or “step” or the generic placeholder is not modified by sufficient structure, material, or acts for performing the claimed function.
Use of the word “means” (or “step”) in a claim with functional language creates a rebuttable presumption that the claim limitation is to be treated in accordance with 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph. The presumption that the claim limitation is interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, is rebutted when the claim limitation recites sufficient structure, material, or acts to entirely perform the recited function.
Absence of the word “means” (or “step”) in a claim creates a rebuttable presumption that the claim limitation is not to be treated in accordance with 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph. The presumption that the claim limitation is not interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, is rebutted when the claim limitation recites function without reciting sufficient structure, material or acts to entirely perform the recited function.
Claim limitations in this application that use the word “means” (or “step”) are being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, except as otherwise indicated in an Office action. Conversely, claim limitations in this application that do not use the word “means” (or “step”) are not being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, except as otherwise indicated in an Office action.
This application includes one or more claim limitations that do not use the word “means,” but are nonetheless being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, because the claim limitation(s) uses a generic placeholder that is coupled with functional language without reciting sufficient structure to perform the recited function and the generic placeholder is not preceded by a structural modifier. Such claim limitation(s) is/are: “devices, configured to respectively perform machine learning…”, “computation module, configured to perform an aggregation algorithm…,” “contribution calculation module…configured to perform the aggregation algorithm,” and “profit-sharing module…configured to calculate a profit-sharing ratio…” in claims 7-11.
Because this/these claim limitation(s) is/are being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, it/they is/are being interpreted to cover the corresponding structure described in the specification as performing the claimed function, and equivalents thereof.
If applicant does not intend to have this/these limitation(s) interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, applicant may: (1) amend the claim limitation(s) to avoid it/them being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph (e.g., by reciting sufficient structure to perform the claimed function); or (2) present a sufficient showing that the claim limitation(s) recite(s) sufficient structure to perform the claimed function so as to avoid it/them being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph.
Claim Rejections – 35 USC § 101
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 1-11 are rejected under 35 U.S.C. 101 because the claimed invention is directed to an abstract idea (mental steps) without significantly more. This judicial exception is not integrated into a practical application because any additional elements amount to implementing the abstract idea on a generic computer. The claim(s) does/do not include additional elements that are sufficient to amount to significantly more than the judicial exception.
Regarding independent claims 1 and 11, and relying on the evaluation flowchart in MPEP 2106:
Step 1 (Is the claim to a process, machine, manufacture, or composition of matter?): Yes. Claim 1 is a method (process). Claim 7 is a system (machine).
Step 2a Prong One (Does the claim recite an abstract idea?): Yes. Claims 1 and 7 recite:
comparing the value of the first contribution model with the value of the federated model to generate a contribution of the at least one first trained model parameter (a mental process of evaluation);
(in claim 7 only) calculate a profit-sharing ratio for the at least one first trained model parameter in the federated model based on the contribution (a mental process of evaluation).
Under the broadest reasonable interpretation, these steps may be performed mentally, using mental observation and mental determination, including by a human using a physical aid such as pen and paper, including a human mentally performing observations and mentally performing mathematical calculations, and therefore correspond to the Mental Processes grouping.
Step 2a Prong Two (Does the claim recite additional elements that integrate the judicial exception into a practical application?): No. Claims 1 and 7 additionally recite:
a central server (mere instructions to apply the exception using generic computer components as discussed in MPEP 2106.05(f))
receiving a plurality of trained model parameters (insignificant extra-solution activity as discussed in MPEP 2106.05(g)),
wherein the trained model parameters are generated by machine learning on a plurality of local datasets (mere instructions to apply the exception using generic computer components as discussed in MPEP 2106.05(f))
the central server performing an aggregation algorithm on the trained model parameters to generate and store a federated model (mere instructions to apply the exception using generic computer components as discussed in MPEP 2106.05(f))
the central server performing the aggregation algorithm on the trained model parameters, excluding or simulating to exclude at least one first trained model parameter, to generate a first contribution model (mere instructions to apply the exception using generic computer components as discussed in MPEP 2106.05(f))
the central server comparing… (mere instructions to apply the exception using generic computer components as discussed in MPEP 2106.05(f))
receive the contribution (insignificant extra-solution activity as discussed in MPEP 2106.05(g)),
(claim 7 only) a plurality of artificial intelligence model training devices, configured to respectively perform machine learning on a plurality of local datasets to generate a plurality trained model parameters; and a central server, connected to the artificial intelligence model training devices…the central server comprising: a computation module configured to perform (the aggregation algorithm above)…a contribution calculation module configured to perform (the aggregation algorithm and comparing above)…a profit-sharing module connected to the contribution calculation module to (perform the receiving and calculating above) (mere instructions to apply the exception using generic computer components as discussed in MPEP 2106.05(f)).
Therefore, in view of the considerations set forth in MPEP 2106.04(d), 2106.05(a)-(c) and (e)-(h), the additional elements as disclosed above alone or in combination do not integrate the judicial exception into a practical application as they are mere insignificant extra solution activity, combined with implementing the abstract idea using generic computer components.
Step 2b (Does the claim recite additional elements that amount to siqnificantly more than the judicial exception): No. Relying on the same analysis as Step 2a Prong Two (see MPEP 2106.05.I.A: Limitations that the courts have found not to be enough to qualify as “significantly more” when recited in a claim with a judicial exception include:…Adding the words “apply it” (or an equivalent) with the judicial exception, or mere instructions to implement an abstract idea on a computer, e.g., a limitation indicating that a particular function such as creating and maintaining electronic records is performed by a computer, as discussed in Alice Corp., 573 U.S. at 225-26, 110 USPQ2d at 1984 (see MPEP 2106.05(f));…Simply appending well-understood, routine, conventional activities previously known to the industry, specified at a high level of generality, to the judicial exception...; Adding insignificant extra-solution activity to the judicial exception, as discussed in MPEP 2106.05(g);…)), claims 1 and 7 do not recite any additional elements that amount to significantly more than the abstract idea. As discussed above, Claims 1 and 7 recite:
a central server (mere instructions to apply the exception using generic computer components as discussed in MPEP 2106.05(f))
receiving a plurality of trained model parameters (insignificant extra-solution activity as discussed in MPEP 2106.05(g)),
wherein the trained model parameters are generated by machine learning on a plurality of local datasets (mere instructions to apply the exception using generic computer components as discussed in MPEP 2106.05(f))
the central server performing an aggregation algorithm on the trained model parameters to generate and store a federated model (mere instructions to apply the exception using generic computer components as discussed in MPEP 2106.05(f))
the central server performing the aggregation algorithm on the trained model parameters, excluding or simulating to exclude at least one first trained model parameter, to generate a first contribution model (mere instructions to apply the exception using generic computer components as discussed in MPEP 2106.05(f))
the central server comparing… (mere instructions to apply the exception using generic computer components as discussed in MPEP 2106.05(f))
receive the contribution (insignificant extra-solution activity as discussed in MPEP 2106.05(g)),
(claim 7 only) a plurality of artificial intelligence model training devices, configured to respectively perform machine learning on a plurality of local datasets to generate a plurality trained model parameters; and a central server, connected to the artificial intelligence model training devices…the central server comprising: a computation module configured to perform (the aggregation algorithm above)…a contribution calculation module configured to perform (the aggregation algorithm and comparing above)…a profit-sharing module connected to the contribution calculation module to (perform the receiving and calculating above) (mere instructions to apply the exception using generic computer components as discussed in MPEP 2106.05(f)).
The additional elements as discussed above, in combination with the abstract idea, are not sufficient to amount to significantly more than the judicial exception as they are well, understood, routine and conventional activity as disclosed in combination with generic computer functions and components used to implement the abstract idea.
Regarding dependent claims 2 and 8:
Step 2a Prong One: incorporates the rejection of claims 1 and 7
Step 2a Prong Two: the claims additionally recite wherein the trained model parameters are generated by multiple machine learning training on the local datasets, the central server performs the aggregation algorithm on the trained model parameters from each machine learning training to generate the federated model, and the central server performs the aggregation algorithm on the trained model parameters, excluding the at least one first trained model parameter from the last machine learning training, to generate the first contribution model; claim 8 additionally recites these steps being performed by the artificial intelligence model training devices, the computation module, and the contribution calculation module (mere instructions to apply the exception using generic computer components as discussed in MPEP 2106.05(f)).
Step 2b: the claims additionally recite wherein the trained model parameters are generated by multiple machine learning training on the local datasets, the central server performs the aggregation algorithm on the trained model parameters from each machine learning training to generate the federated model, and the central server performs the aggregation algorithm on the trained model parameters, excluding the at least one first trained model parameter from the last machine learning training, to generate the first contribution model; claim 8 additionally recites these steps being performed by the artificial intelligence model training devices, the computation module, and the contribution calculation module (mere instructions to apply the exception using generic computer components as discussed in MPEP 2106.05(f)).
Regarding dependent claims 3 and 9:
Step 2a Prong One: incorporates the rejection of claims 1 and 7.
Step 2a Prong Two: the claims additionally recite wherein the trained model parameters are generated by multiple machine learning training on the local datasets, the central server performs the aggregation algorithm from each machine learning training to generate the federated model, and the central server performs the aggregation algorithm on the trained model parameters, simulating to exclude the at least one first trained model parameter from each machine learning training, to generate the first contribution model; claim 9 additionally recites these steps being performed by the artificial intelligence model training devices, the computation module, and the contribution calculation module (mere instructions to apply the exception using generic computer components as discussed in MPEP 2106.05(f)).
Step 2b: the claims additionally recite wherein the trained model parameters are generated by multiple machine learning training on the local datasets, the central server performs the aggregation algorithm from each machine learning training to generate the federated model, and the central server performs the aggregation algorithm on the trained model parameters, simulating to exclude the at least one first trained model parameter from each machine learning training, to generate the first contribution model; claim 9 additionally recites these steps being performed by the artificial intelligence model training devices, the computation module, and the contribution calculation module (mere instructions to apply the exception using generic computer components as discussed in MPEP 2106.05(f)).
Regarding dependent claims 4 and 11:
Step 2a Prong One: incorporates the rejection of claims 1 and 7. The claims further recite compares the value of each corresponding first contribution model with the value of each corresponding federated model for each machine learning training and performs a averaging or weighted averaging calculation to generate an average contribution as the contribution of the at least one first trained model parameter (a mental process of determination).
Step 2a Prong Two: the claims additionally recite wherein the trained model parameters are generated by multiple machine learning training on the local datasets, the central server performs the aggregation algorithm separately for each machine learning training to generate a corresponding federated model for each machine learning training, the central server performs the aggregation algorithm on the trained model parameters, excluding the at least one first trained model parameter from each machine learning training, to generate a corresponding first contribution model for each machine learning training, the central server respectively compares…; claim 11 additionally recites these steps being performed by the artificial intelligence model training devices, the computation module, and the contribution calculation module (mere instructions to apply the exception using generic computer components as discussed in MPEP 2106.05(f)).
Step 2b: the claims additionally recite wherein the trained model parameters are generated by multiple machine learning training on the local datasets, the central server performs the aggregation algorithm separately for each machine learning training to generate a corresponding federated model for each machine learning training, the central server performs the aggregation algorithm on the trained model parameters, excluding the at least one first trained model parameter from each machine learning training, to generate a corresponding first contribution model for each machine learning training, the central server respectively compares…; claim 11 additionally recites these steps being performed by the artificial intelligence model training devices, the computation module, and the contribution calculation module (mere instructions to apply the exception using generic computer components as discussed in MPEP 2106.05(f)).
Regarding dependent claims 5 and 10:
Step 2a Prong One: incorporates the rejection of claims 1 and 7.
Step 2a Prong Two: the claims additionally recite wherein the trained model parameters are generated by multiple machine learning training on the local datasets, the central server performs the aggregation algorithm for each machine learning training to generate the federated model, the central server performs the aggregation algorithm on the trained model parameters, simulating to exclude the at least one first trained model parameter from the last to the kth previous machine learning training, to generate the first contribution model, wherein k is an integer between 1 and the number of times the first trained model parameter participated in the aggregation algorithm of the federated model; claim 10 additionally recites these steps being performed by the artificial intelligence model training devices, the computation module, and the contribution calculation module (mere instructions to apply the exception using generic computer components as discussed in MPEP 2106.05(f)).
Step 2b: the claims additionally recite wherein the trained model parameters are generated by multiple machine learning training on the local datasets, the central server performs the aggregation algorithm for each machine learning training to generate the federated model, the central server performs the aggregation algorithm on the trained model parameters, simulating to exclude the at least one first trained model parameter from the last to the kth previous machine learning training, to generate the first contribution model, wherein k is an integer between 1 and the number of times the first trained model parameter participated in the aggregation algorithm of the federated model; claim 10 additionally recites these steps being performed by the artificial intelligence model training devices, the computation module, and the contribution calculation module (mere instructions to apply the exception using generic computer components as discussed in MPEP 2106.05(f)).
Regarding dependent claim 6:
Step 2a Prong One: incorporates the rejection of claim 1; the claim further recites judging whether the contribution of the at least one first trained model parameter is positive or negative; and if the contribution is negative… (a mental process of evaluation).
Step 2a Prong Two: the claim additionally recites the judging step is performed by the central server…the central server replaces the federated model with the first contribution model as an updated federated model (mere instructions to apply the exception using generic computer components as discussed in MPEP 2106.05(f)).
Step 2b: the claim additionally recites the judging step is performed by the central server…the central server replaces the federated model with the first contribution model as an updated federated model (mere instructions to apply the exception using generic computer components as discussed in MPEP 2106.05(f)).
Therefore, in view of the considerations set forth in MPEP 2106.04(d), 2106.05(a)-(c) and (e)-(h), the additional elements as recited in the dependent claims discussed above alone or in combination do not integrate the judicial exception into a practical application as they are mere insignificant extra solution activity, combined with implementing the abstract idea using generic computer components, and limitations describing a field of use or technological environment. The additional elements as discussed above, in combination with the abstract idea, are not sufficient to amount to significantly more than the judicial exception as they are well, understood, routine and conventional activity as disclosed in combination with generic computer functions and components used to implement the abstract idea, and limitations describing a field of use or technological environment.
Claim Rejections – 35 USC § 102
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 the appropriate paragraphs of 35 U.S.C. 102 that form the basis for the rejections under this section made in this Office action:
A person shall be entitled to a patent unless –
(a)(1) the claimed invention was patented, described in a printed publication, or in public use, on sale or otherwise available to the public before the effective filing date of the claimed invention.
(a)(2) the claimed invention was described in a patent issued under section 151, or in an application for patent published or deemed published under section 122(b), in which the patent or application, as the case may be, names another inventor and was effectively filed before the effective filing date of the claimed invention.
Claims 1, 2, 4, and 6 are rejected under 35 U.S.C. 102(a)(1) as being anticipated by Milletari et al. (US 11804050 B1).
With respect to claim 1, Milletari teaches a federated learning contribution calculation method, comprising the steps of:
a central server receiving a plurality of trained model parameters, wherein the trained model parameters are generated by machine learning on a plurality of local datasets (e.g. col. 3 lines 3-9, training nodes 102 and training aggregator 104 implemented/including hardware/software; col. 4 lines 16-33, Fig. 1A, collaborative training environment implemented as federated inference/learning platform; MLM 108 is federated machine learning model collaboratively trained; MLM 108 is a central model; training aggregator 104 receiving information from training nodes including parameters of machine learning models 106 which are local models; col. 6 lines 30-31, servers hosting training aggregator 104);
the central server performing an aggregation algorithm on the trained model parameters to generate and store a federated model (e.g. col. 4 lines 16-23, federated learning platform; MLM 108 includes federated machine learning model collaboratively trained using nodes 102 and models 106; MLM 108 is a central model; col. 4 lines 49-53, aggregating values of parameters from training nodes 102 to determine values of parameters of machine learning model 108; i.e. an initial version of the central model may be created by aggregating parameters from all participating local models/nodes);
the central server performing the aggregation algorithm on the trained model parameters, excluding or simulating to exclude at least one first trained model parameter, to generate a first contribution model (e.g. col. 15 line 57-col. 16 line 7, determining values to parameters of model 108 by aggregating one or more values of corresponding parameters from training nodes 102 by excluding one or more values of one or more corresponding parameters from one or more of training nodes 102; col. 17 lines 18-47, banning training nodes 102 from collaborative training; may be with respect to particular portions of model 108 or with respect to model 108 in its entirety; ban results in values from training node 102 for model 106 not being used, including in aggregating parameters of training nodes 102 for model 108; ban may be permanent or temporary; i.e. a subsequent/future version of the central model may be created by aggregating parameters of some of the participating local models/nodes while excluding parameters or subsets of parameters of other local models/nodes); and
the central server comparing the value of the first contribution model with the value of the federated model to generate a contribution of the at least one first trained model parameter (e.g. col. 16 line 66-col. 17 line 12, contribution determiner computing and tracking contribution scores of training nodes over multiple iterations; determining contributions post hoc, such as by comparing a contribution for one state of machine learning model 108 to one or more future states of machine learning model 108 after additional training, allowing contribution determiner to identify meaningful contributions to training that may not be readily identified from a current state of training; i.e. comparing a first state of the central model, such as an initial state which is based on aggregating parameters from all participating models/nodes, to a second/future state of the central model, such as a future state which is based on aggregating some parameter and excluding other parameters of participating models/nodes, in order to determine a contribution metric/value).
With respect to claim 2, Milletari teaches all of the limitations of claim 1 as previously discussed, and further teaches wherein
the trained model parameters are generated by multiple machine learning training on the local datasets (e.g. col. 3 lines 38-44, Fig. 1A, training nodes 102 using motel trainers 110 and model managers 112 to train machine learning models 106),
the central server performs the aggregation algorithm on the trained model parameters from each machine learning training to generate the federated model (e.g. col. 4 lines 16-23, federated learning platform; MLM 108 includes federated machine learning model collaboratively trained using nodes 102 and models 106; MLM 108 is a central model; col. 4 lines 49-53, aggregating values of parameters from training nodes 102 to determine values of parameters of machine learning model 108; i.e. an initial version of the central model may be created by aggregating parameters from all participating local models/nodes), and
the central server performs the aggregation algorithm on the trained model parameters, excluding the at least one first trained model parameter from the last machine learning training, to generate the first contribution model (e.g. col. 15 line 57-col. 16 line 7, determining values to parameters of model 108 by aggregating one or more values of corresponding parameters from training nodes 102 by excluding one or more values of one or more corresponding parameters from one or more of training nodes 102; col. 17 lines 18-47, banning training nodes 102 from collaborative training; may be with respect to particular portions of model 108 or with respect to model 108 in its entirety; ban results in values from training node 102 for model 106 not being used, including in aggregating parameters of training nodes 102 for model 108; ban may be permanent or temporary; i.e. a subsequent/future version of the central model may be created by aggregating parameters of some of the participating local models/nodes while excluding parameters or subsets of parameters of other local models/nodes).
With respect to claim 4, Milletari teaches all of the limitations of claim 1 as previously discussed, and further teaches wherein
the trained model parameters are generated by multiple machine learning training on the local datasets (e.g. col. 3 lines 38-44, Fig. 1A, training nodes 102 using motel trainers 110 and model managers 112 to train machine learning models 106),
the central server performs the aggregation algorithm separately for each machine learning training to generate a corresponding federated model for each machine learning training (e.g. col. 4 lines 16-23, federated learning platform; MLM 108 includes federated machine learning model collaboratively trained using nodes 102 and models 106; MLM 108 is a central model; col. 4 lines 49-53, aggregating values of parameters from training nodes 102 to determine values of parameters of machine learning model 108; col. 5 lines 13-51, collaboratively training model 108 over multiple iterations; each iteration including each node 102 individually training corresponding model 106 to determine respective parameter values; each model 106 may diverge through individual training; training of each model trainer over predetermined period/training epoch which may be same or different between trainers; for each iteration after period of time, providing models or portions thereof to aggregator and aggregating received models/portions; i.e. an initial version of the central model may be created by aggregating parameters from all participating local models/nodes; each individual local model is individually/separately trained at each corresponding node over a period of separate iterations/epochs, and for each separate iteration/epoch, aggregation is performed for each separate/individual model to generate the corresponding central/federated model),
the central server performs the aggregation algorithm on the trained model parameters, excluding the at least one first trained model parameter from each machine learning training, to generate a corresponding first contribution model for each machine learning training (e.g. col. 15 line 57-col. 16 line 7, determining values to parameters of model 108 by aggregating one or more values of corresponding parameters from training nodes 102 by excluding one or more values of one or more corresponding parameters from one or more of training nodes 102; col. 17 lines 18-47, banning training nodes 102 from collaborative training; may be with respect to particular portions of model 108 or with respect to model 108 in its entirety; ban results in values from training node 102 for model 106 not being used, including in aggregating parameters of training nodes 102 for model 108; ban may be permanent or temporary; i.e. a subsequent/future version of the central model may be created by aggregating parameters of some of the participating local models/nodes while excluding parameters or subsets of parameters of other local models/nodes),
the central server respectively compares the value of each corresponding first contribution model with the value of each corresponding federated model for each machine learning training (e.g. col. 16 line 66-col. 17 line 12, contribution determiner computing and tracking contribution scores of training nodes over multiple iterations; determining contributions post hoc, such as by comparing a contribution for one state of machine learning model 108 to one or more future states of machine learning model 108 after additional training, allowing contribution determiner to identify meaningful contributions to training that may not be readily identified from a current state of training; i.e. comparing a first state of the central model, such as an initial state which is based on aggregating parameters from all participating models/nodes, to a second/future state of the central model, such as a future state which is based on aggregating some parameter and excluding other parameters of participating models/nodes, in order to determine a contribution metric/value) and
performs a averaging or weighted averaging calculation to generate an average contribution as the contribution of the at least one first trained model parameter (e.g. col. 17 lines 1-4, computing and tracking contribution scores of nodes 102 over multiple iterations such as using an average, running average, or other running contribution score metric).
With respect to claim 6, Milletari teaches all of the limitations of claim 1 as previously discussed, and further teaches further comprising the steps of: the central server judging whether the contribution of the at least one first trained model parameter is positive or negative; and if the contribution is negative, the central server replaces the federated model with the first contribution model as an updated federated model (e.g. col. 17 lines 16-60, using contributions/contribution scores to ban corresponding nodes from collaborative training, i.e. from one or more future/subsequent iterations of collaborative training; ban may be with respect to particular portions of models or in their entirety, and may be for limited time or permanent; ban results in values from node 102 note being used for various purposes including aggregating parameters of nodes 102; ban based on determining contribution score fails to exceed a threshold value; using contributions/contribution scores to determine weights for subsequent iterations of model 108; i.e. based on a contribution/contribution score failing to exceed a threshold value (analogous to judging whether the contribution of the parameter is positive or negative, that is above or below the threshold), the corresponding node/portion of model of the node may be banned/excluded from use in aggregation to create the subsequent iteration of the federated/central model, where this subsequent iteration of the federated/central model excludes the corresponding parameter values (and is therefore analogous to the first contribution model), and where this subsequent iteration of the federated/central model replaces a current iteration of the federated/central model during at least the subsequent iteration (analogous to replacing the federated model (created aggregating parameters from all nodes/models) with the first contribution model (created aggregating some parameters and excluding other parameters from corresponding nodes/models) as an updated federated model (i.e. where this update occurs in the subsequent iteration/round of federated learning)).
Claim Rejections – 35 USC § 103
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 set forth in Graham v. John Deere Co., 383 U.S. 1, 148 USPQ 459 (1966), that are applied 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.
This application currently names joint inventors. In considering patentability of the claims under pre-AIA 35 U.S.C. 103(a), the examiner presumes that the subject matter of the various claims was commonly owned at the time any inventions covered therein were made absent any evidence to the contrary. Applicant is advised of the obligation under 37 CFR 1.56 to point out the inventor and invention dates of each claim that was not commonly owned at the time a later invention was made in order for the examiner to consider the applicability of pre-AIA 35 U.S.C. 103(c) and potential pre-AIA 35 U.S.C. 102€, (f) or (g) prior art under pre-AIA 35 U.S.C. 103(a).
Claims 7, 8, and 11 are rejected under 35 U.S.C. 103 as being unpatentable over Milletari in view of Yu et al. (US 20220383202 A1).
With respect to claim 7, Milletari teaches a federated learning contribution calculation and profit-sharing system, comprising:
a plurality of artificial intelligence model training devices, configured to respectively perform machine learning on a plurality of local datasets to generate a plurality trained model parameters (e.g. col. 3 lines 3-9, training nodes 102 and training aggregator 104 implemented/including hardware/software; col. 4 lines 16-33,Fig. 1A, training nodes 102 training local models 106 and sending information including parameters of machine learning models 106 to training aggregator 104); and
a central server, connected to the artificial intelligence model training devices to receive the trained model parameters (e.g. col. 3 lines 3-9, training nodes 102 and training aggregator 104 implemented/including hardware/software; col. 4 lines 16-33, Fig. 1A, collaborative training environment implemented as federated inference/learning platform; MLM 108 is federated machine learning model collaboratively trained; MLM 108 is a central model; training aggregator 104 receiving information from training nodes including parameters of machine learning models 106 which are local models; col. 6 lines 30-31, servers hosting training aggregator 104), the central server comprising:
a computation module, configured to perform an aggregation algorithm to the trained model parameters to generate a federated model (e.g. col. 4 lines 16-23, federated learning platform; MLM 108 includes federated machine learning model collaboratively trained using nodes 102 and models 106; MLM 108 is a central model; col. 4 lines 49-53, aggregating values of parameters from training nodes 102 to determine values of parameters of machine learning model 108);
a contribution calculation module connected to the computation module, configured to perform the aggregation algorithm on the trained model parameters, excluding or simulating to exclude at least one first trained model parameter, to generate a first contribution model (e.g. col. 15 line 57-col. 16 line 7, determining values to parameters of model 108 by aggregating one or more values of corresponding parameters from training nodes 102 by excluding one or more values of one or more corresponding parameters from one or more of training nodes 102; col. 17 lines 18-47, banning training nodes 102 from collaborative training; may be with respect to particular portions of model 108 or with respect to model 108 in its entirety; ban results in values from training node 102 for model 106 not being used, including in aggregating parameters of training nodes 102 for model 108; ban may be permanent or temporary; i.e. a subsequent/future version of the central model may be created by aggregating parameters of some of the participating local models/nodes while excluding parameters or subsets of parameters of other local models/nodes), and
configured to compare the value of the first contribution model with the value of the federated model to generate a contribution for the at least one first trained model parameter (e.g. col. 16 line 66-col. 17 line 12, contribution determiner computing and tracking contribution scores of training nodes over multiple iterations; determining contributions post hoc, such as by comparing a contribution for one state of machine learning model 108 to one or more future states of machine learning model 108 after additional training, allowing contribution determiner to identify meaningful contributions to training that may not be readily identified from a current state of training; i.e. comparing a first state of the central model, such as an initial state which is based on aggregating parameters from all participating models/nodes, to a second/future state of the central model, such as a future state which is based on aggregating some parameter and excluding other parameters of participating models/nodes, in order to determine a contribution metric/value); and
a reward-sharing module connected to the contribution calculation module to receive the contribution, the reward-sharing module being configured to calculate a reward-sharing ratio for the at least one first trained model parameter in the federated model based on the contribution (e.g. col. 17 lines 13-16, using amounts of contribution/contribution scores to reward corresponding training nodes 102 for collaborative training).
Milletari does not explicitly disclose that the reward-sharing module is a profit-sharing module and that the reward-sharing ratio is a profit-sharing ratio. However, Yu teaches that the reward-sharing module is a profit-sharing module and that the reward-sharing ratio is a profit-sharing ratio (e.g. paragraph 0033, allocating generated profit to participants based on contributions; profit is equal to contribution of participant for specific phase of training and percentage of training, where contributions for participants are fractions of 1 and add up to 1; paragraph 0038, calculating contribution scores of clients in each duration and summing contribution scores of different durations for each client; paragraph 0039, profit allocation ratio).
Accordingly, it would have been obvious to one of ordinary skill in the art before the effective filing date of the invention having the teachings of Milletari and Yu in front of him to have modified the teachings of Milletari (directed to collaboratively training machine learning models based on comparing accuracy of model parameters), to incorporate the teachings of Yu (directed to evaluating a contribution of participants in federated learning) to include the capability to calculate the reward (of Milletari) as a profit-sharing ratio (as taught by Yu). One of ordinary skill would have been motivated to perform such a modification in order provide for proper allocation of profits to federated learning participants as described in Yu (paragraphs 0006-0007).
With respect to claim 8, Milletari in view of Yu teaches all of the limitations of claim 7 as previously discussed, and Milletari further teaches
wherein the artificial intelligence model training devices respectively perform multiple machine learning training on the local datasets (e.g. col. 3 lines 38-44, Fig. 1A, training nodes 102 using motel trainers 110 and model managers 112 to train machine learning models 106),
the computation module is configured to perform the aggregation algorithm for each machine learning training to generate the federated model (e.g. col. 4 lines 16-23, federated learning platform; MLM 108 includes federated machine learning model collaboratively trained using nodes 102 and models 106; MLM 108 is a central model; col. 4 lines 49-53, aggregating values of parameters from training nodes 102 to determine values of parameters of machine learning model 108; i.e. an initial version of the central model may be created by aggregating parameters from all participating local models/nodes), and
the contribution calculation module is configured to perform the aggregation algorithm on the trained model parameters, excluding the at least one first trained model parameter from the last machine learning training, to generate the first contribution model (e.g. col. 15 line 57-col. 16 line 7, determining values to parameters of model 108 by aggregating one or more values of corresponding parameters from training nodes 102 by excluding one or more values of one or more corresponding parameters from one or more of training nodes 102; col. 17 lines 18-47, banning training nodes 102 from collaborative training; may be with respect to particular portions of model 108 or with respect to model 108 in its entirety; ban results in values from training node 102 for model 106 not being used, including in aggregating parameters of training nodes 102 for model 108; ban may be permanent or temporary; i.e. a subsequent/future version of the central model may be created by aggregating parameters of some of the participating local models/nodes while excluding parameters or subsets of parameters of other local models/nodes).
With respect to claim 11, Milletari in view of Yu teaches all of the limitations of claim 7 as previously discussed, and Milletari further teaches wherein
the artificial intelligence model training devices respectively perform multiple machine learning training on the local datasets (e.g. col. 3 lines 38-44, Fig. 1A, training nodes 102 using motel trainers 110 and model managers 112 to train machine learning models 106),
the computation module is configured to perform the aggregation algorithm separately for each machine learning training to generate a corresponding federated model for each machine learning training (e.g. col. 4 lines 16-23, federated learning platform; MLM 108 includes federated machine learning model collaboratively trained using nodes 102 and models 106; MLM 108 is a central model; col. 4 lines 49-53, aggregating values of parameters from training nodes 102 to determine values of parameters of machine learning model 108; col. 5 lines 13-51, collaboratively training model 108 over multiple iterations; each iteration including each node 102 individually training corresponding model 106 to determine respective parameter values; each model 106 may diverge through individual training; training of each model trainer over predetermined period/training epoch which may be same or different between trainers; for each iteration after period of time, providing models or portions thereof to aggregator and aggregating received models/portions; i.e. an initial version of the central model may be created by aggregating parameters from all participating local models/nodes; each individual local model is individually/separately trained at each corresponding node over a period of separate iterations/epochs, and for each separate iteration/epoch, aggregation is performed for each separate/individual model to generate the corresponding central/federated model),
the contribution calculation module is configured to perform the aggregation algorithm on the trained model parameters, excluding the at least one first trained model parameter from each machine learning training, to generate a corresponding first contribution model for each machine-learning training (e.g. col. 15 line 57-col. 16 line 7, determining values to parameters of model 108 by aggregating one or more values of corresponding parameters from training nodes 102 by excluding one or more values of one or more corresponding parameters from one or more of training nodes 102; col. 17 lines 18-47, banning training nodes 102 from collaborative training; may be with respect to particular portions of model 108 or with respect to model 108 in its entirety; ban results in values from training node 102 for model 106 not being used, including in aggregating parameters of training nodes 102 for model 108; ban may be permanent or temporary; i.e. a subsequent/future version of the central model may be created by aggregating parameters of some of the participating local models/nodes while excluding parameters or subsets of parameters of other local models/nodes),
the contribution calculation module is configured to compare the value of each corresponding first contribution model with the value of each corresponding federated model from each machine learning training (e.g. col. 16 line 66-col. 17 line 12, contribution determiner computing and tracking contribution scores of training nodes over multiple iterations; determining contributions post hoc, such as by comparing a contribution for one state of machine learning model 108 to one or more future states of machine learning model 108 after additional training, allowing contribution determiner to identify meaningful contributions to training that may not be readily identified from a current state of training; i.e. comparing a first state of the central model, such as an initial state which is based on aggregating parameters from all participating models/nodes, to a second/future state of the central model, such as a future state which is based on aggregating some parameter and excluding other parameters of participating models/nodes, in order to determine a contribution metric/value), and
configured to perform averaging or weighted averaging calculation to generate an average contribution as the contribution of the at least one first trained model parameter (e.g. col. 17 lines 1-4, computing and tracking contribution scores of nodes 102 over multiple iterations such as using an average, running average, or other running contribution score metric).
Claims 3 and 5 are rejected under 35 U.S.C. 103 as being unpatentable over Milletari in view of da Silva et al. (US 20220129786 A1).
With respect to claim 3, Milletari teaches all of the limitations of claim 1 as previously discussed, and further teaches wherein
the trained model parameters are generated by multiple machine learning training on the local datasets (e.g. col. 3 lines 38-44, Fig. 1A, training nodes 102 using motel trainers 110 and model managers 112 to train machine learning models 106),
the central server performs the aggregation algorithm from each machine learning training to generate the federated model (e.g. col. 4 lines 16-23, federated learning platform; MLM 108 includes federated machine learning model collaboratively trained using nodes 102 and models 106; MLM 108 is a central model; col. 4 lines 49-53, aggregating values of parameters from training nodes 102 to determine values of parameters of machine learning model 108; i.e. an initial version of the central model may be created by aggregating parameters from all participating local models/nodes), and
the central server performs the aggregation algorithm on the trained model parameters, to exclude the at least one first trained model parameter from each machine learning training, to generate the first contribution model (e.g. col. 15 line 57-col. 16 line 7, determining values to parameters of model 108 by aggregating one or more values of corresponding parameters from training nodes 102 by excluding one or more values of one or more corresponding parameters from one or more of training nodes 102; col. 17 lines 18-47, banning training nodes 102 from collaborative training; may be with respect to particular portions of model 108 or with respect to model 108 in its entirety; ban results in values from training node 102 for model 106 not being used, including in aggregating parameters of training nodes 102 for model 108; ban may be permanent or temporary; i.e. a subsequent/future version of the central model may be created by aggregating parameters of some of the participating local models/nodes while excluding parameters or subsets of parameters of other local models/nodes).
Milletari does not explicitly disclose that performing of the aggregation algorithm is done by simulating. However, da Silva teaches disclose that performing of the aggregation algorithm is done by simulating (e.g. paragraphs 0041-0042, defining federated learning simulations, specifying a scenario configuration for simulation; scenario configuration parameters include chosen aggregation function employed by central node through which learning state from simulated worker nodes may be aggregated).
Accordingly, it would have been obvious to one of ordinary skill in the art before the effective filing date of the invention having the teachings of Milletari and da Silva in front of him to have modified the teachings of Milletari (directed to collaboratively training machine learning models based on comparing accuracy of model parameters), to incorporate the teachings of da Silva (directed to rapidly prototyping federated learning algorithms) to include the capability to perform simulation of the federated learning at the central node (i.e. of Milletari, where da Silva teaches simulation of federated learning algorithms), such that the aggregation algorithm, including excluding one or more parameters, may be simulated, resulting in simulated exclusion of the parameters. One of ordinary skill would have been motivated to perform such a modification in order to test aggregation technique effectiveness via federated learning simulation, avoiding costs associated with deploying hypotheses to be tested across production systems as described in da Silva (abstract).
With respect to claim 5, Milletari teaches all of the limitations of claim 1 as previously discussed, and further teaches wherein
the trained model parameters are generated by multiple machine learning training on the local datasets (e.g. col. 3 lines 38-44, Fig. 1A, training nodes 102 using motel trainers 110 and model managers 112 to train machine learning models 106),
the central server performs the aggregation algorithm for each machine learning training to generate the federated model (e.g. col. 4 lines 16-23, federated learning platform; MLM 108 includes federated machine learning model collaboratively trained using nodes 102 and models 106; MLM 108 is a central model; col. 4 lines 49-53, aggregating values of parameters from training nodes 102 to determine values of parameters of machine learning model 108; i.e. an initial version of the central model may be created by aggregating parameters from all participating local models/nodes),
the central server performs the aggregation algorithm on the trained model parameters, to exclude the at least one first trained model parameter from the last to the kth previous machine learning training, to generate the first contribution model, wherein k is an integer between 1 and the number of times the first trained model parameter participated in the aggregation algorithm of the federated model (e.g. col. 5 lines 6-9, banning nodes 102 from one or more future/subsequent iterations of collaborative training; col. 15 line 57-col. 16 line 7, determining values to parameters of model 108 by aggregating one or more values of corresponding parameters from training nodes 102 by excluding one or more values of one or more corresponding parameters from one or more of training nodes 102; col. 17 lines 18-47, banning training nodes 102 from one or more iterations of collaborative training; may be with respect to particular portions of model 108 or with respect to model 108 in its entirety; ban results in values from training node 102 for model 106 not being used, including in aggregating parameters of training nodes 102 for model 108; ban may be permanent or temporary; i.e. a subsequent/future version of the central model may be created by aggregating parameters of some of the participating local models/nodes while excluding parameters or subsets of parameters of other local models/nodes; since the ban/exclusion may be for one or more, i.e. a given number, of training iterations, the exclusion of the parameter may be from the last (i.e. most recent, relative to the aggregation round in question) to some previous round/iteration (where this is analogous to a kth previous training where k is between 1 and total number of times the parameter was utilized; i.e. a given number of times defined by the length of the temporary ban/exclusion, from the beginning of the ban/exclusion period until the most recent/ending time of the ban/exclusion period)).
Milletari does not explicitly disclose that performing of the aggregation algorithm is done by simulating. However, da Silva teaches disclose that performing of the aggregation algorithm is done by simulating (e.g. paragraphs 0041-0042, defining federated learning simulations, specifying a scenario configuration for simulation; scenario configuration parameters include chosen aggregation function employed by central node through which learning state from simulated worker nodes may be aggregated).
Accordingly, it would have been obvious to one of ordinary skill in the art before the effective filing date of the invention having the teachings of Milletari and da Silva in front of him to have modified the teachings of Milletari (directed to collaboratively training machine learning models based on comparing accuracy of model parameters), to incorporate the teachings of da Silva (directed to rapidly prototyping federated learning algorithms) to include the capability to perform simulation of the federated learning at the central node (i.e. of Milletari, where da Silva teaches simulation of federated learning algorithms), such that the aggregation algorithm, including excluding one or more parameters, may be simulated, resulting in simulated exclusion of the parameters. One of ordinary skill would have been motivated to perform such a modification in order to test aggregation technique effectiveness via federated learning simulation, avoiding costs associated with deploying hypotheses to be tested across production systems as described in da Silva (abstract).
Claims 9 and 10 are rejected under 35 U.S.C. 103 as being unpatentable over Milletari in view of Yu, further in view of da Silva.
With respect to claim 9, Milletari teaches all of the limitations of claim 7 as previously discussed, and further teaches wherein
the artificial intelligence model training devices respectively perform multiple machine learning training on the local datasets (e.g. col. 3 lines 38-44, Fig. 1A, training nodes 102 using motel trainers 110 and model managers 112 to train machine learning models 106),
the computation module is configured to perform the aggregation algorithm for each machine learning training to generate the federated model (e.g. col. 4 lines 16-23, federated learning platform; MLM 108 includes federated machine learning model collaboratively trained using nodes 102 and models 106; MLM 108 is a central model; col. 4 lines 49-53, aggregating values of parameters from training nodes 102 to determine values of parameters of machine learning model 108; i.e. an initial version of the central model may be created by aggregating parameters from all participating local models/nodes), and
the contribution calculation module is configured to perform the aggregation algorithm on the trained model parameters, to exclude the at least one first trained model parameter from each machine learning training, to generate the first contribution model (e.g. col. 15 line 57-col. 16 line 7, determining values to parameters of model 108 by aggregating one or more values of corresponding parameters from training nodes 102 by excluding one or more values of one or more corresponding parameters from one or more of training nodes 102; col. 17 lines 18-47, banning training nodes 102 from collaborative training; may be with respect to particular portions of model 108 or with respect to model 108 in its entirety; ban results in values from training node 102 for model 106 not being used, including in aggregating parameters of training nodes 102 for model 108; ban may be permanent or temporary; i.e. a subsequent/future version of the central model may be created by aggregating parameters of some of the participating local models/nodes while excluding parameters or subsets of parameters of other local models/nodes).
Milletari does not explicitly disclose that performing of the aggregation algorithm is done by simulating. However, da Silva teaches disclose that performing of the aggregation algorithm is done by simulating (e.g. paragraphs 0041-0042, defining federated learning simulations, specifying a scenario configuration for simulation; scenario configuration parameters include chosen aggregation function employed by central node through which learning state from simulated worker nodes may be aggregated).
Accordingly, it would have been obvious to one of ordinary skill in the art before the effective filing date of the invention having the teachings of Milletari, Yu, and da Silva in front of him to have modified the teachings of Milletari (directed to collaboratively training machine learning models based on comparing accuracy of model parameters) and Yu (directed to evaluating a contribution of participants in federated learning), to incorporate the teachings of da Silva (directed to rapidly prototyping federated learning algorithms) to include the capability to perform simulation of the federated learning at the central node (i.e. of Milletari, where da Silva teaches simulation of federated learning algorithms), such that the aggregation algorithm, including excluding one or more parameters, may be simulated, resulting in simulated exclusion of the parameters. One of ordinary skill would have been motivated to perform such a modification in order to test aggregation technique effectiveness via federated learning simulation, avoiding costs associated with deploying hypotheses to be tested across production systems as described in da Silva (abstract).
With respect to claim 10, Milletari teaches all of the limitations of claim 7 as previously discussed, and further teaches wherein
the artificial intelligence model training devices respectively perform multiple machine learning training on the local datasets (e.g. col. 3 lines 38-44, Fig. 1A, training nodes 102 using motel trainers 110 and model managers 112 to train machine learning models 106),
the computation module is configured to perform the aggregation algorithm for each machine learning training to generate the federated model (e.g. col. 4 lines 16-23, federated learning platform; MLM 108 includes federated machine learning model collaboratively trained using nodes 102 and models 106; MLM 108 is a central model; col. 4 lines 49-53, aggregating values of parameters from training nodes 102 to determine values of parameters of machine learning model 108; i.e. an initial version of the central model may be created by aggregating parameters from all participating local models/nodes),
the contribution calculation module is configured to perform the aggregation algorithm on the trained model parameters, simulating to exclude the at least one first trained model parameter from the last to the kth previous machine learning training, to generate the first contribution model, wherein k is an integer between 1 and the number of times the at least one first trained model parameter participated in the aggregation algorithm for the federated model (e.g. col. 5 lines 6-9, banning nodes 102 from one or more future/subsequent iterations of collaborative training; col. 15 line 57-col. 16 line 7, determining values to parameters of model 108 by aggregating one or more values of corresponding parameters from training nodes 102 by excluding one or more values of one or more corresponding parameters from one or more of training nodes 102; col. 17 lines 18-47, banning training nodes 102 from one or more iterations of collaborative training; may be with respect to particular portions of model 108 or with respect to model 108 in its entirety; ban results in values from training node 102 for model 106 not being used, including in aggregating parameters of training nodes 102 for model 108; ban may be permanent or temporary; i.e. a subsequent/future version of the central model may be created by aggregating parameters of some of the participating local models/nodes while excluding parameters or subsets of parameters of other local models/nodes; since the ban/exclusion may be for one or more, i.e. a given number, of training iterations, the exclusion of the parameter may be from the last (i.e. most recent, relative to the aggregation round in question) to some previous round/iteration (where this is analogous to a kth previous training where k is between 1 and total number of times the parameter was utilized; i.e. a given number of times defined by the length of the temporary ban/exclusion, from the beginning of the ban/exclusion period until the most recent/ending time of the ban/exclusion period)).
Milletari does not explicitly disclose that performing of the aggregation algorithm is done by simulating. However, da Silva teaches disclose that performing of the aggregation algorithm is done by simulating (e.g. paragraphs 0041-0042, defining federated learning simulations, specifying a scenario configuration for simulation; scenario configuration parameters include chosen aggregation function employed by central node through which learning state from simulated worker nodes may be aggregated).
Accordingly, it would have been obvious to one of ordinary skill in the art before the effective filing date of the invention having the teachings of Milletari, Yu, and da Silva in front of him to have modified the teachings of Milletari (directed to collaboratively training machine learning models based on comparing accuracy of model parameters) and Yu (directed to evaluating a contribution of participants in federated learning), to incorporate the teachings of da Silva (directed to rapidly prototyping federated learning algorithms) to include the capability to perform simulation of the federated learning at the central node (i.e. of Milletari, where da Silva teaches simulation of federated learning algorithms), such that the aggregation algorithm, including excluding one or more parameters, may be simulated, resulting in simulated exclusion of the parameters. One of ordinary skill would have been motivated to perform such a modification in order to test aggregation technique effectiveness via federated learning simulation, avoiding costs associated with deploying hypotheses to be tested across production systems as described in da Silva (abstract).
It is noted that any citation to specific pages, columns, lines, or figures in the prior art references and any interpretation of the references should not be considered to be limiting in any way. “The use of patents as references is not limited to what the patentees describe as their own inventions or to the problems with which they are concerned. They are part of the literature of the art, relevant for all they contain,” In re Heck, 699 F.2d 1331, 1332-33, 216 USPQ 1038, 1039 (Fed. Cir. 1983) (quoting in re Lemelson, 397 F.2d 1006, 1009, 158 USPQ 275, 277 (GCPA 1968)). Further, a reference may be relied upon for all that it would have reasonably suggested to one having ordinary skill the art, including nonpreferred embodiments. Merck & Co, v. Biocraft Laboratories, 874 F.2d 804, 10 USPQ2d 1843 (Fed. Cir.), cert, denied, 493 U.S. 975 (1989). See also Upsher-Smith Labs. v. Pamlab, LLC, 412 F,3d 1319, 1323, 75 USPQ2d 1213, 1215 (Fed. Cir, 2005): Celeritas Technologies Ltd. v. Rockwell International Corp., 150 F.3d 1354, 1361, 47 USPQ2d 1516, 1522-23 (Fed. Cir. 1998).
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant’s disclosure.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to JEREMY L STANLEY whose telephone number is (469)295-9105. The examiner can normally be reached on Monday-Friday from 9:00 AM to 5:00 PM CST.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Abdullah Al Kawsar, can be reached at telephone number (571) 270-3169. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of an application may be obtained from Patent Center and the Private Patent Application Information Retrieval (PAIR) system. Status information for published applications may be obtained from Patent Center or Private PAIR. Status information for unpublished applications is available through Patent Center and Private PAIR for authorized users only. Should you have questions about access to the Private PAIR system, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free).
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) Form at https://www.uspto.gov/patents/uspto-automated- interview-request-air-form.
/JEREMY L STANLEY/
Primary Examiner, Art Unit 2127