Methods, systems, and computer program products for providing framework to improve identification of graph features by graph neural network
By calculating the distance between node embeddings and determining consistency and alignment metrics, generating graph features and training graph neural networks, the problem that GNN cannot detect entity relationships in deep node representations is solved, achieving better graph feature identification capabilities and robustness to perturbations.
Patent Information
- Application Number
- CN202380072666.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2022-10-12
- Filing Date
- 2023-10-09
- Publication Date
- 2025-06-06
AI Technical Summary
Graph neural networks (GNNs) may not detect relationships between entities in deeper node representations and lack discrimination capabilities of graph features, especially when performance is degraded when adding perturbations to graph data.
By receiving the graph dataset, the distance between node embeddings is calculated, the consistency metrics of the dataset and the alignment metrics of the node embedding groups are determined, a set of graph features is generated, and the graph neural network is trained based on these features to improve its ability to identify graph features.
The ability of graph neural network to identify graph features is improved, the dimension shrinkage of node representation is avoided, the ability to detect entity relationships is enhanced, and good performance is maintained in the presence of perturbations.
Smart Images

Figure CN120112914A_ABST
Abstract
Description
[0001] Cross-reference to related applications
[0002] This application claims the benefit of U.S. Provisional Application No. 63 / 415,373, filed on October 12, 2022, the disclosure of which is incorporated herein by reference in its entirety. Technical Field
[0003] The present disclosure relates generally to graph neural networks, and in some non-limiting embodiments or aspects, to methods, systems, and computer program products for enhancing the distribution of graph feature embeddings in an embedding space to improve identification of graph features by a graph neural network (GNN). Background Art
[0004] Some machine learning models, such as neural networks (e.g., convolutional neural networks), may receive an input data set including data points for training. After training the neural network, each data point in the training data set may have a different impact on a neural network generated based on the training neural network (e.g., the trained neural network). In some cases, the input data sets designed for the neural network may be independent and identically distributed. The independent and identically distributed input data sets can be used to determine the effect (e.g., impact) of each data point of the input data set.
[0005] A graph neural network (GNN) is designed to receive graph data (e.g., graph data representing a graph), and the graph data may include nodes and edges. A GNN may include a graph embedding (e.g., embedding of node data about a graph, embedding of edge data about a graph, etc.), which provides a low-dimensional feature vector representation of a node in the GNN such that some properties of the GNN are preserved. A GNN may be used to determine relationships between entities (e.g., hidden relationships).
[0006] However, as the node representation progresses to deeper layers of the GNN in the form of graph embeddings, the node representations may converge to have the same value. In this way, the GNN may fail to detect the relationship between entities. In addition, adding perturbations to the original graph data used to generate the GNN may cause the performance of the GNN to degrade in terms of accuracy, training time, etc. Summary of the invention
[0007] Therefore, an object of the presently disclosed subject matter is to provide methods, systems, and computer program products for enhancing the distribution of graph feature embeddings in an embedding space to improve the process of identifying graph features by a graph neural network, which overcomes some or all of the deficiencies noted above.
[0008] According to non-limiting embodiments or aspects, a system is provided, the system comprising: at least one processor programmed or configured to: receive a data set comprising graph data associated with a graph, the graph comprising a plurality of nodes and a plurality of edges, the graph data comprising a plurality of node embeddings associated with a number of nodes in the graph and node data associated with each node of the graph, wherein the node data comprises data associated with parameters of each node in the graph; calculate a distance between a first set of node embeddings in the plurality of node embeddings and a second set of node embeddings in the plurality of node embeddings in an embedding space, wherein the plurality of node embeddings are based on the node data associated with each node of the graph; determine a consistency metric for the data set, wherein the consistency metric is associated with a distribution metric of the plurality of node embeddings in the embedding space; determine a plurality of groups of node embeddings, each group in the plurality of groups of node embeddings comprising at least a portion of the plurality of node embeddings; determine an alignment metric for the plurality of groups of node embeddings, wherein the alignment metric is associated with a distribution metric of at least a portion of the node embeddings of each group in the plurality of groups of node embeddings; generate a set of graph features based on the consistency metric, the alignment metric, and the distance between the first set of node embeddings and the second set of node embeddings; and train a graph neural network (GNN) based on the set of graph features to provide a trained GNN.
[0009] In some non-limiting embodiments or aspects, the at least one processor may be further programmed or configured to validate the trained GNN based on at least a portion of the set of graph features.
[0010] In some non-limiting embodiments or aspects, when calculating the distance between a first set of node embeddings and a second set of node embeddings in the embedding space, the at least one processor may be programmed or configured to calculate the Euclidean distance between each first node embedding of the first set of node embeddings and each second node embedding of the second set of node embeddings to provide multiple Euclidean distances.
[0011] In some non-limiting embodiments or aspects, when determining a consistency metric for a data set, the at least one processor may be programmed or configured to determine the consistency metric for the data set based on the number of nodes in the graph and data associated with parameters of each node in the graph, wherein the consistency metric may be associated with the number of bits used to encode the first set of node embeddings and the second set of node embeddings.
[0012] In some non-limiting embodiments or aspects, when determining the multiple node embedding groups, the at least one processor may be programmed or configured to: determine the multiple node embedding groups based on a probability matrix comprising multiple rows and multiple columns, each group in the multiple node embedding groups comprising at least a portion of the multiple node embeddings, and each row of the probability matrix comprising multiple probability metrics, wherein each row of the probability matrix may correspond to one of the multiple nodes, and each column of the probability matrix corresponds to one of the multiple node embedding groups, and wherein each of the multiple probability metrics may represent the probability that the node will be assigned to the group based on the row and column of the probability matrix; and wherein, when determining an alignment metric for the multiple node embedding groups, the at least one processor may be programmed or configured to: determine the alignment metric based on the probability matrix, the number of nodes in the graph, and data associated with parameters of each node in the graph, wherein the alignment metric may be associated with the number of bits used to encode each group in the multiple node embedding groups.
[0013] In some non-limiting embodiments or aspects, the node data may include user data associated with multiple users and entity data associated with multiple entities, and wherein the first set of node embeddings may be based on the user data and the second set of node embeddings are based on the entity data.
[0014] In some non-limiting embodiments or aspects, when determining the multiple node embedding groups, the at least one processor may be programmed or configured to: use the adjacency matrix and the degree of each node in the multiple nodes to determine each group in the multiple node embedding groups based on the closest neighbors of the multiple nodes in the graph.
[0015] According to a non-limiting embodiment or aspect, a computer-implemented method is provided, comprising: receiving, using at least one processor, a data set comprising graph data associated with a graph, the graph comprising a plurality of nodes and a plurality of edges, the graph data comprising a plurality of node embeddings associated with a number of nodes in the graph and node data associated with each node of the graph, wherein the node data comprises data associated with parameters of each node in the graph; calculating, using at least one processor, a distance between a first set of node embeddings in the plurality of node embeddings and a second set of node embeddings in the plurality of node embeddings in an embedding space, wherein the plurality of node embeddings are based on the node data associated with each node of the graph; determining, using at least one processor, a consistency measure for the data set, wherein the consistency measure A consistency metric is associated with a distribution metric of the multiple node embeddings in an embedding space; using at least one processor to determine a plurality of node embedding groups, each group in the plurality of node embedding groups includes at least a portion of the multiple node embeddings; using at least one processor to determine an alignment metric for the multiple node embedding groups, wherein the alignment metric is associated with a distribution metric of at least a portion of the node embeddings of each group in the plurality of node embedding groups; using at least one processor to generate a set of graph features based on the consistency metric, the alignment metric, and the distance between the first set of node embeddings and the second set of node embeddings; and using at least one processor to train a graph neural network (GNN) based on the set of graph features to provide a trained GNN.
[0016] In some non-limiting embodiments or aspects, a computer-implemented method may include validating, with at least one processor, the trained GNN based on at least a portion of the set of graph features.
[0017] In some non-limiting embodiments or aspects, calculating the distance between a first set of node embeddings and a second set of node embeddings in the embedding space may include calculating the Euclidean distance between each first node embedding of the first set of node embeddings and each second node embedding of the second set of node embeddings to provide a plurality of Euclidean distances.
[0018] In some non-limiting embodiments or aspects, determining a consistency metric for a data set may include determining a consistency metric for the data set based on a number of nodes in a graph and data associated with a parameter of each node in the graph, wherein the consistency metric may be associated with a number of bits used to encode a first set of node embeddings and a second set of node embeddings.
[0019] In some non-limiting embodiments or aspects, determining the multiple node embedding groups may include: determining the multiple node embedding groups based on a probability matrix comprising multiple rows and multiple columns, each group in the multiple node embedding groups comprising at least a portion of the multiple node embeddings, and each row of the probability matrix comprising multiple probability metrics, wherein each row of the probability matrix may correspond to one of the multiple nodes, and each column of the probability matrix corresponds to one of the multiple node embedding groups, and wherein each of the multiple probability metrics may represent the probability that a node will be assigned to the group based on the row and column of the probability matrix; and wherein determining an alignment metric for the multiple node embedding groups may include: determining an alignment metric based on the probability matrix, the number of nodes in the graph, and data associated with parameters of each node in the graph, wherein the alignment metric may be associated with the number of bits used to encode each group in the multiple node embedding groups.
[0020] In some non-limiting embodiments or aspects, the node data may include user data associated with multiple users and entity data associated with multiple entities, and wherein the first set of node embeddings may be based on the user data and the second set of node embeddings are based on the entity data.
[0021] In some non-limiting embodiments or aspects, determining the plurality of node embedding groups may include determining each of the plurality of node embedding groups based on the closest neighbors of the plurality of nodes in the graph using an adjacency matrix and the degree of each of the plurality of nodes.
[0022] According to a non-limiting embodiment or aspect, a computer program product is provided, comprising at least one non-transitory computer-readable medium, the at least one non-transitory computer-readable medium comprising one or more instructions, the one or more instructions, when executed by at least one processor, causes the at least one processor to: receive a data set comprising graph data associated with a graph, the graph comprising a plurality of nodes and a plurality of edges, the graph data comprising a plurality of node embeddings associated with a number of nodes in the graph and node data associated with each node of the graph, wherein the node data comprises data associated with a parameter of each node in the graph; calculate distances between a first set of node embeddings in the plurality of node embeddings and a second set of node embeddings in the plurality of node embeddings in an embedding space, wherein the plurality of node embeddings are Point embedding is based on node data associated with each node of a graph; determining a consistency metric for the data set, wherein the consistency metric is associated with a distribution metric of the multiple node embeddings in an embedding space; determining multiple groups of node embeddings, each group in the multiple groups of node embeddings including at least a portion of the multiple node embeddings; determining an alignment metric for the multiple groups of node embeddings, wherein the alignment metric is associated with a distribution metric of at least a portion of the node embeddings of each group in the multiple groups of node embeddings; generating a set of graph features based on the consistency metric, the alignment metric, and a distance between the first set of node embeddings and the second set of node embeddings; and training a graph neural network (GNN) based on the set of graph features to provide a trained GNN.
[0023] In some non-limiting embodiments or aspects, the one or more instructions may further cause the at least one processor to validate the trained GNN based on at least a portion of the set of graph features.
[0024] In some non-limiting embodiments or aspects, the one or more instructions that cause the at least one processor to calculate distances between a first set of node embeddings and a second set of node embeddings in an embedding space may cause the at least one processor to calculate the Euclidean distance between each first node embedding of the first set of node embeddings and each second node embedding of the second set of node embeddings to provide multiple Euclidean distances.
[0025] In some non-limiting embodiments or aspects, the one or more instructions that cause the at least one processor to determine a consistency metric for the data set may cause the at least one processor to determine a consistency metric for the data set based on the number of nodes in the graph and data associated with a parameter of each node in the graph, wherein the consistency metric may be associated with the number of bits used to encode the first set of node embeddings and the second set of node embeddings.
[0026] In some non-limiting embodiments or aspects, the one or more instructions that cause the at least one processor to determine the multiple node embedding groups may cause the at least one processor to: determine the multiple node embedding groups based on a probability matrix comprising multiple rows and multiple columns, each group in the multiple node embedding groups comprising at least a portion of the multiple node embeddings, and each row of the probability matrix comprising multiple probability metrics, wherein each row of the probability matrix may correspond to one of the multiple nodes, and each column of the probability matrix corresponds to one of the multiple node embedding groups, and wherein each of the multiple probability metrics may represent the probability that a node will be assigned to the group based on the row and column of the probability matrix; and wherein the one or more instructions that cause the at least one processor to determine an alignment metric for the multiple node embedding groups may cause the at least one processor to: determine an alignment metric based on the probability matrix, the number of nodes in the graph, and data associated with parameters of each node in the graph, wherein the alignment metric may be associated with the number of bits used to encode each group in the multiple node embedding groups.
[0027] In some non-limiting embodiments or aspects, the one or more instructions that cause the at least one processor to determine the plurality of node embedding groups may cause the at least one processor to determine each of the plurality of node embedding groups based on the closest neighbors of the plurality of nodes in the graph using an adjacency matrix and the degree of each of the plurality of nodes.
[0028] Additional embodiments or aspects are set forth in the following numbered clauses:
[0029] Item 1: A system comprising: at least one processor, the at least one processor being programmed or configured to: receive a data set comprising graph data associated with a graph, the graph comprising a plurality of nodes and a plurality of edges, the graph data comprising a plurality of node embeddings associated with a number of nodes in the graph and node data associated with each node of the graph, wherein the node data comprises data associated with parameters of each node in the graph; calculate a distance between a first set of node embeddings in the plurality of node embeddings and a second set of node embeddings in the plurality of node embeddings in an embedding space, wherein the plurality of node embeddings are based on the node data associated with each node of the graph; determine a consistency metric for the data set, wherein the consistency metric is associated with a distribution metric of the plurality of node embeddings in the embedding space; determine a plurality of groups of node embeddings, each group in the plurality of groups of node embeddings comprising at least a portion of the plurality of node embeddings; determine an alignment metric for the plurality of groups of node embeddings, wherein the alignment metric is associated with a distribution metric of at least a portion of the node embeddings of each group in the plurality of groups of node embeddings; generate a set of graph features based on the consistency metric, the alignment metric, and the distance between the first set of node embeddings and the second set of node embeddings; and train a graph neural network (GNN) based on the set of graph features to provide a trained GNN.
[0030] Clause 2: The system of clause 1, wherein the at least one processor is further programmed or configured to: validate the trained GNN based on at least a portion of the set of graph features.
[0031] Clause 3: A system according to clause 1 or 2, wherein, when calculating the distance between a first set of node embeddings and a second set of node embeddings in the embedding space, the at least one processor is programmed or configured to calculate the Euclidean distance between each first node embedding of the first set of node embeddings and each second node embedding of the second set of node embeddings to provide multiple Euclidean distances.
[0032] Clause 4: A system according to any one of clauses 1-3, wherein, when determining a consistency metric for a data set, the at least one processor is programmed or configured to: determine the consistency metric for the data set based on the number of nodes in the graph and data associated with parameters of each node in the graph, wherein the consistency metric is associated with the number of bits used to encode the first set of node embeddings and the second set of node embeddings.
[0033] Clause 5: A system according to any one of clauses 1-4, wherein, when determining the multiple node embedding groups, the at least one processor is programmed or configured to: determine the multiple node embedding groups based on a probability matrix comprising multiple rows and multiple columns, each group in the multiple node embedding groups comprises at least a portion of the multiple node embeddings, and each row of the probability matrix comprises multiple probability metrics, wherein each row of the probability matrix corresponds to one of the multiple nodes, and each column of the probability matrix corresponds to one of the multiple node embedding groups, and wherein each of the multiple probability metrics represents the probability that the node will be assigned to the group based on the row and column of the probability matrix; and wherein, when determining an alignment metric for the multiple node embedding groups, the at least one processor is programmed or configured to: determine the alignment metric based on the probability matrix, the number of nodes in the graph, and data associated with parameters of each node in the graph, wherein the alignment metric is associated with the number of bits used to encode each group in the multiple node embedding groups.
[0034] Clause 6: A system as described in any of clauses 1-5, wherein the node data includes user data associated with multiple users and entity data associated with multiple entities, and wherein the first set of node embeddings is based on the user data and the second set of node embeddings is based on the entity data.
[0035] Clause 7: A system according to any one of clauses 1-6, wherein, when determining the multiple node embedding groups, the at least one processor is programmed or configured to: use an adjacency matrix and the degree of each of the multiple nodes to determine each of the multiple node embedding groups based on the closest neighbors of the multiple nodes in the graph.
[0036] Clause 8: A computer-implemented method comprising: receiving, using at least one processor, a data set comprising graph data associated with a graph, the graph comprising a plurality of nodes and a plurality of edges, the graph data comprising a plurality of node embeddings associated with a number of nodes in the graph and node data associated with each node of the graph, wherein the node data comprises data associated with a parameter of each node in the graph; calculating, using at least one processor, a distance between a first set of node embeddings in the plurality of node embeddings and a second set of node embeddings in the plurality of node embeddings in an embedding space, wherein the plurality of node embeddings are based on the node data associated with each node of the graph; determining, using at least one processor, a consistency metric for the data set, wherein the consistency metric is related to The invention relates to a method for generating a graph feature comprising: associating a distribution metric of the multiple node embeddings in an embedding space; determining, using at least one processor, a plurality of node embedding groups, each group in the plurality of node embedding groups including at least a portion of the multiple node embeddings; determining, using at least one processor, an alignment metric of the multiple node embedding groups, wherein the alignment metric is associated with a distribution metric of at least a portion of the node embeddings of each group in the plurality of node embedding groups; generating, using at least one processor, a set of graph features based on the consistency metric, the alignment metric, and a distance between the first set of node embeddings and the second set of node embeddings; and training a graph neural network (GNN) based on the set of graph features to provide a trained GNN.
[0037] Clause 9: The computer-implemented method of clause 8, further comprising: validating, with at least one processor, the trained GNN based on at least a portion of the set of graph features.
[0038] Clause 10: A computer-implemented method according to clause 8 or 9, wherein calculating the distance between the first set of node embeddings and the second set of node embeddings in the embedding space includes: calculating the Euclidean distance between each first node embedding in the first set of node embeddings and each second node embedding in the second set of node embeddings to provide multiple Euclidean distances.
[0039] Clause 11: A computer-implemented method according to any of clauses 8-10, wherein determining a consistency metric for the data set comprises: determining a consistency metric for the data set based on the number of nodes in the graph and data associated with a parameter of each node in the graph, wherein the consistency metric is associated with the number of bits used to encode the first set of node embeddings and the second set of node embeddings.
[0040] Clause 12: A computer-implemented method according to any one of clauses 8-11, wherein determining the multiple node embedding groups comprises: determining the multiple node embedding groups based on a probability matrix comprising multiple rows and multiple columns, each group in the multiple node embedding groups comprising at least a portion of the multiple node embeddings, and the rows of the probability matrix comprising multiple probability metrics, wherein each row of the probability matrix corresponds to one of the multiple nodes, and each column of the probability matrix corresponds to one of the multiple node embedding groups, and wherein each of the multiple probability metrics represents the probability that a node will be assigned to the group based on the row and column of the probability matrix; and wherein determining an alignment metric for the multiple node embedding groups comprises: determining the alignment metric based on the probability matrix, the number of nodes in the graph, and data associated with parameters of each node in the graph, wherein the alignment metric is associated with the number of bits used to encode each group in the multiple node embedding groups.
[0041] Clause 13: A computer-implemented method according to any of clauses 8-12, wherein the node data includes user data associated with multiple users and entity data associated with multiple entities, and wherein the first set of node embeddings is based on the user data and the second set of node embeddings is based on the entity data.
[0042] Clause 14: A computer-implemented method according to any of clauses 8-13, wherein determining the multiple node embedding groups includes using an adjacency matrix and the degree of each node in the multiple nodes to determine each group in the multiple node embedding groups based on the closest neighbors of the multiple nodes in the graph.
[0043] Clause 15: A computer program product comprising at least one non-transitory computer-readable medium, the at least one non-transitory computer-readable medium comprising one or more instructions that, when executed by at least one processor, cause the at least one processor to: receive a data set comprising graph data associated with a graph, the graph comprising a plurality of nodes and a plurality of edges, the graph data comprising a plurality of node embeddings associated with a number of nodes in the graph and node data associated with each node of the graph, wherein the node data comprises data associated with a parameter of each node in the graph; calculate a distance between a first set of node embeddings in the plurality of node embeddings and a second set of node embeddings in the plurality of node embeddings in an embedding space, wherein the plurality of node embeddings are based on node data associated with each node of a graph; determining a consistency metric for the data set, wherein the consistency metric is associated with a distribution metric of the plurality of node embeddings in an embedding space; determining a plurality of groups of node embeddings, each group in the plurality of groups of node embeddings including at least a portion of the plurality of node embeddings; determining an alignment metric for the plurality of groups of node embeddings, wherein the alignment metric is associated with a distribution metric of at least a portion of the node embeddings of each group in the plurality of groups of node embeddings; generating a set of graph features based on the consistency metric, the alignment metric, and a distance between the first set of node embeddings and the second set of node embeddings; and training a graph neural network (GNN) based on the set of graph features to provide a trained GNN.
[0044] Clause 16: The computer program product of clause 15, wherein the one or more instructions further cause the at least one processor to: validate the trained GNN based on at least a portion of the set of graph features.
[0045] Clause 17: A computer program product according to clause 15 or 16, wherein the one or more instructions that cause the at least one processor to calculate the distance between a first set of node embeddings and a second set of node embeddings in an embedding space cause the at least one processor to: calculate the Euclidean distance between each first node embedding of the first set of node embeddings and each second node embedding of the second set of node embeddings to provide multiple Euclidean distances.
[0046] Clause 18: A computer program product according to any one of clauses 15-17, wherein the one or more instructions that cause the at least one processor to determine a consistency measure for the data set cause the at least one processor to: determine a consistency measure for the data set based on the number of nodes in the graph and data associated with parameters of each node in the graph, wherein the consistency measure is associated with the number of bits used to encode the first set of node embeddings and the second set of node embeddings.
[0047] Clause 19: A computer program product according to any one of clauses 15-18, wherein the one or more instructions that cause the at least one processor to determine the multiple node embedding groups, the at least one processor is programmed or configured to: determine the multiple node embedding groups based on a probability matrix comprising multiple rows and multiple columns, each group in the multiple node embedding groups comprising at least a portion of the multiple node embeddings, and each row of the probability matrix comprises multiple probability metrics, wherein each row of the probability matrix corresponds to one of the multiple nodes, and each column of the probability matrix corresponds to one of the multiple node embedding groups, and wherein each of the multiple probability metrics represents the probability that the node will be assigned to the group based on the row and column of the probability matrix; and wherein the one or more instructions that cause the at least one processor to determine an alignment metric for the multiple node embedding groups cause the at least one processor to: determine an alignment metric based on the probability matrix, the number of nodes in the graph, and data associated with parameters of each node in the graph, wherein the alignment metric is associated with the number of bits used to encode each group in the multiple node embedding groups.
[0048] Clause 20: A computer program product according to any one of clauses 15-19, wherein the one or more instructions that cause the at least one processor to determine the plurality of node embedding groups cause the at least one processor to determine each of the plurality of node embedding groups based on the closest neighbors of the plurality of nodes in the graph using an adjacency matrix and the degree of each of the plurality of nodes.
[0049] These and other features and characteristics of the presently disclosed subject matter, as well as methods of operation and function of the related structural elements and combinations of parts and economies of manufacturing will become more apparent after considering the following description and the appended claims with reference to the accompanying drawings, all of which form a part of this specification, wherein like reference numerals indicate corresponding parts in the various figures. It is to be expressly understood, however, that the drawings are for illustration and description purposes only and are not intended as definitions of the limitations of the disclosed subject matter. As used in this specification and claims, the singular forms "a", "an", and "the" include plural referents unless the context clearly dictates otherwise. BRIEF DESCRIPTION OF THE DRAWINGS
[0050] Additional advantages and details of the disclosed subject matter are explained in more detail below with reference to exemplary embodiments or aspects shown in the accompanying drawings, in which:
[0051] Figure 1 are diagrams of non-limiting embodiments or aspects of environments in which the methods, systems, and / or computer program products described herein may be implemented according to the principles of the presently disclosed subject matter;
[0052] Figure 2 is a diagram of a non-limiting embodiment or aspect of a graph learning system in accordance with the principles of the presently disclosed subject matter;
[0053] Figure 3 is a schematic diagram of a non-limiting embodiment or aspect of an embedding space on which an alignment function is applied in accordance with the principles of the presently disclosed subject matter;
[0054] Figure 4 is a schematic diagram of a non-limiting embodiment or aspect of an embedding space on which a consistency function is applied in accordance with the principles of the presently disclosed subject matter;
[0055] Figure 5 are diagrams of non-limiting embodiments or aspects of query systems in accordance with the principles of the presently disclosed subject matter;
[0056] Figure 6 is a flowchart of a non-limiting embodiment or aspect of a process for enhancing the distribution of graph feature embeddings in an embedding space to improve identification of graph features by a graph neural network (GNN) in accordance with the principles of the presently disclosed subject matter; and
[0057] Figure 7 yes Figure 1-Figure 2 and Figure 5 A diagram of a non-limiting embodiment or aspect of components of one or more devices. DETAILED DESCRIPTION
[0058] For the purpose of description below, the terms "end", "upper", "lower", "right", "left", "vertical", "horizontal", "top", "bottom", "lateral", "longitudinal" and their derivatives shall refer to the disclosed subject matter as it is oriented in the accompanying drawings. However, it should be understood that the disclosed subject matter can adopt various alternative variations and step sequences, unless expressly specified to the contrary. It should also be understood that the specific devices and processes shown in the drawings and described in the following specification are merely exemplary embodiments or aspects of the disclosed subject matter. Therefore, unless otherwise indicated, specific dimensions and other physical characteristics associated with the embodiments or aspects disclosed herein should not be considered as limiting.
[0059] The aspects, parts, elements, structures, actions, steps, functions, instructions, etc. used herein should not be understood as critical or necessary unless explicitly described as such. Moreover, as used herein, the article "one" is intended to include one or more items, and can be used interchangeably with "one or more" and "at least one". In addition, as used herein, the term "set" is intended to include one or more items (e.g., related items, unrelated items, a combination of related items and unrelated items, etc.), and can be used interchangeably with "one or more" or "at least one". In the case of wishing only one item, the term "one" or similar language is used. Moreover, as used herein, the term "having" and / or its analogs are intended to be open terms. In addition, unless otherwise explicitly stated, the phrase "based on" is intended to mean "based at least in part on".
[0060] As used herein, the term "account identifier" may include one or more types of identifiers associated with a user account (e.g., PAN, card number, payment card number, payment token, etc.). In some non-limiting embodiments or aspects, an issuing institution may provide an account identifier (e.g., PAN, payment token, etc.) to a user, which uniquely identifies one or more accounts associated with the user. The account identifier may be embodied on a physical financial instrument (e.g., a portable financial instrument, a payment card, a credit card, a debit card, etc.), and / or may be electronic information transmitted to a user so that the user can use it for electronic payments. In some non-limiting embodiments or aspects, the account identifier may be an original account identifier, wherein the original account identifier is provided to the user when the account associated with the account identifier is created. In some non-limiting embodiments or aspects, the account identifier may be an account identifier provided to the user after the original account identifier is provided to the user (e.g., a supplemental account identifier). For example, if the original account identifier is forgotten, stolen, etc., the supplemental account identifier may be provided to the user. In some non-limiting embodiments or aspects, the account identifier may be directly or indirectly associated with an issuing institution such that the account identifier may be a payment token mapped to a PAN or other type of identifier. The account identifier may be any combination of alphanumeric characters and / or symbols, etc. The issuing institution may be associated with a bank identification number (BIN) that uniquely identifies the issuing institution.
[0061] As used herein, the term "acquirer" may refer to an entity that is licensed by a transaction service provider and approved by the transaction service provider to initiate a transaction (e.g., a payment transaction) using a portable financial device associated with the transaction service provider. As used herein, the term "acquirer system" may also refer to one or more computer systems, computer devices, etc. operated by or on behalf of an acquirer. Transactions may include payment transactions (e.g., purchases, original credit transactions (OCTs), account funding transactions (AFTs), etc.). In some non-limiting embodiments or aspects, an acquirer may be authorized by a transaction service provider to sign a contract with a merchant or service provider to initiate a transaction using a portable financial device of a transaction service provider. The acquirer may sign a contract with a payment service provider to enable the payment service provider to provide initiation to the merchant. The acquirer may monitor the compliance of the payment service provider according to the transaction service provider regulations. The acquirer may conduct due diligence on the payment service provider and ensure that appropriate due diligence is conducted before signing a contract with the initiated merchant. The acquirer may be responsible for all transaction service provider plans operated or initiated by the acquirer. The acquirer may be responsible for the actions of the acquirer payment service provider, merchants initiated by the acquirer payment service provider, etc. In some non-limiting embodiments or aspects, the acquirer may be a financial institution, such as a bank.
[0062] As used herein, the terms "client" and "client device" may refer to one or more client-side devices or systems (e.g., remote from a transaction service provider) used to initiate or facilitate a transaction (e.g., a payment transaction). As an example, a "client device" may refer to one or more POS devices used by a merchant, one or more acquirer host computers used by an acquirer, one or more mobile devices used by a user, and the like. In some non-limiting embodiments or aspects, a client device may be an electronic device configured to communicate with one or more networks and initiate or facilitate a transaction. For example, a client device may include one or more computers, portable computers, laptop computers, tablet computers, mobile devices, cellular phones, wearable devices (e.g., watches, glasses, lenses, clothing, etc.), PDAs, and the like. In addition, a "client" may also refer to an entity (e.g., a merchant, an acquirer, etc.) that owns, utilizes, and / or operates a client device for initiating a transaction (e.g., for initiating a transaction with a transaction service provider).
[0063] As used herein, the terms "communication" and "transmission" may refer to the reception, acceptance, transmission, transfer, provision, etc. of information (e.g., data, signals, messages, instructions, commands, etc.). A unit (e.g., a device, a system, a component of a device or system, a combination thereof, etc.) communicating with another unit means that the unit is able to directly or indirectly receive information from the other unit and / or send information to the other unit. This may refer to a direct or indirect connection (e.g., a direct communication connection, an indirect communication connection, and / or the like) that is wired and / or wireless in nature. In addition, although the information sent may be modified, processed, relayed, and / or routed between the first unit and the second unit, the two units may also communicate with each other. For example, even if the first unit passively receives information and does not actively send information to the second unit, the first unit may communicate with the second unit. As another example, if at least one intermediate unit (e.g., a third unit located between the first unit and the second unit) processes the information received from the first unit and transmits the processed information to the second unit, the first unit may communicate with the second unit. In some non-limiting embodiments or aspects, a message may refer to a network packet (eg, a data packet, etc.) that includes data. It should be appreciated that many other arrangements are possible.
[0064] As used herein, the term "computing device" may refer to one or more electronic devices configured to process data. In some examples, a computing device may include the necessary components to receive, process, and output data, such as a processor, a display, a memory, an input device, a network interface, and / or the like. A computing device may be a mobile device. As an example, a mobile device may include a cellular phone (e.g., a smartphone or a standard cellular phone), a portable computer, a wearable device (e.g., a watch, glasses, lenses, clothing, and / or the like), a personal digital assistant (PDA), and / or other similar devices. A computing device may also be a desktop computer or other form of non-mobile computer.
[0065] As used herein, the term "server" may refer to or include one or more processors or computers, storage devices, or similar computer arrangements operated by or facilitating communication and processing by multiple parties in a network environment such as the Internet, but it should be understood that communications may be facilitated through one or more public or private network environments, and various other arrangements are possible. In addition, multiple computers (e.g., servers) or other computerized devices (e.g., POS devices) communicating directly or indirectly in a network environment may constitute a "system" such as a merchant's POS system.
[0066] As used herein, the terms "issuer institution," "portable financial device issuer," "issuer," or "issuer bank" may refer to one or more entities that provide accounts to customers for conducting transactions (e.g., payment transactions) (e.g., initiating credit and / or debit payments). For example, an issuer institution may provide customers with account identifiers, such as a primary account number (PAN), that uniquely identify one or more accounts associated with the customer. The account identifier may be implemented on a portable financial device, such as a physical financial instrument (e.g., a payment card), and / or may be electronic and used for electronic payments. The terms "issuer institution" and "issuer institution system" may also refer to one or more computer systems operated by or on behalf of the issuer institution, such as a server computer executing one or more software applications. For example, an issuer institution system may include one or more authorization servers for authorizing transactions.
[0067] As used herein, the term "merchant" may refer to one or more entities (e.g., operators of retail businesses that provide goods and / or services and / or access to goods and / or services to users (e.g., customers, consumers, customers of merchants, etc.) based on transactions (e.g., payment transactions). As used herein, the term "merchant system" may refer to one or more computer systems operated by or on behalf of a merchant, such as a server computer that executes one or more software applications. As used herein, the term "product" may refer to one or more goods and / or services provided by a merchant.
[0068] As used herein, the term "payment device" may refer to a payment card (e.g., a credit or debit card), a gift card, a smart card, smart media, a payroll card, a healthcare card, a wristband, a machine-readable medium containing account information, a key chain device or fob, an RFID transponder, a retailer discount or membership card, a cellular telephone, an electronic wallet mobile application, a personal digital assistant (PDA), a pager, a security card, a computer, an access card, a wireless terminal, a transponder, etc. In some non-limiting embodiments or aspects, a portable financial device may include volatile or non-volatile memory to store information (e.g., an account identifier, the name of an account holder, etc.).
[0069] As used herein, the term "payment gateway" may refer to an entity and / or a payment processing system operated by or on behalf of such an entity, which provides payment services (e.g., transaction service provider payment services, payment processing services, etc.) to one or more merchants (e.g., transaction service provider payment services, payment processing services, etc.) to one or more merchants. The payment service may be associated with the use of a portable financial device managed by a transaction service provider. As used herein, the term "payment gateway system" may refer to one or more computer systems, computer devices, servers, server groups, etc. operated by or on behalf of a payment gateway, and / or the payment gateway itself. As used herein, the term "payment gateway mobile application" may refer to one or more electronic devices and / or one or more software applications configured to provide payment services for a transaction (e.g., a payment transaction, an electronic payment transaction, etc.).
[0070] As used herein, a "point of sale (POS) device" may refer to one or more devices that may be used by a merchant to initiate a transaction (e.g., a payment transaction), participate in a transaction, and / or process a transaction. For example, a POS device may include one or more computers, peripheral devices, card readers, near field communication (NFC) receivers, radio frequency identification (RFID) receivers and / or other contactless transceivers or receivers, contact-based receivers, payment terminals, computers, servers, input devices, etc.
[0071] As used herein, a "point of sale (POS) system" may refer to one or more computers and / or peripheral devices that a merchant uses to conduct transactions. For example, a POS system may include one or more POS devices, and / or other similar devices that may be used to conduct payment transactions. A POS system (e.g., a merchant POS system) may also include one or more server computers that are programmed or configured to process online payment transactions via a web page, mobile application, or the like.
[0072] As used herein, the term "processor" may refer to any type of processing unit, such as a single processor having one or more cores, one or more cores of one or more processors, multiple processors each having one or more cores, and / or other arrangements and combinations of processing units.
[0073] As used herein, the term "system" may refer to one or more computing devices or combinations of computing devices (e.g., processors, servers, client devices, software applications, components of these devices, etc.). As used herein, references to "devices," "servers," "processors," and the like may refer to a previously stated device, server, or processor stated as performing a previous step or function, a different server or processor, and / or a combination of servers and / or processors. For example, as used in the specification and claims, a first server or first processor stated as performing a first step or a first function may refer to the same or different server or the same or different processor stated as performing a second step or a second function.
[0074] As used herein, the term "transaction service provider" may refer to an entity that receives transaction authorization requests from merchants or other entities and, in some cases, provides payment assurance through an agreement between the transaction service provider and an issuer organization. In some non-limiting embodiments or aspects, the transaction service provider may include a credit card company, a debit card company, etc. As used herein, the term "transaction service provider system" may also refer to one or more computer systems operated by or on behalf of the transaction service provider, such as a transaction processing server that executes one or more software applications. The transaction processing server may include one or more processors and, in some non-limiting embodiments or aspects, may be operated by or on behalf of the transaction service provider.
[0075] Non-limiting embodiments or aspects of the disclosed subject matter are directed to methods, systems, and computer program products for enhancing the distribution of graph feature embeddings in an embedding space to improve the identification of graph features by a graph neural network (GNN). In some non-limiting embodiments or aspects, a graph learning system may include at least one processor that is programmed or configured to receive a data set including graph data. For the data set, the system may determine a consistency metric for the data set, wherein the consistency metric is associated with a distribution metric of the multiple node embeddings in the embedding space. The system may also determine an alignment metric for the multiple node embedding groups, wherein the alignment metric is associated with a distribution metric of at least a portion of the node embeddings of each group in the multiple node embedding groups. Based on the measured consistency and alignment, the system may generate a set of graph features for training the GNN, thereby producing an improved trained GNN.
[0076] Therefore, the graph learning system of the present disclosure enables the generation of improved graph neural network (GNN) models. The graph learning system can provide a GNN that is trained so that node representations avoid converging to have the same value. In this way, the graph learning system can provide a GNN that can accurately detect relationships between entities and is generated using reduced computing resources. For example, in a non-limiting embodiment, generating a distribution of graph embeddings and using these distributions to train GNNs produces a trained GNN with improved performance (e.g., faster and more efficient), which can be used for collaborative filtering or other techniques to produce faster results while using fewer computing resources (e.g., processing cycles).
[0077] For purposes of illustration, in the following description, although the presently disclosed subject matter is described with respect to methods, systems, and computer program products for multi-task learning on time series data (e.g., for payment transactions), those skilled in the art will recognize that the disclosed subject matter is not limited to the non-limiting embodiments or aspects disclosed herein. For example, the methods, systems, and computer program products described herein can be used with various settings, such as multi-task learning on time series data using neural networks in any suitable setting, such as recommendation, prediction, regression, classification, fraud prevention, authorization, authentication, identification, feature selection, etc.
[0078] Reference Figure 1 , Figure 1 1 is a diagram of a non-limiting embodiment or aspect of an environment 100 in which the systems, computer program products, and / or methods described herein may be implemented. Figure 1 As shown, environment 100 includes a graph learning system 102, a transaction service provider system 104, a user device 106, and a communication network 108. Graph learning system 102, transaction service provider system 104, and / or user device 106 may be interconnected (e.g., connected to communicate) via a wired connection, a wireless connection, or a combination of a wired connection and a wireless connection.
[0079] The graph learning system 102 may include one or more devices configured to communicate with the transaction service provider system 104 and / or the user device 106 via the communication network 108. For example, the graph learning system 102 may include a server, a server group, and / or other similar devices. In some non-limiting embodiments or aspects, the graph learning system 102 may be associated with the transaction service provider system. For example, the graph learning system 102 may be operated by the transaction service provider system 104. In another instance, the graph learning system 102 may be a component of the transaction service provider system 104. In some non-limiting embodiments or aspects, the graph learning system 102 may communicate with a data storage device, which may be local or remote to the graph learning system 102. In some non-limiting embodiments or aspects, the graph learning system 102 is capable of receiving information from the data storage device, storing information in the data storage device, transmitting information to the data storage device, and / or searching for information stored in the data storage device.
[0080] The transaction service provider system 104 may include one or more devices configured to communicate with the graph learning system 102 and / or the user device 106 via the communication network 108. For example, the transaction service provider system 104 may include a computing device such as a server, a server group, and / or other similar devices. In some non-limiting embodiments or aspects, the transaction service provider system 104 may be associated with a transaction service provider.
[0081] The user device 106 may include a computing device configured to communicate with the graph learning system 102 and / or the transaction service provider system 104 via the communication network 108. For example, the user device 106 may include a computing device such as a desktop computer, a portable computer (e.g., a tablet computer, a laptop computer, etc.), a mobile device (e.g., a cellular phone, a smartphone, a personal digital assistant, a wearable device, etc.), and / or other similar devices. In some non-limiting embodiments or aspects, the user device 106 may be associated with a user (e.g., an individual operating the user device 106).
[0082] The communication network 108 may include one or more wired and / or wireless networks. For example, the communication network 108 may include a cellular network (e.g., a long term evolution (LTE) network, a third generation (3G) network, a fourth generation (4G) network, a fifth generation (5G) network, a code division multiple access (CDMA) network, etc.), a public land mobile network (PLMN), a local area network (LAN), a wide area network (WAN), a metropolitan area network (MAN), a telephone network (e.g., a public switched telephone network (PSTN)), a private network (e.g., a private network associated with a transaction service provider), an ad hoc network, an intranet, the Internet, a fiber-based network, a cloud computing network, etc., and / or a combination of these or other types of networks.
[0083] supply Figure 1 The number and arrangement of systems, devices, and / or networks shown are examples. Figure 1 There may be additional systems, devices, and / or networks, fewer systems, devices, and / or networks, different systems, devices, and / or networks, and / or systems, devices, and / or networks arranged in a different manner than those shown in FIG. Moreover, a single system or device may be implemented Figure 1 two or more systems or devices shown in, or Figure 1 A single system or device shown in the environment 100 may be implemented as multiple distributed systems or devices. Additionally or alternatively, a set of systems (e.g., one or more systems) and / or a set of devices (e.g., one or more devices) of the environment 100 may perform one or more functions described as being performed by another set of systems or another set of devices of the environment 100.
[0084] refer to Figure 2 , showing a non-limiting embodiment or aspect of a graph learning system 102 according to the principles of the presently disclosed subject matter. The graph learning system 102 may include a dataset database 110, a graph neural network 114, and a feature generator 116. Figure 2 The number and arrangement of systems and devices shown in the FIGURES are provided as examples. Figure 2 There may be additional systems and / or devices, fewer systems and / or devices, different systems and / or devices, and / or systems and / or devices arranged in a different manner than the systems and / or devices shown in the drawings. Furthermore, a single system and / or device may be implemented Figure 2 Two or more systems or devices shown in Figure 2 The single system or device shown in the figure may be implemented as multiple distributed systems or devices. In addition or alternatively, a group of systems (e.g., one or more systems) or a group of devices (e.g., one or more devices) of the graph learning system 102 can perform one or more functions described as being performed by another group of systems or another group of devices of the graph learning system 102.
[0085] The dataset database 110 may include one or more devices capable of receiving information from and / or transmitting information to the GNN 114 and / or feature generator 116 (e.g., directly via a wired or wireless communication connection, indirectly via a communication network, etc.). For example, the dataset database 110 may include a computing device, such as a server, a server group, and / or other similar devices. In some non-limiting embodiments or aspects, the dataset database 110 may include a data storage device.
[0086] The dataset database 110 may store at least one dataset. The dataset stored in the dataset database 110 may be represented by a graph 112 having a plurality of nodes and a plurality of edges.
[0087] In some non-limiting embodiments or aspects, dataset database 110 may store datasets that include transaction data associated with historical electronic payment transactions processed through an electronic payment network.
[0088] In some non-limiting embodiments or aspects, the dataset database 110 may store a plurality of datasets, including a first dataset including user data associated with a user and a second dataset including item (interchangeably referred to as entity) data associated with items with which the user may interact. The user data and item data may be used to form a bipartite graph that may be used to generate recommendations for a user about the types of items that may be of interest to them, for example, based on past user-item interactions of the user and other similar users determined by the GNN 114.
[0089] Although several specific types of datasets are described herein, it should be understood that these are merely exemplary and that other types of datasets may be used in accordance with the present disclosure depending on the desired application of the GNN 114.
[0090] Graph 112 may include multiple nodes and multiple edges representing data sets. Figure 2 The graph 112 shown in includes a plurality of nodes connected by a plurality of edges.
[0091] The dataset database 110 may also store graph data associated with the dataset. The graph data may include node data including data associated with parameters of each node in the graph 112. The graph data may include edge data including data associated with edges in the graph 112.
[0092] As a non-limiting example, each node may represent an electronic payment transaction processed through the electronic payment network, and the node data may correspond to parameters associated with the payment transaction. Parameters associated with the payment transaction may include (but are not limited to) transaction amount, transaction date, transaction time, payment device data (e.g., primary account number (PAN), expiration date, cvv code), merchant, merchant category code, transaction type (e.g., card present, card not present), purchased goods / services, data elements specified in ISO8583, and any other data associated with the electronic payment transaction, and combinations thereof.
[0093] As another non-limiting example, each node may represent a user and / or an item, and each edge may represent a relationship between one or more users (e.g., one or more nodes) and one or more items (e.g., one or more related nodes). In some non-limiting embodiments or aspects, the node data includes user data associated with a plurality of users and item data associated with a plurality of items, and the first set of node embeddings may be based on the user data, and the second set of node embeddings may be based on the item data.
[0094] The graph data stored in the dataset database 110 may include multiple node embeddings associated with several nodes in the graph 112. The graph data may include multiple edge embeddings associated with several edges in the graph 112. The node embeddings and / or edge embeddings may be generated by a machine learning model. For example, the GNN 114 may receive a dataset from the dataset database 110, and in response, may generate node embeddings and / or edge embeddings based on data from the dataset. In other non-limiting embodiments or aspects, a machine learning model separate from the GNN 114 (not shown) may generate node embeddings and / or edge embeddings based on data from the dataset.
[0095] GNN 114 may include one or more devices configured to receive data (e.g., graph 112 and / or other data) from the dataset database 110 and / or the output of the feature generator 116 and analyze the data to determine relationships between them. GNN 114 may include a data storage device to store data received by GNN 114 and / or to store data generated by GNN 114. In some non-limiting embodiments or aspects, the output of GNN 114 may be input to feature generator 116.
[0096] The feature generator 116 may receive a dataset comprising graph data (e.g., at least one of multiple node data for multiple nodes, multiple edge data for multiple edges, multiple node embeddings associated with nodes, and / or multiple edge embeddings associated with edges), and may receive or obtain the graph data, for example, from the dataset database 110 and / or the GNN 114.
[0097] The feature generator 116 may include one or more software applications and / or computing devices configured to receive data (e.g., graph 112, and / or other data from the dataset database 110 and / or the output of the GNN 114), and execute functions to determine and / or output parameters such as consistency and / or alignment associated with the dataset (as described below). The feature generator 116 may generate a set of graph features (e.g., one or more feature vectors) based on a consistency metric, an alignment metric, and a distance between a first set of node embeddings and a second set of node embeddings (as described below). The feature generator 116 may include a data storage device to store data received by the feature generator 116 and / or to store data generated by the feature generator 116. The output of the feature generator 116 may be input to the GNN 114 to train and improve the GNN 114.
[0098] refer to Figure 3 , shows a schematic diagram of a non-limiting embodiment or aspect of an embedding space in which an alignment function is applied as described herein. Figure 3 Nodes R1-R4 are shown arranged on the embedding space 118 before (left) and after (right) applying the alignment function. R1-R4 represent nodes with similar attributes and / or one or more identical attributes (e.g., parameters). Figure 3 As can be seen in , the application of the alignment function can make the nodes R1-R4 as close to each other as possible in the embedding space 118, while still preserving the properties about the individual nodes R1-R4 themselves.
[0099] refer to Figure 4 , showing a schematic diagram of a non-limiting embodiment or aspect of an embedding space in which a consistency function is applied as described herein. Figure 4 A first node group R1-R4 having similar attributes and / or one or more identical attributes (e.g., parameters) and a second node group S1-S4 having similar attributes and / or one or more identical attributes are shown, wherein the first node group R1-R4 is different from the second node group S1-S4. The first node group R1-R4 and the second node group S1-S4 are arranged on the embedding space 118 before (left) and after (right) applying the consistency function. Figure 4 As can be seen, application of the consistency function can cause nodes R1-R4 (and / or groups thereof) to be further away from distinct nodes S1-S4 (and / or groups thereof) in the embedding space 118 (e.g., as far as possible, or as far as determined based on the consistency function).
[0100] Reference again Figure 2In some non-limiting embodiments or aspects, in response to receiving the graph data, the feature generator 116 may determine (e.g., calculate) a distance between a first set of node embeddings among the plurality of node embeddings and a second set of node embeddings among the plurality of node embeddings in the embedding space.
[0101] Any suitable technique may be used to determine the distance between node embeddings. For example, the distance between a first set of node embeddings and a second set of node embeddings may be determined by calculating the Euclidean distance between each first node embedding of the first set of node embeddings and each second node embedding of the second set of node embeddings to provide a plurality of Euclidean distances.
[0102] Continue to refer Figure 2 In some non-limiting embodiments or aspects, the feature generator 116 may automatically determine a consistency metric for the received data set. The consistency metric may include a distribution metric of the plurality of node embeddings in an embedding space. The consistency metric may be determined by the feature generator 116 based on the number of nodes in the graph 112 and data associated with parameters of each node in the graph 112. The consistency metric may be associated with the number of bits used to encode the first set of node embeddings and the second set of node embeddings.
[0103] As a non-limiting example of determining the consistency of a data set including user data, the user representations of all user instances in a given batch are The coding rate can be defined as the number of binary bits used to encode Z, which can be estimated by the following equation (1):
[0104]
[0105] Where I is the identity matrix (e.g., an nxn square matrix with 1s on the main diagonal and 0s elsewhere), T represents the matrix transpose, N and d represent the length and dimension of the learned representation Z, and ∈ is the allowed reconstruction error (e.g., set to a heuristic value of 0.05). R(Z,∈) can be an indication of the compactness of the entire dataset.
[0106] As used herein, the encoding rate is a measure of the compactness of the representation over all data instances. A lower encoding rate corresponds to a more compact representation, while a higher encoding rate corresponds to a less compact representation. The reduction rate measures the difference in encoding rate between the entire data set and the sum of the encoding rates of all groups. A higher reduction rate represents a more easily identifiable representation between different groups and a more compact representation within the same group.
[0107] Continue to refer Figure 2In some non-limiting embodiments or aspects, the feature generator 116 may determine a plurality of groups of node embeddings, and each group includes at least a portion of the plurality of node embeddings received by the feature generator 116 .
[0108] Any suitable technique may be used to determine the plurality of node embedding groups.
[0109] For example, the feature generator 116 may determine the plurality of node embedding groups based on a probability matrix comprising a plurality of rows and a plurality of columns. Each group in the plurality of node embedding groups may include at least a portion of the plurality of node embeddings. Each row of the probability matrix may include a plurality of probability metrics, wherein each row of the probability matrix corresponds to one of the plurality of nodes, and each column of the probability matrix corresponds to one of the plurality of node embedding groups. Each of the plurality of probability metrics may represent the probability that a node will be assigned to the group based on the row and column of the probability matrix.
[0110] For example, the feature generator 116 may use the adjacency matrix and the degree of each of the plurality of nodes to determine the plurality of node embedding groups based on the closest neighbors of the plurality of nodes in the graph 112. It should be appreciated that the plurality of node embedding groups may be determined using one or more node clustering algorithms.
[0111] Continue to refer Figure 2 In some non-limiting embodiments or aspects, the feature generator 116 may automatically determine an alignment metric for the plurality of node embedding groups. The alignment metric may be associated with a distribution metric of a portion of the node embeddings for each of the plurality of node embedding groups. As a non-limiting example of determining the alignment of the plurality of node embedding groups, the feature generator 116 may determine the alignment metric based on a probability matrix, a number of nodes in the graph, and data associated with a parameter of each node in the graph. The alignment metric may be associated with a number of bits used to encode each of the plurality of node embedding groups.
[0112] As a non-limiting example of determining the alignment of the plurality of node embedding groups, for a dataset comprising user data, given a user representation Assume that the representation can be divided into a probability matrix Specifically, π ik ∈[0,1] can indicate that the instance x is assigned to the subset k i The probability of , and for any i∈[N], The membership matrix of subset k can be defined as And the membership matrix of all groups is expressed as π = {π k|k=[K]}. Therefore, the coding rate of the entire data set can be equal to the sum of the coding rates of each subset, as shown in equation (2):
[0113]
[0114] R c (Z,∈|π) may be a representation of the compactness of the group. The component tr() may be a tracking operator.
[0115] The rate reduction for representation learning can be determined according to the following equation (3):
[0116] ΔR(Z,∏,∈)=R(Z,∈)-R c (Z,∈|∏). (3)
[0117] Thus, rate reduction can be a composite of a consistency metric and an alignment metric. The learned representations can be distinct in order to distinguish instances from different groups. For example, i) the coding rate of the entire dataset can be as large as possible to encourage distinct representations; and ii) the representations of different groups should span different subspaces and be compressed within a small volume in each subspace. Thus, a good representation achieves a larger rate reduction ratio (e.g., the difference between the coding rate of the dataset and the sum of the coding rates of all groups). The rate reduction can be monotonic with respect to the norm of the representation Z, so the scale of the learned features can be normalized (e.g., each z in Z is 1). i can be normalized).
[0118] The membership matrix (π) may be designed using any suitable technique.
[0119] In some non-limiting embodiments or aspects, the membership matrix can be assembled based on the adjacency matrix to enforce connected nodes to have similar representations by projecting node i and its neighbors as groups and mapping them to the same subspace. The adjacency matrix can be in is the neighbor indicator vector of node i. The membership matrix can be assigned to the node group as With membership matrix A i The coding rate of the group represented by the node can be shown as equation (4):
[0120]
[0121] Therefore, for all nodes in the graph, the set of membership matrices will be because in is the degree matrix, and d i is the degree of node i. Different groups of nodes may overlap and may be counted multiple times, so we have the average degree of all nodes The coding rates of the node representations of the group can be normalized. Therefore, the sum of the coding rates of the node representations of each group can be determined according to equation (5):
[0122]
[0123] Where N is the total number of nodes in the graph, is the average degree of the nodes, and is the set of membership matrices.
[0124] In some non-limiting embodiments or aspects, the membership matrix can be determined by deep clustering using graph topology. To predict cluster labels, a fully connected network can be used as a classifier. A multi-layer perceptron (MLP) can take node embeddings E as input and predict the correct labels on top of these embeddings. For classification problems with deterministic labels, the following optimization in equation (6) can be solved:
[0125]
[0126] where (p(y|v i )=softmax(MLP(e i )) is the node v i Considering that cluster assignment can be relaxed to a probability distribution, Equation (6) can be implemented as two distributions q(y|v i ) and p(y|v i ) (see Equation (7)):
[0127]
[0128] where q(y|v i )=c iy is the cluster assignment. When q(y|v i ) is deterministic, minimizing equation (7) is equivalent to solving equation (6).
[0129] Using this formula, given the current cluster assignments, the model parameters can be updated by minimizing the cross entropy between q and p. When updating the cluster assignments, the assignment that minimizes equation (7) can be optimized based on the current predicted distribution p. This can be formulated as an optimal transportation problem, where The entry p iy = -log(p(y|v i )) as the cost matrix. The matrix C can be the elements of the transport polyhedron given by formula (8):
[0130]
[0131] in and It corresponds to the constraint of equal division, and the solution should minimize the cost according to formula (9)
[0132] min<C,P> (9)
[0133] This problem can be solved in near-linear time using the Sinkhorn-Knopp matrix scaling algorithm, and the optimal solution C can be used as π in equation (2).
[0134] Continue to refer Figure 2 In some non-limiting embodiments or aspects, the feature generator 116 may generate a set of graph features based on the consistency metric, the alignment metric, and the distance between the first set of node embeddings and the second set of node embeddings. The set of graph features may be determined according to the following equation (10):
[0135]
[0136] In equation (10), γ may be a weight that controls the degree of consistency desired, which may depend on the characteristics of the data set.
[0137] In equation (10), l can be calculated based on the intra-batch pairwise distance between the first set of node embeddings and the second set of node embeddings. align Using batch instances can provide a consistent distribution with the actual data (e.g., the distribution of users (p users ) and the distribution of items (p items ))More consistent align , which can reduce the bias of the recommender system.
[0138] In some non-limiting embodiments or aspects, l can be determined according to the following equation (11): align :
[0139]
[0140] The set of graph features described above can be generated using input that only includes a batch of positive user-item pairs, and may not require additional negative samples to distinguish between positive and negative interactions.
[0141] Continue to refer Figure 2, the determined set of graph features generated by the feature generator 116 as described herein may be input to the GNN 114 to train and / or further train the GNN 114. The input of the set of graph features used to train the GNN 114 may improve the GNN 114 by producing a GNN 114 that generates more accurate outputs (e.g., predictions, recommendations, etc.) and a GNN that generates the accurate outputs more efficiently and uses fewer processing resources. The GNN 114 trained on the output from the feature generator 116 may also avoid the dimensionality shrinkage phenomenon exhibited by many existing systems. In fact, the GNN 114 trained as described herein may include representations of positively correlated user-item pairs that are close to each other, while each representation also retains as much information about the user / item itself as possible.
[0142] The GNN 114 trained using the set of graph features may be validated using a validation dataset separate from the training dataset used to train the GNN 114. The validation dataset may be input to the GNN 114, and any suitable technique may be used to evaluate the performance of the trained GNN 114. For example, the Recall@K metric may be applied to evaluate the performance of the trained GNN 114 on the validation dataset.
[0143] refer to Figure 5 , showing a query system 120 according to a non-limiting embodiment or aspect of the presently disclosed subject matter. The query system 120 may include a GNN 114 trained as described herein. The GNN 114 may receive a query, process the query, and automatically generate and transmit an output to the query. The query system 120 may be used as a recommendation system using the GNN 114, where the output includes predictions and / or recommendations in response to the query input.
[0144] In some non-limiting embodiments or aspects, the query system 120 may receive a query regarding whether an electronic payment transaction is fraudulent, and the GNN 114 (trained based on historical electronic payment transaction data) may generate an output predicting whether the electronic payment transaction is fraudulent. For example, the transaction service provider system 104 (see Figure 1) (and / or the issuer's issuer system, and / or the merchant's merchant system, and / or the acquirer's acquirer system involved in processing the transaction) can query GNN114. Parameters of the electronic payment transaction that is the object of the query can be input into GNN 114, and GNN 114 can automatically generate an output predicting whether the electronic payment transaction is fraudulent based on the parameters of the electronic payment transaction. The output from GNN 114 can be used by a payment network (e.g., including at least one of the transaction service provider system 104, the issuer system, the merchant system, and the acquirer system) to process the transaction (or terminate its processing). For example, in response to the GNN 114 output that the transaction is not fraudulent, the transaction can be automatically authorized, or in response to the GNN 114 output that the transaction is fraudulent, the transaction can be automatically rejected.
[0145] In some non-limiting embodiments or aspects, the query system 120 may include a recommendation system for recommending at least one item to a user. For example, the recommendation system may generate recommendations for items that the user may be interested in purchasing, viewing, going to, experiencing, or that the user may otherwise be interested in participating in. The query to the GNN 114 may include an identification of a user and / or parameters associated with the user. The GNN 114 may be trained based on data of other users and data of items and / or interactions therebetween. Based on the input identifying the user, the GNN 114 may automatically generate an output. The output may include at least one recommended item for the subject user. The GNN 144 may transmit the output to the user device 106 of the user (see Figure 1 ) so that the user device 106 displays the at least one recommended item to the user.
[0146] Reference now Figure 6 , Figure 6 It is a flowchart of a non-limiting embodiment or aspect of a process 600 for enhancing the distribution of graph feature embeddings in an embedding space to improve the recognition of graph features by a graph neural network (GNN). In some non-limiting embodiments or aspects, one or more steps of the process 600 may be performed by the graph learning system 102 (e.g., one or more devices of the graph learning system 102) (e.g., completely, partially, etc.). In some non-limiting embodiments or aspects, one or more steps of the process 600 may be performed by another device or device group (e.g., transaction service provider system 104 and / or user device 106) that is separate from or includes the graph learning system 102 (e.g., completely, partially, etc.). It should be understood that in non-limiting embodiments or aspects, additional, fewer, different and / or different order of steps may be used. It should be understood that subsequent steps may be performed automatically and / or in response to a previous step.
[0147] like Figure 6As shown, at step 602, process 600 may include receiving a data set including graph data associated with a graph. For example, the graph learning system 102 may receive a data set from a data set database 110 including graph data associated with a graph 112. In some non-limiting embodiments, the graph 112 may include a plurality of nodes and a plurality of edges, and the graph data may include a plurality of node embeddings associated with several nodes in the graph 112 and node data associated with each node of the graph 112. The node data may include data associated with parameters of each node in the graph 112. Additionally or alternatively, the node data may include user data associated with a plurality of users and / or entity data associated with a plurality of entities. The first set of node embeddings may be based on user data, and / or the second set of node embeddings may be based on entity data.
[0148] like Figure 6 As shown, at step 604, process 600 may include calculating the distance between the first set of node embeddings and the second set of node embeddings. For example, the graph learning system 102 (e.g., its feature generator 116) may calculate the distance between the first set of node embeddings and the second set of node embeddings. In some non-limiting embodiments or aspects, the feature generator 116 may calculate the distance between a first set of node embeddings among a plurality of node embeddings in an embedding space and a second set of node embeddings among the plurality of node embeddings, wherein the plurality of node embeddings are based on node data associated with each node of the graph. In some non-limiting embodiments or aspects, the feature generator 116 may calculate the Euclidean distance between each first node embedding of the first set of node embeddings and each second node embedding of the second set of node embeddings to provide a plurality of Euclidean distances.
[0149] like Figure 6 As shown, at step 606, process 600 may include determining a consistency metric for the data set. For example, graph learning system 102 (e.g., feature generator 116 thereof) may determine a consistency metric for the data set including graph data associated with graph 112. In some non-limiting embodiments or aspects, the consistency metric may be associated with a distribution metric of multiple node embeddings in an embedding space, wherein the multiple node embeddings are associated with several nodes in graph 112.
[0150] In some non-limiting embodiments or aspects, feature generator 116 may determine a consistency metric for the data set based on the number of nodes in graph 112 and data associated with parameters of each node in graph 112. The consistency metric may be associated with the number of bits used to encode the first set of node embeddings and the second set of node embeddings.
[0151] like Figure 6As shown, at step 608, process 600 may include determining a plurality of node groups. For example, graph learning system 102 (e.g., feature generator 116 thereof) may determine a plurality of node groups. Each of the plurality of node embedding groups may include at least a portion of a plurality of node embeddings associated with a number of nodes in graph 112.
[0152] In some non-limiting embodiments or aspects, the feature generator 116 may determine the plurality of node embedding groups based on a probability matrix comprising a plurality of rows and a plurality of columns, each of the plurality of node embedding groups may include at least a portion of the plurality of node embeddings, and each row of the probability matrix includes a plurality of probability metrics. Each row of the probability matrix may correspond to one of the plurality of nodes, and each column of the probability matrix may correspond to one of the plurality of node embedding groups, and each of the plurality of probability metrics may represent a probability that a node will be assigned to the group based on the row and column of the probability matrix. In some non-limiting embodiments or aspects, the graph learning system 102 may determine each of the plurality of node embedding groups based on the closest neighbors of the plurality of nodes in the graph using an adjacency matrix and the degree of each of the plurality of nodes.
[0153] like Figure 6 As shown, at step 610, process 600 may include determining an alignment metric for the plurality of node groups. For example, the graph learning system 102 (e.g., its feature generator 116) may determine a plurality of node groups. In some non-limiting embodiments or aspects, the feature generator 116 may determine the alignment metric based on the probability matrix, the number of nodes in the graph 112, and data associated with parameters of each node in the graph 112. The alignment metric may be associated with the number of bits used to encode each group in the plurality of node embedding groups.
[0154] like Figure 6 As shown, at step 612, process 600 may include generating a set of graph features. For example, graph learning system 102 (e.g., feature generator 116 thereof) may generate a set of graph features. In some non-limiting embodiments or aspects, feature generator 116 may generate a set of graph features based on a consistency metric, an alignment metric, and / or a distance between a first set of node embeddings and a second set of node embeddings.
[0155] like Figure 6As shown, at step 614, process 600 may include training a graph neural network (GNN). For example, the graph learning system 102 may train the GNN. In some non-limiting embodiments or aspects, the graph learning system 102 (e.g., its feature generator 116) may train the GNN 114 based on a set of graph features to provide a trained GNN 114. In some non-limiting embodiments or aspects, the graph learning system 102 may verify the trained GNN 114 based on at least a portion of the set of graph features.
[0156] Reference now Figure 7 , Figure 7 is a diagram of example components of device 700. Device 700 may correspond to, for example, Figure 1-2 and 5. In some non-limiting embodiments or aspects, the graph learning system 102, the transaction service provider system 104, the user device 106, the data set database 110, the graph neural network 114 and / or the feature generator 116 may include at least one device 700 and / or at least one component of the device 700.
[0157] like Figure 7 As shown, the device 700 may include a bus 702, a processor 704, a memory 706, a storage component 708, an input component 710, an output component 712, and a communication interface 714. The bus 702 may include components that allow communication between components of the device 700. In some non-limiting embodiments or aspects, the processor 704 may be implemented in hardware, software, firmware, and / or any combination thereof. For example, the processor 704 may include a processor (e.g., a central processing unit (CPU), a graphics processing unit (GPU), an accelerated processing unit (APU), etc.), a microprocessor, a digital signal processor (DSP), and / or any processing component that can be programmed to perform a certain function (e.g., a field programmable gate array (FPGA), an application-specific integrated circuit (ASIC), etc.), etc. The memory 706 may include a random access memory (RAM), a read-only memory (ROM), and / or another type of dynamic or static storage device (e.g., flash memory, magnetic memory, optical memory, etc.) that stores information and / or instructions for use by the processor 704.
[0158] Storage component 708 may store information and / or software associated with the operation and use of device 700. For example, storage component 708 may include a hard disk (e.g., magnetic disk, optical disk, magneto-optical disk, solid-state disk, etc.), a compact disk (CD), a digital versatile disk (DVD), a floppy disk, a cassette, a tape, and / or another type of computer-readable medium, and corresponding drives.
[0159] Input components 710 may include components that permit device 700 to receive information, for example, via user input (e.g., a touch screen display, a keyboard, a keypad, a mouse, buttons, switches, a microphone, a camera, etc.). Additionally or alternatively, input components 710 may include sensors for sensing information (e.g., a global positioning system (GPS) component, an accelerometer, a gyroscope, an actuator, etc.). Output components 712 may include components that provide output information from device 700 (e.g., a display, a speaker, one or more light emitting diodes (LEDs), etc.).
[0160] The communication interface 714 may include a transceiver-type component (e.g., a transceiver, a separate receiver and transmitter, etc.) that enables the device 700 to communicate with other devices, for example, via a wired connection, a wireless connection, or a combination of wired and wireless connections. The communication interface 714 may allow the device 700 to receive information from another device and / or provide information to another device. For example, the communication interface 714 may include an Ethernet interface, an optical interface, a coaxial interface, an infrared interface, a radio frequency (RF) interface, a universal serial bus (USB) interface, interface, interface, Interface, cellular network interface, etc.
[0161] Device 700 can perform one or more processes described herein. Device 700 can perform these processes based on processor 704 executing software instructions stored by computer-readable media such as memory 706 and / or storage component 708. Computer-readable media (e.g., non-transient computer-readable media) are defined herein as non-transient memory devices. Non-transient memory devices include memory space located within a single physical storage device or memory space spread across multiple physical storage devices.
[0162] The software instructions may be read into the memory 706 and / or storage component 708 from another computer-readable medium or from another device via the communication interface 714. When executed, the software instructions stored in the memory 706 and / or storage component 708 may cause the processor 704 to perform one or more processes described herein. Additionally or alternatively, hard-wired circuitry may be used in place of or in conjunction with software instructions to perform one or more processes described herein. Therefore, the embodiments or aspects described herein are not limited to any specific combination of hardware circuitry and software.
[0163] supply Figure 7 The number and arrangement of the components shown in are provided as examples. In some non-limiting embodiments or aspects, Figure 7 Compared to those shown in , device 700 may include additional components, fewer components, different components, or components arranged in a different manner. Additionally or alternatively, a set of components (e.g., one or more components) of device 700 may perform one or more functions described as being performed by another set of components of device 700.
[0164] Examples
[0165] Experiments are conducted on several public datasets to validate the effectiveness of the system described in this paper (DirectMCR) and compare it with other state-of-the-art collaborative filtering (CF) systems.
[0166] Table 1
[0167] Dataset user project Interaction Average projects / user density Beauty 22.4k 12.1k 198.5k 8.9 0.07% Book 52.6k 91.5k 298.4k 10.7 0.06% Gowalla 29.9k 41.0k 1027.4k 34.4 0.08% Yelp2018 31.7k 38.0k 1561.4k 49.3 0.13%
[0168] Referring to Table 1, three public datasets are used as follows:
[0169] Beauty and Book: One of a series of product review datasets scraped from Amazon, the data is split into separate datasets by top product category.
[0170] Gowalla: Check-in dataset obtained from Gowalla, where users share their locations through check-ins.
[0171] Yelp2018: Business recommendation dataset, including restaurants, bars, etc., using transaction records after January 1, 2018.
[0172] These datasets are preprocessed by removing duplicate interactions and ensuring that each user and item has at least 5 associated interactions. Table 1 reports the statistics of the datasets after preprocessing.
[0173] The performance of the DirectMCR model of the present disclosure is compared with the following state-of-the-art CF systems:
[0174] BPRMF: A negative sampling method that optimizes matrix factorization (MF) with a pairwise ranking loss, where negative items are randomly sampled from the itemset (Rendel et al. (2009)).
[0175] LightGCN: A simplified graph convolutional network for CF that performs linear propagation between neighbors on the user-item bipartite graph (He et al. (2020)).
[0176] SGL: Self-Supervised Graph Learning for Graph-Based Recommendations (Wu et al. (2021)).
[0177] DirectAU: A learning framework that achieves consistency and alignment but fails to address dimensionality contraction (Wang et al. (2022)).
[0178] To test each dataset, each user’s interactions were randomly split into training / validation / test sets with a ratio of 80% / 10% / 10%. To evaluate the performance of the top-K recommendations, the Recall@K evaluation metric was adopted, which measures how many target items were retrieved in the recommendation results. Instead of ranking a smaller set of random items together with the target items, a ranked list of all items (except the training items in the user’s history) was considered. Each experiment was repeated 5 times with different random seeds, and the average scores are reported in Table 2:
[0179] Dataset Beauty Gowalla Yelp BPRMF 0.1153 0.1263 0.0693 LightGCN 0.1201 0.1871 0.0833 SGL 0.1334 0.1943 0.0946 DirectAU 0.1400 0.2014 0.1096 DirectMCR 0.1438 0.2068 0.1103
[0180] From the experimental results, Direct MCR shows the best performance. Therefore, directly optimizing the coding rate reduction function produces performance improvements for GNNs. This shows that the nature of dimensionality contraction is strongly consistent with the representation quality in CF, which existing models cannot address and lead to poor results.
[0181] Although the disclosed subject matter has been described in detail for illustrative purposes based on what are currently considered to be the most practical and preferred embodiments or aspects, it should be understood that such details are only for that purpose and that the disclosed subject matter is not limited to the disclosed embodiments or aspects, but rather is intended to cover modifications and equivalent arrangements within the spirit and scope of the appended claims. For example, it should be understood that the presently disclosed subject matter contemplates that one or more features of any embodiment or aspect can be combined with one or more features of any other embodiment or aspect as much as possible.
Claims
1. A system, wherein include: At least one processor programmed or configured to: receiving a data set comprising graph data associated with a graph, the graph comprising a plurality of nodes and a plurality of edges, the graph data comprising a plurality of node embeddings associated with a number of nodes in the graph and node data associated with each node of the graph, the node data comprising data associated with a parameter of each node in the graph; calculating distances between a first set of node embeddings in the plurality of node embeddings and a second set of node embeddings in the plurality of node embeddings in an embedding space, the plurality of node embeddings being based on the node data associated with each node of the graph; determining a consistency metric for the data set, the consistency metric being associated with a distribution metric of the plurality of node embeddings in the embedding space; determining a plurality of groups of node embeddings, each group of the plurality of groups of node embeddings comprising at least a portion of the plurality of node embeddings; determining an alignment metric for the plurality of groups of node embeddings, the alignment metric being associated with a distribution metric of at least a portion of the node embeddings for each group of the plurality of groups of node embeddings; generating a set of graph features based on the consistency metric, the alignment metric, and the distance between the first set of node embeddings and the second set of node embeddings; as well as A graph neural network (GNN) is trained based on the set of graph features to provide a trained GNN.
2. The system of claim 1, wherein the at least one processor is further programmed or configured to: The trained GNN is validated based on at least a portion of the set of graph features.
3. The system according to claim 1, in, When calculating the distance between the first set of node embeddings and the second set of node embeddings in the embedding space, the at least one processor is programmed or configured to: A Euclidean distance is calculated between each first node embedding of the first set of node embeddings and each second node embedding of the second set of node embeddings to provide a plurality of Euclidean distances.
4. The system according to claim 1, in, When determining the consistency measure of the data set, the at least one processor is programmed or configured to: The consistency metric for the data set is determined based on a number of nodes in the graph and the data associated with the parameters of each node in the graph, wherein the consistency metric is associated with a number of bits used to encode the first set of node embeddings and the second set of node embeddings.
5. The system according to claim 1, in, When determining that the plurality of nodes are embedded in a group, the at least one processor is programmed or configured to: determining the plurality of groups of node embeddings based on a probability matrix comprising a plurality of rows and a plurality of columns, each group of the plurality of groups of node embeddings comprising at least a portion of the plurality of node embeddings, and each row of the probability matrix comprising a plurality of probability metrics, wherein each row of the probability matrix corresponds to a node of the plurality of nodes, and each column of the probability matrix corresponds to a group of the plurality of groups of node embeddings, and wherein each probability metric of the plurality of probability metrics represents a probability that the node will be assigned to the group based on the row and the column of the probability matrix; and Wherein, when determining the alignment metric of the plurality of node embedding groups, the at least one processor is programmed or configured to: The alignment metric is determined based on the probability matrix, the number of nodes in the graph, and the data associated with the parameters of each node in the graph, wherein the alignment metric is associated with a number of bits used to encode each of the plurality of node embedding groups.
6. The system of claim 1, wherein the node data comprises user data associated with a plurality of users and entity data associated with a plurality of entities, and wherein the first set of node embeddings is based on the user data and the second set of node embeddings is based on the entity data.
7. The system according to claim 1, in, When determining that the plurality of nodes are embedded in a group, the at least one processor is programmed or configured to: Each of the plurality of node embedding groups is determined based on closest neighbors of the plurality of nodes in the graph using an adjacency matrix and the degree of each of the plurality of nodes.
8. A computer-implemented method, include: receiving, with at least one processor, a data set comprising graph data associated with a graph, the graph comprising a plurality of nodes and a plurality of edges, the graph data comprising a plurality of node embeddings associated with a number of nodes in the graph and node data associated with each node of the graph, the node data comprising data associated with a parameter of each node in the graph; calculating, with at least one processor, distances between a first set of node embeddings in the plurality of node embeddings and a second set of node embeddings in the plurality of node embeddings in an embedding space, the plurality of node embeddings being based on the node data associated with each node of the graph; determining, with at least one processor, a consistency metric for the data set, the consistency metric being associated with a distribution metric of the plurality of node embeddings in the embedding space; determining, with at least one processor, a plurality of groups of node embeddings, each group of the plurality of groups of node embeddings comprising at least a portion of the plurality of node embeddings; determining, with at least one processor, an alignment metric for the plurality of groups of node embeddings, the alignment metric being associated with a distribution metric of at least a portion of the node embeddings for each of the plurality of groups of node embeddings; generating, with at least one processor, a set of graph features based on the consistency metric, the alignment metric, and the distance between the first set of node embeddings and the second set of node embeddings; as well as A graph neural network (GNN) is trained, using at least one processor, based on the set of graph features to provide a trained GNN.
9. The computer-implemented method of claim 8, further comprising: include: The trained GNN is validated, with at least one processor, based on at least a portion of the set of graph features.
10. The computer-implemented method of claim 8, wherein computing the distance between the first set of node embeddings and the second set of node embeddings in the embedding space include: A Euclidean distance is calculated between each first node embedding of the first set of node embeddings and each second node embedding of the second set of node embeddings to provide a plurality of Euclidean distances.
11. The computer-implemented method of claim 8, wherein determining the consistency metric for the data set include: The consistency metric for the data set is determined based on a number of nodes in the graph and the data associated with the parameters of each node in the graph, wherein the consistency metric is associated with a number of bits used to encode the first set of node embeddings and the second set of node embeddings.
12. The computer-implemented method of claim 8, wherein determining the plurality of nodes to embed into a group include: determining the plurality of groups of node embeddings based on a probability matrix comprising a plurality of rows and a plurality of columns, each group of the plurality of groups of node embeddings comprising at least a portion of the plurality of node embeddings, and each row of the probability matrix comprising a plurality of probability metrics, wherein each row of the probability matrix corresponds to a node of the plurality of nodes, and each column of the probability matrix corresponds to a group of the plurality of groups of node embeddings, and wherein each probability metric of the plurality of probability metrics represents a probability that the node will be assigned to the group based on the row and the column of the probability matrix; and Wherein determining the alignment metric of the plurality of node embedding groups comprises: The alignment metric is determined based on the probability matrix, the number of nodes in the graph, and the data associated with the parameters of each node in the graph, wherein the alignment metric is associated with a number of bits used to encode each of the plurality of node embedding groups.
13. The computer-implemented method of claim 8, wherein the node data comprises user data associated with a plurality of users and entity data associated with a plurality of entities, and wherein the first set of node embeddings is based on the user data and the second set of node embeddings is based on the entity data.
14. The computer-implemented method of claim 8, wherein determining the plurality of node embedding groups comprises determining each of the plurality of node embedding groups based on closest neighbors of the plurality of nodes in the graph using an adjacency matrix and a degree of each of the plurality of nodes.
15. A computer program product comprising at least one non-transitory computer readable medium, the at least one non-transitory computer readable medium comprising one or more instructions that, when executed by at least one processor, cause the at least one processor to: receiving a data set comprising graph data associated with a graph, the graph comprising a plurality of nodes and a plurality of edges, the graph data comprising a plurality of node embeddings associated with a number of nodes in the graph and node data associated with each node of the graph, the node data comprising data associated with a parameter of each node in the graph; calculating distances between a first set of node embeddings in the plurality of node embeddings and a second set of node embeddings in the plurality of node embeddings in an embedding space, the plurality of node embeddings being based on the node data associated with each node of the graph; determining a consistency metric for the data set, the consistency metric being associated with a distribution metric of the plurality of node embeddings in the embedding space; determining a plurality of groups of node embeddings, each group of the plurality of groups of node embeddings comprising at least a portion of the plurality of node embeddings; determining an alignment metric for the plurality of groups of node embeddings, the alignment metric being associated with a distribution metric of at least a portion of the node embeddings for each group of the plurality of groups of node embeddings; generating a set of graph features based on the consistency metric, the alignment metric, and the distance between the first set of node embeddings and the second set of node embeddings; as well as A graph neural network (GNN) is trained based on the set of graph features to provide a trained GNN.
16. The computer program product of claim 15, wherein the one or more instructions further cause the at least one processor to: The trained GNN is validated based on at least a portion of the set of graph features.
17. The computer program product of claim 15, wherein the one or more instructions that cause the at least one processor to compute the distance between the first set of node embeddings and the second set of node embeddings in the embedding space cause the at least one processor to: A Euclidean distance is calculated between each first node embedding of the first set of node embeddings and each second node embedding of the second set of node embeddings to provide a plurality of Euclidean distances.
18. The computer program product of claim 15, wherein the one or more instructions that cause the at least one processor to determine the consistency metric for the data set cause the at least one processor to: The consistency metric for the data set is determined based on a number of nodes in the graph and the data associated with the parameters of each node in the graph, wherein the consistency metric is associated with a number of bits used to encode the first set of node embeddings and the second set of node embeddings.
19. The computer program product of claim 15, wherein the one or more instructions that cause the at least one processor to determine that the plurality of nodes are embedded in a group cause the at least one processor to: determining the plurality of node embedding groups based on a probability matrix comprising a plurality of rows and a plurality of columns, each group in the plurality of node embedding groups comprising at least a portion of the plurality of node embeddings, and each row of the probability matrix comprising a plurality of probability metrics, wherein each row of the probability matrix corresponds to a node in the plurality of nodes, and each column of the probability matrix corresponds to a group in the plurality of node embedding groups, and wherein each probability metric in the plurality of probability metrics represents a probability that the node will be assigned to the group based on the row and the column of the probability matrix; and wherein the one or more instructions that cause the at least one processor to determine the alignment metric for the plurality of node embedding groups cause the at least one processor to: The alignment metric is determined based on the probability matrix, the number of nodes in the graph, and the data associated with the parameters of each node in the graph, wherein the alignment metric is associated with a number of bits used to encode each of the plurality of node embedding groups.
20. The computer program product of claim 15, wherein the one or more instructions that cause the at least one processor to determine that the plurality of nodes are embedded in a group cause the at least one processor to: Each of the plurality of node embedding groups is determined based on closest neighbors of the plurality of nodes in the graph using an adjacency matrix and the degree of each of the plurality of nodes.