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 .
Drawings
The drawings are objected to because The text in Fig 4, is not legible. Corrected drawing sheets in compliance with 37 CFR 1.121(d) are required in reply to the Office action to avoid abandonment of the application. Any amended replacement drawing sheet should include all of the figures appearing on the immediate prior version of the sheet, even if only one figure is being amended. The figure or figure number of an amended drawing should not be labeled as “amended.” If a drawing figure is to be canceled, the appropriate figure must be removed from the replacement sheet, and where necessary, the remaining figures must be renumbered and appropriate changes made to the brief description of the several views of the drawings for consistency. Additional replacement sheets may be necessary to show the renumbering of the remaining figures. Each drawing sheet submitted after the filing date of an application must be labeled in the top margin as either “Replacement Sheet” or “New Sheet” pursuant to 37 CFR 1.121(d). If the changes are not accepted by the examiner, the applicant will be notified and informed of any required corrective action in the next Office action. The objection to the drawings will not be held in abeyance.
Claim Rejections - 35 USC § 103
Claims 1, 3, 5-8, 10, 12-15, 17, 19-20 are rejected under U.S.C. 103 over Ali Abbas (US20210160162A1) (“Abbas”) in view of Butler et al (WO2020263374A1) (“Butler”), and Capota et al (US 20220107793 A1) (“Capota”)
Regarding Claim 1, Abbas teaches clustering, using an unsupervised clustering model in accordance with the graph data, the plurality of operations into a plurality of clusters of operations ([0036] teaches using data to train the machine learning model to cluster instances type based on system requirements. The data here is being interpreted as the graph data and the instance types are being interpreted as a plurality operations teaching this limitation.)
for each cluster of operations of the plurality of clusters of operations, labeling, based on whether that cluster of operations includes an operation labeled as a CPU-only operation, that cluster of operations as one of a CPU-only cluster of operations and a GPU-available cluster of operations ([0036] teaches the clustering operation being done on the different instance types to predict a recommended instance types. [0031] details that instance types are generally organized by different computing resources including CPU and GPU. It can be reasonably interpreted that the details surrounding the instance types would include labels indicating a CPU operation of a GPU operation teaching this limitation.)
and adjusting the current values of the model parameters of the second machine learning model using a reinforcement learning technique that uses a reward derived from the time-based parameter associated with the processing of the inference data using the first machine learning model according to the placement ([0035] teaches a scoring system to assess a system’s performance with that score being used to improve performance of the infrastructure. This can be interpreted as a form of reinforcement learning. The system when generating recommendations for the instances considers any parameter present on the given system [0036] which would include a time-based parameter)
Abbas does not teach A computer-implemented method, comprising: obtaining graph data specifying a first machine learning model to be placed for distributed processing on a Central Processing Unit (CPU) and a Graphics Processing Unit (GPU), wherein the graph data specifying the first machine learning model includes data representing a computational graph having a plurality of nodes that represent a plurality of operations of the first machine learning model and a plurality of edges that represent data communicated between the plurality of operations, wherein one or more operations of the plurality of operations are labeled as Central Processing Unit (CPU)-only operations;
processing, using the first machine learning model with each cluster of operations assigned to the one of the CPU and the GPU according to the placement, inference data associated with at least one inference sample, wherein a time-based parameter associated with the processing using the first machine learning model according to the placement is determined;
processing, using a second machine learning model including a plurality of model parameters, the plurality of clusters of operations and the cluster labels, wherein the second machine learning model is configured to process the plurality of clusters of operations and the cluster labels in accordance with current values of the plurality of model parameters to generate a model output including a placement of each cluster of operations on one of the CPU and the GPU
However, Butler does teach A computer-implemented method, comprising: obtaining graph data specifying a first machine learning model to be placed for distributed processing on a Central Processing Unit (CPU) and a Graphics Processing Unit (GPU), wherein the graph data specifying the first machine learning model includes data representing a computational graph having a plurality of nodes that represent a plurality of operations of the first machine learning model and a plurality of edges that represent data communicated between the plurality of operations, wherein one or more operations of the plurality of operations are labeled as Central Processing Unit (CPU)-only operations ([0136] teaches the landscape of their infrastructure being represented as a graph with [0135] teaching that the logical resources incudes any other virtualized resources provisioned on the physical resources. It can be reasonably interpreted that machine learning is included in that, teaching this limitation)
processing, using the first machine learning model with each cluster of operations assigned to the one of the CPU and the GPU according to the placement, inference data associated with at least one inference sample, wherein a time-based parameter associated with the processing using the first machine learning model according to the placement is determined ([0161] teaches gathering information on how individual resources perform tasks. With those different requests having to express their operation margins including their latency boundaries. Latency boundaries in this context is being interpreted as a time-based parameter. The orchestration is used to match tasks with the appropriate resources capable of performing the tasks. These different tasks are being interpreted as a cluster of operations. They are gathering information on how well individual resources perform tasks based on insights from a machine learning model teaching the inference data part of the limitation)
Abbas and Butler are analogous art because they both focus on system optimization
It would have been obvious to combine Abbas with the time based parameter handling of Butler. Doing so would lead to more efficient use of computer resources and less computational overload ([Butler-0053])
The combination of Abbas and Butler does not teach processing, using a second machine learning model including a plurality of model parameters, the plurality of clusters of operations and the cluster labels, wherein the second machine learning model is configured to process the plurality of clusters of operations and the cluster labels in accordance with current values of the plurality of model parameters to generate a model output including a placement of each cluster of operations on one of the CPU and the GPU
However Capota does teach processing, using a second machine learning model including a plurality of model parameters, the plurality of clusters of operations and the cluster labels, wherein the second machine learning model is configured to process the plurality of clusters of operations and the cluster labels in accordance with current values of the plurality of model parameters to generate a model output including a placement of each cluster of operations on one of the CPU and the GPU ([0069] teaches two machine learning models with one vector embeddings that represents a program and a second model used for determining the placement of that program. The program placement differs depending on the environment with the model being trained on instances of CPU/GPU placements. It can be reasonably interpreted that the secondary machine learning model is returning an output of placement for the vector embedding. [0031] teaches the relationship between the vectors and clusters so it can be reasonably be interpreted that the use of vector embeddings also teaches the cluster limitation. The clusters are placed in communities it can be reasonably interpreted as the communities would include labels to identify the different clusters, and the vector embeddings are executed on a program so that is being interpreted as a clusters of operations teaching the limitation.
Abbas, Butler and Capota are analogous art because they both focus on system optimization
It would have been obvious to combine Abbas with the time based parameter handling of Butler and the secondary machine learning model handling of Capota. Doing so would lead to more optimal handling of device selectors when it comes to different environments([Capota-0002])
Regarding Claim 3, the combination of Abbas, Butler and Capota teaches all the limitations of claim 1
Abbas also teaches wherein the plurality of operations includes a plurality of different types of operations, and wherein labeling each cluster of operations as a CPU-only cluster or a GPU-available cluster includes storing, in a database, a list including each type of operation of the plurality of types of operations labeled as one of a CPU-only operation and a GPU-available operation ([0036] teaches different available instance types teaching the plurality of different types of operations part of the limitation. [0031] details that instance types are generally organized by different computing resources including CPU and GPU. It can be reasonably interpreted that the details surrounding the instance types would include labels indicating a CPU operation of a GPU. The system is choosing from available instance types on the cloud provider which teaches the list part of the limitation)
Regarding Claim 5, the combination of Abbas, Butler and Capota teaches all the limitations of claim 1
Butler also teaches wherein the time- based parameter includes at least one of a throughput of the first machine learning model and a latency of the first machine learning model ([0161] teaches gathering information on how individual resources perform tasks. With those different requests having to express their operation margins including their latency boundaries. [0135] teaching that the logical resources incudes any other virtualized resources provisioned on the physical resources. It can be reasonably interpreted that machine learning is included in that teaching this limitation)
Regarding Claim 6, the combination of Abbas, Butler and Capota teaches all the limitations of claim 1
Abbas also teaches wherein adjusting the current values of the model parameters using the reinforcement learning technique that uses the reward derived from the time-based parameter associated with the processing of the inference data according to the placement further includes adjusting the current values of the model parameters to optimize an objective function ([0035] teaches a scoring function used to assess the performance of an infrastructure with that score being used to improve model performance and reduce cost. The improvement of performance and cost reduction both can function as an objective function. The system also teaches that their recommendations are generated with respect to any parameter which would include a time-based parameter, with those recommendations used to predict the appropriate instance type from the available instance type of a cloud provider [0036]. It can be reasonably interpreted that the scoring system taught could be used to assess the recommended instance types in the system)
Regarding Claim 7, the combination of Abbas, Butler and Capota teaches all the limitations of claim 6
Butler also teaches wherein optimizing the objective function optimizes one of (i) a latency of the first machine learning model for a fixed throughput of the first machine learning model and (ii) a throughput of the first machine learning model for an upper bound of latency of the first machine learning model ([0161] teaches services requests requiring latency boundaries for which the system can operate. This is done within the orchestration flow to come up with an optimal plan for the system teaching this limitation)
Regarding Claim 8, See the analysis of Claim 1
Regarding Claim 10, See the analysis of Claim 3
Regarding Claim 12, See the analysis of Claim 5
Regarding Claim 13, See the analysis of Claim 6
Regarding Claim 14, See the analysis of Claim 7
Regarding Claim 15, See the analysis of Claim 1
Regarding Claim 19, See the analysis of Claim 5
Regarding Claim 20, the combination of Abbas, Butler and Capota teaches all the limitations of claim 15
the combination of Abbas, Butler and Capota also teaches wherein the program instructions, when executed by the one or more computers, cause the one or more computers to adjust the current values of the model parameters using the reinforcement learning technique that uses the reward derived from the time-based parameter associated with the processing of the inference data according to the placement further by adjusting the current values of the model parameters to optimize an objective function ([Abbas-0035] teaches a scoring function used to assess the performance of an infrastructure with that score being used to improve model performance and reduce cost. The improvement of performance and cost reduction both can function as an objective function. The system also teaches that their recommendations are generated with respect to any parameter which would include a time-based parameter, with those recommendations used to predict the appropriate instance type from the available instance type of a cloud provider [Abbas-0036]. It can be reasonably interpreted that the scoring system taught could be used to assess the recommended instance types in the system)
and wherein the optimizing the objective function optimizes one of (i) a latency of the first machine learning model for a fixed throughput of the first machine learning model and (ii) a throughput of the first machine learning model for an upper bound of latency of the first machine learning model ([Butler-0161] teaches services requests requiring latency boundaries for which the system can operate. This is done within the orchestration flow to come up with an optimal plan for the system teaching this limitation)
Claims 2, 9, and 16 are rejected under U.S.C. 103 over Ali Abbas (US20210160162A1) (“Abbas”) in view of Butler et al (WO2020263374A1) (“Butler”), Capota et al (US 20220107793 A1) (“Capota”), and Lin Zeshan (CN111276162A) (“Zeshan”)
Regarding Claim 2, the combination of Abbas, Butler and Capota teaches all the limitations of Claim 1
The combination of Abbas, Butler and Capota does not teach wherein the plurality of operations are clustered into a predetermined number of clusters of operations.
However, Zeshan does teach wherein the plurality of operations are clustered into a predetermined number of clusters of operations. ([0124] - [0125] teaches using clustering algorithm to execute clustering operations to obtain user clustering clusters of a predetermined number. Different attributes will use the clustering algorithm which is being interpreted as a plurality of operations. With this being used to obtain a predetermined number of clusters it is interpreted that these algorithms are being clustered into a plurality number of clusters teaching this limitation)
Abbas, Butler, Capota, and Zeshan are analogous art because they all focus on system optimization
It would have been obvious to combine Abbas with the time based parameter handling of Butler, the secondary machine learning model handling of Capota and the predetermined clustering of Zeshan. Doing so would lead to more accurate handling of input data ([Zeshan-0053])
Regarding Claim 9, See the analysis of Claim 2
Regarding Claim 16, See the analysis of Claim 2
Claim 4, 11, 18 are rejected under U.S.C. 103 over Ali Abbas (US20210160162A1) (“Abbas”) in view of Butler et al (WO2020263374A1) (“Butler”), Capota et al (US 20220107793 A1) (“Capota”), and Yang et al (US20210232399A1) (“Yang”)
Regarding Claim 4, the combination of Abbas, Butler and Capota teaches all the limitations of Claim 1
The combination of Abbas, Butler and Capota does not teach wherein the inference data associated with the at least one inference sample includes transaction data associated with at least one transaction with a merchant system in an electronic payment network.
However, Yang does teach wherein the inference data associated with the at least one inference sample includes transaction data associated with at least one transaction with a merchant system in an electronic payment network ([0054] teaches Inference data containing transactions by a customer)
Abbas, Butler, Capota, and Yang are analogous art because they all focus on system optimization
It would have been obvious to combine Abbas with the time based parameter handling of Butler, the secondary machine learning model handling of Capota, and the transaction data handling of Yang. Doing so would lead to more efficient, accurate, and cost-effective performance from machine learning tasks ([Yang-0051]
Regarding Claim 11, See the analysis of Claim 4
Regarding Claim 18, See the analysis of Claim 4
Conclusion
The prior arts are made of record and relied upon is considered to applicant’s disclosure
Wu et al US20110057937A1 (2011-03-10) ([Abstract] “A method is provided for optimizing computer processes executing on a graphics processing unit (GPU) and a central processing unit (CPU). Process data is subdivided into sequentially processed data and parallel processed data. The parallel processed data is subdivided into a plurality of data blocks assigned to a plurality of processing cores of the GPU. The data blocks on the GPU are processed with other data blocks in parallel on the plurality of processing cores. Sequentially processed data is processed on the CPU. Result data processed on the CPU is returned.”)
Any inquiry concerning this communication or earlier communications from the examiner should be directed to URIAH V MOORE whose telephone number is (571)384-8341. The examiner can normally be reached Monday-Friday 8am-5pm.
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, Mariela Reyes can be reached at (571)270-1006. 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.
/URIAH VENDELL MOORE/Examiner, Art Unit 2142
/Mariela Reyes/Supervisory Patent Examiner, Art Unit 2142