PROBABILISTIC MATCHING OF ACCOUNT INFORMATION IN MANAGEMENT AND DETERMINATION OF USER IDENTITY USING IDENTITY GRAPHS
A user identity management platform is provided that manages user identity for an enterprise, such as a retail enterprise. In particular, a specific identity graph structure is provided that allows for flexible management and selection of user account information depending on the context in which that user account information is to be used. Confidence scores may be maintained for nodes and edges and probabilistic techniques associated with account activity may be used to improve confidence of association among nodes within a cluster representing a unique user.
1 . A method comprising:
establishing an identity graph including a plurality of user clusters, each user cluster being associated with a different user and including one or more user profile nodes, each user profile node being associated with a customer account of a user, such that each of the one or more user profile nodes within a cluster correspond to different customer accounts of the user;
obtaining transaction data associated with an account used in a transaction at a retail enterprise;
identifying one or more nodes within the identity graph that correspond to one of a plurality of possible identity matches;
for each of the one or more nodes, providing the transaction data and an identification of the node to a classifier model to obtain a determination of whether the transaction data is associated with the node, the classifier model being trained using training transaction data linked to the customer accounts corresponding to user profile nodes in the identity graph; and
based on a determination from the classifier model that the transaction data is associated with a node of the one or more nodes, establishing an identity edge between the node and a user profile node corresponding to the account, thereby adding the user profile node corresponding to the account to a cluster that includes the node.
2 . The method of claim 1 , wherein, at the time the transaction data is obtained, the account is not associated with any of the user profile nodes included within the identity graph.
3 . The method of claim 2 , wherein the account is associated with a third party payment card, the transaction attributes including a customer name, a payment card number, and a transaction location.
4 . The method of claim 3 , further comprising:
after obtaining the transaction data, creating the user profile node associated with the third party payment card.
5 . The method of claim 2 , wherein the account is associated with a loyalty program of the retail enterprise.
6 . The method of claim 1 , wherein the classifier model comprises a random forest classifier.
7 . The method of claim 6 , further comprising training the random forest classifier with transaction data associated with a plurality of the user profile nodes included within the identity graph.
8 . The method of claim 7 , wherein the determination from the classifier model comprises a normalized probability that the user profile node corresponding to the account is associated with a same individual as the node.
9 . The method of claim 8 , further comprising, after establishing the identity edge, re-normalizing edge confidences within a plurality of user profile nodes included within the cluster including the node.
10 . The method of claim 1 , further comprising, prior to obtaining the plurality of possible identity matches:
creating the user profile node corresponding to the account;
assessing attributes of the account including at least a name and contact information;
determining, based on the attributes and excluding any assessment based on the transaction data associated with the account, that the user profile node does not correspond to a same user as any other user represented by the plurality of user clusters within the identity graph.
11 . The method of claim 1 , wherein the first user profile node includes a first plurality of user attributes and the second user profile node has a second plurality of user attributes, the method further comprising identifying the identity edge between the first user profile node and the second user profile node at least in part based on a similarity between the user attributes of the first and second user profile nodes.
12 . The method of claim 11 , wherein the identity edge has a first confidence based on the similarity between the user attributes of the first and second user profile nodes.
13 . The method of claim 12 , wherein the one or more nodes within the identity graph that correspond to one of the plurality of possible identity matches correspond to user profile nodes having a ZIP code attribute within a predetermined distance of a ZIP code attribute of the user profile node associated with the transaction data.
14 . A computer-readable storage medium comprising computer-executable instructions which, when executed, cause a computing system to perform actions comprising:
establishing an identity graph including a plurality of user clusters, each user cluster being associated with a different user and including one or more user profile nodes, each user profile node being associated with a customer account of a user, such that each of the one or more user profile nodes within a cluster correspond to different customer accounts of the user;
obtaining transaction data associated with an account used in a transaction at a retail enterprise;
identifying one or more nodes within the identity graph that correspond to one of a plurality of possible identity matches;
for each of the one or more nodes, providing the transaction data and an identification of the node to a classifier model to obtain a determination of whether the transaction data is associated with the node, the classifier model being trained using training transaction data linked to the customer accounts corresponding to user profile nodes in the identity graph; and
based on a determination from the classifier model that the transaction data is associated with a node of the one or more nodes, establishing an identity edge between the node and a user profile node corresponding to the account, thereby adding the user profile node corresponding to the account to a cluster that includes the node.
15 . The computer-readable storage medium of claim 14 , wherein the classifier model comprises a random forest classifier trained with transaction data associated with a plurality of the user profile nodes included within the identity graph.
16 . The computer-readable storage medium of claim 14 , wherein the classifier model determines a likelihood of correspondence between the user profile node associated with the transaction data and each of the one or more nodes, the user profile node corresponding to one of an online customer user and a store customer user, and each of the one or more nodes corresponding to the other of the online customer user and the store customer user.
17 . The computer-readable storage medium of claim 16 , wherein the user profile node associated with the transaction data comprises the online customer user, and the instructions further cause the computing system to perform:
based on a network address included in the transaction data associated with the user profile node, determining a ZIP code of the online customer user;
identifying the one or more nodes as store customer users based on transaction data associated with each of the one or more nodes being within a predetermined distance of the ZIP code.
18 . The computer-readable storage medium of claim 14 , wherein the first user profile node includes a first plurality of user attributes and the second user profile node has a second plurality of user attributes, the method further comprising identifying the identity edge between the first user profile node and the second user profile node at least in part based on a similarity between the user attributes of the first and second user profile nodes, and wherein the identity edge has a first confidence based on the similarity between the user attributes of the first and second user profile nodes.
19 . A customer identity management platform used within a retail enterprise, the customer identity management platform comprising:
a computing system comprising a memory and a processor, the memory storing instructions which, when executed by the processor, cause the computing system to:
establish an identity graph including a plurality of user clusters, each user cluster being associated with a different customer and including one or more user profile nodes, each user profile node being associated with a customer account of a customer, such that each of the one or more user profile nodes within a cluster correspond to different customer accounts of the customer;
obtaining transaction data associated with an account used in a transaction at a retail enterprise;
identify one or more nodes within the identity graph that correspond to one of a plurality of possible identity matches, the plurality of possible identity matches being based at least in part on geographic proximity between a location represented in the transaction data and locations represented in transaction data associated with the one or more nodes:
for each of the one or more nodes, provide the transaction data and an identification of the node to a classifier model to obtain a determination of whether the transaction data is associated with the node, the classifier model being trained using training transaction data linked to the customer accounts corresponding to user profile nodes in the identity graph;
based, at least in part, on a determination from the classifier model that the transaction data is associated with a node of the one or more nodes, establish an identity edge between the node and a user profile node corresponding to the account, thereby adding the user profile node corresponding to the account to a cluster that includes the node.
20 . The customer identity management platform of claim 19 , wherein the identity graph is maintained within a graph database on the computing system, the computing system comprising one or more computing nodes.
21 . The customer identity management platform of claim 19 , wherein prior to establishing the identity edge, the identity graph maintains the node and the user profile node as a suspect pair, and wherein establishing the identity edge includes incrementing a confidence as to a presence of the identity edge between the node and the user profile node above a predetermined threshold.