1. Field of the Invention
This invention relates generally to IVR and other customer service systems, and, more particularly, to using natural language understanding to better respond to customer queries in a customer service/IVR system.
2. Description of the Background Art
Many companies use interactive voice response systems to communicate with customers over the phone. Using an IVR system enables customer calls to be handled more quickly and more cost effectively than having live agents handle all calls.
Callers to an IVR system will often elect to “opt out” of the IVR system and queue for a human agent. The opt-out rate in IVR systems can be significant—30-35% on average and as high as 65%. When a user opts out of an IVR system, the cost for handling customer calls increases because live agent time is more expensive than IVR system time. Also, when a user opts for a live agent, the hold time for the user can be significant (several minutes or longer). Therefore, it is desirable to have an IVR system (or other customer service system) that can better respond to user queries in an automated manner in order to minimizing agent cost while maintaining or increasing user satisfaction.
The present invention provides a system, method, and software program that use natural language understanding to increase the ability of a customer service system to respond to a user's query in an automated manner.
In one embodiment of the invention, the customer service system is an IVR system. In such embodiment, when an IVR system receives a request from a user to speak with a live agent, the user is offered the option to record a query and have the system contact the user at a later time with a response to the query. For example, if a user requests an agent, the IVR system may inform the user that there is a queue for an agent, and provide the user with the option of having the system contact the user at a later time with a response to his/her query. This may be appealing to a user, as the user will not have to wait on the phone for an agent.
If the user accepts the option, the IVR system asks the user to state his query. The IVR system records the query and then terminates the call with the user. The IVR system provides the user' query to an offline natural language understanding interpreter and receives a natural language understanding result. Performing the natural language understanding processing offline (i.e., when the user is not on the line) instead of in real-time enables the IVR system to obtain a higher-quality and likely more accurate understanding of the user's query,
The IVR system maintains a database of frequently-asked queries and corresponding response protocols. The IVR system users the natural language understanding result to determine if the user's query matches a query in the database. If so, the IVR system contacts the user with an automated response in accordance with the predetermined response protocol for the query. If the user's query does not match an entry in the database, the IVR system requests a response from a live agent then sends the agent's response in an automated manner. The user may be contacted via a variety of communication channels, including, but not limited to phone, email, web chat, and SMS.
In an alternate embodiment of the invention, the system does not terminate the call with the user after the user records a query. Instead, the system uses real-time natural language understanding to attempt to assist the user while the user is queuing for an agent.
The present invention is not limited to IVR systems and the methods described herein can apply to queries submitted to customer service systems via email, SMS, web chat, and other channels.
a-1b are a flowchart that illustrates a method performed by an IVR system for providing an automated response to a user using natural language understanding.
a-3b are a flowchart that illustrates a method performed by a customer service system for providing an automated response to a user using natural language understanding.
a-5b are a flowchart that illustrates an alternate method performed by an IVR system for providing an automated response to a user using natural language understanding.
The present invention provides a system, method, and software program that use natural language understanding to increase the ability of a customer service system to respond to a user's query in an automated manner. For purpose of this invention, a query includes the following:
In the method of
If the user declines the offer, the user is queued for a live agent (step 125). If the user accepts the offer, the IVR system prompts the user to state his/her query, and records the subsequent speech input (step 130). The IVR system then terminates the call with the user (step 132).
The IVR system performs voice recognition on the speech input and obtains a voice recognition result with associated confidence measure(s) (step 135). If the confidence measure(s) for the voice recognition result does not meet a minimum threshold (step 140), the IVR system either (i) calls the user back with a live agent or (ii) has the speech input transcribed by a person and proceeds to step 145 (step 142).
Performing the speech recognition offline enables the system to spend more time on the recognition process and, thus, likely obtain a more accurate recognition result. However, in an alternate embodiment, step 135 is performed in real-time while the user is still on the line. In such embodiment, if the system has difficulty recognizing the user's speech, the user may be queued for a live agent instead of terminating the call.
If the system is able to obtain a recognition result that meets or exceeds the minimum threshold, the system optionally converts the best recognition result to text (step 143). The user's speech input (either in voice or text form) is then provided to a natural language understanding interpreter (step 145). As is the case with the speech recognition, performing the natural language understanding processing offline (i.e., when the user is not on the line) gives the system more time to do the processing and, hence, obtain a better semantic understanding of the user's query.
The natural language interpreter provides a natural language interpretation result (step 147). In one embodiment, the result is a set of semantic slots and corresponding values for such semantic slots. For example, if the user's query is “I want to transfer $500 from checking to saving, the interpretation result may be as follows:
In the preferred embodiment, the interpretation result includes a confidence measure for each slot and corresponding value.
The IVR system uses the natural language interpretation result to determine if the user's query substantially matches an entry in a database of frequently-asked queries (step 150). In one embodiment, this comprises determining if the slots and corresponding values match or substantially match an entry in the database with a minimum degree of confidence.
Each query in the database of frequently-asked queries is associated with a predetermined response protocol. If the user's query substantially matches a query in the database of frequently-asked queries, the system provides an automated response in accordance with the response protocol for the query (step 155). The response protocol may involve a back-and-forth dialog between the user and the system. For example, the response protocol may specify required information that is needed from the user, and, if the system does not have all such required information, the response protocol would include asking the user for the information. Also, the response protocol may depend on other environmental data, such as user account information or inventory data.
If the query is a question, the response may be an answer to the question. If the user's query is a request, the response from the system may be a dialog that assists the user with the requested transaction. If the user's query is a problem statement, the response from the system may be either a dialog that assists the user with solving the problem or a notification that the problem has been resolved. If the IVR system is a front-end routing system, the response may be a call back to the user with the correct destination on the line.
In one embodiment, after the system provides a response, the system asks the user if he/she is satisfied with the response. If the user is not satisfied with the response, the system offers to transfer the user to a live agent. If the user accepts the offer, the system may give the user a high priority in queuing for an agent.
The system may provide the response to the user via one or more of a plurality of communication channels, including but not limited to, voice, fax, SMS, email, and web chat.
Referring again to step 150 in
Steps 535-550 are essentially the same as steps 135-150 in
In one embodiment, instead of queuing the user in step 525, the IVR system could perform steps 530-550 without queuing a user for a live agent. In such embodiment, a user would only be queued for a live agent only if the system was unable to provide the user with a satisfactory assistance.
The system can learn from live agents to obtain additional automation over time. If the system is unable to recognize a user's speech input, the system can learn from a human's transcription of the speech input. If the system is unable obtain a sufficient natural language understanding of the user's query, an agent may provide a semantic tagging for the query, which can be used to train the natural language understanding interpreter. The system also can learn from agent responses to queries that are not in the database. The system may ask the user if they are satisfied with the agent's response and use the users' feedback to identify the best response to the query. In one embodiment, the system grades agent responses based on the users' feedback, and stores agent responses in association with their respective grades. If the user's query is later added to the database of frequently-asked queries, the agent response with the best grade may be used to develop a response protocol for the query.
The platform includes an Inbound Application 205 that handles incoming user calls. The Inbound Application 205 includes a voice dialog application (e.g., a voice XML application), grammars, recorded prompts, and a speech-to-text converter. The Inbound Application 205 works in conjunction with Real-Time Speech Recognition Module 210 in order to recognize use's speech while the user is on the line in real time. The system also includes a Real-Time Natural Language Understanding Interpreter (215) that performs real-time natural language understanding if needed. For a system implementing the method of
Customer Recordings Module 235 temporarily stores queries recorded by the customer. If a user elects to record a query and then terminate the call, the Offline Control Application 220 guides the IVR system through steps 135-165 illustrated in
The Offline Automatic Speech Recognition Module 225 performs offline speech recognition, and the Offline Natural Language Understanding Interpreter 230 performs offline natural language understanding. An example of a natural language understanding interpreter is disclosed in U.S. Pat. No. 6,629,066 titled “Method and System for Building and Running Natural Language Understanding Systems,” the contents of which are incorporated by reference herein as if fully disclosed herein.
The IVR platform includes a Database of Working Queries 260, as well as a Database of Frequently-Asked Queries 265. The Database of Working Queries 260 stores all queries submitted by users, and the Database of Frequently-Asked Queries 265 stores frequently-asked queries for which there is a predetermined response protocol. Databases 260 and 265 can be implemented as relational database tables or structured XML documents. In one embodiment, the Database of Working Queries 260 stores the current rank of each query, wherein, as described with respect to
Outbound Application 240 handles outbound communications to the user that are initiated by the IVR system, including calling a user back with a response to a query. Outbound Application 240 includes a voice dialog application, grammars, recorded prompts, and a text-to-speech converter. A user can communicate with the IVR system via a number of devices, such as a traditional telephone connected to the Plain Old Telephone Network (POTS), an SMS-capable Telephone, a Smartphone, or a computer.
The IVR platform 200 also includes Agent Desktops 245, as well as Agent Responses 250. Agent Responses Module 250 stores agent responses (in text or speech, but preferably in text form) to user's queries. The Agent Response Module 250 also stores the grades associated with the responses.
As stated above the present invention is not limited to IVR systems in which a user contacts the system via phone. The present invention can also apply to other types of customer service systems in which a user submits a query via text message, email, web chat, fax, etc.
As will be understood by those familiar with the art, the invention may be embodied in other specific forms without departing from the spirit or essential characteristics thereof. Accordingly, the above disclosure of the present invention is intended to be illustrative and not limiting of the invention.
This application is a continuation of prior, co-pending U.S. patent application Ser. No. 12/803,314, entitled “Customer Service System, Method, and Software Program Product for Responding to Queries Using Natural Language Understanding,” and filed on Jun. 24, 2010, the contents of which are incorporated by reference as if fully disclosed herein.
Number | Name | Date | Kind |
---|---|---|---|
4164025 | Dubnowski et al. | Aug 1979 | A |
4697282 | Winter et al. | Sep 1987 | A |
4918322 | Winter et al. | Apr 1990 | A |
5386455 | Cooper | Jan 1995 | A |
5553119 | McAllister et al. | Sep 1996 | A |
5638425 | Meador et al. | Jun 1997 | A |
5677990 | Junqua | Oct 1997 | A |
5724481 | Garberg et al. | Mar 1998 | A |
5799065 | Junqua et al. | Aug 1998 | A |
5819265 | Ravin et al. | Oct 1998 | A |
5875394 | Daly et al. | Feb 1999 | A |
5946613 | Hayes et al. | Aug 1999 | A |
5991720 | Galler et al. | Nov 1999 | A |
6167383 | Henson | Dec 2000 | A |
6173266 | Marx et al. | Jan 2001 | B1 |
6208965 | Brown et al. | Mar 2001 | B1 |
6216111 | Walker et al. | Apr 2001 | B1 |
6314165 | Junqua et al. | Nov 2001 | B1 |
6334103 | Surace et al. | Dec 2001 | B1 |
6363357 | Rosenberg et al. | Mar 2002 | B1 |
6404876 | Smith et al. | Jun 2002 | B1 |
6473734 | Dvorak | Oct 2002 | B1 |
6490521 | Wiener | Dec 2002 | B2 |
6584180 | Nemoto | Jun 2003 | B2 |
6587558 | Lo | Jul 2003 | B2 |
6618704 | Kanevsky et al. | Sep 2003 | B2 |
6650887 | McGregor et al. | Nov 2003 | B2 |
6662163 | Albayrak et al. | Dec 2003 | B1 |
6728353 | Espejo et al. | Apr 2004 | B1 |
6731737 | Davis | May 2004 | B2 |
6792102 | Shires | Sep 2004 | B2 |
6853987 | Cook | Feb 2005 | B1 |
6876728 | Kredo et al. | Apr 2005 | B2 |
6917802 | Nilsson | Jul 2005 | B1 |
6996531 | Korall et al. | Feb 2006 | B2 |
7006971 | Stahl et al. | Feb 2006 | B1 |
7023979 | Wu et al. | Apr 2006 | B1 |
7143037 | Chestnut | Nov 2006 | B1 |
7412402 | Cooper | Aug 2008 | B2 |
7424427 | Liu et al. | Sep 2008 | B2 |
7487095 | Hill et al. | Feb 2009 | B2 |
7529678 | Kobal | May 2009 | B2 |
7698140 | Bhardwaj et al. | Apr 2010 | B2 |
7724878 | Timmins et al. | May 2010 | B2 |
7783755 | Goss et al. | Aug 2010 | B2 |
7881703 | Roundtree et al. | Feb 2011 | B2 |
7996251 | Kannan et al. | Aug 2011 | B2 |
20010010714 | Nemoto | Aug 2001 | A1 |
20010011230 | Morganstein et al. | Aug 2001 | A1 |
20010037241 | Puri | Nov 2001 | A1 |
20010039492 | Nemoto | Nov 2001 | A1 |
20010056359 | Abreu | Dec 2001 | A1 |
20020010000 | Chern et al. | Jan 2002 | A1 |
20020034940 | Takae et al. | Mar 2002 | A1 |
20020065736 | Wilner et al. | May 2002 | A1 |
20020077833 | Arons et al. | Jun 2002 | A1 |
20020077898 | Koulouris | Jun 2002 | A1 |
20020087323 | Thomas et al. | Jul 2002 | A1 |
20020120582 | Elston et al. | Aug 2002 | A1 |
20020169618 | Caspari | Nov 2002 | A1 |
20020177914 | Chase | Nov 2002 | A1 |
20030007464 | Balani | Jan 2003 | A1 |
20030023439 | Ciurpita et al. | Jan 2003 | A1 |
20030061171 | Gilbert et al. | Mar 2003 | A1 |
20030130904 | Katz et al. | Jul 2003 | A1 |
20030162561 | Johnson et al. | Aug 2003 | A1 |
20030177009 | Odinak et al. | Sep 2003 | A1 |
20030185359 | Moore et al. | Oct 2003 | A1 |
20030204444 | Van Luchene et al. | Oct 2003 | A1 |
20040012501 | Mazzara et al. | Jan 2004 | A1 |
20040019487 | Kleindienst et al. | Jan 2004 | A1 |
20040047453 | Fraser | Mar 2004 | A1 |
20040111267 | Jadhav et al. | Jun 2004 | A1 |
20040161097 | Henry | Aug 2004 | A1 |
20040162724 | Hill et al. | Aug 2004 | A1 |
20040185833 | Walden et al. | Sep 2004 | A1 |
20050131910 | Yanagisawa | Jun 2005 | A1 |
20050163296 | Smith et al. | Jul 2005 | A1 |
20050177368 | Odinak | Aug 2005 | A1 |
20050183032 | Bushey et al. | Aug 2005 | A1 |
20050261990 | Gocht et al. | Nov 2005 | A1 |
20060009218 | Moss | Jan 2006 | A1 |
20060080107 | Hill et al. | Apr 2006 | A1 |
20060106610 | Napper | May 2006 | A1 |
20060135215 | Chengalvarayan et al. | Jun 2006 | A1 |
20060262919 | Danson et al. | Nov 2006 | A1 |
20070117584 | Davis et al. | May 2007 | A1 |
20080088440 | Palushaj | Apr 2008 | A1 |
20090164214 | Baciu et al. | Jun 2009 | A1 |
Entry |
---|
Simoudis, E. (2000). If it's not one channel, then it's another. Bank Marketing, 32(1), 48-50+. |
Number | Date | Country | |
---|---|---|---|
20130223600 A1 | Aug 2013 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 12803314 | Jun 2010 | US |
Child | 13774910 | US |