Prosecution Insights
Last updated: July 17, 2026
Application No. 18/279,754

PARALLELIZING MOMENT-BASED OPTIMIZATIONS WITH BLOCKWISE MODEL-UPDATE FILTERING

Non-Final OA §101§102§Other
Filed
Aug 31, 2023
Priority
Apr 19, 2021 — nonprovisional of PCTCN2021088167
Examiner
BARRETT, RYAN S
Art Unit
2148
Tech Center
2100 — Computer Architecture & Software
Assignee
Microsoft Technology Licensing, LLC
OA Round
1 (Non-Final)
65%
Grant Probability
Moderate
1-2
OA Rounds
5m
Est. Remaining
99%
With Interview

Examiner Intelligence

Grants 65% of resolved cases
65%
Career Allowance Rate
271 granted / 419 resolved
+9.7% vs TC avg
Strong +43% interview lift
Without
With
+42.9%
Interview Lift
resolved cases with interview
Typical timeline
3y 3m
Avg Prosecution
14 currently pending
Career history
441
Total Applications
across all art units

Statute-Specific Performance

§101
0.3%
-39.7% vs TC avg
§103
38.1%
-1.9% vs TC avg
§102
1.1%
-38.9% vs TC avg
§112
0.5%
-39.5% vs TC avg
Black line = Tech Center average estimate • Based on career data from 419 resolved cases

Office Action

§101 §102 §Other
DETAILED ACTION The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA . This action is responsive to the Preliminary Amendment filed on 3/11/2024. Claims 1-15 are pending in the case. Claims 1, 10, and 15 are independent claims. Claim Rejections - 35 U.S.C. § 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. Claim 15 is rejected under 35 U.S.C. § 101 because the claimed invention is directed to non-statutory subject matter. During examination, the claims must be interpreted as broadly as their terms reasonably allow. In re American Academy of Science Tech Center, 367 F.3d 1359, 1369, 70 U.S.P.Q.2d 1827, 1834 (Fed. Cir. 2004). Independent claim 15 recites a “computer program product,” which is not defined by the specification. The broadest reasonable interpretation of a claim drawn to a system covers software per se in view of the ordinary and customary meaning of computer program product, particularly when the specification is silent. Software per se is not a “process,” a “machine,” a “manufacture,” or a “composition of matter” as defined in 35 U.S.C. § 101. Examiner suggests adding a recitation of a “machine readable storage medium” or a “non-transitory machine readable medium.” Claim Rejections - 35 U.S.C. § 102 In the event the determination of the status of the application as subject to AIA 35 U.S.C. §§ 102 and 103 (or as subject to pre-AIA 35 U.S.C. §§ 102 and 103) is incorrect, any correction of the statutory basis (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 the appropriate paragraphs of 35 U.S.C. § 102 that form the basis for the rejections under this section made in this Office action: A person shall be entitled to a patent unless – (a)(1) the claimed invention was patented, described in a printed publication, or in public use, on sale or otherwise available to the public before the effective filing date of the claimed invention. Claims 1-15 are rejected under 35 U.S.C. § 102(a)(1) as being anticipated by Chen et al. (“Parallelizing Adam Optimizer with Blockwise Model-Update Filtering,” added to IEEE Xplore 09 April 2020, https://ieeexplore.ieee.org/document/9052983, hereinafter Chen). As to independent claim 1, Chen discloses a computer-implemented method, comprising: providing, by a master node (“BMUF-based training framework,” page 3027 section “2.1. BMUF-based framework” line 1), a global model parameter (“Starting from a common initial model parameter θ t - τ ( i n i t ) ,” page 3027 section “2.1. BMUF-based framework” lines 4-5) and a global moment parameter (“We can simply set initial Adam buffers for next IBPO as the averaged buffers of local optimizers as follows: m t ( i n i t ) = m - t =   1 N ∑ i = 1 N m t , i where m t , i and v t , i are moment buffers of the i -th worker,” page 3028 column right paragraph 1 lines 3-8) to a plurality of worker nodes for a training cycle (“BMUF-based training framework,” page 3027 section “2.1. BMUF-based framework” line 1); receiving, from the plurality of worker nodes, a plurality of local model parameters and a plurality of local moment parameters, the plurality of local model parameters and the plurality of local moment parameters being generated by respective ones of the plurality of worker nodes performing moment-based optimizations in parallel for the training cycle based on the global model parameter and the global moment parameter (“we propose to parallelize Adam with blockwise model-update filtering (BMUF) [6]. BMUF is a general communication efficient distributed optimization framework, where each worker optimized its local model for several steps to get a local model-update first, then local model-updates are aggregated and filtered by a historical model-update with a block momentum to update a global model,” page 3027 section “1. INTRODUCTION” paragraph 2 lines 6-12); aggregating the plurality of local model parameters to obtain an aggregated model parameter (“local model-updates are aggregated and filtered by a historical model-update with a block momentum to update a global model,” page 3027 section “1. INTRODUCTION” paragraph 2 lines 10-12) and aggregating the plurality of local moment parameters to obtain an aggregated moment parameter (“From the above analysis, Δ n can be treated as a model-update by processing p n mini-batches serially. So m t ( i n i t ) and v t ( i n i t ) compatible with θ t ( i n i t ) can be treated as updated buffers after processing η p n mini-batches from m - t and v - t ,” page 3028 column right paragraph 2 lines 1-4); generating model update information for the training cycle based on the aggregated model parameter and historical model update information for a preceding training cycle (“local model-updates are aggregated and filtered by a historical model-update with a block momentum to update a global model,” page 3027 section “1. INTRODUCTION” paragraph 2 lines 10-12); updating the global model parameter based on the model update information for the training cycle to obtain an updated global model parameter (“local model-updates are aggregated and filtered by a historical model-update with a block momentum to update a global model,” page 3027 section “1. INTRODUCTION” paragraph 2 lines 10-12); updating the global moment parameter based on the aggregated moment parameter to obtain an updated global moment parameter compatible with the updated global model parameter (“From the above analysis, Δ n can be treated as a model-update by processing p n mini-batches serially. So m t ( i n i t ) and v t ( i n i t ) compatible with θ t ( i n i t ) can be treated as updated buffers after processing η p n mini-batches from m - t and v - t ,” page 3028 column right paragraph 2 lines 1-4); and providing the updated global model parameter (“Starting from a common initial model parameter θ t - τ ( i n i t ) ,” page 3027 section “2.1. BMUF-based framework” lines 4-5) and the updated global moment parameter (“We can simply set initial Adam buffers for next IBPO as the averaged buffers of local optimizers as follows: m t ( i n i t ) = m - t =   1 N ∑ i = 1 N m t , i where m t , i and v t , i are moment buffers of the i -th worker,” page 3028 column right paragraph 1 lines 3-8) to the plurality of worker nodes for performing moment-based optimizations in parallel for a succeeding training cycle (“BMUF-based training framework,” page 3027 section “2.1. BMUF-based framework” line 1). As to dependent claim 2, Chen further discloses a method wherein each local model parameter (“local model-updates are aggregated and filtered by a historical model-update with a block momentum to update a global model,” page 3027 section “1. INTRODUCTION” paragraph 2 lines 10-12) and each local moment parameter are generated by one of the plurality of worker nodes performing the moment-based optimizations for the training cycle with a predetermined number of mini-batches of training data (“From the above analysis, Δ n can be treated as a model-update by processing p n mini-batches serially. So m t ( i n i t ) and v t ( i n i t ) compatible with θ t ( i n i t ) can be treated as updated buffers after processing η p n mini-batches from m - t and v - t ,” page 3028 column right paragraph 2 lines 1-4), and updating the global moment parameter comprises: determining the number of equivalent mini-batches for the training cycle based on the predetermined number of mini-batches and the number of equivalent mini-batches for the preceding training cycle, the number of equivalent mini-batches for a training cycle representing a converted number of mini-batches used to generate the model update information for the training cycle (“block momentum can compensate per mini-batch’s inadequate contribution to final model-update caused by averaging operation to improve model performance. We define a variable p n to represent the number of equivalent mini-batches required to get Δ n ,” page 3028 column left paragraph 1 lines 1-5); and updating the global moment parameter based on the aggregated moment parameter and the number of equivalent mini-batches for the training cycle (“From the above analysis, Δ n can be treated as a model-update by processing p n mini-batches serially. So m t ( i n i t ) and v t ( i n i t ) compatible with θ t ( i n i t ) can be treated as updated buffers after processing η p n mini-batches from m - t and v - t ,” page 3028 column right paragraph 2 lines 1-4). As to dependent claim 3, Chen further discloses a method wherein updating the global moment parameter comprises: determining a first weight for the global moment parameter (“ β 1 m t - 1 ,” page 3028 column right line 2; “ β 2 v t - 1 ,” page 3028 column right line 3) and a second weight for the aggregated moment parameter (“ ( 1 - β 1 ) g t ,” page 3028 column right line 2; “ ( 1 - β 2 ) g t ,” page 3028 column right line 3) based on an exponential decay rate and the number of equivalent mini-batches for the training cycle (“the assigned weight to m t - τ ( i n i t ) is β 1 τ + η p n . If η is set to 1 - 1 N , lim n → + ∞ ⁡ ( τ + η p n ) = N τ . So m t - τ ( i n i t ) ’s weight decays exponentially as N increases, and consequently, its influence on m t ( i n i t ) will be alleviated,” page 3028 column right line last to page 3029 column left line 3); and generating a weighted sum of the global moment parameter with the first weight and the aggregated moment parameter with the second weight to obtain the updated global moment parameter (“ m t = β 1 m t - 1 + ( 1 - β 1 ) g t ,” page 3028 column right line 2; “ v t = β 2 v t - 1 + ( 1 - β 2 ) g t ⊙ g t ,” page 3028 column right line 3). As to dependent claim 4, Chen further discloses a method wherein updating the global model parameter comprises: updating the global model parameter based on the model update information for the training cycle to obtain an intermediate updated global model parameter (“ m - t = β 1 τ m t - τ ( i n i t ) + ∑ i = 1 τ β 1 τ - i 1 - β 1 g - t - τ + o ,” page 3028 column right equation 14); and updating the intermediate updated global model parameter based on the model update information for the training cycle to obtain the updated global model parameter (“ m t ( i n i t ) = β 1 τ ( β 1 η p n - 1 ) 1 - β 1 τ m t - τ ( i n i t ) + 1 - β 1 τ + η p n 1 - β 1 τ m - t ,” page 3028 column right equation 18). As to dependent claim 5, Chen further discloses a method wherein each local model parameter (“local model-updates are aggregated and filtered by a historical model-update with a block momentum to update a global model,” page 3027 section “1. INTRODUCTION” paragraph 2 lines 10-12) and each local moment parameter are generated by one of the plurality of worker nodes performing moment-based optimizations for the training cycle with a predetermined number of mini-batches of training data (“From the above analysis, Δ n can be treated as a model-update by processing p n mini-batches serially. So m t ( i n i t ) and v t ( i n i t ) compatible with θ t ( i n i t ) can be treated as updated buffers after processing η p n mini-batches from m - t and v - t ,” page 3028 column right paragraph 2 lines 1-4), and updating the global moment parameter comprises: determining the number of equivalent mini-batches for the training cycle based on the predetermined number of mini-batches and the number of equivalent mini-batches for the preceding training cycle, the number of equivalent mini-batches for a training cycle representing a converted number of mini-batches used to generate the model update information for the training cycle (“block momentum can compensate per mini-batch’s inadequate contribution to final model-update caused by averaging operation to improve model performance. We define a variable p n to represent the number of equivalent mini-batches required to get Δ n ,” page 3028 column left paragraph 1 lines 1-5); determining the number of equivalent mini-batches for the succeeding training cycle based on the predetermined number of mini-batches and the number of equivalent mini-batches for the training cycle (“ p n = η p n - 1 + τ ,” page 3028 column left equation 4); and updating the global moment parameter based on the aggregated moment parameter and the number of equivalent mini-batches for the succeeding training cycle (“From the above analysis, Δ n can be treated as a model-update by processing p n mini-batches serially. So m t ( i n i t ) and v t ( i n i t ) compatible with θ t ( i n i t ) can be treated as updated buffers after processing η p n mini-batches from m - t and v - t ,” page 3028 column right paragraph 2 lines 1-4). As to dependent claim 6, Chen further discloses a method wherein updating the global moment parameter comprises: determining a third weight for the global moment parameter (“ β 1 m t - 1 ,” page 3028 column right line 2; “ β 2 v t - 1 ,” page 3028 column right line 3) and a fourth weight for the aggregated moment parameter (“ ( 1 - β 1 ) g t ,” page 3028 column right line 2; “ ( 1 - β 2 ) g t ,” page 3028 column right line 3) based on an exponential decay rate and the number of equivalent mini-batches for the succeeding training cycle (“ ( 1 - β 1 ) g t ,” page 3028 column right line 2; “ ( 1 - β 2 ) g t ,” page 3028 column right line 3); and generating a weighted sum of the global moment parameter with the third weight and the aggregated moment parameter with the fourth weight to obtain the updated global moment parameter (“ m t = β 1 m t - 1 + ( 1 - β 1 ) g t ,” page 3028 column right line 2; “ v t = β 2 v t - 1 + ( 1 - β 2 ) g t ⊙ g t ,” page 3028 column right line 3). As to dependent claim 7, Chen further discloses a method wherein generating the model update information for the training cycle comprises: generating first model update information based on the aggregated model parameter and a block learning rate (“ ζ ( ϴ - t - ϴ t - τ ( i n i t ) ) ,” page 3027 column right equation 1); generating second model update information based on the historical model update information for the preceding training cycle and a block momentum (“ η Δ n - 1 ,” page 3027 column right equation 1); and combining the first model update information and the second model update information to generate the model update information for the training cycle (“ Δ n = η Δ n - 1 + ζ ( ϴ - t - ϴ t - τ ( i n i t ) ) ,” page 3027 column right equation 1), and wherein determining the number of equivalent mini-batches for the training cycle comprises: determining a first number of equivalent mini-batches based on the predetermined number of mini-batches (“ p 1 = τ ,” page 3028 column left equation 4) and the block learning rate (“We set ζ = 1 in this paper, which is a common practice of BMUF,” page 3028 column left lines 3-4); determining a second number of equivalent mini-batches based on the number of equivalent mini-batches for the preceding training cycle and the block momentum (“ p n = η p n - 1 + τ ,” page 3028 column left equation 4); and combining the first number of equivalent mini-batches and the second number of equivalent mini-batches to determine the number of equivalent mini-batches for the training cycle (“ lim n → + ∞ ⁡ p n = τ 1 - η ,” page 3028 column left equation 4). As to dependent claim 8, Chen further discloses a method wherein the block learning rate is set to 1 (“We set ζ = 1 in this paper, which is a common practice of BMUF,” page 3028 column left lines 3-4) and the block momentum is set based on the number of the plurality of worker nodes (“η is set to 1 - 1 N ,” page 3028 column left paragraph 1 line 11). As to dependent claim 9, Chen further discloses a method wherein the moment-based optimizations comprise Adam optimizations (“we propose to parallelize Adam with blockwise model-update filtering (BMUF) [6]. BMUF is a general communication efficient distributed optimization framework, where each worker optimized its local model for several steps to get a local model-update first, then local model-updates are aggregated and filtered by a historical model-update with a block momentum to update a global model,” page 3027 section “1. INTRODUCTION” paragraph 2 lines 6-12), the method further comprising: updating a bias correction term for the Adam optimizations based on the number of equivalent mini-batches for the training cycle (“Since the respective number of mini-batches of m t ( i n i t ) has been changed, its bias correction term should be changed accordingly,” page 3028 column right paragraph 3 lines 12-14); and providing the updated bias correction term (“ m t ( i n i t ) = β 1 τ ( β 1 η p n - 1 ) 1 - β 1 τ m t - τ ( i n i t ) + 1 - β 1 τ + η p n 1 - β 1 τ m - t ,” page 3028 column right equation 18) to the plurality of worker nodes for performing the Adam optimizations in parallel for a succeeding training cycle (“BMUF-based training framework,” page 3027 section “2.1. BMUF-based framework” line 1). As to independent claim 10, Chen discloses an electronic device, comprising: a processing unit (“computing node,” page 3029 column right paragraph 2 line 8); a memory coupled to the processing unit and storing instructions thereon, the instructions, when executed by the processing unit, performing acts (“computing node,” page 3029 column right paragraph 2 line 8) comprising: providing, by a master node (“BMUF-based training framework,” page 3027 section “2.1. BMUF-based framework” line 1), a global model parameter (“Starting from a common initial model parameter θ t - τ ( i n i t ) ,” page 3027 section “2.1. BMUF-based framework” lines 4-5) and a global moment parameter (“We can simply set initial Adam buffers for next IBPO as the averaged buffers of local optimizers as follows: m t ( i n i t ) = m - t =   1 N ∑ i = 1 N m t , i where m t , i and v t , i are moment buffers of the i -th worker,” page 3028 column right paragraph 1 lines 3-8) to a plurality of worker nodes for a training cycle (“BMUF-based training framework,” page 3027 section “2.1. BMUF-based framework” line 1); receiving, from the plurality of worker nodes, a plurality of local model parameters and a plurality of local moment parameters, the plurality of local model parameters and the plurality of local moment parameters being generated by respective ones of the plurality of worker nodes performing moment-based optimizations in parallel for the training cycle based on the global model parameter and the global moment parameter (“we propose to parallelize Adam with blockwise model-update filtering (BMUF) [6]. BMUF is a general communication efficient distributed optimization framework, where each worker optimized its local model for several steps to get a local model-update first, then local model-updates are aggregated and filtered by a historical model-update with a block momentum to update a global model,” page 3027 section “1. INTRODUCTION” paragraph 2 lines 6-12); aggregating the plurality of local model parameters to obtain an aggregated model parameter (“local model-updates are aggregated and filtered by a historical model-update with a block momentum to update a global model,” page 3027 section “1. INTRODUCTION” paragraph 2 lines 10-12) and aggregating the plurality of local moment parameters to obtain an aggregated moment parameter (“From the above analysis, Δ n can be treated as a model-update by processing p n mini-batches serially. So m t ( i n i t ) and v t ( i n i t ) compatible with θ t ( i n i t ) can be treated as updated buffers after processing η p n mini-batches from m - t and v - t ,” page 3028 column right paragraph 2 lines 1-4); generating model update information for the training cycle based on the aggregated model parameter and historical model update information for a preceding training cycle (“local model-updates are aggregated and filtered by a historical model-update with a block momentum to update a global model,” page 3027 section “1. INTRODUCTION” paragraph 2 lines 10-12); updating the global model parameter based on the model update information for the training cycle to obtain an updated global model parameter (“local model-updates are aggregated and filtered by a historical model-update with a block momentum to update a global model,” page 3027 section “1. INTRODUCTION” paragraph 2 lines 10-12); updating the global moment parameter based on the aggregated moment parameter to obtain an updated global moment parameter compatible with the updated global model parameter (“From the above analysis, Δ n can be treated as a model-update by processing p n mini-batches serially. So m t ( i n i t ) and v t ( i n i t ) compatible with θ t ( i n i t ) can be treated as updated buffers after processing η p n mini-batches from m - t and v - t ,” page 3028 column right paragraph 2 lines 1-4); and providing the updated global model parameter (“Starting from a common initial model parameter θ t - τ ( i n i t ) ,” page 3027 section “2.1. BMUF-based framework” lines 4-5) and the updated global moment parameter (“We can simply set initial Adam buffers for next IBPO as the averaged buffers of local optimizers as follows: m t ( i n i t ) = m - t =   1 N ∑ i = 1 N m t , i where m t , i and v t , i are moment buffers of the i -th worker,” page 3028 column right paragraph 1 lines 3-8) to the plurality of worker nodes for performing moment-based optimizations in parallel for a succeeding training cycle (“BMUF-based training framework,” page 3027 section “2.1. BMUF-based framework” line 1). As to dependent claim 11, Chen further discloses a device wherein each local model parameter (“local model-updates are aggregated and filtered by a historical model-update with a block momentum to update a global model,” page 3027 section “1. INTRODUCTION” paragraph 2 lines 10-12) and each local moment parameter are generated by one of the plurality of worker nodes performing moment-based optimizations for the training cycle with a predetermined number of mini-batches of training data (“From the above analysis, Δ n can be treated as a model-update by processing p n mini-batches serially. So m t ( i n i t ) and v t ( i n i t ) compatible with θ t ( i n i t ) can be treated as updated buffers after processing η p n mini-batches from m - t and v - t ,” page 3028 column right paragraph 2 lines 1-4), and updating the global moment parameter comprises: determining the number of equivalent mini-batches for the training cycle based on the predetermined number of mini-batches and the number of equivalent mini-batches for the preceding training cycle, the number of equivalent mini-batches for a training cycle representing a converted number of mini-batches used to generate the model update information for the training cycle (“block momentum can compensate per mini-batch’s inadequate contribution to final model-update caused by averaging operation to improve model performance. We define a variable p n to represent the number of equivalent mini-batches required to get Δ n ,” page 3028 column left paragraph 1 lines 1-5); and updating the global moment parameter based on the aggregated moment parameter and the number of equivalent mini-batches for the training cycle (“From the above analysis, Δ n can be treated as a model-update by processing p n mini-batches serially. So m t ( i n i t ) and v t ( i n i t ) compatible with θ t ( i n i t ) can be treated as updated buffers after processing η p n mini-batches from m - t and v - t ,” page 3028 column right paragraph 2 lines 1-4). As to dependent claim 12, Chen further discloses a device wherein updating the global moment parameter comprises: determining a first weight for the global moment parameter (“ β 1 m t - 1 ,” page 3028 column right line 2; “ β 2 v t - 1 ,” page 3028 column right line 3) and a second weight for the aggregated moment parameter (“ ( 1 - β 1 ) g t ,” page 3028 column right line 2; “ ( 1 - β 2 ) g t ,” page 3028 column right line 3) based on an exponential decay rate and the number of equivalent mini-batches for the training cycle (“the assigned weight to m t - τ ( i n i t ) is β 1 τ + η p n . If η is set to 1 - 1 N , lim n → + ∞ ⁡ ( τ + η p n ) = N τ . So m t - τ ( i n i t ) ’s weight decays exponentially as N increases, and consequently, its influence on m t ( i n i t ) will be alleviated,” page 3028 column right line last to page 3029 column left line 3); and generating a weighted sum of the global moment parameter with the first weight and the aggregated moment parameter with the second weight to obtain the updated global moment parameter (“ m t = β 1 m t - 1 + ( 1 - β 1 ) g t ,” page 3028 column right line 2; “ v t = β 2 v t - 1 + ( 1 - β 2 ) g t ⊙ g t ,” page 3028 column right line 3). As to dependent claim 13, Chen further discloses a device wherein updating the global model parameter comprises: updating the global model parameter based on the model update information for the training cycle to obtain an intermediate updated global model parameter (“ m - t = β 1 τ m t - τ ( i n i t ) + ∑ i = 1 τ β 1 τ - i 1 - β 1 g - t - τ + o ,” page 3028 column right equation 14); and updating the intermediate updated global model parameter based on the model update information for the training cycle to obtain the updated global model parameter (“ m t ( i n i t ) = β 1 τ ( β 1 η p n - 1 ) 1 - β 1 τ m t - τ ( i n i t ) + 1 - β 1 τ + η p n 1 - β 1 τ m - t ,” page 3028 column right equation 18). As to dependent claim 14, Chen further discloses a device wherein each local model parameter (“local model-updates are aggregated and filtered by a historical model-update with a block momentum to update a global model,” page 3027 section “1. INTRODUCTION” paragraph 2 lines 10-12) and each local moment parameter are generated by one of the plurality of worker nodes performing moment-based optimizations for the training cycle with a predetermined number of mini-batches of training data (“From the above analysis, Δ n can be treated as a model-update by processing p n mini-batches serially. So m t ( i n i t ) and v t ( i n i t ) compatible with θ t ( i n i t ) can be treated as updated buffers after processing η p n mini-batches from m - t and v - t ,” page 3028 column right paragraph 2 lines 1-4), and updating the global moment parameter comprises: determining the number of equivalent mini-batches for the training cycle based on the predetermined number of mini-batches and the number of equivalent mini-batches for the preceding training cycle, the number of equivalent mini-batches for a training cycle representing a converted number of mini-batches used to generate the model update information for the training cycle (“block momentum can compensate per mini-batch’s inadequate contribution to final model-update caused by averaging operation to improve model performance. We define a variable p n to represent the number of equivalent mini-batches required to get Δ n ,” page 3028 column left paragraph 1 lines 1-5); determining the number of equivalent mini-batches for the succeeding training cycle based on the predetermined number of mini-batches and the number of equivalent mini-batches for the training cycle (“ p n = η p n - 1 + τ ,” page 3028 column left equation 4); and updating the global moment parameter based on the aggregated moment parameter and the number of equivalent mini-batches for the succeeding training cycle (“From the above analysis, Δ n can be treated as a model-update by processing p n mini-batches serially. So m t ( i n i t ) and v t ( i n i t ) compatible with θ t ( i n i t ) can be treated as updated buffers after processing η p n mini-batches from m - t and v - t ,” page 3028 column right paragraph 2 lines 1-4). As to independent claim 15, Chen discloses a computer program product comprising executable instructions, the executable instructions, when executed on a device, cause the device to perform acts (“computing node,” page 3029 column right paragraph 2 line 8) comprising: providing, by a master node (“BMUF-based training framework,” page 3027 section “2.1. BMUF-based framework” line 1), a global model parameter (“Starting from a common initial model parameter θ t - τ ( i n i t ) ,” page 3027 section “2.1. BMUF-based framework” lines 4-5) and a global moment parameter (“We can simply set initial Adam buffers for next IBPO as the averaged buffers of local optimizers as follows: m t ( i n i t ) = m - t =   1 N ∑ i = 1 N m t , i where m t , i and v t , i are moment buffers of the i -th worker,” page 3028 column right paragraph 1 lines 3-8) to a plurality of worker nodes for a training cycle (“BMUF-based training framework,” page 3027 section “2.1. BMUF-based framework” line 1); receiving, from the plurality of worker nodes, a plurality of local model parameters and a plurality of local moment parameters, the plurality of local model parameters and the plurality of local moment parameters being generated by respective ones of the plurality of worker nodes performing moment-based optimizations in parallel for the training cycle based on the global model parameter and the global moment parameter (“we propose to parallelize Adam with blockwise model-update filtering (BMUF) [6]. BMUF is a general communication efficient distributed optimization framework, where each worker optimized its local model for several steps to get a local model-update first, then local model-updates are aggregated and filtered by a historical model-update with a block momentum to update a global model,” page 3027 section “1. INTRODUCTION” paragraph 2 lines 6-12); aggregating the plurality of local model parameters to obtain an aggregated model parameter (“local model-updates are aggregated and filtered by a historical model-update with a block momentum to update a global model,” page 3027 section “1. INTRODUCTION” paragraph 2 lines 10-12) and aggregating the plurality of local moment parameters to obtain an aggregated moment parameter (“From the above analysis, Δ n can be treated as a model-update by processing p n mini-batches serially. So m t ( i n i t ) and v t ( i n i t ) compatible with θ t ( i n i t ) can be treated as updated buffers after processing η p n mini-batches from m - t and v - t ,” page 3028 column right paragraph 2 lines 1-4); generating model update information for the training cycle based on the aggregated model parameter and historical model update information for a preceding training cycle (“local model-updates are aggregated and filtered by a historical model-update with a block momentum to update a global model,” page 3027 section “1. INTRODUCTION” paragraph 2 lines 10-12); updating the global model parameter based on the model update information for the training cycle to obtain an updated global model parameter (“local model-updates are aggregated and filtered by a historical model-update with a block momentum to update a global model,” page 3027 section “1. INTRODUCTION” paragraph 2 lines 10-12); updating the global moment parameter based on the aggregated moment parameter to obtain an updated global moment parameter compatible with the updated global model parameter (“From the above analysis, Δ n can be treated as a model-update by processing p n mini-batches serially. So m t ( i n i t ) and v t ( i n i t ) compatible with θ t ( i n i t ) can be treated as updated buffers after processing η p n mini-batches from m - t and v - t ,” page 3028 column right paragraph 2 lines 1-4); and providing the updated global model parameter (“Starting from a common initial model parameter θ t - τ ( i n i t ) ,” page 3027 section “2.1. BMUF-based framework” lines 4-5) and the updated global moment parameter (“We can simply set initial Adam buffers for next IBPO as the averaged buffers of local optimizers as follows: m t ( i n i t ) = m - t =   1 N ∑ i = 1 N m t , i where m t , i and v t , i are moment buffers of the i -th worker,” page 3028 column right paragraph 1 lines 3-8) to the plurality of worker nodes for performing moment-based optimizations in parallel for a succeeding training cycle (“BMUF-based training framework,” page 3027 section “2.1. BMUF-based framework” line 1). Conclusion The prior art made of record and not relied upon is considered pertinent to Applicant’s disclosure: US 2023/0281462 A1 disclosing federated learning with momentum Applicant is required under 37 C.F.R. § 1.111(c) to consider these references fully when responding to this action. It is noted that any citation to specific pages, columns, lines, or figures in the prior art references and any interpretation of the references should not be considered to be limiting in any way. A reference is relevant for all it contains and may be relied upon for all that it would have reasonably suggested to one having ordinary skill in the art. In re Heck, 699 F.2d 1331, 1332-33, 216 U.S.P.Q. 1038, 1039 (Fed. Cir. 1983) (quoting In re Lemelson, 397 F.2d 1006, 1009, 158 U.S.P.Q. 275, 277 (C.C.P.A. 1968)). In the interests of compact prosecution, Applicant is invited to contact the examiner via electronic media pursuant to USPTO policy outlined MPEP § 502.03. All electronic communication must be authorized in writing. Applicant may wish to file an Internet Communications Authorization Form PTO/SB/439. Applicant may wish to request an interview using the Interview Practice website: http://www.uspto.gov/patent/laws-and-regulations/interview-practice. Applicant is reminded Internet e-mail may not be used for communication for matters under 35 U.S.C. § 132 or which otherwise require a signature. A reply to an Office action may NOT be communicated by Applicant to the USPTO via Internet e-mail. If such a reply is submitted by Applicant via Internet e-mail, a paper copy will be placed in the appropriate patent application file with an indication that the reply is NOT ENTERED. See MPEP § 502.03(II). Any inquiry concerning this communication or earlier communications from the examiner should be directed to Ryan Barrett whose telephone number is 571 270 3311. The examiner can normally be reached 9:00am to 5:30pm. 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 Michelle Bechtold can be reached at 571 431 0762. 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. /Ryan Barrett/ Primary Examiner, Art Unit 2148
Read full office action

Prosecution Timeline

Aug 31, 2023
Application Filed
Jun 10, 2026
Non-Final Rejection mailed — §101, §102, §Other (current)

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12664464
METHOD AND APPARATUS FOR FEDERATED LEARNING OF ARTIFICIAL INTELLIGENCE MODEL USING NON-IID DATA
3y 9m to grant Granted Jun 23, 2026
Patent 12657532
TICKET EMBEDDING BASED ON MULTI-DIMENSIONAL IT DATA
4y 6m to grant Granted Jun 16, 2026
Patent 12651198
PROVIDING ONLINE EXPERT-IN-THE-LOOP TRAINING OF MACHINE LEARNING MODELS
4y 3m to grant Granted Jun 09, 2026
Patent 12645940
SYSTEMS AND METHODS FOR CHAINED MACHINE LEARNING MODELS FOR SIGNAL DATA SIGNATURE LABELLING
3y 0m to grant Granted Jun 02, 2026
Patent 12634413
TWO-DIMENSIONAL VIEW OF A PRESENTATION IN A THREE-DIMENSIONAL VIDEOCONFERENCING ENVIRONMENT
3y 10m to grant Granted May 19, 2026
Study what changed to get past this examiner. Based on 5 most recent grants.

Strategy Recommendation AI-generated — please review before filing

Get a prosecution strategy drawn from examiner precedents, rejection analysis, and claim mapping.
Typically takes 5-10 seconds — AI-generated, attorney review required before filing

Prosecution Projections

1-2
Expected OA Rounds
65%
Grant Probability
99%
With Interview (+42.9%)
3y 3m (~5m remaining)
Median Time to Grant
Low
PTA Risk
Based on 419 resolved cases by this examiner. Grant probability derived from career allowance rate.

Sign in with your work email

Enter your email to receive a magic link. No password needed.

Personal email addresses (Gmail, Yahoo, etc.) are not accepted.

Free tier: 3 strategy analyses per month