With interactive voice response services, it can be frustrating for a user to become stuck in a dialogue where the same question is asked repetitively. Here the wording of questions used by the system are varied throughout the dialogue depending upon how many times a user has visited a particular dialogue state during the call history. Furthermore the wording of the question is also varied in dependence upon the way in which the question was asked the last time the user was in a particular dialogue state.
|
3. An interactive voice response system having a dialogue model comprising:
a plurality of states and a plurality of interconnecting edges;
a current state;
user dialogue data indicating for a user a total number of visits to a state;
the system further comprising message wording selection means, for selecting the wording of a message for sending to the user at a state repeated in said current dialogue, in dependence upon
a) the current state; and
b) the number of times the current state has been repeated during the current dialogue; and
c) the total number of times the current state has been repeated during one or more previous dialogues; and
repeating a) through c) for multiple ones of said plurality of states.
1. A method of operating an interactive voice response system to engage in a current dialogue with a user, said system having a dialogue model comprising
a plurality of states and a plurality of interconnecting edges;
a current state;
user dialogue data indicating for a user a total number of visits to a state;
in which the wording of a message for sending to the user at a state repeated in said current dialogue, is selected in dependence upon
a) the current state; and
b) the number of times the current state has been repeated during the current dialogue; and
c) the total number of times the current state has been repeated during one or more previous dialogues with said user; and
repeating a) through c) for multiple ones of said plurality of states.
7. An interactive voice response system having a dialogue model comprising:
a plurality of states and a plurality of interconnecting edges;
a current state;
user dialogue data indicating for a user a total number of visits to a state,
wherein each state represents a stage of the dialogue and each interconnecting edge represents a transition between one stage of the dialogue and a subsequent stage,
the system further comprising:
stage repetition monitoring means arranged in operation to find the number of times the current stage has been repeated in the current and previous dialogues from said user dialogue data,
message wording selection means arranged in operation to select the wording of a message for sending to the user at said current repeated stage, said message wording being selected in dependence upon
a) the current stage in the dialogue; and
b) the number of times the current stage has been repeated; and
c) the total number of times the user has been at his stage during one or more previously dialogues; and
repeating a) through c) for multiple ones of said plurality of states.
5. A method of operating an interactive voice response system to engage in a current dialogue with a user, said interactive voice response system storing a dialogue model comprising
a plurality of states and a plurality of interconnecting edges,
a current state,
user dialogue data indicating for a user a total number of visits to a state in the current dialogue and a total number of visits in one or more previous dialogues;
wherein each state represents a stage of the dialogue and each interconnecting edge represents a transition between one stage of the dialogue and a subsequent stage,
said method comprising the steps of
finding the number of times the current stage has been repeated in the current and previous dialogues from said user dialogue data; and
selecting the wording to be output by said interactive voice response system at a repeated stage of the current dialogue in dependence upon
a) the current stage in the dialogue; and
b) the number of times the current stage has been repeated, and
c) the total number of times the user has been at this stage during one or more previous and
repeating a) through c) for multiple ones of said plurality of states.
2. A method according to
4. A system according to
6. A method according to
8. A system according to
0. 9. A system according to claim 7, wherein the message wording selection means is further operable to select the message wording in dependence on further data indicating whether the user has earlier visited the current stage during the current dialogue and upon data indicating the message wording which was selected on the most recent occasion on which the user was at the current stage.
0. 10. A system as in claim 3, wherein the user enters a unique identifier and a personal identification number which must match an entry in a user access database before the user can access the system.
0. 11. A system as in claim 10, wherein the user enters the unique identifier and personal identification number using a telephone keypad.
0. 12. A system as in claim 10, wherein the user enters the unique identifier and personal identification number by speaking into a telephone.
0. 13. A system as in claim 7, wherein the user enters a unique identifier and a personal identification number which must match an entry in a user access database before the user can access the system.
0. 14. A system as in claim 13, wherein the user enters the unique identifier and personal identification number using a telephone keypad.
0. 15. A system as in claim 13, wherein the user enters the unique identifier and personal identification number by speaking into a telephone.
0. 16. A method as in claim 1, wherein the user enters a unique identifier and a personal identification number which must match an entry in a user access database before the user can access the system.
0. 17. A method as in claim 2, wherein the user enters a unique identifier and a personal identification number which must match an entry in a user access database before the user can access the system.
|
This application is the US national phase of international application PCT/GB02/01643 filed 8 April 2002 which designated the U.S.
This invention relates to a voice response apparatus and method, particularly although not exclusively for accessing and updating remotely held data using a telephone.
In known voice response systems a dialogue model is used to model a dialogue between a user and the system. Often such a dialogue model comprises states (or nodes) which are notionally connected by edges. Conceptually a user making a call to the visits a state and the system asks the user a question in dependence up on the current state the user is visiting. The user's answer is analysed by the system in order to decide which state the user should visit next, and hence what the next question should be.
However, a problem with such a system is that it is possible for the user to get ‘stuck’ in a particular state, and hence the dialogue becomes repetitive. In the worst case the user terminates the call, at the very least the user is discouraged from using the system again even if they do eventually achieve the task they set out to do.
According to a first aspect of the present invention there is provided a method of operating a current dialogue with a user of an interactive voice response system having a dialogue model comprising
Preferably the prompt definition is selected in dependence on further data indicating whether the user has visited the current state during the current dialogue and upon data indicating the prompt which was selected for the most recent visit to the current state.
Moreover, from a second aspect the present invention further provides an interactive voice response system having a dialogue model comprising:
An embodiment of the present invention will now be described, presented by way of example only, with reference to the accompanying drawings in which:
The computer 101 is connected to a conventional disc storage unit 111 for storing data and programs, a keyboard 113 and mouse 115 for allowing user input and a printer 117 and display unit 119 for providing output from the computer 101. The computer 101 also has access to external networks (not shown) via a network connection card 121.
Recognition results are expected to be error prone, and certain words or phrases will be much more important to the meaning of the input utterance that others. Thus, confidence values associated with each word in the output representation are also provided. The confidence values give a measure related to the likelihood that the associated word has been correctly recognised by the recogniser 10. The output graph including the confidence measures are received by a classifier 6, which classifies the received graph according to a predefined set of meanings, with reference to a semantic model 20 (which is one of a plurality (not shown) of possible semantic models) to form a semantic classification. The semantic classification comprises a vector of likelihoods, each likelihood relating to a particular one of the predefined set of meanings. A dialogue manager 4 operates using a state based dialogue model 18 as will be described more fully later. The dialogue manager 4 uses the semantic classification vector and information about the current dialogue state together with information from the dialogue model 18 and user dialogue data 15 to instruct a message generator 8 to generate a message, which is spoken to the user via a speech synthesiser 12. The message generator 8 uses information from a message model 14 to construct appropriate messages. The speech synthesiser uses a speech unit database 16 which contains speech units representing a particular voice. The dialogue manager 4 also instructs the recogniser 10 which user grammar to use from the user grammar data store 24 for recognising a received response to the generated message, and also instructs the classifier 6 as to the semantic model to use for classification of the received response. The dialogue manager 4 interfaces to other systems 2 (for example, a customer records database).
When a user calls the system the user is asked for a unique user identifier and a personal identification number. If the data entered by the user (which may be spoken or entered using a telephone keypad) matches an entry in a user access database 22 then they are allowed access to the service.
The dialogue model 18 comprises a plurality of states connected together by interconnecting edges. A caller moves to a particular state by speaking a one of several words or phases which are classified by the classifier 6 as having a particular meaning. To use the example above, ‘view my calendar’ and ‘go to my appointments’ may be classified as meaning the same thing as far as the dialogue is concerned, and may take the user to a particular dairy access state.
The user dialogue data store 15 stores a count of the number of times a user has visited a particular state in the dialogue model.
Once a user is in a particular state the dialogue manager instructs the message generator to play a message to the caller to guide them as to the actions they may perform. The verbosity of the message depends upon the count of the number of times the user had previously visited that state, which is stored in the user dialogue data store 15. When a new user calls the system, the message used will be verbose as the count will be equal to 0. The messages become more concise as the stored count for that state increases i.e. each time an individual user uses the state, whether or not the use of the state is during a single call or whether the use is during a later call to the system. The count values stored in the store 15 may be updated periodically to reduce the value if a particular user has not used a particular state recently, therefore the messages will become more verbose over time should a user not enter that state in subsequent calls, or if a user has not used the system for some time.
The user dialogue data store 15 also stores a Boolean flag indicating whether or not a user has visited a particular state in the dialogue model within a particular call, together with a record of the message which was played to the user the last time that state was visited. When the user visits the same state on more than one occasion during a particular call, messages will be selected by the dialogue manager 4 to ensure a different message is played to that played last time the state was visited during the call. This avoids the repetition that human factors analysis shows detrimentally affects the likelihood of a user reusing the system. For any sate with potential repetition, there are a plurality of messages stored in the message model store 14, with the next message to be used randomly selected from the set not including the message used previously (which is stored in the user dialogue data store 15).
In order to tailor the system to a particular user so that the system becomes easier to use as the system is used more, each time a user calls the system data is stored in a speech data store 32. Speech data received from the user is recognised by the recogniser 10 with reference to the user grammar data store 24. Initially before any calls have been made by a user the user grammar data is identical to generic grammar data stored in a generic grammar data store 36.
The speech data store 32 stores for each user speech data along with the sequences of words or sub-words which were recognised by the recogniser 10. After each call the recognised speech is used by a weighting updater 30 to update weighting values for words which have been recognised in a grammar definition store 40. For the particular user who made the call the words which have been recognised have a weighting value increased. In other embodiments of the invention words which have not been used also have their weighting value decreased. Once a day a compiler 38 is used to update the user grammar data store 42 according to the weighting values stored in the grammar definition store 40. A method of updating a grammar for a speech recogniser according to provided weighting values is described in our co-pending patent application no EP96904973.3. Together the weighting updater 30, the grammar definition store 40 and the compiler 38 provide the grammar updater 42 of the present invention.
Recognised speech does not need to be stored in a speech data store, in other embodiments of the invention recognised speech may be used to update user grammar data in a single process which may be carried out immediately. Furthermore it will be understood that the updating process could take at predetermined time intervals as described above, or could conveniently be done whenever there is spare processing power available, for example when there are no calls in progress.
The result of the use of the compiler 38 is that words or phrases which a particular user uses more frequently are given a higher weighting in the user grammar data store 24 than those which are hardly ever used. It is possible in fact to effectively delete words from a particular user grammar by providing a weighting value of 0. Of course, it may happen that a user starts to use words which have not been used previously. The recogniser 10 may not recognise these words due to the fact that these words have a very low weighting value associated with them for that user in the user grammar data store 42. In order to prevent this problem the users speech which has been stored in the speech data store 32 is periodically recognised by the speech recogniser 10 using generic grammar data 36, and the recognised speech is sent to a grammar data checker 34 which checks that no words have been recognised which have been previously been given a very low weighting. If this is the case then the weighting value for that word will be updated accordingly, and the compiler 38 is used to update the user grammar data store 42 according to the updated weighting values stored in the grammar definition store 40.
Whilst this invention has been described with reference to stores 32, 40, 42 which store data for each user it will be understood that this data could be organised in any number of ways, for example there could be a separate store for each user, or store 42 could be organised as a separate store for each grammar for each user.
As will be understood by those skilled in the art, the interactive voice response program 109 can be contained on various transmission and/or storage mediums such as a floppy disc, CD-ROM, or magnetic tape so that the program can be loaded onto one or more general purpose computers or could be downloaded over a computer network using a suitable transmission medium.
Unless the context clearly requires otherwise, throughout the description and the claims, the words “comprise”, “comprising” and the like are to be construed in an inclusive as opposed to an exclusive or exhaustive sense; that is to say, in the sense of “including, but not limited to”.
Harrison, Michael Andrew, Popay, Paul Ian, Watton, Neil Lewis
Patent | Priority | Assignee | Title |
Patent | Priority | Assignee | Title |
4932021, | Apr 03 1989 | AVAYA Inc | Path learning feature for an automated telemarketing system |
5694558, | Apr 22 1994 | Qwest Communications International Inc | Method and system for interactive object-oriented dialogue management |
5787151, | May 18 1995 | RPX CLEARINGHOUSE LLC | Telephony based delivery system of messages containing selected greetings |
5818908, | Nov 05 1996 | AT&T Corp.; AT&T Corporation | Selective voice menu system |
6016336, | Nov 18 1997 | AT&T Corp | Interactive voice response system with call trainable routing |
6061433, | Oct 19 1995 | InterVoice Limited Partnership | Dynamically changeable menus based on externally available data |
6167117, | Oct 07 1996 | RPX CLEARINGHOUSE LLC | Voice-dialing system using model of calling behavior |
6349134, | Jul 10 1985 | Ronald A. Katz Technology Licensing, L.P. | Telephonic-interface statistical analysis system |
6370238, | Sep 19 1997 | UNIFY GMBH & CO KG | System and method for improved user interface in prompting systems |
6404874, | Mar 27 1997 | Cisco Technology, Inc. | Telecommute server |
6434223, | Jul 10 1985 | Ronald A. Katz Technology Licensing, L.P. | Telephone interface call processing system with call selectivity |
6449496, | Feb 08 1999 | QUALCOMM INCORPORATED, A CORP OF DELAWARE | Voice recognition user interface for telephone handsets |
6456619, | Dec 04 1997 | UNIFY GMBH & CO KG | Method and system for supporting a decision tree with placeholder capability |
6487277, | Sep 19 1997 | UNIFY GMBH & CO KG | Apparatus and method for improving the user interface of integrated voice response systems |
6501832, | Aug 24 1999 | Genesys Telecommunications Laboratories, Inc | Voice code registration system and method for registering voice codes for voice pages in a voice network access provider system |
6512415, | Jul 10 1985 | Ronald A. Katz Technology Licensing LP. | Telephonic-interface game control system |
6570967, | Jul 10 1985 | Ronald A. Katz Technology Licensing, L.P. | Voice-data telephonic interface control system |
6584181, | Sep 19 1997 | UNIFY, INC | System and method for organizing multi-media messages folders from a displayless interface and selectively retrieving information using voice labels |
6678360, | Jul 10 1985 | Ronald A. Katz Technology Licensing, L.P. | Telephonic-interface statistical analysis system |
6707889, | Aug 24 1999 | Genesys Telecommunications Laboratories, Inc | Multiple voice network access provider system and method |
6757362, | Mar 06 2000 | AVAYA Inc | Personal virtual assistant |
6792086, | Aug 24 1999 | Genesys Telecommunications Laboratories, Inc | Voice network access provider system and method |
6850949, | Jun 03 2002 | Oracle OTC Subsidiary LLC | System and method for generating a dynamic interface via a communications network |
6885733, | Dec 03 2001 | AT&T Corp. | Method of providing a user interface for audio telecommunications systems |
6888929, | Aug 24 1999 | Genesys Telecommunications Laboratories, Inc | Revenue generation method for use with voice network access provider system and method |
6895084, | Aug 24 1999 | Genesys Telecommunications Laboratories, Inc | System and method for generating voice pages with included audio files for use in a voice page delivery system |
7003079, | Mar 05 2001 | CX360, INC | Apparatus and method for monitoring performance of an automated response system |
7245706, | Apr 19 2001 | British Telecommunications public limited company | Voice response system |
7324942, | Jan 29 2002 | MicroStrategy, Incorporated | System and method for interactive voice services using markup language with N-best filter element |
7415100, | Mar 06 2000 | AVAYA Inc | Personal virtual assistant |
7457397, | Aug 24 1999 | Genesys Telecommunications Laboratories, Inc | Voice page directory system in a voice page creation and delivery system |
7756258, | Dec 11 2003 | British Telecommunications public limited company | Communications system with direct access mailbox |
7920678, | Mar 06 2000 | Avaya Inc. | Personal virtual assistant |
8000453, | Mar 06 2000 | AVAYA Inc | Personal virtual assistant |
EP697780, | |||
EP973314, | |||
EP992980, | |||
GB2342530, | |||
WO65814, | |||
WO78022, |
Executed on | Assignor | Assignee | Conveyance | Frame | Reel | Doc |
Jul 16 2009 | British Telecommunications public limited company | (assignment on the face of the patent) | / |
Date | Maintenance Fee Events |
Jan 12 2015 | M1552: Payment of Maintenance Fee, 8th Year, Large Entity. |
Jan 08 2019 | M1553: Payment of Maintenance Fee, 12th Year, Large Entity. |
Date | Maintenance Schedule |
Aug 26 2017 | 4 years fee payment window open |
Feb 26 2018 | 6 months grace period start (w surcharge) |
Aug 26 2018 | patent expiry (for year 4) |
Aug 26 2020 | 2 years to revive unintentionally abandoned end. (for year 4) |
Aug 26 2021 | 8 years fee payment window open |
Feb 26 2022 | 6 months grace period start (w surcharge) |
Aug 26 2022 | patent expiry (for year 8) |
Aug 26 2024 | 2 years to revive unintentionally abandoned end. (for year 8) |
Aug 26 2025 | 12 years fee payment window open |
Feb 26 2026 | 6 months grace period start (w surcharge) |
Aug 26 2026 | patent expiry (for year 12) |
Aug 26 2028 | 2 years to revive unintentionally abandoned end. (for year 12) |