DETAILED ACTION
The action is in response to the original filing on June 30, 2022 and the Remarks and Amendments filed on 11/242025. Claims 1-20 are pending and have been considered below. Claims 1, 8 and 15 are independent claims and claims 1-20 have been amended.
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 .
Information Disclosure Statement
The information disclosure statement (IDS) submitted on12/26/2025 has been considered by the examiner.
Claim Objections
The objection to claims 14 and 19 because of the informalities, have been withdrawn as necessitated by the amendment.
Claim Rejections - 35 USC § 103
In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis (i.e., changing from AIA to pre-AIA ) for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status.
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
Claims 1-3, 8-10 and 14-17 are rejected under 35 U.S.C. 103 as being unpatentable over Kourtellis et al. (EP 4083868 A1, hereinafter Kourtellis) in view of Jagyasi et al. (US 2023/0259812 A1, hereinafter Jagyasi) in further view of Lei et al. (CN 113837761 B, hereinafter Lei).
Regarding claim 1, Kourtellis teaches [a] computer-implemented method comprising: configuring a first trusted execution environment (TEE) to house confidential local data of a first server; (Kourtellis, Fig. 1; As depicted in the figure above, the “private dataset” necessarily comprising confidential local data is input to and house[d] within a first trusted execution environment.)
configuring a second TEE to house…data of a second server; (Kourtellis, Abstract; “(1) if needed, transferring public knowledge (110), through a secure channel between a server TEE (111) and a client TEE (121),” wherein by “transferring public knowledge” from “a server TEE” to “a client TEE” indicates that a second TEE is hous[ing] data of a second server.).
Kourtellis does not explicitly teach confidential local data of a second server. However, Jagyasi, implementing cross-over model transfer between worker nodes in a federated learning system, teaches this limitation (Jagyasi, [0032]; “GDPR protected datasets may include customer information and other private data that relate to the supply of the electric energy (such as historical demand time series 302, 304, and 306 at each node Pl, P2, ... , and PN). The sharable datasets, for example, may include statistical measures 312 of the private historical electricity demand time series data 302, 304, and 306 at each node Pl, P2, ... , and PN, provided that such statistical measures do not reveal individual private underlying datasets,” thereby indicating that
each node or server in the federated learning system maintains its own set of confidential local data.).
Jagyasi is analogous to the claimed invention as both are from the same field of endeavor, that is, implementing cross-over model transfer to assess the contribution of individual nodes to the overall performance of a federated learning system. The model exchange of Kourtellis occurs between a server housing public data and a client housing private data. Jagyasi, however, implements a cross-over model transfer step wherein worker nodes, each housing their own private datasets, exchange the parameters of their respective machine learning models (Jagyasi, [0051]; “For a current training round, the server may start by making cross-over decision among the individual local nodes currently selected or retained as participating in the federated learning, as shown by 710. The cross-over may include passing the model architectural parameters and other parameters, as described in more detail below, from one node to another node.”). 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 the node-level TEEs of Kourtellis with the cross-over model transfer of Jagyasi. The motivation to do so is to assess the benefit each individual node contributes to the overall system (Jagyasi, [0051]; “Such metrics may be used by the central server for determining fitness of the local nodes and for selection of local nodes for the next round of training, including weeding out or eliminating unfit nodes thereby only retaining the fit local nodes”).
Kourtellis further teaches establishing one or more confidential communications channels electronically connecting the first TEE, the second TEE, the first sever, and the second server; (Kourtellis, Abstract; “(1) if needed, transferring public knowledge (110), through a secure channel between a server TEE (111) and a client TEE (121),” wherein “a secure channel between a server TEE and a client TEE” encompasses one or more confidential communications channels electronically connecting the first TEE, the second TEE, the first sever, and the second server.) transmitting a first machine learning (ML) model of the first server through a portion of the one or more confidential communications channels into the second TEE; (Kourtellis, Abstract; “(5): reporting by every client (12) to the server (11), through the secure channel, the updated data of the trained layer,” wherein “reporting…through the secure channel, the updated data of the trained layer” corresponds to transmitting a first machine learning (ML) model of the first server through a portion of the one or more confidential communications channels into the second TEE. Kourtellis, [0009]; “Instead of training the complete DNN model in an end-to-end fashion, the model can be trained layer-by-layer from scratch, i.e., greedy layer-wise training. This method starts by training a shallow model (e.g., one layer) until its convergence,” thereby specifying that each layer in a “DNN model” is itself a first machine learning (ML) model.)
Kourtellis does not explicitly teach executing within the second TEE the first ML model to perform a first ML model task. However, Lei, in the area of secure federated learning, teaches this limitation (Lei, Summary of the Invention, pp. 2, paragraph 4; “In federated learning, task issuing nodes and participant nodes can self-execute crowdsourcing learning tasks and perform model aggregation through smart contracts. Among them, smart contracts include task collection contracts and model aggregation contracts.” Lei, Summary of the Invention, pp. 2, paragraph 10; “The selected participants use their own datasets to train the model locally, and at the same time, in their own TEE environment, by comparing whether the hash values updated by the model are consistent, the correctness of the model training is generated,” wherein “train[ing] the model locally…in their own TEE environment” encompasses executing within the second TEE the first ML model to perform a first ML model task. Lei, Detailed Description, pp. 3, final paragraph; “When the participating nodes are determined, the participants will accept training tasks and start training and updating locally using the relevant data sets they hold,” further indicating that “the participating nodes” are perform[ing] a first ML model task.).
Lei is analogous to the claimed invention as both are from the same field of endeavor, that is, implementing trusted execution environments within federated learning systems. Therefore, it would have been obvious to one of ordinary skill in the art, before the effective filing date of the claimed invention, to modify the combined TEE-secured federated learning system of Kourtellis and Jagyasi to establish task contracts between nodes, as taught by Lei. The motivation to do so is to utilize the resources of other nodes in a network in the absence of adequate training data (Lei, Detailed Description, pp. 3, Step 1; “The task publishing node hopes to obtain an accurate model, but it lacks the data set required for model training. Therefore, it needs to cooperate to complete the training task through crowdsourcing. Before the task starts, the task issuing node first draws up a task solicitation contract (including training algorithms, rewards, training procedures, etc.), and sets specific requirements for qualified participants.”).
Kourtellis does not explicitly teach configured to generate first ML model matchmaking-evaluation outputs responsive to the confidential local data of the second server. However, Jagyasi, implementing cross-over model transfer between worker nodes in a federated learning system, teaches this limitation (Jagyasi, [0051]; “The local nodes may then proceed with its local training using the model architecture updated via the cross-over and mutation processes and based on the local training datasets until convergence (satisfaction of local training convergence conditions), and generating an evaluation of the resulting model in the current round of training, as shown by 730. Such evaluation may be generated in the form of shared model quality/performance metrics (e.g., mean absolute percentage error, or MAPE) at each of the participating local node and communicated to the central server as shown by 740. Such metrics may be used by the central server for determining fitness of the local nodes and for selection of local nodes for the next round of training, including weeding out or eliminating unfit nodes thereby only retaining the fit local nodes,” wherein “generating an evaluation of the resulting model” in the form of “metrics…for determining fitness of the local nodes” is equivalent to generat[ing] first ML model matchmaking-evaluation outputs responsive to the confidential local data of the second server. Specifically, “determining fitness” encompasses matchmaking.). Jagyasi is analogous to the claimed invention as both are from the same field of endeavor, that is, implementing cross-over model transfer to assess the contribution of individual nodes to the overall performance of a federated learning system. The model exchange of Kourtellis occurs between a server housing public data and a client housing private data. Jagyasi, however, implements a cross-over model transfer step wherein worker nodes, each housing their own private datasets, exchange the parameters of their respective machine learning models. 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 the node-level TEEs of Kourtellis with the cross-over model transfer of Jagyasi. The motivation to do so is to assess the benefit each individual node contributes to the overall system (Jagyasi, [0051]; “Such metrics may be used by the central server for determining fitness of the local nodes and for selection of local nodes for the next
round of training, including weeding out or eliminating unfit nodes thereby only retaining the fit local nodes”).
wherein the first ML model has been trained outside of the second TEE to perform the first ML model task responsive to the confidential local data of the first server; (Kourtellis, Abstract; “(4): local training of the target layer via FL within the client TEE (121) using a model partitioned execution,” wherein the “local training…within the client TEE” necessarily occurs outside of the second TEE corresponding to the “server TEE.” Furthermore, “local training” is equivalent to perform[ing] the first ML model task responsive to the confidential local data of the first server.)
Kourtellis does not explicitly teach using second matchmaker code…to determine a first performance metric associated with executing…the first ML model to perform the first ML model task; and using the first performance metric and the second matchmaker code…to perform portions of a benefit analysis to determine a benefit of the first server and the second server participating in a federated learning system. However, Jagyasi, implementing cross-over model transfer between worker nodes in a federated learning system, teaches these limitations.
using second matchmaker code…to determine a first performance metric associated with executing…the first ML model to perform the first ML model task; and wherein the benefit analysis includes generating, without relying on an execution of the proposed federated learning system, predicted benefit values for the first server and the second server based at least in part on predicted changes in one or more performance metrics that would result if the first server and the second server were to participate in the proposed federated learning system. (Jagyasi, [0051]; “The local nodes may then proceed with its local training using the model architecture updated via the cross-over and mutation processes and based on the local training datasets until convergence (satisfaction of local training convergence conditions), and generating an evaluation of the resulting model in the current round of training, as shown by 730. Such evaluation may be generated in the form of shared model quality/performance metrics (e.g., mean absolute percentage error, or MAPE) at each of the participating local node and communicated to the central server as shown by 740. Such metrics may be used by the central server for determining fitness of the local nodes and for selection of local nodes for the next round of training, including weeding out or eliminating unfit nodes thereby only retaining the fit local nodes,” wherein “quality/performance metrics…for determining fitness” encompass a first performance metric associated with executing the first ML model to perform the first ML model task. Jagyasi, [0069]; “The method and system may also be embedded in a computer program product, which includes all the features enabling the implementation of the operations described herein and which, when loaded in a computer system, is able to carry out these operations. Computer program in the present context means any expression, in any language, code or notation, of a set of instructions intended to cause a system having an information processing capability to perform a particular function,” thereby specifying that the matchmaking instructions for “determining fitness” take the form of computer “code.”)
using the first performance metric and the second matchmaker code…to perform portions of a benefit analysis to determine a benefit of the first server and the second server participating in a proposed federated learning system (Jagyasi, [0051]; “The local nodes may then proceed with its local training using the model architecture updated via the cross-over and mutation processes and based on the local training datasets until convergence (satisfaction of local training convergence conditions), and generating an evaluation of the resulting model in the current round of training, as shown by 730. Such evaluation may be generated in the form of shared model quality/performance metrics (e.g., mean absolute percentage error, or MAPE) at each of the participating local node and communicated to the central server as shown by 740. Such metrics may be used by the central server for determining fitness of the local nodes and for
selection of local nodes for the next round of training, including weeding out or eliminating unfit nodes thereby only retaining the fit local nodes,” wherein “eliminating unfit nodes” and “retaining the fit local nodes” is a form of benefit analysis [for] determin[ing] a benefit of the first server and the second server participating in a proposed federated learning system.). The determination is performed by the server prior to implementing or executing the proposed system, to evaluate which nodes are and are not fit to participate as part of the system or would provide a certain predicted performance change from other nodes based on the quality/performance metrics of combining certain nodes and weeding out unfit nodes--wherein the benefit analysis includes generating, without relying on an execution of the proposed federated learning system, predicted benefit values for the first server and the second server based at least in part on predicted changes in one or more performance metrics that would result if the first server and the second server were to participate in the proposed federated learning system.
Jagyasi is analogous to the claimed invention as both are from the same field of endeavor, that is, implementing cross-over model transfer to assess the contribution of individual nodes to the overall performance of a federated learning system. The model exchange of Kourtellis occurs between a server housing public data and a client housing private data. Jagyasi, however, implements a cross-over model transfer step wherein worker nodes, each housing their own private datasets, exchange the parameters of their respective machine learning models. 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 the node-level TEEs of Kourtellis with the cross-over model transfer and associated fitness determinations of Jagyasi. The motivation to do so is to assess the benefit each individual node contributes to the overall system (Jagyasi, [0051]; “Such metrics may be used by the central server for determining fitness of the local nodes and for selection of local nodes for the next round of training, including weeding out or eliminating unfit nodes thereby only retaining the fit local nodes”).
Kourtellis teaches within the second TEE (Kourtellis, Fig. 1, element 111; As depicted in the figure, the deep neural network layer is reported to the server TEE or second TEE. Note that Jagyasi does not explicitly implement its cross-over model exchange using TEEs. Kourtellis, however, teaches a method of model exchange between TEEs. Therefore, the combination outlined above can be alternatively described as an implementation of the cross-over model exchange and associated fitness combination using the TEEs of Kourtellis.).
Regarding claim 2, the combination of Kourtellis, Jagyasi and Lei teaches [t]he computer-implemented method of claim 1 (and thus the rejection of claim 1 is incorporated).
Kourtellis further teaches further comprising: transmitting a second ML model of the second server through another portion of the one or more confidential communications channels into the first TEE; (Kourtellis, Abstract; “(3): broadcasting one or more target training layer(s) through the secure channel from the server (11) to each client (12),” wherein the “one or more target training layer(s)” housed in “the server” encompasses a second ML model of the second server, and “each client (12),” as depicted in Fig. 1 of Kourtellis, includes a TEE.).
Kourtellis does not explicitly teach executing within the first TEE the second ML model to perform a second ML model task. However, Lei, in the area of secure federated learning, teaches this limitation (Lei, Summary of the Invention, pp. 2, paragraph 4; “In federated learning, task issuing nodes and participant nodes can self-execute crowdsourcing learning tasks and perform model aggregation through smart contracts. Among them, smart contracts include task collection contracts and model aggregation contracts.” Lei, Summary of the Invention, pp. 2, paragraph 10; “The selected participants use their own datasets to train the model locally, and at the same time, in their own TEE environment, by comparing whether the hash values updated by the model are consistent, the correctness of the model training is generated,” wherein “train[ing] the model locally…in their own TEE environment” encompasses executing within the first TEE the second ML model to perform a second ML model task. Lei, Detailed Description, pp. 3, final paragraph; “When the participating nodes are determined, the participants will accept training tasks and start training and updating locally using the relevant data sets they hold,” further indicating that “the participating nodes” are perform[ing] a second ML model task.).
Lei is analogous to the claimed invention as both are from the same field of endeavor, that is, implementing trusted execution environments within federated learning systems. Therefore, it would have been obvious to one of ordinary skill in the art, before the effective filing date of the claimed invention, to modify the combined TEE-secured federated learning system of Kourtellis and Jagyasi to establish task contracts between nodes, as taught by Lei. The motivation to do so is to utilize the resources of other nodes in a network in the absence of adequate training data (Lei, Detailed Description, pp. 3, Step 1; “The task publishing node hopes to obtain an accurate model, but it lacks the data set required for model training. Therefore, it needs to cooperate to complete the training task through crowdsourcing. Before the task starts, the task issuing node first draws up a task solicitation contract (including training algorithms, rewards, training procedures, etc.), and sets specific requirements for qualified participants.”).
Kourtellis does not explicitly teach wherein the second ML model has been trained outside…to perform the second ML model task responsive to the confidential local data of the second server. However, Jagyasi, implementing cross-over model transfer between worker nodes in a federated learning system, teaches this limitation (Jagyasi, [0050-51]; “For each intermediate rounds of training, the node selection process 702 may involve evaluating each local node participated in a previous round of training and eliminating unfit nodes and retain fit nodes for the current training round. For a current training round, the server may start by
making cross-over decision among the individual local nodes currently selected or retained as participating in the federated learning, as shown by 710. The cross-over may include passing the model architectural parameters and other parameters, as described in more detail below, from
one node to another node,” wherein a “cross-over” occurs at each “training round” including “intermediate rounds.” Therefore, prior to a given “cross-over” a second ML has been trained outside its given node to perform the second ML model task responsive to the confidential local data of the second server.).
Jagyasi is analogous to the claimed invention as both are from the same field of endeavor, that is, implementing cross-over model transfer to assess the contribution of individual nodes to the overall performance of a federated learning system. The model exchange of Kourtellis occurs between a server housing public data and a client housing private data. Jagyasi, however, implements a cross-over model transfer step wherein worker nodes, each housing their own private datasets, exchange the parameters of their respective machine learning models. 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 the node-level TEEs of Kourtellis with the cross-over model transfer and associated fitness determinations of Jagyasi. The motivation to do so is to assess the benefit each individual node contributes to the overall system (Jagyasi, [0051]; “Such metrics may be used by the central server for determining fitness of the local nodes and for selection of local nodes for the next round of training, including weeding out or eliminating unfit nodes thereby only retaining the fit local nodes”).
Kourtellis teaches the first TEE (Kourtellis, Fig. 1, element 121; “client TEE.”).
Kourtellis does not explicitly teach using system first matchmaker code…to determine a second performance metric associated with executing…the second ML model to perform the second ML model task; and using the first performance metric, the second performance metric, the first matchmaker code…and the second matchmaker…to perform portions of the benefit analysis to determine the benefit of the first server and the second
server participating in the proposed federated learning system. However, Jagyasi, implementing cross-over model transfer between worker nodes in a federated learning system, teaches these limitations.
using system first matchmaker code…to determine a second performance metric associated with executing…the second ML model to perform the second ML model task; and (Jagyasi, [0051]; “The local nodes may then proceed with its local training using the model architecture updated via the cross-over and mutation processes and based on the local training datasets until convergence (satisfaction of local training convergence conditions), and generating an evaluation of the resulting model in the current round of training, as shown by 730. Such evaluation may be generated in the form of shared model quality/performance metrics (e.g., mean absolute percentage error, or MAPE) at each of the participating local node and communicated to the central server as shown by 740. Such metrics may be used by the central server for determining fitness of the local nodes and for selection of local nodes for the next round of training, including weeding out or eliminating unfit nodes thereby only retaining the fit local nodes,” wherein “quality/performance metrics…for determining fitness” encompass a second performance metric associated with executing the second ML model to perform the second ML model task. Note that the “quality/performance metrics” are calculated “at each of the participating local node[s].” Therefore, performance metric[s] are calculated for both the first ML model and second ML model. Jagyasi, [0069]; “The method and system may also be embedded in a computer program product, which includes all the features enabling the implementation of the operations described herein and which, when loaded in a computer system, is able to carry out these operations. Computer program in the present context means any expression, in any language, code or notation, of a set of instructions intended to cause a system having an information processing capability to perform a particular function,” thereby specifying that the matchmaking instructions for “determining fitness” take the form of computer “code.”)
using the first performance metric, the second performance metric, the first matchmaker code…and the second matchmaker code…to perform portions of the benefit analysis to determine the benefit of the first server and the second server participating in the federated learning system (Jagyasi, [0051]; “The local nodes may then proceed with its local training using the model architecture updated via the cross-over and mutation processes and based on the local training datasets until convergence (satisfaction of local training convergence conditions), and generating an evaluation of the resulting model in the current round of training, as shown by 730. Such evaluation may be generated in the form of shared model quality/performance metrics (e.g., mean absolute percentage error, or MAPE) at each of the participating local node and communicated to the central server as shown by 740. Such metrics may be used by the central server for determining fitness of the local nodes and for selection of local nodes for the next round of training, including weeding out or eliminating unfit nodes thereby only retaining the fit local nodes,” wherein “eliminating unfit nodes” and “retaining the fit local nodes” is a form of benefit analysis [for] determin[ing] a benefit of the first server and the second server participating in a federated learning system. As outlined previously, the “quality/performance metric” calculations and associated “fitness” assessments are performed “at each of the participating local node[s].” In other words, the benefit analysis used to determine “unfit nodes” and “fit local nodes” is conducted using the first matchmaker code and the second matchmaker code.).
Jagyasi is analogous to the claimed invention as both are from the same field of endeavor, that is, implementing cross-over model transfer to assess the contribution of individual nodes to the overall performance of a federated learning system. The model exchange of Kourtellis occurs between a server housing public data and a client housing private data. Jagyasi, however, implements a cross-over model transfer step wherein worker nodes, each housing their own private datasets, exchange the parameters of their respective machine learning models. 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 the node-level TEEs of Kourtellis with the cross-over model transfer and associated fitness determinations of Jagyasi. The motivation to do so is to assess the benefit each individual node contributes to the overall system (Jagyasi, [0051]; “Such metrics may be used by the central server for determining fitness of the local nodes and for selection of local nodes for the next round of training, including weeding out or eliminating unfit nodes thereby only retaining the fit local nodes”).
Kourtellis teaches within the first TEE and within the second TEE (Kourtellis, Fig. 1, elements 111 and 121; As depicted in the figure, both the “client 12” and “server 11” house a TEE. As outlined in the rejection of claim 1, the TEE associated with the “client 12” is interpreted as the first TEE, and the TEE associated with the “server 11” is interpreted as the second TEE.).
Regarding claim 3, the combination of Kourtellis, Jagyasi and Lei teaches [t]he computer-implemented method of claim 2 (and thus the rejection of claim 2 is incorporated).
Kourtellis does not explicitly teach wherein using the first performance metric, the second performance metric, the first matchmaker code…and the second matchmaker code…to perform portions of the benefit analysis to determine the benefit of the first server and the second server participating in the federated learning system comprises transmitting information through the one or more confidential communications channels. However, Jagyasi, implementing cross-over model transfer between worker nodes in a federated learning system, teaches this limitation (Jagyasi, [0017]; “The communication networks 101 may include any combination of wireless or wireline network components that are either publicly or privately accessible by the local nodes 110, 112, and 114 and the central server or server group 102 (herein referred to as central server for simplicity),” wherein “wireless…network components that are…privately accessible by the local nodes” encompass confidential communications channels. Jagyasi, [0051]; “Such evaluation may be generated in the form of shared model quality/performance metrics (e.g., mean absolute percentage error, or MAPE) at each of the participating local node and communicated to the central server as shown by 740. Such metrics may be used by the central server for determining fitness of the local nodes and for selection of local nodes for the next round of training, including weeding out or eliminating unfit nodes thereby only retaining the fit local nodes,” wherein “communicat[ing] to the central server” the associated “quality/performance metrics” encompasses transmitting information through the one or more confidential communications channels.).
Jagyasi is analogous to the claimed invention as both are from the same field of endeavor, that is, implementing cross-over model transfer to assess the contribution of individual nodes to the overall performance of a federated learning system. The model exchange of Kourtellis occurs between a server housing public data and a client housing private data. Jagyasi, however, implements a cross-over model transfer step wherein worker nodes, each housing their own private datasets, exchange the parameters of their respective machine learning models. 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 the node-level TEEs of Kourtellis with the cross-
over model transfer and associated fitness determinations of Jagyasi. The motivation to do so is to assess the benefit each individual node contributes to the overall system (Jagyasi, [0051]; “Such metrics may be used by the central server for determining fitness of the local nodes and for selection of local nodes for the next round of training, including weeding out or eliminating unfit nodes thereby only retaining the fit local nodes”).
Claims 8-10 are system claims corresponding to the steps of claims 1-3 and are therefore rejected for the same reasons.
Regarding claim 14, the combination of Kourtellis, Jagyasi and Lei teaches [t]he computer system of claim 8 (and thus the rejection of claim 8 is incorporated)
Kourtellis does not explicitly teach wherein the benefit comprises a difference between: a first benefit that inures to the first server based on the first server participating in the proposed federated learning system; and a second benefit that inures to the second server based on the second server participating in the proposed federated learning system. However, Jagyasi, implementing cross-over model transfer between worker nodes in a federated learning system, teaches this limitation (Jagyasi, [0025]; “In addition, local nodes may be selectively enlisted and incentivized to participate in the federated learning,” thereby providing a first/second benefit that inures to the first/second server based on the first/second server participating in the federated learning system. This incentivization mechanism is recited at a general level for the entire system and thus encompasses any first or second server or “node.” “An evolutionary approach with a genetic algorithm may be taken to…weed out low-performing nodes in each training rounds. In such a manner, the number of nodes participating in the federated learning
may be significantly reduced and only the high-quality nodes (quantified in manners detailed below) moves on from training round to training round.” Note that the term difference as used herein is not to be construed as a subtraction; rather, it refers to the variation in benefits received by the candidate servers as explained at paragraph [0029] of the specification of the claimed invention, “Also differences between the data distribution of each member of the federation can result in members experiencing different model performance benefits.” The mechanism of Jagyasi accounts for this variation as “weed[ing] out low-performing nodes” while “selectively enlist[ing]” others indicates a difference in benefit or incentive.).
Jagyasi is analogous to the claimed invention as both are from the same field of endeavor, that is, implementing cross-over model transfer to assess the contribution of individual nodes to the overall performance of a federated learning system. The model exchange of Kourtellis occurs between a server housing public data and a client housing private data. Jagyasi, however, implements a cross-over model transfer step wherein worker nodes, each housing their own private datasets, exchange the parameters of their respective machine learning models. 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 the node-level TEEs of Kourtellis with the cross-over model transfer and associated fitness determinations of Jagyasi. The motivation to do so is to assess the benefit each individual node contributes to the overall system (Jagyasi, [0051]; “Such metrics may be used by the central server for determining fitness of the local nodes and for selection of local nodes for the next round of training, including weeding out or eliminating unfit nodes thereby only retaining the fit local nodes”).
Claims 15-17 are product claims corresponding to the steps of claims 1-3 and are therefore rejected for the same reasons.
Claims 4, 6, 11, 13, 18 and 20 are rejected under 35 U.S.C. 103 as being unpatentable over Kourtellis in view of Jagyasi, Lei, Mondal et al. (“Flatee: Federated Learning Across Trusted Execution Environments,” hereinafter Mondal) and Zhao et al. (“Efficient Client Contribution Evaluation for Horizontal Federated Learning,” hereinafter Zhao).
Regarding claim 4, the combination of Kourtellis, Jagyasi and Lei teaches [t]he computer-implemented method of claim 3 further comprising (and thus the rejection of claim 3 is incorporated).
Jagyasi does not explicitly teach …deleting from the first TEE the first ML model and the confidential local data of the second server; and deleting from the second TEE the second ML model and the confidential local data of the first server. However, Mondal, in the area of federated learning across trusted execution environments teaches these limitations (Mondal, 1.1 Contributions, pp. 2, paragraph 3; We have an FL server 𝑆 and a set of parties 𝑃 = 𝑃1,𝑃2,𝑃𝑛 where each 𝑃𝑖 has a private dataset 𝔻𝑖,” thereby specifying the data as “private” or confidential local data. Mondal, Fig. 1; This figure illustrates a federated learning system wherein each “participant” comprises a TEE containing a ML model. Therefore, the federated learning system necessarily comprises a first TEE and a second TEE. Mondal, Definition 2, pp. 3-4; “TEE.add(𝔼(∅,∅),data,code)→ 𝔼(∅,∅) loads the data and the associated code to the enclave…TEE.remove(𝔼(data,code))→ 𝔼(∅,∅) clears all the assigned memory and deassigns processing power assigned to the initialized enclave,” wherein “clear[ing] all the assigned memory” encompasses deleting from the first TEE the first ML model…and deleting from the second TEE the second ML model. The “TEE.remove” function also deletes the confidential local data of the second server and the confidential local data of the first server that were loaded in by the “TEE.add” function.).
Mondal is analogous to the claimed invention as both are from the same field of endeavor, that is, implementing trusted execution environments within federated learning systems. 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 the node evaluation of Jagyasi with the deletion functionality of Mondal. The motivation to do so is to allow a given participant to upload and remove data in a secure enclave that cannot be reached by malicious actors (Mondal, 2.2 Trusted Execution Environment, pp. 4, paragraphs 1-2; “An ‘ideal’ TEE is secure against all software and hardware attacks…One example of such a system is Intel SGX [6,3], which provides a secure container using trusted hardware to give a remote user the ability to upload the code and data to this container.”).
Mondal does not explicitly teach subsequent to performing the benefit analysis. However, Zhao, in the area of evaluating client contribution in federated learning systems, teaches this limitation (Zhao, 3.2. Comparison with LOO, pp. 3, col. 2, paragraphs 4-5; “As aforementioned, LOO[11] [leave-one-out] cannot directly measure the value of gradients uploaded by clients for each communication round, a specific client is deleted in each re-training iteration to evaluate the contribution of individual client. Afterwards, part of the highest-/lowest-contribution clients are removed following removing rate in re-training stage… At each round,
30% of the client gradients are removed with the highest (F-RCCE Removing Highest) or lowest (F-RCCE Removing Lowest) contribution values. The task model is updated with the remaining gradients. The validation accuracy of the task model is recorded for each round,” wherein removing a “specific client” prior to recording the validation accuracy encompasses deleting subsequent to performing the benefit analysis. Specifically, benefit analysis is performed by reviewing the effects of the deletion, which are illustrated in the following figures. Zhao, Fig. 2;
In other words, the deletion necessarily takes place prior to the construction of these graphs and the benefit analysis derived from them.).
Zhao is analogous to the claimed invention as both are from the same field of endeavor, that is, performing contribution analysis within federated learning systems. Mondal teaches a function that removes all data loaded into a trusted execution environment but does not explicitly teach that this deletion is performed prior to a benefit or contribution evaluation. Zhao teaches this limitation. Therefore, it would have been obvious to one of ordinary skill in the art, before the effective filing date of the claimed invention, to modify the deletion functionality of Mondal to occur prior to a contribution evaluation, as taught by Zhao. The motivation to do so is to analyze how important or beneficial individual nodes or clients within a federated learning system are to the global model (Zhao, 3.3. Experiments with corrupted data, pp. 4, col. 1, paragraph 1; “After removing the gradients with highest contribution calculated by F-RCCE, the performance of the global model has an obvious decline. And the performance of the global model is gratifying after removing the gradients with lowest contribution calculated by F-RCCE.” Zhao, 3.4. Impact of the number of clients, pp. 4, col. 1, paragraph 3; “It shows that, removing the highest-contribution gradients always degrades task model performance. Removing
the lowest-contribution gradients can sometimes benefit the validation accuracy, but sometimes causes destructive consequences.” Zhao, Fig. 2.).
Regarding claim 6, the combination of Jagyasi and Liu teaches the computer-implemented method of claim 5 further comprising (and thus the rejection of claim 5 is incorporated).
Jagyasi does not explicitly teach deleting from the single TEE: the first ML model; the confidential local data of the second server; the second ML model; and the confidential data of the first server. However, Mondal, in the area of federated learning across trusted execution environments teaches these limitations (Mondal, 1.1 Contributions, pp. 2, paragraph 3; We have an FL server 𝑆 and a set of parties 𝑃 = 𝑃1,𝑃2,𝑃𝑛 where each 𝑃𝑖 has a private dataset 𝔻𝑖,” thereby specifying the data as “private” or confidential local data. Mondal, Fig. 1; This figure illustrates a federated learning system wherein each “participant” comprises a TEE containing a ML model. Therefore, the federated learning system necessarily comprises a first TEE and a second TEE. Mondal, Definition 2, pp. 3-4; “TEE.add(𝔼(∅,∅),data,code)→ 𝔼(∅,∅) loads the data and he associated code to the enclave…TEE.remove(𝔼(data,code))→ 𝔼(∅,∅) clears all the assigned memory and deassigns processing power assigned to the initialized enclave,” wherein “clear[ing] all the assigned memory” encompasses deleting from the TEE: the first ML model and the second ML model. The “TEE.remove” function also deletes the data of the second server and the data of the first server that were loaded in by the “TEE.add” function.).
Mondal is analogous to the claimed invention as both are from the same field of endeavor, that is, implementing trusted execution environments within federated learning systems. 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 the node evaluation of Jagyasi with the deletion functionality of Mondal. The motivation to do so is to allow a given participant to upload and remove data in a secure enclave that cannot be reached by malicious actors (Mondal, 2.2 Trusted Execution Environment, pp. 4, paragraphs 1-2; “An ‘ideal’ TEE is secure against all software and hardware attacks…One example of such a system is Intel SGX [6,3], which provides a secure container using trusted hardware to give a remote user the ability to upload the code and data to this container.”).
Mondal does not explicitly teach subsequent to performing the benefit analysis. However, Zhao, in the area of evaluating client contribution in federated learning systems, teaches this limitation (Zhao, 3.2. Comparison with LOO, pp. 3, col. 2, paragraphs 4-5; “As aforementioned, LOO[11] [leave-one-out] cannot directly measure the value of gradients uploaded by clients for each communication round, a specific client is deleted in each re-training iteration to evaluate the contribution of individual client. Afterwards, part of the highest-/lowest-contribution clients are removed following removing rate in re-training stage… At each round,
30% of the client gradients are removed with the highest (F-RCCE Removing Highest) or lowest (F-RCCE Removing Lowest) contribution values. The task model is updated with the remaining gradients. The validation accuracy of the task model is recorded for each round,” wherein removing a “specific client” prior to recording the validation accuracy encompasses deleting subsequent to performing the benefit analysis. Specifically, benefit analysis is performed by reviewing the effects of the deletion, which are illustrated in Zhao, Fig. 2. In other words, the deletion necessarily takes place prior to the construction of these graphs and the benefit analysis derived from them.).
Zhao is analogous to the claimed invention as both are from the same field of endeavor, that is, performing contribution analysis within federated learning systems. Mondal teaches a function that removes all data loaded into a trusted execution environment but does not explicitly teach that this deletion is performed prior to a benefit or contribution evaluation. Zhao teaches this limitation. Therefore, it would have been obvious to one of ordinary skill in the art, before the effective filing date of the claimed invention, to modify the deletion functionality of Mondal to occur prior to a contribution evaluation, as taught by Zhao. The motivation to do so is to analyze how important or beneficial individual nodes or clients within a federated learning system are to the global model (Zhao, 3.3. Experiments with corrupted data, pp. 4, col. 1, paragraph 1; “After removing the gradients with highest contribution calculated by F-RCCE, the performance of the global model has an obvious decline. And the performance of the global model is gratifying after removing the gradients with lowest contribution calculated by F-RCCE.” Zhao, 3.4. Impact of the number of clients, pp. 4, col. 1, paragraph 3; “It shows that, removing the highest-contribution gradients always degrades task model performance. Removing
the lowest-contribution gradients can sometimes benefit the validation accuracy, but sometimes causes destructive consequences.” Zhao, Fig. 2.).
Claims 11 and 13 are system claims corresponding to the steps of claims 4 and 6 and are therefore rejected for the same reasons.
Claims 18 and 20 are product claims corresponding to the steps of claims 4 and 6 and are therefore rejected for the same reasons.
Claims 5, 7, 12, and 19 are rejected under 35 U.S.C. 103 as being unpatentable over Kourtellis in view of Jagyasi, Lei and Kuznetsov et al. (“SecureFL: Privacy Preserving Federated Learning with SGX and TrustZone,” hereinafter Kuznetsov).
Regarding claim 5, the combination of Kourtellis, Jagyasi and Lei teaches [t]he computer-implemented method of claim 3 (and thus the rejection of claim 3 is incorporated).
Kourtellis does not explicitly teach wherein a single TEE comprises the first TEE and the second TEE. However, Kuznetsov, in the area of privacy preserving federated learning, teaches this limitation (Kuznetsov, 4.2 Attestation, pp. 59, col. 2, paragraph 2; “SecureFL protects the privacy of data contributed by the data providers. Before a data provider contributes any data towards the federated learning process, attestation needs to be performed against the cloud provider and each data provider on the edge. Each data provider first performs attestation against the cloud server to verify the cloud TEE hardware and software. Once the cloud server is attested, the cloud server TEE software then performs attestation against each edge device to verify the device TEE hardware and software.” Here, “each data provider” uploads their data to a single “cloud provider” implemented with “TEE software” thereby encompassing a single TEE.).
Kuznetsov is analogous to the claimed invention as both are from the same field of endeavor, that is, privacy preserving federated learning. Therefore, it would have been obvious to one of ordinary skill in the art, before the effective filing date of the claimed invention, to substitute the node-level TEEs of Kourtellis with the single cloud provider TEE of Kuznetsov. The motivation to do so is to provide an efficient centralized method for securing data privacy wherein participating nodes in the federated learning system need only perform attestation against the cloud TEE rather than against each individual node in the network (Kuznetsov, 4.2 Attestation, pp. 59, col. 2, paragraph 3; “This method allows each data provider to perform transitive attestation of all other data providers without having to attest each party directly. Each data provider needs only to perform attestation against the TEE environment of the cloud server
which then continues attestation of all other data providers in the federated learning environment.”).
Regarding claim 7, the combination of Kourtellis, Jagyasi and Lei teaches [t]he computer-implemented method of claim 5 (and thus the rejection of claim 5 is incorporated).
Kourtellis does not explicitly teach wherein the single TEE is implemented in a cloud computing server. However, Kuznetsov, in the area of privacy preserving federated learning, teaches this limitation (Kuznetsov, 4.2 Attestation, pp. 59, col. 2, paragraph 2; “SecureFL protects the privacy of data contributed by the data providers. Before a data provider contributes any data towards the federated learning process, attestation needs to be performed against the cloud provider and each data provider on the edge. Each data provider first performs attestation against the cloud server to verify the cloud TEE hardware and software. Once the cloud server is attested, the cloud server TEE software then performs attestation against each edge device to verify the device TEE hardware and software.” Here, “each data provider” uploads their data to a single “cloud provider” implemented with “TEE software” thereby indicating that the single TEE is implemented in a cloud computing server.).
Kuznetsov is analogous to the claimed invention as both are from the same field of endeavor, that is, privacy preserving federated learning. Therefore, it would have been obvious to one of ordinary skill in the art, before the effective filing date of the claimed invention, to substitute the node-level TEEs of Kourtellis with the single cloud provider TEE of Kuznetsov. The motivation to do so is to provide an efficient centralized method for securing data privacy wherein participating nodes in the federated learning system need only perform attestation against the cloud TEE rather than against each individual node in the network (Kuznetsov, 4.2
Attestation, pp. 59, col. 2, paragraph 3; “This method allows each data provider to perform transitive attestation of all other data providers without having to attest each party directly. Each data provider needs only to perform attestation against the TEE environment of the cloud server which then continues attestation of all other data providers in the federated learning environment.”).
Claim 12 is a system claim corresponding to the steps of claim 5 and is therefore rejected for the same reasons.
Claim 19 is a product claim corresponding to the steps of claim 5 and is therefore rejected for the same reasons.
Response to Arguments
Applicant’s arguments and amendments, filed 11/24/2025, regarding the rejections have been fully considered and are not persuasive.
Applicant argues that the prior art does not teach the claims as amended because “the claims require paired instantiation of matchmaker code within two corresponding TEEs and bilateral cross execution of remote models on confidential local data. Claim 1 requires using second matchmaker code within the second TEE to determine a first performance metric associated with executing within the second TEE the first ML model to perform the first ML model task. Claim 2 requires the complementary using first matchmaker code within the first TEE to determine a second performance metric associated with executing within the first TEE the second ML model to perform the second ML model task and then using both metrics together with both matchmaker code instances to perform portions of the benefit analysis.…”(p.14). The examiner disagrees, Lei teaches “The selected participants use their own datasets to train the model locally, and at the same time, in their own TEE environment, by comparing whether the hash values updated by the model are consistent, the correctness of the model training is generated,” (Summary of the Invention, pp. 2, paragraph 10)-- wherein “train[ing] the model locally…in their own TEE environment” encompasses executing within the second TEE the first ML model to perform a first ML model task. “The local nodes may then proceed with its local training using the model architecture updated via the cross-over and mutation processes and based on the local training datasets until convergence (satisfaction of local training convergence conditions), and generating an evaluation of the resulting model in the current round of training, as shown by 730. Such evaluation may be generated in the form of shared model quality/performance metrics (e.g., mean absolute percentage error, or MAPE) at each of the participating local node and communicated to the central server as shown by 740. Such metrics may be used by the central server for determining fitness of the local nodes and for selection of local nodes for the next round of training, including weeding out or eliminating unfit nodes thereby only retaining the fit local nodes,” (Jagyasi, [0051]; wherein “eliminating unfit nodes” and “retaining the fit local nodes” is a form of benefit analysis [for] determin[ing] a benefit of the first server and the second server participating in a federated learning system. As outlined previously, the “quality/performance metric” calculations and associated “fitness” assessments of the model sent to the nodes are performed “at each of the participating local node[s].” In other words, the benefit analysis used to determine “unfit nodes” and “fit local nodes” is conducted using the first matchmaker code and the second matchmaker code.), using the first, and second performance metrics.
Additionally, the Applicant states that Jagyasi fails to teach “There is no disclosure in Jagyasi of code in two enclaves coordinating across a confidential channel to perform a bilateral benefit analysis. ….”. Examiner respectfully disagrees. Jagyasi discloses implementing cross-over model transfer between worker nodes in a federated learning system (Jagyasi, [0017]; “The communication networks 101 may include any combination of wireless or wireline network components that are either publicly or privately accessible by the local nodes 110, 112, and 114 and the central server or server group 102 (herein referred to as central server for simplicity),” wherein “wireless…network components that are…privately accessible by the local nodes” encompass confidential communications channels. Jagyasi, [0051].
Further, the Applicant indicates that “the claims require that the cross execution and benefit analysis operate on confidential local data inside the TEEs. The recited performance metrics are associated with executing a received remote model inside the evaluator's TEE to perform a model task responsive to that evaluator's confidential local data, to generate matchmaking evaluation outputs”(p.15). .
Furthermore, the Applicant argues that “the claims require post analysis secure deletion from the TEEs. Claims 4 and 6 require deleting from the first TEE the first ML model and the confidential local data of the second server and deleting from the second TEE the second ML model and the confidential local data of the first server subsequent to performing the benefit analysis…”(p.15). The examiner disagrees, because Mondal teaches “TEE.add(𝔼(∅,∅),data,code)→ 𝔼(∅,∅) loads the data and the associated code to the enclave…TEE.remove(𝔼(data,code))→ 𝔼(∅,∅) clears all the assigned memory and deassigns processing power assigned to the initialized enclave,” , Definition 2, pp. 4-5; wherein “clear[ing] all the assigned memory” encompasses and is equivalent to deleting from the first TEE the first ML model…and deleting from the second TEE the second ML model. The “TEE.remove” function also deletes the confidential local data of the second server and the confidential local data of the first server that were loaded in by the “TEE.add” function.).
Furthermore, the Applicant states that “Applicant has amended the independent claims to make explicit that the claimed benefit analysis generates predicted benefit values for the first and second servers without relying on an execution of the proposed federated learning system and that those predicted benefits are based at least in part on predicted changes in one or more performance metrics that would result if the parties were to participate. Neither Jagyasi's in training fitness computations nor the cited TEE and secure channel references disclose or suggest such a pre-execution predictive analysis…” (p.16). The examiner disagrees, since Jagyasi shows that the determination is performed by the server prior to implementing or executing the proposed system, to evaluate which nodes are and are not fit to participate as part of the system or would provide a certain predicted performance change from other nodes based on the quality/performance metrics of combining certain nodes and weeding out unfit nodes(51)--wherein the benefit analysis includes generating, without relying on an execution of the proposed federated learning system, predicted benefit values for the first server and the second server based at least in part on predicted changes in one or more performance metrics that would result if the first server and the second server were to participate in the proposed federated learning system.
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to CESAR PAULA whose telephone number is (571)272-4128. The examiner can normally be reached Monday - Friday, 6.30am- 4:30 pm ET.
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, David Wiley can be reached at (571)272-3923. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/CESAR B PAULA/Supervisory Patent Examiner, Art Unit 2145