WO2022249946A1 - 対話装置及びその訓練装置 - Google Patents

対話装置及びその訓練装置 Download PDF

Info

Publication number
WO2022249946A1
WO2022249946A1 PCT/JP2022/020648 JP2022020648W WO2022249946A1 WO 2022249946 A1 WO2022249946 A1 WO 2022249946A1 JP 2022020648 W JP2022020648 W JP 2022020648W WO 2022249946 A1 WO2022249946 A1 WO 2022249946A1
Authority
WO
WIPO (PCT)
Prior art keywords
input
training data
response
causal
word
Prior art date
Application number
PCT/JP2022/020648
Other languages
English (en)
French (fr)
Inventor
健太郎 鳥澤
龍 飯田
淳太 水野
鍾勲 呉
ジュリアン クロエツェー
仁彦 淺尾
まな 鎌倉
Original Assignee
国立研究開発法人情報通信研究機構
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 国立研究開発法人情報通信研究機構 filed Critical 国立研究開発法人情報通信研究機構
Priority to JP2023523432A priority Critical patent/JPWO2022249946A1/ja
Publication of WO2022249946A1 publication Critical patent/WO2022249946A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • G06F40/42Data-driven translation
    • G06F40/44Statistical methods, e.g. probability models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • G06F40/55Rule-based translation
    • G06F40/56Natural language generation

Definitions

  • the present invention relates to a dialog device that uses a computer to interact with a user, a training device for the same, and a computer program, and more particularly to a dialog device that can develop topics from user input and a training device that trains such a dialog device.
  • This application claims priority based on Japanese Application No. 2021-090300 filed on May 28, 2021, and incorporates all the content described in the Japanese Application.
  • a search-based approach that takes user input, retrieves information from some database, not necessarily for interaction, based on information obtained from the user input, and uses the results. Deep learning techniques may be used to select and process search results.
  • Patent Literature 1 listed below employs this technique.
  • dialogue data is obtained from dialogue logs of online chat services.
  • learning is performed mainly using deep learning techniques so that the system automatically generates responses to inputs.
  • AI Artificial Intelligence
  • the information obtained as a response remains within the scope of the database. Moreover, there is a problem that the relationship between the user input and the response is not clear for the user, and the dialogue with the user does not develop.
  • the second method above has the problem that it is not possible to control the generated result that is output as a response.
  • deep learning has the problem that the process of generating a response from an input cannot be seen from the outside. Therefore, it is not clear how to control the response.
  • this approach requires the collection of a large amount of interaction data. The coverage should be wide. Collecting such data is generally known to be extremely difficult.
  • the main object of the present invention is to provide a dialogue apparatus capable of outputting a response that can develop a topic in response to a user's input, and a training apparatus for training such a dialogue apparatus. .
  • a training device for an interactive device stores assumed input storage means for storing a plurality of assumed inputs, each of which is assumed as an input to the interactive device, and a plurality of causal relationship expressions.
  • each of the plurality of causal relationship expressions includes a cause expression and a result expression; and for each of the plurality of assumed inputs stored in the assumed input storage means, a predetermined A causal relationship expression extracting means for extracting a causal relationship expression having a relationship from a plurality of causal relationship expressions, and a training data sample that inputs the assumed input and uses the causal relationship expression extracted by the causal relationship extracting means as an answer.
  • training data creating means for creating and storing in a predetermined storage device; and a training means for training using the data samples.
  • the causal relationship expression extracting means includes specific causal relationship expression extracting means for extracting from a plurality of causal relationship expressions a causal relationship having a noun phrase of the assumed input as a causal expression.
  • the training device further comprises a topic word model pre-trained to output, for each word in a predetermined vocabulary, the distribution probability of surrounding words of the given word, and a predetermined For each of the causality expressions of the training data samples stored in the storage device, identifying words with high distribution probabilities for the words contained in the causality expression based on the output of the topic word model and inputting them to the training data samples.
  • first training data sample addition means for adding to generate new training data samples and adding them to the predetermined storage device.
  • the training device further comprises, based on the output of the topic word model, for each of the causality expressions of the training data samples stored in the predetermined storage device, A second training data sample for extracting from a predetermined corpus sentences having distribution probabilities of surrounding words obtained from the predetermined corpus, adding them to the input of the training data samples to generate new training data samples, and adding them to a predetermined storage device. Including additional means.
  • a computer program provides a computer with hypothetical input storage means for storing a plurality of hypothetical inputs, each hypothesized as an input to a dialogue device, and a plurality of causal relationship expressions.
  • a computer program functioning as causal relationship storage means, wherein each of a plurality of causal relationship expressions includes a cause expression and a result expression, and the computer program further causes the computer to store a plurality of causality expressions stored in the assumed input storage means.
  • a causality expression extraction means for extracting from a plurality of causality expressions a causality expression having a predetermined relationship with the assumed input for each of the assumed inputs; It is designed to create training data samples with causal relationship expressions as answers, and to function as training data creation means for storing in a predetermined storage device, and to generate output sentences for natural language input sentences. , functions as a training means for training an interactive device comprising a neural network using the training data samples stored in the training data generating means.
  • a dialogue apparatus is a natural language dialogue apparatus including a neural network designed to generate an output sentence in response to a natural language input sentence, the neural network comprising: are trained to represent potential consequences for input sentences.
  • the dialogue device further adds a related expression, which is an expression including words or sentences related to the phrases in the input sentence, to the input sentence and inputs the input sentence to the neural network in response to the given input sentence.
  • a related expression which is an expression including words or sentences related to the phrases in the input sentence
  • a dialogue apparatus comprises an utterance storage unit that stores past utterances of a user, a topic model that outputs a probability distribution of the occurrence of surrounding words for an input word, and a user utterance as an input. , a response generator for generating a response to the user utterance using the user utterance stored in the utterance storage and the topic model.
  • a dialogue apparatus includes an utterance storage unit that stores past utterances of a user, a topic model that outputs a probability distribution of the occurrence of peripheral words for an input word, and an input user's utterance. includes a response generator that generates a response to the utterance, and a response generation adjuster that adjusts response generation by the response generator based on the output of the topic model for the user's utterance.
  • FIG. 1 is a block diagram of a dialogue system for training a dialogue device according to the first embodiment of the invention.
  • FIG. 2 is a block diagram of a training data generator which is a part of the interactive device shown in FIG.
  • FIG. 3 is a flow chart showing the control structure of a computer program that causes a computer to function as a device for creating training data for the dialogue system shown in FIG.
  • FIG. 4 is a block diagram of a dialogue system for training a dialogue device according to a second embodiment of the invention.
  • FIG. 5 is a block diagram of a training data addition unit shown in FIG. 4;
  • FIG. 6 is a block diagram of the related expression search unit shown in FIG. FIG.
  • FIG. 7 is a flow chart showing the control structure of a computer program for causing a computer to function as a training data creation device for the dialogue system according to the second embodiment.
  • FIG. 8 is a flow chart showing the control structure of a routine that implements the related expression adding process of FIG.
  • FIG. 9 is a block diagram of a dialogue device and a training device for training the dialogue device according to the third embodiment of the present invention.
  • FIG. 10 is a schematic diagram showing an example of training data prepared by the training device according to the third embodiment.
  • FIG. 11 is a flowchart showing a control structure of a computer program for causing a computer to function as a training data creation device for the dialogue system according to the third embodiment.
  • FIG. 12 is a flow chart showing the control structure of a computer routine that causes the computer to implement the related word addition process shown in FIG.
  • FIG. 13 is a block diagram of an interactive device according to the fourth embodiment of the invention.
  • FIG. 14 is a block diagram of an interactive device according to the fifth embodiment of the invention.
  • FIG. 15 is an external view of a computer system that implements each of the above embodiments.
  • FIG. 16 is a block diagram showing the hardware configuration of the computer system shown in FIG. 15. As shown in FIG.
  • FIG. 1 shows in block diagram form the configuration of a dialog system 50 according to the first embodiment of the present invention.
  • a dialogue system 50 is connected to a dialogue device 52 and the Internet 60, and uses causality expressions extracted from the Internet 60 to generate training data for training the dialogue device 52. and a data generator 54 .
  • Dialog system 50 further includes a trainer 56 for training dialog device 52 using training data generated by training data generator 54 .
  • each word constituting a natural language sentence used in the following embodiments is converted into a word vector in advance. That is, each natural language sentence is expressed as a word vector sequence composed of word vectors.
  • Dialog device 52 includes a response-generating neural network 100, which is a neural network that receives user input 102, such as a natural language sentence, and generates a response sentence.
  • the dialogue device 52 further includes an utterance shaping unit 104 for shaping the response sentence generated by the response generation neural network 100 so as to form an appropriate response to the user input 102 and outputting it as a response utterance 106.
  • a response-generating neural network 100 which is a neural network that receives user input 102, such as a natural language sentence, and generates a response sentence.
  • the dialogue device 52 further includes an utterance shaping unit 104 for shaping the response sentence generated by the response generation neural network 100 so as to form an appropriate response to the user input 102 and outputting it as a response utterance 106.
  • the response generation neural network 100 is of the so-called end-to-end type, and uses what is pre-trained so as to generate responses in natural language sentences in response to input of natural language sentences. Training of the response-generating neural network 100 by the training device 56 corresponds to so-called fine-tuning.
  • the response generation neural network 100 a generation network composed of a combination of a transformer encoder and a transformer decoder, or a UniLM that is additionally pretrained for generating BERT, or the like can be used.
  • the response generation neural network 100 can be implemented with any generation network without being limited to these. Also, if there is a lot of data for generational learning, it is possible to implement it with only normal generational learning. (For the BERT model, see the document Jacob Devlin, Ming-Wei Chang, Kenton Lee, and Kristina Toutanova.
  • the training data generation device 54 includes a causal relationship extraction unit 62 for extracting causal relationship expressions from the Internet 60 by a known method, and a causal relationship DB ( Database) 64. Further, the training data generation device 54, among the causal relationship expressions stored in the causal relationship DB 64, determines the consequent part of a causal relationship (first causal relationship) and the cause of another causal relationship (second causal relationship).
  • a chain causal relationship generation unit 66 that generates new causal relationship candidates in a chain by linking relationships, and generation for storing the causal relationship candidates generated by the chain causal relationship generation unit 66
  • a causal relation DB 68 is included.
  • a causal relationship recognition method disclosed in Japanese Patent Application Laid-Open No. 2018-60364 can be used.
  • a method for linking causal relationships and generating new causal relationship candidates for example, the technique disclosed in Japanese Patent Application Laid-Open No. 2015-121897 can be used.
  • the training data generation device 54 further includes a chain causal relation selection unit 70 that selects a causal relation representative of an appropriate causal relation from the causal relation candidates stored in the generated causal relation DB 68, and a chain causal relation selection unit 70 that selects a chain causal relationship DB 72 for storing causal relationships, and an extended causal relationship DB 74 for integrating and storing the causal relationships stored in the causal relationship DB 64 and the causal relationships stored in the chain causal relationship DB 72.
  • the training data generation device 54 also includes an assumed input extraction unit 76 that extracts from the Internet 60 an expression assumed to be the user input 102 to the interactive device 52 , an assumed input extracted by the assumed input extraction unit 76 , and an assumed input from the console 80 . and an assumed input storage unit 78 for storing assumed inputs added by manual operation.
  • the training data generation device 54 further inputs any of the assumed inputs stored in the assumed input storage unit 78, and among the causal relationships stored in the extended causal relationship DB 74, the causal relationship having the consequent part that can be the answer to the assumed input is the correct answer, and a training data generation unit 82 for outputting the training data sample to the training device 56 .
  • the training data creation unit 82 reads from the extended causal relationship DB 74 a causal relationship that has a noun phrase of the assumed input as a cause part for each assumed input read from the assumed input storage unit 78 . to create training data samples.
  • training data generation unit 82 includes assumed input reading unit 150 that sequentially reads out assumed inputs from assumed input storage unit 78 , and noun phrases included in the assumed inputs read by assumed input reading unit 150 . and a noun phrase identification portion 152 for identifying the .
  • the training data creation unit 82 further includes a causal relationship search unit 154 for searching and reading all causal relationships that include the noun phrase specified by the noun phrase specifying unit 152 in the consequent part from the extended causal relationship DB 74, and a causal relationship search unit. and a training data sample generator 156 for generating training data samples with assumed inputs as inputs and causal relations as outputs for each of the causal relationships read by 154 , and for storing the training data samples in the training data storage unit 84 .
  • the training device 56 includes a training data storage unit 84 for storing the training data samples output by the training data generation unit 82, and trains the response generation neural network 100 using the training data samples stored in the training data storage unit 84. and a training section 86 for performing.
  • the processing performed by the training unit 86 on the response generation neural network 100 is fine tuning of the response generation neural network 100 as described above. Specifically, for each training data sample, the training unit 86 provides a hypothetical input to the response-generating neural network 100 and back-propagates the error to produce an output that is the result of a causal relationship caused by the hypothetical input. We train the response-generating neural network 100 according to the method.
  • FIG. 3 shows the control structure of a computer program for causing a computer to function as the training data generation device 54 in the form of a flow chart.
  • this program performs step 200 for securing and initializing a storage area, opening related files, connecting to a database, etc., and assumed input storage section 78 shown in FIG. and step 202 of reading all possible inputs from.
  • the program further includes a step 204 of executing step 206 for each of the hypothetical inputs read in step 202, and a step 208 of executing a predetermined termination process to end execution of the program after step 204 is completed. including.
  • Step 206 includes step 230 of identifying all noun phrases present in the hypothetical input to be processed, and step 232 of performing step 234 for each noun phrase identified in step 230 .
  • Step 234 consists of step 260 of reading all causal relationships having the noun phrase being processed as a cause part from the expanded causal relationship DB 74 shown in FIG. and a step 262 of performing a step 264 of creating training data samples consisting of combinations of .
  • a training data sample is created by inputting the assumed input being processed and taking the causal relationship being processed as an answer, and storing it in the training data storage unit 84 shown in FIG.
  • the training data generator 54 operates as follows to create training data for the response generation neural network 100 .
  • the causal relationship extraction unit 62 extracts a large number of causal relationships from the Internet 60 and stores them in the causal relationship DB 64 .
  • the causal relationship DB 64 stores these causal relationships in various searchable formats. For example, with the technique disclosed in JP-A-2018-60364, the causal part and the consequent part of the causal relationship can be distinguished. If the causal relationship DB 64 is designed so that the causal relationship DB 64 stores the cause part and the consequent part of each causal relationship in separate columns, it is possible to easily extract only causal relationships that include a specific word in the cause part, for example.
  • the chain causal relation generation unit 66 generates two causal relations such that the consequent part of the first causal relation has substantially the same meaning as the cause part of the second causal relation among the causal relations stored in the causal relation DB 64. Generate all of the relationship candidates. Furthermore, by performing similar processing, a new candidate for causal relationship is generated by linking a plurality of causal relationships. In this embodiment, a large number of causal relationship candidates are generated by chaining causal relationships up to a predetermined upper limit number of times. All of these causal relationship candidates are stored in the generated causal relationship DB 68 .
  • the generated causal relationship DB 68 stores causal relationship candidates in the same format as the causal relationship DB 64, for example. In the case of the generated causal relationship DB 68, information specifying the causal relationship from which the causal relationship candidates are generated may be stored together.
  • the causal relationship candidate generated by the chain causal relationship generating unit 66 is based on the fact that between two consecutive causal relationships in the chain, one consequent part and the other cause part are semantically the same. Based on However, as disclosed in JP-A-2015-121897, among the causal relationship candidates obtained by such a chain of causal relationships, there are some that do not represent a correct causal relationship as a whole. . Therefore, the chain causal relationship selection unit 70 selects a causal relationship candidate that is considered to be correct from among the causal relationship candidates stored in the generated causal relationship DB 68 and stores it in the chain causal relationship DB 72 . As a method for selecting causal relationship candidates here, the method disclosed in Japanese Patent Application Laid-Open No. 2015-121897 is used. It is also possible to fine-tune a pre-trained natural language model such as BERT to select causal relationship candidates.
  • the extended causal relationship DB 74 stores causal relationships that integrate the causal relationship DB 64 and the chain causal relationship DB 72 . That is, the extended causal relationship DB 74 stores the causal relationship extracted from the Internet 60 by the causal relationship extracting unit 62 and the causal relationship generated from these causal relationships by the chain causal relationship generating unit 66 and the chain causal relationship selecting unit 70. . The extended causality DB 74 also stores causality in a format similar to that of the causality DB 64 .
  • the assumed input extraction unit 76 extracts expressions that can be considered as inputs to the response generation neural network 100 from a large number of web pages on the Internet 60 as assumed inputs to the response generation neural network 100. Extract as For example, questions in the form of questions posted on sites that provide various information, including questions on a large number of FAQ (Frequently Asked Questions) sites on the Internet 60, can be considered as candidates. In addition to this, it is also possible to extract ordinary sentences and generate question sentences in which noun phrases are answers.
  • the assumed input extracted by the assumed input extraction unit 76 is stored in the assumed input storage unit 78 .
  • the user may supplement the assumed input using the console 80.
  • this supplement is not mandatory.
  • the training data creation unit 82 creates training data as follows. Specifically, a computer creates training data by executing a program whose control structure is shown in FIG.
  • step 200 initial processing is executed, and in step 202, all assumed inputs stored in assumed input storage unit 78 are read and loaded into memory.
  • step 204 training data is created by performing step 206 as described below for each of these hypothetical inputs until the hypothetical inputs are exhausted.
  • step 206 all noun phrases in the hypothetical input being processed are first identified (step 230), and in step 232, the processing of step 234 is executed for each of these noun phrases.
  • step 234 for the noun phrase being processed, all causal relationships having that noun phrase as the cause part are read from the extended causal relationship DB 74 (step 260). Further, in step 262, for each of these causal relationships, the processing of step 264 is to input assumed inputs during processing, create a training data sample with the consequent part of the causal relationship as an answer, and store it in the training data storage section 84 of FIG. until it is done for all causal relations.
  • step 232 When the processing of step 232 is completed for all the noun phrases identified in step 230 in this way, step 206 is completed for a certain assumed input, and the processing of step 206 is executed again for the next assumed input.
  • step 204 When step 204 is completed for all assumed inputs read in step 202, the preparation of training data ends. Training data is stored in the training data storage unit 84 of FIG.
  • the training unit 86 of the training device 56 uses the training data prepared in the training data storage unit 84 to train the response generation neural network 100 .
  • the training of the response generation neural network 100 itself is based on the normal error backpropagation method. That is, an assumed input is given to the response generation neural network 100, and the output of the response generation neural network 100 is obtained. At this time, the output of the response generation neural network 100 is sequentially output in the form of word vectors. The parameters of the response generation neural network 100 are corrected so that the word vector sequence formed by these word vectors becomes (the word vector sequence of) the consequent part of the causal relationship that is the answer of the training data. Since this training relies on existing techniques, its details are not repeated here.
  • the interaction device 52 is available.
  • this input is converted into a word vector sequence and given to response generation neural network 100 as user input 102 .
  • Response generation neural network 100 generates a response to this user input 102 and outputs it to speech shaping section 104 .
  • the utterance shaping unit 104 shapes the response given from the response generation neural network 100 so as to be suitable as a response to the user input 102 (for example, adding some words to the beginning according to the user input 102, a part of the user input 102). , transforming the final expression into a conversational one, etc.) and outputs it as a response utterance 106 .
  • This shaping may be performed on a rule basis, or may be performed using a neural network that has been trained using sentences and modified sentence endings as training data.
  • the user may make an utterance by voice, and after recognizing the utterance, the user input 102 may be input to the response generation neural network 100 .
  • the response utterance 106 may also be output as voice by voice synthesis.
  • causality is used to create training data.
  • a large amount of general dialogue data as is done in the prior art, a large amount of causal relationships can be obtained from the Internet using existing methods. Therefore, a large amount of training data can be prepared, and the response generation neural network 100 can be made more accurate. That is, the response-generating neural network 100 can generate a causal-based response to the user input 102 that is highly likely to further develop the dialogue.
  • the neural network itself is a black box. Therefore, there is a problem that it is difficult to explain to the user what the purpose of the response output by the dialogue system is.
  • neural networks trained using causal relationships such as the response-generating neural network 100 according to this embodiment, teach the user the potential chances and risks derived from the user's utterances. can be explained as Therefore, the dialog system can be used not only as a dialogue partner but also as a tool for developing the user's thinking or a tool for directing the user's behavior.
  • FIG. 4 shows in block diagram form the configuration of a dialog system 300 according to the second embodiment of the present invention.
  • this interactive system 300 includes a training data generator 54 and a training device 56 similar to those of the first embodiment.
  • Dialogue system 300 is further coupled to training data store 84 of trainer 56 and assumed input store 78 of training data generator 54 and, for each training data sample, assumes some phrase associated with its assumed input as a topic.
  • training data extender 58 that creates new training data samples appended to the input and adds them to the training data store 84, and a response generating neural network 340 trained by the trainer 56 using this extended training data.
  • an interactive device 302 an interactive device 302 .
  • Training data extension unit 58 A Configuration The training data extension unit 58 is prepared in advance using corpus statistics so that when a word is given, it outputs a surrounding word distribution vector whose elements are the probabilities of occurrence of each word around the word. Contains topic word model 330 . Training data extension unit 58 further, given a word, identifies words that have a surrounding word distribution vector similar to the surrounding word distribution vector for that word based on the output of topic word model 330, and also identifies words that have surrounding word distribution vectors for that word. It includes a related expression search unit 332 that extracts from the assumed input storage unit 78 an assumed input that includes a word having a word vector similar to the distribution vector.
  • the training data expansion unit 58 further extracts words included in the consequent part of the causal relation expression of each training data sample stored in the training data storage unit 84, supplies the words to the related expression search unit 332, and responds to them.
  • training data addition unit 334 Referring to FIG. 5, the configuration of training data addition unit 334 is as follows.
  • the training data adding unit 334 reads out the training data samples stored in the training data storage unit 84 one by one, and extracts words included in the consequent part of the causal relationship among them.
  • a related expression inquiry unit 362 for inquiring the related expression search unit 332 about a related expression for each of the words extracted by the unit 360 is included.
  • the training data addition unit 334 further receives the related expressions output by the related expression search unit 332 in response to the query from the related expression inquiry unit 362, and the training data samples read by the training data reading unit 360 as predetermined combinations thereof. includes a related expression adder 366 for adding to the hypothetical input in the to generate new training data samples.
  • the training data adding unit 334 further includes a training data writing unit 364 for adding and writing the new training data samples generated by the related expression adding unit 366 to the training data storage unit 84 .
  • the topic word model 330 creates a surrounding word distribution whose elements are the probabilities of each word appearing around the word (for example, two ranges before and after the word, or two ranges before and after the word). It is obtained by performing statistical processing on a predetermined corpus in advance so as to output a vector.
  • the peripheral word distribution vector has a number of elements corresponding to a certain number of words selected from the target language. Words with a high probability of appearing around a certain word can be found from this peripheral word distribution vector.
  • neighboring word distribution vectors of words appearing in similar situations are similar to each other. Therefore, words appearing in situations similar to each other can also be estimated using this topic word model 330 . Whether or not two surrounding word distribution vectors are similar may be determined based on the cosine similarity between the two.
  • D Related expression search unit 332 Referring to FIG. 6, when a related expression search unit 332 receives a word from related expression inquiry unit 362 shown in FIG. A related assumed input search unit 400 for searching the assumed input stored in the unit 78 for an assumed input containing a word having a peripheral word distribution vector similar to this peripheral word distribution vector and retrieving it as a related assumed input. include. Further, when a word is given from the related expression inquiry unit 362, the related expression search unit 332 obtains a peripheral word distribution vector of the word from the topic word model 330, and uses the peripheral word distribution vector to obtain a peripheral word distribution vector of the input word. includes a related word search unit 402 for selecting words with a high probability of being used as related words.
  • the related expression search unit 332 further includes a related expression expansion unit 404 for generating various combinations of the assumed related input retrieved by the assumed related input search unit 400 and the related words selected by the related word search unit 402, and and a related expression output unit 406 for outputting each of the combinations generated by the expression development unit 404 to the related expression addition unit 366 of FIG.
  • the dialogue device 302 is a response generation neural network 340 having the same configuration as the response generation neural network 100 of FIG. contains a response-generating neural network 340 trained with training data augmented by .
  • the dialogue device 302 further adds, to the user input 102 to the dialogue device 302, one or a plurality of words representing expressions that the user has uttered in the past dialogue or topics of dialogue with the user, and generates a response generation neural network 340. and an information appending device 338 for inputting to.
  • the information appender 338 includes a topic word model 344 similar to the topic word model 330 of the training data extension 58, a user input storage 346 for storing past user utterances, and a user input 102 to receive user input. and a word selector 348 for extracting the words contained in 102 and referring to the topic word model 344 to select some words that are most likely related to the word.
  • the information addition device 338 further includes an utterance selection unit 350 for selecting some utterances related to the user input 102 from among the user inputs stored in the user input storage unit 346, and a word Any combination of the word selected by selector 348 and the user input selected by utterance selector 350 (including the case where none is selected) is selected and added to user input 102 and sent to response-generating neural network 340 as an input. and an information addition unit 352 for giving.
  • Topic word model 344 is similar to topic word model 330 of FIG.
  • the word selector 348 extracts words included in the user input 102 and references the topic word model 344 for each of the words to obtain a surrounding word distribution vector. Then, it has a function of selecting a word corresponding to a predetermined number of elements having the highest probability among those peripheral word distribution vectors.
  • the user input storage unit 346 stores a predetermined number of the latest user inputs among the user inputs input by the user in the past. The input time may be added to the user input and stored.
  • the E Utterance selection unit 350 receives a word vector string combining the user input 102 and the past user input stored in the user input storage unit 346 via a predetermined separation token, and receives a value indicating the degree of relationship between the two. It has a neural network pre-trained to output , and has the function of selecting some past user utterances that have the highest value output by this neural network. Note that when the input time of the user input is stored, the selection target may be limited to the user input from a predetermined time before the current time to the current time. You may make it have an inverse correlation with the elapsed time from the time when it was set.
  • the information addition unit 352 receives all words selected by the word selection unit 348 and all user utterances selected by the utterance selection unit 350, generates a set of all combinations of these, and randomly selects one It has a function of selecting one combination and adding it to the user input 102 . Some of the combinations include combinations that do not contain any words or past inputs. Therefore, the output of the information addition unit 352 can take various forms, such as user input 102 only, user input 102 + word, user input 102 + past input, user input 102 + 2 words, user input 102 + word + past input.
  • FIG. 7 shows the control structure of a program for causing a computer to function as the training data generation device 54, the training device 56 and the training data extension section 58 of FIG.
  • this program differs from that of the first embodiment shown in FIG. The point is that it includes step 450 where the
  • FIG. 8 shows the control structure of the program routine that causes the computer to perform step 450 of FIG.
  • this routine consists of step 500 of performing predetermined initial processing at the start of execution of the routine, and step 504 of performing the processing of step 504 described below for each training data sample until the end of the training data sample. 502, and step 506 for performing predetermined end processing after step 502 to complete execution of this routine and returning control to the parent routine shown in FIG.
  • Step 504 consists of extracting 530 words from the causal consequences contained in the training data samples to be processed, and performing step 534 for each word extracted in step 530 until the words are exhausted: and step 532 of generating a set of word candidates to be attached to the hypothetical input. Step 504 further generates, after step 532 is completed, all possible combinations of words in the set of words generated in step 532, and for each combination, the possible input contained in the training data sample to be processed. and step 536 of adding the combination to generate new training data samples and performing step 538 of adding to the training data.
  • Step 534 includes calculating 560 a surrounding word distribution vector for the word under processing using the topic word model 330, and selecting 562 a predetermined number of words with the highest probabilities calculated in step 560. .
  • step 534 based on the peripheral word distribution vector calculated in step 560, a predetermined number of assumed inputs having words having peripheral word distribution vectors similar to this peripheral word distribution vector are stored in the assumed input storage unit 78 of FIG. and step 564 to select from.
  • step 562 when selecting words in step 562, only words with probabilities equal to or higher than the threshold are selected even if the probabilities are high.
  • step 564 only words whose similarity in the peripheral word distribution vector is equal to or higher than a predetermined level are selected.
  • An appropriate value for the threshold may be determined through experiments. It is not necessary to provide such restrictions.
  • step 450 of FIG. the training data reading unit 360 of the training data addition unit 334 reads the training data one by one from the training data storage unit 84 (step 502 in FIG. 8). Words are extracted from the consequent portion of the causal relationship in the data (step 530 ) and given to the related expression inquiry section 362 . For each of these words (step 532), the related expression query unit 362 queries the related expression search unit 332 for related expressions (step 534).
  • the assumed related input search unit 400 of the related expression search unit 332 calculates a peripheral word distribution vector related to the word from the topic word model 330 (step 560).
  • the related word search unit 402 selects a predetermined number of words with a high probability of being used around the input word from the peripheral word distribution vector as related words (step 562).
  • the related assumed input search unit 400 further searches the assumed inputs stored in the assumed input storage unit 78 for assumed inputs containing words having peripheral word distribution vectors similar to this peripheral word distribution vector, Take as input (step 564). This process is performed for each word.
  • the related expression expansion unit 404 generates possible combinations of the assumed related input extracted by the assumed related input search unit 400 and the related words selected by the related word search unit 402 (step 536).
  • the related expression output unit 406 outputs each of the combinations generated by the related expression development unit 404 to the related expression addition unit 366 in FIG. 5 as a related expression related to the causal relationship.
  • the related expression addition unit 366 receives the combinations of related expressions output by the related expression search unit 332, adds these combinations to the assumed inputs in the training data sample being processed, Generate new training data samples.
  • the training data writing unit 364 additionally writes the new training data samples thus generated by the related expression adding unit 366 to the training data storage unit 84 (step 538).
  • the above processing expands the training data.
  • the interactive device 302 operates as follows. First, when user input 102 is provided to interactive device 302, word selector 348 extracts words contained in user input 102, refers to topic word model 344, and selects several words that are highly probable to be related to the word. select. Utterance selector 350 selects some utterances associated with user input 102 from past user inputs stored in user input storage 346 . The information addition unit 352 selects one of the words selected by the word selection unit 348 and the user input selected by the utterance selection unit 350 for the user input 102 (including the case where nothing is selected). is selected in some way, for example randomly, and appended to the user input 102 and provided as an input to the response generating neural network 340 .
  • the internal operation itself of the response generation neural network 340 after receiving this input is the same as the response generation neural network 100 of the first embodiment. However, since both have different internal parameters, even if the same user input 102 is given, the output of the response generation neural network 340 is likely to differ from the output of the response generation neural network 100 . Adding a word or the like to the user input 102 further increases the possibility. In particular, in the case of the response generation neural network 340, in generating an answer, it does not depend only on the user input 102, but on causal relationships such as including the words included in the user input 102 in the consequent part, or are also likely to generate responses based on causality such that the consequent part contains expressions related to previous user input. Therefore, by reflecting potential chances or risks based on the chain of causal relationships while having a continuous dialogue with the user, it is possible to provide topics that the user did not expect.
  • the user input 102 is "Artificial intelligence has developed, hasn't it?"
  • this past user input is added to the user input 102 to generate a response in the form of "Artificial intelligence has developed, isn't it? + I'm worried about the elderly”.
  • the topic is developed from the user input 102, such as "Let's use robots to provide care services and support the elderly", and the user input 102 is issued.
  • the dialogue can proceed in a direction that the user had not thought of at the time.
  • this embodiment can generate a response to user input based on causality. Generating such responses requires training a neural network with a large number of causality expressions. However, unlike ordinary dialogue data, causality expressions can be easily collected in large quantities from the Internet. Moreover, the amount is increasing day by day. Therefore, it is possible to easily improve the accuracy of response generation by the neural network used for dialogue. In addition, since the response is generated based on the causal relationship, unlike the conventional dialogue system using a neural network, the causal relationship and the chain of causal relationships are reflected, and latent information that the user is not aware of is generated. Opportunity and risk based responses can be generated. As a result, the dialogue with the user can be developed in a more beneficial manner than in the past.
  • FIG. 9 is a block diagram showing the configuration of a dialogue system 600 according to a third embodiment of the present invention.
  • dialogue system 600 includes training data generator 610 for generating training data for the dialogue system, and dialogue device 612 including a neural network.
  • Dialogue system 600 further creates and adds to each training data sample created by training data generator 610 a new training data sample in which some phrase related to the assumed input is added to the assumed input as a topic, FIG. and a training device 56 for training an interactive device 612 using the training data generated by the training data generator 610 and extended by the training data extender 58. .
  • the training data generation device 610 differs from the training data generation device 54 shown in FIG.
  • Causal Consequence Chain Generation for generating a character string (here, referred to as a causal consequent chain) in which only the cause part of the causal relation and the consequent part of the causal relation included in the chain causal relation are extracted and chained in order.
  • a causal consequent chain storage unit 622 for storing the causal consequent chain generated by the causal consequent chain generation unit 620 instead of the chain causal relationship DB 72 of FIG.
  • a causal consequential chain for storing a single causal relation stored in the causal relation DB 64 instead of the extended causal relation DB 74 shown in FIG. It is a point including DB624.
  • a single causal relationship stored in the causal relationship DB 64 can be considered as a causal consequence chain consisting of only one causal consequence.
  • the training data generation device 610 uses the causal consequential chain stored in the causal consequential chain DB 624 and the assumed input stored in the assumed input storage unit 78 instead of the training data creation unit 82 shown in FIG. It also differs from the training data generation device 54 shown in FIG.
  • the third embodiment differs from the first and second embodiments in that the user designates a natural number N that designates the number of causal consequent chains and inputs user input 630 to the interactive device 612 .
  • Dialogue device 612 receives a response-generating neural network 632 trained by trainer 56 and user input 630, extracts words representing topics of conversation with the user, and translates any of those words into user input 630. and an information adder 642 including a topic word model 344, a word selector 348 and an information adder 352 in the information adder 338 shown in FIG. Any combination of these added words is inserted between the user input 630 and the natural number N. That is, the input to the response generation neural network 632 is in the form of "user input 630"+"combination of words added by information adding device 338"+"natural number N specifying the number of chains".
  • the response generating neural network 632 when given an input of the above format, is a character string consisting of N causal consequent chains, and the last causal consequent chain has an information adding device 338 is trained to output such that it contains any of the added words.
  • the dialogue device 612 further includes a question generation unit 634 that generates a question sentence from the output result of the response generation neural network 632 in response to the input given from the information addition device 338, and an external question answering system that transmits the question generated by the question generation unit 634. 614 to obtain the response, and an utterance shaping unit 638 for shaping the response obtained by the response obtaining unit 636 as a dialogue sentence and outputting it as a response utterance 640 .
  • the processing in the question generation unit 634 is to add an interrogative to the beginning of the causal relationship expression output by the response generation neural network 632, and to add an interrogative form to the end. Create interrogative sentences by formatting. These interrogative sentences can be created using a separately trained neural network or rule-based shaping means.
  • the response acquisition unit 636 inputs either or both of these interrogative sentences to the question-answering system 614, and obtains an output answer and text from which the answer is extracted.
  • An utterance shaper 638 uses this answer alone or in combination with the text from which the answer was extracted to shape the answer appropriately for the interaction with the user and output a final response utterance 640 .
  • the question answering system 614 is assumed to search an internal database or an external information source (e.g., documents on the Internet) based on the input, and find a relationship with the input question sentence. It is a system that extracts descriptions based on facts or has grounds and outputs them as responses.
  • An example of such a question answering system is WISDOM X (https://www.wisdom-nict.jp/), a question answering system operated by the National Institute of Information and Communications Technology.
  • WISDOM X https://www.wisdom-nict.jp/
  • a question answering system operated by the National Institute of Information and Communications Technology.
  • the input to the response generation neural network 632 is in the form of “user input 630” + “combination of utterances and words added by the information adding device 338” + “natural number N specifying the number of chains”, Training data for the response generating neural network 632 is required as shown in FIG.
  • each of the training samples that make up this training data has "assumed input + related word (group) + natural number N" as input, and the number of causal words specified by natural number N as output. contains a causal consequential chain consisting of consequential consequences. Then the causal outcome at the end of each training sample output includes any of the words in the related word(s).
  • FIG. 11 is a flow chart showing the control structure of a computer program that causes a computer to function as the training data creation unit 626 shown in FIG.
  • this program is similar to that of the second embodiment shown in FIG.
  • the program shown in FIG. 11 differs from that shown in FIG. 7 in that step 670 is included in place of step 206 in FIG. 7, and step 450 in FIG. , including a step 672 of adding to .
  • Step 670 is similar to step 206 of FIG. However, step 670 differs from step 234 in that step 680 is included instead of step 234 of FIG.
  • Step 680 performs step 690 to read out all the causal consequent chains that have the noun phrase being processed as the cause part (the beginning of the causal consequent chain), and step 694 for each causal consequent chain read in step 690. and step 692 to do.
  • Step 694 is for creating and storing a training data sample with the hypothetical input and the number of causal consequential chains as inputs and the causal consequential chain as the answer for each combination of hypothetical input and causal consequential chain being processed. belongs to.
  • step 680 training data samples obtained by removing the "related word (group)” from the training data samples shown in FIG. 10 are obtained. “Related word(s)” are added at step 672 .
  • FIG. 12 shows the control structure of the program routine that implements step 672 in FIG. Referring to FIG. 12, the program performs a step 700 of performing predetermined initial processing, a step 702 of performing step 704 for each training data sample, and a predetermined termination processing after step 702 is completed. and step 706, which terminates execution of the lever routine.
  • Step 704 consists of step 710 of extracting words from the last consequent portion of the causality chain for the training data sample being processed, step 711 of generating all word combinations extracted in step 710, and and step 712 of performing step 714 for each combination.
  • Step 714 creates a new sample by inserting the word combination being processed between the assumed input of the training data sample being processed and the natural number N representing the number of chains. and step 722 of writing the new samples generated to the training data storage unit 84 shown in FIG. 9 and ending the execution of step 714 .
  • the response generation neural network 632 shown in FIG. 9 is trained.
  • response-generating neural network 632 is provided with an input of the configuration shown as "input" in FIG.
  • Output a causal consequence chain that has as many causal consequences as the number specified in the input, and that the last causal consequence has a related word or a word close to the related word specified in the input.
  • the parameters of the response generation neural network 632 are set.
  • a word indicating the topic of dialogue for the user input 630 is selected as a related word and added to the input.
  • the response-generating neural network 632 When this input is given to the response-generating neural network 632, the response-generating neural network 632 generates a causal-consequence chain with a specified number of causal consequences, with the causal consequences at the end of which have as related words Outputs words that contain the specified word or words close to that word. The cause part is associated with the input.
  • the causal consequent chain is the "causal relationship expression" referred to in the first and second embodiments.
  • a question generation unit 634 generates a question sentence from this causal relation expression.
  • the response acquisition unit 636 gives the question sentence to the question answering system 614 and acquires the response.
  • the utterance shaping unit 638 shapes the response into a form suitable as a response to the user input 630 and outputs it as a response utterance 640 .
  • user input + related words + natural number N are input into response generation neural network 632 to obtain multiple causal consequential chains each consisting of N causal consequents.
  • response generation neural network 632 For example, let us consider a case in which "artificial intelligence develops" is given as a user input and the word “elderly” is found as a related word. Assuming 1, 2 and 3 as the values of the natural number N, it is assumed that the following outputs are obtained.
  • N 1: Support the elderly.
  • N 2: Use robots ⁇ support the elderly.
  • N 3: Use robots ⁇ can provide nursing care services ⁇ support the elderly.
  • the value of the natural number N has the effect that the relationship between the input and the final outcome can be understood in more detail. That is, the response utterance 640 includes as many as the user-specified number of causal consequences intervening between the input and the output. Therefore, when the user input 630 is issued, the result that the user did not expect can be obtained, including the process, so to speak, the thought process of the dialogue device 612 in the dialogue can be clarified, and the dialogue can be developed. .
  • the input 632 to the response generation neural network does not necessarily include additional words from the information addition device 642, and may be omitted.
  • FIG. 13 shows the configuration of an interactive device 730 according to the fourth embodiment.
  • this interactive device 730 receives the response generation neural network 632 and user input 740, and outputs the user input 740 with a related word (group) indicating a topic. and an information addition device 642 of .
  • the dialogue device 730 further adds an externally given natural number N indicating the chain number of causal consequences described in the third embodiment to the output of the information addition device 642 and inputs it to the response generation neural network 632.
  • It includes a chain count addition unit 742 for
  • the interactive device 730 further includes an upper limit storage unit 746 that stores the upper limit of the number of chains, and a natural number N that is incremented by 1 from 1 to the upper limit stored in the upper limit storage unit 746, and given to a chain number adding unit 742 to add information. and a counter 744 for sequentially outputting the output of the device 642 to which the natural number N is attached.
  • the interactive device 730 further includes an output storage unit 748 for storing a series of causal consequential chains that are successively output from the response generation neural network 632 in response to these inputs, and a series of causal chains stored in the output storage unit 748. and a ranking unit 750 for ranking the entailment chains.
  • the dialogue device 730 further includes an utterance selection unit 752 for selecting the causal consequential chain ranked highest by the ranking unit 750 as an utterance candidate, and a causal consequential chain selected by the utterance selection unit 752 for the user input 740. and an utterance shaper 754 for shaping the response appropriately and outputting it as a response utterance 756 .
  • a pre-learned neural network can be used as the ranking unit 750 .
  • This neural network may be trained using manual evaluations of sets of causal consequential chains for combinations of user input and related words.
  • the number of chains of causal consequences during inference need not be limited to the natural number N of the data during learning.
  • the maximum value of the natural number N of learning data is 10
  • the above fourth embodiment post-evaluates multiple response causal consequences generated for multiple natural numbers N and selects the one with the highest score.
  • the invention is not limited to such embodiments. It is also conceivable to conduct similar evaluations in advance and use the results in the dialogue system.
  • the fifth embodiment is such an example. Specifically, in this example, for example, for each combination of an assumed input and its related words, a plurality of causal consequences chains consisting of 1 to N causal consequences are prepared in advance manually or according to the fourth embodiment. Created using a generative neural network 632 . Then, the results are ranked manually.
  • a combination of an assumed input and its related words is used as input, and training data is created in which the natural number N when the highest rank in the causal consequent chain obtained from the combination is obtained is the correct data.
  • a neural network neural network for N evaluation
  • an input and a related word are input to this trained N evaluation neural network to obtain a natural number N, and "input + related word + N" is given to the response generation neural network to obtain an output.
  • a dialogue system 770 includes an information addition device 642 that adds related words to a user input 780, and obtains the output of the information addition device 642 to and a chain count estimating unit 782 including the above-described N-evaluation neural network for outputting the optimum natural number N value for the combination of the user input and the related word included in the output.
  • Dialogue system 770 further includes a chain count addition unit 784 that adds a natural number N, which is the chain count output by chain count estimation unit 782 , to the output of information addition device 642 .
  • the dialog system 770 further receives the user input, the related word, and the natural number N, which are the outputs of the chain count addition unit 784, and generates a response that outputs a causal consequential chain containing the designated N causal consequents. It includes a neural network 632 and an utterance shaper 786 that shapes the causal consequential chain output by the response generation neural network 632 so that it is suitable as a response to the user input 780 and outputs a response utterance 788 .
  • the dialogue system 770 estimates related words
  • the chain number estimation unit 782 estimates the natural number N
  • the response generation neural network 632 also provides an appropriate response utterance 788, and the causal consequences in the response utterance 788 allow the user to easily understand what corresponds to the thought process of the dialogue system 770.
  • dialogue by the dialogue system 770 can be developed in a meaningful way for the user.
  • the causal consequence at the end includes the word specified as the related word or a word close to that word.
  • this is not necessarily essential, and learning may be done even when the expression representing the topic is not included in the consequent chain.
  • FIG. 15 is an external view of a computer system that implements each of the above embodiments.
  • 16 is a hardware block diagram of the computer system shown in FIG. 15.
  • FIG. 15 is an external view of a computer system that implements each of the above embodiments.
  • this computer system 950 includes a computer 970 having a DVD (Digital Versatile Disc) drive 1002, and a keyboard 974, mouse 976, and monitor, all connected to the computer 970, for interacting with the user. 972.
  • DVD Digital Versatile Disc
  • keyboard 974, mouse 976, and monitor all connected to the computer 970, for interacting with the user.
  • keyboard 974, mouse 976, and monitor all connected to the computer 970, for interacting with the user.
  • keyboard 974, mouse 976, and monitor all connected to the computer 970, for interacting with the user.
  • keyboard 974 Digital Versatile Disc
  • mouse 976 mouse 976
  • a computer 970 includes a DVD drive 1002, a CPU (Central Processing Unit) 990, a GPU (Graphics Processing Unit) 992, and a bus 1010 connected to the CPU 990, GPU 992, and DVD drive 1002. including.
  • the computer 970 is further connected to a bus 1010 and has a ROM (Read-Only Memory) 996 that stores a boot-up program for the computer 970, and a bus 1010 that includes instructions constituting the program, system programs, work data, and the like. and a SSD (Solid State Drive) 1000 which is a non-volatile memory connected to a bus 1010 .
  • ROM Read-Only Memory
  • SSD Solid State Drive
  • the SSD 1000 is for storing programs executed by the CPU 990 and the GPU 992, data used by the programs executed by the CPU 990 and the GPU 992, and the like.
  • the computer 970 further has a network I/F (Interface) 1008 that provides connection to a network 986 that enables communication with other terminals, and a USB (Universal Serial Bus) memory 984 that can be detached. and a USB port 1006 that provides communication with components within 970 .
  • a network I/F Interface
  • USB Universal Serial Bus
  • Computer 970 further includes audio I/F 1004 connected to microphone 982 and speaker 980 and bus 1010 .
  • the audio I/F 1004 reads audio signals, video signals, and text data generated by the CPU 990 and stored in the RAM 998 or SSD 1000 according to instructions from the CPU 990, performs analog conversion and amplification processing, and drives the speaker 980, and the microphone 982. It is for digitizing an analog audio signal from and storing it in an arbitrary address specified by the CPU 990 in the RAM 998 or SSD 1000 .
  • training data generators 54 and 610, training device 56, dialog devices 52, 302, 612, 730 and training data extension 58, etc. that are interactive systems 50, 300, 600, and 770 or are part thereof.
  • these data, parameters, etc. are written to SSD 1000 from the outside, for example, and loaded into RAM 998 when executed by computer 970 .
  • some code executed by the program may be loaded into RAM 998 from outside computer 970 over network 986 during its execution.
  • a computer program for operating this computer system to realize the functions of the system and each component thereof in each embodiment described above is stored on the DVD 978 attached to the DVD drive 1002 and transferred from the DVD drive 1002 to the SSD 1000. be done.
  • these programs are stored in USB memory 984 , and USB memory 984 is attached to USB port 1006 to transfer the programs to SSD 1000 .
  • this program may be transmitted to computer 970 via network 986 and stored on SSD 1000 .
  • the program is loaded into the RAM 998 at the time of execution.
  • the source program may be input using the keyboard 974, monitor 972 and mouse 976, and the compiled object program may be stored in the SSD 1000.
  • FIG. In the case of a script language, a script input using the keyboard 974 or the like may be stored in the SSD 1000 .
  • a program running on a virtual machine it is necessary to install a program functioning as the virtual machine on the computer 970 in advance. Because training and testing neural networks is computationally intensive, it is preferable to implement portions of embodiments of the present invention as object programs in computer-native code rather than scripting languages.
  • the CPU 990 reads a program from the RAM 998 according to an address indicated by an internal register (not shown) called a program counter, interprets the instruction, and stores data necessary for executing the instruction in the RAM 998 according to the address specified by the instruction. , SSD 1000 or other device, and executes the processing specified by the command.
  • the CPU 990 stores the execution result data in an address specified by the program, such as a RAM 998, SSD 1000, a register in the CPU 990, or the like. At this time, the value of the program counter is also updated by the program.
  • Computer programs may be loaded directly into RAM 998 from DVD 978, from USB memory 984, or over a network. Among the programs executed by the CPU 990 , some tasks (mainly numerical calculations) are dispatched to the GPU 992 according to instructions included in the programs or analysis results when the CPU 990 executes the instructions.
  • a program for realizing the functions of the system according to each embodiment and each part thereof by the computer 970 includes a plurality of instructions written and arranged to operate the computer 970 to realize those functions. Some of the basic functions required to execute this instruction are provided by an operating system (OS) or third party programs running on computer 970 or modules of various toolkits installed on computer 970 . Therefore, this program does not necessarily include all the functions necessary to implement the system and method of this embodiment.
  • This program can be implemented either by statically linking in the instructions the appropriate functions or functions of a "program library" in a controlled manner to produce the desired result, or dynamically when the program is run. It is only necessary to include instructions for executing the operations of each device and its components by invoking them. The manner in which computer 970 operates to do so is well known and will not be repeated here.
  • the GPU 992 is capable of parallel processing, and can execute a large amount of calculations associated with machine learning in parallel or in a pipeline.
  • Parallel computational elements discovered in a program for example, at program compilation time, or parallel computational elements discovered at program execution time, are dispatched from CPU 990 to GPU 992 for execution, and the results are either sent directly or stored in RAM 998 at any time. is returned to the CPU 990 via a predetermined address, and assigned to a predetermined variable in the program.
  • the causal relationships collected from the web are used as they are, and only the appropriate extended causal relationships are used.
  • the invention is not limited to such embodiments.
  • the causality used for training may be filtered in some way.
  • a causal relationship whose sentiment polarity is biased toward positive or negative may be selected. Only causal relationships found by the topic word model to have affinity to a particular topic may be used. It is also possible to manually or automatically label whether or not it is appropriate as a dialogue response in the first place, and use only those determined to be appropriate.
  • the neural network used in the above embodiment is a pre-trained neural network (for example, the aforementioned BERT) fine-tuned with training data prepared from causal relationships.
  • the neural network is not limited to such a form, and a network that produces a causal result by giving some special form of input, such as GPT-3 described in the following document, is used. may
  • the system asks why-type questions, searches for causal relationships that have the wording used in the response in the consequent part, and presents the causal part. may Similarly, the history of response generation may be explained to the user.
  • words or assumed inputs are added to the user inputs 102, 630, 740, and 780.
  • the invention is not limited to such embodiments.
  • a combination of a word to be added and an assumed input is converted into a fixed-length feature vector by an encoder consisting of a neural network. It can also be used as an input to

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Machine Translation (AREA)

Abstract

訓練データ生成装置54及び訓練装置56は、対話装置への入力として想定される複数個の想定入力を記憶する想定入力記憶部78と、複数の因果関係表現を記憶する拡張因果関係DB74と、想定入力記憶部78に記憶された複数個の想定入力の各々について、当該想定入力として所定の関係を持つ因果関係表現を複数の因果関係表現から抽出し、当該想定入力を入力、抽出された因果関係表現を回答とする訓練データサンプルを作成して訓練データ記憶部84に記憶する訓練データ作成部82と、自然言語の入力文に対して出力文を生成するよう設計された応答生成ニューラルネットワーク100を、訓練データ記憶部84に記憶された訓練データサンプルを使用して訓練するための訓練部86とを含む。

Description

対話装置及びその訓練装置
 この発明はコンピュータを用いてユーザと対話する対話装置及びその訓練装置、並びにコンピュータプログラムに関し、特に、ユーザ入力から話題を発展させることが可能な対話装置、及びそのように対話装置を訓練する訓練装置に関する。この出願は2021年5月28日出願の日本出願第2021-090300号に基づく優先権を主張し、前記日本出願に記載された全ての記載内容を援用するものである。
 近年、深層学習に基づく対話システム研究への関心が高まり、多様な対話システム技術の研究開発が進められている。従来の対話システム技術は大きく以下の3つに分類できる。
 1)検索ベースのアプローチで、ユーザ入力を受けて、対話のためのものとは限らない何らかのデータベースからそのユーザ入力から得た情報に基づいて情報検索し、その結果を利用するもの。検索結果の選択及び加工には深層学習の技術が使われることがある。
 2)ユーザ入力から応答文を自動生成するもの。深層学習を用いたend-to-endの手法はこれに該当する。後掲の特許文献1がこの手法を採用している。この手法では、オンラインのチャットサービスなどの対話ログから対話データを取得する。この対話データを用いて、入力に対する応答をシステムが自動的に生成するように、主に深層学習の技術を用いた学習を行う。
 3)シナリオベースのアプローチによるもの。いわゆるAI(Artificial Intelligence)スピーカの多くはこの手法を採用している。
特開2018-156272号公報
 上記1番目の手法では、応答として得られる情報はあくまでデータベースの範囲内にとどまる。しかもユーザ入力と応答との関係がユーザにとって明確とはいえず、ユーザとの対話が発展しないという問題がある。
 上記2番目の手法では、応答として出力される生成結果を制御できないという問題がある。もともと深層学習では、入力から応答を生成する過程が外からは見えないという問題がある。そのため、応答を制御しようとしてもどのようにすればよいかが明確でない。さらにこの手法では、大量の対話データを収集する必要がある。そのカバーする範囲も広いものである必要がある。一般にそのようなデータの収集は極めて困難であることが知られている。
 そのため、上記2番目の手法では、ユーザからの入力に対して会話を発展させるような応答を生成させるように応答装置の訓練を行うことが難しいという問題があった。
 さらに3番目の手法では、準備されたシナリオの範囲内に応答がとどまるという制約がある。その制約の中で対話を発展させようとしても自ずから限界がある。
 したがって、この発明は、ユーザの入力に対して話題を発展させることができるような応答を出力可能な対話装置、及びそのように対話装置を訓練する訓練装置を提供することを主な目的とする。
 本発明の第1の局面に係る対話装置の訓練装置は、各々が対話装置への入力として想定される、複数個の想定入力を記憶する想定入力記憶手段と、複数の因果関係表現を記憶する因果関係記憶手段と、を含み、複数の因果関係表現の各々は、原因表現と結果表現とを含み、想定入力記憶手段に記憶された複数個の想定入力の各々について、当該想定入力として所定の関係を持つ因果関係表現を複数の因果関係表現から抽出するための因果関係表現抽出手段と、当該想定入力を入力、因果関係表現抽出手段により抽出された因果関係表現を回答とする訓練データサンプルを作成し、所定の記憶装置に記憶する訓練データ作成手段と、自然言語の入力文に対して出力文を生成するよう設計された、ニューラルネットワークからなる対話装置を訓練データ作成手段に記憶された訓練データサンプルを使用して訓練するための訓練手段とを含む。
 好ましくは、因果関係表現抽出手段は、想定入力が持つ名詞句を原因表現に持つ因果関係を複数の因果関係表現から抽出するための特定因果関係表現抽出手段を含む。
 より好ましくは、訓練装置は、さらに、単語が与えられると、当該単語の周辺単語の分布確率を、あらかじめ定めた語彙中の単語の各々について出力するようあらかじめ訓練されたトピックワードモデルと、所定の記憶装置に記憶される訓練データサンプルの因果関係表現の各々について、当該因果関係表現に含まれる単語に対する分布確率の高い単語をトピックワードモデルの出力に基づいて特定し、当該訓練データサンプルの入力に付加して新たな訓練データサンプルを生成し所定の記憶装置に追加するための第1の訓練データサンプル追加手段とを含む。
 さらに好ましくは、訓練装置は、さらに、トピックワードモデルの出力に基づいて、所定の記憶装置に記憶される訓練データサンプルの因果関係表現の各々について、当該因果関係表現の周辺単語の分布確率と類似した周辺単語の分布確率を持つ文を所定のコーパスから抽出し、当該訓練データサンプルの入力に付加して新たな訓練データサンプルを生成し所定の記憶装置に追加するための第2の訓練データサンプル追加手段を含む。
 本発明の第2の局面に係るコンピュータプログラムは、コンピュータを、各々が対話装置への入力として想定される、複数個の想定入力を記憶する想定入力記憶手段と、複数の因果関係表現を記憶する因果関係記憶手段として機能させるコンピュータプログラムであって、複数の因果関係表現の各々は、原因表現と結果表現とを含み、コンピュータプログラムは、さらに、コンピュータを、想定入力記憶手段に記憶された複数個の想定入力の各々について、当該想定入力と所定の関係を持つ因果関係表現を複数の因果関係表現から抽出するための因果関係表現抽出手段と、当該想定入力を入力、因果関係表現抽出手段により抽出された因果関係表現を回答とする訓練データサンプルを作成し、所定の記憶装置に記憶する訓練データ作成手段として機能させ、さらに、自然言語の入力文に対して出力文を生成するよう設計された、ニューラルネットワークからなる対話装置を訓練データ作成手段に記憶された訓練データサンプルを使用して訓練するための訓練手段として機能させる。
 本発明の第3の局面に係る対話装置は、自然言語の入力文に対して出力文を生成するよう設計されたニューラルネットワークを含む、自然言語による対話装置であって、ニューラルネットワークは、出力文が、入力文に対する潜在的帰結を表すものとなるように訓練されている。
 好ましくは、対話装置はさらに、入力文が与えられたことに応答して、入力文内の語句に関連する単語又は文を含む表現である関連表現を入力文に付加してニューラルネットワークに入力する関連表現付加手段を含む。
 この発明の第4の局面に係る対話装置は、ユーザの過去の発話を記憶する発話記憶部と、入力された単語に対する周辺単語の生起の確率分布を出力するトピックモデルと、ユーザ発話を入力として、発話記憶部に記憶されたユーザの発話と、トピックモデルとを用いて、ユーザ発話に対する応答を生成するための応答生成部とを含む。
 この発明の第5の局面に係る対話装置は、ユーザの過去の発話を記憶する発話記憶部と、入力された単語に対する周辺単語の生起の確率分布を出力するトピックモデルと、ユーザの発話を入力として、その発話に対する応答を生成する応答生成部と、ユーザの発話に対するトピックモデルの出力により、応答生成部による応答の生成を調整する応答生成調整部とを含む。
 この発明の上記及び他の目的、特徴、局面及び利点は、添付の図面と関連して理解されるこの発明に関する次の詳細な説明から明らかとなるであろう。
図1は、この発明の第1実施形態に係る対話装置を訓練する対話システムのブロック図である。 図2は、図1に示す対話装置の一部である訓練データ作成部のブロック図である。 図3は、コンピュータを図1に示す対話システムの訓練データの作成装置として機能させるコンピュータプログラムの制御構造を示すフローチャートである。 図4は、この発明の第2実施形態に係る対話装置を訓練するための対話システムのブロック図である。 図5は、図4に示す訓練データ追加部のブロック図である。 図6は、図4に示す関連表現検索部のブロック図である。 図7は、コンピュータを、第2実施形態に係る対話システムの訓練データの作成装置として機能させるためのコンピュータプログラムの制御構造を示すフローチャートである。 図8は、図7の関連表現追加処理を実現するルーチンの制御構造を示すフローチャートである。 図9は、この発明の第3実施形態に係る対話装置及びその対話装置を訓練する訓練装置のブロック図である。 図10は、第3実施形態に係る訓練装置が準備する訓練データの1例を示す模式図である。 図11は、コンピュータを、第3実施形態に係る対話システムの訓練データの作成装置として機能させるためのコンピュータプログラムの制御構造を示すフローチャートである。 図12は、図11に示す関連単語追加処理を実現するようコンピュータを機能させるコンピュータルーチンの制御構造を示すフローチャートである。 図13は、この発明の第4実施形態に係る対話装置のブロック図である。 図14は、この発明の第5実施形態に係る対話装置のブロック図である。 図15は、上記各実施形態を実現するコンピュータシステムの外観図である。 図16は、図15に示すコンピュータシステムのハードウェアの構成を示すブロック図である。
 以下の説明及び図面では、同一の部品には同一の参照番号を付してある。したがって、それらについての詳細な説明は繰返さない。
 第1 第1実施形態
 1 構成
 (1) 対話システム50
 図1にこの発明の第1実施形態に係る対話システム50の構成をブロック図形式で示す。図1を参照して、対話システム50は、対話装置52と、インターネット60に接続され、インターネット60から抽出した因果関係表現を用いて対話装置52を訓練するための訓練データを生成するための訓練データ生成装置54とを含む。対話システム50はさらに、訓練データ生成装置54により生成された訓練データを用いて対話装置52の訓練を行うための訓練装置56を含む。
 以下、対話システム50の各要素についてその構成を説明する。なお、以下の実施形態で使用する自然言語文を構成する各単語は、あらかじめ単語ベクトルに変換されているものとする。すなわち、各自然言語文は単語ベクトルからなる単語ベクトル列として表現されている。
 (2) 対話装置52
 対話装置52は、自然言語の文などからなるユーザ入力102を受けて応答文を生成する、ニューラルネットワークからなる応答生成ニューラルネットワーク100を含む。対話装置52はさらに、応答生成ニューラルネットワーク100の生成する応答文に対し、ユーザ入力102に対する応答として適切な形となるような整形処理を行って応答発話106として出力するための発話整形部104を含む。
 応答生成ニューラルネットワーク100は、いわゆるend-to-end型で、自然言語文の入力に対して自然言語文の応答を生成するようあらかじめ事前学習が行われているものを使用する。訓練装置56による応答生成ニューラルネットワーク100の訓練は、いわゆるファインチューニングに相当する。
 応答生成ニューラルネットワーク100としては、トランスフォーマー・エンコーダとトランスフォーマー・デコーダの組み合わせからなる生成用のネットワーク、又はBERTを生成用にさらに追加事前学習したUniLM等を利用することができる。しかしこれらに限らず、任意の生成用のネットワークで応答生成ニューラルネットワーク100の実装が可能である。また、生成学習用のデータが多くあれば、通常の生成用の学習だけでも実装は可能である。(BERTモデルについては、文献 Jacob Devlin, Ming-Wei Chang, Kenton Lee, and Kristina Toutanova. BERT: Pre-training of deep bidirectional transformers for language understanding.を参照)
 (3) 訓練データ生成装置54
 訓練データ生成装置54は、インターネット60から公知の方法により因果関係表現を抽出するための因果関係抽出部62と、因果関係抽出部62により抽出された因果関係表現を記憶するための因果関係DB(Database)64とを含む。訓練データ生成装置54はさらに、因果関係DB64に記憶された因果関係表現の中で、ある因果関係(第1の因果関係)の帰結部と、他の因果関係(第2の因果関係)の原因部とが意味的に一致するときに、第1の因果関係の原因部と第2の因果関係の帰結部とを連鎖させたり、さらにこのようにして生成された新たな因果関係と他の因果関係とを連鎖させたりすることで、新たな因果関係の候補を連鎖的に生成する連鎖因果関係生成部66と、連鎖因果関係生成部66により生成された因果関係の候補を記憶するための生成因果関係DB68とを含む。因果関係抽出部62による因果関係の抽出には、例えば、特開2018-60364号公報に開示の因果関係の認識手法が利用できる。因果関係を連鎖させて新たな因果関係の候補を生成する手法としては、例えば、特開2015-121897号公報に開示された技術を利用できる。
 訓練データ生成装置54はさらに、生成因果関係DB68に記憶された因果関係の候補の中で適切な因果関係を表すものを選択する連鎖因果関係選択部70と、連鎖因果関係選択部70により選択された因果関係を記憶するための連鎖因果関係DB72と、因果関係DB64に記憶された因果関係、及び連鎖因果関係DB72に記憶された因果関係を統合して記憶する拡張因果関係DB74とを含む。
 訓練データ生成装置54はまた、インターネット60から、対話装置52に対するユーザ入力102になると想定される表現を抽出する想定入力抽出部76と、想定入力抽出部76が抽出した想定入力と、コンソール80から手操作により追加された想定入力とを記憶するための想定入力記憶部78とを含む。訓練データ生成装置54はさらに、想定入力記憶部78に記憶された想定入力のいずれかを入力、拡張因果関係DB74に記憶された因果関係の中で想定入力に対する回答となり得る帰結部を持つ因果関係を正解とする訓練データサンプルを作成して訓練装置56に向けて出力するための訓練データ作成部82を含む。
 訓練データ作成部82は、後述するように、想定入力記憶部78から読み出した想定入力の各々に対し、その想定入力が持つ名詞句を原因部に持つような因果関係を拡張因果関係DB74から読み出して訓練データサンプルを作成する。
 図2を参照して、訓練データ作成部82は、想定入力記憶部78から想定入力を順番に読み出す想定入力読出部150と、想定入力読出部150により読み出された想定入力に含まれる名詞句を特定するための名詞句特定部152とを含む。訓練データ作成部82はさらに、名詞句特定部152が特定した名詞句を帰結部に含むような因果関係を全て拡張因果関係DB74で検索し読み出すための因果関係検索部154と、因果関係検索部154が読み出した因果関係の各々について、想定入力を入力、因果関係を出力とする訓練データサンプルを作成し訓練データ記憶部84に格納するための訓練データサンプル作成部156とを含む。
 (4) 訓練装置56
 訓練装置56は、訓練データ作成部82が出力した訓練データサンプルを記憶するための訓練データ記憶部84と、訓練データ記憶部84に記憶された訓練データサンプルを用いて応答生成ニューラルネットワーク100の訓練を行うための訓練部86とを含む。訓練部86が応答生成ニューラルネットワーク100に対して行う処理は、前述したように応答生成ニューラルネットワーク100のファインチューニングである。具体的には訓練部86は、各訓練データサンプルについて、応答生成ニューラルネットワーク100に想定入力を与え、その想定入力を原因とする因果関係の帰結となるような出力を生成するよう、誤差逆伝搬法により応答生成ニューラルネットワーク100の訓練を行う。
 (5) 訓練データ生成プログラム
 図3に、コンピュータを訓練データ生成装置54として機能させるためのコンピュータプログラムの制御構造をフローチャート形式で示す。図3を参照して、このプログラムは、プログラムの起動後、記憶領域の確保及び初期化、関係するファイルのオープン及びデータベースへの接続などを行うステップ200と、図1に示す想定入力記憶部78から想定入力を全て読み出すステップ202とを含む。このプログラムはさらに、ステップ202で読み出された想定入力の各々についてステップ206を実行するステップ204と、ステップ204が完了した後に、所定の終了処理を実行してプログラムの実行を終了するステップ208とを含む。
 ステップ206は、処理される想定入力の中に存在する名詞句を全て特定するステップ230と、ステップ230で特定された名詞句の各々について、ステップ234を実行するステップ232とを含む。
 ステップ234は、処理中の名詞句を原因部に持つ因果関係を図1に示す拡張因果関係DB74から全て読み出すステップ260と、ステップ260で読み出された因果関係の各々について処理中の想定入力との組合せからなる訓練データサンプルを作成するステップ264を実行するステップ262とを含む。
 ステップ264は、具体的には、処理中の想定入力を入力、処理中の因果関係を回答とする訓練データサンプルを作成し、図1に示す訓練データ記憶部84に保存する。
 2 動作
 上に構造を説明した対話システム50は以下のように動作する。
 (1) 訓練データの作成
 最初に訓練データ生成装置54は以下のように動作し、応答生成ニューラルネットワーク100のための訓練データを作成する。まず、因果関係抽出部62がインターネット60から多数の因果関係を抽出し因果関係DB64に格納する。因果関係DB64は、様々な検索が可能な形式でこれら因果関係を記憶する。例えば、上記特開2018-60364号公報に開示の技術では、因果関係の原因部と帰結部とを区別できる。因果関係DB64が各因果関係についてその原因部と帰結部とを別々のカラムに記憶するように因果関係DB64を設計すれば、例えば特定の単語を原因部に含む因果関係のみを容易に抽出できる。
 連鎖因果関係生成部66は、因果関係DB64に記憶された因果関係のうち、第1の因果関係の帰結部が第2の因果関係の原因部と実質的に同じ意味を示すような2つの因果関係の候補の全てを生成する。さらに同様の処理をすることで、複数の因果関係を連鎖させることにより新たな因果関係の候補を生成する。この実施形態では、因果関係を所定の上限回数まで連鎖させることにより多数の因果関係候補を生成する。これら因果関係候補は全て生成因果関係DB68に記憶される。生成因果関係DB68は例えば、因果関係DB64と同じ形式で因果関係候補を記憶する。生成因果関係DB68の場合、因果関係候補を生成するもとになった因果関係を特定する情報を一緒に保存するようにしてもよい。
 連鎖因果関係生成部66により生成された因果関係候補は、あくまで連鎖の中の連続する2つの因果関係の間で、一方の帰結部と他方の原因部とが意味的に同じものであることに基づいている。しかし上記特開2015-121897号公報でも開示されているように、このような因果関係の連鎖により得られた因果関係候補の中には、全体として正しい因果関係を表すものではないものが存在する。そこで連鎖因果関係選択部70が生成因果関係DB68に記憶された因果関係候補の中から正しいと考えられるものを選択し連鎖因果関係DB72に格納する。ここでの因果関係候補の選択手法としては、特開2015-121897号公報に開示されたものを用いる。また、BERTなどの事前学習済みの自然言語モデルをファインチューニングし、因果関係候補の選択を行わせることも可能である。
 拡張因果関係DB74は、因果関係DB64と連鎖因果関係DB72とを統合した因果関係を記憶する。すなわち拡張因果関係DB74は、因果関係抽出部62によりインターネット60から抽出された因果関係と、連鎖因果関係生成部66及び連鎖因果関係選択部70によりこれら因果関係から生成された因果関係とを記憶する。拡張因果関係DB74もまた、因果関係DB64と同様のフォーマットで因果関係を記憶する。
 一方、想定入力抽出部76は、因果関係抽出部62と同様、インターネット60の多数のウェブページから、応答生成ニューラルネットワーク100への入力として考えられるような表現を応答生成ニューラルネットワーク100への想定入力として抽出する。例えばインターネット60に存在する多数のFAQ(Frequently Asked Questions)サイトの質問文を初めとし、様々な情報を提供するサイトに掲げられている質問形式の文などが候補として考えられる。これ以外にも、通常の文を抽出し、その中の名詞句が回答となるような質問文を生成したりすることも可能である。想定入力抽出部76が抽出した想定入力は想定入力記憶部78に記憶される。
 一方、利用者が、コンソール80を用いて想定入力を補充してもよい。ただしこの補充は必須というわけではない。
 以上のようにして拡張因果関係DB74に因果関係が、想定入力記憶部78に想定入力が、それぞれ準備できると、訓練データ作成部82が以下のようにして訓練データを作成する。具体的には、コンピュータが図3に制御構造を示すプログラムを実行することで訓練データを作成する。
 図3を参照して、このプログラムが起動されると、まずステップ200で初期処理を実行し、ステップ202で想定入力記憶部78に記憶された想定入力を全て読み出しメモリにロードする。ステップ204で、想定入力が終了するまで、これら想定入力の各々に対して以下に説明するようにステップ206を実行することで訓練データを作成する。
 ステップ206ではまず、処理中の想定入力中の名詞句を全て特定し(ステップ230)、ステップ232でそれら名詞句の各々についてステップ234の処理を実行する。
 ステップ234では、処理中の名詞句について、その名詞句を原因部に持つ因果関係を拡張因果関係DB74から全て読み出す(ステップ260)。さらにステップ262では、これら各因果関係について、処理中の想定入力を入力、因果関係の帰結部を回答とする訓練データサンプルを作成し図1の訓練データ記憶部84に保存するというステップ264の処理を、全ての因果関係に対して完了するまで実行する。
 こうしてステップ230で特定した名詞句の全てに対して、ステップ232の処理を完了すると、ある想定入力に対するステップ206が完了し、次の想定入力に対してまたステップ206の処理を実行する。
 ステップ202で読み出された全ての想定入力に対してステップ204が完了すると、訓練データの作成が終わる。訓練データは図1の訓練データ記憶部84に保存されている。
 (2) 訓練
 以上のようにして訓練データが準備できれば訓練装置56の訓練部86が訓練データ記憶部84に準備されたこの訓練データを用いて応答生成ニューラルネットワーク100の訓練を行う。
 応答生成ニューラルネットワーク100の訓練そのものは、通常の誤差逆伝搬法による。すなわち、応答生成ニューラルネットワーク100に想定入力を与え、応答生成ニューラルネットワーク100の出力を得る。このとき、応答生成ニューラルネットワーク100の出力は、順次、単語ベクトルの形で出力される。これら単語ベクトルにより形成される単語ベクトル列が、訓練データの回答である因果関係の帰結部(の単語ベクトル列)となるように応答生成ニューラルネットワーク100のパラメータの修正を行う。この訓練は既存の手法によるため、ここではその詳細は繰り返さない。
 (3) 対話処理
 応答生成ニューラルネットワーク100の訓練が完了すると、対話装置52を利用できる。ユーザが何らかの入力を自然言語により行うと、この入力は単語ベクトル列に変換されユーザ入力102として応答生成ニューラルネットワーク100に与えられる。応答生成ニューラルネットワーク100はこのユーザ入力102に対して応答を生成し発話整形部104に出力する。発話整形部104は、応答生成ニューラルネットワーク100から与えられた応答に対して、ユーザ入力102に対する応答としてふさわしい整形(例えばユーザ入力102にあわせて何らかの文言を先頭に付加する、ユーザ入力102の一部を繰り返す、文末表現を会話的に変形する、など)を行って応答発話106として出力する。この整形については、ルールベースで行ってもよいし、文とその語尾を修正したものを訓練データとして訓練したニューラルネットワークを用いてもよい。
 ユーザが音声による発話をし、その発話を音声認識した上でユーザ入力102として応答生成ニューラルネットワーク100に入力するようにしてもよい。その場合、応答発話106についても音声合成により音声として出力してもよい。
 3 効果
 応答生成ニューラルネットワーク100を因果関係に基づいて訓練するので、ユーザ入力102に対して応答生成ニューラルネットワーク100が生成するのは、ユーザ入力102に対する何らかの因果的帰結に関連する文となる。訓練データには因果関係を連鎖させて生成した因果関係もあり、通常はユーザ入力102から直ちに導出できるような回答だけではなく、ユーザ入力102から導かれる潜在的なリスク又はチャンスに関する文が応答生成ニューラルネットワーク100の出力として得られる可能性が高い。その結果、従来の対話システムのようにある枠組みの中で回答を探索する場合と比較して、対話が発展しやすくなる。
 この実施形態では因果関係を用いて訓練データを作成している。従来技術で行われているように、一般的な対話データを大量に入手するのは困難だが、因果関係であればインターネットから既存の手法を用いて大量に取得できる。そのため、大量の訓練データが準備でき、応答生成ニューラルネットワーク100をより精度高くできる。すなわち、応答生成ニューラルネットワーク100は、ユーザ入力102に対し、因果関係に基づいた、対話をさらに発展させる可能性の高い回答が生成できる。
 従来のニューラルネットワークを用いた対話システムでは、ニューラルネットワーク自体はブラックボックス化している。そのため、対話システムの出力する応答がどのような意図でなされているのかについて、ユーザに説明することが難しいという問題がある。それに対してこの実施形態に係る応答生成ニューラルネットワーク100のように、因果関係を用いて訓練したニューラルネットワークの場合、ユーザの発話から導かれる潜在的チャンス及びリスクをユーザに教えてあげているのです、と説明できる。そのため、単なる対話の相手として対話システムを考えるのではなく、ユーザの思考を発展させるツール、又はユーザの行動を方向づけるツールとして対話システムの利用領域を広げることができる。
 第2 第2実施形態
 1 構成
 (1) 対話システム300
 図4に、この発明の第2実施形態に係る対話システム300の構成をブロック図形式で示す。図4を参照して、この対話システム300は、第1実施形態と同様の訓練データ生成装置54及び訓練装置56を含む。対話システム300はさらに、訓練装置56の訓練データ記憶部84と訓練データ生成装置54の想定入力記憶部78とに接続され、各訓練データサンプルについて、その想定入力に関連する何らかの語句をトピックとして想定入力に付加した新たな訓練データサンプルを作成し訓練データ記憶部84に追加する訓練データ拡張部58と、この拡張された訓練データを用いて訓練装置56により訓練された応答生成ニューラルネットワーク340を用いる対話装置302とを含む。
 これらのうち、訓練データ拡張部58と対話装置302とについて以下に順番にその構成を説明する。
 (2) 訓練データ拡張部58
 ア 構成
 訓練データ拡張部58は、単語が与えられると、その単語の周辺に各単語が発生する確率を要素とする周辺単語分布ベクトルを出力するように、コーパスの統計を用いてあらかじめ準備されたトピックワードモデル330を含む。訓練データ拡張部58はさらに、単語が与えられると、その単語に対する周辺単語分布ベクトルと類似した周辺単語分布ベクトルを持つ単語をトピックワードモデル330の出力に基づいて特定し、またその単語の周辺単語分布ベクトルと類似した単語ベクトルを持つ単語を含むような想定入力を想定入力記憶部78から抽出したりする関連表現検索部332を含む。訓練データ拡張部58はさらに、訓練データ記憶部84に記憶された各訓練データサンプルについて、その持つ因果関係表現の帰結部に含まれる単語を抽出して関連表現検索部332に与え、それに応答して関連表現検索部332から出力される単語及び想定入力の組合せを訓練データサンプルの想定入力に付加して新たな訓練データサンプルを展開し訓練データ記憶部84に追加するための訓練データ追加部334とを含む。
 イ 訓練データ追加部334
 図5を参照して、訓練データ追加部334の構成は以下のとおりである。訓練データ追加部334は、訓練データ記憶部84に記憶されている訓練データサンプルを1つずつ読み出し、その中の因果関係の帰結部に含まれる単語を取り出す訓練データ読出部360と、訓練データ読出部360が取り出した単語の各々について、関連表現検索部332に対して関連表現を問い合わせるための関連表現問合部362とを含む。
 訓練データ追加部334はさらに、関連表現問合部362からの問合せに対して関連表現検索部332が出力する関連表現を受け、それらの所定の組合せを訓練データ読出部360が読み出した訓練データサンプルの中の想定入力に付加して新たな訓練データサンプルを生成するための関連表現付加部366を含む。訓練データ追加部334はさらに、関連表現付加部366により生成された新たな訓練データサンプルを訓練データ記憶部84に追加して書き込むための訓練データ書込部364とを含む。
 ウ トピックワードモデル330
 上記したように、トピックワードモデル330は、単語が与えられると、その単語の周囲(例えばその単語の前後、又は前後とも2つの範囲など)に各単語が出現する確率を要素とする周辺単語分布ベクトルを出力するよう、あらかじめ所定のコーパスに対する統計処理を行うことにより得られる。周辺単語分布ベクトルは、対象となる言語から選択された一定数の単語に応じた数の要素を持つ。この周辺単語分布ベクトルから、ある単語の周辺に出現する確率の高い単語がわかる。また、互いに類似した状況に出現する単語の周辺単語分布ベクトルは互いに類似する。したがって、互いに類似した状況に出現する単語もこのトピックワードモデル330を用いて推定できる。なお、2つの周辺単語分布ベクトルが類似しているか否かは、両者のコサイン類似度により定めればよい。
 このようなWord2Vecのようなワード・エンベディングを計算するトピックワードモデルのほかに、事前学習済みのBERTモデルをファインチューニングして、入力された文に対して、この入力文もしくはその近傍の文に出現する単語の確率分布を推定するトピックワードモデルを採用することも可能である。
 エ 関連表現検索部332
 図6を参照して、関連表現検索部332は、図5に示す関連表現問合部362から単語が与えられると、トピックワードモデル330からその単語に関する周辺単語分布ベクトルを受け、さらに想定入力記憶部78に記憶されている想定入力の中で、この周辺単語分布ベクトルに類似した周辺単語分布ベクトルを持つ単語を含む想定入力を検索し、関連想定入力として取り出すための関連想定入力検索部400を含む。関連表現検索部332はさらに、関連表現問合部362から単語が与えられると、トピックワードモデル330からその単語の周辺単語分布ベクトルを得て、この周辺単語分布ベクトルから、入力された単語の周囲で使用される確率の高い単語を関連単語として選択するための関連単語検索部402を含む。関連表現検索部332はさらに、関連想定入力検索部400が取り出した関連想定入力と、関連単語検索部402が選択した関連単語との種々の組合せを生成するための関連表現展開部404と、関連表現展開部404により生成された組合せの各々を図5の関連表現付加部366に向けて出力するための関連表現出力部406とを含む。
 (3) 対話装置302
 ア 構成
 図4を参照して、対話装置302は、図1の応答生成ニューラルネットワーク100と同様の構成を持つ応答生成ニューラルネットワーク340であって、応答生成ニューラルネットワーク100とは異なり訓練データ拡張部58により拡張された訓練データにより訓練された応答生成ニューラルネットワーク340を含む。対話装置302はさらに、対話装置302へのユーザ入力102に、ユーザが過去に対話の中で発した表現又はユーザとの対話のトピックを表す単語を1又は複数個付加して応答生成ニューラルネットワーク340に入力する情報付加装置338とを含む。
 情報付加装置338は、訓練データ拡張部58のトピックワードモデル330と同様のトピックワードモデル344と、過去のユーザ発話を記憶するためのユーザ入力記憶部346と、ユーザ入力102を受けて、ユーザ入力102に含まれる単語を抽出し、トピックワードモデル344を参照してその単語に関連する確率が高い単語をいくつか選択するための単語選択部348とを含む。情報付加装置338はさらに、ユーザ入力記憶部346に記憶されたユーザ入力のうちで、ユーザ入力102と関連する発話をいくつか選択するための発話選択部350と、ユーザ入力102に対して、単語選択部348が選択した単語と発話選択部350が選択したユーザ入力との任意の組合せ(何も選択しない場合も含む)を選択してユーザ入力102に付加し、応答生成ニューラルネットワーク340に入力として与えるための情報付加部352とを含む。
 イ トピックワードモデル344
 トピックワードモデル344は図4のトピックワードモデル330と同様である。
 ウ 単語選択部348
 単語選択部348は、ユーザ入力102に含まれる単語を抽出し、その単語の各々についてトピックワードモデル344を参照して周辺単語分布ベクトルを得る。そして、それら周辺単語分布ベクトルの中で最も高い確率を持つ所定個数の要素に対応する単語を選択する機能を持つ。
 エ ユーザ入力記憶部346
 ユーザ入力記憶部346は、ユーザが過去に入力したユーザ入力のうち、最新のものを所定個数だけ記憶する。ユーザ入力にその入力時刻を付加して記憶しておいてもよい。
 オ 発話選択部350
 発話選択部350は、ユーザ入力102とユーザ入力記憶部346に記憶された過去のユーザ入力とを所定の分離トークンを介して結合した単語ベクトル列を受け、両者が関連している程度を示す値を出力するようにあらかじめ訓練されたニューラルネットワークを持ち、このニューラルネットワークが出力する値が最も高いいくつかの過去のユーザ発話を選択する機能を持つ。なお、ユーザ入力の入力時刻を記憶している場合、現在から所定時間だけ前から現在までのユーザ入力に選択対象を限定してもよいし、ユーザ入力が選択される確率を、その入力があった時間からの経過時間と逆相関を持たせるようにしてもよい。
 カ 情報付加部352
 情報付加部352は、単語選択部348が選択した全ての単語と、発話選択部350が選択した全てのユーザ発話とを受け、これらの全ての組合せの集合を生成し、その中からランダムに1つの組合せを選択してユーザ入力102に付加する機能を持つ。組合せの中にはどの単語も過去の入力も含まない組合せも含む。したがって情報付加部352の出力は、ユーザ入力102のみ、ユーザ入力102+単語、ユーザ入力102+過去の入力、ユーザ入力102+2つの単語、ユーザ入力102+単語+過去の入力など、様々な形となり得る。
 (4) 訓練データ生成プログラム
 ア 全体構成
 図7は、図4の訓練データ生成装置54、訓練装置56及び訓練データ拡張部58としてコンピュータを機能させるためのプログラムの制御構造を示す。
 図7を参照して、このプログラムが図3に示す第1実施形態のものと異なるのは、ステップ204とステップ208との間に、ユーザ入力102に対してその関連表現を追加する処理が実行されるステップ450を含む点である。
 イ 関連表現追加処理
 図8に、図7のステップ450を実行するようコンピュータを機能させるプログラムルーチンの制御構造を示す。
 図8を参照して、このルーチンは、ルーチンの実行開始時に所定の初期処理を実行するステップ500と、訓練データサンプルの終了まで、各訓練データサンプルについて、後述するステップ504の処理を実行するステップ502と、ステップ502の終了後に所定の終了処理をしてこのルーチンの実行を完了し制御を図7に示す親ルーチンに戻すステップ506とを含む。
 ステップ504は、処理すべき訓練データサンプルに含まれる因果関係の帰結部から単語を抽出するステップ530と、ステップ530で抽出された単語が終了するまで、各単語についてステップ534を実行することにより、想定入力に付すべき単語候補の集合を生成するステップ532とを含む。ステップ504はさらに、ステップ532が完了した後に、ステップ532で生成された単語の集合に含まれる単語の可能な組合せを全て生成し、各組合せについて、処理すべき訓練データサンプルに含まれる想定入力にその組合せを付加することで新たな訓練データサンプルを生成し、訓練データに追加するステップ538を実行するステップ536とを含む。
 ステップ534は、トピックワードモデル330を用いて、処理中の単語の周辺単語分布ベクトルを算出するステップ560と、ステップ560で算出された確率が上位の所定個数の単語を選択するステップ562とを含む。ステップ534はさらに、ステップ560で算出された周辺単語分布ベクトルに基づいて、この周辺単語分布ベクトルと類似した周辺単語分布ベクトルを持つ単語を持つ所定個数の想定入力を図4の想定入力記憶部78から選択するステップ564とを含む。
 なお、この実施形態においては、ステップ562での単語の選択時には、確率が上位でも、しきい値以上の確率を持つ単語のみを選択する。ステップ564でも同様で、周辺単語分布ベクトルの類似度が所定以上となる単語のみを選択する。しきい値については実験により適切な値を定めればよい。このような制約を設けなくてもよい。
 2 動作
 (1) 訓練データの作成
 ア 基本的訓練データの作成
 基本的訓練データの作成は、図7のステップ200からステップ204までで行われる。この場合のこの実施形態の動作は第1実施形態と同様である。
 イ 訓練データの拡張
 訓練データの拡張は図7のステップ450で行われる。具体的は、図4及び図5を参照して、訓練データ追加部334の訓練データ読出部360が訓練データ記憶部84から訓練データを一つずつ読み出して(図8のステップ502)、その訓練データ内の因果関係に帰結部から単語を抽出し(ステップ530)関連表現問合部362に与える。関連表現問合部362が、それら単語の各々について(ステップ532)、関連表現検索部332に対して関連表現を問い合わせる(ステップ534)。
 図6を参照して、関連表現検索部332の関連想定入力検索部400は、関連表現問合部362から単語が与えられると、トピックワードモデル330からその単語に関する周辺単語分布ベクトルを算出する(ステップ560)。関連単語検索部402は、この周辺単語分布ベクトルから、入力された単語の周囲で使用される確率の高い所定個数の単語を関連単語として選択する(ステップ562)。関連想定入力検索部400はさらに、想定入力記憶部78に記憶されている想定入力の中で、この周辺単語分布ベクトルに類似した周辺単語分布ベクトルを持つ単語を含む想定入力を検索し、関連想定入力として取り出す(ステップ564)。この処理が各単語に対して行われる。
 関連表現展開部404は、関連想定入力検索部400が取り出した関連想定入力と、関連単語検索部402が選択した関連単語との可能な組合せを生成する(ステップ536)。関連表現出力部406が、関連表現展開部404により生成された組合せの各々を図5の関連表現付加部366に向けて、因果関係に関連する関連表現として出力する。
 再び図5を参照して、関連表現付加部366は、関連表現検索部332が出力する関連表現の組合せを受け、それらの組合せを処理中の訓練データサンプルの中の想定入力に付加して、新たな訓練データサンプルを生成する。訓練データ書込部364が、このようにして関連表現付加部366により生成された新たな訓練データサンプルを訓練データ記憶部84に追加して書き込む(ステップ538)。
 以上の処理により訓練データの拡張が行われる。
 (2) 訓練
 この第2実施形態で行われる応答生成ニューラルネットワーク340の訓練は、第1実施形態で応答生成ニューラルネットワーク100に対して行われるものと同様である。ただし訓練データが第2実施形態では第1実施形態とは異なるので、訓練終了時の応答生成ニューラルネットワーク340の内部のパラメータは第1実施形態の応答生成ニューラルネットワーク100の内部のパラメータとかなり異なってくる。
 (3) 対話処理
 対話処理時、対話装置302は以下のように動作する。まずユーザ入力102が対話装置302に与えられると、単語選択部348が、ユーザ入力102に含まれる単語を抽出し、トピックワードモデル344を参照してその単語に関連する確率が高い単語をいくつか選択する。発話選択部350が、ユーザ入力記憶部346に記憶された過去のユーザ入力のうちで、ユーザ入力102と関連する発話をいくつか選択する。情報付加部352が、ユーザ入力102に対して、単語選択部348が選択した単語と発話選択部350が選択したユーザ入力との任意の組合せ(何も選択しない場合も含む)の中の1つを何らかの方法で、例えばランダムに選択してユーザ入力102に付加し、応答生成ニューラルネットワーク340に入力として与える。
 この入力を受けた後の応答生成ニューラルネットワーク340の内部的動作自体は第1実施形態の応答生成ニューラルネットワーク100と同様である。ただし両者は内部のパラメータが異なるため、同じユーザ入力102が与えられたとしても、応答生成ニューラルネットワーク340の出力は応答生成ニューラルネットワーク100の出力と異なってくる可能性が高い。ユーザ入力102に単語などを付加することによりさらにその可能性は高くなる。特に応答生成ニューラルネットワーク340の場合には、回答を生成する上で、ユーザ入力102のみに依存するのではなく、ユーザ入力102が含む単語を帰結部に含むような因果関係、又はユーザ入力102よりも以前のユーザ入力と関連する表現を帰結部に含むような因果関係に基づいて応答を生成する可能性が高い。したがって、ユーザとの対話が継続性を持ちながら、因果関係の連鎖に基づく潜在的なチャンス又はリスクを反映することによりユーザが想定していなかったような話題を提供できる。
 例えばユーザ入力102が「人工知能が発達してきたね?」というものだと想定する。過去のユーザ入力に「高齢者が心配だ」というものがあり、この過去のユーザ入力がユーザ入力102に付加され、「人工知能が発達してきたね?+高齢者が心配だ」という形で応答生成ニューラルネットワーク340に与えられた場合をさらに想定する。この場合、例えば、応答生成ニューラルネットワーク340の出力として「ロボットを活用して介護サービスを提供し、高齢者を支援しよう」のように、ユーザ入力102から話題を発展させ、ユーザ入力102を発した時点でユーザが考えていなかったような方向に対話を進めていくことができる。
 3 効果
 以上のようにこの実施形態では、因果関係に基づいてユーザ入力に対する応答を生成できる。このような応答を生成するためにはニューラルネットワークを多数の因果関係表現を用いて訓練する必要がある。しかし因果関係表現は、通常の対話データと異なり、インターネット上から容易に大量に収集できる。その上、その量は日々さらに増加していく。したがって、対話に使用するニューラルネットワークによる応答の生成精度を容易に高めることができる。その上、因果関係に基づいて応答が生成されるので、従来のニューラルネットワークを用いた対話システムと異なり、因果関係及び因果関係の連鎖を反映して、ユーザが意識していないような潜在的なチャンス及びリスクに基づいた応答を生成できる。その結果、従来と比較して、ユーザとの対話をより有益な形で発展させることができる。
 第3 第3実施形態
 1 構成
 図9は、この発明の第3実施形態に係る対話システム600の構成を示すブロック図である。図9を参照して、対話システム600は、対話システムの訓練データを作成するための訓練データ生成装置610と、ニューラルネットワークを含む対話装置612とを含む。対話システム600はさらに、訓練データ生成装置610により作成された各訓練データサンプルに、その想定入力に関連する何らかの語句をトピックとして想定入力に付加した新たな訓練データサンプルを作成し追加する、図4に示すものと同様の訓練データ拡張部58と、訓練データ生成装置610により生成され訓練データ拡張部58により拡張された訓練データを用いて対話装置612の訓練を行うための訓練装置56とを含む。
 訓練データ生成装置610が図1に示す訓練データ生成装置54と異なるのは、図1の連鎖因果関係選択部70の後に、連鎖因果関係選択部70により選択された連鎖因果関係の各々から、先頭の因果関係の原因部と、その連鎖因果関係に含まれる因果関係の帰結部のみを取り出して順に連鎖させた文字列(ここでは因果的帰結連鎖という。)を生成するための因果的帰結連鎖生成部620を含む点と、図1の連鎖因果関係DB72に替えて、因果的帰結連鎖生成部620により生成された因果的帰結連鎖を記憶するための因果的帰結連鎖記憶部622を含む点と、図1に示す拡張因果関係DB74に替えて、因果関係DB64に記憶された単独の因果関係と、因果的帰結連鎖記憶部622に記憶された因果的帰結連鎖とを記憶するための因果的帰結連鎖DB624とを含む点である。因果関係DB64に記憶された単独の因果関係は、因果的帰結が1個だけからなる因果的帰結連鎖と考えることができる。訓練データ生成装置610はさらに、図1に示す訓練データ作成部82に替えて、因果的帰結連鎖DB624に記憶された因果的帰結連鎖と想定入力記憶部78に記憶された想定入力とを用いて対話装置612の訓練のための訓練データを作成する訓練データ作成部626を含む点でも図1に示す訓練データ生成装置54と異なっている。
 この第3実施形態では、ユーザは、因果的帰結連鎖の連鎖数を指定する自然数Nを指定してユーザ入力630を対話装置612に入力する点が第1実施形態及び第2実施形態と異なる。
 対話装置612は、訓練装置56により訓練された応答生成ニューラルネットワーク632と、ユーザ入力630の入力を受け、ユーザとの会話のトピックを表す単語を抽出し、ユーザ入力630にそれらの単語の任意の組合せを追加して応答生成ニューラルネットワーク632に入力する、図4に示す情報付加装置338の中のトピックワードモデル344、単語選択部348及び情報付加部352を含む情報付加装置642とを含む。これら追加された単語の任意の組み合わせは、ユーザ入力630と自然数Nとの間に挿入される。すなわち、応答生成ニューラルネットワーク632への入力は、「ユーザ入力630」+「情報付加装置338が追加した単語の組み合わせ」+「連鎖数を指定する自然数N」という形式となる。後述するように応答生成ニューラルネットワーク632は、上のような形式の入力が与えられると、N個の因果的帰結連鎖からなる文字列であって、かつ最後の因果的帰結連鎖には情報付加装置338が追加した単語のいずれかが含まれるようなものを出力するように訓練される。
 対話装置612はさらに、情報付加装置338から与えられた入力に対する応答生成ニューラルネットワーク632の出力結果から質問文を生成する質問生成部634と、質問生成部634が生成した質問を外部の質問応答システム614に与えてその応答を得るための応答取得部636と、応答取得部636が得た応答を対話文として整形し、応答発話640として出力するための発話整形部638とを含む。
 この実施形態では(他の実施形態でも)、質問生成部634での処理は、応答生成ニューラルネットワーク632の出力する因果関係表現の先頭に疑問詞を付し、さらに末尾を何らかの形で疑問形式に整形することで疑問文を作成する。これらの疑問文の作成は、別途学習されたニューラルネットワーク又はルールベースの整形手段を用いることができる。
 例えば応答生成ニューラルネットワーク632の出力する因果関係表現が「奈良に行く」→「鹿に会う」であったと仮定する。この得られた因果関係表現に対して、(1)「どのように」Howを付すことで、「どのように奈良に行くと鹿に会う?」という疑問文を作成する。(2)この結果に加えて、「と良い?」という語をさらに末尾に付加して、「どのように奈良に行くと鹿に会うと良い?」という疑問文を作成する。
 応答取得部636は、これらの疑問文のいずれか又は双方を質問応答システム614に入力し、出力である回答とその回答が抽出されたテキストを得る。発話整形部638は、はこの回答を単独で、又は回答が抽出されたテキストと組み合わせて利用して、ユーザとの対話における応答にふさわしい整形を行って最終的な応答発話640を出力する。
 ここで、質問応答システム614として想定しているのは、入力に基づいて内部データベース又は外部の情報源(例えばインターネット上の文書)等の検索処理を行い、入力された質問文と関係が認められる記述であって、事実に基づく又は根拠がある記述などを抽出し応答として出力するシステムである。このような質問応答システムとしては、国立研究開発法人情報通信研究機構が運営する質問応答システムWISDOM X(https://www.wisdom-nict.jp/)が例として考えられる。このような質問応答システム614を縦続させることにより、応答の生成過程において、根拠となる記述やテキストを利用することができるため、ユーザへの応答発話640に根拠を持たせることが可能となる。なお、WISDOM Xに限らず、通常の検索エンジンの出力を利用することも可能である。
 上記したように、応答生成ニューラルネットワーク632への入力が「ユーザ入力630」+「情報付加装置338が追加した発話及び単語の組み合わせ」+「連鎖数を指定する自然数N」という形式であるため、応答生成ニューラルネットワーク632のための訓練データとしては図10に示すようなものが必要となる。
 図10を参照して、この訓練データを構成する訓練サンプルの各々は、入力として「想定入力+関連単語(群)+自然数N」を持ち、出力としては自然数Nで指定された数だけの因果的帰結からなる因果的帰結連鎖を含む。このとき、各訓練サンプルの出力の末尾の因果的帰結には、関連単語(群)に含まれる単語のいずれかが含まれている。
 図11は、図9に示す訓練データ作成部626としてコンピュータを機能させるコンピュータプログラムの制御構造を示すフローチャートである。図11を参照して、このプログラムは図7に示す第2実施形態のものに類似している。しかし図11に示すプログラムが、図7に示すものと異なるのは、図7のステップ206に替えてステップ670を含むこと、及び図7のステップ450に替えて、関連表現ではなく関連単語を入力に追加するステップ672を含むことである。
 ステップ670は図7のステップ206と類似している。しかしステップ670は、図7のステップ234に替えて、ステップ680を含む点でステップ234と異なる。
 ステップ680は、処理中の名詞句を原因部(因果的帰結連鎖の先頭)に持つ因果的帰結連鎖をすべて読み出すステップ690と、ステップ690で読み出された各因果的帰結連鎖についてステップ694を実行するステップ692とを含む。
 ステップ694は、処理中の想定入力及び因果的帰結連鎖の組み合わせについて、想定入力と、因果的帰結連鎖の回数とを入力とし、因果的帰結連鎖を回答とする訓練データサンプルを作成し保存するためのものである。
 すなわち、ステップ680の処理によって、図10に示す訓練データサンプルから「関連単語(群)」を取り除いた訓練データサンプルが得られる。「関連単語(群)」はステップ672において追加される。
 図12は、図11のステップ672を実現するプログラムルーチンの制御構造を示す。図12を参照して、このプログラムは、所定の初期処理を実行するステップ700と、各訓練データサンプルについてステップ704を実行するステップ702と、ステップ702が完了した後に、所定の終了処理を実行してこのルーチンの実行を終了するステップ706とを含む。
 ステップ704は、処理中の訓練データサンプルの因果関係連鎖の最後の帰結部から単語を抽出するステップ710と、ステップ710で抽出された単語の組み合わせをすべて生成するステップ711と、ステップ711で生成された各組み合わせについてステップ714を実行するステップ712とを含む。
 ステップ714は、処理中の訓練データサンプルの想定入力と、連鎖回数を示す自然数Nとの間に、処理中の単語の組み合わせを挿入し、新たなサンプルを作成するステップ720と、ステップ720で作成された新たなサンプルを図9に示す訓練データ記憶部84に書き出してステップ714の実行を終了するステップ722とを含む。
 2 動作及び効果
 図11及び図12に制御構造を示すプログラムをコンピュータに実行させることにより、図10に示すような構成の訓練データを得ることができる。ここで注意すべきは、訓練データの入力部の「関連単語(群)」に含まれる単語が、出力の因果的帰結連鎖の末尾の因果的帰結に含まれていること、及び出力部分の因果的帰結の数が入力部の自然数により指定された数であることである。
 この訓練データを用いて図9に示す応答生成ニューラルネットワーク632を訓練する。その結果、図10の「入力」として示した構成の入力が応答生成ニューラルネットワーク632に与えられると、応答生成ニューラルネットワーク632が、入力で指定された想定入力と関連を持つ原因部を持つ因果的帰結連鎖であって、入力で指定された数だけの因果的帰結を持ち、最後の因果的帰結には入力で指定された関連単語又は関連単語に近い単語を持つ因果的帰結連鎖を出力するように、応答生成ニューラルネットワーク632のパラメータが設定される。
 したがって、実際の推論時にユーザがユーザ入力630と自然数Nとを対話装置612に入力すると、ユーザ入力630に対して対話のトピックを示す単語が関連単語として選択されて入力に付加される。この入力が応答生成ニューラルネットワーク632に与えられると、応答生成ニューラルネットワーク632は、指定された数だけの因果的帰結を持つ因果的帰結連鎖であって、その末尾の因果的帰結には関連単語として指定された単語又はその単語に近い単語が含まれるものを出力する。その原因部は入力と関連したものとなっている。その因果的帰結連鎖は第1及び2実施形態にいう「因果関係表現」である。この因果関係表現から質問生成部634が質問文を生成する。応答取得部636がその質問文を質問応答システム614に与えてその応答を得る。発話整形部638がその応答をユーザ入力630に対する応答としてふさわしい形に整形し応答発話640として出力する。
 この実施形態では、ユーザ入力+関連単語+自然数Nを応答生成ニューラルネットワーク632に入力し、各々がN個の因果的帰結からなる複数の因果的帰結連鎖を得る。例えば、ユーザ入力として「人工知能が発達する。」が与えられ、その関連語として「高齢者」という単語が発見された場合について考える。自然数Nの値として1、2及び3を想定すると以下のような出力が得られることが想定される。
 N=1:高齢者を支援する。
 N=2:ロボットを活用する→高齢者を支援する。
 N=3:ロボットを活用する→介護サービスが提供できる→高齢者を支援する。
 したがって、自然数Nの値により、入力と最終的な帰結との間の関連がより詳細に分かるという効果がある。すなわち、応答発話640は、入力と出力との間に介在する、ユーザが指定した数だけの因果的帰結を含む。したがってユーザ入力630を発したときにユーザが想定していなかったような帰結が、その過程も含めて得られ、いわば対話における対話装置612の思考過程を明確にでき、対話が発展する契機となる。
 なお、生成時において、応答生成ニューラルネットワークへ632の入力には、必ずしも、情報付加装置642からの追加の単語が入力されるわけではなく、省略される場合も含まれる。
 第4 第4実施形態
 1 構成
 第3実施形態で訓練された応答生成ニューラルネットワーク632を用いると、以下のような実施形態も可能になる。図13に第4実施形態に係る対話装置730の構成を示す。
 図13を参照して、この対話装置730は、上記した応答生成ニューラルネットワーク632と、ユーザ入力740を受けて、ユーザ入力740に対してトピックを示す関連単語(群)を付して出力するための情報付加装置642とを含む。対話装置730はさらに、情報付加装置642の出力に対して第3実施形態において述べた因果的帰結の連鎖数を示す自然数Nとして外部から与えられたものを付加して応答生成ニューラルネットワーク632に入力するための連鎖回数付加部742を含む。対話装置730はさらに、連鎖回数の上限を記憶する上限記憶部746と、自然数Nを1から上限記憶部746に記憶された上限まで、1ずつ増分しながら連鎖回数付加部742に与えて情報付加装置642の出力にその自然数Nが付されたものを順次出力させるための計数部744とを含む。
 対話装置730はさらに、これら入力に対して応答生成ニューラルネットワーク632から次々に出力される一連の因果的帰結連鎖を記憶するための出力記憶部748と、出力記憶部748に記憶された一連の因果的帰結連鎖をランキングするためのランキング部750とを含む。対話装置730はさらに、ランキング部750により最も高くランクされた因果的帰結連鎖を発話候補として選択するための発話選択部752と、発話選択部752により選択された因果的帰結連鎖をユーザ入力740に対する応答にふさわしく整形し応答発話756として出力するための発話整形部754とを含む。
 ランキング部750としては、予め学習済のニューラルネットワークを使用できる。このニューラルネットワークの訓練には、ユーザ入力と関連単語との組み合わせに対する因果的帰結連鎖の組を人手で評価したものを用いればよい。
 2 効果
 この実施形態によれば以下のような効果が得られる。例えば、入力として「人工知能が発達する」というものがあり、付加的単語として、「高齢者」が選ばれると仮定したときに、最終帰結が「高齢者を支援する」ではあるが、その間に、複数の因果的帰結が介在する連鎖が考えられる。しかもその複数の因果的帰結の数があらかじめ分かるわけではない。しかしこの実施形態では、入力された自然数の範囲内のすべての数についてその数の因果的帰結を含む因果的帰結連鎖を生成し、その中で最もランクの高いものを応答発話756として出力できる。その結果、ユーザ入力740を発した時点でユーザが考えていなかったような因果的な帰結であってしかも応答として適切なものが選択できる。
 なお、推論時の因果的帰結の連鎖の数は、学習時のデータの自然数Nに制限される必要はない。例えば、学習データの自然数Nの最大値が10であっても、推論時に自然数Nを10に制限する必要はない。所定の精度が得られる限り、自然数Nを15などにして推論処理を行わせることも可能である。
 第5 第5実施形態
 1 構成
 上記第4実施形態は、複数の自然数Nに対して生成された複数の応答因果的帰結を事後評価し、スコアが最も高いものを選択する。しかし、この発明はそのような実施形態には限定されない。事前に同様の評価を行い対話システムにその結果を利用する方法をとることも考えられる。第5実施形態はそのような例である。具体的には、この例では例えば、想定入力とその関連語の各組み合わせに対して、1個からN個の因果的帰結からなる複数の因果的帰結連鎖を予め人手又は第4実施形態の応答生成ニューラルネットワーク632を使用して作成する。そして人手によりその結果をランキングする。そして、想定入力と、その関連語との組み合わせを入力とし、その組み合わせから得られた因果的帰結連鎖のうちで最も高いランクが得られたときの自然数Nを正解データとする訓練データを作成する。この訓練データを用いることで、ユーザ入力を与えると自然数Nが出力されるニューラルネットワーク(N評価用ニューラルネットワーク)を学習させる。そして、この学習済みのN評価用ニューラルネットワークに対して、入力と関連語を入力して自然数Nを得て、「入力+関連語+N」を応答生成ニューラルネットワークに与えて出力を得る。
 具体的には、図14を参照して、第5実施形態に係る対話システム770は、ユーザ入力780に対して関連単語を付与する情報付加装置642と、情報付加装置642の出力を得てその出力に含まれるユーザ入力と関連単語との組み合わせに対する最適な自然数Nの値を出力する、上記したN評価用ニューラルネットワークを含む連鎖回数推定部782とを含む。対話システム770はさらに、情報付加装置642の出力にさらに連鎖回数推定部782の出力した連鎖回数である自然数Nを付与する連鎖回数付加部784を含む。
 対話システム770はさらに、連鎖回数付加部784の出力である、ユーザ入力と関連単語と自然数Nとを入力として受け、指定されたN個の因果的帰結を含む因果的帰結連鎖を出力する応答生成ニューラルネットワーク632と、応答生成ニューラルネットワーク632の出力する因果的帰結連鎖に対し、ユーザ入力780に対する応答としてふさわしくなるような整形を行って応答発話788を出力する発話整形部786とを含む。
 2 効果
 この第5実施形態によれば、ユーザがユーザ入力780を入力(発話)するだけで、対話システム770が関連単語を推定し、連鎖回数推定部782が自然数Nを推定して応答生成ニューラルネットワーク632に与える。したがってユーザとしては関連単語を考える必要も、自然数Nを指定する必要もない。また応答生成ニューラルネットワーク632からは適切な応答発話788が得られ、しかもユーザが応答発話788の中の因果的帰結から対話システム770の思考過程に相当するものを容易に理解できる。その結果、対話システム770による対話をユーザにとって有意義な形で発展させることができる。
 なお、ここまでの第3、第4、第5の実施形態の説明では、末尾の因果的帰結には、関連単語として指定された単語又はその単語に近い単語が含まれることを想定しているが、このことは、必ずしも必須ではなく、話題を表す表現が帰結連鎖に含まれない場合も学習してもよい。
 第6 コンピュータによる実現
 図15は、上記各実施形態を実現するコンピュータシステムの外観図である。図16は、図15に示すコンピュータシステムのハードウェアブロック図である。
 図15を参照して、このコンピュータシステム950は、DVD(Digital Versatile Disc)ドライブ1002を有するコンピュータ970と、いずれもコンピュータ970に接続された、ユーザと対話するためのキーボード974、マウス976、及びモニタ972とを含む。もちろんこれらはユーザ対話が必要となったときのための構成の一例であって、ユーザ対話に利用できる一般のハードウェア及びソフトウェア(例えばタッチパネル、音声入力、ポインティングデバイス一般)であればどのようなものも利用できる。
 図16を参照して、コンピュータ970は、DVDドライブ1002に加えて、CPU(Central Processing Unit)990と、GPU(Graphics Processing Unit)992と、CPU990、GPU992、DVDドライブ1002に接続されたバス1010とを含む。コンピュータ970はさらに、バス1010に接続され、コンピュータ970のブートアッププログラムなどを記憶するROM(Read-Only Memory)996と、バス1010に接続され、プログラムを構成する命令、システムプログラム、及び作業データなどを記憶するRAM(Random Access Memory)998と、バス1010に接続された不揮発性メモリであるSSD(Solid State Drive)1000とを含む。SSD1000は、CPU990及びGPU992が実行するプログラム、並びにCPU990及びGPU992が実行するプログラムが使用するデータなどを記憶するためのものである。コンピュータ970はさらに、他端末との通信を可能とするネットワーク986への接続を提供するネットワークI/F(Interface)1008と、USB(Universal Serial Bus)メモリ984が着脱可能で、USBメモリ984とコンピュータ970内の各部との通信を提供するUSBポート1006とを含む。
 コンピュータ970はさらに、マイクロフォン982及びスピーカ980とバス1010とに接続された音声I/F1004を含む。音声I/F1004は、CPU990により生成されRAM998又はSSD1000に保存された音声信号、映像信号及びテキストデータをCPU990の指示にしたがって読み出し、アナログ変換及び増幅処理をしてスピーカ980を駆動したり、マイクロフォン982からのアナログの音声信号をデジタル化し、RAM998又はSSD1000の、CPU990により指定される任意のアドレスに保存したりするためのものである。
 上記実施形態では、対話システム50、300、600、及び770又はそれらの一部である訓練データ生成装置54及び610、訓練装置56、対話装置52、302、612、730及び訓練データ拡張部58などを実現するためのプログラム、ニューラルネットワークのパラメータ及びニューラルネットワークプログラム、並びに訓練データ、因果関係、因果的帰結連鎖、及び想定入力などは、いずれも例えば図16に示すSSD1000、RAM998、DVD978又はUSBメモリ984、若しくはネットワークI/F1008及びネットワーク986を介して接続された図示しない外部装置の記憶媒体などに格納される。典型的には、これらのデータ及びパラメータなどは、例えば外部からSSD1000に書込まれコンピュータ970による実行時にはRAM998にロードされる。場合によっては、プログラムが実行する一部のコードは、その実行時に、コンピュータ970の外部から、ネットワーク986を介してRAM998にロードされることもあり得る。
 このコンピュータシステムを、上記した各実施形態のシステム及びその各構成要素の機能を実現するよう動作させるためのコンピュータプログラムは、DVDドライブ1002に装着されるDVD978に記憶され、DVDドライブ1002からSSD1000に転送される。又は、これらのプログラムはUSBメモリ984に記憶され、USBメモリ984をUSBポート1006に装着し、プログラムをSSD1000に転送する。又は、このプログラムはネットワーク986を通じてコンピュータ970に送信されSSD1000に記憶されてもよい。
 プログラムは実行のときにRAM998にロードされる。もちろん、キーボード974、モニタ972及びマウス976を用いてソースプログラムを入力し、コンパイルした後のオブジェクトプログラムをSSD1000に格納してもよい。スクリプト言語の場合には、キーボード974などを用いて入力したスクリプトをSSD1000に格納してもよい。仮想マシン上で動作するプログラムの場合には、仮想マシンとして機能するプログラムを予めコンピュータ970にインストールしておく必要がある。ニューラルネットワークの訓練及びテストには大量の計算が伴うため、スクリプト言語ではなくコンピュータのネイティブなコードからなるオブジェクトプログラムとして本発明の実施形態の各部を実現する方が好ましい。
 CPU990は、その内部のプログラムカウンタと呼ばれるレジスタ(図示せず)により示されるアドレスにしたがってRAM998からプログラムを読み出して命令を解釈し、命令の実行に必要なデータを命令により指定されるアドレスにしたがってRAM998、SSD1000又はそれ以外の機器から読み出して命令により指定される処理を実行する。CPU990は、実行結果のデータを、RAM998、SSD1000、CPU990内のレジスタなど、プログラムにより指定されるアドレスに格納する。このとき、プログラムカウンタの値もプログラムによって更新される。コンピュータプログラムは、DVD978から、USBメモリ984から、又はネットワークを介して、RAM998に直接にロードしてもよい。なお、CPU990が実行するプログラムの中で、一部のタスク(主として数値計算)については、プログラムに含まれる命令により、又はCPU990による命令実行時の解析結果にしたがって、GPU992にディスパッチされる。
 コンピュータ970により上記した各実施形態に係るシステム及びその各部の機能を実現するプログラムは、それら機能を実現するようコンピュータ970を動作させるように記述され配列された複数の命令を含む。この命令を実行するのに必要な基本的機能のいくつかはコンピュータ970上で動作するオペレーティングシステム(OS)若しくはサードパーティのプログラム、又はコンピュータ970にインストールされる各種ツールキットのモジュールにより提供される。したがって、このプログラムはこの実施形態のシステム及び方法を実現するのに必要な機能全てを必ずしも含まなくてよい。このプログラムは、命令の中で、所望の結果が得られるように制御されたやり方で適切な機能又は「プログラム・ライブラリ」の機能を静的にリンクすることで、又はプログラムの実行時に動的に呼出すことにより、上記した各装置及びその構成要素としての動作を実行する命令のみを含んでいればよい。そのためのコンピュータ970の動作方法は周知であるので、ここでは繰返さない。
 なお、GPU992は並列処理を行うことが可能であり、機械学習に伴う多量の計算を同時並列的又はパイプライン的に実行できる。例えばプログラムのコンパイル時にプログラム中で発見された並列的計算要素、又はプログラムの実行時に発見された並列的計算要素は、随時、CPU990からGPU992にディスパッチされ、実行され、その結果が直接に、又はRAM998の所定アドレスを介してCPU990に返され、プログラム中の所定の変数に代入される。
 第7 変形例
 上記実施形態では、ウェブから収集した因果関係はそのまま使用し、拡張因果関係についてはその中で適切なもののみを使用している。しかしこの発明はそのような実施形態には限定されない。例えば、訓練に使用する因果関係は何らかの形でフィルタリングしてもよい。1例として、感情極性(sentiment polarity)がポジティブ又はネガティブに偏った因果関係を選択してもよい。特定の話題との類縁性がトピックワードモデルにより判明した因果関係のみを使用してもよい。そもそも対話の応答として適切なものか否かを手動又は自動でラベル付けし、適切と判定されたものだけを使用してもよい。
 上記実施形態で使用しているニューラルネットワークは、事前学習済のニューラルネットワーク(例えば前述のBERT)を、因果関係から準備した訓練データでファインチューニングしたものである。しかしニューラルネットワークとしては、こうした形式のものに限定されず、例えば以下の文献に記載されたGPT-3のように何らかの特殊な形式の入力を与えることで因果的帰結を出すようなものを使用してもよい。
 参考文献:Tom B. Brown et al., Language Models are Few-Shot Learners, https://arxiv.org/pdf/2005.14165.pdf
 なお、応答生成時には例えば、ユーザ入力を繰り返して、さらに文末表現など深層学習によるニューラルネットワーク又はルールにしたがって変形し応答を返してもよい。対話システムの応答に対してユーザが発する合いの手にあわせて、さらなる因果関係をたどってその帰結を応答の形で提示してもよい。合いの手をどのように解釈するかについては別途学習データを作成し、深層学習により訓練したニューラルネットワークで判定すればよい。 対話システムの応答に対してユーザが否定的な反応をした場合には、なぜ型質問応答をし、さらに応答に使われた文言を帰結部に持つ因果関係を検索してその原因部を提示してもよい。同様に応答生成の経緯をユーザに対して説明してもよい。
 逆に対話システムの応答に対してユーザが肯定的な反応をした場合には、やはり応答の文言を帰結部に持つ因果関係を検索し、その原因部から応答を生成してもよい。
 さらに上記第2実施形態から第5実施形態では、ユーザ入力102、630、740,780に対して単語又は想定入力を付加している。しかしこの発明はそのような実施形態には限定されない。付加すべき単語及び想定入力の組合せをニューラルネットワークからなるエンコーダにより固定長の特徴ベクトルに変換し、この特徴ベクトルをユーザ入力102、630、740、780に付加したものを応答生成ニューラルネットワーク340、632への入力としてもよい。
 今回開示された実施形態は単に例示であって、本発明が上記した実施の形態のみに制限されるわけではない。本発明の範囲は、発明の詳細な説明の記載を参酌した上で、請求の範囲の各請求項によって示され、そこに記載された文言と均等の意味及び範囲内での全ての変更を含む。
50、300、600、770 対話システム
52、302、612、730 対話装置
54、610 訓練データ生成装置
56 訓練装置
58 訓練データ拡張部
60 インターネット
62 因果関係抽出部
64 因果関係DB
66 連鎖因果関係生成部
68 生成因果関係DB
70 連鎖因果関係選択部
72 連鎖因果関係DB
74 拡張因果関係DB
76 想定入力抽出部
78 想定入力記憶部
80 コンソール
82、626 訓練データ作成部
84 訓練データ記憶部
86 訓練部
100、340、632 応答生成ニューラルネットワーク
102、630、740、780 ユーザ入力
104、638、754、786 発話整形部
106、640、756、788 応答発話
150 想定入力読出部
152 名詞句特定部
154 因果関係検索部
156 訓練データサンプル作成部
330、344 トピックワードモデル
332 関連表現検索部
334 訓練データ追加部
338、642 情報付加装置
346 ユーザ入力記憶部
348 単語選択部
350、752 発話選択部
352 情報付加部
360 訓練データ読出部
362 関連表現問合部
364 訓練データ書込部
366 関連表現付加部
400 関連想定入力検索部
402 関連単語検索部
404 関連表現展開部
406 関連表現出力部
614 質問応答システム
620 因果的帰結連鎖生成部
622 因果的帰結連鎖記憶部
624 因果的帰結連鎖DB
634 質問生成部
750 ランキング部
782 連鎖回数推定部
 

Claims (8)

  1.  各々が対話装置への入力として想定される、複数個の想定入力を記憶する想定入力記憶手段と、
     複数の因果関係表現を記憶する因果関係記憶手段と、を含み、
     前記複数の因果関係表現の各々は、原因表現と結果表現とを含み、
     前記想定入力記憶手段に記憶された前記複数個の想定入力の各々について、
      当該想定入力として所定の関係を持つ因果関係表現を前記複数の因果関係表現から抽出するための因果関係表現抽出手段と、
      当該想定入力を入力、前記因果関係表現抽出手段により抽出された因果関係表現を回答とする訓練データサンプルを作成し、所定の記憶装置に記憶する訓練データ作成手段と、
     自然言語の入力文に対して出力文を生成するよう設計された、ニューラルネットワークからなる対話装置を前記訓練データ作成手段に記憶された訓練データサンプルを使用して訓練するための訓練手段とを含む、対話装置の訓練装置。
  2.  前記因果関係表現抽出手段は、前記想定入力が持つ名詞句を原因表現に持つ因果関係を前記複数の因果関係表現から抽出するための特定因果関係表現抽出手段を含む、請求項1に記載の訓練装置。
  3.  さらに、単語が与えられると、当該単語の周辺単語の分布確率を、あらかじめ定めた語彙中の単語の各々について出力するようあらかじめ訓練されたトピックワードモデルと、
     前記所定の記憶装置に記憶される訓練データサンプルの因果関係表現の各々について、当該因果関係表現に含まれる単語に対する分布確率の高い単語を前記トピックワードモデルの出力に基づいて特定し、当該訓練データサンプルの前記入力に付加して新たな訓練データサンプルを生成し前記所定の記憶装置に追加するための第1の訓練データサンプル追加手段とを含む、請求項1又は請求項2に記載の訓練装置。
  4.  さらに、前記トピックワードモデルの出力に基づいて、前記所定の記憶装置に記憶される訓練データサンプルの因果関係表現の各々について、当該因果関係表現の周辺単語の分布確率と類似した周辺単語の分布確率を持つ文を所定のコーパスから抽出し、当該訓練データサンプルの前記入力に付加して新たな訓練データサンプルを生成し前記所定の記憶装置に追加するための第2の訓練データサンプル追加手段を含む、請求項3に記載の訓練装置。
  5.  自然言語の入力文に対して出力文を生成するよう設計されたニューラルネットワークを含む、自然言語による対話装置であって、
     前記ニューラルネットワークは、前記出力文が、前記入力文に対する潜在的帰結を表すものとなるように訓練されている、対話装置。
  6.  前記対話装置はさらに、入力文が与えられたことに応答して、前記入力文内の語句に関連する単語又は文を含む表現である関連表現を前記入力文に付加して前記ニューラルネットワークに入力する関連表現付加手段を含む、請求項5に記載の対話装置。
  7.  ユーザの過去の発話を記憶する発話記憶部と、
     入力された単語に対する周辺単語の生起の確率分布を出力するトピックモデルと、
     ユーザ発話を入力として、発話記憶部に記憶された前記ユーザの発話と、トピックモデルとを用いて、前記ユーザ発話に対する応答を生成するための応答生成部とを含む、対話装置。
  8.  ユーザの過去の発話を記憶する発話記憶部と、
     入力された単語に対する周辺単語の生起の確率分布を出力するトピックモデルと、
     ユーザの発話を入力として、その発話に対する応答を生成する応答生成部と、
     前記ユーザの発話に対する前記トピックモデルの出力により、前記応答生成部による前記応答の生成を調整する応答生成調整部とを含む、対話装置。
PCT/JP2022/020648 2021-05-28 2022-05-18 対話装置及びその訓練装置 WO2022249946A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2023523432A JPWO2022249946A1 (ja) 2021-05-28 2022-05-18

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2021-090300 2021-05-28
JP2021090300 2021-05-28

Publications (1)

Publication Number Publication Date
WO2022249946A1 true WO2022249946A1 (ja) 2022-12-01

Family

ID=84229958

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2022/020648 WO2022249946A1 (ja) 2021-05-28 2022-05-18 対話装置及びその訓練装置

Country Status (2)

Country Link
JP (1) JPWO2022249946A1 (ja)
WO (1) WO2022249946A1 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017049681A (ja) * 2015-08-31 2017-03-09 国立研究開発法人情報通信研究機構 質問応答システムの訓練装置及びそのためのコンピュータプログラム
JP2018180936A (ja) * 2017-04-13 2018-11-15 日本電信電話株式会社 対話シナリオ生成装置、方法、及びプログラム
JP2019133229A (ja) * 2018-01-29 2019-08-08 国立研究開発法人情報通信研究機構 質問応答システムの訓練データの作成方法及び質問応答システムの訓練方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017049681A (ja) * 2015-08-31 2017-03-09 国立研究開発法人情報通信研究機構 質問応答システムの訓練装置及びそのためのコンピュータプログラム
JP2018180936A (ja) * 2017-04-13 2018-11-15 日本電信電話株式会社 対話シナリオ生成装置、方法、及びプログラム
JP2019133229A (ja) * 2018-01-29 2019-08-08 国立研究開発法人情報通信研究機構 質問応答システムの訓練データの作成方法及び質問応答システムの訓練方法

Also Published As

Publication number Publication date
JPWO2022249946A1 (ja) 2022-12-01

Similar Documents

Publication Publication Date Title
CN110782870B (zh) 语音合成方法、装置、电子设备及存储介质
US10936664B2 (en) Dialogue system and computer program therefor
EP1366490B1 (en) Hierarchichal language models
WO2019198386A1 (ja) リクエスト言換システム、リクエスト言換モデル及びリクエスト判定モデルの訓練方法、及び対話システム
WO2019046463A1 (en) SYSTEM AND METHOD FOR THE DEFINITION OF DIALOGUE INTENTIONS AND THE CONSTRUCTION OF INTENTION RECOGNITION MODELS WITHOUT PRIOR KNOWLEDGE
WO2016067418A1 (ja) 対話制御装置および対話制御方法
Kheddar et al. Deep transfer learning for automatic speech recognition: Towards better generalization
KR20220060780A (ko) 언어학습을 위한 지식 기반 대화 시스템 및 방법
KR20110068491A (ko) 문법 오류 시뮬레이션 장치 및 방법
Desot et al. End-to-End Spoken Language Understanding: Performance analyses of a voice command task in a low resource setting
Pais et al. In-depth evaluation of Romanian natural language processing pipelines
Zhao et al. Tibetan Multi-Dialect Speech and Dialect Identity Recognition.
Yoon et al. Off-Topic Spoken Response Detection with Word Embeddings.
Ion et al. A dialog manager for micro-worlds
WO2022249946A1 (ja) 対話装置及びその訓練装置
WO2024069978A1 (ja) 生成装置、学習装置、生成方法、学習方法、及びプログラム
Imam et al. The Computation of Assimilation of Arabic Language Phonemes
WO2023162513A1 (ja) 言語モデル学習装置、対話装置及び学習済言語モデル
WO2024014230A1 (ja) 発話フィルタリング装置、対話システム、文脈モデルの学習データの生成装置及びコンピュータプログラム
Bouzaki Enhancing Intent Classification via Zero-shot and Few-shot ChatGPT Prompting Engineering: Generating training data or directly detecting intents?
WO2023243273A1 (ja) 発話データ生成装置、対話装置及び生成モデルの作成方法
Howell Meaning And Prosody: On The Web, In The Lab And From The Theorist'S Armchair
Trivedi et al. System Model for Syntax Free Coding
Tejedor-García et al. Towards an Open-Source Dutch Speech Recognition System for the Healthcare Domain
Malviya Design and Development of Spoken Dialogue System in Indic Languages

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22811218

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2023523432

Country of ref document: JP

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 22811218

Country of ref document: EP

Kind code of ref document: A1