DETAILED ACTION
This action is in response to the claims filed 04/17/2023 for Application number 18/301/508. Claims 1-20 are currently pending.
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 § 101
35 U.S.C. 101 reads as follows:
Whoever invents or discovers any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof, may obtain a patent therefor, subject to the conditions and requirements of this title.
Claims 1-20 are rejected under 35 U.S.C. 101 because the claimed invention is directed to an abstract idea without significantly more.
Regarding claim 1,
Step 1 Analysis: Claim 1 is directed to a process, which falls within one of the four statutory categories.
Step 2A Prong 1 Analysis: Claim 1 recites, in part, The limitations of:
building a graph data structure using the properties, the graph data structure including nodes corresponding to the properties and edges representing connections between the properties can be considered to be an evaluation in the human mind with the aid of pen and paper,
generating a prediction based on the graph fragment [using the MSMPGNN] can be considered to be an evaluation in the human mind
These limitations as drafted, are processes that, under broadest reasonable interpretation, covers performance of the limitation in the mind or with the aid of pen and paper which falls within the “Mental Processes” grouping of abstract ideas. Accordingly, the claim recites an abstract idea.
Step 2A Prong 2 Analysis: This judicial exception is not integrated into a practical application. In particular, the claim recites the additional elements - “training a multi-stack message-passing graph neural network (MSMPGNN) using the graph data structure”, “inputting a graph fragment into the MSMPGNN”, “generating a prediction using the MSMPGNN”, and “and training a new ML model using the prediction.”. Thus, these elements in the claim are recited at a high level of generality such that it amounts to no more than mere instructions to apply the exception using a generic computer component. Please see MPEP §2106.05(f). Accordingly, these additional elements do not integrate the abstract idea into a practical application because they do not impose any meaningful limits on practicing the abstract idea.
The claim further recites: retrieving properties associated with a plurality of machine learning (ML) models. This limitation is a mere data gathering step and thus is an insignificant extra-solution activity. Accordingly, these additional elements do not integrate the abstract idea into a practical application because they do not impose any meaningful limits on practicing the abstract idea. The claim as a whole is directed to an abstract idea.
Step 2B Analysis: The claims do not include additional elements that are sufficient to amount to significantly more than the judicial exception. As discussed above with respect to integration of the abstract idea into a practical application, the additional elements of utilizing a “graph data structure”, “a multi-stack message-passing graph neural network (MSMPGNN) and “a new ML model” to perform the steps of the claimed process amount to no more than mere instructions to apply the exception using a generic computer component. Mere instructions to apply an exception using a generic computer component cannot provide an inventive concept. Furthermore, the limitation of retrieving properties associated with a plurality of machine learning (ML) models is well-understood, routine, and conventional, as evidenced by MPEP §2106.05(d)(II)(I), “receiving or transmitting data over a network”. These limitations therefore remain insignificant extra-solution activity even upon reconsideration, and does not amount to significantly more. Even when considered in combination, these additional elements amount to mere instructions to apply the exception using generic computer components and insignificant extra-solution activity, which cannot provide an inventive concept. The claim is not patent eligible.
Regarding claim 2, the rejection of claim 1 is further incorporated, and further, the claim recites: wherein retrieving the properties comprises retrieving one or more of: raw features used by the plurality of ML models; derivative features used by the plurality of ML models; categories of the plurality of ML models; feature significance values associated with the plurality of ML models; category feature significance values associated with the plurality of ML models; and performance statuses associated with the plurality of ML models. This limitation amounts to generally linking the additional elements to a field of use or technological environment. Please see MPEP §2106.05(h)
The claim does not include any additional elements that amount to an integration of the judicial exception into a practical application, nor to significantly more than the judicial exception. The claim is not patent eligible.
Regarding claim 3, the rejection of claim 1 is further incorporated, and further, the claim recites: wherein training the MSMPGNN comprises, for a given ML model in the plurality of ML models:
initializing a state of the given ML model to a default state; acquiring at least one hidden state of a second ML model in the graph data structure; and updating the state of the given ML model based on the at least one hidden state. This limitation merely uses or operates the ML model in its ordinary capacity thus amounts to mere instructions to apply an exception using a generic computer component. Please see MPEP 2106.05(f).
The claim does not include any additional elements that amount to an integration of the judicial exception into a practical application, nor to significantly more than the judicial exception. The claim is not patent eligible.
Regarding claim 4, the rejection of claim 1 is further incorporated, and further, the claim recites: wherein training the MSMPGNN further comprises computing, for each node, a positional embedding based on an aggregation of positional embeddings for all neighbors in a neighborhood of a respective node. This claim recites a mathematical calculation in addition to the judicial exception identified in the rejection of claim 1, thus recites a judicial exception.
The claim does not include any additional elements that amount to an integration of the judicial exceptions into a practical application, nor to significantly more than the judicial exceptions. The claim is not patent eligible.
Regarding claim 5, the rejection of claim 1 is further incorporated, and further, the claim recites: further comprising re-training the MSMPGNN in response to a trigger comprising one of:
detecting a new ML model added to the plurality of ML models;
detecting a new feature added to an ML model in the plurality of ML models;
detecting a performance change in one of the plurality of ML models;
detecting a new category of ML model;
These limitations recite additional mental steps in addition to the judicial exception identified in the rejection of claim 1, thus recites a judicial exception.
and
receiving a request for re-training from a user. This limitation amounts to insignificant extra-solution activity. Please see MPEP 2106.05(g).
The claim does not include any additional elements that amount to significantly more than the judicial exception. The limitation of “receiving a request for re-training from a user” is just a nominal or tangential addition to the claim, and is also well-understood, routine and conventional as evidenced by MPEP §2106.05(d)(II)(I), “receiving or transmitting data over a network”. This limitation therefore remains insignificant extra-solution activity even upon reconsideration, and does not amount to significantly more. Even when considered in combination, this additional element represents an insignificant extra-solution activity which cannot provide an inventive concept. The claim is not patent eligible.
Regarding claim 6, the rejection of claim 1 is further incorporated, and further, the claim recites: wherein inputting a graph fragment into the MSMPGNN comprises inputting an ML model category. This limitation merely uses or operates the ML model in its ordinary capacity thus amounts to mere instructions to apply an exception using a generic computer component. Please see MPEP 2106.05(f).
and
wherein generating a prediction based on the graph fragment comprises generating a graph including a set of predicted features for the ML model category. This limitation amounts to more specifics of the judicial exception identified in the rejection of claim 1 above.
The claim does not include any additional elements that amount to an integration of the judicial exceptions into a practical application, nor to significantly more than the judicial exceptions. The claim is not patent eligible.
Regarding claim 7, the rejection of claim 1 is further incorporated, and further, the claim recites: wherein inputting a graph fragment into the MSMPGNN comprises inputting an ML model category and a performance indicator. This limitation merely uses or operates the ML model in its ordinary capacity thus amounts to mere instructions to apply an exception using a generic computer component. Please see MPEP 2106.05(f).
and
wherein generating a prediction based on the graph fragment comprises generating a graph including a set of predicted features for the ML model category. This limitation amounts to more specifics of the judicial exception identified in the rejection of claim 1 above.
The claim does not include any additional elements that amount to an integration of the judicial exceptions into a practical application, nor to significantly more than the judicial exceptions. The claim is not patent eligible.
Regarding claim 8, the rejection of claim 1 is further incorporated, and further, the claim recites: wherein inputting a graph fragment into the MSMPGNN comprises inputting a feature. This limitation merely uses or operates the ML model in its ordinary capacity thus amounts to mere instructions to apply an exception using a generic computer component. Please see MPEP 2106.05(f).
and
wherein generating a prediction based on the graph fragment comprises generating a graph including a set of model categories and derivative features. This limitation amounts to more specifics of the judicial exception identified in the rejection of claim 1 above.
The claim does not include any additional elements that amount to an integration of the judicial exceptions into a practical application, nor to significantly more than the judicial exceptions. The claim is not patent eligible.
Regarding claim 9, the rejection of claim 1 is further incorporated, and further, the claim recites: wherein inputting a graph fragment into the MSMPGNN comprises inputting an ML model category and a feature. This limitation merely uses or operates the ML model in its ordinary capacity thus amounts to mere instructions to apply an exception using a generic computer component. Please see MPEP 2106.05(f).
and
wherein generating a prediction based on the graph fragment comprises generating a graph including a set of derivative features. This limitation amounts to more specifics of the judicial exception identified in the rejection of claim 1 above.
The claim does not include any additional elements that amount to an integration of the judicial exceptions into a practical application, nor to significantly more than the judicial exceptions. The claim is not patent eligible.
Claim 10 recites features similar to claim 1 and is rejected for at least the same reasons therein. Claim 10 additionally requires analysis for A non-transitory computer-readable storage medium for tangibly storing computer program instructions capable of being executed by a computer processor, the computer program instructions defining steps of… This is an additional element that amounts to mere instructions to apply the exception using a generic computer component. Please see MPEP 2106.05(f).
Regarding Claims 11-13, they recite features similar to claims 2-4 and are rejected for at least the same reasons therein.
Regarding Claims 14-17, they recite features similar to claims 6-9 and are rejected for at least the same reasons therein.
Claim 18 recites features similar to claim 1 and is rejected for at least the same reasons therein. Claim 18 additionally requires analysis for A device comprising: a processor configured to… This is an additional element that amounts to mere instructions to apply the exception using a generic computer component. Please see MPEP 2106.05(f).
Regarding Claims 19 and 20, they recite features similar to claims 2 and 3 and are rejected for at least the same reasons therein.
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-2, 5-11, and 14-19 are rejected under 35 U.S.C. 102(a)(1) as being anticipated by Hu et al. ("US 20210406779 A1", hereinafter "Hu").
Regarding claim 1, Hu teaches A method comprising:
retrieving properties associated with a plurality of machine learning (ML) models (“The system may determine the locations of the models in the N-dimensional space and cluster the models that are close to each other (e.g., being within a threshold distance) in the N-dimensional space into a same model category or model group.” [¶0038; note; model categories correspond to “properties”]);
building a graph data structure using the properties, the graph data structure including nodes corresponding to the properties and edges representing connections between the properties (“The system may generate a knowledge graph (corresponds to building a graph data structure) to represent the relations between these ML models and these features as determined based on related domain knowledge or based on inferred correlations through graph learning. The knowledge graph may include a number of nodes and a number of edges connecting these nodes. Each node may represent a ML model or a feature. Each edge may represent a relationship between the two nodes connected by that edge and may be associated with a weight for characterizing the represented relationship.” [¶0004]);
training a multi-stack message-passing graph neural network (MSMPGNN) using the graph data structure (“In particular embodiments, the graph neural network (GNN) may be trained using generated training samples (e.g., with pre-labeled correlations by human experts) to identify the hidden correlations or relationships in the knowledge graph.” [¶0047; note: the “multi-stack message-passing” graph neural network does not constitute a meaningful limitation because it is merely a label for a graph neural network without further details.]);
inputting a graph fragment into the MSMPGNN (“The feature knowledge graph system 210 may receive a user query related to a particular ML model (e.g., a new ML model or an existing ML model in the knowledge graph). [¶0027; note: a user query corresponds to “a graph fragment”]);
generating a prediction based on the graph fragment using the MSMPGNN (“For example, when the ML model provides a high prediction precision (e.g., higher than a pre-determined threshold) associated with high conversion rates or click-through rates, the system may cause the corresponding edges representing the relationships between these features and the corresponding ML model to have greater weight values indicating a higher level of relevance or importance.” [¶0050]); and
training a new ML model using the prediction (“The feature knowledge graph system 210 may receive a user query related to a particular ML model (e.g., a new ML model or an existing ML model in the knowledge graph). The feature knowledge graph system 210 may use graph learning to learn new knowledge (e.g., discovering new or hidden relationships of feature-model pairs, feature-feature pair, or model-model pairs) about that particular ML model being queried. The feature knowledge graph system 210 may generate recommended features for that ML model based on the newly learned knowledge or newly discovered relationships. The recommended features may be generated based on features of other pre-existing models in the knowledge graph.” [¶0027]).
Regarding claim 2, Hu teaches The method of claim 1, wherein retrieving the properties comprises retrieving one or more of:
raw features used by the plurality of ML models;
derivative features used by the plurality of ML models;
categories of the plurality of ML models;
feature significance values associated with the plurality of ML models;
category feature significance values associated with the plurality of ML models; and
performance statuses associated with the plurality of ML models. (“In particular embodiments, the one or more inference value metrics may include performance parameters of the machine-learning model with the one or more recommended features.” [¶0054; note: The claim under BRI recites “one or more of” thus only requires the examiner to map to one of the corresponding elements. Therefore, the corresponding mapping teaches “performance statuses associated with the plurality of ML models”. However, Hu teaches additional elements of the claim as shown in ¶0038 “categories of the plurality of ML models”])
Regarding claim 5, Hu teaches The method of claim 1, further comprising re-training the MSMPGNN in response to a trigger comprising one of:
detecting a new ML model added to the plurality of ML models;
detecting a new feature added to an ML model in the plurality of ML models;
detecting a performance change in one of the plurality of ML models;
detecting a new category of ML model; and
receiving a request for re-training from a user.
(“The model attributes may capture information related training efficiency or other model metrics including, for example, but not limited to, precision (e.g., average precision score (APS)), recall, receiver operating characteristic (ROC), area under the curve (AUC), logic loss function (LLF), etc. Both training efficiency and model metrics may be used to choose better features and adjust modeling (“retraining”).” [¶0026; note: The claim under BRI recites “one or more of” thus only requires the examiner to map to one of the corresponding elements. Therefore, the corresponding mapping teaches “detecting a performance change in one of the plurality of ML models”])
Regarding claim 6, Hu teaches The method of claim 1, wherein inputting a graph fragment into the MSMPGNN comprises inputting an ML model category (“As an example, the system may cluster models sharing one or more model tags into a same model category or group. As another example, the system may cluster models that share many features (e.g., greater than a threshold) into a same model category or model group.” [¶0038])
and
wherein generating a prediction based on the graph fragment comprises generating a graph including a set of predicted features for the ML model category (“For example, when the ML model provides a high prediction precision (e.g., higher than a pre-determined threshold) associated with high conversion rates or click-through rates, the system may cause the corresponding edges representing the relationships between these features and the corresponding ML model to have greater weight values indicating a higher level of relevance or importance.” [¶0050]).
Regarding claim 7, Hu teaches The method of claim 1, wherein inputting a graph fragment into the MSMPGNN comprises inputting an ML model category (¶0038) and a performance indicator (“The model attributes may capture information related training efficiency or other model metrics including, for example, but not limited to, precision (e.g., average precision score (APS)), recall, receiver operating characteristic (ROC), area under the curve (AUC), logic loss function (LLF), etc. Both training efficiency and model metrics may be used to choose better features and adjust modeling” [¶0026]) and
wherein generating a prediction based on the graph fragment comprises generating a graph including a set of predicted features for the ML model category (“For example, when the ML model provides a high prediction precision (e.g., higher than a pre-determined threshold) associated with high conversion rates or click-through rates, the system may cause the corresponding edges representing the relationships between these features and the corresponding ML model to have greater weight values indicating a higher level of relevance or importance.” [¶0050]).
Regarding claim 8, Hu teaches The method of claim 1, wherein inputting a graph fragment into the MSMPGNN comprises inputting a feature (“The system may receive a number of ML models, with associated features that are determined based on related domain knowledge, from another computing system or from user inputs.” [¶0004]) and
wherein generating a prediction based on the graph fragment comprises generating a graph including a set of model categories (“For example, when the ML model provides a high prediction precision (e.g., higher than a pre-determined threshold) associated with high conversion rates or click-through rates, the system may cause the corresponding edges representing the relationships between these features and the corresponding ML model to have greater weight values indicating a higher level of relevance or importance.” [¶0050]).
and derivative features (“The Ads model 310 and the event model 330 may share two features including date 331 and location 334. The model nodes and corresponding features nodes that are associated with the model nodes may be connected by respective edges indicating the relationship of respective model-feature pairs. Each edge may be associated with a weight indicating a relevance level or importance level of the connected nodes.” [¶0029; sharing features including date and location would correspond to “derivative features” when read in light of the specification])
Regarding claim 9, Hu teaches The method of claim 1, wherein inputting a graph fragment into the MSMPGNN comprises
inputting an ML model category (¶0038) and a feature (¶0004) and
wherein generating a prediction based on the graph fragment comprises generating a graph including a set of derivative features. (“The Ads model 310 may be associated with a number of features nodes including, for example, shopping history 311, search history 312, interest 313, product item 314, occupation 315, date 331, location 334, etc. The event model 330 may be associated with a number of feature nodes including, for example, date 331, weather 332, affiliation 333, location 334, etc. The Ads model 310 and the event model 330 may share two features including date 331 and location 334. The model nodes and corresponding features nodes that are associated with the model nodes may be connected by respective edges indicating the relationship of respective model-feature pairs.” [¶0029])
Claim 10 recites features similar to claim 1 and is rejected for at least the same reasons therein. Claim 10 additionally requires A non-transitory computer-readable storage medium for tangibly storing computer program instructions capable of being executed by a computer processor, the computer program instructions defining steps of… (Hu, ¶0088, “Herein, a computer-readable non-transitory storage medium or media may include…”)
Regarding Claims 11 and 14-17, they are substantially similar to claims 2, and 6-9 respectively, and are rejected in the same manner, the same art, and reasoning applying.
Claim 18 recites features similar to claim 1 and is rejected for at least the same reasons therein. Claim 18 additionally requires A device comprising: a processor configured to… (Hu, ¶0083, “In particular embodiments, memory 804 includes main memory for storing instructions for processor 802 to execute or data for processor 802 to operate on…”)
Regarding Claim 19, it recites features similar to claim 2 and is rejected for at least the same reasons therein.
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.
The factual inquiries for establishing a background for determining obviousness under 35 U.S.C. 103 are summarized as follows:
1. Determining the scope and contents of the prior art.
2. Ascertaining the differences between the prior art and the claims at issue.
3. Resolving the level of ordinary skill in the pertinent art.
4. Considering objective evidence present in the application indicating obviousness or nonobviousness.
Claims 3, 4, 12, 13 and 20 are rejected under 35 U.S.C. 103 as being unpatentable over Hu in view of Zhang et al. ("Cross Message Passing Graph Neural Network", hereinafter "Zhang").
Regarding claim 3, Hu teaches The method of claim 1, however fails to explicitly teach wherein training the MSMPGNN comprises, for a given ML model in the plurality of ML models:
initializing a state of the given ML model to a default state;
acquiring at least one hidden state of a second ML model in the graph data structure; and
updating the state of the given ML model based on the at least one hidden state.
Zhang teaches wherein training the MSMPGNN comprises, for a given ML model in the plurality of ML models:
initializing a state of the given ML model to a default state (“The upper part of Fig. 1 shows the local message passing phase used for the node embeddings updating, and the lower part shows the global message passing phase used for the graph feature updating. The local message passing phase consists of a Fully Connected layer which is used for transforming initial node feature, and several convolutional layers” [pg. 4, left col, ¶2; The local message passing phase would be considered to be a default state of the ML model because it is used for transforming the initial node feature]);
acquiring at least one hidden state of a second ML model in the graph data structure (“The graph feature is the hidden state of the GRU network. At each time step, the graph feature updating and the node embeddings updating are performed alternatively.” [pg. 4, left col, ¶2]); and
updating the state of the given ML model based on the at least one hidden state (“As shown in Fig. 1, at the time step t, the network first performs the local message passing phase to update the node embeddings Ht , and then performs the global message passing phase to update the graph feature hg t .” [pg. 4, left col, ¶2]).
It would have been obvious to one of ordinary skill in the art before the effective filing date to modify Hu’s teachings in order to initialize and update the ML in the manner taught by Zhang. One would have been motivated to make this modification in order to combine global information into the node embeddings updating by using the graph feature. [pg. 1 bottom right para – pg. 2, top left para, Zhang]
Regarding claim 4, Hu/Zhang teaches The method of claim 3, where Zhang further teaches wherein training the MSMPGNN further comprises
computing, for each node, a positional embedding based on an aggregation of positional embeddings for all neighbors in a neighborhood of a respective node (“However, unlike images, the number of neighbor nodes is different for each node, and the node set is unordered. Therefore, the spatial based graph convolution operation aggregates the embedding of each node and its neighbor nodes as a new embedding by using the adjacency matrix. In order to expand the receptive field of each node, multiple convolutional layers are usually stacked. After message passing phase, a readout layer is adopted to extract the graph features for the graph classification task.” [pg. 3, left col, ¶1]).
Same motivation to combine the teachings of Hu/Zhang as claim 3.
Regarding Claims 12 and 13, they are substantially similar to claims 3 and 4 respectively, and are rejected in the same manner, the same art, and reasoning applying.
Regarding Claim 20, it is substantially similar to claim 3 respectively, and is rejected in the same manner, the same art, and reasoning applying.
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure.
Sinha et al. (“US 20210133612 A1”) involves generating graph data structures that model inter-feature dependencies for use with machine-learning models to predict end-user behavior. (Abstract)
Liu et al. (“US 20240054356 A1) discloses creating different node embeddings to form multipurpose node embedding using supervised machine learning and further using a ML model with the features in the aggregated node embeddings as appropriate for the task the model is performing. (Abstract)
Any inquiry concerning this communication or earlier communications from the examiner should be directed to MICHAEL H HOANG whose telephone number is (571)272-8491. The examiner can normally be reached Mon-Fri 8:30AM-4: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, Kakali Chaki can be reached at (571) 272-3719. 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.
/MICHAEL H HOANG/Examiner, Art Unit 2122