IP Library › Granted Patent US 10,477,028
Granted Patent B1
US 10,477,028 · App. 16/035,266 · Granted Nov 12, 2019

System for processing voice responses using a natural language processing engine

Inventors: Kyle A. Tobin (Middletown, DE); Robert E. Lutzkow, Jr. (Lopatcong, NJ); Robert S. Morse (Lexington, MA); Jitendra Padam (Renton, WA); Scott Steven Randrup (Sammamish, WA)
Assignee: Bank of America Corporation
H04M3/527G06F16/632G10L15/14G10L15/197G10L15/22G10L2015/223
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,477,028
App. No.
16/035,266
Granted
Nov 12, 2019
Kind
B1
Abstract

A system for processing voice responses is disclosed. The system is configured to store a correlation table identifying relationships between self-service routines, tags, and corresponding actions. The system receives a call from a user and issues a query in response to the call. The system receives an utterance from the user in response to the user and determines whether the utterance matches a pre-defined response. If there is no match, the system analyzes the utterance with a pre-defined statistical language model and identifies a service tag for the utterance. The system then associates the utterance with the service tag and a self-service routine that is associated with the call. The system identifies an action from the correlation table that correlates to the service tag and the self-service routine.

Claims (124)

1. A system for processing voice responses, comprising:

a memory configured to store:

a correlation table, the correlation table comprising a plurality of self-service routines, a plurality of service tags, and a plurality of actions, each action correlating to a pair of a self-service routine and a service tag; and

a plurality of pre-defined responses associated with the plurality of self-service routines, each self-service routine associated with a subset of the plurality of pre-defined responses;

an interactive voice response engine communicatively coupled to the memory and configured to:

receive a first self-service call flow from a user, the first self-service call flow associated with a first self-service routine;

in response to the first self-service call flow, issue a query to the user for requesting subsequent instructions from the user;

receive a first utterance from the user in response to the query;

identify a first subset of the pre-defined responses associated with the first self-service routine;

compare the first utterance with each of the first subset of the pre-defined responses; and

in response to determining that the first utterance does not match any of the first subset of the pre-defined responses, send the first utterance to a natural language processing engine; and

the natural language processing engine configured to:

in response to receiving the first utterance from the interactive voice response engine, analyze the first utterance with a pre-defined statistical language model;

identify one or more keywords of the first utterance based on the analysis;

determine a service tag of the first utterance based on the one or more keywords;

compare the service tag of the first utterance with each of the plurality of service tags;

in response to determining that the service tag of the first utterance matches a first service tag, associate the first utterance with the first service tag and the first self-service routine; and

identify a first action for the first utterance that correlates to the first service tag and the first self-service routine.

2. The system of claim 1 , wherein the query comprises the first subset of the predefined responses.

3. The system of claim 1 , wherein the interactive voice response engine is further configured to:

in response to determining that the first utterance matches one of the first subset of the pre-defined responses, perform an action corresponding to the matching pre-defined response.

4. The system of claim 1 , wherein the interactive voice response engine is further configured to:

receive a second self-service call flow from the user, the second self-service call flow associated with a second self-service routine;

in response to the second self-service call flow, identify a second subset of the pre-defined responses associated with the second self-service routine;

issue a second query to the user for requesting subsequent instructions from the user;

receive a second utterance from the user in response to the second query;

compare the second utterance with each of the second subset of the pre-defined response; and

in response to determining that the second utterance does not match any of the second subset of the pre-defined responses, send the second utterance to the natural language understanding engine.

5. The system of claim 4 , wherein the natural language processing engine is further configured to:

in response to receiving the second utterance from the interactive voice response engine, correlate the second utterance to the statistical language model;

identify one or more keywords of the second utterance based on the correlating;

determine a service tag of the second utterance based on the one or more keywords of the second utterance;

compare the service tag of the second utterance with each of the plurality of service tags;

in response to determining that the service tag of the second utterance also matches the first service tag, associate the second utterance with the first service tag and the second self-service routine; and

identify a second action for the first utterance that correlates to the first service tag and the second self-service routine.

6. The system of claim 1 , wherein each the plurality of self-service routines comprises one of the following:

a recent activity routine;

a fraud claim routine;

a loan payment routine;

a fund transfer routine; or

an order access routine.

7. The system of claim 1 , wherein each of the plurality of service tags comprises one of the following:

balance;

bill;

claim;

new account; or

transfer.

8. The system of claim 1 , wherein the statistical language model comprises at least one of the following:

a unigram model;

an n-gram model;

an exponential language model; or

a neural language model.

9. A non-transitory computer-readable medium comprising a logic for processing voice responses, the logic, when executed by one or more processors, instructing the one or more processors to:

store a correlation table, the correlation table comprising a plurality of self-service routines, a plurality of service tags, and a plurality of actions, each action correlating to a pair of a self-service routine and a service tag;

store a plurality of pre-defined responses associated with the plurality of self-service routines, each self-service routine associated with a subset of the plurality of pre-defined responses;

receive a first self-service call flow from a user, the first self-service call flow associated with a first self-service routine;

in response to the first self-service call flow, issue a query to the user for requesting subsequent instructions from the user;

receive a first utterance from the user in response to the query;

identify a first subset of the pre-defined responses associated with the first self-service routine;

compare the first utterance with each of the first subset of the pre-defined responses;

in response to determining that the first utterance does not match any of the first subset of the pre-defined responses, analyze the first utterance with a pre-defined statistical language model;

identify one or more keywords of the first utterance based on the analysis;

determine a service tag of the first utterance based on the one or more keywords;

compare the service tag of the first utterance with each of the plurality of service tags;

in response to determining that the service tag of the first utterance matches a first service tag, associate the first utterance with the first service tag and the first self-service routine; and

identify a first action for the first utterance that correlates to the first service tag and the first self-service routine.

10. The non-transitory computer-readable medium of claim 9 , wherein the query comprises the first subset of the predefined responses.

11. The non-transitory computer-readable medium of claim 9 , wherein the logic, when executed by the one or more processors, further instructs the one or more processors to:

in response to determining that the first utterance matches one of the first subset of the pre-defined responses, perform an action corresponding to the matching pre-defined response.

12. The non-transitory computer-readable medium of claim 9 , wherein the logic, when executed by the one or more processors, further instructs the one or more processors to:

receive a second self-service call flow from the user, the second self-service call flow associated with a second self-service routine;

in response to the second self-service call flow, identify a second subset of the pre-defined responses associated with the second self-service routine;

issue a second query to the user for requesting subsequent instructions from the user;

receive a second utterance from the user in response to the second query;

compare the second utterance with each of the second subset of the pre-defined response; and

determine that the second utterance does not match any of the second subset of the pre-defined responses based on the comparison.

13. The non-transitory computer-readable medium of claim 12 , wherein the logic, when executed by the one or more processors, further instructs the one or more processors to:

in response to determining that the second utterance does not match any of the second subset of the pre-defined responses, correlate the second utterance to the statistical language model;

identify one or more keywords of the second utterance based on the correlating;

determine a service tag of the second utterance based on the one or more keywords of the second utterance;

compare the service tag of the second utterance with each of the plurality of service tags;

in response to determining that the service tag of the second utterance also matches the first service tag, associate the second utterance with the first service tag and the second self-service routine; and

identify a second action for the first utterance that correlates to the first service tag and the second self-service routine.

14. The non-transitory computer-readable medium of claim 9 , wherein the statistical language model comprises at least one of the following:

a unigram model;

an n-gram model;

an exponential language model; or

a neural language model.

15. A method for processing voice responses, comprising:

storing a correlation table, the correlation table comprising a plurality of self-service routines, a plurality of service tags, and a plurality of actions, each action correlating to a pair of a self-service routine and a service tag;

storing a plurality of pre-defined responses associated with the plurality of self-service routines, each self-service routine associated with a subset of the plurality of pre-defined responses;

receiving a first self-service call flow from a user, the first self-service call flow associated with a first self-service routine;

in response to the first self-service call flow, issuing a query to the user for requesting subsequent instructions from the user;

receiving a first utterance from the user in response to the query;

identifying a first subset of the pre-defined responses associated with the first self-service routine;

comparing the first utterance with each of the first subset of the pre-defined responses;

in response to determining that the first utterance does not match any of the first subset of the pre-defined responses, analyzing the first utterance with a pre-defined statistical language model;

identifying one or more keywords of the first utterance based on the analysis;

determining a service tag of the first utterance based on the one or more keywords;

comparing the service tag of the first utterance with each of the plurality of service tags;

in response to determining that the service tag of the first utterance matches a first service tag, associating the first utterance with the first service tag and the first self-service routine; and

identifying a first action for the first utterance that correlates to the first service tag and the first self-service routine.

16. The method of claim 15 , wherein the query comprises the first subset of the predefined responses.

17. The method of claim 15 , wherein the method further comprises:

in response to determining that the first utterance matches one of the first subset of the pre-defined responses, performing an action corresponding to the matching pre-defined response.

18. The method of claim 15 , wherein the method further comprises:

receiving a second self-service call flow from the user, the second self-service call flow associated with a second self-service routine;

in response to the second self-service call flow, identifying a second subset of the pre-defined responses associated with the second self-service routine;

issuing a second query to the user for requesting subsequent instructions from the user;

receiving a second utterance from the user in response to the second query;

comparing the second utterance with each of the second subset of the pre-defined response; and

determining that the second utterance does not match any of the second subset of the pre-defined responses based on the comparison.

19. The method of claim 18 , wherein the method further comprises:

in response to determining that the second utterance does not match any of the second subset of the pre-defined responses, correlate the second utterance to the statistical language model;

identifying one or more keywords of the second utterance based on the correlating;

determining a service tag of the second utterance based on the one or more keywords of the second utterance;

comparing the service tag of the second utterance with each of the plurality of service tags;

in response to determining that the service tag of the second utterance also matches the first service tag, associating the second utterance with the first service tag and the second self-service routine; and

identifying a second action for the first utterance that correlates to the first service tag and the second self-service routine.

20. The method of claim 15 , wherein the statistical language model comprises at least one of the following:

a unigram model;

an n-gram model;

an exponential language model; or

a neural language model.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 13, 2018
From: TOBIN, KYLE A.; LUTZKOW, ROBERT E., JR; MORSE, ROBERT S.; PADAM, JITENDRA KUMAR; RANDRUP, SCOTT STEVEN
To: BANK OF AMERICA CORPORATION
Reel/Frame 046347/0962 →
Cited By (1)
US 12,647,468