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 .
Priority
Acknowledgment is made of applicant's claim for foreign priority based on an application filed in India on October 12, 2022. It is noted, however, that applicant has not filed a certified copy of the Indian Provisional Patent Application No. 202221058114 application as required by 37 CFR 1.55.
Status of Claims
The original claims were filed on October 12, 2023. A preliminary amendment of the claims was filed on February 14, 2024. However, the preliminary amendment does not comply with 37 CFR 1.121, and there was no corrective action taken in response to the Notice of Non-Compliant Amendment, filed June 5, 2026. Therefore, examination of the instant application will commence without consideration of preliminary amendment and is based solely on the original claims and specification. The preliminary amendment claim is not being considered pursuant to MPEP 714.01(e)(I).
Thus, the present application is being examined under the claims filed October 12, 2023.
Claims 1-24 are pending. The claims have been renumbered, see section Claim Objections below.
Claim Objections
The numbering of claims is not in accordance with 37 CFR 1.126, which requires the original numbering of the claims to be preserved throughout the prosecution. When claims are canceled, the remaining claims must not be renumbered. When new claims are presented, they must be numbered consecutively beginning with the number next following the highest numbered claims previously presented (whether entered or not).
Misnumbered claims 1-21 (containing two claim 5s, two claim 6s, and two claim 7s) have been renumbered as 1-24. The table below expressly depicts the renumbered claims in view of the original claims.
Original Claim
Renumbered Claim
Original Claim
Renumbered Claim
1
1
15
18
2
2
16
19
3
3
17
20
4
4
18
21
5
5
19
22
6
6
20
23
7
7
21
24
5
8
6
9
7
10
8
11
9
12
10
13
11
14
12
15
13
16
14
17
It is further noted that in the Claims Worksheet (Doc Code: WCLM), filed October 12, 2023, the Office had previously recognized there are 24 total claims.
Claim 14 is objected to because of the following informalities: Claim 14’s text contains a formatting alignment error; it is aligned to the center. Appropriate correction is required.
Claims 23 and 24 are objected to under 37 CFR 1.75(c) as being in improper form because a multiple dependent claim should refer to other claims in the alternative only, and/or cannot depend from any other multiple dependent claim. See MPEP § 608.01(n). Accordingly, the claims have not been further treated on the merits.
Drawings
The following are in reference to the drawings filed on October 12, 2023.
FIGS. 12, 16, and 17 are objected to because they contain text not oriented in the same direction as the view [see 37 CFR 1.84(p)(1)].
FIG. 12 is objected to because it contains text placed upon hatched or shaded surfaces [see 37 CFR 1.84(p)(3)].
FIGS. 7, 15, and 19 are objected to because it contains text that is too small to read and comprehend [see 37 CFR 1.84(p)(3)].
Corrected drawing sheets in compliance with 37 CFR 1.121(d) are required in reply to the Office action to avoid abandonment of the application. Any amended replacement drawing sheet should include all of the figures appearing on the immediate prior version of the sheet, even if only one figure is being amended. The figure or figure number of an amended drawing should not be labeled as “amended.” If a drawing figure is to be canceled, the appropriate figure must be removed from the replacement sheet, and where necessary, the remaining figures must be renumbered and appropriate changes made to the brief description of the several views of the drawings for consistency. Additional replacement sheets may be necessary to show the renumbering of the remaining figures. Each drawing sheet submitted after the filing date of an application must be labeled in the top margin as either “Replacement Sheet” or “New Sheet” pursuant to 37 CFR 1.121(d). If the changes are not accepted by the examiner, the applicant will be notified and informed of any required corrective action in the next Office action. The objection to the drawings will not be held in abeyance.
Specification
This following are in reference to the Specification filed on October 12, 2023.
The use of the term AMAZON in para. [0213], REDDIT in paras. [0186], [0187], and [0212], and PUBMED in paras. [0186] and [0210], which is a trade name or a mark used in commerce, has been noted in this application. The term should be accompanied by the generic terminology; furthermore the term should be capitalized wherever it appears or, where appropriate, include a proper symbol indicating use in commerce such as ™, SM , or ® following the term.
Although the use of trade names and marks used in commerce (i.e., trademarks, service marks, certification marks, and collective marks) are permissible in patent applications, the proprietary nature of the marks should be respected and every effort made to prevent their use in any manner which might adversely affect their validity as commercial marks.
Claim Rejections - 35 USC § 112
The following is a quotation of 35 U.S.C. 112(b):
(b) CONCLUSION.—The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the inventor or a joint inventor regards as the invention.
The following is a quotation of 35 U.S.C. 112 (pre-AIA ), second paragraph:
The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the applicant regards as his invention.
Claims 14 and 18-22 are rejected under 35 U.S.C. 112(b) or 35 U.S.C. 112 (pre-AIA ), second paragraph, as being indefinite for failing to particularly point out and distinctly claim the subject matter which the inventor or a joint inventor (or for applications subject to pre-AIA 35 U.S.C. 112, the applicant), regards as the invention.
Regarding Claims 14 and 18:
The term “similar” in claims 11 and 15 is a relative term which renders the claims indefinite. The term “similar” is not defined by the claim, the specification does not provide a standard for ascertaining the requisite degree, and one of ordinary skill in the art would not be reasonably apprised of the scope of the invention.
Regarding Claims 19-22:
Claims 19-22 are rejected for inheriting the deficiencies of claim 18.
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-22 are rejected under 35 U.S.C. 101 because the claimed invention is directed to an abstract idea without significantly more.
Step 1: Claim sets 1-17 and 18-22 are directed to a method [process].
Regarding Claim 1:
Step 2A, Prong 1: The following limitations are directed to the abstract idea of a mental process [see MPEP 2106.04(a)(2) III. C.]. In particular, the claim recites mental processes that are concepts performed in the human mind or with pen and paper (including an observation, evaluation, judgement, or opinion).
(a) determining an encoded graph based on…the graph structure and the one or more feature attributes…wherein the encoded graph comprises one or more nodes and one or more paths connecting the one or more nodes
selecting a plurality of positive samples through random walks along the one or more paths of the encoded graph
selecting a plurality of negative samples from the encoded graph by randomly sampling the one or more nodes of the encoded graph
determining, based on applying a contrastive loss function to the plurality of positive samples and to the plurality of negative samples, a loss value
As drafted, under their broadest reasonable interpretation (BRI), in view of the specification, the above limitations cover concepts performed in the human mind (observation, evaluation, judgement, or opinion). Given a sufficiently small set of data, nothing in the claim prohibits this process from being performed mentally or with pen and paper.
Step 2A, Prong 2: There are no additional elements in this claim that integrate the judicial exception into a practical application.
The following additional elements are adding the words “apply it” (or an equivalent) with the judicial exception, or mere instructions to implement an abstract idea on a computer, or merely uses a computer as a tool to perform an abstract idea [see MPEP 2106.05(f)] and therefore fails to integrate the judicial exception into a practical application.
A method of training a machine learning model, the method comprising:
(a) …applying the machine learning model to…wherein the machine learning model comprises a graph convolutional network layer
updating, based on the loss value, one or more learnable parameter values of the graph convolutional network layer of the machine learning model
The following additional elements are directed to insignificant extra-solution activity to the judicial exception [see MPEP 2106.05(g)].
receiving training data for the machine learning model, wherein the training data comprises a graph structure and one or more feature attributes
Step 2B: There are no additional elements in this claim that amount to significantly more than the judicial exception.
The following additional elements are adding the words “apply it” (or an equivalent) with the judicial exception, or mere instructions to implement an abstract idea on a computer, or merely uses a computer as a tool to perform an abstract idea [see MPEP 2106.05(f)] and therefore fails to amount to significantly more than the judicial exception.
A method of training a machine learning model, the method comprising:
(a) …applying the machine learning model to…wherein the machine learning model comprises a graph convolutional network layer
updating, based on the loss value, one or more learnable parameter values of the graph convolutional network layer of the machine learning model
The following additional elements are directed to receiving or transmitting data over a network. The courts (as per Intellectual Ventures v. Symantec, 838 F.3d 1307, 1321; 120 USPQ2d 1353, 1362 (Fed. Cir. 2016)) have recognized receiving or transmitting data over a network as well-understood, routine, and conventional functions when they are claimed in a merely generic manner (e.g., at a high level of generality) or as insignificant extra-solution activity to the judicial exception [see MPEP 2106.05(d) II.].
receiving training data for the machine learning model, wherein the training data comprises a graph structure and one or more feature attributes
Regarding Claim 2:
Step 2A, Prong 1: This claim recites the same abstract ideas as in the parent claim.
Step 2A, Prong 2: There are no additional elements in this claim that integrate the judicial exception into a practical application.
The following additional elements are adding the words “apply it” (or an equivalent) with the judicial exception, or mere instructions to implement an abstract idea on a computer, or merely uses a computer as a tool to perform an abstract idea [see MPEP 2106.05(f)] and therefore fails to integrate the judicial exception into a practical application.
wherein the machine learning model consists of a single layer, wherein the single layer is the graph convolutional network layer
Step 2B: There are no additional elements in this claim that amount to significantly more than the judicial exception.
The following additional elements are adding the words “apply it” (or an equivalent) with the judicial exception, or mere instructions to implement an abstract idea on a computer, or merely uses a computer as a tool to perform an abstract idea [see MPEP 2106.05(f)] and therefore fails to amount to significantly more than the judicial exception.
wherein the machine learning model consists of a single layer, wherein the single layer is the graph convolutional network layer
Regarding Claim 3:
Step 2A, Prong 1: This claim recites the same abstract ideas as in the parent claim.
Step 2A, Prong 2: There are no additional elements in this claim that integrate the judicial exception into a practical application.
The following additional elements are adding the words “apply it” (or an equivalent) with the judicial exception, or mere instructions to implement an abstract idea on a computer, or merely uses a computer as a tool to perform an abstract idea [see MPEP 2106.05(f)] and therefore fails to integrate the judicial exception into a practical application.
wherein the machine learning model further comprises a parametric rectified linear unit activation function
Step 2B: There are no additional elements in this claim that amount to significantly more than the judicial exception.
The following additional elements are adding the words “apply it” (or an equivalent) with the judicial exception, or mere instructions to implement an abstract idea on a computer, or merely uses a computer as a tool to perform an abstract idea [see MPEP 2106.05(f)] and therefore fails to amount to significantly more than the judicial exception.
wherein the machine learning model further comprises a parametric rectified linear unit activation function
Regarding Claim 4:
Step 2A, Prong 1: This claim recites the same abstract ideas as in the parent claim.
Step 2A, Prong 2: There are no additional elements in this claim that integrate the judicial exception into a practical application.
The following additional elements are adding the words “apply it” (or an equivalent) with the judicial exception, or mere instructions to implement an abstract idea on a computer, or merely uses a computer as a tool to perform an abstract idea [see MPEP 2106.05(f)] and therefore fails to integrate the judicial exception into a practical application.
wherein the machine learning model further comprises a L2 normalization function
Step 2B: There are no additional elements in this claim that amount to significantly more than the judicial exception.
The following additional elements are adding the words “apply it” (or an equivalent) with the judicial exception, or mere instructions to implement an abstract idea on a computer, or merely uses a computer as a tool to perform an abstract idea [see MPEP 2106.05(f)] and therefore fails to amount to significantly more than the judicial exception.
wherein the machine learning model further comprises a L2 normalization function
Regarding Claim 5:
Step 2A, Prong 1: This claim recites the same abstract ideas as in the parent claim.
Step 2A, Prong 2: There are no additional elements in this claim that integrate the judicial exception into a practical application.
The following additional elements are adding the words “apply it” (or an equivalent) with the judicial exception, or mere instructions to implement an abstract idea on a computer, or merely uses a computer as a tool to perform an abstract idea [see MPEP 2106.05(f)] and therefore fails to integrate the judicial exception into a practical application.
wherein the method of training the machine learning model is self-supervised
Step 2B: There are no additional elements in this claim that amount to significantly more than the judicial exception.
The following additional elements are adding the words “apply it” (or an equivalent) with the judicial exception, or mere instructions to implement an abstract idea on a computer, or merely uses a computer as a tool to perform an abstract idea [see MPEP 2106.05(f)] and therefore fails to amount to significantly more than the judicial exception.
wherein the method of training the machine learning model is self-supervised
Regarding Claim 6:
Step 2A, Prong 1: This claim recites the same abstract ideas as in the parent claim. Additionally,
The following limitations are/remain directed to the abstract idea of a mental process [see MPEP 2106.04(a)(2) III. C.]. In particular, the claim recites mental processes that are concepts performed in the human mind (including an observation, evaluation, judgement, or opinion).
wherein a quantity of the one or more learnable parameter values is based on a dimension of the one or more feature attributes
Step 2A, Prong 2: There are no additional elements in this claim that integrate the judicial exception into a practical application.
Step 2B: There are no additional elements in this claim that amount to significantly more than the judicial exception.
Regarding Claim 7:
Step 2A, Prong 1: This claim recites the same abstract ideas as in the parent claim.
Step 2A, Prong 2: There are no additional elements in this claim that integrate the judicial exception into a practical application.
The following additional elements are adding the words “apply it” (or an equivalent) with the judicial exception, or mere instructions to implement an abstract idea on a computer, or merely uses a computer as a tool to perform an abstract idea [see MPEP 2106.05(f)] and therefore fails to integrate the judicial exception into a practical application.
wherein the method of training the machine learning model uses a quantity of memory based on a batch size, an average degree of nodes, and a dimension of the one or more feature attributes
Step 2B: There are no additional elements in this claim that amount to significantly more than the judicial exception.
The following additional elements are adding the words “apply it” (or an equivalent) with the judicial exception, or mere instructions to implement an abstract idea on a computer, or merely uses a computer as a tool to perform an abstract idea [see MPEP 2106.05(f)] and therefore fails to amount to significantly more than the judicial exception.
wherein the method of training the machine learning model uses a quantity of memory based on a batch size, an average degree of nodes, and a dimension of the one or more feature attributes
Regarding Claim 8:
Step 2A, Prong 1: This claim recites the same abstract ideas as in the parent claim.
Step 2A, Prong 2: There are no additional elements in this claim that integrate the judicial exception into a practical application.
The following additional elements are adding the words “apply it” (or an equivalent) with the judicial exception, or mere instructions to implement an abstract idea on a computer, or merely uses a computer as a tool to perform an abstract idea [see MPEP 2106.05(f)] and therefore fails to integrate the judicial exception into a practical application.
wherein the training data comprises a plurality of mini-batches
wherein determining the encoded graph comprises applying the machine learning model to a mini-batch of the plurality of mini-batches
Step 2B: There are no additional elements in this claim that amount to significantly more than the judicial exception.
The following additional elements are adding the words “apply it” (or an equivalent) with the judicial exception, or mere instructions to implement an abstract idea on a computer, or merely uses a computer as a tool to perform an abstract idea [see MPEP 2106.05(f)] and therefore fails to amount to significantly more than the judicial exception.
wherein the training data comprises a plurality of mini-batches
wherein determining the encoded graph comprises applying the machine learning model to a mini-batch of the plurality of mini-batches
Regarding Claim 9:
Step 2A, Prong 1: This claim recites the same abstract ideas as in the parent claim. Additionally,
The following limitations are/remain directed to the abstract idea of a mental process [see MPEP 2106.04(a)(2) III. C.]. In particular, the claim recites mental processes that are concepts performed in the human mind (including an observation, evaluation, judgement, or opinion).
wherein the graph structure comprises a plurality of nodes and a plurality of paths each connecting a node of the plurality of nodes to another node of the plurality of nodes
Step 2A, Prong 2: There are no additional elements in this claim that integrate the judicial exception into a practical application.
Step 2B: There are no additional elements in this claim that amount to significantly more than the judicial exception.
Regarding Claim 10:
Step 2A, Prong 1: This claim recites the same abstract ideas as in the parent claim. Additionally,
The following limitations are/remain directed to the abstract idea of a mental process [see MPEP 2106.04(a)(2) III. C.]. In particular, the claim recites mental processes that are concepts performed in the human mind (including an observation, evaluation, judgement, or opinion).
(a) wherein determining the encoded graph based…the graph structure and the one or more feature attributes comprises:
determining, based on graph structure and the one or more feature attributes, a normalized adjacency matrix and a k-hop diffusion matrix
(b) …the normalized adjacency matrix and the k-hop diffusion matrix to obtain an encoded normalized adjacency matrix and an encoded k-hop diffusion matrix
determining the encoded graph by normalizing a sum of the encoded normalized adjacency matrix, the encoded k-hop diffusion matrix, and a learnable matrix
Step 2A, Prong 2: There are no additional elements in this claim that integrate the judicial exception into a practical application.
The following additional elements are adding the words “apply it” (or an equivalent) with the judicial exception, or mere instructions to implement an abstract idea on a computer, or merely uses a computer as a tool to perform an abstract idea [see MPEP 2106.05(f)] and therefore fails to integrate the judicial exception into a practical application.
(a) …on applying the machine learning model to…
(b) applying the machine learning model to…
Step 2B: There are no additional elements in this claim that amount to significantly more than the judicial exception.
The following additional elements are adding the words “apply it” (or an equivalent) with the judicial exception, or mere instructions to implement an abstract idea on a computer, or merely uses a computer as a tool to perform an abstract idea [see MPEP 2106.05(f)] and therefore fails to amount to significantly more than the judicial exception.
(a) …on applying the machine learning model to…
(b) applying the machine learning model to…
Regarding Claim 11:
Step 2A, Prong 1: This claim recites the same abstract ideas as in the parent claim.
Step 2A, Prong 2: There are no additional elements in this claim that integrate the judicial exception into a practical application.
The following additional elements are adding the words “apply it” (or an equivalent) with the judicial exception, or mere instructions to implement an abstract idea on a computer, or merely uses a computer as a tool to perform an abstract idea [see MPEP 2106.05(f)] and therefore fails to integrate the judicial exception into a practical application.
wherein a time complexity of training the machine learning model varies linearly based on the number of nodes
Step 2B: There are no additional elements in this claim that amount to significantly more than the judicial exception.
The following additional elements are adding the words “apply it” (or an equivalent) with the judicial exception, or mere instructions to implement an abstract idea on a computer, or merely uses a computer as a tool to perform an abstract idea [see MPEP 2106.05(f)] and therefore fails to amount to significantly more than the judicial exception.
wherein a time complexity of training the machine learning model varies linearly based on the number of nodes
Regarding Claim 12:
Step 2A, Prong 1: This claim recites the same abstract ideas as in the parent claim. Additionally,
The following limitations are/remain directed to the abstract idea of a mental process [see MPEP 2106.04(a)(2) III. C.]. In particular, the claim recites mental processes that are concepts performed in the human mind (including an observation, evaluation, judgement, or opinion).
(a) wherein determining the encoded graph comprises…
Step 2A, Prong 2: There are no additional elements in this claim that integrate the judicial exception into a practical application.
The following additional elements are adding the words “apply it” (or an equivalent) with the judicial exception, or mere instructions to implement an abstract idea on a computer, or merely uses a computer as a tool to perform an abstract idea [see MPEP 2106.05(f)] and therefore fails to integrate the judicial exception into a practical application.
wherein the training data comprises a plurality of mini-batches of a predetermined size
(a) …applying the machine learning model to a mini-batch of the plurality of mini-batches
wherein a time complexity of training the machine learning model varies linearly based on the predetermined size
Step 2B: There are no additional elements in this claim that amount to significantly more than the judicial exception.
The following additional elements are adding the words “apply it” (or an equivalent) with the judicial exception, or mere instructions to implement an abstract idea on a computer, or merely uses a computer as a tool to perform an abstract idea [see MPEP 2106.05(f)] and therefore fails to amount to significantly more than the judicial exception.
wherein the training data comprises a plurality of mini-batches of a predetermined size
(a) …applying the machine learning model to a mini-batch of the plurality of mini-batches
wherein a time complexity of training the machine learning model varies linearly based on the predetermined size
Regarding Claim 13:
Step 2A, Prong 1: This claim recites the same abstract ideas as in the parent claim. Additionally,
The following limitations are/remain directed to the abstract idea of a mental process [see MPEP 2106.04(a)(2) III. C.]. In particular, the claim recites mental processes that are concepts performed in the human mind (including an observation, evaluation, judgement, or opinion).
wherein selecting the plurality of positive samples through random walks along the one or more paths of the encoded graph comprises using a biased second order random walk through the encoded graph to obtain the plurality of positive samples
Step 2A, Prong 2: There are no additional elements in this claim that integrate the judicial exception into a practical application.
Step 2B: There are no additional elements in this claim that amount to significantly more than the judicial exception.
Regarding Claim 14:
Step 2A, Prong 1: This claim recites the same abstract ideas as in the parent claim. Additionally,
The following limitations are/remain directed to the abstract idea of a mental process [see MPEP 2106.04(a)(2) III. C.]. In particular, the claim recites mental processes that are concepts performed in the human mind (including an observation, evaluation, judgement, or opinion).
wherein the random walk starts at a particular node
wherein selecting the plurality of positive samples through random walks along the one or more paths of the encoded graph comprises determining one or more similar nodes of the encoded graph that are similar to the particular node at which the random walk starts
Step 2A, Prong 2: There are no additional elements in this claim that integrate the judicial exception into a practical application.
Step 2B: There are no additional elements in this claim that amount to significantly more than the judicial exception.
Regarding Claim 15:
Step 2A, Prong 1: This claim recites the same abstract ideas as in the parent claim. Additionally,
The following limitations are/remain directed to the abstract idea of a mental process [see MPEP 2106.04(a)(2) III. C.]. In particular, the claim recites mental processes that are concepts performed in the human mind (including an observation, evaluation, judgement, or opinion).
determining a node set by taking a union of the plurality of positive samples and the plurality of negative samples
Step 2A, Prong 2: There are no additional elements in this claim that integrate the judicial exception into a practical application.
Step 2B: There are no additional elements in this claim that amount to significantly more than the judicial exception.
Regarding Claim 16:
Step 2A, Prong 1: This claim recites the same abstract ideas as in the parent claim. Additionally,
The following limitations are/remain directed to the abstract idea of a mental process [see MPEP 2106.04(a)(2) III. C.]. In particular, the claim recites mental processes that are concepts performed in the human mind (including an observation, evaluation, judgement, or opinion).
wherein applying a contrastive loss function to the plurality of positive samples and to the plurality of negative samples results in a linearly separable representation
Step 2A, Prong 2: There are no additional elements in this claim that integrate the judicial exception into a practical application.
Step 2B: There are no additional elements in this claim that amount to significantly more than the judicial exception.
Regarding Claim 17:
Step 2A, Prong 1: This claim recites the same abstract ideas as in the parent claim.
Step 2A, Prong 2: There are no additional elements in this claim that integrate the judicial exception into a practical application.
The following additional elements are adding the words “apply it” (or an equivalent) with the judicial exception, or mere instructions to implement an abstract idea on a computer, or merely uses a computer as a tool to perform an abstract idea [see MPEP 2106.05(f)] and therefore fails to integrate the judicial exception into a practical application.
wherein the method is carried out by a single virtual machine
Step 2B: There are no additional elements in this claim that amount to significantly more than the judicial exception.
The following additional elements are adding the words “apply it” (or an equivalent) with the judicial exception, or mere instructions to implement an abstract idea on a computer, or merely uses a computer as a tool to perform an abstract idea [see MPEP 2106.05(f)] and therefore fails to amount to significantly more than the judicial exception.
wherein the method is carried out by a single virtual machine
Regarding Claim 18:
Step 2A, Prong 1: The following limitations are directed to the abstract idea of a mental process [see MPEP 2106.04(a)(2) III. C.]. In particular, the claim recites mental processes that are concepts performed in the human mind or with pen and paper (including an observation, evaluation, judgement, or opinion).
(a) determining an encoded graph output by…a graph structure input and one or more feature attribute inputs…
wherein the one or more learnable parameter values of a graph convolutional network layer of the trained machine learning model were determined by applying a contrastive loss function to a plurality of positive samples selected through random walks along one or more paths of an encoded graph and a plurality of negative samples selected from the encoded graph by randomly sampling one or more nodes of the encoded graph
(b) …determine one or more graph clusters, wherein each graph cluster comprises one or more nearby nodes of the graph structure input with similar feature attributes
As drafted, under their broadest reasonable interpretation (BRI), in view of the specification, the above limitations cover concepts performed in the human mind (observation, evaluation, judgement, or opinion). Given a sufficiently small set of data, nothing in the claim prohibits this process from being performed mentally or with pen and paper.
Step 2A, Prong 2: There are no additional elements in this claim that integrate the judicial exception into a practical application.
The following additional elements are adding the words “apply it” (or an equivalent) with the judicial exception, or mere instructions to implement an abstract idea on a computer, or merely uses a computer as a tool to perform an abstract idea [see MPEP 2106.05(f)] and therefore fails to integrate the judicial exception into a practical application.
A method of applying a machine learning model, the method comprising:
(a) …applying a trained machine learning model to…
wherein the trained machine learning model comprises a graph convolutional network layer
wherein the machine learning model outputs an encoded graph based on one or more learnable parameter values of the graph convolutional network layer
(b) applying a clustering algorithm to the encoded graph output to…
Step 2B: There are no additional elements in this claim that amount to significantly more than the judicial exception.
The following additional elements are adding the words “apply it” (or an equivalent) with the judicial exception, or mere instructions to implement an abstract idea on a computer, or merely uses a computer as a tool to perform an abstract idea [see MPEP 2106.05(f)] and therefore fails to amount to significantly more than the judicial exception.
A method of applying a machine learning model, the method comprising:
(a) …applying a trained machine learning model to…
wherein the trained machine learning model comprises a graph convolutional network layer
wherein the machine learning model outputs an encoded graph based on one or more learnable parameter values of the graph convolutional network layer
(b) applying a clustering algorithm to the encoded graph output to…
Regarding Claim 19:
Step 2A, Prong 1: This claim recites the same abstract ideas as in the parent claim.
Step 2A, Prong 2: There are no additional elements in this claim that integrate the judicial exception into a practical application.
The following additional elements are adding the words “apply it” (or an equivalent) with the judicial exception, or mere instructions to implement an abstract idea on a computer, or merely uses a computer as a tool to perform an abstract idea [see MPEP 2106.05(f)] and therefore fails to integrate the judicial exception into a practical application.
wherein the clustering algorithm is a k-means clustering algorithm
Step 2B: There are no additional elements in this claim that amount to significantly more than the judicial exception.
The following additional elements are adding the words “apply it” (or an equivalent) with the judicial exception, or mere instructions to implement an abstract idea on a computer, or merely uses a computer as a tool to perform an abstract idea [see MPEP 2106.05(f)] and therefore fails to amount to significantly more than the judicial exception.
wherein the clustering algorithm is a k-means clustering algorithm
Regarding Claim 20:
Step 2A, Prong 1: This claim recites the same abstract ideas as in the parent claim. Additionally,
The following limitations are/remain directed to the abstract idea of a mental process [see MPEP 2106.04(a)(2) III. C.]. In particular, the claim recites mental processes that are concepts performed in the human mind (including an observation, evaluation, judgement, or opinion).
(a) …determine the one or more graph clusters comprises determining a finite number of graph cluster
Step 2A, Prong 2: There are no additional elements in this claim that integrate the judicial exception into a practical application.
The following additional elements are adding the words “apply it” (or an equivalent) with the judicial exception, or mere instructions to implement an abstract idea on a computer, or merely uses a computer as a tool to perform an abstract idea [see MPEP 2106.05(f)] and therefore fails to integrate the judicial exception into a practical application.
(a) wherein applying a clustering algorithm to the encoded graph output to…
Step 2B: There are no additional elements in this claim that amount to significantly more than the judicial exception.
The following additional elements are adding the words “apply it” (or an equivalent) with the judicial exception, or mere instructions to implement an abstract idea on a computer, or merely uses a computer as a tool to perform an abstract idea [see MPEP 2106.05(f)] and therefore fails to amount to significantly more than the judicial exception.
(a) wherein applying a clustering algorithm to the encoded graph output to…
Regarding Claim 21:
Step 2A, Prong 1: This claim recites the same abstract ideas as in the parent claim. Additionally,
The following limitations are/remain directed to the abstract idea of a mental process [see MPEP 2106.04(a)(2) III. C.]. In particular, the claim recites mental processes that are concepts performed in the human mind (including an observation, evaluation, judgement, or opinion).
wherein the encoded graph output comprises one or more vector embeddings
wherein each of the one or more vector embeddings corresponds to a node of the graph structure input
Step 2A, Prong 2: There are no additional elements in this claim that integrate the judicial exception into a practical application.
Step 2B: There are no additional elements in this claim that amount to significantly more than the judicial exception.
Regarding Claim 22:
Step 2A, Prong 1: This claim recites the same abstract ideas as in the parent claim. Additionally,
The following limitations are/remain directed to the abstract idea of a mental process [see MPEP 2106.04(a)(2) III. C.]. In particular, the claim recites mental processes that are concepts performed in the human mind (including an observation, evaluation, judgement, or opinion).
(a) wherein determining the encoded graph by…a graph structure input and the one or more feature attribute inputs comprises:
determining, based on graph structure input and the one or more feature attribute inputs, a normalized adjacency matrix and a k-hop diffusion matrix
(b) …the normalized adjacency matrix and the k-hop diffusion matrix to obtain an encoded normalized adjacency matrix and an encoded k-hop diffusion matrix
determining the encoded graph by adding the encoded normalized adjacency matrix, the encoded k-hop diffusion matrix, and a learnable matrix
Step 2A, Prong 2: There are no additional elements in this claim that integrate the judicial exception into a practical application.
The following additional elements are adding the words “apply it” (or an equivalent) with the judicial exception, or mere instructions to implement an abstract idea on a computer, or merely uses a computer as a tool to perform an abstract idea [see MPEP 2106.05(f)] and therefore fails to integrate the judicial exception into a practical application.
(a) …on applying a trained machine learning model to…
(b) applying the machine learning model to…
Step 2B: There are no additional elements in this claim that amount to significantly more than the judicial exception.
The following additional elements are adding the words “apply it” (or an equivalent) with the judicial exception, or mere instructions to implement an abstract idea on a computer, or merely uses a computer as a tool to perform an abstract idea [see MPEP 2106.05(f)] and therefore fails to amount to significantly more than the judicial exception.
(a) …on applying the machine learning model to…
(b) applying the machine learning model to…
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.
This application currently names joint inventors. In considering patentability of the claims the examiner presumes that the subject matter of the various claims was commonly owned as of the effective filing date of the claimed invention(s) absent any evidence to the contrary. Applicant is advised of the obligation under 37 CFR 1.56 to point out the inventor and effective filing dates of each claim that was not commonly owned as of the effective filing date of the later invention in order for the examiner to consider the applicability of 35 U.S.C. 102(b)(2)(C) for any potential 35 U.S.C. 102(a)(2) prior art against the later invention.
Claims 1-9, 14-16, and 18-21 are rejected under 35 U.S.C. 103 as being unpatentable over Xie et al. ("Self-Supervised Learning of Graph Neural Networks: A Unified Review"), hereinafter Xie, in view of Jiao et al. ("Sub-graph Contrast for Scalable Self-Supervised Graph Representation Learning"), hereinafter Jiao, and further in view of Wang et al. ("Graph Neural Networks: Self-Supervised Learning"), hereinafter Wang.
Regarding Claim 1:
Xie discloses:
A method of training a machine learning model, the method comprising: receiving training data for the machine learning model
Xie, p. 2415, col. 2, “Inspired by the success of contrastive learning in images, recent studies propose similar contrastive frameworks to enable self-supervised training on graph data. Given training graphs, contrastive learning aims to learn one or more encoders such that representations of similar graph instances agree with each other, and that representations of dissimilar graph instances disagree with each other.”
p. 2424-2425, “Commonly used datasets for graph-level learning tasks can be divided into three types, chemical molecule datasets, protein datasets, and social network datasets…
Traditional molecule classification datasets such as NCI1 [103] and MUTAG [104] are the most commonly used datasets for unsupervised graph representation learning in self-supervision related studies [10], [49]…
Similar to the chemical molecule datasets, protein datasets can be used in both unsupervised representation learning, such as PROTEINS [106] and DD [107], and in the two-stage training…
Social network graph datasets used in recent self-supervised studies [48], [49] are typical datasets for graph classification [108] such as COLLAB, REDDIT-B and IMDB-B.”
On p. 2415, Xie discloses self-supervised training [training a machine learning model] on graph data. Then, pp. 2424-2425 discloses commonly obtained datasets in self-supervised training for various tasks such as chemical molecule datasets, protein datasets, and social network datasets [receiving training data for the machine learning model].
wherein the training comprises a graph structure and one or more feature attributes
Xie, p. 2419, col. 1, “To generate views from a graph sample distributed from
P
, one usually applies different types of graph transformations (or augmentations)
T
. Here, we only consider cases where
T
still outputs the graph-structured data…Given an input graph
A
,
X
, a feature transformation only performs transformation to the attribute matrix
X
, i.e.,
T
A
,
X
=
A
,
T
X
X
.”
p. 2415, “Given training graphs, contrastive learning aims to learn one or more encoders such that representations of similar graph instances agree with each other, and that representations of dissimilar graph instances disagree with each other. We unify existing approaches to constructing contrastive learning tasks into a general framework that learns to discriminate jointly sampled view pairs (e.g. two views belonging to the same instance) from independently sampled view pairs (e.g. views belonging to different instances). In particular, we obtain multiple views from each graph in the training data set by applying different transformations.”
On p. 2419, Xie discloses graph-structured data [graph structure] that includes data such as a feature attribute matrix [one or more feature attributes]. Previously on p. 2415, Xie disclosed their general framework that learns [training comprises] from graphs in the training data set that were obtained through transformations such as the feature transformation disclosed further on p. 2419.
determining an encoded graph based on applying the machine learning model to the graph structure and the one or more feature attributes
Xie, p. 2416, “In general, key components that specify a contrastive learning framework include transformations that compute multiple views from each given graph, encoders that compute the representation for each view, and the learning objective to optimize parameters in encoders.”
Xie discloses using encoders within the contrastive learning framework on the views of each graph [determining an encoded graph based on applying the machine learning model to the graph structure]. As discussed above, the graphs include data such as a feature attribute matrix [the one or more feature attributes].
wherein the encoded graph comprises one or more nodes and one or more paths connecting the one or more nodes
Xie, p. 2420, “Random walk sampling is proposed in GCC [Graph contrastive coding] [48] to sample sub-graphs based on random walks starting from a given node. The subset of nodes
S
∈
V
is collected iteratively. At each iteration, the walk has a probability
p
i
j
to travel from node
v
i
to node
v
j
and has a probability of
p
r
=
0.8
to return to the start node. GCC considers the random walk sampling with restart as a further transformation of the r-ego-net centered at the start node.”
Xie discloses random walk sampling which includes a path starting at a node connecting to other nodes in the graph [the encoded graph comprises one or more nodes and one or more paths connecting the one or more nodes].
updating, based on the loss value, one or more learnable parameter values…of the machine learning model
Xie, p. 2416, “In general, key components that specify a contrastive learning framework include transformations that compute multiple views from each given graph, encoders that compute the representation for each view, and the learning objective to optimize parameters in encoders.”
Xie discloses optimizing parameters using the learning objective [updating, based on the loss value, one or more learnable parameter values…of the machine learning model].
Xie does not explicitly disclose:
wherein the machine learning model comprises a graph convolutional network layer
selecting a plurality of positive samples through random walks along the one or more paths of the encoded graph
selecting a plurality of negative samples from the encoded graph by randomly sampling the one or more nodes of the encoded graph
determining, based on applying a contrastive loss function to the plurality of positive samples and to the plurality of negative samples, a loss value
…of the graph convolutional network layer…
However in the same field, analogous art Jiao teaches:
wherein the machine learning model comprises a graph convolutional network layer
Jiao, p. 227, col. 2, “we adopt a one-layer Graph Convolutional Network (GCN) with skip connections [30] as our encoder…”
Jiao discloses a graph convolutional network layer [the machine learning model comprises a graph convolutional network layer].
…of the graph convolutional network layer…
As cited above, Jiao teaches a graph convolutional network layer.
Xie, Jiao, and the instant application are analogous art because they are all directed to graph learning.
It would have been obvious to a person of ordinary skill in the art before the effective filing date of the claimed invention to modify Xie with Jiao to use a graph convolutional layer in order to achieve best performance in view of architecture. “For better architecture and performance, we conducted experiments about the design of our encoder. We choose four different graph neural networks as the encoder to learn node representation, including graph convolutional network (GCN), graph convolutional network with skip connection (GCN + Skip), graph attention network (GAT) [9], graph isomorphism network (GIN) [18]. The experimental results are listed in Table IV. As can be observed, GCN with skip connection can achieve the best performance on Citeseer, Pubmed, and PPI. Although GAT can be competitive on Cora, because GAT requires more training time and memory, we choose GCN with skip connection as our encoder finally” (Jiao, p. 229, col. 1).
Xie in view of Jiao do not explicitly disclose:
selecting a plurality of positive samples through random walks along the one or more paths of the encoded graph
selecting a plurality of negative samples from the encoded graph by randomly sampling the one or more nodes of the encoded graph
determining, based on applying a contrastive loss function to the plurality of positive samples and to the plurality of negative samples, a loss value
However, in the same field, analogous art Wang teaches:
selecting a plurality of positive samples through random walks along the one or more paths of the encoded graph
Wang, p. 411, “Based on the above defined positive and negative subgraph pairs, a contrastive loss is set up to optimize the GNNs as follows:
L
s
s
l
=
1
P
+
∑
g
i
,
g
i
+
∈
P
+
l
N
T
-
X
e
n
t
Z
s
s
l
1
,
Z
s
s
l
2
,
P
-
,
where
Z
s
s
l
1
,
Z
s
s
l
2
denotes the GNN-based graph embeddings and specifically here the two different views are the same
Z
s
s
l
1
=
Z
s
s
l
2
.
P
+
contains positive pairs of sub-graphs
g
i
,
g
i
+
sampled by random walk starting at the same ego vertex
v
i
in the same graph while
P
-
=
⋃
g
i
,
g
i
+
∈
P
+
P
g
i
-
represents all sets of negative samples.”
Wang teaches positive pairs of sub-graphs sampled [selecting a plurality of positive samples] by random walk [through random walks along the one or more paths of the encoded graph].
selecting a plurality of negative samples from the encoded graph by randomly sampling the one or more nodes of the encoded graph
As cited above, Wang teaches negative pairs of sub-graphs sampled [selecting a plurality of negative samples] by random walk [randomly sampling the one or more nodes of the encoded graph].
determining, based on applying a contrastive loss function to the plurality of positive samples and to the plurality of negative samples, a loss value
As cited above, the positive and negative subgraphs are used in the contrastive loss of their GNN [determining, based on applying a contrastive loss function to the plurality of positive and to the plurality of negative samples, a loss value].
Xie, Jiao, Wang, and the instant application are analogous art because they are all directed to graph learning.
It would have been obvious to a person of ordinary skill in the art before the effective filing date of the claimed invention to modify Xie and Jiao with Wang to use multiple positive and negative samples in order to provide extra supervision. “Aside from the network motifs, other subgraph structures can be leveraged to provide extra supervision in designing pretext tasks. In (Qiu et al, 2020a), an r-ego network for a certain vertex is defined as the subgraph induced by nodes that have shortest path with length shorter than r. Then a random walk with restart is initiated at ego vertex
v
i
and the subgraph induced by nodes that are visited during the random walk starting at
v
i
are used as the augmented version of the r-ego network” (Wang, p. 411).
Regarding Claim 2:
As discussed above, Xie in view of Jiao, further in view of Wang teach [the] method of claim 1, and Jiao further discloses:
wherein the machine learning model consists of a single layer, wherein the single layer is the graph convolutional network layer
Jiao, p. 227, col. 2, “we adopt a one-layer Graph Convolutional Network (GCN) with skip connections [30] as our encoder…”
Jiao discloses a one-layer graph convolutional network [the machine learning model consists of a single layer, wherein the single layer is the graph convolutional network layer].
It would have been obvious to a person of ordinary skill in the art before the effective filing date of the claimed invention to modify Xie, Jiao, and Wang, further with Jiao to use a graph convolutional layer in order to achieve best performance in view of architecture. “For better architecture and performance, we conducted experiments about the design of our encoder. We choose four different graph neural networks as the encoder to learn node representation, including graph convolutional network (GCN), graph convolutional network with skip connection (GCN + Skip), graph attention network (GAT) [9], graph isomorphism network (GIN) [18]. The experimental results are listed in Table IV. As can be observed, GCN with skip connection can achieve the best performance on Citeseer, Pubmed, and PPI. Although GAT can be competitive on Cora, because GAT requires more training time and memory, we choose GCN with skip connection as our encoder finally” (Jiao, p. 229, col. 1).
Regarding Claim 3:
As discussed above, Xie in view of Jiao, further in view of Wang teach [the] method of claim 1, and Jiao further discloses:
wherein the machine learning model further comprises a parametric rectified linear unit activation function
Jiao, p. 227, Encoder design “For the nonlinearity σ, we apply the parametric ReLU (PReLU) function [31].”
Jiao discloses that their encoder design [the machine learning model] uses the PreLU function [a parametric rectified linear unit activation function].
It would have been obvious to a person of ordinary skill in the art before the effective filing date of the claimed invention to modify Xie, Jiao, and Wang, further with Jiao to use a graph convolutional layer with PReLU in order to achieve best performance in view of architecture. “For better architecture and performance, we conducted experiments about the design of our encoder. We choose four different graph neural networks as the encoder to learn node representation, including graph convolutional network (GCN), graph convolutional network with skip connection (GCN + Skip), graph attention network (GAT) [9], graph isomorphism network (GIN) [18]. The experimental results are listed in Table IV. As can be observed, GCN with skip connection can achieve the best performance on Citeseer, Pubmed, and PPI. Although GAT can be competitive on Cora, because GAT requires more training time and memory, we choose GCN with skip connection as our encoder finally” (Jiao, p. 229, col. 1).
Regarding Claim 4:
As discussed above, Xie in view of Jiao, further in view of Wang teach [the] method of claim 1, and Xie further discloses:
wherein the machine learning model further comprises a L2 normalization function
Xie, p. 2421, “MGAE [50] follows the idea of denoising autoencoder [89]…
λ
denotes the hyper-parameter for l2-regularization”
Xie discloses l2-regularization [the machine learning model further comprises a L2 normalization function].
Regarding Claim 5:
As discussed above, Xie in view of Jiao, further in view of Wang teach [the] method of claim 1, and Xie further discloses:
wherein the method of training the machine learning model is self-supervised
Xie, p. 2415, col. 2, “Inspired by the success of contrastive learning in images, recent studies propose similar contrastive frameworks to enable self-supervised training on graph data. Given training graphs, contrastive learning aims to learn one or more encoders such that representations of similar graph instances agree with each other, and that representations of dissimilar graph instances disagree with each other.”
Xie discloses self-supervised training [training the machine learning model is self-supervised].
Regarding Claim 6:
As discussed above, Xie in view of Jiao, further in view of Wang teach [the] method of claim 1, and Jiao further discloses:
wherein a quantity of the one or more learnable parameter values is based on a dimension of the one or more feature attributes
Jiao, p. 228, “During training, we use Adam optimizer [36] with an initial learning rate of 0.001 (specially, 10-5 on Citeseer and Reddit). The subgraph size is no more than 20 (specially, the subgraph size is 10 on Citeseer due to better performance). The dimension of node representations is 1024.”
Jiao discloses during training implementation that their dimension of node representations is 1024 [quantity of the one or more learnable parameter values is based on a dimension of the one or more feature attributes].
It would have been obvious to a person of ordinary skill in the art before the effective filing date of the claimed invention to modify Xie, Jiao, and Wang, further with Jiao to use a graph convolutional layer with PReLU in order to achieve best performance in view of architecture. “For better architecture and performance, we conducted experiments about the design of our encoder. We choose four different graph neural networks as the encoder to learn node representation, including graph convolutional network (GCN), graph convolutional network with skip connection (GCN + Skip), graph attention network (GAT) [9], graph isomorphism network (GIN) [18]. The experimental results are listed in Table IV. As can be observed, GCN with skip connection can achieve the best performance on Citeseer, Pubmed, and PPI. Although GAT can be competitive on Cora, because GAT requires more training time and memory, we choose GCN with skip connection as our encoder finally” (Jiao, p. 229, col. 1).
Regarding Claim 7:
As discussed above, Xie in view of Jiao, further in view of Wang teach [the] method of claim 1, and Jiao further discloses:
wherein the method of training the machine learning model uses a quantity of memory based on
a batch size,
Jiao, p. 230, col. 1, 2) Training time and memory cost, “The memory refers to total memory costs of model parameters and all hidden representations of a batch.”
Jiao discloses that training time and memory costs are linked to batch size [training the machine learning model uses a quantity of memory based on…a batch size].
an average degree of nodes, and
Jiao, p. 227, col. 2, “
D
^
is its corresponding degree matrix”
p. 229, col. 2, 1) Train with A Few Subgraphs, “The degree of nodes in Cora, Citeseer, and Pubmed is small, therefore subgraphs extracted from these datasets can be of much different shape. On the contrary, PPI, Flickr and Reddit are relatively denser and the context subgraphs likely composed of direct neighbors.”
Jiao discloses training using only a few subgraphs based on the degree of nodes [training the machine learning model uses a quantity of memory based on…an average degree of nodes].
a dimension of the one or more feature attributes
Jiao, p. 228, “During training, we use Adam optimizer [36] with an initial learning rate of 0.001 (specially, 10-5 on Citeseer and Reddit). The subgraph size is no more than 20 (specially, the subgraph size is 10 on Citeseer due to better performance). The dimension of node representations is 1024.”
Jiao discloses training using dimension of node representations [training the machine learning model uses a quantity of memory based on…a dimension of the one or more feature attributes].
It would have been obvious to a person of ordinary skill in the art before the effective filing date of the claimed invention to modify Xie, Jiao, and Wang, further with Jiao in order to reduce costs. “In particular, our advantage of efficiency can be more prominent on large-scale graphs, especially on Reddit. We believe that compared to the whole graph structure, subgraphs of much small size can speedup encoder training. Besides, training with a few subgraphs can further reduce training time and memory usage” (Jiao, p. 230, col. 1).
Regarding Claim 8:
As discussed above, Xie in view of Jiao, further in view of Wang teach [the] method of claim 1, and Xie further discloses:
wherein the training data comprises a plurality of mini-batches
Xie, p. 2422, “Given a mini-batch of graphs B, it compute node representations
H
x
,
a
and
H
x
,
b
of two augmented graphs from each x in B and minimize the following invariance-based loss with a parametric predictor”
Xie discloses mini-batch of graphs [training data comprises a plurality of mini-batches].
wherein determining the encoded graph comprises applying the machine learning model to a mini-batch of the plurality of mini-batches
As cited above, Xie discloses computing node representations of graphs for a mini-batch[determining the encoded graph comprises applying the machine learning model to a mini-batch of the plurality of mini-batches].
Regarding Claim 9:
As discussed above, Xie in view of Jiao, further in view of Wang teach [the] method of claim 1, and Xie further discloses:
wherein the graph structure comprises a plurality of nodes and a plurality of paths each connecting a node of the plurality of nodes to another node of the plurality of nodes
Xie, p. 2414, col. 1, “We consider an attributed undirected graph
G
=
(
V
,
E
,
α
)
, where
V
=
υ
1
,
…
,
υ
V
denotes the set of its nodes,
E
=
e
1
,
…
,
e
E
denotes the set of its edges, and
α
:
V
→
R
d
denotes the mapping from a node to its attributes of d dimensions.”
Xie discloses a graph [graph structure] with a set of nodes [a plurality of nodes] and a set of edges [a plurality of paths each connecting a node of the plurality of nodes to another node of the plurality of nodes].
Regarding Claim 14:
As discussed above, Xie in view of Jiao, further in view of Wang teach [the] method of claim 1, and Wang further discloses:
wherein the random walk starts at a particular node, wherein selecting the plurality of positive samples through random walks along the one or more paths of the encoded graph comprises determining one or more similar nodes of the encoded graph that are similar to the particular node at which the random walk starts
Wang, p. 411, “Based on the above defined positive and negative subgraph pairs, a contrastive loss is set up to optimize the GNNs as follows:
L
s
s
l
=
1
P
+
∑
g
i
,
g
i
+
∈
P
+
l
N
T
-
X
e
n
t
Z
s
s
l
1
,
Z
s
s
l
2
,
P
-
,
where
Z
s
s
l
1
,
Z
s
s
l
2
denotes the GNN-based graph embeddings and specifically here the two different views are the same
Z
s
s
l
1
=
Z
s
s
l
2
.
P
+
contains positive pairs of sub-graphs
g
i
,
g
i
+
sampled by random walk starting at the same ego vertex
v
i
in the same graph while
P
-
=
⋃
g
i
,
g
i
+
∈
P
+
P
g
i
-
represents all sets of negative samples.”
Wang teaches positive pairs of sub-graphs sampled by random walk [wherein selecting the plurality of positive samples through random walks along the one or more paths of the encoded graph comprises determining one or more similar nodes of the encoded graph that are similar to the particular node at which the random walk starts]. The random walk starts at a starting vertex [wherein the random walk starts at a particular node].
It would have been obvious to a person of ordinary skill in the art before the effective filing date of the claimed invention to modify Xie, Jiao, and Wang, further with Wang to use multiple positive and negative samples in order to provide extra supervision. “Aside from the network motifs, other subgraph structures can be leveraged to provide extra supervision in designing pretext tasks. In (Qiu et al, 2020a), an r-ego network for a certain vertex is defined as the subgraph induced by nodes that have shortest path with length shorter than r. Then a random walk with restart is initiated at ego vertex
v
i
and the subgraph induced by nodes that are visited during the random walk starting at
v
i
are used as the augmented version of the r-ego network” (Wang, p. 411).
Regarding Claim 15:
As discussed above, Xie in view of Jiao, further in view of Wang teach [the] method of claim 1, and Wang further discloses:
wherein the method further comprises: determining a node set by taking a union of the plurality of positive samples and the plurality of negative samples
Wang, p. 411, “Based on the above defined positive and negative subgraph pairs, a contrastive loss is set up to optimize the GNNs as follows:
L
s
s
l
=
1
P
+
∑
g
i
,
g
i
+
∈
P
+
l
N
T
-
X
e
n
t
Z
s
s
l
1
,
Z
s
s
l
2
,
P
-
,
where
Z
s
s
l
1
,
Z
s
s
l
2
denotes the GNN-based graph embeddings and specifically here the two different views are the same
Z
s
s
l
1
=
Z
s
s
l
2
.
P
+
contains positive pairs of sub-graphs
g
i
,
g
i
+
sampled by random walk starting at the same ego vertex
v
i
in the same graph while
P
-
=
⋃
g
i
,
g
i
+
∈
P
+
P
g
i
-
represents all sets of negative samples.”
Wang teaches using both the positive and negative samples in their contrastive loss [determining a node set by taking a union of the plurality of positive samples and the plurality of negative samples].
It would have been obvious to a person of ordinary skill in the art before the effective filing date of the claimed invention to modify Xie, Jiao, and Wang, further with Wang to use multiple positive and negative samples in order to provide extra supervision. “Aside from the network motifs, other subgraph structures can be leveraged to provide extra supervision in designing pretext tasks. In (Qiu et al, 2020a), an r-ego network for a certain vertex is defined as the subgraph induced by nodes that have shortest path with length shorter than r. Then a random walk with restart is initiated at ego vertex
v
i
and the subgraph induced by nodes that are visited during the random walk starting at
v
i
are used as the augmented version of the r-ego network” (Wang, p. 411).
Regarding Claim 16:
As discussed above, Xie in view of Jiao, further in view of Wang teach [the] method of claim 1, and Xie further discloses:
wherein applying a contrastive loss function to the plurality of positive samples and to the plurality of negative samples results in a linearly separable representation
Xie, p. 2416-2417, “During training, the contrastive objective aims to train encoders to maximize the agreement between view representations computed from the same graph instance…During inference, one can either use a single trained encoder to compute the representation or a combination of multiple view representations such as the linear combination or the concatenation as the final representation of a given graph.”
Xie discloses the contrastive objective training, and during inference, the encoder is able to find linear representations [wherein applying a contrastive loss function to the plurality of positive samples and to the plurality of negative samples results in a linearly separable representation].
Regarding Claim 18:
Xie discloses:
A method of applying a machine learning model, the method comprising:
Xie, p. 2415, col. 2, “Inspired by the success of contrastive learning in images, recent studies propose similar contrastive frameworks to enable self-supervised training on graph data. Given training graphs, contrastive learning aims to learn one or more encoders such that representations of similar graph instances agree with each other, and that representations of dissimilar graph instances disagree with each other.”
Xie discloses self-supervised training [applying a machine learning model] on graph data.
determining an encoded graph output by applying a trained machine learning model to a graph structure input and one or more feature attribute inputs
Xie, p. 2416, “In general, key components that specify a contrastive learning framework include transformations that compute multiple views from each given graph, encoders that compute the representation for each view, and the learning objective to optimize parameters in encoders.”
p. 2419, col. 1, “To generate views from a graph sample distributed from
P
, one usually applies different types of graph transformations (or augmentations)
T
. Here, we only consider cases where
T
still outputs the graph-structured data…Given an input graph
A
,
X
, a feature transformation only performs transformation to the attribute matrix
X
, i.e.,
T
A
,
X
=
A
,
T
X
X
.”
Xie discloses using encoders within the contrastive learning framework on the views of each graph [determining an encoded graph based on applying the machine learning model to a graph structure input]. Further on p. 2419, the graphs include data such as a feature attribute matrix [one or more feature attributes inputs].
wherein the machine learning model outputs an encoded graph based on one or more learnable parameter values…
Xie, p. 2416, “In general, key components that specify a contrastive learning framework include transformations that compute multiple views from each given graph, encoders that compute the representation for each view, and the learning objective to optimize parameters in encoders.”
Xie discloses using encoders with optimizable parameters to encode the views of the graphs [wherein the machine learning model outputs an encoded graph based on one or more learnable parameter values…].
applying a clustering algorithm to the encoded graph output to determine one or more graph clusters, wherein each graph cluster comprises one or more nearby nodes of the graph structure input with similar feature attributes
Xie, p. 2424, col. 1, “M3S [58] applies DeepCluster [101] and an aligning mechanism to generate pseudo-labels on the basis of multi-stage self-training. In particular, a K-mean cluster is performed on node-level representations at each stage and the labels obtained from clustering are then aligned with the given true labels.”
Xie discloses applying DeepCluster [applying a clustering algorithm to the encoded graph output to determine one or more graph clusters] to form clusters. The clustering is based on the representations of the nodes and the labels [each graph cluster comprises one or more nearby nodes of the graph structure input with similar feature attributes].
Xie does not explicitly disclose:
wherein the trained machine learning model comprises a graph convolutional network layer
…of the graph convolutional network layer
wherein the one or more learnable parameter values of a graph convolutional network layer of the trained machine learning model were determined by applying a contrastive loss function to a plurality of positive samples selected through random walks along one or more paths of an encoded graph and a plurality of negative samples selected from the encoded graph by randomly sampling one or more nodes of the encoded graph
However, in the same field, analogous art Jiao teaches:
wherein the trained machine learning model comprises a graph convolutional network layer
Jiao, p. 227, col. 2, “we adopt a one-layer Graph Convolutional Network (GCN) with skip connections [30] as our encoder…”
Jiao discloses a graph convolutional network layer [the machine learning model comprises a graph convolutional network layer].
…of the graph convolutional network layer
As cited above, Jiao teaches a graph convolutional network layer.
It would have been obvious to a person of ordinary skill in the art before the effective filing date of the claimed invention to modify Xie with Jiao to use a graph convolutional layer in order to achieve best performance in view of architecture. “For better architecture and performance, we conducted experiments about the design of our encoder. We choose four different graph neural networks as the encoder to learn node representation, including graph convolutional network (GCN), graph convolutional network with skip connection (GCN + Skip), graph attention network (GAT) [9], graph isomorphism network (GIN) [18]. The experimental results are listed in Table IV. As can be observed, GCN with skip connection can achieve the best performance on Citeseer, Pubmed, and PPI. Although GAT can be competitive on Cora, because GAT requires more training time and memory, we choose GCN with skip connection as our encoder finally” (Jiao, p. 229, col. 1).
Xie in view of Jiao do not explicitly disclose:
wherein the one or more learnable parameter values of a graph convolutional network layer of the trained machine learning model were determined by applying a contrastive loss function to a plurality of positive samples selected through random walks along one or more paths of an encoded graph and a plurality of negative samples selected from the encoded graph by randomly sampling one or more nodes of the encoded graph
However, in the same field, analogous art Wang teaches:
wherein the one or more learnable parameter values of a graph convolutional network layer of the trained machine learning model were determined by applying a contrastive loss function to a plurality of positive samples selected through random walks along one or more paths of an encoded graph and a plurality of negative samples selected from the encoded graph by randomly sampling one or more nodes of the encoded graph
Wang, p. 411, “Based on the above defined positive and negative subgraph pairs, a contrastive loss is set up to optimize the GNNs as follows:
L
s
s
l
=
1
P
+
∑
g
i
,
g
i
+
∈
P
+
l
N
T
-
X
e
n
t
Z
s
s
l
1
,
Z
s
s
l
2
,
P
-
,
where
Z
s
s
l
1
,
Z
s
s
l
2
denotes the GNN-based graph embeddings and specifically here the two different views are the same
Z
s
s
l
1
=
Z
s
s
l
2
.
P
+
contains positive pairs of sub-graphs
g
i
,
g
i
+
sampled by random walk starting at the same ego vertex
v
i
in the same graph while
P
-
=
⋃
g
i
,
g
i
+
∈
P
+
P
g
i
-
represents all sets of negative samples.”
Wang teaches positive and negative pairs of sub-graphs sampled [a plurality of positive samples/negative samples] by random walk [selected through random walks along one or more paths of an encoded graph/selected from the encoded graph by randomly sampling one or more nodes of the encoded graph]. Then using the positive and negative subgraphs in the contrastive loss of their GNN [the one or more learnable parameter values of a graph convolutional network layer of the trained machine learning model were determined by applying a contrastive loss function to a plurality of positive samples…and a plurality of negative samples].
It would have been obvious to a person of ordinary skill in the art before the effective filing date of the claimed invention to modify Xie and Jiao with Wang to use multiple positive and negative samples in order to provide extra supervision. “Aside from the network motifs, other subgraph structures can be leveraged to provide extra supervision in designing pretext tasks. In (Qiu et al, 2020a), an r-ego network for a certain vertex is defined as the subgraph induced by nodes that have shortest path with length shorter than r. Then a random walk with restart is initiated at ego vertex
v
i
and the subgraph induced by nodes that are visited during the random walk starting at
v
i
are used as the augmented version of the r-ego network” (Wang, p. 411).
Regarding Claim 19:
As discussed above, Xie in view of Jiao, further in view of Wang teach [the] method of claim 15, and Xie further discloses:
wherein the clustering algorithm is a k-means clustering algorithm
Xie, p. 2424, col. 1, “M3S [58] applies DeepCluster [101] and an aligning mechanism to generate pseudo-labels on the basis of multi-stage self-training. In particular, a K-mean cluster is performed on node-level representations at each stage and the labels obtained from clustering are then aligned with the given true labels.”
Xie discloses K-mean cluster [the clustering algorithm is a k-means clustering algorithm].
Regarding Claim 20:
As discussed above, Xie in view of Jiao, further in view of Wang teach [the] method of claim 15, and Xie further discloses:
wherein applying a clustering algorithm to the encoded graph output to determine the one or more graph clusters comprises determining a finite number of graph clusters
Xie, p. 2424, col. 1, “ICF-GCN [59] proposes to optimize the GCN model and pseudo-labels for nodes simultaneously in an Expectation Maximization (EM) manner. In particular, the E-step updates the GCN based on the given pseudo-labels whereas the M-step updates the pseudo-labels based on the GCN predictions. Similarly to M3S, ICF-GCN performs clustering on hidden representations to obtain GCN predicted classes. To avoid the alignment issue, both pseudo-labels and the clustered node classes are represented in relational matrix of shape
|
V
|
×
|
V
|
, where an element value 1 indicates two nodes belong to the same class and 0 indicates different classes.”
Xie discloses a clustering algorithm that results in a relational matrix of max size V x V [applying a clustering algorithm to the encoded graph output to determine the one or more graph clusters comprises determining a finite number of graph clusters].
Regarding Claim 21:
As discussed above, Xie in view of Jiao, further in view of Wang teach [the] method of claim 15, and Xie further discloses:
wherein the encoded graph output comprises one or more vector embeddings, wherein each of the one or more vector embeddings corresponds to a node of the graph structure input
Xie, p. 2414, col. 1-2, “For graph-level prediction tasks, we learn a graph-level encoder
f
g
:
R
V
×
V
×
R
V
×
d
→
R
q
that computes a single vector
h
g
r
a
p
h
=
f
g
r
a
p
h
A
,
X
∈
R
q
as the representation of the given graph. Practically, graph-level encoders are usually constructed as a node-level encoder followed by a readout function.”
Xie discloses that their graph-level encoder outputs a vector that represents the graph [the encoded graph output comprises one or more vector embeddings]. It is further disclosed that the graph-level encoders are constructed using node-level encoders [each of the one or more vector embeddings corresponds to a node of the graph structure input].
Claim 11 is rejected under 35 U.S.C. 103 as being unpatentable over Xie in view of Jiao, and further in view of Wang as applied to claim 1 above, and further in view of Jin et al. ("Automated Self-Supervised Learning for Graphs"), hereinafter Jin.
Regarding Claim 11:
As discussed above, Xie in view of Jiao, further in view of Wang teach [the] method of claim 1, but do not explicitly disclose:
wherein a time complexity of training the machine learning model varies linearly based on the number of nodes
However, in the same field, analogous art Jin teaches:
wherein a time complexity of training the machine learning model varies linearly based on the number of nodes
Jin, p. 19, “Hence, we also express the time complexity of AUTOSSL-ES as O(RTL|E|d + RTLNd2 + RKINd) and that of AUTOSSL-DS as O(TL|E|d + TLNd2 + TKINd). Both of them linearly increase with the number of nodes N when E is proportional to N.”
Jin discloses a linearly increasing time complexity with regards to the number of nodes [time complexity of training the machine learning model varies linearly based on the number of nodes].
Xie, Jiao, Wang, Jin, and the instant application are analogous art because they are all directed to graph learning.
It would have been obvious to a person of ordinary skill in the art before the effective filing date of the claimed invention to modify Xie, Jiao, and Wang with Jin to have a linear time complexity for computational efficiency. “Hence, we also express the time complexity of AUTOSSL-ES as O(RTL|E|d + RTLNd2 + RKINd) and that of AUTOSSL-DS as O(TL|E|d + TLNd2 + TKINd). Both of them linearly increase with the number of nodes N when E is proportional to N” (Jin, p. 19). Jin discloses a linearly increasing time complexity in terms of the number of nodes. This is more efficiency as opposed to other time complexities such as those with exponential growths.
Claim 12 is rejected under 35 U.S.C. 103 as being unpatentable over Xie in view of Jiao, and further in view of Wang as applied to claim 1 above, and further in view of Wu et al. ("Self-supervised Graph Learning for Recommendation"), hereinafter Wu.
Regarding Claim 12:
As discussed above, Xie in view of Jiao, further in view of Wang teach [the] method of claim 1, but do not explicitly disclose:
wherein the training data comprises a plurality of mini-batches of a predetermined size, wherein determining the encoded graph comprises applying the machine learning model to a mini-batch of the plurality of mini-batches
wherein a time complexity of training the machine learning model varies linearly based on the predetermined size
However, in the same field, analogous art Wu teaches:
wherein the training data comprises a plurality of mini-batches of a predetermined size, wherein determining the encoded graph comprises applying the machine learning model to a mini-batch of the plurality of mini-batches
Wu, p. 731, col. 1, “The models are optimized by the Adam optimizer with learning rate of 0.001 and mini-batch size of 2048.”
Wu discloses a mini-batch size of 2048 [wherein the training data comprises a plurality of mini-batches of a predetermined size] for their models [determining the encoded graph comprises applying the machine learning model to a mini-batch of the plurality of mini-batches]
wherein a time complexity of training the machine learning model varies linearly based on the predetermined size
Wu, p. 730, col. 1, “Within a batch, the complexity of numerator and denominator are O(Bd) and O(BMd), respectively, where M is the number of users. And hence the total complexity of both user and item side per epoch is O(|E|d(2+|V|)). Therefore, the time complexity of the whole training phase is O(|E|d(2+|V|)s). An alternative to reduce the time complexity is treating only the users (or the items) within the batch as negative samples[6,49], resulting in total time complexity of O(|E|d(2+2B)s).”
Xie, Jiao, Wang, Wu, and the instant application are analogous art because they are all directed to graph learning.
It would have been obvious to a person of ordinary skill in the art before the effective filing date of the claimed invention to modify Xie, Jiao, and Wang with Wu to have linearly varying time complexity in order for computational efficiency. “Within a batch, the complexity of numerator and denominator are O(Bd) and O(BMd), respectively, where M is the number of users. And hence the total complexity of both user and item side per epoch is O(|E|d(2+|V|)). Therefore, the time complexity of the whole training phase is O(|E|d(2+|V|)s). An alternative to reduce the time complexity is treating only the users (or the items) within the batch as negative samples[6,49], resulting in total time complexity of O(|E|d(2+2B)s)” (Wu, p. 730, col. 1). Wu discloses a linearly increasing time complexity, which is more efficiency as opposed to other time complexities such as those with exponential growths.
Claim 13 is rejected under 35 U.S.C. 103 as being unpatentable over Xie in view of Jiao, and further in view of Wang as applied to claim 1 above, and further in view of Li et al. ("Deeper Insights into Graph Convolutional Networks for Semi-Supervised Learning"), hereinafter Li.
Regarding Claim 13:
As discussed above, Xie in view of Jiao, further in view of Wang teach [the] method of claim 1, but do not explicitly disclose:
wherein selecting the plurality of positive samples through random walks along the one or more paths of the encoded graph comprises using a biased second order random walk through the encoded graph to obtain the plurality of positive samples
However, in the same field, analogous art Li teaches:
wherein selecting the plurality of positive samples through random walks along the one or more paths of the encoded graph comprises using a biased second order random walk through the encoded graph to obtain the plurality of positive samples
Li, p. 3542, “We choose to use the partially absorbing random walks (ParWalks) (Wu et al. 2012) as our random walk model. A partially absorbing random walk is a second-order Markov chain with partial absorption at each state.”
Li discloses second-order Markov chain with partial absorption at each state [using a biased second order random walk through the encoded graph to obtain the plurality of positive samples].
Xie, Jiao, Wang, Li, and the instant application are analogous art because they are all directed to graph learning.
It would have been obvious to a person of ordinary skill in the art before the effective filing date of the claimed invention to modify Xie, Jiao, and Wang with Li in order to robustly capture the global structure. “It was shown in (Wu, Li, and Chang 2013) that with proper absorption settings, the absorption probabilities can well capture the global graph structure. Importantly, the absorption probabilities can be computed in a closed-form by solving a simple linear system, and can be fast approximated by random walk sampling or scaled up on top of vertex-centric graph engines (Guo et al. 2017)” (Li, p. 3542, col. 2).
Claim 17 is rejected under 35 U.S.C. 103 as being unpatentable over Xie in view of Jiao, and further in view of Wang as applied to claim 1 above, and further in view of Zhu et al. ("Android Malware Detection using Large-scale Network Representation Learning"), hereinafter Zhu.
Regarding Claim 17:
As discussed above, Xie in view of Jiao, further in view of Wang teach [the] method of claim 1, but do not explicitly disclose:
wherein the method is carried out by a single virtual machine
However, in the same field, analogous art Zhu teaches:
wherein the method is carried out by a single virtual machine
Zhu, p. 2, col. 1, “The application in Android system are written in Java and executed within a custom Java virtual machine, and each application package is contained in a jar file with the extension of apk.”
Zhu discloses carrying out their program application in a Java virtual machine [the method is carried out by a single virtual machine].
Xie, Jiao, Wang, Zhu, and the instant application are analogous art because they are all directed to graph learning.
It would have been obvious to a person of ordinary skill in the art before the effective filing date of the claimed invention to modify Xie, Jiao, and Wang, with Zhu to use a VM to increase robustness. “We firstly introduce some background of Android system and the components in Android application files (known as apk files). The application in Android system are written in Java and executed within a custom Java virtual machine, and each application package is contained in a jar file with the extension of apk. Each Android application consists of many components of different types. These components are the essential building blocks of an Android application. Each component is an entry point through which the system or a user can enter your application and applications interact via components. Therefore, it is essential to analyze the component API for security concerns” (Zhu, p. 2, col. 1). The use of the virtual machine allows users to run/test software of various specifications.
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure in relation to claims 10 and 22:
Wang, Yanbang et al. (“Generic Representation Learning for Dynamic Social Interaction”), hereinafter Wang, Y., discloses a normalized adjacency matrix on p. 2, col. 1, “Graph 𝐺 is associated with adjacency matrix
A
∈
R
N
×
N
…We assume the components of 𝐴 are normalized within interval [0,1].” Wang, Y. also discloses a k-hop network diffusion matrix on p. 2, col. 2, “We propose using network diffusion process to most intuitively mode the information flows carried by interactive behaviors in our dynamic network: given people’s personal traits in a certain snapshot quantified by node attributes
X
0
∈
R
N
×
M
, the k-hope network diffusion can be written as
X
k
=
W
T
k
X
0
where
W
T
is the transpose of
W
.”
Peng et al. (“Self-Supervised Graph Representation Learning via Global Context Prediction”), hereinafter Peng, discloses using an encoder and graph-structured data to learn the representations such as k-hops.
PNG
media_image1.png
410
839
media_image1.png
Greyscale
Any inquiry concerning this communication or earlier communications from the examiner should be directed to STEVEN PHUNG whose telephone number is (703) 756-1499. The examiner can normally be reached Monday-Thursday: 9:00AM-4:00PM ET.
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, KAMRAN AFSHAR can be reached at (571) 272-7796. 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.
/STEVEN PHUNG/Examiner, Art Unit 2125
/KAMRAN AFSHAR/Supervisory Patent Examiner, Art Unit 2125