Prosecution Insights
Last updated: July 17, 2026
Application No. 18/476,830

MODEL TRAINING METHOD AND APPARATUS

Non-Final OA §102§103
Filed
Sep 28, 2023
Priority
Mar 31, 2021 — CN 202110350815.2 +1 more
Examiner
HUANG, YAO D
Art Unit
2165
Tech Center
2100 — Computer Architecture & Software
Assignee
Huawei Technologies Co., Ltd.
OA Round
1 (Non-Final)
63%
Grant Probability
Moderate
1-2
OA Rounds
1y 2m
Est. Remaining
96%
With Interview

Examiner Intelligence

Grants 63% of resolved cases
63%
Career Allowance Rate
82 granted / 130 resolved
+8.1% vs TC avg
Strong +33% interview lift
Without
With
+33.4%
Interview Lift
resolved cases with interview
Typical timeline
4y 0m
Avg Prosecution
14 currently pending
Career history
149
Total Applications
across all art units

Statute-Specific Performance

§101
2.5%
-37.5% vs TC avg
§103
93.3%
+53.3% vs TC avg
§102
2.2%
-37.8% vs TC avg
§112
2.0%
-38.0% vs TC avg
Black line = Tech Center average estimate • Based on career data from 130 resolved cases

Office Action

§102 §103
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 . Claim Rejections - 35 USC § 102 In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis (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-6, 9-15, and 18-20 are rejected under 35 U.S.C. 102(a)(1) as being anticipated by Zhao et al., “Distributed hierarchical GPU parameter server for massive scale deep learning ads systems,” arXiv:2003.05622v1 [cs.DC] 12 Mar 2020 (“Zhao”) (cited in an IDS). As to claim 1, Zhao teaches a model training method, comprising: obtaining, by a computing core of a first processor, a first target embedding from a second memory of a second processor, wherein the first processor comprises a first memory, the first processor is communicatively connected to the second processor, and wherein the first processor and the second processor are processors of different types; [§ 3, paragraph 2: “The local MEM-PS loads the local parameters stored on local SSD-PS into the memory and requests other nodes for the remote parameters through the network. After all the referenced parameters are loaded in the memory, these parameters are partitioned and transferred to the HBM-PS in GPUs.” That is, the parameters are obtained from the local memory MEM-PS (second memory). This HBM-PS belongs to a CPU (second processor), as disclosed in the abstract: “We propose a hierarchical workflow that utilizes GPU High-Bandwidth Memory, CPU main memory and SSD as 3-layer hierarchical storage.” Furthermore, noting that the instant application defines “embedding” to encompass the model (see paragraph 6 of the instant application’s specification: “embedding layer is also referred to as an embedding.”), the “parameters” here include an embedding model as disclosed in FIG. 1 and described in § 1, paragraph 1: “The high-dimensional sparse input data first go through an embedding layer to get a low-dimensional embedding; then the embedded results are connected by fully-connected layers.” That is, the parameters as described here refers to the neural network which includes embedding layer (see FIG. 1), any part of which corresponds to a first target embedding. (The Examiner notes that the output of this layer can also be regarded as the embeddings of the instant claim). These parameters are loaded into a GPU (first processor), which is communicatively connected to the CPU as shown in FIG. 2 and comprises the HBM-PS (first memory). Furthermore, the GPU’s operations are performed by a computing core, because a computing core implied as a part of the GPU. See abstract: “All the neural network training computations are contained in GPUs” and the footnote on page 17, which teaches CUDA cores.] training, by the computing core, a to-be-trained model based on the first target embedding, to obtain an updated to-be-trained model and a second target embedding, wherein the second target embedding is an updated first target embedding; [§ 3.2, paragraph 2 (text after Algorithm 1): “Each training worker pulls the required parameters of its corresponding mini-batch from the HBM-PS (line 12), performs forward and backward propagation to update the parameters (line 13), and interacts with the HBM-PS to update the referenced parameters on other GPUs (line 14). The MEM-PS collects the updates from the HBM-PS (line 16) and dumps infrequently used parameters to the SSD-PS when the MEM-PS does not have sufficient memory (line 17- 18).” Here, the post-update parameters of the neural network correspond to a second target embedding and an updated to-be-trained model.] and writing, by the computing core, the second target embedding to the first memory. [§ 3.2, paragraph 2 (text after Algorithm 1): “Each training worker pulls the required parameters of its corresponding mini-batch from the HBM-PS (line 12), performs forward and backward propagation to update the parameters (line 13), and interacts with the HBM-PS to update the referenced parameters on other GPUs (line 14). The MEM-PS collects the updates from the HBM-PS (line 16) and dumps infrequently used parameters to the SSD-PS when the MEM-PS does not have sufficient memory (line 17- 18).” That is, since the parameters are collected from the HBM-PS, they are considered to be written to the HBM-PS (first memory) during the course of each of the training process in lines 11-14 of the algorithm.] As to claim 2, Zhao teaches the method according to claim 1, wherein the training, by the computing core, the to-be-trained model based on the first target embedding comprises: performing, by the computing core, model training of an Mth batch on the to-be-trained model based on the first target embedding, wherein M is a positive integer greater than 1; [Zhao, Algorithm 1, lines 11-15 is a for-loop with index j from 1 to #minibatch, where j is the index of the Mth batch that is being trained in accordance with the model update in line 13. Here, an arbitrary index corresponds to M and the index of a subsequent iteration for a subsequent batch corresponds to M+1.] and after the writing, by the computing core, the second target embedding to the first memory, the method further comprises: obtaining, by the computing core, the second target embedding from the first memory; [Zhao, § 3.2, paragraph 2 (text after Algorithm 1): “Each training worker pulls the required parameters of its corresponding mini-batch from the HBM-PS (line 12), performs forward and backward propagation to update the parameters (line 13).] and performing, by the computing core, model training of an (M+1)th batch on the updated to-be-trained model based on the second target embedding. [Zhao, § 3.2, paragraph 2 (text after Algorithm 1): “Each training worker pulls the required parameters of its corresponding mini-batch from the HBM-PS (line 12), performs forward and backward propagation to update the parameters (line 13). As noted above, lines 11-15 of the algorithm provides for multiple minibatches. For example, Appendix § A teaches an example of 4 minibatches.] As to claim 3, Zhao teaches the method according to claim 2, wherein the method further comprises: after the performing, by the computing core, the model training of the (M+1)th batch on the updated to-be-trained model based on the second target embedding, obtaining a third target embedding, wherein the third target embedding is an updated second target embedding; [As noted in the rejections of the parent claims, Zhao, Algorithm 1 teaches that its method is repeated across multiple minibatches. Therefore, a third iteration of the loop in corresponds to the obtaining of a third target embedding.] and writing, by the computing core, the third target embedding to the first memory. [As noted in the rejections of the parent claims, Zhao trains the models on HBM-PS, i.e., the high bandwidth memory of the GPU. Therefore, each iteration is written onto the HBM-PS.] As to claim 4, Zhao teaches the method according to claim 2, wherein the obtaining, by the computing core, a first target embedding from the second memory comprises: when the first target embedding is an embedding required for model training of the Mth batch and the first target embedding is not stored in the first memory, obtaining, by the first memory, the first target embedding from the second memory; [Zhao, § 3, paragraph 2: “The local MEM-PS loads the local parameters stored on local SSD-PS into the memory and requests other nodes for the remote parameters through the network. After all the referenced parameters are loaded in the memory, these parameters are partitioned and transferred to the HBM-PS in GPUs.”] and obtaining, by the computing core, the first target embedding from the first memory. [Zhao, abstract: “All the neural network training computations are contained in GPUs.” Zhao, § 3.2, paragraph 2 (text after Algorithm 1): “Each training worker pulls the required parameters of its corresponding mini-batch from the HBM-PS (line 12).” Since the parameter updates are on the model and the model is pulled from the HBM, it is understood that the model is obtained from the memory in order to perform the computations.] As to claim 5, Zhao teaches the method according to claim 4, wherein the obtaining, by the first memory, the first target embedding from the second memory comprises: in a process during which the computing core performs model training of an (M−1)th batch on the to-be-trained model, obtaining, by the first memory, the first target embedding from the second memory. [Zhao, § 3, paragraph 2: “The local MEM-PS loads the local parameters stored on local SSD-PS into the memory and requests other nodes for the remote parameters through the network. After all the referenced parameters are loaded in the memory, these parameters are partitioned and transferred to the HBM-PS in GPUs.” The examiner notes that the entire process of Algorithm 1 of Zhao is a process during which the computing core performs model training of an (M−1)th batch on the to-be-trained model, and a previous iteration . The instant claim language does not require a more precise timing scheme of performing any specific training operation and the loading of a match. The Examiner also notes that since the M-1, M, M+1, etc. batches are met by a sequence of minibatches starting from the first batch, and that use of a second, third, etc. batch would be based on the original model parameters used with the first batch.] As to claim 6, Zhao teaches the method according to claim 4, wherein the method further comprises: before the obtaining, by the computing core, the first target embedding from the first memory, obtaining, by the computing core, a first vector and a target vector that are from the second processor, wherein the first vector indicates embeddings required for model training of the Mth batch, each element in the first vector indicates one embedding, and different elements indicate different embeddings; [Zhao, § 3, paragraph 2: “After all the referenced parameters are loaded in the memory, these parameters are partitioned and transferred to the HBMPS in GPUs. In order to effectively utilize the limited GPU memory, the parameters are partitioned in a non-overlapped fashion—one parameter is stored only in one GPU.” In Algorithm 1, this is represented in line 6, where “partitions” is a mapping of the parameters to the GPU. As explained in appendix § A, this is mapping (labeled as “partition parameters”) identifies specific parameters and is thus a vector. See also § 4.1, paragraph 1: “Multi-GPU distributed hash table manages the GPU HBMs on the same node and provides a unified interface to the GPU worker threads. All referenced parameters of the current training batch are partitioned and inserted into the local hash table of each GPU.” Furthermore, since the model of Zhao (see FIG. 1) has an embedding layer, a parameter of the model teaches an “embedding” in the absence of further limitation on the characteristics of the embeddings recited in the instant claim or what those embeddings represent.] and the target vector indicates permutations of the embeddings indicated by the elements in the first vector when model training of the Mth batch is performed, and the embedding indicated by each element appears at least once in the permutations; [Zhao, Appendix § A, paragraph 1: “Here we have 2 GPUs on node1. The working parameters are partitioned and transferred to GPU HBMs. In this example, GPU1 obtains the parameters whose keys are less than or equal to 50—4; 5; 11; 50, and GPU2 takes 53; 56; 61; 87; 98.” That is, the “partitions” also correspond to a target vector, since they identify the subset (permutations) of the parameters that are to be used on each GPU worker.] and the obtaining, by the computing core, the first target embedding from the first memory comprises: obtaining, by the computing core, based on the first vector, the embeddings required for model training of the Mth batch from the first memory; [Zhao, § 3, paragraph 2: “The local MEM-PS loads the local parameters stored on local SSD-PS into the memory and requests other nodes for the remote parameters through the network. After all the referenced parameters are loaded in the memory, these parameters are partitioned and transferred to the HBM-PS in GPUs.”] and determining, by the computing core, based on the target vector and the embeddings required for model training of the Mth batch, the permutations of the embeddings required for model training of the Mth batch. [Zhao, § 3, paragraph 2: “The local MEM-PS loads the local parameters stored on local SSD-PS into the memory and requests other nodes for the remote parameters through the network. After all the referenced parameters are loaded in the memory, these parameters are partitioned and transferred to the HBM-PS in GPUs.”] As to claim 9, Zhao teaches the method according to claim 1, wherein the first processor is a graphics processing unit (GPU), an embedded neural network processing unit (NPU), or a tensor processing unit (TPU), the first memory is a cache, and the second processor is a central processing unit (CPU). [Zhao, abstract: “We propose a hierarchical workflow that utilizes GPU High-Bandwidth Memory, CPU main memory and SSD as 3-layer hierarchical storage.” Zhao § 3, paragraph 2: “The local MEM-PS loads the local parameters stored on local SSD-PS into the memory and requests other nodes for the remote parameters through the network. After all the referenced parameters are loaded in the memory, these parameters are partitioned and transferred to the HBM-PS in GPUs.” That is, a system with a plurality of GPUs and a CPU is taught in this reference. In regards to the imitation of “the first memory is a cache,” paragraph [0120] defines a cache as broadly encompassing a video memory (“a cache (or referred to as a video memory) (which may be referred to as a first memory in subsequent embodiments)”). Therefore, the HBM (high bandwidth memory) of a GPU, which is a form of video memory, meets the limitation of a cache.] As to claims 10-15, these claims are directed to an apparatus for performing operations that are the same or substantially the same as those of claims 1-6. Therefore, the rejections made to claims 1-6 are applied to claim 10-15. Furthermore, Zhao teaches “a model training apparatus, comprising: a first processor, communicatively connected to a second processor, the first processor comprising a computing core and a first memory, the second processor comprising a second memory, and the first processor and the second processor are processors of different types” [§ 7, paragraph 2: “System. We execute the distributed hierarchical GPU parameter server experiments on 4 GPU computing nodes. Each node has 8 cutting-edge 32 GB HBM GPUs, server grade CPUs with 48 cores (96 threads), ~1 TB of memory, ~20 TB RAID-0 NVMe SSDs and a 100 Gb RDMA network adaptor. The nodes in the MPI cluster for the baseline comparison are maintained in the same data center.” Note that the elements of the processors, the computing core, and the first memory are taught by the elements discussed in the rejection of claim 1]. As to claim 18, Zhao teaches the apparatus according to claim 15, wherein the first processor is a graphics processing unit (GPU), an embedded neural network processing unit (NPU), or a tensor processing unit (TPU), the first memory is a cache, and the second processor is a central processing unit (CPU). [Zhao, abstract: “We propose a hierarchical workflow that utilizes GPU High-Bandwidth Memory, CPU main memory and SSD as 3-layer hierarchical storage.” Zhao § 3, paragraph 2: “The local MEM-PS loads the local parameters stored on local SSD-PS into the memory and requests other nodes for the remote parameters through the network. After all the referenced parameters are loaded in the memory, these parameters are partitioned and transferred to the HBM-PS in GPUs.” That is, a system with a plurality of GPUs and a CPU is taught in this reference. In regards to the imitation of “the first memory is a cache,” paragraph [0120] defines a cache as broadly encompassing a video memory (“a cache (or referred to as a video memory) (which may be referred to as a first memory in subsequent embodiments)”). Therefore, the HBM (high bandwidth memory) of a GPU, which is a form of video memory, meets the limitation of a cache.] As to claim 19, Zhao teaches a model training apparatus, wherein the apparatus comprises a memory and a processor, [§ 7, paragraph 2: “System. We execute the distributed hierarchical GPU parameter server experiments on 4 GPU computing nodes. Each node has 8 cutting-edge 32 GB HBM GPUs, server grade CPUs with 48 cores (96 threads), ~1 TB of memory, ~20 TB RAID-0 NVMe SSDs and a 100 Gb RDMA network adaptor. The nodes in the MPI cluster for the baseline comparison are maintained in the same data center.”] code is stored in the memory, and the processor is configured to obtain the code and perform the method according to claim 1. [Since the method taught in Zhao is an automated process performed using computers, the instant limitation of memory comprising code to perform the method of claim 1 is implicitly disclosed by Zhao.] As to claim 20, Zhao teaches a non-transitory computer storage medium, wherein one or more instructions are stored in the computer storage medium, and when the one or more instructions are executed by one or more computers, [Since the method taught in Zhao is an automated process performed using computers, the instant limitation of a computer storage medium comprising instructions to perform the method of claim 1 is implicitly disclosed by Zhao.] the one or more computers are enabled to perform the method according to claim 1. [§ 7, paragraph 2: “System. We execute the distributed hierarchical GPU parameter server experiments on 4 GPU computing nodes. Each node has 8 cutting-edge 32 GB HBM GPUs, server grade CPUs with 48 cores (96 threads), ~1 TB of memory, ~20 TB RAID-0 NVMe SSDs and a 100 Gb RDMA network adaptor. The nodes in the MPI cluster for the baseline comparison are maintained in the same data center.”] Claim Rejections - 35 USC § 103 The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action: A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made. Claims 7-8 and 16-17 are rejected under 35 U.S.C. 103 as being unpatentable over Zhao in view of Chapelle et al. (US 2013/0290223 A1) (“Chapelle”). As to claim 7, Zhao teaches the method according to claim 3, wherein before the training, by the computing core, the to-be-trained model based on the first target embedding, the method further comprises: obtaining, by the computing core, the third target embedding from a third memory of a third processor, wherein the third target embedding and the first target embedding are embeddings required for model training of the Mth batch, and the first processor and the third processor are processors of a same type; [Zhao, § 3.2, paragraph 2 (text after Algorithm 1): “Each training worker pulls the required parameters of its corresponding mini-batch from the HBM-PS (line 12), performs forward and backward propagation to update the parameters (line 13), and interacts with the HBM-PS to update the referenced parameters on other GPUs (line 14). The MEM-PS collects the updates from the HBM-PS (line 16) and dumps infrequently used parameters to the SSD-PS when the MEM-PS does not have sufficient memory (line 17- 18).” Zhao, § 3.2, paragraph 3: “HBM-PS is distributed in the High-Bandwidth Memory (HBM) across multiple GPUs. Comparing with the conventional distributed parameter servers, workers in GPUs can directly request and update parameters in the HBM without transferring data between GPU memory and CPU memory.”] and the training, by the computing core, a to-be-trained model based on the first target embedding comprises: processing, by the computing core, the first target embedding and the third target embedding by using the to-be-trained model, […] [Zhao, § 3.2, paragraph 2 (text after Algorithm 1): “Each training worker pulls the required parameters of its corresponding mini-batch from the HBM-PS (line 12), performs forward and backward propagation to update the parameters (line 13), and interacts with the HBM-PS to update the referenced parameters on other GPUs (line 14). The MEM-PS collects the updates from the HBM-PS (line 16) and dumps infrequently used parameters to the SSD-PS when the MEM-PS does not have sufficient memory (line 17- 18). That is, since the parameters are shared in line 14, lines 12-13 in a subsequent iteration are used in a subsequent iteration to train the model, which includes the embedding layer.] […] updating, by the computing core, the to-be-trained model and the first target embedding […] [Zhao, § 3.2, paragraph 2 (text after Algorithm 1): “Each training worker pulls the required parameters of its corresponding mini-batch from the HBM-PS (line 12), performs forward and backward propagation to update the parameters (line 13), and interacts with the HBM-PS to update the referenced parameters on other GPUs (line 14).] Zaho does not teach the limitation of “to obtain a target output, and determining a first gradient based on the target output” and the limitation that the update is “based on the target gradient.” Li teaches “to obtain a target output, and determining a first gradient based on the target output;” [[0005]-[0006]: “Distributed machine learning is one of the distributed applications where much work focuses on the problem in the form… where xi is the feature vector of the i-th training sample, yi is the label, w is the linear predictor (parameters), l is a loss function, and R is a regularizer.” That is, in this equation, the other argument in the loss function, which is a function of the weights and input, constitutes a target output. Furthermore, in more detail [0060] (“Algorithm 1”) teaches calculating the gradient g. In general, [0060] (Algorithm 1) is extended to an multi-node algorithm in [0061] (Algorithm 2). In this algorithm over T iterations, each node calculates gk, which is “the (local batch) gradient of examples on node k.”] and updating “based on the first gradient.” [In general, the weights are updated based on the gradient g as shown in Algorithm 1. In the mulita-node context, [0061] teaches: “In this setting, each node performs an online pass over its data, and then weights are averaged according to Equation (2).” This also applies in the multi-node extension. See [0058]: “Concretely, node k maintains a local weight vector wk and a diagonal matrix Gk based on the gradients in the adaptive gradient updates (see Algorithm 1).”] It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have combined the teachings of Zhao with the teachings of Chapelle by implementing the aggregation technique as taught by Chappelle, so as to arrive at the claimed invention. The motivation would have been to provide a method for parallel learning on large datasets (see Chapelle, [0033]: “efficiently and effectively parallel learning very large datasets, including for example, trillions of features, billions of training samples, and millions of parameters, with a good predictive accuracy.”). As to claim 8, the combination of Zhao and Chapelle teaches the method according to claim 7, as set forth above. Chapelle further teaches wherein the determining the first gradient based on the target output comprises: determining the first gradient and a second gradient based on the target output; [[0048]: “The AllReducing module 708 is also configured to transmit the local parameter to at least one connected node in accordance with the network topology. In this example, operation nodes B, C transmit their local parameters B, C to operation node A in accordance with the tree network topology. The AllReducing module 708 is also responsible for merging local parameter with one or more local parameters received from one or more connected nodes in accordance with the network topology. In this example, the AllReducing module 708-1 of operation node A sums up the local parameter A calculated by the local machine learning module 706-1 and the local parameters B, C received from operation nodes B, C. The merged local parameter “sum(ABC)” is then transmitted to another connected operation node (not shown) that is higher in the hierarchy. The merged local parameter “sum(ABC)” is then transmitted to another connected operation node (not shown) that is higher in the hierarchy. Eventually, at the end of the reduce stage in each iteration, an aggregated parameter is calculated by merging local parameters calculated by each operation node in accordance with the network topology, as noted above.” Note that the “local parameter” is a gradient, as described in [0041] and [0044]. Therefore, in this case, the local gradient is a first gradient, and a second gradient is the combination of the local parameter and the received gradient.] and after the determining the first gradient and the second gradient based on the target output, the method further comprises: transferring the second gradient to a computing core of the third processor that updates the third target embedding based on the second gradient. [As noted in the parts cited above, the merged parameter is sent to a further downstream node (analogous to another processor or GPU), and this gradient is used to update the “local weight vector wk” described in [0058].] It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have further combined the teachings of Zhao and Chappelle, including the teachings discussed above, so as to have also arrived at the claimed invention of the instant dependent claim. The motivation for doing so is covered by the motivation given for the teachings of Chappelle in the rejection of the parent dependent claim. As to claims 16-17, these claims recite further limitations that are the same or substantially the same as those of claims 7-8. Therefore, the rejections made to claim 7-8 are applied to claims 16-17. Conclusion The prior art made of record and not relied upon is considered pertinent to applicant's disclosure. The following documents depict the ordinary skill in the art. Ma et al. (US20240037378A1) teaches partitioning an embedding table. Li et al., “Scaling Distributed Machine Learning with the Parameter Server,” Proceedings of the 11th USENIX Symposium on Operating Systems Design and Implementation, October 6–8, 2014, Broomfield, CO teaches conventional techniques in multi-worker systems. Any inquiry concerning this communication or earlier communications from the examiner should be directed to YAO DAVID HUANG whose telephone number is (571)270-1764. The examiner can normally be reached Monday - Friday 9:00 am - 5:30 pm. Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice. If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Miranda Huang can be reached at (571) 270-7092. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300. Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000. /Y.D.H./Examiner, Art Unit 2124 /MIRANDA M HUANG/ Supervisory Patent Examiner, Art Unit 2124
Read full office action

Prosecution Timeline

Sep 28, 2023
Application Filed
Nov 02, 2023
Response after Non-Final Action
Jul 02, 2026
Non-Final Rejection mailed — §102, §103 (current)

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12626122
METHODS OF PROVIDING TRAINED HYPERDIMENSIONAL MACHINE LEARNING MODELS HAVING CLASSES WITH REDUCED ELEMENTS AND RELATED COMPUTING SYSTEMS
5y 1m to grant Granted May 12, 2026
Patent 12626138
CAUSALITY DETECTION FOR OUTLIER EVENTS IN TELEMETRY METRIC DATA
4y 8m to grant Granted May 12, 2026
Patent 12619852
Method and System for Simulating, Predicting, Interpreting, Comparing, or Visualizing Complex Data
6y 11m to grant Granted May 05, 2026
Patent 12608604
METHOD AND APPARATUS FOR TRAINING ARTIFICIAL INTELLIGENCE BASED ON EPISODE MEMORY
4y 5m to grant Granted Apr 21, 2026
Patent 12536455
Method for Early Warning Brandish of Transmission Wire Based on Improved Bayes-Adaboost Algorithm
3y 8m to grant Granted Jan 27, 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
63%
Grant Probability
96%
With Interview (+33.4%)
4y 0m (~1y 2m remaining)
Median Time to Grant
Low
PTA Risk
Based on 130 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