IP Library Granted Patent US 10,965,807
Granted Patent B2
US 10,965,807 · App. 16/585,206 · Granted Mar 30, 2021

Systems and methods for anomaly or fraud detection

Inventors: Marie-Claude Côté (Montréal, CA); Pegah Kamousi (Montréal, CA); Fanny Lalonde Lévesque (Montréal, CA); Alexei Nordell-Markovits (Montréal, CA); Adam Salvail-Bérard (Montréal, CA)
Assignee: ELEMENT AI INC.
H04M3/2281G06N3/049H04M3/42059H04M3/4365
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 10,965,807
App. No.
16/585,206
Granted
Mar 30, 2021
Kind
B2
Abstract

A system for anomaly estimation for a telephonic call is described, receiving a call object including an identifier field associating the call object to a purported user; retrieving a user data object associated with the purported user, and processing the user data object to retrieve one or more vectorized user features associated with the purported user. A neural network processes the one or more vectorized call features and the one or more vectorized user features through a machine learning model.

Claims (47)

1. A computer implemented method for anomaly estimation for a telephonic call, the method comprising:

receiving a call object including an identifier field associating the call object to a purported user;

retrieving a user data object associated with the purported user, and processing the user data object to retrieve one or more vectorized user features associated with the purported user;

extracting, from the call object, one or more vectorized call features;

retrieving a user profile associated with the purported user;

processing the one or more vectorized call features and the one or more vectorized user features through a machine learning model to generate an output data value representing a likelihood at which the machine learning model assesses the call object to have been initiated by the purported user; and

querying the user profile using at least the generated likelihood to obtain a decision output representative of a control signal for a downstream action for call handling;

wherein the user profile is a data structure that includes data fields that are appended with each decision output such that the user profile provides a log of past decision outputs.

2. The method of claim 1 , wherein the one or more vectorized call features extracted from the call object are static embeddings extracted from at least one of a call detail record, an IP detail record, voice samplings, or records extracted from external data sources.

3. The method of claim 2 , wherein the one or more vectorized call features include at least one of phone numbers originating and receiving the call, a starting timestamp of the call, a billing phone number that is charged for the call, internet protocol detail record sequence numbers, internet protocol detail record start timestamps or end timestamps, internet protocol detail record average packet latencies, internet protocol detail record codecs, internet protocol detail record internet protocol addresses, internet protocol detail record call completion codes, an internet protocol detail record personal identification number (PIN), internet protocol detail record port numbers, or internet protocol detail record egress device internet protocol addresses.

4. The method of claim 1 , wherein the call object is a new call object received at a call router; and

wherein the one or more vectorized call features extracted from the call object are dynamic embeddings extracted from at least one of a call detail record, an IP detail record, voice samplings, or records extracted from external data sources, the dynamic embeddings generated as the new call object is handled by the call router in real or near real-time.

5. The method of claim 4 , wherein the one or more vectorized call features are extracted in a continuous flow as the one or more vectorized call features become available during the call in real or near real-time.

6. The method of claim 5 , wherein the machine learning model continuously or periodically generates the output data value as new one or more vectorized call features become available to the machine learning model.

7. The method of claim 6 , wherein the machine learning model is implemented using a recurrent neural network configured such that inputs are discrete events that the machine learning model encodes into a hidden layer of the recurrent neural network.

8. The method of claim 1 , wherein the machine learning model generates a manifold representation based at least on the one or more vectorized user features and the one or more vectorized call features, establishing a constellation of points within a higher-dimensional space having at least a first point representative of the call object, and at least a second point representative of the user profile associated with the purported user;

wherein a distance is determined in the higher-dimensional space between the first point and the second point; and

wherein the distance is utilized to generate the output data value representing the likelihood at which the machine learning model assesses the call object to have been initiated by the purported user.

9. The method of claim 8 , wherein the distance is normalized based on an aggregate of generated distances, and the normalized distance is utilized to generate the output data value representing the likelihood at which the machine learning model assesses the call object to have been initiated by the purported user.

10. The method of claim 1 , wherein the downstream action includes at least one of: connecting or terminating the call; reporting the call; or flagging the call to be marked as a potential threat in the user profile.

11. The method of claim 1 , wherein the machine learning model generates a confidence level associated with the likelihood at which the machine learning model assesses the call object to have been initiated by the purported user, the confidence level utilized in determining the decision output representative of the control signal for the downstream action for call handling.

12. A system for anomaly estimation for a telephonic call, the system comprising:

at least one processor operating in conjunction with computer memory, the at least one processor configured for providing:

a call object receiver receiving a call object including an identifier field associating the call object to a purported user;

a user data object receiver retrieving a user data object associated with the purported user, and processing the user data object to retrieve one or more vectorized user features associated with the purported user;

a feature processing engine extracting, from the call object, one or more vectorized call features;

a data storage maintaining in data storage a user profile associated with the purported user;

a neural network processing the one or more vectorized call features and the one or more vectorized user features through a machine learning model to generate an output data value representing a likelihood at which the machine learning model assesses the call object to have been initiated by the purported user; and

a call routing decision support engine querying the user profile using at least the generated likelihood to obtain a decision output representative of a control signal for a downstream action for call handling;

wherein the user profile is a data structure that includes data fields that are appended with each decision output such that the user profile provides a log of past decision outputs.

13. The system of claim 12 , wherein the one or more vectorized call features extracted from the call object are static embeddings extracted from at least one of a call detail record, an IP detail record, voice samplings, or records extracted from external data sources.

14. The system of claim 12 , wherein the call object is a new call object received at a call router; and

wherein the one or more vectorized call features extracted from the call object are dynamic embeddings extracted from at least one of a call detail record, an IP detail record, voice samplings, or records extracted from external data sources, the dynamic embeddings generated as the new call object is handled by the call router in real or near real-time.

15. The system of claim 14 , wherein the one or more vectorized call features are extracted in a continuous flow as the one or more vectorized call features become available during the call in real or near real-time.

16. The system of claim 15 , wherein the machine learning model continuously or periodically generates the output data value as new one or more vectorized call features become available to the machine learning model.

17. The system of claim 16 , wherein the machine learning model is implemented using a recurrent neural network configured such that inputs are discrete events that the machine learning model encodes into a hidden layer of the recurrent neural network.

18. The system of claim 12 , wherein the machine learning model generates a manifold representation based at least on the one or more vectorized user features and the one or more vectorized call features, establishing a constellation of points within a higher-dimensional space having at least a first point representative of the call object, and at least a second point representative of the user profile associated with the purported user;

wherein a distance is determined in the higher-dimensional space between the first point and the second point; and

wherein the distance is utilized to generate the output data value representing the likelihood at which the machine learning model assesses the call object to have been initiated by the purported user.

19. A non-transitory computer readable medium storing machine interpretable instructions, which when executed by a processor, cause the processor to perform a method for anomaly estimation for a telephonic call, the method comprising:

receiving a call object including an identifier field associating the call object to a purported user;

retrieving a user data object associated with the purported user, and processing the user data object to retrieve one or more vectorized user features associated with the purported user;

extracting, from the call object, one or more vectorized call features;

retrieving a user profile associated with the purported user;

processing the one or more vectorized call features and the one or more vectorized user features through a machine learning model to generate an output data value representing a likelihood at which the machine learning model assesses the call object to have been initiated by the purported user; and

querying the user profile using at least the generated likelihood to obtain a decision output representative of a control signal for a downstream action for call handling;

wherein the user profile is a data structure that includes data fields that are appended with each decision output such that the user profile provides a log of past decision outputs.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 26, 2025
From: SERVICENOW CANADA INC.
To: SERVICENOW, INC.
Reel/Frame 070644/0956 →
MERGER AND CHANGE OF NAME Recorded Dec 30, 2021
From: ELEMENT AI INC.; SERVICENOW CANADA INC.
To: SERVICENOW CANADA INC.
Reel/Frame 058601/0551 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 3, 2020
From: CÔTÉ, MARIE-CLAUDE; KAMOUSI, PEGAH; LÉVESQUE, FANNY LALONDE; NORDELL-MARKOVITS, ALEXEI; SALVAIL-BÉRARD, ADAM
To: ELEMENT AI INC.
Reel/Frame 054252/0674 →
Continuity (2)
Provisional Application 62738068 · Sep 28, 2018
Related Publication 20200106880A1 · Apr 2, 2020
Cited By (1)
US 12,561,388