IP Library Granted Patent US 11,636,487
Granted Patent B2
US 11,636,487 · App. 17/070,814 · Granted Apr 25, 2023

Graph decomposition for fraudulent transaction analysis

Inventors: Maria Inês Silva (Lisbon, PT); David Oliveira Aparício (Oporto, PT); Pedro Gustavo Santos Rodrigues Bizarro (Lisbon, PT); João Tiago Barriga Negra Ascensão (Lisbon, PT); Rodolfo Cristóvão (Lisbon, PT); Miguel Ramos de Araújo (Oporto, PT); Maria Beatriz Malveiro Jorge (Lisbon, PT); Mariana Rodrigues Lourenço (Lisbon, PT); Sandro Daniel Sabudin Nunes (Lisbon, PT)
G06Q20/4016G06F9/546G06F16/9024
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,636,487
App. No.
17/070,814
Granted
Apr 25, 2023
Kind
B2
Abstract

In an embodiment, a process for graph decomposition includes initializing nodes and edges of a data graph for analysis using a computer, and performing message passing between at least a portion of the nodes of the data graph to determine a corresponding measure of interest for each node of at least a portion of the data graph. The process further includes receiving an identification of one or more nodes of interest in the data graph, performing message passing between at least a portion of the nodes of the data graph using at least the determined measures of interest to identify a corresponding subgraph of interest for each of the one or more nodes of interest in the data graph, and performing an analysis action using the one or more identified subgraphs of interest.

Claims (55)

1. A system, comprising:

one or more processors configured to:

initialize nodes and edges of a data graph for analysis using a computer;

perform message passing between at least a portion of the nodes of the data graph to determine a corresponding measure of interest for each node of at least a portion of the data graph, wherein neighborhood expansion is performed based at least in part on: (i) the measure of interest including an edge interest score and (ii) an expansion interest associated with at least one neighbor of a node, wherein the edge interest score is determined using an edge interest function that is monotonically increasing on the edge interest score;

receive an identification of one or more nodes of interest in the data graph;

perform message passing between at least a portion of the nodes of the data graph using at least the determined measures of interest to identify a corresponding subgraph of interest for each of the one or more nodes of interest in the data graph;

perform an analysis action using the one or more identified subgraphs of interest; and

a memory coupled to at least one of the one or more processors and configured to provide the one or more processors with instructions.

2. The system of claim 1 , wherein the one or more processors are configured to initialize nodes and edges of the data graph including by being configured to:

determine a node interest score for an associated node using a node interest function; or

determine the edge interest score for an associated edge using an edge interest function.

3. The system of claim 2 , wherein at least one of the node interest function and the edge interest function is user-defined.

4. The system of claim 2 , wherein at least one of the node interest score and the edge interest score determines a likelihood of expanding to a corresponding node.

5. The system of claim 1 , wherein the one or more processors are configured to perform message passing between at least the portion of the nodes of the data graph to determine the corresponding measure of interest for each node of at least the portion of the data graph including by being configured to:

send, for each node, at least one message to node neighbors through corresponding edges;

update, for each node, a pool of received one or more messages; and

update, for each node, the corresponding measure of interest based at least in part on the pool of received one or more messages.

6. The system of claim 5 , wherein the one or more processors are configured to update the corresponding measure of interest based at least in part on a user-defined interest function.

7. The system of claim 5 , wherein the one or more processors are configured to perform message passing between at least the portion of the nodes of the data graph to determine the corresponding measure of interest for each node of at least the portion of the data graph repeatedly until a stopping condition is met.

8. The system of claim 1 , wherein the one or more processors is configured to perform at least partly in parallel the message passing between at least a portion of the nodes of the data graph to determine a corresponding measure of interest for each node of at least a portion of the data graph.

9. The system of claim 1 , wherein the one or more processors are configured to:

to initialize nodes and edges of the data graph including by being configured to determine a node interest score for an associated node using a node interest function; and

perform message passing between at least the portion of the nodes of the data graph to determine the corresponding measure of interest for each node of at least the portion of the data graph including by being configured to update the node interest score using the determined measure of interest.

10. The system of claim 1 , wherein the one or more processors are configured to receive the identification of one or more nodes of interest in the data graph including by being configured to receive a user selection of a seed node via a user interface.

11. The system of claim 1 , wherein the one or more processors are configured to perform message passing between at least the portion of the nodes of the data graph using at least the determined measures of interest to identify the corresponding subgraph of interest for each of the one or more nodes of interest in the data graph including by being configured to:

define a minimum interest for the identified one or more nodes of interest in the data graph; and

send a corresponding message to node neighbors of the identified one or more nodes of interest through corresponding edges.

12. The system of claim 11 , wherein the one or more processors are configured to perform message passing between at least the portion of the nodes of the data graph using at least the determined measures of interest to identify the corresponding subgraph of interest for each of the one or more nodes of interest in the data graph including by being configured to:

calculate the expansion interest for each neighbor of each of the one or more nodes of interest using the corresponding message; and

in response to the expansion interest for a respective neighbor exceeding a minimum interest of a respective node of interest, update message information for the corresponding message.

13. The system of claim 12 , wherein the one or more processors are configured to perform message passing between at least the portion of the nodes of the data graph using at least the determined measures of interest to identify the corresponding subgraph of interest for each of the one or more nodes of interest in the data graph including by being configured to, after updating the message information for the corresponding message:

identify a second set of one or more nodes of interest in response to a stopping condition being unmet; and

send the corresponding message to node neighbors of the identified second set one or more nodes of interest through corresponding edges.

14. The system of claim 12 , wherein the expansion interest for each neighbor of each of the one or more nodes of interest is calculated based at least in part on a measure of interest of a respective neighbor scaled by a decay function.

15. The system of claim 11 , wherein the one or more processors are configured to perform message passing between at least the portion of the nodes of the data graph using at least the determined measures of interest to identify the corresponding subgraph of interest for each of the one or more nodes of interest in the data graph repeatedly until a stopping condition is met.

16. The system of claim 1 , wherein the one or more processors are configured to perform at least partly in parallel message passing between at least a portion of the nodes of the data graph using at least the determined measures of interest to identify a corresponding subgraph of interest for each of the one or more nodes of interest in the data graph.

17. The system of claim 1 , wherein the one or more processors are configured to identify the corresponding subgraph of interest for each of the one or more nodes of interest in the data graph including by being configured to apply a map-reduce operation to expansions associated with the one or more nodes of interest.

18. The system of claim 1 , wherein the one or more processors are configured to initialize nodes and edges of the data graph including by being configured to:

determine a node interest score for an associated node using a node interest function; and

the node interest score is based at least in part on at least one of: a type of a node, a past label of a node, a volume of activity associated with a node, or a topological feature of a node.

19. The system of claim 1 , the one or more processors are configured to initialize nodes and edges of the data graph including by being configured to:

determine the edge interest score for an associated edge using an edge interest function; and

the edge interest score is based at least in part on at least one of: past label of an edge, a weight of an edge, a volume of activity associated with an edge, or a relationship of an edge to a corresponding node.

20. A method, comprising:

initializing nodes and edges of a data graph for analysis using a computer;

performing message passing between at least a portion of the nodes of the data graph to determine a corresponding measure of interest for each node of at least a portion of the data graph, wherein neighborhood expansion is performed based at least in part on: (i) the measure of interest including an edge interest score and (ii) an expansion interest associated with at least one neighbor of a node, wherein the edge interest score is determined using an edge interest function that is monotonically increasing on the edge interest score;

receiving an identification of one or more nodes of interest in the data graph;

performing message passing between at least a portion of the nodes of the data graph using at least the determined measures of interest to identify a corresponding subgraph of interest for each of the one or more nodes of interest in the data graph; and

performing an analysis action using the one or more identified subgraphs of interest.

21. A computer program product embodied in a non-transitory computer readable medium and comprising computer instructions for:

initializing nodes and edges of a data graph for analysis using a computer;

performing message passing between at least a portion of the nodes of the data graph to determine a corresponding measure of interest for each node of at least a portion of the data graph, wherein neighborhood expansion is performed based at least in part on: (i) the measure of interest including an edge interest score and (ii) an expansion interest associated with at least one neighbor of a node, wherein the edge interest score is determined using an edge interest function that is monotonically increasing on the edge interest score;

receiving an identification of one or more nodes of interest in the data graph;

performing message passing between at least a portion of the nodes of the data graph using at least the determined measures of interest to identify a corresponding subgraph of interest for each of the one or more nodes of interest in the data graph; and

performing an analysis action using the one or more identified subgraphs of interest.

Assignments (2)
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE'S NAME INSIDE THE ASSIGNMENT DOCUMENT PREVIOUSLY RECORDED AT REEL: 54672 FRAME: 283. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jul 9, 2021
From: SILVA, MARIA INÊS; APARÍCIO, DAVID OLIVEIRA; BIZARRO, PEDRO GUSTAVO SANTOS RODRIGUES; ASCENSÃO, JOÃO TIAGO BARRIGA NEGRA; CRISTÓVÃO, RODOLFO; ARAÚJO, MIGUEL RAMOS DE; JORGE, MARIA BEATRIZ MALVEIRO; LOURENÇO, MARIANA RODRIGUES; NUNES, SANDRO DANIEL SABUDIN
To: FEEDZAI - CONSULTADORIA E INOVAÇÃO TECNOLÓGICA, S.A.
Reel/Frame 056847/0695 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 16, 2020
From: SILVA, MARIA INÊS; APARÍCIO, DAVID OLIVEIRA; BIZARRO, PEDRO GUSTAVO SANTOS RODRIGUES; ASCENSÃO, JOÃO TIAGO BARRIGA NEGRA; CRISTÓVÃO, RODOLFO; ARAÚJO, MIGUEL RAMOS DE; JORGE, MARIA BEATRIZ MALVEIRO; LOURENÇO, MARIANA RODRIGUES; NUNES, SANDRO DANIEL SABUDIN
To: FEEDZAI - CONSULTADORIA E INOVAÇÃO TECNÓLOGICA, S.A.
Reel/Frame 054672/0283 →
Continuity (2)
Provisional Application 62923314 · Oct 18, 2019
Related Publication 20210117978A1 · Apr 22, 2021