DETAILED ACTION
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 Objection – Informalities / Typographical Errors
Claims 6, 7, and 10 are objected to under 37 CFR 1.75(d)(1) because the claims contain informalities and typographical errors. Appropriate correction is required.
Specifically, the term “pre-traned” appears in claims 6, 7, and 10. The term appears to be a typographical error and should be corrected to “pre-trained.”
Additionally, claim 10 recites “bytraining” without a space between “by” and “training.” The phrase should be corrected to “by training.”
Suggested corrections are as follows:
In claim 6, replace “pre-traned graph neural network” with “pre-trained graph neural network.”
In claim 7, replace “pre-traned graph neural network” with “pre-trained graph neural network.”
In claim 10, replace “pre-traned graph neural network” with “pre-trained graph neural network,” and replace “bytraining” with “by training.”
These corrections do not appear to alter the scope of the claims, but are required to correct spelling and spacing errors and to place the claims in proper form.
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.
Claim 1-15 rejected under 35 U.S.C. 101 because the claimed invention is directed to a judicial exception (an abstract idea) without reciting significantly more.
Regarding independent claims 1, 6, and 11
Step 1 -- whether the claim falls within any statutory category. See MPEP 2106.03
Claim 1 is drawn to a method claim; claim 6 is drawn to an apparatus claim; and claim 11 is drawn to a non-transitory computer-readable storage medium claim. Therefore, each of these claims falls under one of the four categories of statutory subject matter: claim 1 falls under a process/method, claim 6 falls under a machine/product/apparatus, and claim 11 falls under a manufacture. Accordingly, independent claims 1, 6, and 11 satisfy Step 1 of the subject matter eligibility analysis.
Step 2A Prong 1 – whether the claim recites a judicial exception. See MPEP 2106.04, subsection II.
Regarding independent claim 1, the claim is directed to a method for training a graph neural network to be performed in a graph neural network training apparatus, the method comprising: preparing the graph neural network including a first graph neural network and a second graph neural network; generating first node embeddings representing training graph data as vectors using the first graph neural network; generating second node embeddings representing the training graph data as vectors using the second graph neural network; generating third node embeddings by projecting a preset predictor onto the first node embeddings; determining a loss function such that a node embedding corresponding to a query node in the training graph data among the third node embeddings and a node embedding corresponding to a real positive of the query node among the second node embeddings become close to each other; and training the first graph neural network using the loss function.
The limitations of “generating first node embeddings representing a training graph data as vectors using the first graph neural network,” “generating second node embeddings representing the training graph data as the vectors using the second graph neural network,” “generating third node embeddings by projecting a preset predictor onto the first node embeddings,” “determining a loss function such that a node embedding corresponding to a query node in the training graph data among the third node embeddings and a node embedding corresponding to real positive of the query node among the second node embeddings become close to each other,” and “training the first graph neural network using the loss function” recite generating vector embeddings, projecting a predictor onto vector embeddings, determining a loss function based on closeness between node embeddings, and training a graph neural network using the loss function.
These limitations recite mathematical concepts because they describe mathematical relationships, mathematical calculations, and numerical/vector operations used to generate node embeddings, project embeddings, determine a loss function, and train a graph neural network using that loss function. Accordingly, these limitations fall within the mathematical concepts grouping of abstract ideas under MPEP 2106.04(a)(2), subsection I.
The limitation of “preparing the graph neural network including a first graph neural network and a second graph neural network” does not itself recite a mathematical concept, mental process, or certain method of organizing human activity. Rather, it identifies the graph neural network arrangement in which the recited embedding-generation, projection, loss-function, and training operations are performed.
Therefore, independent claim 1 recites an abstract idea, namely mathematical concepts including generating vector embeddings, projecting embeddings, determining a loss function based on closeness between embeddings, and training a graph neural network using the loss function. Because claim 1 recites a judicial exception, the analysis should proceed to Step 2A Prong Two to determine whether the claim as a whole integrates the recited judicial exception into a practical application. See MPEP 2106.04(d).
Independent claim 6 is an apparatus claim for processing a pre-trained graph neural network. Claim 6 recites additional apparatus-processing limitations, including a memory, a processor, inputting input graph data to the pre-trained graph neural network, and outputting a node representation corresponding to the input graph data. However, claim 6 further recites that the pre-trained graph neural network is trained by limitations substantially corresponding to the training limitations of claim 1, including generating first node embeddings, generating second node embeddings, generating third node embeddings by projecting a preset predictor, determining a loss function based on closeness between node embeddings, and training the first graph neural network using the loss function.
For the same reasons discussed with respect to independent claim 1, the training-recitation limitations in independent claim 6 recite mathematical concepts, including generating vector embeddings, projecting embeddings, determining a loss function based on closeness between embeddings, and training a graph neural network using the loss function. Accordingly, independent claim 6 recites an abstract idea under the mathematical concepts grouping of abstract ideas. See MPEP 2106.04(a)(2), subsection I.
Independent claim 11 is a non-transitory computer-readable storage medium claim storing computer-executable instructions that, when executed by a processor, cause the processor to perform a method of training a graph neural network. Claim 11 recites the same operative training limitations as independent claim 1, including preparing the graph neural network, generating first node embeddings, generating second node embeddings, generating third node embeddings by projecting a preset predictor, determining a loss function based on closeness between node embeddings, and training the first graph neural network using the loss function.
For the same reasons discussed with respect to independent claim 1, independent claim 11 recites mathematical concepts, including generating vector embeddings, projecting embeddings, determining a loss function based on closeness between embeddings, and training a graph neural network using the loss function. Accordingly, independent claim 11 recites an abstract idea under the mathematical concepts grouping of abstract ideas. See MPEP 2106.04(a)(2), subsection I.
Therefore, independent claims 6 and 11, like independent claim 1, recite a judicial exception, namely an abstract idea in the form of mathematical concepts. The analysis should not proceed beyond this conclusion until the next instructed step.
Step 2A Prong 2 -- whether the claim as a whole integrates the recited judicial exception into a practical application of the exception or whether the claim is “directed to” the judicial exception. This evaluation is performed by (1) identifying whether there are any additional elements recited in the claim beyond the judicial exception, and (2) evaluating those additional elements individually and in combination to determine whether the claim as a whole integrates the exception into a practical application. See MPEP 2106.04(d).
Regarding independent claim 1, the claim recites the additional elements of “to be performed in a graph neural network training apparatus” and “preparing the graph neural network including a first graph neural network and a second graph neural network.” The claim also recites use of the first graph neural network and second graph neural network as the tools by which the embedding-generation and training operations are performed.
These limitations do not integrate the recited judicial exception into a practical application. The recited graph neural network training apparatus is recited at a high level of generality and merely provides a computer environment for performing the abstract mathematical operations. The recited first graph neural network and second graph neural network are likewise used as tools to generate vector embeddings, project a preset predictor, determine a loss function based on closeness between embeddings, and train the first graph neural network using the loss function. These limitations amount to no more than mere instructions to apply the abstract idea using computer/neural-network components, or merely using a computer as a tool to perform the abstract idea. See MPEP 2106.05(f).
The claim also does not recite a particular technological application of the trained graph neural network. Although the specification describes reducing time and economic costs associated with data augmentation and preventing loss of graph meaning, claim 1 does not recite avoiding data augmentation, a specific downstream use of the trained graph neural network, a concrete technological action performed using the trained graph neural network, or a particular improvement to computer functionality. Instead, the claim remains directed to generating node embeddings, projecting embeddings, determining a loss function, and training a graph neural network using that loss function. Thus, the claim does not integrate the abstract idea into a practical application as an improvement to the functioning of a computer or to another technology or technical field. See MPEP 2106.05(a).
Nor do the additional elements apply the judicial exception with a particular machine, effect a transformation of a particular article, or apply the exception in another meaningful way beyond generally linking the use of the exception to the graph-neural-network training environment. See MPEP 2106.05(b), 2106.05(c), 2106.05(e), and 2106.05(h).
Accordingly, even when the additional elements are considered individually and in combination, they do not impose meaningful limits on the recited mathematical concepts. Independent claim 1 therefore does not integrate the recited judicial exception into a practical application and is directed to the abstract idea. Step 2A: YES.
Regarding independent claim 6, claim 6 is drawn to an apparatus for processing a pre-trained graph neural network and recites limitations similar to independent claim 1 in its training-recitation clause. Specifically, claim 6 recites that the pre-trained graph neural network is trained by generating first node embeddings, generating second node embeddings, generating third node embeddings by projecting a preset predictor, determining a loss function based on closeness between node embeddings, and training the first graph neural network using the loss function. These limitations are not integrated into a practical application for the same reasons discussed with respect to claim 1.
Claim 6 further recites additional elements of “a memory configured to store the pre-trained graph neural network . . . and one or more instructions,” “a processor configured to execute the one or more instructions stored in the memory,” “input an input graph data to the pre-trained graph neural network,” and “output a node representation corresponding to the input graph data using the pre-trained graph neural network.” These limitations do not integrate the recited judicial exception into a practical application. The memory and processor are recited at a high level of generality and merely provide generic computer components for executing the abstract graph neural network processing. The inputting of graph data is mere data gathering or data input, and the outputting of a node representation is insignificant post-solution activity. See MPEP 2106.05(f) and MPEP 2106.05(g). Further, the use of a pre-trained graph neural network merely links the abstract mathematical processing to the graph neural network technological environment and does not, by itself, impose a meaningful limit on the judicial exception. See MPEP 2106.05(h).
Accordingly, even when considered individually and in combination, the additional elements of claim 6 do not integrate the recited judicial exception into a practical application. Claim 6 is therefore directed to the abstract idea.
Regarding independent claim 11, claim 11 is drawn to a non-transitory computer-readable storage medium storing computer-executable instructions and recites the same operative training limitations as independent claim 1. Specifically, claim 11 recites preparing the graph neural network including a first graph neural network and a second graph neural network, generating first node embeddings, generating second node embeddings, generating third node embeddings by projecting a preset predictor, determining a loss function based on closeness between node embeddings, and training the first graph neural network using the loss function. These limitations are not integrated into a practical application for the same reasons discussed with respect to claim 1.
Claim 11 further recites additional elements of “a non-transitory computer readable storage medium storing computer executable instructions” and instructions that, “when executed by a processor,” cause the processor to perform the recited graph neural network training method. These limitations do not integrate the recited judicial exception into a practical application. The non-transitory computer-readable storage medium, instructions, and processor merely provide generic computer implementation of the same abstract mathematical training process. The claim does not recite a particular improvement to storage-medium technology, processor operation, computer functionality, or a concrete technological application of the trained graph neural network. Accordingly, these limitations amount to no more than mere instructions to apply the abstract idea using generic computer components. See MPEP 2106.05(f). To the extent the claim limits the abstract idea to implementation on a non-transitory computer-readable storage medium and processor, such limitation merely links the abstract idea to a computer technological environment. See MPEP 2106.05(h).
Accordingly, even when considered individually and in combination, the additional elements of claim 11 do not integrate the recited judicial exception into a practical application. Claim 11 is therefore directed to the abstract idea.
Step 2B -- whether the claim amounts to significantly more than the judicial exception. See MPEP § 2106.05.
The claims do not include additional elements that are sufficient to amount to significantly more than the judicial exception. As explained above with respect to Step 2A Prong Two, the additional elements of independent claim 1 include the graph neural network training apparatus, preparing a graph neural network including a first graph neural network and a second graph neural network, and using the first and second graph neural networks to perform the recited embedding-generation, projection, loss-function, and training operations. The graph neural network training apparatus is recited at a high level of generality and merely provides a computer environment for performing the abstract mathematical operations. The first and second graph neural networks are used as tools to apply the abstract mathematical concepts. Mere instructions to apply an exception using computer/neural-network components cannot provide an inventive concept. See MPEP 2106.05(f).
The claim also does not recite additional elements that improve the functioning of a computer or another technology, apply the exception with a particular machine, transform a particular article, or apply the exception in another meaningful way beyond generally linking the abstract idea to the graph-neural-network training environment. See MPEP 2106.05(a), 2106.05(b), 2106.05(c), 2106.05(e), and 2106.05(h). Accordingly, even when considered in combination, the additional elements of claim 1 do not provide significantly more than the abstract idea. Claim 1 is not patent eligible.
Regarding independent claim 6, claim 6 recites similar training limitations to claim 1 and is rejected under the same rationale. Claim 6 further recites a memory, a processor, instructions causing the processor to input input graph data to the pre-trained graph neural network, and instructions causing the processor to output a node representation corresponding to the input graph data using the pre-trained graph neural network. The memory and processor are generic computer components that merely execute the abstract mathematical processing. The inputting of graph data is mere data gathering or data input, and the outputting of a node representation is insignificant post-solution activity. These insignificant extra-solution activities were re-evaluated at Step 2B and remain insignificant because they are recited at a high level of generality and are described in the specification as ordinary receipt and output/execution of data using an input device, receiver, processor, memory, and stored program. See MPEP 2106.05(g) and MPEP 2106.07(a)(III). The use of a pre-trained graph neural network merely links the abstract mathematical processing to the graph-neural-network technological environment. See MPEP 2106.05(h). Accordingly, even when considered individually and in combination, the additional elements of claim 6 do not provide significantly more than the abstract idea. Claim 6 is not patent eligible.
Regarding independent claim 11, claim 11 recites the same operative training limitations as claim 1 and is rejected under the same rationale. Claim 11 further recites a non-transitory computer-readable storage medium storing computer-executable instructions that, when executed by a processor, cause the processor to perform the recited method of training a graph neural network. These limitations merely implement the abstract mathematical training process using a generic computer-readable storage medium, generic executable instructions, and a processor. The claim does not recite a particular improvement to storage-medium technology, processor operation, computer functionality, or a concrete technological application of the trained graph neural network. Accordingly, these limitations amount to no more than mere instructions to apply the abstract idea using generic computer components. See MPEP 2106.05(f). To the extent the claim limits the abstract idea to a non-transitory computer-readable storage medium and processor environment, it merely links the abstract idea to a computer technological environment. See MPEP 2106.05(h). Accordingly, even when considered individually and in combination, the additional elements of claim 11 do not provide significantly more than the abstract idea. Claim 11 is not patent eligible.
Therefore, independent claims 1, 6, and 11 are rejected under 35 U.S.C. § 101 because the claimed inventions are directed to an abstract idea without significantly more.
Regarding dependent claims 2-5, 7-10, and 12-15
Step 1 -- whether the claim falls within any statutory category. See MPEP § 2106.03.
Dependent claims 2–5 are drawn to method claims depending directly or indirectly from independent claim 1. Therefore, claims 2–5 fall under one of the four categories of statutory subject matter, namely a process/method.
Dependent claims 7–10 are drawn to apparatus claims depending directly or indirectly from independent claim 6. Therefore, claims 7–10 fall under one of the four categories of statutory subject matter, namely a machine/product/apparatus.
Dependent claims 12–15 are drawn to non-transitory computer-readable storage medium claims depending directly or indirectly from independent claim 11. Therefore, claims 12–15 fall under one of the four categories of statutory subject matter, namely a manufacture.
Accordingly, dependent claims 2–5, 7–10, and 12–15 satisfy Step 1 of the subject matter eligibility analysis.
Step 2A Prong 1 – whether the claim recites a judicial exception. See MPEP 2106.04, subsection II.
Regarding dependent claims 2, 7, and 12, these claims recite limitations of “determining a predetermined first number of neighbor nodes closest to the query node using a node embedding corresponding to the query node among the first node embeddings and node embeddings corresponding to other nodes in the training graph data among the second node embeddings,” “determining adjacent nodes connected to the query node among the neighbor nodes as local positive,” “determining, as global positive, same-cluster nodes clustered into the same cluster as the query node among the neighbor nodes,” and “determining the real positive using the local positive and the global positive.” These limitations are directed to determining closest neighbor nodes using vector embeddings, evaluating adjacency relationships, evaluating same-cluster relationships, and determining a real positive from local-positive and global-positive node sets. These limitations recite mathematical concepts because they involve mathematical relationships and calculations applied to node embeddings, graph-node relationships, and clustering relationships. These limitations also recite mental processes to the extent they involve observation, evaluation, judgment, or classification of nodes as closest nodes, local positives, global positives, and real positives. Accordingly, these limitations fall within the mathematical concepts and mental processes groupings of abstract ideas under MPEP 2106.04(a)(2), subsections I and III.
Regarding dependent claims 3, 8, and 13, these claims recite the limitation that “the real positive is a union of the local positive and the global positive.” This limitation is directed to a mathematical relationship or set operation because it defines the real positive as the union of two sets. Accordingly, this limitation falls within the mathematical concepts grouping of abstract ideas under MPEP 2106.04(a)(2), subsection I.
Regarding dependent claims 4, 9, and 14, these claims recite the limitation that “the loss function is determined using cosine similarity between the node embedding corresponding to the query node in the training graph data among the third node embeddings and the node embedding corresponding to the real positive of the query node among the second node embeddings.” This limitation is directed to a mathematical calculation because cosine similarity is a mathematical measure of similarity between vector embeddings and is used to determine the loss function. Accordingly, this limitation falls within the mathematical concepts grouping of abstract ideas under MPEP 2106.04(a)(2), subsection I.
Regarding dependent claims 5, 10, and 15, these claims recite the limitation of “training the second graph neural network by accumulating parameters of the first graph neural network.” This limitation is directed to a mathematical calculation because accumulating neural-network parameters involves aggregating numerical model values, such as weights or trainable parameters, to train another neural network. Accordingly, this limitation falls within the mathematical concepts grouping of abstract ideas under MPEP 2106.04(a)(2), subsection I.
Therefore, dependent claims 2–5, 7–10, and 12–15 further recite judicial exceptions, namely mathematical concepts and, for claims 2, 7, and 12, mental processes, in addition to the judicial exceptions identified in the independent claims from which they depend. The analysis should proceed next, when instructed, to Step 2A Prong 2 for these dependent claims.
Step 2A Prong 2 -- whether the claim as a whole integrates the recited judicial exception into a practical application of the exception or whether the claim is “directed to” the judicial exception. This evaluation is performed by (1) identifying whether there are any additional elements recited in the claim beyond the judicial exception, and (2) evaluating those additional elements individually and in combination to determine whether the claim as a whole integrates the exception into a practical application. See MPEP 2106.04(d).
Regarding dependent claims 2, 7, and 12, these claims recite limitations of “determining a predetermined first number of neighbor nodes closest to the query node using a node embedding corresponding to the query node among the first node embeddings and node embeddings corresponding to other nodes in the training graph data among the second node embeddings,” “determining adjacent nodes connected to the query node among the neighbor nodes as local positive,” “determining, as global positive, same-cluster nodes clustered into the same cluster as the query node among the neighbor nodes,” and “determining the real positive using the local positive and the global positive.” These limitations further define mathematical and evaluative operations for determining a real positive used in the loss-function/training process. The limitations do not recite a concrete downstream technological use, a particular machine integral to applying the exception, a transformation of an article, or an improvement to computer functionality or another technology. Rather, the limitations merely use the graph-neural-network training environment to perform closest-neighbor, adjacency, cluster-membership, and real-positive determinations. Accordingly, these limitations do not integrate the judicial exception into a practical application. See MPEP 2106.05(a), 2106.05(b), 2106.05(c), 2106.05(e), 2106.05(f), and 2106.05(h).
Regarding dependent claims 3, 8, and 13, these claims recite that “the real positive is a union of the local positive and the global positive.” This limitation further defines the real positive using a mathematical set relationship. The limitation does not recite any additional technological application of the union result, nor does it improve computer functionality, apply the exception with a particular machine, transform an article, or impose another meaningful technological limitation beyond the graph-neural-network training environment. Therefore, this limitation does not integrate the judicial exception into a practical application. See MPEP 2106.05(a), 2106.05(e), 2106.05(f), and 2106.05(h).
Regarding dependent claims 4, 9, and 14, these claims recite that “the loss function is determined using cosine similarity between the node embedding corresponding to the query node in the training graph data among the third node embeddings and the node embedding corresponding to the real positive of the query node among the second node embeddings.” This limitation merely specifies the mathematical similarity metric used to determine the loss function. The limitation does not recite a non-abstract technological use of the cosine-similarity result, a particular machine integral to applying the exception, a transformation of an article, or a specific improvement to computer functionality. Therefore, this limitation does not integrate the judicial exception into a practical application. See MPEP 2106.05(a), 2106.05(b), 2106.05(c), 2106.05(f), and 2106.05(h).
Regarding dependent claims 5, 10, and 15, these claims recite “training the second graph neural network by accumulating parameters of the first graph neural network.” This limitation further specifies mathematical model-parameter updating within the neural-network training process. The limitation does not recite a particular hardware implementation, a specific processor or memory improvement, a transformation of a physical article, or a concrete downstream technological application of the trained second graph neural network. Rather, the limitation merely applies mathematical parameter accumulation in the graph-neural-network training environment. Therefore, this limitation does not integrate the judicial exception into a practical application. See MPEP 2106.05(a), 2106.05(e), 2106.05(f), and 2106.05(h).
Accordingly, even when the dependent-claim limitations are considered individually and in combination with the limitations of their respective independent claims, claims 2–5, 7–10, and 12–15 do not integrate the recited judicial exceptions into a practical application. Therefore, dependent claims 2–5, 7–10, and 12–15 are directed to the judicial exception under Step 2A Prong Two.
Step 2B -- whether the claim amounts to significantly more than the judicial exception. See MPEP § 2106.05.
Dependent claims 2–5, 7–10, and 12–15 do not include additional elements that are sufficient to amount to significantly more than the judicial exception.
Regarding dependent claims 2, 7, and 12, these claims recite limitations of determining a predetermined first number of neighbor nodes closest to the query node using node embeddings, determining adjacent nodes connected to the query node among the neighbor nodes as local positive, determining same-cluster nodes clustered into the same cluster as the query node among the neighbor nodes as global positive, and determining the real positive using the local positive and the global positive. These limitations further define the abstract mathematical and evaluative process of determining positive node relationships for use in the loss-function/training process. The limitations do not add a specific improvement to computer functionality, a particular machine integral to the claim, a transformation of an article, or another meaningful technological application. Instead, they merely narrow the abstract idea itself. Accordingly, these limitations do not provide an inventive concept. See MPEP 2106.05(a), 2106.05(b), 2106.05(c), 2106.05(e), 2106.05(f), and 2106.05(h).
Regarding dependent claims 3, 8, and 13, these claims recite that the real positive is a union of the local positive and the global positive. This limitation further defines the real positive using a mathematical set relationship. The limitation is part of the abstract mathematical concept and does not add any additional element that improves computer functionality, applies the exception with a particular machine, transforms an article, or applies the exception in another meaningful technological way. Accordingly, this limitation does not provide an inventive concept. See MPEP 2106.05(a), 2106.05(e), 2106.05(f), and 2106.05(h).
Regarding dependent claims 4, 9, and 14, these claims recite that the loss function is determined using cosine similarity between the node embedding corresponding to the query node among the third node embeddings and the node embedding corresponding to the real positive among the second node embeddings. Cosine similarity is a mathematical similarity calculation between vector embeddings. This limitation merely specifies the mathematical metric used in determining the loss function and does not add a non-abstract technological application, a computer-functionality improvement, a particular machine, or a transformation of an article. Accordingly, this limitation does not provide an inventive concept. See MPEP 2106.05(a), 2106.05(b), 2106.05(c), 2106.05(f), and 2106.05(h).
Regarding dependent claims 5, 10, and 15, these claims recite training the second graph neural network by accumulating parameters of the first graph neural network. This limitation further specifies mathematical model-parameter updating within the graph-neural-network training process. The claim does not recite a particular hardware implementation, improved memory architecture, improved processor operation, transformation of an article, or concrete downstream technological application of the trained second graph neural network. Accordingly, this limitation does not provide an inventive concept. See MPEP 2106.05(a), 2106.05(e), 2106.05(f), and 2106.05(h).
The dependent claims also inherit the generic computer, apparatus, and computer-readable-medium elements from their respective independent claims. These inherited elements merely implement the abstract idea using generic computer components or limit the abstract idea to the graph-neural-network training environment. Such limitations amount to mere instructions to apply the judicial exception using generic computer components and/or generally linking the judicial exception to a technological environment. See MPEP 2106.05(f) and 2106.05(h). To the extent any inputting or outputting limitations are considered, they are insignificant extra-solution activity and remain insignificant after Step 2B re-evaluation because they are recited at a high level of generality and are described in the specification as ordinary data receipt, processing, storage, and program execution using generic computer components. See MPEP 2106.05(d), 2106.05(g), and 2106.07(a)(III).
Accordingly, even when the dependent-claim limitations are considered individually and in ordered combination with the limitations of their respective independent claims, dependent claims 2–5, 7–10, and 12–15 do not recite additional elements that amount to significantly more than the judicial exception.
Therefore, dependent claims 2–5, 7–10, and 12–15 are rejected under 35 U.S.C. § 101 because the claimed inventions are directed to an abstract idea without significantly more.
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 text of those sections of Title 35, U.S. Code not included in this action can be found in a prior Office action.
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.
I. Rejection of Claims 1, 4, 5, 6, 9, 10, 11, 14, and 15
Claims 1, 4, 5, 6, 9, 10, 11, 14, and 15 are rejected under 35 U.S.C. §103 as being unpatentable over Thakoor et al. (Thakoor), Non-Patent Literature, "Large-Scale Representation Learning on Graphs via Bootstrapping," published 4 November 2021, in view of Grill et al. (Grill), U.S. Patent Application Publication No. US 2021/0383225 A1, "Self-Supervised Representation Learning Using Bootstrapped Latent Representations," published 9 December 2021.
As to independent Claim 1, Thakoor discloses a self-supervised graph representation learning method called Bootstrapped Representation Learning on Graphs (hereinafter "BGRL"), which trains two graph neural network encoders such that one learns to predict the representations produced by the other.
Regarding the preamble of Claim 1:
"A method for training a graph neural network to be performed in a graph neural network training apparatus, the method comprising:"
Thakoor discloses a method for training a graph neural network, namely the BGRL training procedure in which the parameters of an online graph encoder are updated by gradient descent on a self-supervised cosine-similarity loss (Thakoor, Abstract, page 1: "we introduce a scalable approach for self-supervised representation learning on graphs called Bootstrapped Graph Latents (BGRL). … BGRL learns node representations by encoding two augmented versions of a graph using two distinct graph encoders: an online encoder, and a target encoder. The online encoder is trained through predicting the representation of the target encoder"; Thakoor, Section 2.2 "BGRL Update Step," page 3). The recited "graph neural network" reads on the BGRL architecture as a whole, consisting of the two graph encoders Eθ and Eφ disclosed by Thakoor (Section 2.1, page 2; Figure 1, page 2). Thakoor further discloses that the BGRL method is implemented computationally and scales to graph datasets containing hundreds of millions of nodes (Thakoor, Section 4.3, page 8).
Regarding the first limitation of Claim 1:
"preparing the graph neural network including a first graph neural network and a second graph neural network;"
Thakoor discloses preparing two distinct graph neural network encoders that together constitute the BGRL framework (Thakoor, Section 2.1 "BGRL Components," page 2: "BGRL builds representations through the use of two graph encoders, an online encoder Eθ and a target encoder Eφ, where θ and φ denote two distinct sets of parameters"; Thakoor, Figure 1, page 2). The recited "graph neural network" reads on the overall BGRL framework comprising both encoders. The recited "first graph neural network" reads on Thakoor's online encoder Eθ, where the subscript θ denotes its parameter set. The recited "second graph neural network" reads on Thakoor's target encoder Eφ, where the subscript φ denotes a parameter set distinct from θ -- as Thakoor expressly states, "θ and φ denote two distinct sets of parameters" (Section 2.1, page 2).
Regarding the second limitation of Claim 1:
"generating first node embeddings representing a training graph data as vectors using the first graph neural network;"
Thakoor discloses generating first node embeddings using the online encoder Eθ (Thakoor, Section 2.1, page 2: "We consider a graph G = (X, A), with node features X ∈ ℝ^(N×F) and adjacency matrix A ∈ ℝ^(N×N). … The online encoder produces an online representation from the first augmented graph, H̃1 := Eθ(X̃1, Ã1)"). The recited "first node embeddings" read on Thakoor's online representation H̃1, produced by the online encoder Eθ from the first augmented view G1 = (X̃1, Ã1) of the training graph data G = (X, A). The recited "first graph neural network" reads on the online encoder Eθ. Thakoor does not, however, expressly recite that the first node embeddings are "representing a training graph data as vectors"; this element is supplied by Grill, as set forth below.
Regarding the third limitation of Claim 1:
"generating second node embeddings representing the training graph data as the vectors using the second graph neural network;"
In a parallel manner, Thakoor discloses generating second node embeddings using the target encoder Eφ (Thakoor, Section 2.1, page 2: "similarly the target encoder produces a target representation of the second augmented graph, H̃2 := Eφ(X̃2, Ã2)"). The recited "second node embeddings" read on Thakoor's target representation H̃2, produced by the target encoder Eφ from the second augmented view G2 = (X̃2, Ã2) of the same training graph data G. Thakoor discloses that both augmented views derive from the same underlying graph G (Section 2.1, page 2: "BGRL first produces two alternate views of G: G1 = (X̃1, Ã1) and G2 = (X̃2, Ã2)"), consistent with the claim's use of the definite article "the training graph data." The recited "second graph neural network" reads on the target encoder Eφ. Thakoor does not, however, expressly recite that the second node embeddings are "representing the training graph data as the vectors"; this element is likewise supplied by Grill, as set forth below.
Regarding the fourth limitation of Claim 1:
"generating third node embeddings by projecting a preset predictor onto the first node embeddings;"
Thakoor discloses applying a predictor to the first node embeddings to produce a third set of node embeddings (Thakoor, Section 2.1, page 2: "The online representation is fed into a node-level predictor pθ that outputs a prediction of the target representation, Z̃1 := pθ(H̃1)"; Thakoor, Figure 1, page 2 (predictor block pθ receiving H̃1 and outputting Z̃1)). The recited "third node embeddings" read on Thakoor's prediction Z̃1, distinct from both H̃1 and H̃2. The recited "preset predictor" reads on Thakoor's node-level predictor pθ, a multilayer perceptron whose architecture is established as part of the BGRL framework before training begins (Thakoor, Section 2.1, page 2; Thakoor, Appendix D). The recited operation of "projecting [the predictor] onto the first node embeddings" reads on Thakoor's express disclosure that H̃1 is "fed into" the predictor pθ to produce Z̃1, with the notation "Z̃1 := pθ(H̃1)" denoting the application of the predictor function pθ to the first node embeddings H̃1.
Regarding the fifth limitation of Claim 1:
"determining a loss function such that a node embedding corresponding to a query node in the training graph data among the third node embeddings and a node embedding corresponding to real positive of the query node among the second node embeddings become close to each other;"
A loss function is a mathematical function that quantifies the discrepancy between a prediction and a target, the value of which is minimized during training to drive the prediction toward the target. Thakoor discloses determining such a loss function as the negative cosine similarity between the third node embeddings and the second node embeddings (Thakoor, Figure 1 caption, page 2: "The final objective is then computed as the cosine similarity between Z̃1 and H̃2"; Thakoor, Section 2.2 "Updating the online encoder Eθ," page 3: "The online parameters θ (and not φ), are updated to make the predicted target representations Z̃1 closer to the true target representations H̃2 for each node, by following the gradient of the cosine similarity w.r.t. θ, i.e.,
ℓ(θ, φ) = −(2/N) Σᵢ₌₀^(N−1) [Z̃(1,i) · H̃(2,i)ᵀ] / [‖Z̃(1,i)‖ ‖H̃(2,i)‖]"
(Thakoor, Equation (1), page 3)).
The recited "loss function" reads on Thakoor's cosine-similarity objective ℓ(θ, φ) in Equation (1). The recited "query node in the training graph data" reads on each node indexed by i ∈ {0, …, N−1} in the graph G, since Thakoor expressly discloses that the loss is computed "for each node" (Section 2.2, page 3) and Equation (1) sums per-node loss contributions across all N nodes -- each node i thus serves as the query for its own loss-contribution term. The recited "node embedding corresponding to a query node … among the third node embeddings" reads on Z̃(1,i), the i-th row of Z̃1, which is the third-embedding vector of the query node i. The recited "real positive of the query node" reads on the same node i in the target view of the graph, expressly identified by Thakoor as "the true target representations H̃2 for each node" (Section 2.2, page 3); accordingly, the recited "node embedding corresponding to real positive of the query node among the second node embeddings" reads on H̃(2,i), the i-th row of H̃2. The recited "become close to each other" reads on maximizing the cosine similarity between Z̃(1,i) and H̃(2,i), as expressly disclosed by Thakoor (Section 2.2, page 3), equivalent to minimizing the negative-cosine loss ℓ(θ, φ).
Regarding the sixth limitation of Claim 1:
"training the first graph neural network using the loss function."
Thakoor discloses training the online encoder Eθ by gradient descent on the cosine-similarity loss (Thakoor, Section 2.2 "Updating the online encoder Eθ," page 3: "The online parameters θ (and not φ), are updated to make the predicted target representations Z̃1 closer to the true target representations H̃2 for each node, by following the gradient of the cosine similarity w.r.t. θ … θ ← optimize(θ, η, ∂_θ ℓ(θ, φ))" (Thakoor, Equation (2), page 3)). The recited "training the first graph neural network" reads on Thakoor's update of the parameters θ of the online encoder Eθ by gradient descent. The recited "using the loss function" reads on Thakoor's express disclosure that the parameter update follows the gradient ∂_θ ℓ(θ, φ) of the loss function with respect to θ. Thakoor further expressly discloses that only the online encoder -- and not the target encoder -- is trained by this loss (Section 2.2, page 3: "The online parameters θ (and not φ), are updated").
However, Thakoor does not expressly teach the following limitations of Claim 1: (1) the recitation, within the second limitation, that the first node embeddings are "representing a training graph data as vectors"; and (2) the recitation, within the third limitation, that the second node embeddings are "representing the training graph data as the vectors." Thakoor teaches generating the online representation H̃1 and the target representation H̃2 of the augmented graph views having transformed node features (Section 2.1, page 2), but does not expressly state that these node embeddings are represented as vectors. All remaining limitations of Claim 1 -- the preamble's "method for training a graph neural network," the first limitation, the fourth limitation, the fifth limitation, and the sixth limitation -- are expressly taught by Thakoor as set forth above.
In the same field of endeavor, Grill teaches the limitations not expressly taught by Thakoor. With respect to the recitation that the node embeddings are represented as vectors -- applicable to both the first node embeddings of the second limitation and the second node embeddings of the third limitation -- Grill expressly discloses that a graph neural network encoder generates node embeddings represented as vectors. Grill discloses that "the encoder neural networks 112, 122 may each comprise a graph neural network e.g. a graph convolutional network," generating an output graph structure defined by "a set of nodes, with associated node feature vectors" (Grill, [0061]), and that the encoder is configured "to generate a feature vector representation of the received data item" (Grill, [0059]) of defined dimensionality (Grill, [0064]). Grill [0061] expressly covers both encoder neural networks 112 and 122, which correspond respectively to Thakoor's online encoder Eθ (the first graph neural network) and target encoder Eφ (the second graph neural network), such that Grill's express teaching of node feature vectors applies to both the first node embeddings (H̃1) and the second node embeddings (H̃2). The recited "node embeddings representing a training graph data as vectors" and "node embeddings representing the training graph data as the vectors" thus read on the node feature vectors generated by Grill's graph neural network encoders, which correspond to the per-node rows of Thakoor's online representation H̃1 and target representation H̃2, respectively.
Grill additionally provides corroborating disclosure of the remaining elements of Claim 1, including: training an online neural network and a target neural network in which the online network is trained to predict the output of the target network (Grill, Abstract; Grill, [0079]); feeding an online representation into a prediction neural network to produce a prediction of the target output (Grill, [0058]); and determining the prediction loss as a cosine similarity between the prediction and the target output (Grill, [0079]).
Thakoor and Grill are analogous to the claimed invention as both are from the same field of endeavor of self-supervised representation learning using a bootstrapped online-and-target neural network architecture, and both expressly address application of such bootstrapping to graph neural networks (Thakoor, Abstract, page 1; Grill, [0061]). Thakoor itself expressly acknowledges that BGRL was "Inspired by BYOL" -- the bootstrapping method that is the subject matter of Grill (Thakoor, Abstract, page 1).
Therefore, it would have been obvious to one of ordinary skill in the art, before the effective filing date of the claimed invention, to combine the graph-domain bootstrapping training method of Thakoor with the express node-feature-vector disclosure of Grill to arrive at the method of Claim 1 as recited. The motivation to combine Thakoor and Grill is that Grill expressly contemplates that the encoder neural networks in its general bootstrapping framework may comprise graph neural networks generating node feature vectors (Grill, [0061]), and Thakoor is the graph-domain instantiation of precisely this teaching. A skilled artisan would have been motivated to represent Thakoor's online and target node embeddings as fixed-dimensional feature vectors, as expressly taught by Grill, because representing node embeddings as vectors is the standard and predictable output format of a graph neural network encoder and is necessary for the downstream cosine-similarity loss computation, which operates on paired vector operands of matching dimensionality. A skilled artisan would further have been motivated to combine the two references because each provides independent and complementary express disclosure of the recited elements -- Thakoor providing the graph-specific implementation details (two graph encoders Eθ and Eφ operating on graph G = (X, A); node-level predictor pθ; cosine-similarity loss ℓ(θ, φ) summed over all nodes) and Grill providing the express node-feature-vector representation and the general bootstrapping framework -- yielding the predictable result of a fully specified and corroborated bootstrapped self-supervised graph representation learning method.
As to dependent Claim 4, Thakoor in view of Grill teaches all the limitations of Claim 1 as set forth above.
Claim 4 further recites:
"wherein the loss function is determined using cosine similarity between the node embedding corresponding to the query node in the training graph data among the third node embeddings and the node embedding corresponding to the real positive of the query node among the second node embeddings."
The added limitation may be broken out into three component recitations: (i) "the loss function is determined using cosine similarity"; (ii) the cosine similarity is computed against "the node embedding corresponding to the query node in the training graph data among the third node embeddings"; and (iii) the cosine similarity is computed against "the node embedding corresponding to the real positive of the query node among the second node embeddings."
Thakoor expressly teaches recitations (ii) and (iii) - namely, the identity and per-node mapping of the two specific node-embedding vectors between which the cosine similarity is computed.
With respect to "the node embedding corresponding to the query node in the training graph data among the third node embeddings," Thakoor discloses that this first operand of the cosine similarity is Z̃(1,i) - the i-th row of the third node embeddings matrix Z̃1 produced by the predictor pθ for the query node i (Thakoor, Section 2.1, page 2: "Z̃1 := pθ(H̃1)"; Thakoor, Equation (1), page 3 (the per-node summand uses Z̃(1,i) as the first factor of the dot product and as the first factor in the denominator's L2 norm)). Z̃(1,i) is the third-embedding vector for query node i, drawn from the training graph data G = (X, A) (Thakoor, Section 2.1, page 2).
With respect to "the node embedding corresponding to the real positive of the query node among the second node embeddings," Thakoor discloses that this second operand of the cosine similarity is H̃(2,i) - the i-th row of the second node embeddings matrix H̃2 produced by the target encoder Eφ for the same node i (Thakoor, Section 2.1, page 2: "H̃2 := Eφ(X̃2, Ã2)"; Thakoor, Equation (1), page 3 (the per-node summand uses H̃(2,i) as the second factor)). For each query node i, the corresponding "real positive" is the same node i in the second augmented view of the graph, whose target-encoder embedding is H̃(2,i) - expressly identified by Thakoor as "the true target representations H̃2 for each node" (Section 2.2, page 3).
Thakoor does not, however, expressly recite at the framework level that "the loss function is determined using cosine similarity" as the chosen loss-determination mechanism within the broader class of loss formulations available in a bootstrapped online-and-target training framework. Thakoor discloses the specific BGRL loss formula at Equation (1) but does not expressly identify cosine similarity as one of multiple alternative similarity measures from which the loss may be constructed.
In the same field of endeavor, Grill expressly teaches that "the loss function is determined using cosine similarity." Grill at paragraph [0075] expressly recites that "the prediction loss or error may comprise a negative cosine or dot product similarity" between the prediction of the online network and the target output, expressly identifying cosine similarity as one of two specific similarity measures from which the bootstrapping loss may be determined. Grill at paragraph [0079] further expressly recites that "minimizing the error may involve maximizing a similarity, e.g. a cosine similarity, between the prediction 118 and the target output 126," expressly characterizing cosine similarity as the chosen mechanism by which the bootstrapping loss is determined. Grill's "prediction 118" maps to Thakoor's third-embedding vector Z̃(1,i) (the output of the prediction neural network on the online side, Grill, [0058]), and Grill's "target output 126" maps to Thakoor's second-embedding vector H̃(2,i) (the output of the target neural network), confirming the same operand pairing as set forth above.
Thakoor and Grill are analogous to the claimed invention as both are from the same field of endeavor of self-supervised representation learning using a bootstrapped online-and-target neural network architecture (Thakoor, Abstract, page 1; Grill, Abstract). Thakoor itself expressly acknowledges that BGRL was "Inspired by BYOL" - the bootstrapping method that is the subject matter of Grill (Thakoor, Abstract, page 1).
Therefore, it would have been obvious to one of ordinary skill in the art, before the effective filing date of the claimed invention, to combine the specific cosine-similarity loss implementation of Thakoor with the general bootstrapping-framework characterization of Grill to arrive at the method of Claim 4 as recited. The motivation to combine Thakoor and Grill is that Grill expressly identifies cosine similarity as a known and preferred loss-determination mechanism within the bootstrapping framework (Grill, [0075]; Grill, [0079]), and Thakoor is the graph-domain instantiation of precisely this teaching. A skilled artisan would have been motivated to adopt Thakoor's cosine-similarity loss formulation within Grill's broader framework because cosine similarity is well-known to be invariant to embedding-vector magnitude - a property that is advantageous for self-supervised representation learning, where only the direction of the embedding in feature space carries semantic meaning, with the magnitude being an unsupervised and uninformative artifact of the encoder. Combining the two references provides express disclosure of both the specific cosine-similarity implementation and the framework-level characterization that the loss function is determined using cosine similarity, yielding the predictable result of a fully specified and corroborated cosine-similarity loss in a bootstrapped graph self-supervised training method.
As to dependent Claim 5, Thakoor in view of Grill teaches all the limitations of Claim 1 as set forth above.
Claim 5 further recites:
"further comprising training the second graph neural network by accumulating parameters of the first graph neural network."
The added limitation may be broken out into two component recitations: (i) the operation of "training the second graph neural network"; and (ii) the mechanism by which the training is performed, namely "accumulating parameters of the first graph neural network."
Thakoor expressly teaches the specific mechanism for accumulating parameters of the first graph neural network into the second graph neural network, as well as the identity of the two operand parameter sets.
With respect to "accumulating parameters of the first graph neural network," Thakoor discloses the exponential moving average update rule φ ← τφ + (1 − τ)θ (Thakoor, Section 2.2 "Updating the target encoder Eφ," page 3: "The target parameters φ are updated as an exponential moving average of the online parameters θ, using a decay rate τ, i.e., φ ← τφ + (1 − τ)θ"; Thakoor, Equation (3), page 3; Thakoor, Figure 1, page 2 (depicting the "EMA" block flowing from the online encoder Eθ to the target encoder Eφ)). This rule expressly accumulates the online parameters θ - the parameters of the first graph neural network - into the target parameters φ via a weighted recurrence, in which at each training step the new target parameters are formed as a weighted blending of (a) the prior target parameters τφ and (b) a fraction (1 − τ) of the current online parameters θ. Thakoor further expressly identifies the operand parameter sets: φ denotes the parameters of the target encoder Eφ (the recited second graph neural network), and θ denotes the parameters of the online encoder Eθ (the recited first graph neural network) (Thakoor, Section 2.1, page 2: "θ and φ denote two distinct sets of parameters").
Thakoor does not, however, expressly recite at the framework level that this accumulation operation constitutes the "training" of the second graph neural network within the broader class of target-update mechanisms available in a bootstrapped online-and-target training framework. Thakoor uses the terminology "updating" rather than "training" with respect to the target encoder Eφ (Thakoor, Section 2.2 subsection title, page 3: "Updating the target encoder Eφ"), and Thakoor does not expressly identify the exponential moving average update as one option among multiple known target-update mechanisms.
In the same field of endeavor, Grill expressly teaches that "training the second graph neural network" by parameter accumulation is one of several known target-update mechanisms within the bootstrapping training framework. Grill at paragraph [0081] expressly recites that "the parameters of the target neural network 120 may be determined as a copy or moving average of the parameters of the online neural network 110, e.g. a weighted or exponential moving average. In general the parameters of the target neural network 120 comprise a delayed (and more stable) version of the parameters of the online neural network 110." Grill thereby expressly identifies parameter accumulation by moving average - and specifically by exponential moving average - as one of the standard mechanisms by which the target neural network is updated (i.e., trained) within the bootstrapping framework. Grill at paragraph [0082] further provides the specific update formula "ξ ← τξ + (1 − τ)θ where τ is a target decay rate in the range [0,1]," which corresponds to Thakoor's EMA rule and expressly bounds the decay rate τ within the unit interval. Grill's "target neural network 120" maps to Thakoor's target encoder Eφ (the second graph neural network), and Grill's "online neural network 110" maps to Thakoor's online encoder Eθ (the first graph neural network), confirming the same operand pairing as set forth above.
Thakoor and Grill are analogous to the claimed invention as both are from the same field of endeavor of self-supervised representation learning using a bootstrapped online-and-target neural network architecture (Thakoor, Abstract, page 1; Grill, Abstract). Thakoor itself expressly acknowledges that BGRL was "Inspired by BYOL" - the bootstrapping method that is the subject matter of Grill (Thakoor, Abstract, page 1).
Therefore, it would have been obvious to one of ordinary skill in the art, before the effective filing date of the claimed invention, to combine the specific exponential moving average parameter-accumulation rule of Thakoor with the general bootstrapping-framework characterization of Grill to arrive at the method of Claim 5 as recited. The motivation to combine Thakoor and Grill is that Grill expressly identifies the moving-average parameter accumulation - and specifically the exponential moving average ξ ← τξ + (1 − τ)θ - as a known and preferred mechanism for updating the target neural network within the bootstrapping framework (Grill, [0081]; Grill, [0082]), and Thakoor is the graph-domain instantiation of precisely this teaching. A skilled artisan would have been motivated to adopt Thakoor's parameter-accumulation rule within Grill's broader framework because the moving-average update provides the target neural network with "a delayed (and more stable) version of the parameters of the online neural network" (Grill, [0081]) - a property well-known to stabilize bootstrapped self-supervised training and to prevent representational collapse, since the slowly-evolving target provides a more consistent supervisory signal for the rapidly-evolving online network. Combining the two references provides express disclosure of both the specific EMA accumulation rule and the framework-level characterization that the second graph neural network is trained by accumulating parameters of the first graph neural network, yielding the predictable result of a fully specified and corroborated parameter-accumulation update in a bootstrapped graph self-supervised training method.
As to independent Claim 6, Claim 6 recites an apparatus for processing a pre-trained graph neural network, comprising a memory configured to store the pre-trained graph neural network and one or more instructions, and a processor configured to execute the one or more instructions stored in the memory, wherein the instructions, when executed by the processor, cause the processor to perform certain input/output operations on the pre-trained graph neural network.
The apparatus may be broken out into the following component recitations: (i) the preamble apparatus elements (memory configured to store the pre-trained graph neural network and instructions, and processor configured to execute the instructions); (ii) "input an input graph data to the pre-trained graph neural network including the first graph neural network and the second graph neural network"; (iii) "output a node representation corresponding to the input graph data using the pre-trained graph neural network including the first graph neural network and the second graph neural network"; and (iv) the "wherein the pre-trained graph neural network is trained by..." clause, which recites the same training operations as those of Claim 1.
Thakoor expressly teaches that the trained BGRL framework - comprising both graph encoders Eθ (the first graph neural network) and Eφ (the second graph neural network) - processes graph data G = (X, A) to produce node representations (Thakoor, Section 2.1, page 2). With respect to the "wherein the pre-trained graph neural network is trained by..." clause, Thakoor expressly teaches each of the recited training operations - generating first node embeddings, generating second node embeddings, generating third node embeddings by projecting a preset predictor onto the first node embeddings, determining a loss function such that the third-embedding query-node vector and the second-embedding real-positive vector become close to each other, and training the first graph neural network using the loss function - as set forth in detail in the rejection of Claim 1. These training-process limitations of Claim 6 are rejected on the same rationale as set forth in the rejection of Claim 1 above.
Thakoor does not, however, expressly recite the preamble apparatus elements (memory and processor), nor the apparatus operation by which an input graph data is "input" to the pre-trained encoder and a node representation is "output" from the pre-trained encoder for downstream use. Thakoor's primary disclosure is directed to the training procedure for the BGRL graph encoder, not to the deployment of the trained encoder as an apparatus performing input/output processing operations.
In the same field of endeavor, Grill expressly teaches each of the apparatus elements and the input/output operations not expressly recited by Thakoor. With respect to the preamble apparatus elements, Grill at claim 19, page 10, expressly recites: "A system comprising one or more computers and one or more storage devices storing instructions that when executed by the one or more computers cause the one or more computers to perform the operations of the method of claim 1." Grill at paragraph [0111] further provides general computer-apparatus elements including processors and memory devices storing instructions and data.
With respect to "input an input graph data to the pre-trained graph neural network," Grill at Figure 3, page 3, expressly recites the apparatus operation in step 300 ("PROVIDE INPUT DATA ITEM TO TRAINED ENCODER NEURAL NETWORK") and step 302 ("PROCESS THE INPUT DATA ITEM USING THE TRAINED ENCODER NEURAL NETWORK"). Grill at paragraph [0089] further expressly recites: "FIG. 4a shows a computer-implemented data item processing neural network system 400 comprising trained encoder neural network 112 (or part thereof) … The system 400 is configured to receive a data item as an input and to process the data item using the trained encoder neural network 112 (or part thereof) to output a representation of the input data item." Grill at claim 14, page 10, further provides express claim language: "providing an input data item to part of a trained online neural network … processing the input data item using the part of the trained online neural network."
With respect to "output a node representation corresponding to the input graph data using the pre-trained graph neural network," Grill at Figure 3, page 3, expressly recites step 304 ("OUTPUT A REPRESENTATION OF THE INPUT DATA ITEM FROM THE TRAINED ENCODER NEURAL NETWORK"). Grill at claim 14, page 10, further recites: "outputting a representation of the input data item from the part of the trained online neural network." Grill at paragraph [0061] expressly contemplates that the encoder neural network may comprise a graph neural network ("In some implementations the encoder neural networks 112, 122 may each comprise a graph neural network e.g. a graph convolutional network"), such that the recited "input graph data" reads on the data item input to Grill's trained graph encoder, and the recited "node representation corresponding to the input graph data" reads on the representation output by Grill's trained graph encoder for downstream node-level tasks.
Thakoor and Grill are analogous to the claimed invention as both are from the same field of endeavor of self-supervised representation learning using a bootstrapped online-and-target neural network architecture, and both expressly address application of such bootstrapping to graph neural networks (Thakoor, Abstract, page 1; Grill, [0061]). Thakoor itself expressly acknowledges that BGRL was "Inspired by BYOL" - the bootstrapping method that is the subject matter of Grill (Thakoor, Abstract, page 1).
Therefore, it would have been obvious to one of ordinary skill in the art, before the effective filing date of the claimed invention, to combine the graph self-supervised training method of Thakoor with the apparatus framework and input/output processing system of Grill to arrive at the apparatus of Claim 6. The motivation to combine Thakoor and Grill is to provide a concrete deployment pathway for the Thakoor-trained BGRL graph encoder, since Grill expressly contemplates that the encoder neural network trained by bootstrapping may comprise a graph neural network (Grill, [0061]) and expressly provides the apparatus framework and the input/output processing pipeline by which a trained encoder is used to generate representations of input data items for downstream tasks (Grill, claim 19; Grill, Figure 3; Grill, [0089]; Grill, [0111]). A skilled artisan would have been motivated to apply Grill's data-item processing pipeline to Thakoor's trained graph encoder because Thakoor demonstrates that the BGRL framework is designed to produce graph encoders for downstream graph-processing tasks such as node classification, link prediction, and clustering (Thakoor, Sections 4.2 and 4.3, pages 6–8), and Grill's apparatus framework and input/output processing pipeline provide the express deployment mechanism for precisely this purpose. Combining the two references yields the predictable result of generating node representations from input graph data using the bootstrapped graph encoder, executed by a processor on instructions stored in memory, for downstream graph-processing tasks.
As to dependent Claim 9, Claim 9 recites the same cosine-similarity loss-function limitation as Claim 4, in the apparatus context of Claim 6. Claim 9 is rejected on the same rationale as set forth in the rejection of Claim 4 above.
As to dependent Claim 10, Claim 10 recites the same parameter-accumulation limitation as Claim 5, in the apparatus context of Claim 6. Claim 10 is rejected on the same rationale as set forth in the rejection of Claim 5 above.
As to independent Claim 11, Claim 11 recites the same training-method limitations as Claim 1, in the form of a non-transitory computer-readable storage medium storing computer-executable instructions. Grill expressly discloses non-transitory computer-readable storage media storing such executable instructions (Grill, claim 20, page 10: "Computer-readable instructions, or one or more computer storage media storing instructions that when executed by one or more computers cause the one or more computers to perform the operations of the method of claim 1"; Grill, [0106], [0112]). Claim 11 is otherwise rejected on the same rationale as set forth in the rejection of Claim 1 above.
As to dependent Claim 14, Claim 14 recites the same cosine-similarity loss-function limitation as Claim 4, in the non-transitory computer-readable storage medium context of Claim 11. Claim 14 is rejected on the same rationale as set forth in the rejection of Claim 4 above.
As to dependent Claim 15, Claim 15 recites the same parameter-accumulation limitation as Claim 5, in the non-transitory computer-readable storage medium context of Claim 11. Claim 15 is rejected on the same rationale as set forth in the rejection of Claim 5 above.
II. Rejection of Claims 2, 7, and 12
Claims 2, 7, and 12 are rejected under 35 U.S.C. §103 as being unpatentable over Thakoor in view of Grill, further in view of Dwibedi et al. (Dwibedi), Non-Patent Literature, "With a Little Help from My Friends: Nearest-Neighbor Contrastive Learning of Visual Representations," Proceedings of the IEEE/CVF International Conference on Computer Vision (ICCV), published 7 October 2021, pp. 9588–9597, and further in view of Mavromatis et al. (Mavromatis), Non-Patent Literature, "Graph InfoClust: Leveraging cluster-level node information for unsupervised graph representation learning" (arXiv:2009.06946, 15 September 2020; published in Advances in Knowledge Discovery and Data Mining - 25th Pacific-Asia Conference, PAKDD 2021).
As to dependent Claim 2, Thakoor in view of Grill teaches all the limitations of Claim 1 as set forth in the rejection of Claim 1 above.
Claim 2 further recites that the determining of the loss function includes:
"determining a predetermined first number of neighbor nodes closest to the query node using a node embedding corresponding to the query node among the first node embeddings and node embeddings corresponding to other nodes in the training graph data among the second node embeddings;"
"determining adjacent nodes connected to the query node among the neighbor nodes as local positive;"
"determining, as global positive, same-cluster nodes clustered into the same cluster as the query node among the neighbor nodes; and"
"determining the real positive using the local positive and the global positive."
Thakoor discloses that the training data is a graph G = (X, A) in which the adjacency matrix A explicitly identifies which nodes are connected to which by edges (Thakoor, Section 2.1, page 2: "We consider a graph G = (X, A), with node features X ∈ ℝ^(N×F) and adjacency matrix A ∈ ℝ^(N×N)"). The adjacency information necessary to identify "adjacent nodes connected to the query node" is therefore expressly present in the training graph data that Thakoor processes.
However, Thakoor does not teach determining a predetermined first number of neighbor nodes closest to the query node using a cross-network nearest-neighbor selection in the embedding space - Thakoor's loss treats only the same node across the two augmented views as the positive, without selecting any cross-instance nearest neighbors in the embedding space.
In the same field of endeavor, Dwibedi teaches determining a predetermined first number of neighbor nodes closest to a query sample using nearest-neighbor selection in the embedding latent space (Dwibedi, Abstract, page 1: "Our method, Nearest-Neighbor Contrastive Learning of visual Representations (NNCLR), samples the nearest neighbors from the dataset in the latent space, and treats them as positives"; Dwibedi, Section 3.2, page 4: "we propose using zᵢ's nearest-neighbor in the support set Q to form the positive pair"; Dwibedi, Equation (4), page 4: "NN(z, Q) = arg min_{q ∈ Q} ‖z − q‖₂"; Dwibedi, Table 7(b), page 7 (treating the value of k as a configurable hyperparameter, with k = 1 yielding the highest accuracy)). The recited "predetermined first number of neighbor nodes closest to the query node" reads on Dwibedi's top-k nearest neighbors, in which k is a predetermined integer hyperparameter and the neighbors are those samples q in the support set Q that minimize the L2 distance ‖z − q‖₂ to the query embedding z. The recited query-side embedding "corresponding to the query node among the first node embeddings" reads on Dwibedi's query embedding zᵢ - which in the BGRL framework of Thakoor is drawn from H̃1, the first node embeddings. The recited candidate-side embeddings "corresponding to other nodes in the training graph data among the second node embeddings" read on Dwibedi's support set Q populated with embeddings of other samples - which in the BGRL framework are drawn from H̃2, the target-encoder output that, as Dwibedi itself notes, serves the role analogous to BYOL's stop-gradient branch (Dwibedi, Section 3.2 "Implementation details," page 4: "inspired from BYOL, we pass z⁺ᵢ through a prediction head g to produce embeddings p⁺ᵢ = g(z⁺ᵢ)"). Furthermore, once the predetermined first number of nearest-neighbor candidates is selected by Dwibedi's mechanism, the recited "adjacent nodes connected to the query node among the neighbor nodes as local positive" follows directly from the express adjacency information in Thakoor's graph G = (X, A): the subset of nearest-neighbor candidates that are also adjacent to the query node (i.e., connected by an edge in A) constitutes the local positive.
Thakoor and Dwibedi are analogous to the claimed invention as both are from the same field of endeavor of self-supervised representation learning using a bootstrapped online-and-target neural network architecture without negative examples (Thakoor, Abstract, page 1; Dwibedi, Section 3.2 "Implementation details," page 4 (citing BYOL as the inspiration for the prediction head); Dwibedi, Section 5 "Conclusion," page 8 (discussing NNSiam, a variant combining NNCLR with the BYOL/SimSiam stop-gradient branch)).
Therefore, it would have been obvious to one of ordinary skill in the art, before the effective filing date of the claimed invention, to combine the dual-encoder bootstrapping graph representation learning method of Thakoor with the nearest-neighbor positive-selection mechanism of Dwibedi. The motivation to combine Thakoor and Dwibedi is as expressly recited by Dwibedi (Abstract, page 1: "samples the nearest neighbors from the dataset in the latent space, and treats them as positives. This provides more semantic variations than pre-defined transformations"; Dwibedi, Section 1, page 2: "an ability to find similarities across items within previously seen examples improves the performance of self-supervised representation learning"). A skilled artisan would have been motivated to incorporate Dwibedi's nearest-neighbor positive-selection mechanism into Thakoor's dual-encoder graph framework to obtain higher-quality positive samples that capture cross-instance semantic similarity, predictably improving downstream task performance. Further, intersecting the resulting nearest-neighbor candidates with the graph adjacency information already present in Thakoor's G = (X, A) yields a high-confidence local positive set, which a skilled artisan would have been motivated to use as the local positive in order to exploit the well-known homophily property of graph data - namely, that adjacent nodes tend to share semantic similarity. KSR rationale (D) per MPEP §2143(I)(D).
The combination of Thakoor in view of Dwibedi does not, however, teach determining, as global positive, same-cluster nodes clustered into the same cluster as the query node among the neighbor nodes. In the same field of endeavor, Mavromatis teaches determining same-cluster nodes as positives by clustering node embeddings via a differentiable K-means algorithm and treating nodes within the same cluster as positive samples in a contrastive objective (Mavromatis, Abstract, page 1: "we propose a graph representation learning method called Graph InfoClust (GIC), that seeks to additionally capture cluster-level information content. These clusters are computed by a differentiable K-means method and are jointly optimized by maximizing the mutual information between nodes of the same clusters"; Mavromatis, Section 4.1 "Overview of GIC," page 4: "The optimization is achieved by maximizing the mutual information (MI) between nodes within a cluster. In order to estimate and maximize the MI, we compute zᵢ ∈ ℝ^(1×F') which represents the corresponding cluster summary of each node nᵢ, based on the cluster it belongs to"; Mavromatis, Section 4.2 "Implementation Details," page 5: "The cluster summaries µ_k, with k = 1, …, K, are obtained by a layer that implements a differentiable version of K-means clustering"). The recited "same-cluster nodes clustered into the same cluster as the query node … as global positive" reads on Mavromatis's same-cluster pairing of node hᵢ with its cluster summary zᵢ, in which nodes sharing the same K-means cluster assignment are encouraged to share similar representations and are thereby treated as positive samples for contrastive learning (Mavromatis, Section 4.1, page 4: "we obtain positive examples by pairing hᵢ with zᵢ from the real graph"). The recited "global positive" reads on this cluster-derived positive set, which captures global semantic similarity by virtue of the clusters being computed over the entire graph. Restricting this cluster-based positive set to the neighbor nodes selected by the k-NN mechanism of Dwibedi yields the recited "same-cluster nodes … among the neighbor nodes." The recited "determining the real positive using the local positive and the global positive" reads on combining the local-positive set (k-NN candidates intersected with graph adjacency, per Thakoor in view of Dwibedi) with the global-positive set (k-NN candidates intersected with same-cluster membership, per Mavromatis) to form the overall real-positive set used in the loss function.
Thakoor, Dwibedi, and Mavromatis are analogous to the claimed invention as all are from the same field of endeavor of self-supervised representation learning using cross-instance positive-sample selection. Thakoor and Mavromatis are further from the same specific field of self-supervised learning on graph-structured data using graph neural network encoders.
Therefore, it would have been further obvious to one of ordinary skill in the art, before the effective filing date of the claimed invention, to further combine Thakoor in view of Dwibedi with the cluster-based positive-selection mechanism of Mavromatis to arrive at the method of Claim 2 as recited. The motivation to further combine with Mavromatis is as expressly recited by Mavromatis (Abstract, page 1: "in most graphs, there is significantly more structure that can be captured, e.g., nodes tend to belong to (multiple) clusters that represent structurally similar nodes … This optimization leads the node representations to capture richer information and nodal interactions, which improves their quality"). A skilled artisan would have been motivated to incorporate Mavromatis's same-cluster positive selection into the combined framework so as to additionally capture cluster-level global semantic structure, predictably yielding higher-quality node representations and better downstream task performance (Mavromatis, Section 6.2, page 8 (reporting GIC's gains of more than 2% in node classification and as high as 15%–18.5% in NMI for clustering over DGI)). Combining the local-positive set and the global-positive set into a unified real-positive set is a routine combination of known elements according to known methods, yielding the predictable result of richer positive supervision capturing both local-structural and global-semantic similarity. KSR rationales (A) and (D) per MPEP §2143(I).
As to dependent Claim 7, Claim 7 recites the same local-positive, global-positive, and real-positive determination limitations as Claim 2, in the apparatus context of Claim 6. Claim 7 is rejected on the same rationale as set forth in the rejection of Claim 2 above.
As to dependent Claim 12, Claim 12 recites the same local-positive, global-positive, and real-positive determination limitations as Claim 2, in the non-transitory computer-readable storage medium context of Claim 11. Claim 12 is rejected on the same rationale as set forth in the rejection of Claim 2 above.
III. Rejection of Claims 3, 8, and 13
Claims 3, 8, and 13 are rejected under 35 U.S.C. §103 as being unpatentable over Thakoor in view of Grill, further in view of Dwibedi, further in view of Mavromatis, and further in view of Jin et al. (Jin), Non-Patent Literature, "Multi-Scale Contrastive Siamese Networks for Self-Supervised Graph Representation Learning," Proceedings of the Thirtieth International Joint Conference on Artificial Intelligence (IJCAI 2021), pp. 1477–1483 (arXiv:2105.05682, 12 May 2021).
As to dependent Claim 3, Thakoor in view of Grill, further in view of Dwibedi, and further in view of Mavromatis teaches all the limitations of Claim 2 as set forth in the rejection of Claim 2 above, including the existence of two distinct positive sets - a local-positive set, taught by Dwibedi, and a global-positive set, taught by Mavromatis - and the use of these two sets to determine the overall real positive used in the loss function.
Claim 3 further recites:
"wherein the real positive is a union of the local positive and the global positive."
The combination of Thakoor in view of Grill, further in view of Dwibedi, and further in view of Mavromatis does not expressly teach that the specific set operation by which the real positive is determined from the local positive and the global positive is the set-theoretic union of the two positive sets.
In the same field of endeavor, Jin teaches a graph self-supervised representation learning framework that combines local-scale and global-scale contrastive signals into a single training objective by union of two complementary multi-scale contrastive losses (Jin, Section 3, page 2: "we propose a simple yet powerful framework to learn node-level representations, which we refer to as Multi-scalE contRastive sIamese neTwork (MERIT). Our method is designed to optimize two objectives, namely cross-network and cross-view contrastiveness"; Jin, Section 3.2 "Cross-Network Contrastive Learning," page 3 (cross-network objective L_cn between online and target networks); Jin, Section 3.3 "Cross-View Contrastive Learning," page 4 (cross-view objective L_cv that "further utilize[s] node connectivity" within the online network); Jin, Section 3.4 "Model Training," page 4: "the overall objective function is defined as: L = βL_cv + (1 − β)L_cn"). Jin further demonstrates empirically that combining the local-scale and global-scale objectives outperforms either alone (Jin, Section 4.4 "Ablation Study," page 5: "our proposed model can boost MERIT w/o cross-view with 0.4% and 0.3% improvement, and MERIT w/o cross-network with 0.2% and 0.4% improvement … This improvement can be attributed to our comprehensive multi-scale contrastive learning scheme, which takes the advantage of both single- and multiple-network contrastiveness").
The recited "real positive is a union of the local positive and the global positive" reads on Jin's combined multi-scale objective, in which the local-scale positive signals (cross-view positives capturing within-online-network node connectivity, analogous to local topology) and the global-scale positive signals (cross-network positives capturing target-network supervision, analogous to global semantic structure) are jointly included as positive supervision in a single unified objective L = βL_cv + (1 − β)L_cn. The recited union of the local-positive set (taught by Dwibedi) and the global-positive set (taught by Mavromatis) into a single real-positive set reads on this Jin-taught multi-scale combination principle - that complementary local and global positive supervision signals are jointly carried into the training objective rather than being selected or chosen between.
Thakoor, Grill, Dwibedi, Mavromatis, and Jin are analogous to the claimed invention as all are from the same field of endeavor of self-supervised representation learning using positive-sample-based bootstrapping or contrastive objectives. Thakoor, Mavromatis, and Jin are further from the same specific field of self-supervised learning on graph-structured data using graph neural network encoders.
Therefore, it would have been obvious to one of ordinary skill in the art, before the effective filing date of the claimed invention, to further combine the prior reference combination (Thakoor in view of Grill, further in view of Dwibedi, and further in view of Mavromatis) with Jin to arrive at the method of Claim 3 as recited, in which the real positive is the union of the local positive and the global positive. The motivation to further combine with Jin is as expressly recited by Jin (Section 1, page 2: "we propose to further utilize node connectivity and introduce a multi-scale contrastive learning within and across views in the online network … to regularize the training of the aforementioned bootstrapping objective"; Jin, Section 4.4 "Ablation Study," page 5 (ablation results demonstrating that combining cross-network and cross-view contrast yields higher accuracy than either alone)). A skilled artisan would have been motivated to combine the local-positive set and the global-positive set into a unified real-positive set - i.e., to take their union - so as to obtain the predictable result of enriched positive supervision capturing complementary local-structural and global-semantic similarity, predictably yielding higher-quality node representations and improved downstream task performance.
As to dependent Claim 8, Claim 8 recites the same union-of-local-and-global limitation as Claim 3, in the apparatus context of Claim 6/7. Claim 8 is rejected on the same rationale as set forth in the rejection of Claim 3 above.
As to dependent Claim 13, Claim 13 recites the same union-of-local-and-global limitation as Claim 3, in the non-transitory computer-readable storage medium context of Claim 11/12. Claim 13 is rejected on the same rationale as set forth in the rejection of Claim 3 above.
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to HUNG VAN LE whose telephone number is (571)270-0164. The examiner can normally be reached 8 a.m. - 5 p.m..
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, Cesar Paula can be reached at (571) 272-4128. 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.
/HUNG VAN LE/Examiner, Art Unit 2145
/CESAR B PAULA/Supervisory Patent Examiner, Art Unit 2145