Office Action Predictor
Application No. 18/084,810

FEDRATED LEARNING SYSTEM AND METHOD USING DATA DIGEST

Non-Final OA §101§103§DP
Filed
Dec 20, 2022
Examiner
FEITL, LEAH M
Art Unit
2147
Tech Center
2100 — Computer Architecture & Software
Assignee
Inventec Corporation
OA Round
1 (Non-Final)
24%
Grant Probability
At Risk
1-2
OA Rounds
4y 2m
To Grant
27%
With Interview

Examiner Intelligence

24%
Career Allow Rate
20 granted / 82 resolved
Without
With
+3.0%
Interview Lift
avg trend
4y 2m
Avg Prosecution
36 pending
118
Total Applications
career history

Statute-Specific Performance

§101
31.0%
-9.0% vs TC avg
§103
45.4%
+5.4% vs TC avg
§102
7.0%
-33.0% vs TC avg
§112
13.8%
-26.2% vs TC avg
Black line = Tech Center average estimate • Based on career data

Office Action

§101 §103 §DP
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 . Double Patenting The nonstatutory double patenting rejection is based on a judicially created doctrine grounded in public policy (a policy reflected in the statute) so as to prevent the unjustified or improper timewise extension of the “right to exclude” granted by a patent and to prevent possible harassment by multiple assignees. A nonstatutory double patenting rejection is appropriate where the conflicting claims are not identical, but at least one examined application claim is not patentably distinct from the reference claim(s) because the examined application claim is either anticipated by, or would have been obvious over, the reference claim(s). See, e.g., In re Berg, 140 F.3d 1428, 46 USPQ2d 1226 (Fed. Cir. 1998); In re Goodman, 11 F.3d 1046, 29 USPQ2d 2010 (Fed. Cir. 1993); In re Longi, 759 F.2d 887, 225 USPQ 645 (Fed. Cir. 1985); In re Van Ornum, 686 F.2d 937, 214 USPQ 761 (CCPA 1982); In re Vogel, 422 F.2d 438, 164 USPQ 619 (CCPA 1970); In re Thorington, 418 F.2d 528, 163 USPQ 644 (CCPA 1969). A timely filed terminal disclaimer in compliance with 37 CFR 1.321(c) or 1.321(d) may be used to overcome an actual or provisional rejection based on nonstatutory double patenting provided the reference application or patent either is shown to be commonly owned with the examined application, or claims an invention made as a result of activities undertaken within the scope of a joint research agreement. See MPEP § 717.02 for applications subject to examination under the first inventor to file provisions of the AIA as explained in MPEP § 2159. See MPEP § 2146 et seq. for applications not subject to examination under the first inventor to file provisions of the AIA . A terminal disclaimer must be signed in compliance with 37 CFR 1.321(b). The filing of a terminal disclaimer by itself is not a complete reply to a nonstatutory double patenting (NSDP) rejection. A complete reply requires that the terminal disclaimer be accompanied by a reply requesting reconsideration of the prior Office action. Even where the NSDP rejection is provisional the reply must be complete. See MPEP § 804, subsection I.B.1. For a reply to a non-final Office action, see 37 CFR 1.111(a). For a reply to final Office action, see 37 CFR 1.113(c). A request for reconsideration while not provided for in 37 CFR 1.113(c) may be filed after final for consideration. See MPEP §§ 706.07(e) and 714.13. The USPTO Internet website contains terminal disclaimer forms which may be used. Please visit www.uspto.gov/patent/patents-forms. The actual filing date of the application in which the form is filed determines what form (e.g., PTO/SB/25, PTO/SB/26, PTO/AIA /25, or PTO/AIA /26) should be used. A web-based eTerminal Disclaimer may be filled out completely online using web-screens. An eTerminal Disclaimer that meets all requirements is auto-processed and approved immediately upon submission. For more information about eTerminal Disclaimers, refer to www.uspto.gov/patents/apply/applying-online/eterminal-disclaimer. Claims 1-8 are provisionally rejected on the ground of nonstatutory double patenting as being unpatentable over claims 1, 3-7, and 9-10 of copending Application No. 18/205522 (reference application), but for the limitation in claims 1 and 7 of the reference application wherein a sum of the feature weighted sum and noise is computed. Although the claims at issue are not identical, they are not patentably distinct from each other because the claims are directed to the same subject matter according to the following analysis. This is a provisional nonstatutory double patenting rejection because the patentably indistinct claims have not in fact been patented. Instant Application #18/084810 Reference Application #18/205522 1. A federated learning method using data digest comprising: sending a general model to each of a plurality of client devices by a moderator; 1. A federated learning method of protecting data digest comprising: sending a general model to each of a plurality of client devices by a moderator; executing a digest producer by each of the plurality of client devices to generate a plurality of encoded features according to a plurality of raw data; executing a digest producer by each of the plurality of client devices to generate a plurality of encoded features according to a plurality of raw data; performing a training procedure by each of the plurality of client devices, wherein the training procedure comprises: performing a training procedure by each of the plurality of client devices, wherein the training procedure comprises: updating the general model to generate a client model according to the plurality of raw data, the plurality of encoded features, a plurality of labels corresponding to the plurality of encoded features, and a present client loss function; updating the general model to generate a client model according to the plurality of raw data, the plurality of encoded features, a plurality of labels corresponding to the plurality of encoded features, and a present client loss function; selecting at least two of the plurality of encoded features to compute a feature weighted sum, selecting at least two of the plurality of labels to compute a label weighted sum, and sending the feature weighted sum and the label weighted sum to the moderator as a digest when receiving a digest request; selecting at least two of the plurality of encoded features to compute a feature weighted sum, computing a sum of the feature weighted sum and noise, selecting at least two of the plurality of labels to compute a label weighted sum, and sending the sum and the label weighted sum to the moderator as a digest when receiving a digest request; and sending an update parameter of the client model to the moderator; and sending an update parameter of the client model to the moderator; determining an absent client and a present client among the plurality of client devices by the moderator; determining an absent client and a present client among the plurality of client devices by the moderator; generating a replacement model according to the general model, the digest of the absent client and an absent client loss function by the moderator; generating a replacement model according to the general model, the digest of the absent client and an absent client loss function by the moderator; performing an aggregation to generate an aggregation model according to the update parameter of the client model of the present client and an update parameter of the replacement model of the absent client by the moderator; performing an aggregation to generate an aggregation model according to the update parameter of the client model of the present client and an update parameter of the replacement model of the absent client by the moderator; and training the aggregation model to update the general model according to a moderator loss function by the moderator. and training the aggregation model to update the general model according to a moderator loss function by the moderator 2. The federated learning method using data digest of claim 1, wherein the general model comprises a first feature extractor, a second feature extractor and a classifier, and updating the general model to generate the client model according to the plurality of raw data, the plurality of encoded features, the plurality of labels corresponding to the plurality of encoded features, and the present client loss function comprises: inputting the plurality of raw data to the first feature extractor to generate a first feature; inputting the plurality of encoded features to the second feature extractor to generate a second feature; inputting a concatenation of the first feature and the second feature to the classifier to generate a predicted result; and inputting the predicted result and an actual result to the present client loss function, and adjusting a weight of at least one of the first feature extractor, the second feature extractor, and the classifier according to an output of the present client loss function. 3. The federated learning method of protecting data digest of claim 1, wherein the general model comprises a first feature extractor, a second feature extractor and a classifier, and updating the general model to generate the client model according to the plurality of raw data, the plurality of encoded features, the plurality of labels corresponding to the plurality of encoded features, and the present client loss function comprises: inputting the plurality of raw data to the first feature extractor to generate a first feature; inputting the plurality of encoded features to the second feature extractor to generate a second feature; inputting a concatenation of the first feature and the second feature to the classifier to generate a predicted result; and inputting the predicted result and an actual result to the present client loss function, and adjusting a weight of at least one of the first feature extractor, the second feature extractor, and the classifier according to an output of the present client loss function. 3. The federated learning method using data digest of claim 1, wherein the general model comprises a first feature extractor, a second feature extractor and a classifier, and generating the replacement model according to the digest of the absent client and the absent client loss function comprises: inputting the digest of the absent client to a guidance producer to generate a piece of guidance; inputting the piece of guidance to the first feature extractor to generate a first feature; inputting the digest of the absent client to the second feature extractor to generate a second feature; inputting a concatenation of the first feature and the second feature to the classifier to generate a predicted result; and inputting the predicted result and an actual result to the absent client loss function, and adjusting a weight of at least one of the first feature extractor, the second feature extractor, and the classifier according to an output of the absent loss function; wherein the replacement model is the general model with an update weight. 4. The federated learning method of protecting data digest of claim 1, wherein the general model comprises a first feature extractor, a second feature extractor and a classifier, and generating the replacement model according to the digest of the absent client and the absent client loss function comprises: inputting the digest of the absent client to a guidance producer to generate a piece of guidance; inputting the piece of guidance to the first feature extractor to generate a first feature; inputting the digest of the absent client to the second feature extractor to generate a second feature; inputting a concatenation of the first feature and the second feature to the classifier to generate a predicted result; and inputting the predicted result and an actual result to the absent client loss function, and adjusting a weight of at least one of the first feature extractor, the second feature extractor, and the classifier according to an output of the absent loss function; wherein the replacement model is the general model with an updated weight. 4. The federated learning method using data digest of claim 1, wherein performing the aggregation to generate the aggregation model according to the update parameter of the client model of the present client and the update parameter of the replacement model of the absent client comprises: computing a first weighted sum of the update parameter of the client model of the present client and a first weight; computing a second weighted sum of the update parameter of the replacement model and a second weight, wherein a sum of the first weight and the second weight is a constant; and summing a parameter of the general model, the first weighted sum and the second weighted sum to generate a parameter of the aggregation model. 5. The federated learning method of protecting data digest of claim 1, wherein performing the aggregation to generate the aggregation model according to the update parameter of the client model of the present client and the update parameter of the replacement model of the absent client comprises: computing a first weighted sum of the update parameter of the client model of the present client and a first weight; computing a second weighted sum of the update parameter of the replacement model and a second weight; and summing a parameter of the general model, the first weighted sum and the second weighted sum to generate a parameter of the aggregation model. 5. The federated learning method using data digest of claim 1, wherein training the aggregation model to update the general model according to the moderator loss function by the moderator comprises: inputting the digest of each of the plurality of client devices to a guidance producer to generate a piece of guidance; inputting the piece of guidance and the digest of each of the plurality of client devices to the aggregation model to generate a predicted result; and inputting the predicted result and an actual result to the moderator loss function, and adjusting a parameter of the aggregation model according to an output of the moderator loss function. 6. The federated learning method of protecting data digest of claim 1, wherein training the aggregation model to update the general model according to the moderator loss function by the moderator comprises: inputting the digest of each of the plurality of client devices to a guidance producer to generate a piece of guidance; inputting the piece of guidance and the digest of each of the plurality of client devices to the aggregation model to generate a predicted result; and inputting the predicted result and an actual result to the moderator loss function, and adjusting a parameter of the aggregation model according to an output of the moderator loss function. Examiner notes that claim 6 from the instant application is a claim with a different statutory category but with limitations corresponding to claim 1. Claim 6 is rejected for the same reasons as claim 1 in view of claim 7 of the reference application. Similarly, Examiner notes that claims 7-8 from the instant application are claims with a different statutory category but with limitations corresponding to claims 2-3. Claims 7-8 are rejected for the same reasons as claim 4 in view of claims 9-10 from the reference application. 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-10 are rejected under 35 U.S.C. 101. Claims 1-5 are directed to a method and claims 6-10 are directed to a system; therefore, claims 1-10 fall within one of the four statutory categories (i.e., process, machine, manufacture, or composition of matter). However, claims 1-10 fall within the judicial exception of an abstract idea, specifically the abstract ideas of “Mental Processes” (including observation, evaluation, and opinion) and “Mathematical Concepts (including mathematical calculations and relationships)”. Claim 1: Claim 1 is directed to a method; therefore, the claim does fall within one of the four statutory categories (i.e., process, machine, manufacture, or composition of matter). Claim 1 recites the following abstract ideas: executing a digest producer by each of the plurality of client devices to generate a plurality of encoded features according to a plurality of raw data (mental step directed to observation, evaluation – a person could generate a plurality of encoded features in their mind based on observed raw data. Examiner notes that the broadest reasonable interpretation of a “digest producer” includes “software running on the first processor” to generate encoded features as a “digest” or “a sharable representation that can represent the raw data” based on paragraphs [0015] and [0019] of Applicant’s specification. Given this interpretation, executing a “digest producer” to accomplish this encoded feature generation is interpreted as using a generic computer component to merely apply the mental step of generating encoded features from raw data (see MPEP 2106.04(a)(2)(III)(C) and MPEP 2106.05(f)); selecting at least two of the plurality of encoded features to compute a feature weighted sum, selecting at least two of the plurality of labels to compute a label weighted sum (mental step directed to observation, evaluation – a person could select at least two observed encoded features in their mind, compute a feature weighted sum in their mind, select at least two observed labels in their mind, and compute a label weighted sum in their mind); determining an absent client and a present client among the plurality of client devices by the moderator (mental step directed to observation, evaluation – a person could determine in their mind an absent client and a present client from a plurality of observed client devices); performing an aggregation to generate an aggregation model according to the update parameter of the client model of the present client and an update parameter of the replacement model of the absent client by the moderator (mental step directed to observation, evaluation – a person could generate a mental or mathematical aggregation model based on observed update parameters from present clients and replacement models from absent clients received from a moderator); Claim 1 recites the following additional elements: sending a general model to each of a plurality of client devices by a moderator (this limitation is interpreted as an additional element directed to the well-understood, routine, conventional activity of transmitting data over a network); performing a training procedure by each of the plurality of client devices, wherein the training procedure comprises: updating the general model to generate a client model according to the plurality of raw data, the plurality of encoded features, a plurality of labels corresponding to the plurality of encoded features, and a present client loss function (this limitation is interpreted as an additional element directed to the well-understood, routine, conventional activity of transmitting data over a network); sending the feature weighted sum and the label weighted sum to the moderator as a digest when receiving a digest request (this limitation is interpreted as an additional element directed to the well-understood, routine, conventional activity of transmitting data over a network); and sending an update parameter of the client model to the moderator (this limitation is interpreted as an additional element directed to the well-understood, routine, conventional activity of transmitting data over a network); generating a replacement model according to the general model, the digest of the absent client and an absent client loss function by the moderator; and training the aggregation model to update the general model according to a moderator loss function by the moderator (generating a replacement model is interpreted as training an additional client model using the absent client digest and loss function. Training the client models and the aggregation model are interpreted as training a federated learning model, which is described as well-understood, routine, conventional activity in at least paragraph [0012] of US 20220083917 A1 (Ben-Itzhak et al). These additional elements do not integrate the abstract idea into a practical application or amount to significantly more than the abstract idea (see MPEP 2106.05(d)). Claim 6 is a system claim and its limitation is included in claim 1. The only difference is that claim 6 requires a system comprising two processors, a moderator, and two communication circuits. These are interpreted as generic computer components used to merely implement the judicial exceptions as described in the analysis of claim 1 (see MPEP 2106.05(f)). Therefore, claim 6 is rejected for the same reasons as claim 1. The independent claims are not patent eligible. Dependent claims 2-5 and 7-10 when analyzed as a whole are held to be patent ineligible under 35 U.S.C. 101 because the additional recited limitations fail to establish that the claims are not directed to an abstract idea, as they recite further embellishment of the judicial exception. Claim 2 recites wherein the general model comprises a first feature extractor, a second feature extractor and a classifier, and updating the general model to generate the client model according to the plurality of raw data, the plurality of encoded features, the plurality of labels corresponding to the plurality of encoded features, and the present client loss function comprises: inputting the plurality of raw data to the first feature extractor to generate a first feature; inputting the plurality of encoded features to the second feature extractor to generate a second feature; inputting a concatenation of the first feature and the second feature to the classifier to generate a predicted result; and inputting the predicted result and an actual result to the present client loss function, and adjusting a weight of at least one of the first feature extractor, the second feature extractor, and the classifier according to an output of the present client loss function. Generating a first feature based on raw data, generating a second feature based on encoded features, generating a predicted result are all interpreted as mental steps directed to observation, evaluation – a person could mentally generate a first feature based on observed raw data, mentally generate a second feature based on observed encoded data, and generate a prediction based on an observed or determined concatenation of features. Examiner notes that the broadest reasonable interpretation of a “loss function” includes a mathematical equation such as the one described in paragraph [0024] of Applicant’s specification. Given this interpretation, inputting a predicted result and an actual result to a loss function is interpreted as a mental step directed to evaluation, as a person could mentally determine, or calculate a loss function based on observed or determined input predicted and actual result variables. The first feature extractor, second feature extractor, and classifier are all interpreted as additional elements directed to generic computer components merely used to apply the abstract ideas in claim 2. Inputting raw data to a first feature extractor, inputting encoded features to a second feature extractor, and inputting a concatenation of the first and second features a classifier are all interpreted additional elements directed to as transmitting data over a network. Adjusting a weight of one of the first feature extractor, the second feature extractor, and the classifier according to an output of the present client loss function is interpreted as an additional element directed to overwriting, or saving, a value for a weight in memory. These additional elements do not integrate the abstract ideas in claim 2 into a practical application or amount to significantly more than the abstract ideas in claim 2 (see MPEP 2106.05(d) and MPEP 2106.05(f)). Claim 3 recites wherein the general model comprises a first feature extractor, a second feature extractor and a classifier, and generating the replacement model according to the digest of the absent client and the absent client loss function comprises: inputting the digest of the absent client to a guidance producer to generate a piece of guidance; inputting the piece of guidance to the first feature extractor to generate a first feature; inputting the digest of the absent client to the second feature extractor to generate a second feature; inputting a concatenation of the first feature and the second feature to the classifier to generate a predicted result; and inputting the predicted result and an actual result to the absent client loss function, and adjusting a weight of at least one of the first feature extractor, the second feature extractor, and the classifier according to an output of the absent loss function; wherein the replacement model is the general model with an update weight. Generating guidance based on a digest of an absent client, generating a first feature based on the guidance, generating a second feature based on the digest, and generating a predicted result based on the concatenated features are all interpreted as mental steps directed to observation, evaluation – a person could mentally generate guidance based on an observed digest of an absent client, generate a first feature based on observed or determined guidance, mentally generate a second feature based on an observed or determined digest, and generate a prediction based on an observed or determined concatenation of features. Examiner notes that the broadest reasonable interpretation of a “loss function” includes a mathematical equation such as the one described in paragraph [0024] of Applicant’s specification. Given this interpretation, inputting a predicted result and an actual result to a loss function is interpreted as a mental step directed to evaluation, as a person could mentally determine, or calculate a loss function based on observed or determined input predicted and actual result variables. The first feature extractor, second feature extractor, and classifier are all interpreted as additional elements directed to generic computer components merely used to apply the abstract ideas in claim 2. Inputting guidance to a first feature extractor, inputting a digest to a second feature extractor, and inputting a concatenation of the first and second features a classifier are all interpreted as additional elements directed to transmitting data over a network. Adjusting a weight is interpreted as an additional element directed to overwriting, or saving, a value for a weight in memory and does not integrate the claimed abstract ideas into a practical application or amount to significantly more than the claimed abstract ideas. Wherein the replacement model is the general model with an update weight is interpreted as a further description of the model; however, Examiner notes that the claim does not actively require updating the general model with an update weight. These additional elements do not integrate the abstract ideas in claim 2 into a practical application or amount to significantly more than the abstract ideas in claim 2 (see MPEP 2106.05(d) and MPEP 2106.05(f)). Claim 4 recites wherein performing the aggregation to generate the aggregation model according to the update parameter of the client model of the present client and the update parameter of the replacement model of the absent client comprises: computing a first weighted sum of the update parameter of the client model of the present client and a first weight; computing a second weighted sum of the update parameter of the replacement model and a second weight, wherein a sum of the first weight and the second weight is a constant; and summing a parameter of the general model, the first weighted sum and the second weighted sum to generate a parameter of the aggregation model. Computing a first weighted sum, computing a second weighted sum, and generating a parameter of an aggregation model by summing a parameter of a general model, the first weighted sum, and the second weighted sum are all interpreted as mental steps directed to observation, evaluation – a person could mentally compute a first weighted sum of an observed or determined update parameter of a present client mode land an observed or determined first weight, mentally compute a second weighted sum of an observed or determined update parameter of a replacement model and a second weight, and mentally generate an aggregation model parameter by summing an observed or determined general model parameter, an observed or determined first weighted sum, and an observed or determined second weighted sum. Wherein the sum of the first and second weights is a constant is interpreted as a further description of the kind of sum that a person could mentally determine. Claim 5 recites wherein training the aggregation model to update the general model according to the moderator loss function by the moderator comprises: inputting the digest of each of the plurality of client devices to a guidance producer to generate a piece of guidance; inputting the piece of guidance and the digest of each of the plurality of client devices to the aggregation model to generate a predicted result; and inputting the predicted result and an actual result to the moderator loss function, and adjusting a parameter of the aggregation model according to an output of the moderator loss function. Generating guidance based on a plurality of client digests, and generating a predicted result based on the guidance and the digests are both interpreted as mental steps directed to observation, evaluation – a person could mentally generate guidance based on observed client digests and generate a prediction based on an observed or determined guidance and observed digests. Examiner notes that the broadest reasonable interpretation of a “loss function” includes a mathematical equation such as the one described in paragraph [0024] of Applicant’s specification. Given this interpretation, inputting a predicted result and an actual result to a loss function is interpreted as a mental step directed to evaluation, as a person could mentally determine, or calculate a loss function based on observed or determined input predicted and actual result variables. The guidance producer and aggregation model are interpreted as additional elements directed to generic computer components merely used to apply the abstract ideas in claim 5. Inputting client digests to a guidance producer, inputting a digest to a second feature extractor, and inputting a concatenation of the first and second features a classifier are all interpreted as additional elements directed to transmitting data over a network. Adjusting a parameter of a model is interpreted as an additional element directed to overwriting, or saving, a value for a parameter in memory and does not integrate the claimed abstract ideas into a practical application or amount to significantly more than the claimed abstract ideas. These additional elements do not integrate the abstract ideas in claim 2 into a practical application or amount to significantly more than the abstract ideas in claim 2 (see MPEP 2106.05(d) and MPEP 2106.05(f)). Claim 7 is a system claim and its limitation is included in claim 2. The only difference is that claim 7 requires a processor, which is interpreted as a generic computer component used to merely implement the judicial exceptions as described in the analysis of claim 2 (see MPEP 2106.05(f)). Claim 7 is rejected for the same reasons as claim 2. Claim 8 is a system claim and its limitation is included in claim 3. The only difference is that claim 8 requires a processor, which is interpreted as a generic computer component used to merely implement the judicial exceptions as described in the analysis of claim 3 (see MPEP 2106.05(f)). Claim 8 is rejected for the same reasons as claim 3. Claim 9 is a system claim and its limitation is included in claim 4. The only difference is that claim 9 requires a processor, which is interpreted as a generic computer component used to merely implement the judicial exceptions as described in the analysis of claim 4 (see MPEP 2106.05(f)).Claim 9 is rejected for the same reasons as claim 4. Claim 10 is a system claim and its limitation is included in claim 5. The only difference is that claim 10 requires a processor, which is interpreted as a generic computer component used to merely implement the judicial exceptions as described in the analysis of claim 5 (see MPEP 2106.05(f)). Claim 10 is rejected for the same reasons as claim 5. Viewed as a whole, these additional claim elements do not provide meaningful limitations to transform the abstract idea into a patent eligible application of the abstract idea such that the claims amount to significantly more than the abstract idea itself. Therefore, the claims are rejected under 35 U.S.C. 101 as being directed to non-statutory subject matter. 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. Claims 1-10 are rejected under 35 U.S.C. 103 as being unpatentable over Wang et al (“Friends to Help: Saving Federated Learning from Client Dropout”, herein Wang) in view of Eykholt et al (US 20220180157 A1, herein Eykholt). Regarding claim 1, Wang teaches a federated learning method using data digest (section 1 para. 1 recites “Federated learning (FL) is a distributed machine learning paradigm where a set of clients with decentralized data work collaboratively to learn a model under the coordination of a centralized server”. Section 2 para. 2 recites “We consider a typical FL algorithm working in the client dropout setting. Clients upload their local model updates to the server. Instead of uploading the local model itself, clients can simply upload the local model updates” (i.e., a federated learning method using a sharable representation that can represent the raw data without privacy concerns, in light of the definition of a “digest” from paragraph [0015] of Applicant’s specification)) comprising: sending a general model to each of a plurality of client devices by a moderator (section 2 para. 2 recites “Global model download. Each client downloads the global model from the server” (i.e., the moderator, or global model sends an initial model to a plurality of client devices)); executing a digest producer by each of the plurality of client devices [to generate a plurality of encoded features according to a plurality of raw data] (section 2 para. 2 recites “Local model update. Each client uses the initial model to train a new local model” (i.e., executing a local model, or digest producer, on each client device)); performing a training procedure by each of the plurality of client devices, wherein the training procedure comprises: updating the general model to generate a client model according to the plurality of raw data, [the plurality of encoded features, a plurality of labels corresponding to the plurality of encoded features,] and a present client loss function (section 2 para. 2 recites “Global model download. Each client downloads the global model from the server. Local model update. Each client uses the initial model to train a new local model, typically by using mini-batch stochastic gradient descent (SGD) as follows: (EQ2)” (i.e., each client device trains its own local model using its own minibatch of data samples and corresponding local model update as described in EQ2 and EQ3)); and sending an update parameter of the client model to the moderator (section 2 para. 2 recites “Clients upload their local model updates to the server. Instead of uploading the local model itself, client k can simply upload the local model update, which is defined as the accumulative model parameter difference as follows: (EQ3)” (i.e., sending the client model update to the moderator, or central server)); determining an absent client and a present client among the plurality of client devices by the moderator; generating a replacement model according to the general model, the digest of the absent client and an absent client loss function by the moderator (Section 3 para. 2 recites “we consider a larger class of FL problems that include client dropout as a special case. Specifically, imagine that a dropout client k, instead of contributing nothing, uses a substitute when submitting its local model update”. Section 4 para. 1 recites “we develop a new algorithm to improve the convergence bound of FL with client dropout. Our key idea is to find a better substitute when client k drops out in round t. This is possible by noticing that σ2ij are different across client pairs and the local model updates are more similar when the clients’ data distributions are more similar. Thus, when a client i drops out, one can use the local model update as a replacement if j shares a similar data distribution with i, or in our terminology, j is a friend of i”. Section 4.1 para. 4 recites “Clients. For any dropout client k, the server looks up the similarity score between k and every non-dropout client, finds the one with the highest similarity score, and uses the local model update as a substitute when computing the global update” (i.e., determining an absent client, or dropout, and a present client, and generating a replacement based on the digest, or sharable representation of the absent client including the previously calculated objective function)); performing an aggregation to generate an aggregation model according to the update parameter of the client model of the present client and an update parameter of the replacement model of the absent client by the moderator; and training the aggregation model to update the general model according to a moderator loss function by the moderator (section 2 para. 1 recites “We consider a server and a set of K clients, indexed by K = {1, . . ., K}, who work together to train a machine learning model by solving a distributed optimization problem (EQ1)”. Section 2 para. 2 recites “The server updates the global model by using the aggregated local model updates of the clients in (EQ4)”. Section 3 para. 2 recites “we consider a larger class of FL problems that include client dropout as a special case. Specifically, imagine that a dropout client k, instead of contributing nothing, uses a substitute when submitting its local model update”. Section 3 para. 1 recites “rather than completely ignoring the dropout clients, we write the aggregate model update in a different way to include all clients in the equation: (EQ5). In other words, although the dropout clients did not participate in the round t’s learning, it is equivalent to the case where a dropout client uses a substitute of its true local update” (i.e., aggregating the client models including the substitute, or replacement model and training the aggregation model based on the objective, or loss function described in EQ 1)). However, Wang does not explicitly teach generating a plurality of encoded features according to a plurality of raw data; selecting at least two of the plurality of encoded features to compute a feature weighted sum, selecting at least two of the plurality of labels to compute a label weighted sum, and sending the feature weighted sum and the label weighted sum [to the moderator] as a digest when receiving a digest request. Eykholt teaches generating a plurality of encoded features according to a plurality of raw data; selecting at least two of the plurality of encoded features to compute a feature weighted sum, selecting at least two of the plurality of labels to compute a label weighted sum, and sending the feature weighted sum and the label weighted sum [to the moderator] as a digest when receiving a digest request (para. [0020] recites “a DNN has been described in literature by a function g: X [Wingdings font/0xE0] Y, where X is an input space, and Y is an output space representing a categorical set. Each f, represents a layer, and FL is the last output layer. The last output layer creates a mapping from a hidden space to the output space (class labels) through a softmax function that outputs a vector of real numbers in the range [0, 1] that add up to 1”. Para. [0022] recites “The DNN 100 is trained using a training data set, thereby resulting in generation of a set of weights corresponding to the trained DNN. The output of the network is a prediction g(xi) associated with the ith sample. To train the DNN, the difference between a predicted output g(xi) and its true label, yi, is modeled with a loss function, J(g(xi), yi), which is back-propagated into the network to update the model parameters”. Para. [0023] recites “Typically, a neural network model such as depicted in FIG. 1 accepts numeric values as inputs. To work with categorical data, however, such data typically needs to be encoded in some manner. One-hot encoding is a known technique that converts category data into integers or a vector of ones and zeros (i.e., using a loss function to adjust, or backpropagate, weights related to encoded features and associated labels of the trained model during a training process, or digest request)). Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to combine these teachings by implementing the federated learning model from Wang using the specific neural network architecture from Eykholt. Wang and Eykholt are both directed to improving the security of neural network classification (see at least paragraph [0024] of Eykholt and the description of privacy preservation in at least the abstract of Wang). As Eykholt teaches in at least paragraph [0025] that its neural network architecture may be used to strengthen any type of network classifier, one of ordinary skill in the art would understand how to utilize this architecture from Eykholt to implement the models comprising the federated learning model from Wang. Regarding claim 2, the combination of Wang and Eykholt teaches the federated learning method using data digest of claim 1, wherein the general model comprises a first feature extractor, a second feature extractor and a classifier (Eykholt para. [0020] recites “a DNN has been described in literature by a function g: X [Wingdings font/0xE0] Y, where X is an input space, and Y is an output space representing a categorical set. Each f, represents a layer, and FL is the last output layer. The last output layer creates a mapping from a hidden space to the output space (class labels) through a softmax function that outputs a vector of real numbers in the range [0, 1] that add up to 1”. Eykholt para. [0021] recites “in a DNN 100 typically the neurons are aggregated in layers, and different layers may perform different transformations on their inputs. As depicted, signals (typically real numbers) travel from the first layer (the input layer) 102 to the last layer (the output layer) 104, via traversing one or more intermediate (the hidden layers) 106. Hidden layers 106 provide the ability to extract features from the input layer 102. As depicted in FIG. 1, there are two hidden layers, but this is not a limitation” (i.e., a general model can comprise at least two layers which each extract features and a final layer which outputs a label, or classification)), and updating the general model to generate the client model according to the plurality of raw data, the plurality of encoded features, the plurality of labels corresponding to the plurality of encoded features, and the present client loss function comprises: inputting the plurality of raw data to the first feature extractor to generate a first feature, inputting the plurality of encoded features to the second feature extractor to generate a second feature (Wang section 2 para. 1 recites “We consider a server and a set of K clients, indexed by K = {1, . . ., K}, who work together to train a machine learning model by solving a distributed optimization problem (EQ1)”. Section 2 para. 2 recites “The server updates the global model by using the aggregated local model updates of the clients in (EQ4)” (i.e., updating the general model according to the information from the client models, wherein the model could comprise one or more layers which extract features like those taught by Eykholt)); inputting a concatenation of the first feature and the second feature to the classifier to generate a predicted result (Eykholt para. [0018] recites “Each network unit receives an input vector from its connected neurons and outputs a value that will be passed to the following layers”. Eykholt para. [0022] recites “During training, parameters related to each layer are randomly initialized, and input samples (xi, yi) are fed through the network. The output of the network is a prediction g(xi) associated with the ith sample” (i.e., features extracted by the hidden layers are concatenated and passed through to final classifier layer, which outputs a prediction)); and inputting the predicted result and an actual result to the present client loss function, and adjusting a weight of at least one of the first feature extractor, the second feature extractor, and the classifier according to an output of the present client loss function (Eykholt para. [0022] recites “The DNN 100 is trained using a training data set, thereby resulting in generation of a set of weights corresponding to the trained DNN. The output of the network is a prediction g(xi) associated with the ith sample. To train the DNN, the difference between a predicted output g(xi) and its true label, yi, is modeled with a loss function, J(g(xi), yi), which is back-propagated into the network to update the model parameters” (i.e., using a loss function to adjust, or backpropagate, weights of the trained model)). Regarding claim 3, the combination of Wang and Eykholt teaches the federated learning method using data digest of claim 1, wherein the general model comprises a first feature extractor, a second feature extractor and a classifier (Eykholt para. [0020] recites “a DNN has been described in literature by a function g: X [Wingdings font/0xE0] Y, where X is an input space, and Y is an output space representing a categorical set. Each f, represents a layer, and FL is the last output layer. The last output layer creates a mapping from a hidden space to the output space (class labels) through a softmax function that outputs a vector of real numbers in the range [0, 1] that add up to 1”. Eykholt para. [0021] recites “in a DNN 100 typically the neurons are aggregated in layers, and different layers may perform different transformations on their inputs. As depicted, signals (typically real numbers) travel from the first layer (the input layer) 102 to the last layer (the output layer) 104, via traversing one or more intermediate (the hidden layers) 106. Hidden layers 106 provide the ability to extract features from the input layer 102. As depicted in FIG. 1, there are two hidden layers, but this is not a limitation” (i.e., a general model can comprise at least two layers which each extract features and a final layer which outputs a label, or classification)), and generating the replacement model according to the digest of the absent client and the absent client loss function comprises: inputting the digest of the absent client to a guidance producer to generate a piece of guidance (Wang section 4 para. 1 recites “we develop a new algorithm to improve the convergence bound of FL with client dropout. Our key idea is to find a better substitute when client k drops out in round t. This is possible by noticing that σ2ij are different across client pairs and the local model updates are more similar when the clients’ data distributions are more similar. Thus, when a client i drops out, one can use the local model update as a replacement if j shares a similar data distribution with i, or in our terminology, j is a friend of i”. Section 4.1 para. 4 recites “Clients. For any dropout client k, the server looks up the similarity score between k and every non-dropout client, finds the one with the highest similarity score, and uses the local model update as a substitute when computing the global update” (i.e., using the server, or guidance producer, to generate data to support an absent model, or guidance as described in paragraph [0015] of Applicant’s specification)); inputting the piece of guidance to the first feature extractor to generate a first feature; inputting the digest of the absent client to the second feature extractor to generate a second feature; inputting a concatenation of the first feature and the second feature to the classifier to generate a predicted result (Eykholt para. [0018] recites “Each network unit receives an input vector from its connected neurons and outputs a value that will be passed to the following layers”. Eykholt para. [0022] recites “During training, parameters related to each layer are randomly initialized, and input samples (xi, yi) are fed through the network. The output of the network is a prediction g(xi) associated with the ith sample” (i.e., features extracted by the hidden layers are concatenated and passed through to final classifier layer, which outputs a prediction. One of ordinary skill in the art would recognize that these features could be related to the data generated to support an absent model, or guidance, as taught by Wang)); and inputting the predicted result and an actual result to the absent client loss function, and adjusting a weight of at least one of the first feature extractor, the second feature extractor, and the classifier according to an output of the abs
Read full office action

Prosecution Timeline

Dec 20, 2022
Application Filed
Sep 25, 2025
Non-Final Rejection — §101, §103, §DP
Apr 09, 2026
Response after Non-Final Action

Precedent Cases

Applications granted by this same examiner with similar technology. Study what changed to get past this examiner.

Patent 12572720
METHODS AND APPARATUSES FOR RESOURCE-OPTIMIZED FERMIONIC LOCAL SIMULATION ON QUANTUM COMPUTER FOR QUANTUM CHEMISTRY
2y 5m to grant Granted Mar 10, 2026
Patent 12572723
METHODS AND APPARATUSES FOR RESOURCE-OPTIMIZED FERMIONIC LOCAL SIMULATION ON QUANTUM COMPUTER FOR QUANTUM CHEMISTRY
2y 5m to grant Granted Mar 10, 2026
Patent 12555023
REINFORCEMENT LEARNING EXPLORATION BY EXPLOITING PAST EXPERIENCES FOR CRITICAL EVENTS
2y 5m to grant Granted Feb 17, 2026
Patent 12530434
Classifying Data by Manipulating the Quantum States of Qubits
2y 5m to grant Granted Jan 20, 2026
Patent 12462173
QUANTUM CIRCUIT AND METHODS FOR USE THEREWITH
2y 5m to grant Granted Nov 04, 2025

AI Strategy Recommendation

Click below to generate an AI-powered prosecution strategy using examiner precedents, rejection analysis, and claim mapping.
Powered by AI — typically takes 5-10 seconds

Prosecution Projections

1-2
Expected OA Rounds
24%
Grant Probability
27%
With Interview (+3.0%)
4y 2m
Median Time to Grant
Low
PTA Risk
Based on 82 resolved cases by this examiner