WO2004109658A1 - 音声応答システム、音声応答方法、音声サーバ、音声ファイル処理方法、プログラム及び記録媒体 - Google Patents

音声応答システム、音声応答方法、音声サーバ、音声ファイル処理方法、プログラム及び記録媒体 Download PDF

Info

Publication number
WO2004109658A1
WO2004109658A1 PCT/JP2004/007368 JP2004007368W WO2004109658A1 WO 2004109658 A1 WO2004109658 A1 WO 2004109658A1 JP 2004007368 W JP2004007368 W JP 2004007368W WO 2004109658 A1 WO2004109658 A1 WO 2004109658A1
Authority
WO
WIPO (PCT)
Prior art keywords
voice
file
audio
variable
grammar
Prior art date
Application number
PCT/JP2004/007368
Other languages
English (en)
French (fr)
Inventor
Yoshinori Tahara
Tomoko Murayama
Masahiro Baba
Original Assignee
International Business Machines Corporation
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corporation filed Critical International Business Machines Corporation
Priority to CN200480021899XA priority Critical patent/CN1830022B/zh
Priority to JP2005506746A priority patent/JP4478647B2/ja
Priority to DE602004010804T priority patent/DE602004010804T2/de
Priority to AU2004246451A priority patent/AU2004246451A1/en
Priority to EP04745404A priority patent/EP1632932B1/en
Publication of WO2004109658A1 publication Critical patent/WO2004109658A1/ja

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L13/00Speech synthesis; Text to speech systems
    • G10L13/02Methods for producing synthetic speech; Speech synthesisers
    • G10L13/033Voice editing, e.g. manipulating the voice of the synthesiser
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • G10L2015/226Procedures used during a speech recognition process, e.g. man-machine dialogue using non-speech characteristics
    • G10L2015/228Procedures used during a speech recognition process, e.g. man-machine dialogue using non-speech characteristics of application context

Definitions

  • Voice response system voice response method, voice server, voice file processing method, program, and recording medium
  • the present invention relates to an automatic voice response system, and more specifically, to a system that performs a response by an automatic synthesized voice using voice recognition.
  • a voice file pre-recorded has been used.
  • VoiceXML which defines the standard speech interface
  • Patent Document 1 there is the following Patent Document 1 as a VoIP-based voice system using VoiceXML.
  • Patent Document 1 Japanese Patent Application Laid-Open No. 2002-57724
  • an audio file needs to be recorded divided into a variable front part, a variable part, and a variable rear part.
  • the order item is “ ⁇ rice ⁇ ”, which contains the name of the product as a variable part
  • the order file is “ordered products”, “rice” and “is”! Need to be created.
  • the recorder has to speak the unnaturally divided part of the sentence, which is a problem because it results in an unnatural utterance and the playback result lacks naturalness and smoothness. .
  • the present invention can be regarded as a system, which is a voice response system including an application server and a voice sano, wherein the application 'server is a first voice file.
  • the second voice file and voice information, and the voice server sends the voice information and the first information from the application 'server.
  • Voice file processing means for receiving a voice file and generating a grammar based on the voice information, and voice recognition for recognizing the first voice file based on the grammar and dividing it into a plurality of voice files.
  • a voice response system comprising: means; and voice processing means for replacing at least one voice file among the divided voice files with the second voice file.
  • the first audio file may be recorded as a single file of the entire sentence including a variable part indicating that a variable is entered.
  • the second audio file may be a sound recorded in the variable section recorded as a file.
  • the audio information includes a file name of the first audio file, and the audio file processing means extracts the first audio file based on the full-text audio file name. can do.
  • the voice information may include alternative text, and the voice file processing means may generate a grammar based on the alternative text.
  • the audio information may include variable information indicating whether or not processing for a variable needs to be performed. Furthermore, it can be provided with voice output means for outputting voice.
  • a voice response method in a voice response system including an application 'server and a voice server, wherein the application' server has a first voice file, a second voice file, and a voice
  • the voice server receives the voice information and the first voice file from the application server, and generates a grammar based on the voice information. And recognizing the first audio file based on the grammar and dividing the first audio file into a plurality of audio files; and at least one audio file of the divided audio files is the second audio file. It provides a voice response method that includes the step of replacing with a voice file.
  • the first audio file may be recorded as a single file of the entire sentence including a variable portion indicating that a variable is entered.
  • the second audio file may be a sound recorded in the variable section recorded as a file.
  • the audio information includes a file name of the first audio file, The first audio file can be extracted based on the first audio file name.
  • the voice information may include alternative text, and a grammar may be generated based on the alternative text.
  • the audio information may include variable information indicating whether or not processing for the variable needs to be performed.
  • the application 'a program for executing a voice response in a voice response system including a server and a voice server, wherein the abrasion' server includes a first voice file, a second voice file, and a second voice file. Audio files and audio information, and the program executes the audio server.
  • the first audio file may be recorded as a single file of the entire sentence including a variable part indicating that a variable is entered.
  • the second audio file may be a sound recorded in the variable section recorded as a file.
  • the audio information includes a file name of the first audio file, and the audio file processing means extracts the first audio file based on the full-text audio file name. can do.
  • the voice information may include alternative text, and the voice file processing means may generate a grammar based on the alternative text.
  • the audio information may include variable information indicating whether or not processing for a variable needs to be performed.
  • the present invention provides a computer-readable recording medium storing such a program.
  • a voice server for automatically performing voice processing, a means for generating grammar from alternative text, and a first based on the grammar, Means for recognizing an audio file and dividing it into a plurality of audio files;
  • an audio server having means for replacing at least one of the divided audio files with a second audio file.
  • the first audio file may be recorded as a single file of the entire sentence including a variable part indicating that a variable is entered.
  • the second audio file may be a sound recorded in the variable section recorded as a file.
  • the second audio file may be generated by using synthesized speech for the audio that enters the variable section.
  • the means for generating the grammar may generate the grammar by dividing the alternative text into a variable part and a part other than the variable part and replacing the variable part with a predetermined word. Further, the means for generating the grammar can generate the grammar by further dividing the text file generated by the replacement of the word into a format capable of voice recognition.
  • a method for automatically processing an audio file by an audio server in which the audio server generates a grammar from an alternative text; Based on the first audio file and dividing the audio file into a plurality of audio files, and replacing at least one audio file of the divided audio files with the second audio file.
  • the first audio file may be one in which a whole sentence including a variable part indicating that a variable is entered is recorded as one file.
  • the second audio file may be a sound recorded in the variable section recorded as a file.
  • the second audio file may be generated by using synthesized speech for the audio that enters the variable section.
  • the step of generating the grammar may generate the grammar by dividing the alternative text into a variable part and a part other than the variable part and replacing the variable part with a predetermined word. Further, the step of generating the grammar can generate the grammar by further dividing the text file generated by the replacement of the words into a format capable of voice recognition.
  • this is regarded as a program, it is a program for automatically processing an audio file by an audio server, and the program replaces the audio server.
  • a grammar is generated from the text, and based on the grammar, the first audio file is recognized and divided into a plurality of audio files, and at least one of the divided audio files is set to the second audio file.
  • the first audio file may be recorded as a single file of the entire sentence including a variable part indicating that a variable is entered.
  • the second audio file may be a sound recorded in the variable section recorded as a file.
  • the second audio file may be generated by using synthesized speech for the audio that enters the variable section.
  • the operation for generating the grammar may be to generate the grammar by dividing the alternative text into a variable part and a part other than the variable part and replacing the variable part with a predetermined word.
  • the operation for generating the grammar may be to generate the grammar by further dividing the text file generated by the replacement of the words into a format capable of voice recognition.
  • the present invention provides a computer-readable recording medium storing such a program.
  • FIG. 1 is a diagram schematically showing an example of a hardware configuration of a computer apparatus suitable for carrying out the present invention.
  • FIG. 1 shows an example of a hardware configuration of a computer device that implements the present embodiment.
  • the computer device includes a CPU (Central Processing Unit) 101, which is a computing means, an MZB (mother board) chipset 102, a main memory 103 connected to the CPU 101 via a CPU bus, and an MZB chip.
  • CPU Central Processing Unit
  • MZB mother board
  • Video card 104 connected to CPU101 via Set 102 and AGP (Accelerated Graphics Port), hard disk 105 connected to MZB chipset 102 via Peripheral Component Interconnect (PCI) bus, network interface 106 and USB port 107, and the flexible disk drive 109 and keyboard Z mouse 110 connected to the MZB chipset 102 from the PC I bus via a low-speed nose such as the bridge circuit 108 and ISA (Industry Standard Architecture) bus Prepare.
  • PCI Peripheral Component Interconnect
  • FIG. 1 merely exemplifies a hardware configuration of a typical computer device that realizes the present embodiment, and various other configurations can be used as long as the present embodiment is applicable. Can be taken.
  • the video card 104 instead of providing the video card 104, only the video memory may be installed, and the CPU 101 may process the image data, or a CD-ROM (Compact Disc Read Only) via an interface such as ATA (AT Attachment). Memory) and DVD-ROM (Digital Versatile Disc Read Only Memory) drives may be provided. Also equipped with a speaker for audio playback.
  • CD-ROM Compact Disc Read Only
  • ATA AT Attachment
  • DVD-ROM Digital Versatile Disc Read Only Memory
  • FIG. 2 is a diagram illustrating the present invention using functional blocks.
  • the voice response system 210 includes a voice server 220 and an application server 230. These voice server 220 and application server 230 may be realized by one computer device as shown in FIG. 1, or may be realized by a combination of two or more computer devices or a computer device and a storage device. There are things.
  • the application server 220 includes a full-text recording audio file 221, variable recording audio files 222 and 223, and audio information 224. These can also be seen as application 'applications running on the server' program or as part of it.
  • the full-text recording audio file 221 is a full-text recording including a variable portion indicating that a variable is entered as a single file.
  • the variable part of the full-text recording audio file 221 is recorded by being replaced with a specific word. As this word, a word designated in advance in the voice server is used. For example, using the word “product name” in the variable part, “Is your order a product name! / ,?” is voiced and saved as a full-text recording audio file.
  • voices entering the variable section are stored as variable recording voice files 1, 2, ... (222, 223).
  • “Rice” and “Miso” are voiced files.
  • a plurality of variable parts can be used.
  • a variable recording audio file corresponding to each variable part is stored.
  • the variable part 1 and variable part 2 are “article name” and “number of goods” respectively, and the sentence “Are you sure you want to order the product name and quantity?” Is voiced and saved as a full-text recording voice file.
  • the variable recording audio file corresponding to “product name” and “number of products” (“rice”, “miso” for the former, the latter (For example, “1”, “2”, etc.) will be stored.
  • the application server 220 stores audio information 224.
  • This audio information 224 includes the file name of the full-text recorded audio file, variable information, and alternative text.
  • the variable information includes at least information indicating the presence / absence of the variable part, that is, the necessity of variable processing.
  • the alternative text is the full text including the variable part. For example, in the above example, “Are you sure you want to order the variable part?”. If there are multiple full-text recorded audio files, it is sufficient to prepare audio information for each full-text recorded audio file.
  • the voice server 230 includes a voice file processing unit 231, a voice recognition engine 232, a voice processing unit 233, and a voice processing unit 233.
  • the audio file processing unit 231 takes out the audio information 224 and the full-text recording audio file 222 specified thereby from the application server 220, and determines whether variable processing is necessary from the variable information included in the audio information. If variable processing is required, grammar is dynamically generated from alternative text.
  • the voice recognition engine 232 receives the full-text recorded voice file and the dynamically generated grammar from the voice file processing unit 234. Then, the full-text recording audio file recognized based on them is divided into a variable audio file that is a variable portion and a component audio file that is a portion other than a variable.
  • the variable audio file and the component audio file are not limited to one and may be plural.
  • the voice processing unit 233 receives the component voice file and the variable voice file from the voice recognition engine 232. Then, the variable recording audio file designated to be replaced corresponding to the variable audio file is acquired from the application server 220. This operation may be performed by the audio file processing unit and passed to the audio processing unit. Then, the component audio file and the variable recording audio file are concatenated, and the audio is played back in the order of the alternative text.
  • an audio output device 240 is connected to the audio response system 210, and audio based on the reproduced audio file is reproduced and output.
  • the voice output device may be a speaker device such as the computer device shown in FIG. 1 which is the same as the voice response system, or a telephone terminal connected via a public line or the like.
  • FIG. 3 shows grammar generation logic in the audio file processing unit 231. First, the entire alternative text is divided into a variable part and a part other than the variable part (310). Next, the variable part is replaced with a predetermined word (320). This word is predetermined by the voice server, and this word is voiced and recorded in the full-text recording voice file using a predetermined word as a variable part. Then, a grammar is dynamically generated based on the replaced text (330).
  • FIG. 4 illustrates an example in more detail regarding grammar generation.
  • the variable part of the alternative text is replaced with a predetermined word (410).
  • a text file is generated based on it.
  • processing such as taking punctuation marks or dividing words from words registered in the dictionary of the speech recognition engine into words by the longest match method is performed.
  • the speech recognition engine it is put into a format that can be understood by the speech recognition engine (430).
  • the grammar generated as described above is passed to the speech recognition engine for registration.
  • FIG. 5 shows audio file division logic based on voice recognition in the voice recognition engine 232.
  • the speech recognition engine is set to a mode in which the recognized speech is converted to a file (510).
  • the full text recording voice file including the variable and the generated grammar are input to the voice recognition engine 232 (520).
  • the voice recognition engine 232 recognizes the full-text recorded voice file according to the grammar (530).
  • the recognized full-text recording audio file is divided into a variable audio file that is a variable part and a component audio file that is a part other than a variable, and each audio file is generated (540).
  • FIG. 6 shows a result of dividing the audio file by the speech recognition in the speech recognition engine 232.
  • the variable part is “product name”.
  • the full-text recorded audio file 610 is divided into a variable audio file 622 that is a variable part and component audio files 621 and 622 that are parts other than variables as a result of speech recognition and division (620).
  • FIG. 7 shows a flowchart describing an example of the processing flow in the voice server 230 of the present invention.
  • variable processing is performed depending on the presence / absence of information indicating that the variable is included in the variable information in the audio information 224 obtained from the application 'server 220. It is determined whether it is necessary (701). If it is determined that variable processing is not necessary, normal audio processing is performed (720).
  • normal audio processing if an audio file to be played back corresponding to the file name in the audio information exists in the application server, it is played back. If there is no alternative text, if the alternative text is in the audio information, the alternative text is played. If there is no alternative text, perform error processing, or if there is no error processing, end with an error.
  • step 701 If it is determined in step 701 that variable processing is necessary, the full-text recording voice file name and its alternative text are extracted from the voice information 224 (702). Then, it is checked whether the full-text recording audio file exists in the application server 220 (703). If the full-text recording audio file does not exist in the application server 220, the information indicating that it is a variable is deleted, and the normal audio processing as described above is performed (730).
  • the full-text recording audio file exists in the application 'server 220, it is checked whether there is any alternative text (704). If there is no alternative text, an error occurs and the process ends (740, 741). If the alternative text exists, it is determined whether the full-text recorded voice file already exists in a cache (not shown) on the voice server 230 (705). If already in cache, go to step 709. If it does not exist in the cache, a full-text recording audio file is obtained from the application 'server 220 (706). A grammar is then dynamically generated using the alternative text and the full-text audio file (707). Next, voice recognition is performed and the full-text recorded voice file is divided (708).
  • variable recording audio file exists in the application server 220 (709). If the variable recording audio file exists in the application 'server 220, the variable recording audio file is obtained from the application' server 220 (710). Then, these audio files are sequentially concatenated so that they can be reproduced as audio (711). Also, the generated audio file is kept in the cache for a required period (712) and can be used directly as needed. If no variable recording voice file exists in step 709, a voice file is generated by voice synthesis using the alternative text corresponding to the variable (750). Such a series of processing is realized as a computer program. In addition, this computer's program can be installed on CD-ROM, It may be provided by being stored in a computer-readable recording medium such as a flexible disk (flexible disk).
  • a computer-readable recording medium such as a flexible disk (flexible disk).
  • the “VMXL browser” is a means for providing a function corresponding to the audio file processing unit 231 and the audio processing unit 233 of the present invention in order to process VMXL.
  • the voice recognition engine recognizes the grammar and the full-text recorded voice file, and divides the full-text recorded voice file.
  • variable part is synthesized.
  • Table 1 below Table 7 shows the processing of the present invention shown in Fig. 7 in a pseudo-code expression. Note that (1) and (9) correspond to those in FIG. Table 1 below shows a series of processing.
  • Parlist Divide alternative text (alternative text)
  • Full text recording file ID Determine the unique ID corresponding to this "Full text recording file"
  • Table 2 relates to the process of dividing the alternative text in (4) among the processes shown in Table 1.
  • Divided file storage path Find the divided path (full text recording file ⁇ D)
  • Table 4 describes a part of the process (6) of the processes shown in Table 1 in more detail.
  • Table 5 describes in more detail another part of the process (6) of the processes shown in Table 1.
  • rule + rule n
  • Table 6 describes the process (7) in more detail among the processes shown in Table 1. [Table 6]
  • Divided audio file output destination Find division path (full-text recording file ID) Specify the divided audio file output destination to the recognition engine
  • Table 7 describes the process (8) in more detail among the processes shown in Table 1. [3 ⁇ 47]
  • Dividing path Finding the dividing path (Full text recording file ID)
  • Audio file "Split path ⁇ parts. Wav"
  • Audio file "Variable value. Wav"
  • the full-text recording audio file records the whole text including variables as one file.
  • the variable part is recorded by replacing it with a specific word. This word should be specific to the voice server. For example, the word “variable”.
  • variable recording audio file name is ⁇ ⁇ variable contents ⁇ .wav ⁇ . If the variable character string contains characters that are not allowed as a file name in the environment where the audio file is stored, create a mapping list file that maps the variable to audio file name in CSV format. .
  • the mapping list file name is fixed and agreed with the voice server. For example, value—wav.map.
  • variable recording audio file and possibly a mapping list file are placed in the current path.
  • variable recording audio files can be classed.
  • class Has a dedicated folder with the same name as the class name under the current path.
  • the variable recording audio file that belongs to the class and the mapping list file that describes it may be placed in the class folder.
  • a mark is added to the audio information indicating whether the full-text recording audio file has a variable.
  • the text information including at least the variable part (alternative text) in the voice information and variable name information to be inserted are stored. If necessary, the class name to which the variable audio file belongs is stored. In some cases, the mapping list file is placed in the current path or a folder dedicated to classes.
  • voice applications are usually operated using audio files that record human voices. However, during development, it is necessary to develop without audio files, so use voice synthesis. .
  • the audio> tag which VoiceXML defines to play audio files, describes the audio file name and character string in order to support such usage environments. It is designed to synthesize a character string when it is played and the audio file cannot be played back.
  • the present invention is applied in a state that conforms to the original specifications of the audio> tag, both functionally and in format.
  • the src attribute field of the ⁇ audio> tag is used to indicate whether the full-text recording audio file has a variable part.
  • a full-text recorded audio file name is prefixed with '#' to indicate that variable processing is required.
  • variable part To add information to a full-text recording audio file with a variable part, use the alternative text part of the ⁇ audio> tag. Describe the entire text including variables in the alternative text part.
  • the variable to be inserted is specified with the ⁇ value> tag, and the ⁇ value> tag is inserted at the insertion position. If it belongs to a class, specify the class name with the class attribute and surround the ⁇ value> tag with the sayas> tag.
  • Ma Put the ping list file in the class-specific path or the current path.
  • VXML document description (corresponding to audio information)
  • Audio src # wav / sample.wav?
  • # indicates the necessity of variable processing
  • wav / sample.wav is the name of the full-text recording audio file.
  • the alternative text corresponding to the full-text recorded audio file is divided into a variable part and a part other than the variable part, and a grammar having each part as a rule is dynamically generated.
  • a grammar having each part as a rule is dynamically generated.
  • a phrase that recognizes the variable part a rule that recognizes the phrase that replaces the variable part is added to the grammar. For example, the phrase “variable”.
  • Audio src # connrm.wav
  • the BNF file is grammar compiled to generate a grammar library (FSG file).
  • Grammar compilation means making grammar into a format that can be understood by the speech recognition engine.
  • FSG finite state grammar
  • the FSG (finite state grammar) file format is a compiled grammar file that can be understood by the speech recognition engine.
  • the FSG format is also supported by the W3C Speech Interface Framework.
  • the generated grammar is enabled for the speech recognition engine.
  • Set the voice recognition engine to the mode that turns the recognized voice into a file.
  • a full-text recorded voice file including variables is input to the voice recognition engine.
  • the speech recognition engine follows the grammar and recognizes the input speech in a state where it is divided into variable parts and non-variable parts.
  • the speech recognition engine then divides the recognized speech into recognized units and generates a speech file.
  • the search location may be the class if the audio file belongs to class.
  • file does not exist read variable-to-sound file name mapping list, retrieve file name, and search.
  • the list does not exist, the mapping list does not specify the target variable, there is no audio file associated with the target variable in the mapping list, or for other reasons, the conversion audio file If not found, synthesizes speech based on variable text.
  • the divided and generated voice file and the searched variable recording voice file that is, the voice text of the variable text, are reproduced in order of text.
  • To improve performance keep the divided audio files until the end of the application.
  • appropriate file deletion should also be performed.
  • For cache file management it is appropriate to follow the rules that the voice server already has. The existence status of the divided audio file fragments is stored, and those that have divided audio files are used.
  • variable determination depends on the design of the application. There are two main types. (1) Name the object to be recognized, and it becomes the variable name. (2) Declare variables in advance so that variable values can be read at any time.
  • Table 8 shows an example of processing.
  • type (1) UserName variable, Product variable and answer variable.
  • type (2) is the Address variable. When referring to a variable value, use the ⁇ value> tag. SCRIPT function When used as a parameter to, use the variable name directly.
  • the UserName variable will be described in more detail as type (1).
  • the VXML processing unit reads a VXML application on the application server. Then, when the VXML processing unit comes to the line of dialogue, the grammar instructs the speech recognition engine that it recognizes the phrase “Kato or Sato”. When the voice uttered by the user “Kato” reaches the voice recognition engine, the voice recognition engine matches the grammar and recognizes the phrase “Kato”. The speech recognition engine then tells the VXML processing department that it has recognized the phrase “I am Kato”. The VXML processing unit puts the variable value “Kato” in the UserName variable. In one example, both the VXML processing unit and the speech recognition engine are implemented in the speech server. As an example, such a VXML processing unit can be implemented as part of the speech processing unit.
  • variable recording file name is ⁇ variable value "+“ ⁇ ”.
  • the variable is the variable “Product”
  • the variable value of Product is “ ⁇ ⁇ ⁇ ”
  • the abnormal recording file name “rice. Wav”. This will be explained in more detail based on the example shown in Table 9 below.
  • variable recording file is generated and stored in the application server for values valid as the variable “Product” in advance during application development.
  • the file name of the variable recording file is “variable value” + “.wav”. If the effective value of the variable is ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ' ⁇ ⁇ , create ⁇ ⁇ ⁇ .wav ”and ⁇ ⁇ ⁇ .wav ⁇ and store them on the application server.
  • FIG. 1 is a diagram schematically showing an example of a hardware configuration of a computer apparatus suitable for carrying out the present invention.
  • FIG. 2 is a diagram showing the present invention using functional blocks.
  • FIG. 3 is a diagram showing a grammar generation logic in an audio file processing unit 231.
  • FIG. 4 is a diagram showing details of grammar generation logic.
  • FIG. 5 is a diagram showing a logic for dividing a voice file by voice recognition in the voice recognition engine 232.
  • FIG. 6 is a diagram showing a result of dividing a voice file by voice recognition in the voice recognition engine 232.
  • FIG. 7 is a diagram showing a flow chart describing an example of a processing flow in the voice server 230 of the present invention.

Landscapes

  • Engineering & Computer Science (AREA)
  • Acoustics & Sound (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Multimedia (AREA)
  • Machine Translation (AREA)
  • Telephonic Communication Services (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Computer And Data Communications (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Studio Devices (AREA)

Abstract

 本発明は、変数を含むメッセージを音声ファイルで再生する場合にアプリケーションの負荷を軽減できるよう改善された自動音声応答システムの提供を目的とする。  アプリケーション・サーバ及び音声サーバからなる音声応答システムであって、前記アプリケーション・サーバは、第1の音声ファイルと、第2の音声ファイルと、音声情報を有するものであり、前記音声サーバは、前記アプリケーション・サーバから前記音声情報と前記第1の音声ファイルを受け取り、前記音声情報に基づいてグラマーを生成する音声ファイル処理手段と、前記グラマーに基づいて、前記第1の音声ファイルを音声認識し、複数の音声ファイルに分割する音声認識手段と、前記分割された音声ファイルの内の少なくとも1の音声ファイルを前記第2の音声ファイルに置き換える音声処理手段とを有する音声応答システムを提供する。

Description

明 細 書
音声応答システム、音声応答方法、音声サーバ、音声ファイル処理方法 、プログラム及び記録媒体
技術分野
[0001] 本発明は、自動音声応答システムに関し、より具体的には、音声認識を利用した自 動合成音声による応答を行うシステムに関するものである。
背景技術
[0002] 従来、音声アプリケーション力 システムのメッセージを自動的に出力をする時には 、あら力じめ録音した音声ファイルを用いていた。例えば、標準のスピーチインタフエ ースを定義する VoiceXMLの場合では、音声ファイル名を、く audio〉タグで指定するこ とにより、実現されている。例えば、 VoiceXMLを使用した VoIPベースの音声システム としては、以下の特許文献 1がある。
[0003] 特許文献 1:特開 2002— 57724号公報
発明の開示
発明が解決しょうとする課題
[0004] しかし、そのメッセージに変数が含まれる場合、アプリケーションに負担がかかって いることが問題である。
より具体的に説明すれば、 VoiceXMLアプリケーションの場合を考えた場合、従来 の音声サーバ上で、アプリケーションが音声ファイルに変数を挿入しょうとした場合、 アプリケーションの作業と実装は、あらかじめ、文を変数位置で分割した音声ファイル を用意して、変数カゝら音声ファイル名を決定し、その音声ファイルを再生する VXMLド キュメントを動的に生成する、という機能を持つサーブレットを開発し、 VXMLドキュメ ントでは、変数前後の音声ファイルをふたつのく audio〉タグで指定し、適切なタイミン グでサーブレットをサブ音声情報として呼ぶ、と!、うような実装が一例として考えられ る。
[0005] このようにしてメッセージを音声ファイルで再生する場合、アプリケーションには、以 下の点で、負担がかかっており問題となる。 まず、アプリケーションの実装に関して問題がある。すなわち、実行時に変数部の 音声ファイルを特定し再生するためのロジックを、アプリケーションが独自に開発しな くてはならくなる。つまり、アプリケーションを複雑かつ大量に開発する必要があり問 題となる。さらに、文章の変更に応じて、アプリケーションの変更を必要とすることも問 題となる。
[0006] さらに、録音ファイルの作成作業の手間、品質、管理に関する点にも問題がある。
従来の方法では、音声ファイルは、変数前部分、変数部、変数後部分に分割して録 音されている必要がある。例えば、商品名を変数部として含む「ご注文の商品は {お 米 }です」 t 、う文の場合、「ご注文の商品は」と「お米」と「です」と!、う音声ファイルを 作成する必要がある。このようにすると録音者は、文章として不自然に分断されたパ ーッを話さなくてはならないので、不自然な発声になりやすぐ再生結果も自然さ、円 滑さを欠くこととなり問題である。
[0007] また、全文をひと続きで録音して音声ファイルエディターで分割する方法もある。し かし、この場合、音声ファイル編集者は、アプリケーションの設計を正確に把握してい なくてはならない。さらに、音声ファイルの分割など複雑な作業を必要とするためにミ スを生じやすい。かつ、そのような音声ファイルの編集等の作業が多く必要となるため 生じる作業量増大が問題である。また、文をあらかじめ変数位置で分割した状態の音 声ファイルを用意するために、音声ファイル数が多くなる。さらに、音声ファイルをスム ーズに連結するために、音声ファイルの初めと終わりの無音部は、音声ファイルェデ イタ一で切り取り編集する必要がある。このような編集作業は音声ファイルの数に比 例して増えるので、音声ファイル数の多くなつてくるとその作業はよりいっそう膨大か つ煩雑となる。また、音声ファイル数の多さは、ファイル名の命名やファイルの管理を 複雑にする可能性も考えられる。
課題を解決するための手段
[0008] 以上の課題を解決するために、本発明は、システムとして捉えれば、アプリケーショ ン ·サーバ及び音声サーノからなる音声応答システムであって、前記アプリケーショ ン 'サーバは、第 1の音声ファイルと、第 2の音声ファイルと、音声情報を有するもので あり、前記音声サーバは、前記アプリケーション 'サーバから前記音声情報と前記第 1 の音声ファイルを受け取り、前記音声情報に基づいてグラマーを生成する音声フアイ ル処理手段と、前記グラマーに基づいて、前記第 1の音声ファイルを音声認識し、複 数の音声ファイルに分割する音声認識手段と、前記分割された音声ファイルの内の 少なくとも 1の音声ファイルを前記第 2の音声ファイルに置き換える音声処理手段とを 有する音声応答システムを提供する。
[0009] ここで、前記第 1の音声ファイルは、変数が入ることを示す変数部を含む全文を一 つのファイルとして録音されたものである、とすることができる。また、前記第 2の音声 ファイルは、変数部に入る音声をファイルとして録音したものである、とすることができ る。さらに、前記音声情報には、前記第 1の音声ファイルのファイル名が含まれ、前記 音声ファイル処理手段は前記全文音声ファイル名に基づいて前記第 1の音声フアイ ルを抽出するものである、とすることができる。さらに、前記音声情報には、代替テキ ストが含まれ、前記音声ファイル処理手段は前記代替テキストに基づ 、てグラマーを 生成するものである、とすることができる。さらに、前記音声情報には、変数について の処理を行う必要があるかどうかを示す変数情報が含まれる、とすることができる。さ らに、音声を出力する音声出力手段を有する、とすることができる。
[0010] また、方法として捉えれば、アプリケーション 'サーバ及び音声サーバからなる音声 応答システムにおける音声応答方法であって、前記アプリケーション 'サーバは、第 1 の音声ファイルと、第 2の音声ファイルと、音声情報を有するものであり、前記音声応 答方法は、前記音声サーバが、前記アプリケーション 'サーバから前記音声情報と前 記第 1の音声ファイルを受け取り、前記音声情報に基づいてグラマーを生成するステ ップと、前記グラマーに基づいて、前記第 1の音声ファイルを音声認識し、複数の音 声ファイルに分割するステップと、前記分割された音声ファイルの内の少なくとも 1の 音声ファイルを前記第 2の音声ファイルに置き換えるステップとからなる音声応答方 法を提供する。
[0011] ここで、前記第 1の音声ファイルは、変数が入ることを示す変数部を含む全文を一 つのファイルとして録音されたものである、とすることができる。また、前記第 2の音声 ファイルは、変数部に入る音声をファイルとして録音したものである、とすることができ る。さらに、前記音声情報には、前記第 1の音声ファイルのファイル名が含まれ、前記 第 1の音声ファイル名に基づいて前記第 1の音声ファイルを抽出するものである、と することができる。さらに、前記音声情報には、代替テキストが含まれ、前記前記代替 テキストに基づいてグラマーを生成するものである、とすることができる。さらに、前記 音声情報には、変数についての処理を行う必要があるかどうかを示す変数情報が含 まれる、とすることができる。
[0012] また、プログラムとして捉えれば、アプリケーション 'サーバ及び音声サーバからなる 音声応答システムにおける音声応答を実行するためのプログラムであって、前記アブ リケーシヨン'サーバは、第 1の音声ファイルと、第 2の音声ファイルと、音声情報を有 するものであり、前記プログラムは、前記音声サーバを
前記アプリケーション'サーノから前記音声情報と前記第 1の音声ファイルを受け取 り、前記音声情報に基づいてグラマーを生成し、前記グラマーに基づいて、前記第 1 の音声ファイルを音声認識し、複数の音声ファイルに分割し、前記分割された音声フ アイルの内の少なくとも 1の音声ファイルを前記第 2の音声ファイルに置き換えるように 動作させるものであるプログラムを提供する。
[0013] ここで、前記第 1の音声ファイルは、変数が入ることを示す変数部を含む全文を一 つのファイルとして録音されたものである、とすることができる。また、前記第 2の音声 ファイルは、変数部に入る音声をファイルとして録音したものである、とすることができ る。さらに、前記音声情報には、前記第 1の音声ファイルのファイル名が含まれ、前記 音声ファイル処理手段は前記全文音声ファイル名に基づいて前記第 1の音声フアイ ルを抽出するものである、とすることができる。さらに、前記音声情報には、代替テキ ストが含まれ、前記音声ファイル処理手段は前記代替テキストに基づ 、てグラマーを 生成するものである、とすることができる。さらに、前記音声情報には、変数について の処理を行う必要があるかどうかを示す変数情報が含まれる、とすることができる。 さらに、本発明は、このようなプログラムを格納したコンピュータが読み取り可能な記 録媒体を提供する。
[0014] また、本発明を音声サーバとして捉えれば、自動的に音声処理を行うための音声サ ーバであって、代替テキストからグラマーを生成する手段と、前記グラマーに基づい て、第 1の音声ファイルを音声認識し、複数の音声ファイルに分割する手段と、前記 分割された音声ファイルの内の少なくとも 1の音声ファイルを第 2の音声ファイルに置 き換える手段とを有する音声サーバを提供する。
[0015] ここで、前記第 1の音声ファイルは、変数が入ることを示す変数部を含む全文を一 つのファイルとして録音されたものである、とすることができる。また、前記第 2の音声 ファイルは、変数部に入る音声をファイルとして録音したものである、とすることができ る。さらに、前記第 2の音声ファイルは、変数部に入る音声を合成音声により生成した ものである、とすることができる。さらに、前記グラマーを生成する手段は、代替テキス トを変数部と変数部以外に分割し、変数部を予め定められた単語に置き換えることに より、グラマーを生成するとすることができる。さらに、前記グラマーを生成する手段は 、さらに前記単語の置き換えにより生成されたテキストファイルを分割し、音声認識が 可能な形式にすることにより、グラマーを生成するとすることができる。
[0016] また、これを方法として捉えれば、音声サーバによって自動的に音声ファイルの処 理を行うための方法であって、前記音声サーバが代替テキストからグラマーを生成す るステップと、前記グラマーに基づいて、第 1の音声ファイルを音声認識し、複数の音 声ファイルに分割するステップと、前記分割された音声ファイルの内の少なくとも 1の 音声ファイルを第 2の音声ファイルに置き換えるステップとを有する音声ファイル処理 方法を提供する。
[0017] ここで、前記第 1の音声ファイルは、変数が入ることを示す変数部を含む全文を一 つのファイルとして録音されたものである、とすることができる。また、前記第 2の音声 ファイルは、変数部に入る音声をファイルとして録音したものである、とすることができ る。さらに、前記第 2の音声ファイルは、変数部に入る音声を合成音声により生成した ものである、とすることができる。さらに、前記グラマーを生成するステップは、代替テ キストを変数部と変数部以外に分割し、変数部を予め定められた単語に置き換えるこ とにより、グラマーを生成するとすることができる。さらに、前記グラマーを生成するス テツプは、さらに前記単語の置き換えにより生成されたテキストファイルを分割し、音 声認識が可能な形式にすることにより、グラマーを生成するとすることができる。
[0018] また、これをプログラムとして捉えれば、音声サーバによって自動的に音声ファイル の処理を行うためのプログラムであって、前記プログラムは前記音声サーバを代替テ キストからグラマーを生成し、前記グラマーに基づいて、第 1の音声ファイルを音声認 識し、複数の音声ファイルに分割し、前記分割された音声ファイルの内の少なくとも 1 の音声ファイルを第 2の音声ファイルに置き換えるように動作させるものであるプログ ラムを提供する。
[0019] ここで、前記第 1の音声ファイルは、変数が入ることを示す変数部を含む全文を一 つのファイルとして録音されたものである、とすることができる。また、前記第 2の音声 ファイルは、変数部に入る音声をファイルとして録音したものである、とすることができ る。さらに、前記第 2の音声ファイルは、変数部に入る音声を合成音声により生成した ものである、とすることができる。さらに、前記グラマーを生成する動作は、代替テキス トを変数部と変数部以外に分割し、変数部を予め定められた単語に置き換えることに より、グラマーを生成するとすることができる。さらに、前記グラマーを生成する動作は 、さらに前記単語の置き換えにより生成されたテキストファイルを分割し、音声認識が 可能な形式にすることにより、グラマーを生成するとすることができる。
さらに、本発明は、このようなプログラムを格納したコンピュータが読み取り可能な記 録媒体を提供する。
発明を実施するための最良の形態
[0020] まず、図 1は本発明を実施するのに好適なコンピュータ装置のハードウェア構成の 例を模式的に示した図である。
[0021] 図 1には、本実施の形態を実現するコンピュータ装置のハードウェア構成を例示す る。コンピュータ装置は、演算手段である CPU (Central Processing Unit :中央処理装 置) 101と、 MZB (マザ一ボード)チップセット 102及び CPUバスを介して CPU101 に接続されたメインメモリ 103と、同じく MZBチップセット 102及び AGP (Accelerated Graphics Port)を介して CPU101に接続されたビデオカード 104と、 PCI (Peripheral Component Interconnect)バスを介して MZBチップセット 102に接続されたハード ディスク 105、ネットワークインターフェイス 106及び USBポート 107と、さらにこの PC Iバスからブリッジ回路 108及び ISA (Industry Standard Architecture)バスなどの低 速なノ スを介して MZBチップセット 102に接続されたフレキシブルディスクドライブ 1 09及びキーボード Zマウス 110とを備える。 [0022] なお、この図 1は本実施の形態を実現する典型的なコンピュータ装置のハードゥエ ァ構成をあくまで例示するに過ぎず、本実施の形態を適用可能であれば、他の種々 の構成を取ることができる。例えば、ビデオカード 104を設ける代わりに、ビデオメモリ のみを搭載し、 CPU101にてイメージデータを処理する構成としても良いし、 ATA ( AT Attachment)などのインターフェイスを介して CD— ROM (Compact Disc Read Only Memory)や DVD— ROM (Digital Versatile Disc Read Only Memory)のドライブ を設けても良 、。また音声再生のためのスピーカ等を備えてもょ 、。
[0023] 図 2は、本発明を機能ブロックを用いて示した図である。音声応答システム 210は、 音声サーバ 220とアプリケーションサーバ 230からなる。これら音声サーバ 220とァプ リケーシヨン'サーバ 230は、図 1に示したような 1のコンピュータ装置で実現されること もあり、また 2以上のコンピュータ装置やコンピュータ装置と記憶装置との組み合わせ で実現されることちある。
[0024] アプリケーション.サーバ 220には、全文録音音声ファイル 221、変数録音音声ファ ィル 222、 223、音声情報 224が含まれる。これらは、アプリケーション 'サーバ上で 実行されるアプリケーション 'プログラムまたはその一部としても捉えられるものである 。まず、全文録音音声ファイル 221は、変数が入ることを示す変数部を含む全文を一 つのファイルとして録音されたものである。この全文録音音声ファイル 221の変数部 は、ある特定の単語に置き換えて録音されている。この単語は、音声サーバにおいて 予め指定された語を用いる。例えば、変数部に「品名」という単語を用いて、「ご注文 は品名でよろし!/、ですか」 、う文を音声化して、全文録音音声ファイルとして保存す る。
[0025] さらに、アプリケーション 'サーバ 220には、この変数部に入る音声が変数録音音声 ファイル 1、 2、 · · · (222, 223)として格納されている。例えば「お米」「みそ」を音声化 したファイルである。ここで、変数部は複数用いることも可能であり、この場合にはそ れぞれの変数部に対応した変数録音音声ファイルが格納されることになる。例えば 変数部 1、変数部 2をそれぞれ「品名」「品数」として「ご注文は品名、数量は品数でよ ろしいですか」という文を音声化して、全文録音音声ファイルとして保存する。そして、 「品名」「品数」に対応した変数録音音声ファイル (前者に対して「お米」「みそ」、後者 に対して「1つ」「2つ」等)力格納されることになる。
[0026] さらに、アプリケーション ·サーバ 220には、音声情報 224が格納されている。この音 声情報 224は、全文録音音声ファイルのファイル名、変数情報と代替テキストとから なる。変数情報には変数部の有無、つまり変数処理の必要性の有無を示す情報が 少なくとも含まれる。代替テキストは、変数部を含むテキスト全文であり、例えば上述 の例でいえば「ご注文はく変数部〉でよろしいですか」となる。なお、全文録音音声 ファイルが複数存在する場合、その全文録音音声ファイルごとに音声情報を用意し ておけばよい。
[0027] 音声サーバ 230は、音声ファイル処理部 231、音声認識エンジン 232、音声化処 理部 233、及び音声化処理部 233を有する。音声ファイル処理部 231は、アプリケー シヨン'サーバ 220から音声情報 224とそれにより指定される全文録音音声ファイル 2 21を取り出し、音声情報に含まれる変数情報から変数処理が必要かどうかを判断す る。変数処理が必要な場合、さらに、代替テキストからグラマーを動的に生成する。
[0028] 音声認識エンジン 232は、音声ファイル処理部 234から全文録音音声ファイルと動 的に生成されたグラマーを受け取る。そして、それらに基づいて認識した全文録音音 声ファイルを変数部分である変数音声ファイルと変数以外の部分である部品音声フ アイルに分割する。ここで、変数音声ファイルや部品音声ファイルは 1つとは限らず、 複数あることもある。
[0029] 音声化処理部 233は、音声認識エンジン 232から部品音声ファイルと変数音声ファ ィルを受け取る。そして、変数音声ファイルに対応して置き換えるべく指定された変 数録音音声ファイルをアプリケーション.サーバ 220から取得する。なお、この動作は 、音声ファイル処理部で行われて、音声化処理部に渡されてもよい。そして、部品音 声ファイルと変数録音音声ファイルを連結して、代替テキストの順に音声化して再生 されるようにする。
[0030] さらに、この音声応答システム 210に音声出力装置 240が接続され、再生音声ファ ィルに基づいた音声が再生され出力される。この音声出力装置は、音声応答システ ムと同一の図 1に示したようなコンピュータ装置の例えばスピーカ装置でもよいし、あ るいは公衆回線等を介して接続された電話端末等でもよ ヽ。 [0031] 図 3には、音声ファイル処理部 231におけるグラマーの生成ロジックを示す。まず、 代替テキスト全文を変数部と変数部以外に分割する(310)。次に、その変数部を予 め定めた単語に置換する(320)。この単語は、音声サーバが予め定めたものであり、 全文録音音声ファイルにはこの単語が変数部分として予め定められた語を用いて音 声化され録音されている。そして、その置換されたテキストに基づいてグラマーを動 的に生成する(330)。
[0032] 図 4は、グラマーの生成について、さらに一例を詳細に説明する。まず、代替テキス トの変数部を予め定めた単語に置換する(410)。そして、それをもとにテキストフアイ ルを生成する。この時、音声認識エンジンが認識できるように単語分割する必要があ る(420)。この単語分割は、例えば、句読点をとる、音声認識エンジンの辞書に登録 されている単語から最長一致法で単語に分割する、等の処理を行う。次に、その分 割された結果を、音声認識エンジンに伝えるために、音声認識エンジンが理解できる 形式にする(430)。以上によって生成されたグラマーを音声認識エンジンに渡し登 録する。
[0033] 図 5には、音声認識エンジン 232における音声認識による音声ファイルの分割ロジ ックについて示す。まず、音声認識エンジンを、認識した音声をファイルにするモード に設定する(510)。次に、音声認識エンジン 232に変数を含む全文録音音声フアイ ルと生成されたグラマーが入力される(520)。音声認識エンジン 232はグラマーに従 つて、全文録音音声ファイルを認識する(530)。そして、認識した全文録音音声ファ ィルを変数部分である変数音声ファイルと変数以外の部分である部品音声ファイル に分割して、それぞれの音声ファイルを生成する(540)。
[0034] 図 6には、音声認識エンジン 232における音声認識による音声ファイルの分割結果 について示す。この例では、変数部分を「品名」とした。全文録音音声ファイル 610は 、音声認識及び分割の結果 (620)として、変数部分である変数音声ファイル 622と、 変数以外の部分である部品音声ファイル 621、622に分割されたこととなる。
[0035] 図 7には、本発明の音声サーバ 230における処理の流れについての一例を記述し たフローチャートを示す。まず、アプリケーション 'サーバ 220から得た音声情報 224 の中の変数情報に含まれる変数であることを示す情報の有無によって、変数処理が 必要かどうかを判断する(701)。なお、変数処理が必要ないと判断された場合、通常 のオーディオ処理を行う(720)。ここで、通常のオーディオ処理とは、一例を示せば、 音声情報中のファイル名に対応する再生する音声ファイルがアプリケーション'サー バに存在すれば、それをそれを再生する。無い場合、代替テキストが音声情報中に あれば、その代替テキストを再生する。代替テキストもない場合、エラー処理を行うか 、エラー処理がない場合はエラーで終了する。
[0036] ステップ 701で、変数処理が必要と判断された場合、音声情報 224から全文録音 音声ファイル名とその代替テキストを抽出する(702)。そして、全文録音音声ファイル がアプリケーション.サーバ 220に存在するかどうかを確認する(703)。なお、全文録 音音声ファイルがアプリケーション ·サーバ 220に存在しない場合は、変数であること を示す情報を削除した上で、上述したような通常のオーディオ処理を行う(730)。
[0037] 全文録音音声ファイルがアプリケーション 'サーバ 220に存在する場合、さらに代替 テキストがあるかどうか確認する(704)。代替テキストが存在しない場合は、エラーと なり処理は終了する(740, 741)。代替テキストが存在する場合、全文録音音声ファ ィルが既に音声サーバ 230上のキャッシュ(図示せず)に存在するかどうかが判断さ れる(705)。既にキャッシュ上に存在する場合、ステップ 709へ行く。キャッシュ上に 存在しない場合、全文録音音声ファイルをアプリケーション 'サーバ 220から得る(70 6)。そして、代替テキストと全文録音音声ファイルを用いてグラマーが動的に生成さ れる(707)。次に、音声認識を行い、全文録音音声ファイルを分割する(708)。
[0038] そして、変数録音音声ファイルがアプリケーション.サーバ 220に存在するかどうか が確認される(709)。変数録音音声ファイルがアプリケーション 'サーバ 220に存在 する場合、アプリケーション 'サーバ 220から変数録音音声ファイルを得る(710)。そ して、これらの音声ファイルを順次連結して音声化して再生できるようにする(711)。 また、必要な期間その生成された音声ファイルをキャッシュに保持し (712)、必要に 応じて直接使用できるようにする。なお、ステップ 709で変数録音音声ファイルが存 在しない場合、その変数に対応する代替テキストを用いて音声合成した音声ファイル を生成する(750)。なお、このような一連の処理はコンピュータ 'プログラムとして実現 されるものである。また、このコンピュータ 'プログラムは、必要に応じて、 CD— ROM, フレキシブルディスク(フレキシブルディスク)等のコンピュータが読み取り可能な記録 媒体に格納されて提供されることがある。
[0039] 次に、図 7に示した本発明の処理を VXMLブラウザ実装した例を示す。なお、(1)
(9)は図 7中のものに対応する。また、「VMXLブラウザ」とは、 VMXLを処理するため に本発明の音声ファイル処理部 231及び音声化処理部 233に対応する機能を提供 する手段である。
(1) 変数処理を要求する目印となる、 Audioタグの '# '記号を調べ、なければ通常の オーディを処理を行う。
(2) Audioタグより、全文録音音声ファイル名と、全文録音音声ファイルに対応する 代替テキストを抽出する。
(3)全文録音音声ファイルが存在しない場合は、 '# 'をとり、通常のオーディオ処理を 行う。必要により音声合成される。
(4)代替テキストがなければ、エラーとなり処理は終了。
(5)既に処理済の場合は、キャッシュされた音声ファイルを利用する。なお、変数部 のみ変更されたものなら、変数録音ファイルのみアプリケーション 'サーバから取得す る。
(6)代替テキストと決められた変数部の文字列力もグラマーを作成する。
(7)グラマーと全文録音音声ファイルを音声認識エンジンにより認識させ、全文録音 音声ファイルを分割する。
(8)変数録音音声ファイルがない場合は、変数の部分は音声合成する。
(9)得られた音声ファイル(と場合によっては音声合成結果)を連結して再生できるよ うにする。
[0040] 以下の表 1 表 7には、図 7に示した本発明の処理を擬似コード的表現で表したも のを示す。なお、(1)一(9)は図 7中のものに対応する。以下の表 1は、一連の処理を 示したものである。
[表 1] オーディオタグの処理(タグテキスト) [
新しく分割しましたフラグ = false;
(1) if (変数部あ yの目印なし) ί
通常処理(タグテキスト)へ
(2) タグテキストから、 変数情報を取得する
-全文録音音声ファイル名
-代替テキスト
(3) if (全文録音ファイル存在しない) {
タグテキストに目印があれば削除する
通常処理(タグテキスト)へ
(4) } else if (代替テキストがない) {
エラ一終了
}
パ一ッリスト =代替テキストを分割する(代替テキスト)
全文録音ファイル I D = "この全文録賨ファイル"に対応する固有の I Dを決める
(5) if (全バーヅがキャッシュされてますか(パーツリスト, 全文錄音ファイル【 D) == false) { 変数用文字列 =変数用文字列厲性値
(6) 全文テキスト =全文テキストを生成する(パ一ッリスト. 変数用文字列 ) グラマーを生成し enableする( パーツリスト, 変数用文字列, グラマー名 )
(7) 音声認識により音声ファイルを分割する( 全文錄音音声ファイル. 全文錄音ファイル I D ) グラマーを disableする(グラマ一名)
新しく分割しましたフラグ = true
(8) 連結して再生する( 全文録音ファイル I D, パーツリスト )
if (新しく分割しましたフラグ) {
キャッシュ処理をする(全文録音ファイル I D)
[0041] 表 2は、表 1に示した処理のうち、(4)中の代替テキストを分割する処理に関するも のである。
[表 2] 代替テキストを分割する(代替テキスト) ί
パーツリスト = ""
while (代替テキストに変数部がある) [
パーツリス卜 += 変数部以前 + 変数部
代替テキスト 変数部以降
if (代替亍キストがまだある) {
パ一ッリスト += 代替亍キスト
}
パーツリス卜を返す
[0042] 表 3は、表 1に示した処理のうち、(5)の処理をさらに詳細に述べたものである, [表 3] (5)全パーツがキャッシュされてますか (パーツリスト. 全文録音ファイル I D) { if (キャッシュ使用スコープ内 == false) [
falseを返す
I
現在の時刻を取得する
if (全文録音ファイル 1 Dがキャッシュリストにない) 【
] else if (全文録音ファイル I Dのキャッシュエントリが expirsしている) ί キャッシュリストからキャッシュエントリを削除する。
falseを す
1
判定 = true
分割ファイル保管パス =分割パスを求める(全文録音ファイル〗 D)
whi le (パーツリスト) {
if (パーツく>変数部) {
if ("パーツ. wav"が分割ファイル保管パスにない〉 {
判定 = false
break:
}
]
判定を返す。
[0043] 表 4は、表 1に示した処理のうち、(6)の処理の一部をさらに詳細に述べたものであ る。
[表 4]
(6)全文テキストを生成する(パ一ッリスト, 変数用文字列) {
全文テキスト = ""
while (パーツリスト) 1
全文テキスト += (パ一ッ==変数 ? 変数用文字列 : パーツ)
全文テキストを返す
[0044] 表 5は、表 1に示した処理のうち、(6)の処理の他の一部をさらに詳細に述べたもの である。
[表 5] (6)グラマ一を生成し enab l eする(パーツリス ·、 変数用文字列, グラマー名 ) ルール 0 =変数用文字列
パブリ、ンクルール = ""
far (n=1; バ一ッリスト: π++) (
i f (パーツ◊変数) [
ルール n =変数部以前
パブリックルール += ルール n
パブリックル一ル += ルール 0
1
全ルールと、 パブリックルールから、 グラマーを生成する
グラマーを認識エンジンに登録し enabl eする( グラマー名 )
[0045] 表 6は、表 1に示した処理のうち、(7)の処理をさらに詳細に述べたものである, [表 6]
(7)音声認識により音声ファイルを分割する(全文録音音声ファイル, 全文録音ファイル I D ) 認識エンジンを、 f声ファイル生成モードにする
分割音声ファイル出力先 =分割パスを求める(全文録音ファイル I D) 分割音声ファイル出力先を認識エンジンに指定する
全文音声録音ファイルを認識エンジンに入力する
認識処理完了を待って戻る 〃 ACCEPTEDでも REJECTEDでも構わない
1
グラマ一を d isab l eする(グラマ一名 ) {
グラマーを d i sab l eする(グラマー名 )
1
[0046] 表 7は、表 1に示した処理のうち、(8)の処理をさらに詳細に述べたものである, [¾7]
(8)連結して再生する( 全文録音ファイル【 D, パーツリスト ) {
分割パス =分割パスを求める(全文録音ファイル I D)
whi le (パ一ッリスト) {
i f (パーツく〉変数) ί
音声ファイル = "分割パス ¥¥パーツ. wav"
代替テキスト = "パーツ"
] g | c;^ [
音声ファイル = "変数値. wav"
代替テキスト = "変数値"
)
i f (音声ファイルがある) {
音声ファイルを再生する
} e I se [
代替テキストを音声合成する
}
}
}
キャッシュを更新する(全文録音ファイル I D) [
期限切れ時刻 =現在の時刻 +有効期間
キャッシュエントリ = "全文録音ファイル I D , 期限切れ時刻";
この全文録音ファイル I Dのキャッシュェントリが既にキャッシュリストにあれば、 キャッシュリストから削除する
キャッシュリストにキャッシュェントリを追加する。
}
分割パスを求める(全文録音ファイル〖 D ) {
分割パス =全文録音ファイル I Dから一意的に決める
1
[0047] 以下には、発明の具体的な実施例として、 VoiceXMLの場合にどのように実装する かを示す。この拡張は、既存の機能に影響を与えず、 VoiceXML仕様を侵害すること なぐ実現できるものである。
[0048] アプリケーション ·サーバで用意する音声ファイル
全文録音音声ファイルは、変数を含む全文をひとつのファイルとして録音する。変 数部分は、ある特定の単語に置き換えて録音する。この単語は、音声サーバと了解 し合った特定のものにする。例えば、 "変数"という単語とする。
変数録音音声ファイル名は、〃{変数の内容 }.wav〃とする。なお、変数文字列が、音 声ファイルを格納する環境にぉ 、てファイル名として許されな 、文字を含む場合は、 変数対音声ファイル名を、 CSV形式でマッピングした、マッピングリストファイルを作成 する。マッピングリストファイル名は、音声サーバと了解し合った固定のものにする。例 ば、 value— wav.map とする。
[0049] 変数録音音声ファイルと、場合によりマッピングリストフアイノレをカレントパスに置く。
なお、ひとつあるいは複数の変数録音音声ファイルをクラス化することもできる。クラス は、カレントパス下にクラス名と同じ名前で、クラス専用フォルダを持つ。クラスに属し ている変数録音音声ファイルと、場合によりそれを記述するマッピングリストファイルは 、クラス専用フォルダに置く。
[0050] アプリケーション ·サーバ中の音声情報の記述
全文録音音声ファイル対応して、その全文録音音声ファイルが変数を持つカゝどうか を示す目印を音声情報につける。さらに、変数を持つ全文録音音声ファイルに対応 して、音声情報に少なくとも変数部を含むテキスト全文 (代替テキスト)と挿入する変 数名の情報を格納する。さらに必要により、変数用音声ファイルが属するクラス名を 格納する。場合により、マッピングリストファイルはカレントパス、あるいは、クラス専用 フォルダに置く。
[0051] 例として、上記ルールを、 VoiceXMLに具体的に適用し、定めた例を示す。以下で は、 VoiceXMLのく audio〉タグに本発明を適用する。
音声アプリケーションは通常、最終的には人の声を録音した音声ファイルを用いて 運用されることが多いが、開発中は音声ファイルがない状態で開発を行う必要がある ので、音声合成を利用する。 VoiceXMLが音声ファイルを再生するために定義してい るく audio〉タグは、そのような利用環境に対応するために、音声ファイル名と文字列を 記述して、音声ファイルが存在すれば音声ファイルを再生し、音声ファイルが再生不 可能な状態である場合には、文字列を音声合成する、という仕様になっている。
S己 ί列: 、 audio src= wav/ sample.wav〉こ注文の商 f口く/ audioノ
機能的にもフォーマット的にも、く audio〉タグ本来の仕様に則った状態で、今回の発 明を適用する。
[0052] 全文録音音声ファイルが変数部を持つかどうかを示すために、く audio〉タグの src属 性フィールドを利用する。全文録音音声ファイル名の先頭に、 '# 'をつけて、変数処理 の必要があることを示す。
変数部を持つ全文録音音声ファイルに情報を付加するために、く audio〉タグの代替 テキスト部を利用する。代替テキスト部に、変数を含むテキスト全文を記述する。挿入 する変数を、く value〉タグで指定し、挿入位置に、く value〉タグを挿入する。クラスに属 する場合は、クラス名を class属性で指定したく sayas〉タグで、く value〉タグを囲む。マ ッピングリストファイルは、クラス専用パス、あるいは、カレントパスに置く。
[0053] 例:「ご注文の商品は、 {? }です」と 、うメッセージを音声ファイルを再生する場合 用意する音声ファイル
全文録音音声ファイルとして、「ご注文の商品は、変数です」と録音した
wavYsampie.wav 户ノアイノレ
変数録音音声ファイルとして、 「お米」と録音した〃カレントパス ¥product¥お米. wav"音 声ファイル
VXMLドキュメントの記述 (音声情報に対応する)
く audio src= #wav/ sample.wav ?
ご注文の商品は、
く sayas class: product ?
value expr= ProductName />
</sayas>
です。
</ audio >
ここで、 #によって、変数処理の必要性を表し、「wav/sample.wav」は全文録音音声フ アイル名である。そして、
「ご注文の商品は、
く sayas class: product ?
value expr= ProductName />
</sayas>
です。」
の部分が代替テキストとなる。
なお、これらの記述は、アプリケーション 'サーバで実行されるアプリケーション 'プロ グラムの一部として記述されるものである。
[0054] 音声サーバサイドの機能
全文録音音声ファイルが変数を持つかどうか、音声ファイル指定の目印の有無で 判断して、単純な再生処理か、変数挿入が必要な再生処理か、適切な方の処理に 分岐する。単純な音声ファイル再生は、従来の動作どおりである。引き続き、以下に、 変数挿入処理を記述する。なお、全て実行時の処理である。
[0055] 全文録音音声ファイルに対応する代替テキストを、変数部と変数部以外の部分に 分割して、各パーツをルールに持つグラマーを動的に生成する。変数部を認識する 語句として、変数部を置換する語句を認識するルールをグラマーに追加する。例え ば"変数"という語句である。
[0056] グラマーの生成について、さらに詳細に説明すれば、以下の通りである。対象とす る記述が次のようなつて ヽたとする。
く audio src= #connrm.wav ノ
ご注文は、く value expr=〃Product7〉でよろしいですか? グラマーにしていく過程は以下のとおりである。
1.変数部を変数部用テキストで置換する。
(変換前)ご注文は、く value expr=〃Product7〉でよろしいですか
(変換後)ご注文は変数でよろ 、ですか
2.テキストファイル (BNFファイル)を生成する。この時、音声認識エンジンが認識でき るように単語分割する必要がある。その結果、この例では以下のようになる。
<_rulel> =ご注文は変数でよろしいですか
3.受け入れ可能な発話文を、音声認識エンジンに伝えるために、音声認識エンジン が理解できる形式にする。具体的には、 BNFファイルを、グラマーコンパイルして、グ ラマーボキヤブラリ (FSGファイル)を生成する。グラマーコンパイルとは、グラマーを音 声認識エンジンが理解できる形式にすることである。例えば、グラマーコンノイラ API を使って、音声認識エンジンが理解できる FSGファイル形式にコンパイルする。 FSG ( finite state grammar)ファイル形式とは、音声認識エンジンが理解できる形式の、コン パイル済みグラマーファイルである。なお、 FSG形式は、 W3C Speech Interface Frameworkでもサポートされる形式である。
以上によって生成されたグラマーを音声認識エンジンに渡し、そのグラマーを登録 する。 [0057] そして、生成したグラマーを、音声認識エンジンに対して、使用可能 (enable)にする 。音声認識エンジンを、認識した音声をファイルにするモードに設定する。そして、変 数を含む全文録音音声ファイルを、音声認識エンジンに入力する。音声認識ェンジ ンはグラマーに従い、入力された音声を、変数部分と変数以外の部分に分割した状 態で認識する。そした、音声認識エンジンは、認識した音声を、認識した単位に分割 して、音声ファイルを生成する。
[0058] アプリケーション 'プログラム力も指定された変数録音音声ファイルを、 "{変数の内 容 ^〃というファイル名で検索する。検索場所は、場合により、その音声ファイルが クラスに属している場合はクラス専用パス、属していなければカレントパスである。〃{変 数の内容 }.wav〃ファイルが存在しなければ、変数対音声ファイル名のマッピングリスト を読み、ファイル名を取得し、検索する。マッピングリストが存在しない、マッピングリス トにターゲットとなる変数に関する指定がない、マッピングリストでターゲットとなる変数 に対応付けられている音声ファイルがない、あるいは、その他の理由で、尚、変換用 音声ファイルを見つけられな 、場合は、変数テキストに基づ 、て音声合成する。
[0059] 分割生成された音声ファイルと、検索した変数録音音声ファイル、ある!ヽは、変数テ キストの音声合成、をテキストの順に順々に再生するようにする。パフォーマンス向上 のため、分割した音声ファイルは、アプリケーション終了時までは保管する。ただし、 適切なファイルの削除も実行すべきである。キャッシュファイル管理について、音声サ ーバが既に持っているルールに従うのが適切である。分割された音声ファイル断片 の存在状態を記憶し、分割済み音声ファイルが存在するものは、それを利用するよう にする。
[0060] 変数の決定について
変数に対応するテキストは、アプリケーションの変数の値である。その値は実行時に 決定される。この変数の値が、いつどこで決まるかはアプリケーションロジックによる。 例えば、 Product="'変数値'"として、いつでもその値をいれるようにすることができ、ま た例えば注文を聞 、た時に認識した語句を、その値とするように書 、ておくこともでき る。
[0061] より具体的に、変数の決定も含めた一連の処理について以下に説明する。 "変数値がいつどのような形で決まるカ 'は、アプリケーションのデザインにより、大き く次の 2タイプある。(1)認識対象に名前をつけておき、それが変数名となり、ユーザ の発声を認識した時に認識した語句が変数値になるようにする。 (2)あらかじめ変数 を宣言しておき、好きなタイミングで変数値を 、れるようにする。
[0062] 例えば、以下の表 8に処理の一例を示す。
[表 8]
Figure imgf000022_0001
[0063] このサンプルは、次のような対話をする従来の機能で書いた VoiceXMLアプリケーシ ヨンである。
System: お名前をどうぞ
User: 加藤 :この発声を認識した時に、 UserName変数値 = "加藤"となりま す。
System: 加藤様ですね :この後、く assign〉タグにより、 Address変数値
=getUser Address関数の返り値; "東京都渋谷区"などとなります。
System: ご注文をどうぞ
User: お米 :この発声を認識した時に、 Product変数値 = "お米"となります。
System: ご注文はお米ですね。
タイプ(1)の例は、 UserName変数、 Product変数、 answer変数である。タイプ(2)の 例は、 Address変数である。変数値を参照する時は、く value〉タグを使う。 SCRIPT関数 へのパラメータとして使う時は直接変数名を使う。
[0064] タイプ(1)として、 UserName変数についてさらに詳細に述べる。まず、 VXML処理部 は、アプリケーションサーバにある VXMLアプリケーションを読み込む。そして、 VXML 処理部は、対話力 ^行目に来た時、音声認識エンジンに、「加藤、あるいは、佐藤、と いう語句を認識するのだ、」ということをグラマーで指示する。ユーザの「加藤」と発声 した音声が、音声認識エンジンに届くと、音声認識エンジンは、グラマーと照合して、 「加藤」という語句を認識する。そして音声認識エンジンは、「加藤です、という語句を 認識した」と、 VXML処理部に伝えます。 VXML処理部は、 UserName変数に、 "加藤" という変数値をいれる。なお、一例では、これらの VXML処理部も音声認識エンジンも 、どちらも、音声サーバにおいて実施される。一例としては、このような VXML処理部 は音声化処理部の一部として実施することができる。
[0065] タイプ(2)として、 Address変数についてさらに詳細に述べる。 VXML処理部は、
UserNameフィールドの認識が済んだという通知を受け取り、 12行目の処理を始める。 getUser Address関数という、顧客名対住所のデータベースを参照して、住所を返す 関数を、呼びだす。その返り値を、 Address変数に変数値としてわりあてる。
[0066] 変数名の決定
本実施例の 1つでは、変数録音ファイル名は、〃変数値〃 + "扁"とした。例えば、 変数が、変数" Product"の時、 Productの変数値が〃お米〃だったら、変部録音フアイ ル名 ="お米. wav"である、ということである。これに関連して、以下の表 9に示す例を基 に、さらに詳細に説明する。
[表 9]
Figure imgf000024_0001
[0067] これは、あるアプリケーションで、注文を伺い、そして「ご注文は、〇〇でよろしいで す力」と言いたい時、の記述である。このサンプルは、次のような対話ができます。 System : ご注文をどうぞ
User : お未
System : ご注文はお米ですね。
[0068] このようなアプリケーションおいては、アプリケーション開発時にあらかじめ、変数" Product"として有効な値について、変数録音ファイルを生成してアプリケーション 'サ ーバに格納しておく。変数録音ファイルのファイル名は、〃変数値〃 +〃.wav〃です。変 数の有効値が、〃お米〃ど'お味噌〃の場合、〃お米. wav"と〃お味噌. wav〃を作成し、そ れらをアプリケーション ·サーバに格納しておく。音声サーバは実行時に、く value expr="Product7〉部分に、変数" Product"の値 Γお米〃など)から、変数部録音フアイ ル名 ("お米. wav")を組み立てます。そのファイルがアプリケーション'サーバに存在す れば、それを再生します。存在しなければ、変数値 (〃お米〃)を音声合成します。この ようなファイル名の組み立ては、一例では、図 7のフローチャートの"(8)変数部録音 ファイルが存在するカ 'で行われる。
図面の簡単な説明
[0069] [図 1]本発明を実施するのに好適なコンピュータ装置のハードウェア構成の例を模式 的に示した図である。
[図 2]本発明を機能ブロックを用いて示した図である。
[図 3]音声ファイル処理部 231におけるグラマーの生成ロジックを示す図である。 [図 4]グラマーの生成ロジックの詳細を示す図である。
[図 5]音声認識エンジン 232における音声認識による音声ファイルの分割ロジックに ついて示す図である。
[図 6]音声認識エンジン 232における音声認識による音声ファイルの分割結果につ いて示す図である。
[図 7]本発明の音声サーバ 230における処理の流れについての一例を記述したフロ 一チャートを示す図である。
符号の説明
101 CPU
102 MZBチップセット
103 メインメモリ
104 ビデオカード
105 ハードディスク
106 ネットワークインターフェイス
107 USB
108 ブリッジ回路
109 フレキシブルディスクドライブ
110 キーボード Zマウス
210 音声応答システム
221 全文録音音声ファイル
222 変数録音音声ファイル
223 変数録音音声ファイル
224 音声情報
220 アプリケーション 'サーバ
231 音声ファイル処理部
232 音声認識エンジン
233 音声化処理部
230 音声サーバ 240 音声出力装置

Claims

請求の範囲
[1] アプリケーション 'サーバ及び音声サーノ からなる音声応答システムであって、 前記アプリケーション 'サーバは、第 1の音声ファイルと、第 2の音声ファイルと、音 声情報を有するものであり、
前記音声サーバは、
前記アプリケーション'サーノから前記音声情報と前記第 1の音声ファイルを受け取 り、前記音声情報に基づいてグラマーを生成する音声ファイル処理手段と、
前記グラマーに基づいて、前記第 1の音声ファイルを音声認識し、複数の音声ファ ィルに分割する音声認識手段と、
前記分割された音声ファイルの内の少なくとも 1の音声ファイルを前記第 2の音声フ アイルに置き換える音声処理手段と
を有する音声応答システム。
[2] 前記第 1の音声ファイルは、変数が入ることを示す変数部を含む全文を一つのファ ィルとして録音されたものである、請求項 1記載の音声応答システム。
[3] 前記第 2の音声ファイルは、変数部に入る音声をファイルとして録音したものである
、請求項 2記載の音声応答システム。
[4] 前記音声情報には、前記第 1の音声ファイルのファイル名が含まれ、前記音声ファ ィル処理手段は前記ファイル名に基づいて前記第 1の音声ファイルを抽出するもの である、請求項 1記載の音声応答システム。
[5] 前記音声情報には、代替テキストが含まれ、前記音声ファイル処理手段は前記代 替テキストに基づいてグラマーを生成するものである、請求項 1記載の音声応答シス テム。
[6] 前記音声情報には、変数についての処理を行う必要があるかどうかを示す変数情 報が含まれる、請求項 1記載の音声応答システム。
[7] さらに、音声を出力する音声出力手段を有する請求項 1記載の音声応答システム。
[8] アプリケーション 'サーバ及び音声サーノからなる音声応答システムにおける音声 応答方法であって、前記アプリケーション 'サーバは、第 1の音声ファイルと、第 2の音 声ファイルと、音声情報を有するものであり、前記音声応答方法は、 前記音声サーバが、
前記アプリケーション'サーノから前記音声情報と前記第 1の音声ファイルを受け取 り、前記音声情報に基づいてグラマーを生成するステップと、
前記グラマーに基づいて、前記第 1の音声ファイルを音声認識し、複数の音声ファ ィルに分割するステップと、
前記分割された音声ファイルの内の少なくとも 1の音声ファイルを前記第 2の音声フ アイルに置き換えるステップと
からなる音声応答方法。
[9] 前記第 1の音声ファイルは、変数が入ることを示す変数部を含む全文を一つのファ ィルとして録音されたものである、請求項 8記載の音声応答方法。
[10] 前記第 2の音声ファイルは、変数部に入る音声をファイルとして録音されたものであ る、請求項 9記載の音声応答方法。
[11] 前記音声情報には、前記第 1の音声ファイルのファイル名が含まれ、前記第 1の音 声ファイルを前記ファイル名に基づいて抽出する、請求項 8記載の音声応答方法。
[12] 前記音声情報には、代替テキストが含まれ、前記グラマーを前記代替テキストに基 づいて生成する、請求項 8記載の音声応答方法。
[13] 前記音声情報には、変数についての処理を行う必要があるかどうかを示す変数情 報が含まれる、請求項 8記載の音声応答方法。
[14] アプリケーション 'サーバ及び音声サーノからなる音声応答システムにおける音声 応答を実行するためのプログラムであって、前記アプリケーション 'サーバは、第 1の 音声ファイルと、第 2の音声ファイルと、音声情報を有するものであり、前記プログラム は、前記音声サーバを
前記アプリケーション'サーノから前記音声情報と前記第 1の音声ファイルを受け取 り、前記音声情報に基づいてグラマーを生成し、
前記グラマーに基づいて、前記第 1の音声ファイルを音声認識し、複数の音声ファ ィルに分割し、
前記分割された音声ファイルの内の少なくとも 1の音声ファイルを前記第 2の音声フ アイルに置き換える よう〖こ動作させるちのであるプログラム。
[15] 前記第 1の音声ファイルは、変数が入ることを示す変数部を含む全文を一つのファ ィルとして録音されたものである、請求項 14記載のプログラム。
[16] 前記第 2の音声ファイルは、変数部に入る音声をファイルとして録音したものである
、請求項 15記載のプログラム。
[17] 前記音声情報には、前記第 1の音声ファイルのファイル名が含まれ、前記第 1の音 声ファイルを前記ファイル名に基づいてを抽出する、請求項 14記載のプログラム。
[18] 前記音声情報には、代替テキストが含まれ、前記グラマーを前記代替テキストに基 づいて生成する、請求項 14記載のプログラム。
[19] 前記音声情報には、変数についての処理を行う必要があるかどうかを示す変数情 報が含まれる、請求項 14記載のプログラム。
[20] 前記請求項 14な 、し請求項 19に記載のプログラムを格納したコンピュータが読み 取り可能な記録媒体。
[21] 自動的に音声処理を行うための音声サーバであって、
代替テキストからグラマーを生成する手段と、
前記グラマーに基づいて、第 1の音声ファイルを音声認識し、複数の音声ファイル に分割する手段と、
前記分割された音声ファイルの内の少なくとも 1の音声ファイルを第 2の音声フアイ ルに置き換える手段と
を有する音声サーバ。
[22] 前記第 1の音声ファイルは、変数が入ることを示す変数部を含む全文を一つのファ ィルとして録音されたものである、請求項 21記載の音声サーバ。
[23] 前記第 2の音声ファイルは、変数部に入る音声をファイルとして録音したものである
、請求項 22記載の音声サーバ。
[24] 前記第 2の音声ファイルは、変数部に入る音声を合成音声により生成したものであ る、請求項 22記載の音声サーバ。
[25] 前記グラマーを生成する手段は、代替テキストを変数部と変数部以外に分割し、変 数部を予め定められた単語に置き換えることにより、グラマーを生成する請求項 21記 載の音声サーバ。
[26] 前記グラマーを生成する手段は、さらに前記単語の置き換えにより生成されたテキ ストファイルを分割し、音声認識が可能な形式にすることにより、グラマーを生成する 請求項 25記載の音声サーバ。
[27] 音声サーバによって自動的に音声ファイルの処理を行うための方法であって、 前記音声サーバが
代替テキストからグラマーを生成するステップと、
前記グラマーに基づいて、第 1の音声ファイルを音声認識し、複数の音声ファイル に分割するステップと、
前記分割された音声ファイルの内の少なくとも 1の音声ファイルを第 2の音声フアイ ルに置き換えるステップと
を有する音声ファイル処理方法。
[28] 前記第 1の音声ファイルは、変数が入ることを示す変数部を含む全文を一つのファ ィルとして録音されたものである、請求項 27記載の音声ファイル処理方法。
[29] 前記第 2の音声ファイルは、変数部に入る音声をファイルとして録音されたものであ る、請求項 28記載の音声ファイル処理方法。
[30] 前記第 2の音声ファイルは、変数部に入る音声を合成音声により生成したものであ る、請求項 28記載の音声ファイル処理方法。
[31] 前記グラマーを生成するステップは、代替テキストを変数部と変数部以外に分割し
、変数部を予め定められた単語に置き換えることにより、グラマーを生成する請求項 2
7記載の音声ファイル処理方法。
[32] 前記単語の置き換えにより生成されたテキストファイルを分割し、音声認識が可能 な形式にすることにより、グラマーを生成する請求項 31記載の音声ファイル処理方法
[33] 音声サーバによって自動的に音声ファイルの処理を行うためのプログラムであって 、前記プログラムは前記音声サーバを
代替テキストからグラマーを生成し、
前記グラマーに基づいて、第 1の音声ファイルを音声認識し、複数の音声ファイル に分割し、
前記分割された音声ファイルの内の少なくとも 1の音声ファイルを第 2の音声フアイ ルに置き換える
よう〖こ動作させるちのであるプログラム。
[34] 前記第 1の音声ファイルは、変数が入ることを示す変数部を含む全文を一つのファ ィルとして録音されたものである、請求項 33記載の音声ファイル処理方法。
[35] 前記第 2の音声ファイルは、変数部に入る音声をファイルとして録音されたものであ る、請求項 34記載のプログラム。
[36] 前記第 2の音声ファイルは、変数部に入る音声を合成音声により生成したものであ る、請求項 34記載のプログラム。
[37] 前記グラマーを生成する動作は、代替テキストを変数部と変数部以外に分割し、変 数部を予め定められた単語に置き換えることにより、グラマーを生成する請求項 33記 載のプログラム。
[38] さらに前記単語の置き換えにより生成されたテキストファイルを分割し、音声認識が 可能な形式にすることにより、グラマーを生成する請求項 37記載のプログラム。
[39] 前記請求項 33な 、し請求項 38に記載のプログラムを格納したコンピュータが読み 取り可能な記録媒体。
PCT/JP2004/007368 2003-06-02 2004-05-28 音声応答システム、音声応答方法、音声サーバ、音声ファイル処理方法、プログラム及び記録媒体 WO2004109658A1 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
CN200480021899XA CN1830022B (zh) 2003-06-02 2004-05-28 语音应答系统及其方法
JP2005506746A JP4478647B2 (ja) 2003-06-02 2004-05-28 音声応答システム、音声応答方法、音声サーバ、音声ファイル処理方法、プログラム及び記録媒体
DE602004010804T DE602004010804T2 (de) 2003-06-02 2004-05-28 Sprachantwortsystem, Sprachantwortverfahren, Sprach-Server, Sprachdateiverarbeitungsverfahren, Programm und Aufzeichnungsmedium
AU2004246451A AU2004246451A1 (en) 2003-06-02 2004-05-28 Voice response system, voice response method, voice server, voice file processing method, program and recording medium
EP04745404A EP1632932B1 (en) 2003-06-02 2004-05-28 Voice response system, voice response method, voice server, voice file processing method, program and recording medium

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2003-156714 2003-06-02
JP2003156714 2003-06-02

Publications (1)

Publication Number Publication Date
WO2004109658A1 true WO2004109658A1 (ja) 2004-12-16

Family

ID=33508327

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2004/007368 WO2004109658A1 (ja) 2003-06-02 2004-05-28 音声応答システム、音声応答方法、音声サーバ、音声ファイル処理方法、プログラム及び記録媒体

Country Status (8)

Country Link
EP (1) EP1632932B1 (ja)
JP (1) JP4478647B2 (ja)
KR (1) KR100834363B1 (ja)
CN (1) CN1830022B (ja)
AT (1) ATE381755T1 (ja)
AU (1) AU2004246451A1 (ja)
DE (1) DE602004010804T2 (ja)
WO (1) WO2004109658A1 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006118683A1 (en) 2005-04-29 2006-11-09 Motorola, Inc. Speech dialog method and system
JP2013182256A (ja) * 2012-03-05 2013-09-12 Toshiba Corp 音声合成システムおよび音声変換支援装置
CN108090051A (zh) * 2017-12-20 2018-05-29 深圳市沃特沃德股份有限公司 连续长语音文件的翻译方法与翻译机

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010068882A2 (en) * 2008-12-11 2010-06-17 Nortel Networks Limited Automated text-based messaging interaction using natural language understanding technologies
CN110235087B (zh) * 2017-01-20 2021-06-08 华为技术有限公司 一种实现语音控制的方法和终端
JP7013172B2 (ja) * 2017-08-29 2022-01-31 株式会社東芝 音声合成辞書配信装置、音声合成配信システムおよびプログラム
KR102293772B1 (ko) * 2018-08-02 2021-08-25 주식회사 케이티 음성 합성 서비스를 제공하는 서버, 사용자 단말 및 방법
KR102304993B1 (ko) * 2018-11-01 2021-09-27 주식회사 케이티 Tts 서비스 제공 방법 및 이를 위한 중계 서버

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1195793A (ja) * 1997-09-17 1999-04-09 Toshiba Corp 音声入力解釈装置及び音声入力解釈方法
JP2001265376A (ja) * 2000-03-22 2001-09-28 Pioneer Electronic Corp 音声合成出力装置ならびに方法および同方法が記録される記録媒体
JP2002221980A (ja) * 2001-01-25 2002-08-09 Oki Electric Ind Co Ltd テキスト音声変換装置

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2554116B2 (ja) * 1988-01-30 1996-11-13 日本電気ホームエレクトロニクス株式会社 テレビジョン受像機
US5652789A (en) * 1994-09-30 1997-07-29 Wildfire Communications, Inc. Network based knowledgeable assistant
AU1987097A (en) * 1996-03-07 1997-09-22 American Express Travel Related Services Company, Inc. Methods and apparatus for providing a prepaid, remote memory transaction account with voice indicia
US5970449A (en) * 1997-04-03 1999-10-19 Microsoft Corporation Text normalization using a context-free grammar
US6144938A (en) * 1998-05-01 2000-11-07 Sun Microsystems, Inc. Voice user interface with personality
US6499013B1 (en) * 1998-09-09 2002-12-24 One Voice Technologies, Inc. Interactive user interface using speech recognition and natural language processing
KR100287905B1 (ko) * 1998-12-31 2001-05-02 서평원 실시간 음성 재생 시스템 및 그를 이용한 음성 재생 방법
EP1183680B1 (en) * 1999-02-19 2006-10-04 Custom Speech Usa, Inc. Automated transcription system and method using two speech converting instances and computer-assisted correction
KR100364546B1 (ko) * 2000-12-29 2002-12-18 엘지전자 주식회사 음성 메일링 시스템의 음성자원 교체방법
US7711570B2 (en) * 2001-10-21 2010-05-04 Microsoft Corporation Application abstraction with dialog purpose
JP4554561B2 (ja) * 2006-06-20 2010-09-29 株式会社シマノ 釣り用グローブ
JP2008002005A (ja) * 2006-06-21 2008-01-10 Shimada Shoji Kk 衣服用パッド
JP4880379B2 (ja) * 2006-06-23 2012-02-22 粕谷 普烈 型板の緊張度が調節自在な枠体

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1195793A (ja) * 1997-09-17 1999-04-09 Toshiba Corp 音声入力解釈装置及び音声入力解釈方法
JP2001265376A (ja) * 2000-03-22 2001-09-28 Pioneer Electronic Corp 音声合成出力装置ならびに方法および同方法が記録される記録媒体
JP2002221980A (ja) * 2001-01-25 2002-08-09 Oki Electric Ind Co Ltd テキスト音声変換装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
ADACHI, F. ET AL.: "VoiceXML no Doteki Seisei ni Motozuku Shizen Gengo Onsei Taiwa System", INFORMATION PROCESSING SOCIETY OF JAPAN KENKYU HOKOKU, vol. 2002, no. 10, 1 February 2002 (2002-02-01), pages 133 - 138, XP002983536 *
MURAKAMI, T. ET AL.: "Onsei Ninshiki o Riyo shita Rokuon Onsei File Renketsu no Jidoka", INFORMATION PROCESSING SOCIETY OF JAPAN ZENKOKU TAIKAI KOEN RONBUNSHU, vol. 66, no. 2, 9 March 2004 (2004-03-09), pages 2.41 - 2.42, XP002983537 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006118683A1 (en) 2005-04-29 2006-11-09 Motorola, Inc. Speech dialog method and system
EP1899955A1 (en) * 2005-04-29 2008-03-19 Motorola, Inc. Speech dialog method and system
EP1899955A4 (en) * 2005-04-29 2008-10-29 Motorola Inc METHOD AND SYSTEM FOR VOICE DIALOGUE
JP2013182256A (ja) * 2012-03-05 2013-09-12 Toshiba Corp 音声合成システムおよび音声変換支援装置
CN108090051A (zh) * 2017-12-20 2018-05-29 深圳市沃特沃德股份有限公司 连续长语音文件的翻译方法与翻译机

Also Published As

Publication number Publication date
KR20060014043A (ko) 2006-02-14
JP4478647B2 (ja) 2010-06-09
CN1830022A (zh) 2006-09-06
EP1632932A1 (en) 2006-03-08
ATE381755T1 (de) 2008-01-15
EP1632932A4 (en) 2007-05-09
EP1632932B1 (en) 2007-12-19
KR100834363B1 (ko) 2008-06-02
AU2004246451A1 (en) 2004-12-16
CN1830022B (zh) 2010-05-05
DE602004010804T2 (de) 2008-12-04
JPWO2004109658A1 (ja) 2006-07-20
DE602004010804D1 (de) 2008-01-31

Similar Documents

Publication Publication Date Title
US6801897B2 (en) Method of providing concise forms of natural commands
US8065142B2 (en) Synchronization of an input text of a speech with a recording of the speech
JP3232289B2 (ja) 記号挿入装置およびその方法
US8719028B2 (en) Information processing apparatus and text-to-speech method
US8666727B2 (en) Voice-controlled data system
US8396714B2 (en) Systems and methods for concatenation of words in text to speech synthesis
US9196251B2 (en) Contextual conversion platform for generating prioritized replacement text for spoken content output
JP2001282277A (ja) 音声情報処理装置及びその方法と記憶媒体
JP4478647B2 (ja) 音声応答システム、音声応答方法、音声サーバ、音声ファイル処理方法、プログラム及び記録媒体
JPWO2014033855A1 (ja) 音声検索装置、計算機読み取り可能な記憶媒体、及び音声検索方法
WO2022196087A1 (ja) 情報処理装置、情報処理方法、および情報処理プログラム
JPS6083136A (ja) プログラム読上装置
JP2011150169A (ja) 音声認識装置
JP3958908B2 (ja) 書き起こしテキスト自動生成装置、音声認識装置および記録媒体
JP3414326B2 (ja) 音声合成用辞書登録装置及び方法
JP4206253B2 (ja) 自動音声応答装置及び自動音声応答方法
CN101645266B (zh) 声音合成装置
US11250837B2 (en) Speech synthesis system, method and non-transitory computer readable medium with language option selection and acoustic models
JP4054610B2 (ja) 音声認識装置および音声認識方法、音声認識プログラム、並びに、プログラム記録媒体
JP6555613B2 (ja) 認識誤り修正装置およびそのプログラム、ならびに、字幕生成システム
JP2001249678A (ja) 音声出力装置,音声出力方法および音声出力のためのプログラム記録媒体
TW202115713A (zh) 資訊處理裝置、記錄媒體、程式產品以及資訊處理方法
JP2004294639A (ja) 音声合成用テキスト解析装置および音声合成装置
JP2010156925A (ja) 情報処理装置及び音声認識辞書生成方法
JP2002049389A (ja) 音声認識方法およびそのプログラム記録媒体

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 200480021899.X

Country of ref document: CN

AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NA NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): BW GH GM KE LS MW MZ NA SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LU MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 1020057021113

Country of ref document: KR

WWE Wipo information: entry into national phase

Ref document number: 2005506746

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 2004745404

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 2004246451

Country of ref document: AU

ENP Entry into the national phase

Ref document number: 2004246451

Country of ref document: AU

Date of ref document: 20040528

Kind code of ref document: A

WWP Wipo information: published in national office

Ref document number: 2004246451

Country of ref document: AU

WWP Wipo information: published in national office

Ref document number: 1020057021113

Country of ref document: KR

WWP Wipo information: published in national office

Ref document number: 2004745404

Country of ref document: EP

WWG Wipo information: grant in national office

Ref document number: 2004745404

Country of ref document: EP