Methods and apparatus for automatic call routing including disambiguating routing decisions
First Claim
1. A call routing system for routing a call to a desired destination, comprising:
- a caller interface for conveying information to a caller and receiving caller information from the caller for use in routing of a call;
a routing module for routing a call to a desired destination based on caller information received by the caller interface, the routing module being operative to formulate a query based on terms contained within the caller information, the routing module being further operative to determine a match between the query and one of a plurality of documents, each of the plurality of documents being associated with a destination, the routing module being operative to route the call to the destination associated with the document matching the query, the routing module being further operative to detect ambiguity in the match between the query and the one of the plurality of documents;
a disambiguation module for disambiguating an ambiguous match between the query and one of the plurality of documents, the disambiguation module being operative to create one or more disambiguating questions to be provided to the caller through the caller interface, the disambiguation module being further operative to receive an answer to the disambiguating questions from the caller interface, the disambiguation module being operative to add information from the answer to the disambiguating questions to the query to produce a refined query, the disambiguation module being further operative to return the refined query to the routing module for use by the routing module in routing the call; and
a training system for creating the plurality of documents, the training system being operative to receive a plurality of calls and store caller contributions to each call, each call being routed to a destination by a human operator, the training system being operative to create the plurality of documents by storing in each document associated with each of the destinations all terms of each call routed to the destination.
1 Assignment
0 Petitions
Accused Products
Abstract
An automatic call routing system for directing a call to a desired destination. The routing system poses questions to a caller and uses the caller'"'"'s responses create a query which is used to direct the call to a destination associated with one of a plurality of documents created during a training phase. The documents are created by receiving calls, collecting caller contributions to each call, directing each call to a destination by a human operator, and storing and processing the caller contributions to each call directed to a particular destination. If a caller'"'"'s responses do not permit a call to be unambiguously routed to a destination, the routing system poses clarifying questions and receives caller responses. The caller responses are used to create a refined query for use in a subsequent attempt to route the call.
-
Citations
22 Claims
-
1. A call routing system for routing a call to a desired destination, comprising:
-
a caller interface for conveying information to a caller and receiving caller information from the caller for use in routing of a call;
a routing module for routing a call to a desired destination based on caller information received by the caller interface, the routing module being operative to formulate a query based on terms contained within the caller information, the routing module being further operative to determine a match between the query and one of a plurality of documents, each of the plurality of documents being associated with a destination, the routing module being operative to route the call to the destination associated with the document matching the query, the routing module being further operative to detect ambiguity in the match between the query and the one of the plurality of documents;
a disambiguation module for disambiguating an ambiguous match between the query and one of the plurality of documents, the disambiguation module being operative to create one or more disambiguating questions to be provided to the caller through the caller interface, the disambiguation module being further operative to receive an answer to the disambiguating questions from the caller interface, the disambiguation module being operative to add information from the answer to the disambiguating questions to the query to produce a refined query, the disambiguation module being further operative to return the refined query to the routing module for use by the routing module in routing the call; and
a training system for creating the plurality of documents, the training system being operative to receive a plurality of calls and store caller contributions to each call, each call being routed to a destination by a human operator, the training system being operative to create the plurality of documents by storing in each document associated with each of the destinations all terms of each call routed to the destination. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19)
(a) to form a yes-no question using the selected term having the highest score and receive a response from the caller;
(b) to evaluate the response to determine if the response is affirmative or negative;
(c) if the response is negative, to form a question using the next-highest-scoring selected term, relay the question to the caller, receive the caller'"'"'s response, and return to (b) if the number of attempts does not exceed a predetermined number;
(d) if the response is affirmative, to route the call to the destination indicated by the selected term.
-
-
20. A method of routing calls to one of a plurality of destinations comprising the steps of:
-
performing a training phase to create a plurality of documents, each document being associated with a destination, and document information for use in associating a document with a query, the document information including a scoring matrix containing information usable to associate the query with one of the plurality of documents, the training phase comprising the steps of;
creating a training corpus comprising a plurality of training documents;
performing morphological processing to convert each training document to a morphologically processed document;
filtering each morphologically processed document against an ignore list and a stop list to create a filtered training document;
converting each filtered training document to a routing document;
creating a term-document frequency matrix using the information in the routing documents;
weighting the term-document frequency matrix to create a weighted matrix;
copying the weighted matrix to a scoring matrix;
resolving the scoring matrix to produce an equivalent matrix set;
storing the equivalent matrix set in the scoring matrix; and
creating scoring data from the equivalent matrix set;
receiving a call and exchanging information with a caller, the step of receiving a call including receiving responses from the caller;
extracting terms from the responses from the caller to create the query;
using the query to create a pseudo-document vector;
computing a query-document score for each document using the pseudo-document vector and the scoring matrix;
comparing the query-document score for each document against a threshold;
if no document meets the threshold, routing the call to an alternative routing system;
if the score for one document meets the threshold, routing the call to the destination associated with the one document; and
if the score for more than one document meets the threshold, performing disambiguation between the documents.
-
-
21. A call routing system for routing a call to a desired destination, comprising:
-
a caller interface for conveying information to a caller and receiving caller information from the caller for use in routing of a call;
a routing module for routing a call to a desired destination based on caller information received by the caller interface, the routing module being operative to formulate a query based on terms contained within the caller information, the routing module being further operative to determine a match between the query and one of a plurality of documents, each of the plurality of documents being associated with a destination, the routing module being operative to route the call to the destination associated with the document matching the query, the routing module being further operative to detect ambiguity in the match between the query and the one of the plurality of documents;
a disambiguation module for disambiguating an ambiguous match between the query and one of the plurality of documents, the disambiguation module being operative to create one or more disambiguating questions to be provided to the caller through the caller interface, the disambiguation module being further operative to receive an answer to the disambiguating questions from the caller interface, the disambiguation module being operative to add information from the answer to the disambiguating questions to the query to produce a refined query, the disambiguation module being further operative to return the refined query to the routing module for use by the routing module in routing the call.
-
-
22. A method of routing calls to one of a plurality of destinations comprising the steps of:
-
performing a training phase to create a plurality of documents, each document being associated with a destination, and document information for use in associating a document with a query, the document information including a scoring matrix containing information usable to associate the query with one of the plurality of documents;
receiving a call and exchanging information with a caller, the step of receiving a call including receiving responses from the caller;
extracting terms from the responses from the caller to create the query;
using the query to create a pseudo-document vector;
computing a query-document score for each document using the pseudo-document vector and the scoring matrix;
comparing the query-document score for each document against a threshold;
if no document meets the threshold, routing the call to an alternative routing system;
if the score for one document meets the threshold, routing the call to the destination associated with the one document; and
if the score for more than one document meets the threshold, performing disambiguation between the documents, disambiguation being performed by;
creating one or more disambiguating questions to be provided to the caller;
receiving an answer to the disambiguating questions from the caller;
adding information from the answer to the disambiguating questions to the query to produce a refined query; and
using the refined query to route the call.
-
Specification