WO2018169001A1 - 対話システム、対話装置及びそのためのコンピュータプログラム - Google Patents

対話システム、対話装置及びそのためのコンピュータプログラム Download PDF

Info

Publication number
WO2018169001A1
WO2018169001A1 PCT/JP2018/010231 JP2018010231W WO2018169001A1 WO 2018169001 A1 WO2018169001 A1 WO 2018169001A1 JP 2018010231 W JP2018010231 W JP 2018010231W WO 2018169001 A1 WO2018169001 A1 WO 2018169001A1
Authority
WO
WIPO (PCT)
Prior art keywords
evaluation
utterance
response
response utterance
items
Prior art date
Application number
PCT/JP2018/010231
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 国立研究開発法人情報通信研究機構
Publication of WO2018169001A1 publication Critical patent/WO2018169001A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L13/00Speech synthesis; Text to speech systems
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue

Definitions

  • the present invention relates to a dialogue system using a computer, and in particular, to perform a response having a “likeness” according to a feature specific to a certain feature (including, but not limited to, for elderly people or learners).
  • the present invention relates to an interactive device capable of This application claims priority based on application number 2017-051503 filed in Japan on March 16, 2017, the entirety of which is incorporated herein by reference.
  • a dialogue system using a computer has been put into practical use.
  • a dialogue system meeting a specific purpose will be required in the future.
  • a dialogue system that conducts general public talk or picks up topics preferred by elderly people is desirable.
  • learners who are studying for university entrance examinations it is desirable to have a dialogue system that can make a response useful for learning.
  • such a dialogue system is constructed by a method of collecting a pair of input sentences and response sentences that match a purpose and creating a database, and selecting an appropriate response from the database as a response sentence to the input utterance.
  • Japanese Patent Application Laid-Open No. H10-228707 discloses such a response using voice.
  • Patent Document 1 is a system that interacts with people about topics in a specific domain.
  • This system has an intention understanding unit.
  • the intention understanding unit analyzes the input utterance and understands what information the speaker wants to know in the domain, that is, the intention of the speaker.
  • the intent understanding unit has an intent understanding model and a storage device for problem solving knowledge.
  • the intention understanding model is a collection of sentence examples composed of various expressions for each intention, and is a database of words included in utterance sentences and intentions indicated by their expression patterns.
  • Problem solving knowledge is a collection of correspondences between utterance expressions and their solutions.
  • the intention of the utterance is understood by the intention understanding model, the problem to be answered is specified by the intention, the problem solving knowledge is searched, and a response including the answer to the problem is generated and output.
  • Patent Document 1 has a problem that in order to construct an intention understanding model, various utterances must be collected and the intention of each utterance must be given manually. Therefore, after all, it is necessary to construct a dedicated intent understanding model for each domain. Further, in the system disclosed in Patent Document 1, it is only necessary to give a simple fact as a response, but in order to enable an appropriate dialogue, a response candidate for each intention is prepared and a response candidate database is prepared. Must be prepared as. Moreover, it is necessary to prepare this response candidate database for each domain. Therefore, it is not possible to easily construct an interactive system capable of making an appropriate response in various fields by the technique disclosed in Patent Document 1. That is, with the technique disclosed in Patent Document 1, it is not easy to construct a dialogue system that can respond appropriately by specializing in a certain feature.
  • an object of the present invention is to provide a dialogue system capable of appropriately responding to an utterance and capable of carrying out a dialogue corresponding to various features.
  • the dialogue apparatus generates a plurality of response utterance candidates in response to an input utterance and reference value setting means for setting a reference value for a predetermined set of evaluation items.
  • Response utterance candidate generation means an evaluation means for calculating an evaluation value for each of a set of evaluation items for each of the plurality of response utterance candidates, and an evaluation value by the evaluation means among the plurality of response utterance candidates.
  • Response utterance selection means for selecting a response utterance candidate having a predetermined relationship with respect to the reference value as a response utterance for the input utterance.
  • the set of evaluation items includes a plurality of items, and when the utterance is given, the evaluation unit outputs, for each of the plurality of items, a score indicating a degree that the utterance matches the plurality of items.
  • Discriminating means for using a model learned by machine learning is included.
  • the set of evaluation items defines an evaluation space in which one point is determined corresponding to the value of the set of evaluation items
  • the response utterance selection means includes the response utterance candidates in the evaluation space. , Including means for selecting a corresponding utterance as a response utterance to an input utterance that is closest to a point defined by a reference value.
  • the set of evaluation items includes a first evaluation item including a plurality of items and a second evaluation item independent of the first evaluation item, and the evaluation unit includes a plurality of response utterance candidates.
  • the first evaluation means for calculating the evaluation value for each of the plurality of items of the first evaluation item, and for each of the plurality of response utterance candidates, the evaluation value for the second evaluation item is calculated.
  • a second evaluation means for calculating the evaluation value for each of the plurality of items of the first evaluation item, and for each of the plurality of response utterance candidates.
  • the plurality of items define an evaluation space in which one point is determined corresponding to the values of the plurality of items, and the response utterance selection means uses the corresponding point among the response utterance candidates as a reference in the evaluation space.
  • Candidate extraction means for extracting a thing within a certain range from the point determined by the value, and the evaluation value by the second evaluation item among the response utterance candidates extracted by the candidate extraction means is the reference value Means for selecting a response utterance that satisfies an independent criterion.
  • a dialogue system includes any one of the dialogue devices described above and a text storage device that stores each of the plurality of learning texts in association with an evaluation value according to a set of evaluation items. Then, when an input utterance is given using a plurality of learning texts stored in a text storage device as learning data, learning of the evaluation means is performed by machine learning so as to estimate and output an evaluation value related to a set of evaluation items. Learning means.
  • the computer program according to the third aspect of the present invention causes a computer to function as each unit of any of the above-described apparatuses.
  • FIG. 1 It is a block diagram which shows schematic structure of the dialogue system which concerns on the 1st Embodiment of this invention. It is a figure which shows the example of a text memorize
  • FIG. 16 It is a figure which shows the example of a score of each sentence calculated by the specific site uniqueness / news likeness score calculation part shown in FIG. It is a flowchart which shows the control structure of the computer program which implement
  • FIG. 16 It is a block diagram which shows schematic structure of the dialogue system which concerns on the 3rd Embodiment of this invention. It is a figure which shows the example of a score calculated with respect to each sentence by the response speech emotion analysis part shown in FIG. 16, a specific site likelihood score calculation part, and a news likelihood score calculation part. It is a figure which shows the external appearance of the computer which implement
  • FIG. 1 shows a block diagram of an interactive system 40 according to the first embodiment of the present invention.
  • this dialogue system 40 includes a large-scale text database 52 that stores a large amount of text collected from the web together with its URL, and a set of evaluation items previously extracted from this large-scale text database.
  • the emotion word dictionary 54 Stored in the emotion word dictionary 54, the connection word dictionary 56 that stores words that frequently appear later (referred to as “connection words”), and the emotion word dictionary 54.
  • connection words that stores words that frequently appear later
  • connection words the emotion word dictionary 54.
  • a machine-learned emotion determination model 60, a large-scale text database 52, an emotion word dictionary 54, and a connection word dictionary 56 are calculated so as to calculate a score that matches the input sentence.
  • a model learning unit 58 for performing machine learning of the emotion determination model 60 using.
  • the large-scale text database 52 stores many texts.
  • words 150, 152, 154, 156, and 158 are words representing some emotion.
  • Words 130, 132, 134, 136, and 138 existing before each word are connected words that are characteristically used to derive these emotional words.
  • connected words often accompanied by emotion words are collected and stored in the connected word dictionary 56.
  • words following each connected word are collected from the large-scale text database 52. If such a word represents emotion, it is stored in the emotion word dictionary 54, otherwise it is discarded.
  • different emotional words having different word forms are used even if they are rooted emotional words. Therefore, the number of emotion words is considerably large.
  • the model learning unit 58 refers to the emotion word dictionary 54 and the connection word dictionary 56, and selects one of the connection words stored in the connection word dictionary 56 from the large-scale text database 52 and the emotion word.
  • a text extraction / classification unit 80 that extracts text in which any one of emotion words stored in the dictionary 54 continuously appears, attaches the emotion word included in the text to each text as a label, and outputs the text, and text extraction / classification
  • the learning text storage unit 82 that stores the labeled text output from the unit 80 for learning of the emotion determination model 60 and the learning text stored in the learning text storage unit 82
  • a learning processing unit 84 that performs learning.
  • the text extraction / classification unit 80 is realized by a computer program. Referring to FIG. 3, this program reads step 200 for reading all emotion words from emotion word dictionary 54, step 202 for reading all connection words from connection word dictionary 56, and the preceding read in step 202. Generating a search expression for searching the large-scale text database 52 for text including any one of the combinations of all the word strings consisting of the connected word to be read and the subsequent emotion word read in step 200; Step 206 for extracting all text satisfying the conditions from the large-scale text database 52 using the search formula generated in step 204, and processing 210 described below are executed for each of the text extracted in step 206. Step 208 is included.
  • FIG. 4 schematically shows a set of texts stored in the learning text storage unit 82 shown in FIG.
  • emotional words happy, sad, fun, hard
  • This label separates the text into groups.
  • Learning of the emotion determination model 60 in the learning processing unit 84 is performed by using a label for each of the labels (emotion words) attached to the text stored in the learning text storage unit 82 when the text is input. This is done to output the probability that the text matches the expressed emotion.
  • the probability here can be considered as a score indicating the “likeness” in which the text represents the emotion represented by the label, that is, the degree of matching with the emotion.
  • There are a plurality of labels and the probability is calculated by treating each label as an exclusive evaluation item.
  • FIG. 5 conceptually shows the configuration of the emotion determination model 60.
  • the emotion determination model 60 is composed of a convolutional neural network (CNN).
  • the emotion determination model 60 has a plurality of inputs 240 to which word strings constituting the input text are input, and outputs 242 corresponding to the number of emotion words stored in the emotion word dictionary 54.
  • any input word is converted into a word identifier by a word conversion unit (not shown) and given as an input 240.
  • Each of the outputs 242 corresponds to one of the emotion words stored in the emotion word dictionary 54.
  • FIG. 6 shows an example of a conversation sentence stored in the conversation sentence database 64.
  • a large amount of conversation sentences as shown in FIG. 6 are collected and stored in the conversation sentence database 64 in advance.
  • Such conversational sentences may be collected in any way, but in this embodiment, sentences existing on the web and social networking services are collected. These conversation sentences can be searched based on the text.
  • dialog device 66 in response to input utterance 62, dialog device 66 generates a response utterance candidate sentence from the response utterance stored in conversation sentence database 64 (selected in this embodiment).
  • a candidate selection unit 90 a response utterance candidate storage unit 92 that stores response utterance candidates selected by the response utterance candidate selection unit 90, and an emotion determination model 60 for each response utterance candidate stored in the response utterance candidate storage unit 92.
  • a response utterance emotion analysis unit 94 that calculates an emotion score that is an evaluation value of each emotion, an input / output device 98 used when the user sets a criterion for selecting a response utterance, and an input / output device
  • the response utterance selection criterion storage unit 100 that stores the response utterance selection criteria set by 98, and the response utterance selection criteria stored in the response utterance selection criterion storage unit 100 Based on the score calculated by the information analysis unit 94, and a response utterance selection and generation unit 96 which outputs one of the response utterance candidates stored in the response utterance candidate storage unit 92 as a response utterance 68 select.
  • the program retrieves and extracts from the conversation sentence database 64 a conversation sentence that includes any of the content words extracted in step 280 and the step 280 that extracts the content words included in the input utterance 62.
  • Step 282 Step 284 for selecting a predetermined number in order from the largest number of content words that match the content words of the input utterance 62 for the conversation sentence extracted in Step 282, and the conversation selected in Step 284 Storing a sentence as a response utterance candidate.
  • the response utterance emotion analysis unit 94 shown in FIG. 1 is also realized by a computer program.
  • the program includes a step 300 of executing a score calculation process 310 described below for each response utterance candidate stored in response utterance candidate storage unit 92.
  • the score calculation process 310 is a process for calculating the emotion score of the response utterance candidate to be processed.
  • the score calculation process 310 reads the response utterance candidate to be processed from the response utterance candidate storage unit 92, and converts each of the words constituting the response utterance candidate read in step 320 into an identifier and connects them.
  • step 322 for creating an input parameter to the emotion determination model 60 step 324 for giving the input parameter created in step 322 to the input 240 of the emotion determination model 60 shown in FIG. 5, and the input given by step 324 Storing each element (probability value) of the vector of scores obtained at the output 242 of the emotion determination model 60 in response to the parameter in a score array corresponding to the response utterance candidate being processed.
  • FIG. 9 shows an example of the score array.
  • the example shown in FIG. 9 shows the emotion score calculated for each of the four response utterance candidates.
  • the emotional scores of “happy”, “sad”, “fun”, and “shiny” calculated for the response utterance candidate “eating chocolate” are 0.5, 0.1, 0.3, and 0, respectively. .1. Since these scores are probabilities, the value obtained by adding the score of each row shown in FIG.
  • FIG. 10 shows an example of a dialog for setting a response utterance selection criterion displayed on the input / output device 98 shown in FIG.
  • this dialog 340 is used to set a score reference value in the range of 0 to 1 for each of the four emotions of “happy”, “sad”, “fun”, and “shiny”.
  • four seek bars 360, 362, 364 and 366 are used to set a score reference value in the range of 0 to 1 for each of the four emotions of “happy”, “sad”, “fun”, and “shiny”.
  • Each seek bar 360, 362, 364 and 366 has thumbs 370, 372, 374 and 376, respectively, and by moving these thumbs to the left and right, a reference value of a score for each emotion can be set.
  • there is a restriction that the total of each score is 1.
  • FIG. 11 shows a response utterance selection method by the response utterance selection / generation unit 96 shown in FIG.
  • a space for evaluation (evaluation space) surrounded by a three-dimensional cube as shown in FIG. ) Can be considered.
  • evaluation space one point corresponding to each response utterance score can be defined.
  • a reference point 390 can be determined in this evaluation space according to the reference value stored in the response utterance selection reference storage unit 100.
  • the response utterance selection / generation unit 96 assigns each response utterance candidate to one point in this evaluation space by using the score calculated for each response utterance candidate by the response utterance emotion analysis unit 94 as a coordinate, A Euclidean distance (hereinafter simply referred to as “distance”) between the point and the reference point 390 is calculated. Then, the response utterance candidate having the shortest distance from the reference point 390 is selected as the response utterance 68. In this embodiment, in order to shorten the calculation time, only response utterance candidates within a predetermined search range 392 centering on the reference point 390 are extracted and set as distance calculation targets.
  • the Euclidean distance is used as the distance. However, any measure may be used as long as it generally satisfies a mathematical condition that the distance should satisfy.
  • the response utterance selection / generation unit 96 is also realized by a computer program.
  • the program includes a step 400 for reading a reference value from response utterance selection reference storage unit 100 and a step 402 for defining search range 392.
  • the search range 392 can be determined within the range of the reference value ⁇ ⁇ for each coordinate value, for example.
  • is a constant value common to all coordinates.
  • the present invention is not limited to such an embodiment.
  • can be determined for each coordinate (for each emotion) as 1/20 of each coordinate value of the reference value.
  • specific coordinates can be fixed values, and other coordinates can be changed according to a reference value.
  • the program further extracts only the response utterance candidates whose values constituting the emotion score are within the search range 392 determined in step 402 from the candidates stored in the response utterance candidate storage unit 92, and the distance Step 406 for substituting the maximum number allowed by the type of the variable into a variable for storing the minimum value of, Step 408 for substituting a predetermined default sentence for the variable representing the response utterance, and Step 404
  • step 410 for selecting the response utterance candidate that minimizes the distance from the reference point 390, and responding to the response utterance candidate selected in step 410 And output 414 as the utterance 68.
  • the process 412 calculates the distance between the response utterance candidate to be processed and the reference point 390, and determines whether the distance calculated in the step 420 is smaller than the minimum value calculated so far. If the determination is negative, step 422 that ends the processing 412 for the current response utterance candidate and if the determination in step 422 is affirmative, the distance calculated in step 420 is substituted for the minimum value, and the variable represents the response utterance. And step 424 which ends the processing 412 by substituting the response utterance candidate being processed.
  • the dialogue system 40 whose configuration has been described above operates as follows. There are two phases of operation. The first is a learning phase of the emotion determination model 60 by the model learning unit 58, and the second is a dialogue operation phase by the dialogue device 66.
  • a large-scale text database 52 stores a large amount of text and creates a database.
  • the connection word dictionary 56 stores connection words in advance
  • the emotion word dictionary 54 stores emotion words extracted from the large-scale text database 52 using the connection word dictionary 56.
  • the text extraction / classification unit 80 continuously displays either one of the connected words stored in the connected word dictionary 56 and one of the emotion words stored in the emotion word dictionary 54 from the large-scale text database 52.
  • the text is extracted, and the emotion word included in the text is attached to each text as a label and output.
  • the learning text storage unit 82 stores these labeled texts.
  • the learning processing unit 84 learns the emotion determination model 60 using the learning text stored in the learning text storage unit 82.
  • the emotion determination model 60 is composed of CNN as described above. Therefore, learning of the emotion determination model 60 can be performed by an error back-propagation method as in a normal neural network. Thus, when learning of the emotion determination model 60 is completed for all the texts stored in the large-scale text database 52, the response utterance process by the dialogue device 66 becomes possible.
  • the response utterance candidate selection unit 90 selects the conversation sentence of the response utterance candidate from the conversation sentence database 64. Specifically, the response utterance candidate selection unit 90 extracts a content word from the input utterance 62 (FIG. 7, step 280), and extracts a conversation sentence including the content word from the conversation sentence database 64 (step 282). Further, the response utterance candidate selection unit 90 extracts an important word from the input utterance 62 and extracts those conversation sentences including the important word as a response utterance candidate (step 284). The data is stored in the candidate storage unit 92 (step 286).
  • the response utterance emotion analysis unit 94 calculates an emotion score for each response utterance candidate stored in the response utterance candidate storage unit 92 with reference to the emotion determination model 60. More specifically, the response utterance emotion analysis unit 94 reads the response utterance candidates stored in the response utterance candidate storage unit 92 (step 320 in FIG. 8), and inputs the input parameters to the emotion determination model 60 as the response utterance candidates. (Step 322). This input parameter is input to the input 240 (see FIG. 5) of the emotion determination model 60 and waits for the output of the emotion determination model 60 (step 324), and the score obtained at the output 242 (see FIG. 5) of the emotion determination model 60 is obtained. Each element (probability value) of the vector is stored in the score array corresponding to the response utterance candidate being processed (step 326). By this processing, a two-dimensional array as shown in FIG. 9 is obtained.
  • the response utterance selection / generation unit 96 reads the reference value from the response utterance selection reference storage unit 100 (step 400 in FIG. 12). The response utterance selection / generation unit 96 further determines the range of the reference value ⁇ ⁇ as the search range 392 shown in FIG. 11 based on the reference value (step 402). The response utterance selection / generation unit 96 selects only the response utterances stored in the response utterance candidate storage unit 92 shown in FIG. 1 whose emotion score calculated by the response utterance emotion analysis unit 94 is within the search range 392. Extract (step 404). Further, the response utterance selection / generation unit 96 substitutes the maximum value that the variable can take into the variable representing the minimum distance (step 406), and substitutes the default sentence into the variable representing the response utterance (step 408).
  • the response utterance selection / generation unit 96 further calculates the distance between the response utterance candidate and the reference point 390 for each response utterance candidate extracted in step 404 (step 420). If this distance is smaller than the minimum value calculated so far (YES in step 422), this distance is substituted for the minimum value, and this response utterance candidate is substituted for a variable representing the response utterance (step 424). The process moves to the response utterance candidate. If the determination in step 422 is negative (NO in step 422), nothing is done with respect to this response utterance candidate, and the process proceeds to the next response utterance candidate.
  • the response utterance candidate having the smallest distance from the reference point 390 shown in FIG. 11 is stored in the variable representing the response utterance.
  • the response utterance selection / generation unit 96 outputs the response utterance candidate as the response utterance 68 (FIG. 1) (FIG. 12, step 414).
  • the response utterance candidate closest to the emotion score array set by the user is selected as the response utterance. Therefore, when the user desires something fun as a dialogue, if the reference value is set using the dialog 340 shown in FIG. 10 so that the emotion score of “fun” is increased, the user can have a pleasant conversation according to the user's desire. Can do. Further, in the above embodiment, by preparing the emotion word dictionary 54 and the connection word dictionary 56 sufficiently, any combination can be selected within the range of emotion words stored in the emotion word dictionary 54 and selected by the dialogue device 66. . Therefore, a dialog system with extremely high versatility can be obtained.
  • the first embodiment focuses on emotions in dialogue.
  • the present invention is not limited to such an embodiment.
  • a speech style unique to the site is formed, or only a speech focused on a specific topic is made.
  • 2ch registered trademark
  • a user prefers to read comments on these sites, they may want to adopt a similar speaking style in the conversation or focus on topics related to a particular topic.
  • a dialogue based on such an utterance style is possible.
  • this embodiment provides an interactive system that makes a remark that is close to the remark style of a specific site, and handles topics related to recent news as the content of the remark independently of the specific site. .
  • a dialogue system 430 includes a large-scale text database 52, a specific site / news URL list 452 storing URLs of specific sites and news sites, and the first implementation.
  • the specific site discriminating model 448 that is composed of CNN and outputs the probability that the utterance was obtained from any one of the specific sites and the probability obtained from other sites is independent of the specific site discriminating model 448.
  • a news discrimination model 450 that outputs the probability that the input utterance is a news article and the probability obtained from other sites, a large text database 52, and a specific site / news URL list 452, a specific site discrimination is performed.
  • a model learning unit 440 that learns the model 448 and the news discrimination model 450.
  • the specific site discrimination model 448 uses an evaluation item as to whether or not an utterance is obtained from a specific site
  • the news discrimination model 450 uses the specific site discrimination model 448 as to whether or not the utterance is a news article.
  • the evaluation items are independent of the evaluation items.
  • the dialogue system 430 further collects a large number of pairs of dialogue input sentences and their response sentences from the web and creates a database, and a specific site discrimination model in response to the input utterance 442. 448 and the news discriminating model 450, the response utterance paired with the input utterance close to the input utterance 442 among the input / response stored in the input / response database 444, which is set by the user. And an interactive device 446 that selects a response utterance having an utterance style close to “specific site-like” and having the highest score as news-likeness and outputs it as a response utterance 454.
  • the model learning unit 440 refers to the specific site / news URL list 452 and first classifies the text stored in the large-scale text database 52 into text collected from the URL of the specific site and text from other than that. And a second text set classified into text that is a news article and other text, and a label (specific site / other, news article / other) indicating the origin, A text classifying unit 460 for outputting, a first learning text storage unit 462 for storing the first text set, a second learning text storage unit 463 for storing the second text set, and a first A first site for learning the specific site discrimination model 448 using the learning text stored in the learning text storage unit 462. Including the learning processing unit 464, and a second learning section 465 performs learning of the news discriminant model 450 using the text stored in the second training text storage unit 463.
  • Both the specific site discrimination model 448 and the news discrimination model 450 have basically the same configuration as the emotion discrimination model 60 shown in FIG. However, in the case of the specific site discrimination model 448, there are two outputs each indicating the probability that the text is obtained from the URL of the specific site and other URLs. In the case of the news discrimination model 450, the text is the news. Both are different from the emotion determination model 60 in that they have two outputs respectively indicating the probability of being an article and the other.
  • the dialogue apparatus 446 searches the input / response database 444 for a pair having an input utterance similar to the input utterance 442, and selects a response utterance of the searched pair as a response utterance candidate.
  • the dialogue device 446 further includes an input / output device 478 used by the user to set a criterion for selecting a response utterance, and a response utterance selection criterion storage unit 480 that stores the criterion set by the input / output device 478. .
  • a response utterance selection criterion storage unit 480 that stores the criterion set by the input / output device 478.
  • only the likelihood of utterance from a specific site can be set as the selection criterion for response utterance.
  • the criteria for selecting the likelihood of news is not set by the user, but is satisfied in this embodiment.
  • the dialogue apparatus 446 further searches only response utterance candidates whose specific site likelihood score is within a predetermined range centered on the reference value, among the response utterance candidates calculated by the specific site likelihood score calculation unit 475. And a response utterance selection / generation unit 476 that selects a response utterance candidate having the highest news-likeness score and outputs it as a response utterance 454.
  • FIG. 14 shows an example of a specific site likelihood score calculated by the specific site likelihood score calculation unit 475 and a news likelihood score calculated by the news likelihood score calculation unit 474 for a certain response utterance candidate sentence.
  • each score is calculated by a different model.
  • the scores calculated for each sentence are distributed in the range of 0 to 1, respectively. Therefore, it should be noted that the sum of these values does not necessarily become 1, but becomes a value within the range of 0 to 2.
  • FIG. 15 shows a control structure of a computer program for realizing the response utterance selection / generation unit 476 in a flowchart format.
  • this program reads step 490 for reading a reference value (specific site-like score) stored in response utterance selection reference storage unit 480, and a predetermined range (reference value) centered on the read score.
  • the step includes a step 492 of defining ⁇ ⁇ ) as a search range of response utterance candidates, and a step 494 of extracting only response utterance candidates whose specific site likelihood score is within the search range determined in step 492.
  • the program further sorts the response utterance candidates extracted in step 494 in descending order of the likelihood of news, and among the response utterance candidates sorted in step 496, the first response utterance candidate is response utterance.
  • the dialogue system 430 operates as follows. Preparation of the large-scale text database 52 and the input / response database 444 in advance is the same as in the first embodiment. This dialogue system 430 also has two operation phases: learning and dialogue.
  • the text classification unit 460 of the model learning unit 440 refers to the specific site / news URL list 452 and converts the text stored in the large-scale text database 52 into text from the specific site and other text.
  • the first text set is created by classification and stored in the first learning text storage unit 462.
  • the text classifying unit 460 further classifies the text stored in the large-scale text database 52 into the text of news articles and other texts to create a second text set, and the second text storage unit 463 for learning. To store. At this time, a label (specific site / other, news article / other) indicating the origin is attached to each text.
  • the first learning processing unit 464 learns the specific site discrimination model 448 using the text set stored in the first learning text storage unit 462.
  • the second learning processing unit 465 learns the news discrimination model 450 using the text set stored in the second learning text storage unit 463.
  • the specific site discrimination model 448 outputs two probabilities indicating whether the utterance is from the specific site, and the news discrimination model 450 determines whether the utterance is a news article. Two probabilities indicating whether or not are output.
  • the probability of being a text from a specific site is a score of the likelihood of a specific site
  • the probability of being a text of a news article is a score of the likelihood of being a news.
  • response utterance candidate selection unit 470 of dialogue apparatus 446 has input to input utterance 442 out of the input / response pairs stored in input / response database 444. A predetermined number of similar ones are searched, a corresponding response is selected as a response utterance candidate, and stored in the response utterance candidate storage unit 472.
  • the news likelihood score calculation unit 474 calculates the likelihood of news for each response utterance candidate stored in the response utterance candidate storage unit 472 using the news discrimination model 450.
  • the specific site likelihood score calculation unit 475 calculates the specific site likelihood for each response utterance candidate using the specific site discrimination model 448. These are stored as a two-dimensional array as shown in FIG. 14 as a score regarding each response utterance candidate, and are given to the response utterance selection / generation unit 476.
  • the response utterance selection / generation unit 476 reads out the reference value of the specific site stored in the response utterance selection reference storage unit 480 (FIG. 15, step 490), and calculates a range of reference values ⁇ ⁇ centered on the reference value.
  • the search range of response utterance candidates is set (step 492).
  • the response utterance selection / generation unit 476 further selects a response utterance candidate having a specific site score within the search range (step 494) having the highest news-likeness score (steps 496 and 498), and a response utterance 454. Output as.
  • two different evaluation items are used as the evaluation axis, and among the response utterance candidates close to the reference value set on one evaluation axis, the response utterance having the highest score measured on the other evaluation axis is used.
  • only two evaluation axes are provided for ease of explanation. However, the present invention is not limited to such an embodiment. There may be three or more evaluation axes, two or more axes for setting a reference value, or two or more axes for selecting a high score without setting a reference value.
  • the criterion is not necessarily high, and a criterion can be selected so as to satisfy an arbitrary criterion. For example, a score that is low, a value close to a preset value, a median score of response utterance candidates within the search range, or a value close to the average value may be selected. Further, when there are a plurality of evaluation axes for which scores are calculated independently of each other, each axis is not evaluated independently, for example, the sum (or difference) of the score of the first axis and the score of the second axis. Application of selecting the maximum (or minimum) value of a product, a specific function value, etc. is also possible.
  • the response utterance selection / generation unit 476 described above first determines a search range, and then selects a response utterance candidate having the highest news-likeness score within the search range.
  • the present invention is not limited to such an embodiment. First, after selecting a high news-likeness score, the response utterance closest to the reference value of the specific site-likeness among the selected response utterance candidates is selected. A candidate may be selected.
  • the third embodiment is a combination of the first embodiment and the second embodiment.
  • an interaction system 510 receives the emotion determination model 60 used in the first embodiment, as well as the second embodiment.
  • the response utterance candidate stored in the input / response database 444 is selected and responded with the best match with the reference value set by the user.
  • An interactive device 526 that outputs the utterance 528 is included.
  • the dialogue device 526 includes a response utterance candidate selection unit 470, a response utterance candidate storage unit 472, an input / output device 550 used when a user sets a reference value, and a reference value set using the input / output device 550. And a response utterance selection criterion storage unit 552 for storing.
  • the emotion score used in the first embodiment, and the specific site-like score and news-like score used in the second embodiment are used. Among these, what can be set by the user is something other than the news-like score.
  • the input / output device 550 is for inputting a reference value in a dialog similar to that shown in FIG. 10 in relation to the first embodiment.
  • the emotion score is input so that the total score for each emotion is 1, but the score for the specific site is 0 to It is necessary to be able to set in the range of 1.
  • the dialogue device 526 further includes a response utterance emotion analysis unit 94 similar to that of the first embodiment, a news-likeness score calculation unit 474 and a specific site-likeness score calculation unit 475, both of which are the same as those of the second embodiment,
  • a response utterance candidate search range is set based on the reference value stored in the response utterance selection reference storage unit 552, and is within the search range among the response utterance candidates stored in the response utterance candidate storage unit 472, and
  • a response utterance selection / generation unit 554 that selects and outputs a response utterance 528 that has the highest news-likeness score.
  • FIG. 17 shows an example of scores calculated for each response utterance candidate by the response utterance emotion analysis unit 94, the news likelihood score calculation unit 474, and the specific site likelihood score calculation unit 475.
  • the emotional score of each sentence is 1 when summed horizontally, but the specific site-likeness score and the news-likeness score are within the range of 0 to 1 independently of each other.
  • a response utterance that best matches the criteria can be output as a response to the dialogue.
  • the dialog system in which the utterance contents change according to the user's needs or desires can be obtained using the same dialog system.
  • the emotion score, the likelihood of a specific site, and the likelihood of news are adopted as reference axes for selecting a response utterance.
  • the present invention is not limited to such an embodiment.
  • whether the utterance content is forward (positive) or backward (negative), whether it is an utterance in an article reprinted on another site, whether it is a thesis or other, whether it is an utterance by the teacher or not, or a certain age It is also possible to adopt the evaluation axis based on whether or not the sentence is written in the above, the age of the speaker, etc. Also, these evaluation axes can be freely combined with each other.
  • the response utterance candidate is selected based on the score (probability value) output using the model learned by the CNN.
  • the present invention is not limited to such an embodiment.
  • response utterance candidates including words that appear frequently in textbooks may be selected.
  • response utterance candidates is not limited to those used in the first embodiment or the second and third embodiments described above. As long as it is possible to extract response utterance candidates that are highly likely to have a certain relationship with the input utterance, any existing ones, including those that can be used in the future, may be used.
  • a word identifier string is used as an input to the CNN.
  • the present invention is not limited to such an embodiment, and may be input in the form of a word vector, for example.
  • FIG. 18 shows the external appearance of the computer system 630
  • FIG. 19 shows the internal configuration of the computer system 630.
  • a computer system 630 includes a computer 640 having a memory port 652 and a DVD (Digital Versatile Disk) drive 650, a keyboard 646, a mouse 648, and a monitor 642, all connected to the computer 640. Including.
  • DVD Digital Versatile Disk
  • the computer 640 includes a CPU (Central Processing Unit) 656, a bus 666 connected to the CPU 656, the memory port 652, and the DVD drive 650, and a startup program.
  • ROM Read-only memory
  • RAM random access memory
  • Computer system 630 further includes a network interface (I / F) 644 that provides a connection to network 668 that allows communication with other terminals.
  • the computer programs for causing the computer system 630 to function as the interactive systems 40, 430 and 510 according to the above-described embodiments and the respective functional units thereof are stored in the DVD 662 or the removable memory 664 installed in the DVD drive 650 or the memory port 652. And further transferred to the hard disk 654. Alternatively, the program may be transmitted to the computer 640 through the network 668 and stored in the hard disk 654. The program is loaded into the RAM 660 when executed. The program may be loaded directly from the DVD 662 into the RAM 660 from the removable memory 664 or via the network 668.
  • This program includes an instruction sequence including a plurality of instructions for causing the computer 640 to function as each functional unit of the dialogue systems 40, 430, and 510 according to the above-described embodiment.
  • Some of the basic functions necessary to cause computer 640 to perform this operation are an operating system or third party program running on computer 640 or various dynamically linked programming toolkits or programs installed on computer 640. Provided by the library. Therefore, this program itself does not necessarily include all the functions necessary for realizing the system, apparatus, and method of this embodiment.
  • the program is a system as described above, by dynamically calling the appropriate program in the appropriate function or programming toolkit or program library at run time in a controlled manner to obtain the desired result. It is only necessary to include an instruction for realizing a function as an apparatus or a method. Of course, all necessary functions may be provided only by an independent program.
  • This invention can be applied to all industries where it is useful to give answers to questions, such as science, engineering, education, manufacturing, and service industries.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Machine Translation (AREA)

Abstract

【課題】ある特徴に特化した対話を行える対話システムを提供する。 【解決手段】対話装置66は、複数の評価項目(例えば発話が表す感情)に関する基準値を設定する入出力装置98及び応答発話選択基準記憶部100と、入力発話に対して複数の応答発話候補を生成する応答発話候補選択部90と、複数の応答発話候補の各々について、評価項目の各々に関する評価値を算出する応答発話感情分析部94と、複数の応答発話候補のうち、評価値が基準値に最も近い応答発話候補を入力発話62に対する応答発話68として選択する応答発話選択・生成部96とを含む。

Description

対話システム、対話装置及びそのためのコンピュータプログラム
 この発明はコンピュータを用いた対話システムに関し、特に、ある特徴(高齢者向け又は学習者向けを含むが、それに限定されない)に特化した、その特徴に応じた「らしさ」を持つ応答を行うことができる対話装置に関する。本出願は、2017年3月16日に日本国に出願した出願番号2017-051503を基礎とする優先権を主張しており、その全体をここに参照により援用する。
 コンピュータを用いた対話システムが実用化されている。そうしたシステムの応用例として、特定の目的に合致した対話システムが今後必要になってくる。例えば、一人暮らしの高齢者に対しては、一般的な世間話を行ったり高齢者が好む話題を取り上げたりする対話システムが望ましい。また、大学受験にむけて勉強を行っている学習者に対しては、学習に役立つような応答を行うことができる対話システムが望ましい。
 従来、そうした対話システムは、目的に合致した入力文と応答文との対を収集してデータベース化し、入力された発話に対する応答文として適切な応答をデータベースから選択するという手法により構築されている。音声を用いてそうした応答を行うものが特許文献1に開示されている。
 特許文献1に開示されたシステムは、特定のドメインにおける話題について人と対話するシステムである。このシステムは、意図理解部を持つ。意図理解部は、入力発話を解析し、発話者がドメインにおけるどのような情報を知りたがっているか、すなわち発話者の意図を理解する。そのために意図理解部は、意図理解モデルと問題解決知識の記憶装置を持つ。意図理解モデルは、意図ごとに様々な言い方からなる文例を集めたものであり、発話文が含む単語及びその表現パターンが示す意図をデータベース化したものである。問題解決知識は、発話表現とその解決策との対応関係を集めたものである。
 このシステムでは、発話の意図を意図理解モデルにより理解し、その意図により、応答すべき問題を特定して、問題解決知識を検索してその問題に対する回答からなる応答を生成し、出力する。
特開2016-099381号公報
 しかし、特許文献1に開示されたシステム構成では、意図理解モデルを構築するためには様々な発話を収集し、各発話の意図を人手で付与しなければならないという問題がある。そのため、結局、各ドメインについて専用の意図理解モデルを構築する必要がある。また、特許文献1に開示されたシステムでは、応答としては単純な事実を与えればよいだけであるが、適切な対話を可能とするためには、各意図に対する応答候補を準備し、応答候補データベースとして準備しなければならない。しかもこの応答候補データベースもドメインごとに準備する必要がある。したがって、適切な応答を行うことができる対話システムを様々な分野において容易に構築するのは、特許文献1に開示された技術では行うことができない。すなわち、特許文献1に開示された技術では、ある特徴に特化して適切な応答を行える対話システムを構築するのは容易ではない。
 それゆえに本発明は、発話に対して適切な応答を行うことができる対話システムであって、さまざまな特徴に対応した対話を行えるものを提供することを目的とする。
 本発明の第1の局面に係る対話装置は、予め定められた一組の評価項目に関する基準値を設定するための基準値設定手段と、入力発話に対して複数の応答発話候補を生成するための応答発話候補生成手段と、複数の応答発話候補の各々について、一組の評価項目の各々に関する評価値を算出するための評価手段と、複数の応答発話候補の内、評価手段による評価値が基準値に対して予め定める関係にある応答発話候補を入力発話に対する応答発話として選択するための応答発話選択手段とを含む。
 好ましくは、一組の評価項目は、複数の項目を含み、評価手段は、発話が与えられると、当該発話が複数の項目に合致する度合いを示すスコアを複数の項目の各々について出力するように機械学習により学習済のモデルを用いるための判別手段を含む。
 より好ましくは、一組の評価項目は、当該一組の評価項目の値に対応して1点が定められる評価空間を定義し、応答発話選択手段は、評価空間内において、応答発話候補の内、対応する点が基準値により定められる点に最も近いものを入力発話に対する応答発話として選択するための手段を含む。
 さらに好ましくは、一組の評価項目は、複数の項目を含む第1の評価項目と、第1の評価項目とは独立な第2の評価項目とを含み、評価手段は、複数の応答発話候補の各々について、第1の評価項目の複数の項目の各々について評価値を算出するための第1の評価手段と、複数の応答発話候補の各々について、第2の評価項目について評価値を算出するための第2の評価手段とを含む。
 好ましくは、複数の項目は、複数の項目の値に対応して1点が定められる評価空間を定義し、応答発話選択手段は、評価空間内において、応答発話候補の内、対応する点が基準値により定められる点から一定の範囲内にあるものを抽出するための候補抽出手段と、候補抽出手段により抽出された応答発話候補の内、第2の評価項目による評価値が、基準値とは独立な基準を充足するものを応答発話として選択するための手段とを含む。
 本発明の第2の局面に係る対話システムは、上記したいずれかの対話装置と、複数の学習用テキストの各々を、一組の評価項目にしたがった評価値と関係づけて記憶するテキスト記憶装置と、テキスト記憶装置に記憶された複数の学習用テキストを学習データとして、入力発話が与えられると、一組の評価項目に関する評価値を推定し出力するよう、機械学習により評価手段の学習を行うための学習手段とを含む。
 本発明の第3の局面に係るコンピュータプログラムは、コンピュータを、上記したいずれかの装置の各手段として機能させる。
本発明の第1の実施の形態に係る対話システムの概略構成を示すブロック図である。 図1に示す大規模テキストデータベースに記憶されたテキスト例を示す図である。 図1に示すテキスト抽出・分類部を実現するコンピュータプログラムの制御構造を示すフローチャートである。 図3に示すテキスト抽出・分類部により分類された学習用テキストの構成を示す図である。 図1に示す感情判定モデルの概略構成を示す図である。 図1に示す会話文データベースに記憶された会話文の例を示す図である。 図1に示す応答発話候補選択部を実現するコンピュータプログラムの制御構造を示すフローチャートである。 図1に示す応答発話感情分析部を実現するコンピュータプログラムの制御構造を示すフローチャートである。 応答発話候補の感情スコアの例を示す図である。 ユーザが望む応答発話の傾向を設定するために入出力装置に表示されるダイアログボックスの例を示す図である。 図1に示す応答発話選択・生成部による応答発話選択の方法を説明するための、探索空間を示す模式図である。 応答発話選択・生成部を実現するコンピュータプログラムの制御構造を示すフローチャートである。 本発明の第2の実施の形態に係る対話システムの概略構成を示すブロック図である。 図13に示す特定サイトらしさ/ニュースらしさスコア算出部により算出される各文のスコア例を示す図である。 図13に示す応答発話選択・生成部を実現するコンピュータプログラムの制御構造を示すフローチャートである。 本発明の第3の実施の形態に係る対話システムの概略構成を示すブロック図である。 図16に示す応答発話感情分析部、特定サイトらしさスコア算出部及びニュースらしさスコア算出部により各文に対して算出されるスコア例を示す図である。 本発明の各実施の形態に係る対話システム実現するコンピュータの外観を示す図である。 図18に示すコンピュータのハードウェア構成を示すブロック図である。
 以下の説明及び図面では、同一の部品には同一の参照番号を付してある。したがって、それらについての詳細な説明は繰返さない。
 [第1の実施の形態]
 <構成>
 図1に、本発明の第1の実施の形態に係る対話システム40のブロック図を示す。図1を参照して、この対話システム40は、ウェブから収集した大量のテキストをそのURLとともに記憶した大規模テキストデータベース52と、予めこの大規模テキストデータベースから抽出された、評価項目としての一組の感情語を記憶した感情語辞書54と、後に感情語のいずれかが現れることが多い語(ここでは「接続語」と呼ぶ。)を記憶した接続語辞書56と、感情語辞書54に記憶された感情語の各々について、入力された文がそれらに合致するスコアを算出するよう、事前に機械学習済の感情判定モデル60と、大規模テキストデータベース52、感情語辞書54及び接続語辞書56を用いて感情判定モデル60の機械学習を行うためのモデル学習部58とを含む。
 図2を参照して、大規模テキストデータベース52には、多くのテキストが格納されている。図2に示す例文において、単語150、152、154、156及び158は何らかの感情を表す単語である。各単語の前に存在する単語130、132、134、136及び138は、これら感情語を導くために特徴的に使用される接続語である。最初に、後ろに感情語を伴うことが多い接続語を収集し、接続語辞書56に格納する。そして大規模テキストデータベース52から各接続語に後続する単語を集める。そうした単語が感情を表すものであれば感情語辞書54に格納し、そうでなければ捨てる。本実施の形態では、同根の感情語であっても語形が異なるものは別々の感情語とする。したがって感情語の数はかなり多くなる。
 再び図1を参照して、モデル学習部58は、感情語辞書54及び接続語辞書56を参照して、大規模テキストデータベース52から接続語辞書56に記憶された接続語のいずれかと、感情語辞書54に記憶された感情語のいずれかが連続して現れるテキストを抽出し、各テキストにそのテキストが含む感情語をラベルとして付して出力するテキスト抽出・分類部80と、テキスト抽出・分類部80から出力されるラベル付きのテキストを感情判定モデル60の学習用として記憶する学習用テキスト記憶部82と、学習用テキスト記憶部82に記憶された学習用テキストを用いて感情判定モデル60の学習を行う学習処理部84とを含む。
 本実施の形態では、テキスト抽出・分類部80は、コンピュータプログラムにより実現される。図3を参照して、このプログラムは、感情語辞書54から全ての感情語を読出すステップ200と、接続語辞書56から全ての接続語を読出すステップ202と、ステップ202で読出された先行する接続語と、ステップ200で読出された後続する感情語とからなる全ての単語列の組合せのいずれかを含むテキストを大規模テキストデータベース52から検索するための検索式を生成するステップ204と、ステップ204で生成された検索式を用いて大規模テキストデータベース52から条件を満たすテキストを全て抽出するステップ206と、ステップ206で抽出されたテキストの各々に対し、以下に説明する処理210を実行するステップ208とを含む。
 処理210は、処理対象となっているテキストの内、接続語の前までを抽出するステップ220と、ステップ220で抽出されたテキストに、検索された感情語をラベルとして付すステップ222と、ステップ220で抽出され、ステップ222で感情語のラベルが付されたテキストを学習データとして学習用テキスト記憶部82に格納するステップ224とを含む。
 図4に、図1に示す学習用テキスト記憶部82に格納されたテキストの集合を模式的に示す。図4を参照して、各テキストには感情語(嬉しい、悲しい、楽しい、しんどい)が付されている。これら感情語が後述するように応答発話を選択する際の評価項目となる。このラベルによりテキストはグループに分けられる。学習処理部84における感情判定モデル60の学習は、テキストが入力されると、そのテキストが学習用テキスト記憶部82に記憶されたテキストに付されたラベル(感情語)の各々について、そのラベルにより表される感情に合致するテキストである確率を出力するように行われる。ここでの確率は、そのテキストがそのラベルにより表される感情を表すものである「らしさ」を示す、すなわちその感情に合致する度合いを示すスコアと考えることができる。ラベルは複数個あり、確率はこれら各ラベルを排他的な評価項目として取り扱うことにより算出される。
 図5に感情判定モデル60の構成を概念的に示す。本実施の形態では、感情判定モデル60はコンボリューショナル・ニューラル・ネットワーク(CNN)からなる。感情判定モデル60は、入力されるテキストを構成する単語列が入力される複数個の入力240と、感情語辞書54に記憶された感情語の数だけの出力242とを持つ。本実施の形態では、入力される単語はいずれも、図示しない単語変換部により単語の識別子に変換され、入力240として与えられる。出力242の各々は感情語辞書54に記憶された感情語のいずれかに対応する。入力240に処理対象のテキストの単語列が与えられると、そのテキストが各感情語により表される感情に合致する確率が、各感情語に対応する出力に得られる。
 再び図1を参照して、対話システム40はさらに、大量の会話文を記憶した会話文データベース64と、入力発話62を受け、感情判定モデル60を用いて、会話文データベース64から入力発話62に対する適切な応答発話68を選択し出力する対話装置66とを含む。
 図6に、会話文データベース64に記憶された会話文の例を示す。会話文データベース64には、図6に示すような会話文が予め大量に収集され記憶されている。こうした会話文はどのようにして収集しても良いが、本実施の形態ではウェブ及びソーシャル・ネットワーキング・サービス上に存在する文を収集した。これら会話文は、そのテキストに基づいて検索可能となっている。
 再び図1を参照して、対話装置66は、入力発話62に応答して、会話文データベース64に記憶された応答発話から応答発話候補の文を生成(本実施の形態では選択)する応答発話候補選択部90と、応答発話候補選択部90により選択された応答発話候補を記憶する応答発話候補記憶部92と、応答発話候補記憶部92に記憶された各応答発話候補について、感情判定モデル60を参照して各感情の評価値である感情スコアを算出する応答発話感情分析部94と、応答発話を選択するための基準をユーザが設定する際に使用する入出力装置98と、入出力装置98により設定された応答発話選択の基準を記憶する応答発話選択基準記憶部100と、応答発話選択基準記憶部100に記憶された応答発話選択基準にしたがって、応答発話感情分析部94により算出されたスコアに基づいて、応答発話候補記憶部92に記憶された応答発話候補の1つを選択して応答発話68として出力する応答発話選択・生成部96とを含む。
 図1に示す応答発話候補選択部90は、本実施の形態では入力発話62に含まれる単語の内、最も重要な単語を抽出し、その単語を含む会話文を会話文データベース64から抽出する。重要な単語としては、例えばtf/idf値が最大のものを採用できる。応答発話候補選択部90は、本実施の形態ではコンピュータプログラムにより実現される。図7にそのコンピュータプログラムの制御構造をフローチャート形式で示す。
 図7を参照して、このプログラムは、入力発話62に含まれる内容語を抽出するステップ280と、ステップ280で抽出された内容語のいずれかを含む会話文を会話文データベース64から検索し抽出するステップ282と、ステップ282で抽出された会話文について、入力発話62の内容語と一致する内容語の数の多いものから順番に所定個数を選択するステップ284と、ステップ284で選択された会話文を応答発話候補として格納するステップ286とを含む。
 図1に示す応答発話感情分析部94も本実施の形態ではコンピュータプログラムにより実現される。図8を参照して、このプログラムは、応答発話候補記憶部92に記憶された応答発話候補の各々に対して以下に述べるスコア算出処理310を実行するステップ300を含む。
 スコア算出処理310は、処理対象の応答発話候補の感情スコアを算出する処理である。スコア算出処理310は、処理対象の応答発話候補を応答発話候補記憶部92から読出すステップ320と、ステップ320で読出された応答発話候補を構成する単語の各々を識別子に変換して連結することにより、感情判定モデル60への入力パラメータを作成するステップ322と、ステップ322により作成された入力パラメータを図5に示す感情判定モデル60の入力240に与えるステップ324と、ステップ324により与えられた入力パラメータに応答して感情判定モデル60の出力242に得られるスコアのベクトルの各要素(確率値)を、処理中の応答発話候補に対応するスコア配列に格納するステップ326とを含む。
 スコア配列は各応答発話候補に対応して準備される。したがって得られるこのスコア配列は2次元である。図9にスコア配列の例を示す。図9に示す例は、4つの応答発話候補の各々に対して算出された感情スコアを示している。例えば、応答発話候補「チョコレートを食べた」について算出された、「嬉しい」、「悲しい」、「楽しい」、及び「しんどい」という感情スコアはそれぞれ0.5、0.1、0.3及び0.1である。これらスコアは確率であるから、図9に示す各行のスコアを横に加えた値は1となる。
 図10は、図1に示す入出力装置98に表示される、応答発話選択の基準を設定するダイアログの例である。図10を参照して、このダイアログ340は、「嬉しい」、「悲しい」、「楽しい」、及び「しんどい」という4つの感情の各々について、0から1の範囲でスコアの基準値を設定するために、4つのシークバー360、362、364及び366を持つ。各シークバー360、362,364及び366はそれぞれサム370、372、374及び376を持ち、これらサムを左右に移動させることにより各感情に対するスコアの基準値を設定できる。なお、本実施の形態では、各スコアの合計は1という制約がある。したがって、例えばあるシークバーのサムを左右に移動させたときにはその値を1から引き、それを残りの3つの感情のそれまで設定されていた基準値に応じて各感情に配分する必要がある。したがって、あるサムを移動させると、そのたびに他のサムも左右に移動することになる。
 図11に、図1に示す応答発話選択・生成部96による応答発話の選択方法を示す。例えば3つの感情スコアを各評価項目の評価値と考えた場合、これら感情スコアを各軸に対応付けることにより、図11に示すような3次元の立方体により囲まれた評価のための空間(評価空間)を考えることができる。この評価空間では、応答発話のスコアごとに対応する1点が定義できる。さらに、応答発話選択基準記憶部100に記憶された基準値に応じ、この評価空間内に基準点390を定めることができる。応答発話選択・生成部96は、応答発話感情分析部94により各応答発話候補に対して計算されたスコアを座標として用いることにより、各応答発話候補をこの評価空間内の1点に割り当て、その点と基準点390との間のユークリッド距離(以下、単に「距離」という。)を計算する。そして、基準点390との間の距離が最も小さな応答発話候補を応答発話68として選択する。なお、本実施の形態では、計算時間を短縮するために、基準点390を中心とした所定の探索範囲392内にある応答発話候補のみを抽出して距離の計算対象とする。ここでは距離としてユークリッド距離を用いているが、一般的に距離が満たすべき数学的条件を満たす測度であればどのようなものを用いても良い。
 本実施の形態では、この応答発話選択・生成部96もコンピュータプログラムにより実現される。図12を参照して、このプログラムは、応答発話選択基準記憶部100から基準値を読出すステップ400と、探索範囲392を定めるステップ402とを含む。探索範囲392は、例えば各座標の値について基準値±αの範囲に定めることができる。αは本実施の形態では全ての座標について共通の定数値とする。しかし本発明はそのような実施の形態には限定されない。αを基準値の各座標値の例えば1/20等として座標別(感情別)に定めることもできる。又は、特定の座標については固定値とし、他の座標については基準値により変化させることもできる。
 このプログラムはさらに、感情スコアを構成する各値が、ステップ402で定めた探索範囲392内に存在する応答発話候補のみを応答発話候補記憶部92に記憶された候補から抽出するステップ404と、距離の最小値を記憶する変数にその変数の型で許容される最大数を代入するステップ406と、応答発話を表す変数に、予め定めたデフォルトの文を代入するステップ408と、ステップ404で抽出された応答発話候補の各々について以下に説明する処理412を実行することにより、基準点390からの距離が最小となる応答発話候補を選択するステップ410と、ステップ410で選択された応答発話候補を応答発話68として出力するステップ414とを含む。
 処理412は、処理対象の応答発話候補と、基準点390との距離を計算するステップ420と、ステップ420で計算された距離が、これまでに計算された最小値より小さいか否かを判定し、判定が否定なら現在の応答発話候補に対する処理412を終了するステップ422と、ステップ422の判定が肯定であれば、最小値にステップ420で計算された距離を代入し、応答発話を表す変数に処理中の応答発話候補を代入して処理412を終了するステップ424とを含む。
 [動作]
 以上に構成を説明した対話システム40は以下のように動作する。動作には2つのフェーズがある。第1はモデル学習部58による感情判定モデル60の学習フェーズであり、第2は対話装置66による対話動作フェーズである。
 〈学習フェーズ〉
 大規模テキストデータベース52には大量のテキストを格納し、データベース化する。また、接続語辞書56には予め接続語を格納しておき、感情語辞書54には接続語辞書56を用いて大規模テキストデータベース52から抽出した感情語を格納しておく。
 学習時、テキスト抽出・分類部80は、大規模テキストデータベース52から、接続語辞書56に記憶された接続語のいずれかと、感情語辞書54に記憶された感情語のいずれかが連続して現れるテキストを抽出し、各テキストにそのテキストが含む感情語をラベルとして付して出力する。学習用テキスト記憶部82は、これらラベル付きのテキストを記憶する。学習処理部84は、学習用テキスト記憶部82に記憶された学習用テキストを用いて感情判定モデル60の学習を行う。感情判定モデル60は前述したとおりCNNからなる。したがってこの感情判定モデル60の学習は、通常のニューラルネットワークと同様、誤差逆伝播方式により行える。こうして大規模テキストデータベース52に記憶された全てのテキストについて感情判定モデル60の学習が終わると、対話装置66による応答発話処理が可能になる。
 [対話動作フェーズ]
 会話文データベース64には予め大量の会話文を格納し、テキストに含まれる任意の文字列に基づいて検索できるようデータベース化しておく。また、実際に対話動作を行う前に、ユーザは入出力装置98を用いて、図10に示すようなダイアログ340を表示させ、応答の基準値を設定する。設定された基準値は応答発話選択基準記憶部100に記憶される。
 入力発話62が対話装置66の応答発話候補選択部90に与えられると、応答発話候補選択部90は、会話文データベース64から応答発話候補の会話文を選択する。具体的には、応答発話候補選択部90は、入力発話62から内容語を抽出し(図7、ステップ280)、その内容語を含む会話文を会話文データベース64から抽出する(ステップ282)。さらに応答発話候補選択部90は、入力発話62のうちで重要な単語を抽出し、それら会話文の内で、この重要な単語を含むものを応答発話候補として抽出し(ステップ284)、応答発話候補記憶部92に格納する(ステップ286)。
 応答発話感情分析部94は、応答発話候補記憶部92に記憶された各応答発話候補について、感情判定モデル60を参照して感情スコアを算出する。より具体的には、応答発話感情分析部94は、応答発話候補記憶部92に記憶された応答発話候補を読み(図8のステップ320)、感情判定モデル60への入力パラメータをその応答発話候補を構成する単語列から作成する(ステップ322)。この入力パラメータを感情判定モデル60の入力240(図5参照)に入力して感情判定モデル60の出力を待ち(ステップ324)、感情判定モデル60の出力242(図5参照)に得られるスコアのベクトルの各要素(確率値)を処理中の応答発話候補に対応するスコア配列に格納する(ステップ326)。この処理により、図9に示すような2次元配列が得られる。
 応答発話選択・生成部96は、応答発話選択基準記憶部100から基準値を読出す(図12、ステップ400)。応答発話選択・生成部96はさらに、この基準値に基づいてその基準値±αの範囲を図11に示す探索範囲392に決定する(ステップ402)。応答発話選択・生成部96は、図1に示す応答発話候補記憶部92に記憶された応答発話の内、応答発話感情分析部94に算出された感情スコアが探索範囲内392にあるもののみを抽出する(ステップ404)。さらに応答発話選択・生成部96は、距離の最小値を表す変数に、その変数のとり得る最大値を代入し(ステップ406)、応答発話を表す変数にデフォルト文を代入する(ステップ408)。
 応答発話選択・生成部96はさらに、ステップ404で抽出された各応答発話候補に対し、その応答発話候補と基準点390との間の距離を計算する(ステップ420)。この距離がこれまでに算出された最小値より小さければ(ステップ422でYES)、この距離を最小値に代入し、応答発話を表す変数にこの応答発話候補を代入して(ステップ424)、次の応答発話候補に処理を移す。ステップ422の判定が否定(ステップ422でNO)ならこの応答発話候補については何もせず、次の応答発話候補に処理を移す。
 こうして、全ての応答発話候補に対する処理412が終了すると、応答発話を表す変数には、図11に示す基準点390との距離が最も小さな応答発話候補が格納されている。応答発話選択・生成部96は、この応答発話候補を応答発話68(図1)として出力する(図12、ステップ414)。
 以上のようにこの実施の形態によれば、ユーザが設定した感情スコアの配列に最も近い応答発話候補が応答発話として選択される。そのため、ユーザが対話として楽しいものを望むときには「楽しい」という感情のスコアが大きくなるように図10に示すダイアログ340を用いて基準値を設定すれば、ユーザの望みに応じた楽しい会話を行うことができる。さらに、上記実施の形態では、感情語辞書54及び接続語辞書56を十分に準備することにより、感情語辞書54に記憶された感情語の範囲で任意の組合せを選び、対話装置66で選択できる。そのため、汎用性が極めて高い対話システムを得ることができる。
 [第2の実施の形態]
 上記第1の実施の形態では、対話における感情に焦点を当てている。しかし本発明はそのような実施の形態には限定されない。例えば、多数のユーザが多くの発言を行うようなサイトでは、そのサイト特有の発言スタイルが形成されていたり、特有の話題に焦点があった発言のみが行われていたりする。例えば2ch(登録商標)等が有名である。ユーザがこうしたサイトでの発言を読むことを好んでいる場合、対話でも同じような発言スタイルを採用したり、特定の話題に関する話題に焦点が当てられていたりすることを望む場合があり得る。この第2の実施の形態は、第1の実施の形態で採用されていた「感情」に代えて、こうした発話スタイルを基準にした対話を可能にする。特にこの実施の形態は、特定サイトでの発言スタイルに近い発言をし、かつ、そのような特定サイトらしさとは独立に、発言の内容として最近のニュースに関する話題を扱うような対話システムを提供する。
 図13を参照して、第2の実施の形態に係る対話システム430は、大規模テキストデータベース52と、特定サイト及びニュースサイトのURLを格納した特定サイト/ニュースURLリスト452と、第1の実施の形態と同様にCNNからなり、発話が特定サイトのいずれかから得られた確率とそれ以外のサイトから得られた確率とを出力する特定サイト判別モデル448と、特定サイト判別モデル448とは独立に、入力発話がニュース記事である確率とそれ以外のサイトから得られた確率とを出力するニュース判別モデル450と、大規模テキストデータベース52及び特定サイト/ニュースURLリスト452を用いて、特定サイト判別モデル448及びニュース判別モデル450の学習を行うモデル学習部440とを含む。すなわち、特定サイト判別モデル448は発話が特定サイトから得られたか否かを評価項目とするのに対し、ニュース判別モデル450は、発話がニュース記事であるか否かという、特定サイト判別モデル448の評価項目とは独立なことがらを評価項目としている。
 対話システム430はさらに、ウェブ上から、対話の入力文とその応答文とのペアを大量に収集しデータベース化して得た入力・応答データベース444と、入力発話442に応答して、特定サイト判別モデル448及びニュース判別モデル450を参照して、入力・応答データベース444に格納された入力・応答の内で、入力発話442に近い入力発話とペアになった応答発話であって、ユーザが設定した「特定サイトらしさ」に近い発話スタイルを持ち、かつニュースらしさとしては最も高いスコアを持つ応答発話を選択して応答発話454として出力する対話装置446とを含む。
 モデル学習部440は、特定サイト/ニュースURLリスト452を参照して、大規模テキストデータベース52に格納されたテキストを、特定サイトのURLから収集したテキストとそれ以外からのテキストとに分類した第1のテキスト集合、及びニュース記事であるテキストとそれ以外のテキストとに分類した第2のテキスト集合を作成し、出所を示すラベル(特定サイト/それ以外、ニュース記事/それ以外)を付して、それぞれ出力するテキスト分類部460と、第1のテキスト集合を記憶する第1の学習用テキスト記憶部462と、第2のテキスト集合を記憶する第2の学習用テキスト記憶部463と、第1の学習用テキスト記憶部462に記憶された学習用テキストを用いて特定サイト判別モデル448の学習を行うための第1の学習処理部464と、第2の学習用テキスト記憶部463に記憶されたテキストを用いてニュース判別モデル450の学習を行う第2の学習処理部465とを含む。
 特定サイト判別モデル448及びニュース判別モデル450はいずれも、図5に示す感情判定モデル60と基本的には同じ構成である。しかし、特定サイト判別モデル448の場合にはテキストが特定サイトのURL及びそれ以外のURL得られたものである確率をそれぞれ示す2つの出力を持つ点、ニュース判別モデル450の場合にはテキストがニュース記事である及びそれ以外である確率をそれぞれ示す2つの出力を持つ点でいずれも感情判定モデル60とは異なる。
 対話装置446は、入力発話442に応答して、入力・応答データベース444において、入力発話442に類似した入力発話を持つペアを検索し、検索されたペアの応答発話を応答発話候補として選択する応答発話候補選択部470と、応答発話候補選択部470により選択された応答発話候補を記憶する応答発話候補記憶部472と、応答発話候補記憶部472に記憶された応答発話候補の各々について、ニュース判別モデル450を参照してニュース記事である確率を算出し、ニュースらしさを示すスコアとして出力するニュースらしさスコア算出部474と、応答発話候補記憶部472に記憶された応答発話候補の各々について、特定サイト判別モデル448を参照して特定サイトのサイトから得られたものである確率を算出し、特定サイトらしさを示すスコアとして出力する特定サイトらしさスコア算出部475とを含む。応答発話候補選択部470による、類似した発話の検索には、例えば発話に含まれる単語からなる単語ベクトル間の類似度を用いたり、2つの発話の間の編集距離を用いたりすることが可能である。
 対話装置446はさらに、応答発話を選択するための基準を設定するためにユーザが用いる入出力装置478と、入出力装置478により設定された基準を記憶する応答発話選択基準記憶部480とを含む。本実施の形態では、応答発話の選択基準として設定できるのは特定サイトからの発話らしさのみである。ニュースらしさの選択基準はユーザにより設定されたものではなく、本実施の形態では最も高いもの、という基準を充足すること、というものである。
 対話装置446はさらに、特定サイトらしさスコア算出部475により計算された各応答発話候補の内で、特定サイトらしさのスコアがその基準値を中心とする所定範囲内にある応答発話候補のみを探索対象とし、その中でニュースらしさスコアが最高の応答発話候補を選択して応答発話454として出力する応答発話選択・生成部476を含む。
 図14に、ある応答発話候補の文について特定サイトらしさスコア算出部475により算出される特定サイトらしさのスコアとニュースらしさスコア算出部474により算出されるニュースらしさのスコアの例を示す。この例では、各スコアはそれぞれ別のモデルにより算出される。第1の実施の形態の場合と異なり、各文に対して算出されたスコアはそれぞれ0~1の範囲に分布する。したがってそれらの値を合計しても必ずしも1にはならず、0から2の範囲内の値となる点に注意が必要である。
 図15に、応答発話選択・生成部476を実現するコンピュータプログラムの制御構造をフローチャート形式で示す。図15を参照して、このプログラムは、応答発話選択基準記憶部480に記憶された基準値(特定サイトらしさのスコア)を読出すステップ490と、読出したスコアを中心とする所定範囲(基準値±α)を応答発話候補の探索範囲として定めるステップ492と、特定サイトらしさのスコアがステップ492で定められた探索範囲内にある応答発話候補のみを抽出するステップ494とを含む。
 このプログラムはさらに、ステップ494で抽出された応答発話候補を、ニュースらしさのスコアの降順でソートするステップ496と、ステップ496でソートされた応答発話候補の内で、先頭の応答発話候補を応答発話として選択し出力するステップ498とを含む。
 〈動作〉
 この第2の実施の形態に係る対話システム430は以下のように動作する。予め大規模テキストデータベース52及び入力・応答データベース444を準備しておくことは第1の実施の形態と同様である。この対話システム430にも動作フェーズは学習と対話との2つがある。
 学習フェーズでは、モデル学習部440のテキスト分類部460は、特定サイト/ニュースURLリスト452を参照しながら、大規模テキストデータベース52に記憶されたテキストを、特定サイトからのテキストとそれ以外のテキストに分類して第1のテキスト集合を作成し、第1の学習用テキスト記憶部462に格納する。テキスト分類部460はさらに、大規模テキストデータベース52に記憶されたテキストを、ニュース記事のテキスト及びそれ以外のテキストに分類して第2のテキスト集合を作成し、第2の学習用テキスト記憶部463に格納する。この際、各テキストにはその出所を示すラベル(特定サイト/それ以外、ニュース記事/それ以外)が付される。
 第1の学習処理部464は第1の学習用テキスト記憶部462に記憶されたテキストの集合を用いて特定サイト判別モデル448の学習を行う。第2の学習処理部465は、第2の学習用テキスト記憶部463に記憶されたテキストの集合を用いてニュース判別モデル450の学習を行う。この学習の結果、発話のテキストが与えられると、特定サイト判別モデル448はその発話が特定サイトからか否かを示す2つの確率を出力し、ニュース判別モデル450はその発話がニュース記事であるか否かを示す2つの確率を出力する。特定サイトからのテキストである確率が特定サイトらしさのスコアであり、ニュース記事のテキストである確率がニュースらしさのスコアである。
 特定サイト判別モデル448及びニュース判別モデル450の学習が終了すると、対話装置446による対話処理が可能になる。
 〈対話〉
 図13を参照して、入力発話442が与えられると、対話装置446の応答発話候補選択部470は、入力・応答データベース444に記憶されている入力・応答ペアの内、入力が入力発話442に類似しているものを所定個数検索し、対応する応答を応答発話候補として選択し応答発話候補記憶部472に格納する。
 ニュースらしさスコア算出部474は、応答発話候補記憶部472に記憶された各応答発話候補について、ニュース判別モデル450を用いてニュースらしさを算出する。特定サイトらしさスコア算出部475も同様に、各応答発話候補について、特定サイト判別モデル448を用いて特定サイトらしさを算出する。これらは各応答発話候補に関するスコアとして、図14に示すような2次元配列として記憶され応答発話選択・生成部476に与えられる。
 応答発話選択・生成部476は、応答発話選択基準記憶部480に記憶された特定サイトらしさの基準値を読出し(図15,ステップ490)、その基準値を中心とした基準値±αの範囲を応答発話候補の探索範囲に設定する(ステップ492)。応答発話選択・生成部476はさらに、探索範囲内の特定サイトスコアを持つ応答発話候補の中で(ステップ494)最もニュースらしさのスコアが高いものを選択し(ステップ496及び498)、応答発話454として出力する。
 本実施の形態では、異なる2つの評価項目を評価軸とし、一方の評価軸において設定された基準値に近い応答発話候補の内で、他方の評価軸で測定したスコアが最も高いものを応答発話として選択する。2つの評価軸の内、一方の評価軸に関する基準値を設定することだけが必要であって、基準値の設定が容易になるという効果がある。なお、本実施の形態では、説明を容易にするために、評価の軸を2つのみとした。しかし本発明はそうした実施の形態には限定されない。評価の軸を3つ以上とし、基準値を設定する軸を2つ以上、又は基準値を設定せずにスコアの高いものを選択する軸を2つ以上としてもよい。また、必ずしもスコアの高いものに限らず、任意の基準を充足するように基準を選択できる。例えばスコアが低いもの、予め設定した値に近いもの、探索範囲内にある応答発話候補のスコアの中央値を持つもの、又は平均値に近いもの等を選択するようにしてもよい。さらに、互いに独立にスコアが算出される複数の評価軸が存在する場合、各軸について独立に評価するのではなく、例えば第1の軸のスコアと第2の軸のスコアとの和(又は差、積、特定の関数の値等)が最大(又は最小)のものを選択する応用も可能である。なお、上記した応答発話選択・生成部476は、最初に探索範囲を決定した後、その探索範囲内でニュースらしさのスコアが最も高い応答発話候補を選択している。しかし本発明はそのような実施の形態には限定されず、最初にニュースらしさのスコアが高いものを選択した後、選択された応答発話候補の中で特定サイトらしさの基準値に最も近い応答発話候補を選択するようにしてもよい。
 [第3の実施の形態]
 第3の実施の形態は、上記第1の実施の形態と第2の実施の形態とを組合せたものである。図16を参照して、第3の実施の形態に係る対話システム510は、入力発話442が与えられると、第1の実施の形態で用いられた感情判定モデル60、並びに第2の実施の形態で用いられた特定サイト判別モデル448及びニュース判別モデル450を用いて、入力・応答データベース444に記憶された応答発話候補から、ユーザにより設定された基準値に最もよく合致するものを選択して応答発話528として出力する対話装置526を含む。
 対話装置526は、応答発話候補選択部470及び応答発話候補記憶部472と、ユーザが基準値を設定する際に使用する入出力装置550と、入出力装置550を用いて設定された基準値を記憶する応答発話選択基準記憶部552とを含む。本実施の形態では、第1の実施の形態で用いられた感情スコアと、第2の実施の形態で用いられた特定サイトらしさのスコア及びニュースらしさのスコアとを用いる。これらの内で、ユーザが設定可能なものはニュースらしさのスコア以外のものである。入出力装置550は、第1の実施の形態に関連して図10に示したものと同様のダイアログで基準値を入力するためのものである。本実施の形態では、感情スコアについては第1の実施の形態と同様、感情ごとのスコアの合計が1となるような入力が行われるが、特定サイトらしさのスコアはそれらとは独立に0~1の範囲で設定できるようにしておく必要がある。
 対話装置526はさらに、第1の実施の形態と同様の応答発話感情分析部94と、いずれも第2の実施の形態と同様のニュースらしさスコア算出部474及び特定サイトらしさスコア算出部475と、応答発話選択基準記憶部552に記憶された基準値に基づいて応答発話候補の探索範囲を設定し、応答発話候補記憶部472に記憶された応答発話候補の中で、探索範囲内にあり、かつニュースらしさのスコアが最も高いものを選択して応答発話528として出力する応答発話選択・生成部554とを含む。
 図17に、応答発話感情分析部94、ニュースらしさスコア算出部474、及び特定サイトらしさスコア算出部475により各応答発話候補に対して算出されたスコアの例を示す。この例でも、各文の感情スコアについては横に合計すると1になるが、特定サイトらしさスコア及びニュースらしさスコアはそれとは無関係にそれぞれ0~1の範囲内となる。
 この第3の実施の形態に係る対話装置526の対話時の動作については、第1及び第2の実施の形態から明らかであるので、ここでは繰返さない。
 上記実施の形態によれば、様々な基準を設定することで、その基準に最も合致した応答発話を対話の応答として出力できる。ユーザがそのニーズ又は望みに合わせて基準値を設定することにより、同じ対話システムを利用してユーザのニーズ又は望みに合わせて発話内容が変化する対話システムを得ることができる。
 なお、上記実施の形態では、感情スコア、特定サイトらしさ、及びニュースらしさを応答発話選択の基準軸に採用している。しかし本発明はそのような実施の形態には限定されない。これ以外に、例えば発話内容が前向き(ポジティブ)か後ろ向き(ネガティブ)か、他サイトに転載された記事中の発話か否か、論文かそれ以外か、教師による発話かそれ以外か、ある年代以前に書かれた文か否か、発話者の年代がどの程度か、等を評価軸に採用することも可能である。また、これらの評価の軸を互いに自由に組合せることもできる。
 上記実施の形態では、CNNによって学習したモデルを用いて出力したスコア(確率値)に基づいて応答発話候補を選択している。しかし本発明はそのような実施の形態には限定されない。例えば学習者用の対話装置のような場合には、教科書に出現している頻度が高い単語を含む応答発話候補を選択してもよい。
 また、応答発話候補を決めるにあたっては、上記した第1の実施の形態、又は第2及び第3の実施の形態で使用したものに限定されるわけではない。入力発話との間にある関係が存在することが高い応答発話候補を抽出できるものであれば既存のものも、将来利用可能になるものも含めてどのようなものを用いてもよい。
 なお、本実施の形態では、CNNへの入力として単語の識別子列を用いているが、本発明はそうした実施の形態には限定されず、例えば単語ベクトルの形で入力するようにしてもよい。
 [コンピュータによる実現]
 本発明の実施の形態に係る対話システム40、430及び510及びその構成要素は、いずれもコンピュータハードウェアと、そのコンピュータハードウェア上で実行されるコンピュータプログラムとによっても実現できる。図18はこのコンピュータシステム630の外観を示し、図19はコンピュータシステム630の内部構成を示す。
 図18を参照して、コンピュータシステム630は、メモリポート652及びDVD(Digital Versatile Disk)ドライブ650を有するコンピュータ640と、いずれもコンピュータ640に接続されたキーボード646と、マウス648と、モニタ642とを含む。
 図19を参照して、コンピュータ640は、メモリポート652及びDVDドライブ650に加えて、CPU(中央処理装置)656と、CPU656、メモリポート652及びDVDドライブ650に接続されたバス666と、起動プログラム等を記憶する読出専用メモリ(ROM)658と、バス666に接続され、上記対話システム40、430及び510の各部の機能を実現するプログラム命令、システムプログラム及び作業データ等を記憶するランダムアクセスメモリ(RAM)660と、ハードディスク654を含む。コンピュータシステム630はさらに、他端末との通信を可能とするネットワーク668への接続を提供するネットワークインターフェイス(I/F)644を含む。
 コンピュータシステム630を上記した実施の形態に係る対話システム40、430及び510並びにその各機能部として機能させるためのコンピュータプログラムは、DVDドライブ650又はメモリポート652に装着されるDVD662又はリムーバブルメモリ664に記憶され、さらにハードディスク654に転送される。又は、プログラムはネットワーク668を通じてコンピュータ640に送信されハードディスク654に記憶されてもよい。プログラムは実行の際にRAM660にロードされる。DVD662から、リムーバブルメモリ664から又はネットワーク668を介して、直接にRAM660にプログラムをロードしてもよい。
 このプログラムは、コンピュータ640を、上記実施の形態に係る対話システム40、430及び510の各機能部として機能させるための複数の命令からなる命令列を含む。コンピュータ640にこの動作を行わせるのに必要な基本的機能のいくつかはコンピュータ640上で動作するオペレーティングシステム若しくはサードパーティのプログラム又はコンピュータ640にインストールされる、ダイナミックリンク可能な各種プログラミングツールキット又はプログラムライブラリにより提供される。したがって、このプログラム自体はこの実施の形態のシステム、装置及び方法を実現するのに必要な機能全てを必ずしも含まなくてよい。このプログラムは、命令の内、所望の結果が得られるように制御されたやり方で適切な機能又はプログラミングツールキット又はプログラムライブラリ内の適切なプログラムを実行時に動的に呼出すことにより、上記したシステム、装置又は方法としての機能を実現する命令のみを含んでいればよい。もちろん、独立したプログラムのみで必要な機能を全て提供してもよい。
 今回開示された実施の形態は単に例示であって、本発明が上記した実施の形態のみに制限されるわけではない。本発明の範囲は、発明の詳細な説明の記載を参酌した上で、求の範囲の各請求項によって示され、そこに記載された文言と均等の意味及び範囲内での全ての変更を含む。
 この発明は、科学、工学、教育、製造業、サービス業など、質問に対して回答を与えることが有益な全ての産業に適用できる。
40、430、510 対話システム
52 大規模テキストデータベース
54 感情語辞書
56 接続語辞書
58、440 モデル学習部
60 感情判定モデル
62、442 入力発話
64 会話文データベース
66、446、526 対話装置
68、454、528 応答発話
80 テキスト抽出・分類部
82 学習用テキスト記憶部
84 学習処理部
90、470 応答発話候補選択部
92、472 応答発話候補記憶部
94 応答発話感情分析部
96、476、554 応答発話選択・生成部
98、478、550 入出力装置
100、480、552 応答発話選択基準記憶部
240 入力
242 出力
340 ダイアログ
390 基準点
392 探索範囲
444 入力・応答データベース
448 特定サイト判別モデル
450 ニュース判別モデル
452 特定サイト/ニュースURLリスト
460 テキスト分類部
462 第1の学習用テキスト記憶部
463 第2の学習用テキスト記憶部
464 第1の学習処理部
465 第2の学習処理部
474 ニュースらしさスコア算出部
475 特定サイトらしさスコア算出部

Claims (6)

  1. 予め定められた一組の評価項目に関する基準値を設定するための基準値設定手段と、
     入力発話に対して複数の応答発話候補を生成するための応答発話候補生成手段と、
     前記複数の応答発話候補の各々について、前記一組の評価項目の各々に関する評価値を算出するための評価手段と、
     前記複数の応答発話候補の内、前記評価手段による評価値が前記基準値に対して予め定める関係にある応答発話候補を前記入力発話に対する応答発話として選択するための応答発話選択手段とを含む、対話装置。
  2. 前記一組の評価項目は複数の項目を含み、
     前記評価手段は、発話が与えられると、当該発話が前記複数の項目に合致する度合いを示すスコアを前記複数の項目の各々について出力するように機械学習により学習済のモデルを用いるための判別手段を含む、請求項1に記載の対話装置。
  3. 前記一組の評価項目は、当該一組の評価項目の値に対応して1点が定められる評価空間を定義し、
     前記応答発話選択手段は、前記評価空間内において、前記応答発話候補の内、対応する点が前記基準値により定められる点に最も近いものを前記入力発話に対する応答発話として選択するための手段を含む、請求項1又は請求項2に記載の対話装置。
  4. 前記一組の評価項目は、複数の項目を含む第1の評価項目と、前記第1の評価項目とは独立な第2の評価項目とを含み、
     前記評価手段は、
     前記複数の応答発話候補の各々について、前記第1の評価項目の前記複数の項目の各々について評価値を算出するための第1の評価手段と、
     前記複数の応答発話候補の各々について、前記第2の評価項目について評価値を算出するための第2の評価手段とを含む、請求項1に記載の対話装置。
  5. 請求項1~請求項4のいずれかに記載の対話装置と、
     複数の学習用テキストの各々を、前記一組の評価項目にしたがった評価値と関係づけて記憶するテキスト記憶装置と、
     前記テキスト記憶装置に記憶された前記複数の学習用テキストを学習データとして、入力発話が与えられると、前記一組の評価項目に関する評価値を推定し出力するよう、機械学習により前記評価手段の学習を行うための学習手段とを含む、対話システム。
  6. コンピュータを、請求項1~請求項5の何れかに記載の各手段として機能させる、コンピュータプログラム。
PCT/JP2018/010231 2017-03-16 2018-03-15 対話システム、対話装置及びそのためのコンピュータプログラム WO2018169001A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2017051503A JP6804763B2 (ja) 2017-03-16 2017-03-16 対話システム、対話装置及びそのためのコンピュータプログラム
JP2017-051503 2017-03-16

Publications (1)

Publication Number Publication Date
WO2018169001A1 true WO2018169001A1 (ja) 2018-09-20

Family

ID=63523498

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2018/010231 WO2018169001A1 (ja) 2017-03-16 2018-03-15 対話システム、対話装置及びそのためのコンピュータプログラム

Country Status (2)

Country Link
JP (1) JP6804763B2 (ja)
WO (1) WO2018169001A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11361754B2 (en) * 2020-01-22 2022-06-14 Conduent Business Services, Llc Method and system for speech effectiveness evaluation and enhancement

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018167339A (ja) * 2017-03-29 2018-11-01 富士通株式会社 発話制御プログラム、情報処理装置及び発話制御方法
JP7126682B2 (ja) * 2018-05-11 2022-08-29 国立研究開発法人情報通信研究機構 対話システム及びそのコンピュータプログラム
JP7161361B2 (ja) * 2018-09-28 2022-10-26 大和ハウス工業株式会社 情報管理システム
WO2020111835A1 (ko) * 2018-11-28 2020-06-04 김훈 대화형 교육 시스템에 포함되는 사용자 장치와 교육 서버
KR102341634B1 (ko) * 2018-11-28 2021-12-22 김훈 대화형 교육 시스템에 포함되는 사용자 장치와 교육 서버
JP6599534B1 (ja) * 2018-11-30 2019-10-30 株式会社三菱総合研究所 情報処理装置、情報処理方法及びプログラム
KR102536372B1 (ko) * 2019-11-28 2023-05-26 김훈 대화형 교육 시스템에 포함되는 사용자 장치와 교육 서버

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06348761A (ja) * 1993-06-07 1994-12-22 Nippon Telegr & Teleph Corp <Ntt> 質問項目生成装置
JP2003006207A (ja) * 2001-06-18 2003-01-10 Nippon Telegr & Teleph Corp <Ntt> 質問回答方法、質問回答装置及び質問回答プログラム。
JP2005525642A (ja) * 2002-05-10 2005-08-25 エイジェントアーツ インコーポレイテッド リンクに重み付けされたアソシエーションルールに戻って転送されるエキスパートデータベース

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6220762B2 (ja) * 2014-10-28 2017-10-25 日本電信電話株式会社 次発話候補スコアリング装置、方法、及びプログラム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06348761A (ja) * 1993-06-07 1994-12-22 Nippon Telegr & Teleph Corp <Ntt> 質問項目生成装置
JP2003006207A (ja) * 2001-06-18 2003-01-10 Nippon Telegr & Teleph Corp <Ntt> 質問回答方法、質問回答装置及び質問回答プログラム。
JP2005525642A (ja) * 2002-05-10 2005-08-25 エイジェントアーツ インコーポレイテッド リンクに重み付けされたアソシエーションルールに戻って転送されるエキスパートデータベース

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11361754B2 (en) * 2020-01-22 2022-06-14 Conduent Business Services, Llc Method and system for speech effectiveness evaluation and enhancement

Also Published As

Publication number Publication date
JP6804763B2 (ja) 2020-12-23
JP2018156272A (ja) 2018-10-04

Similar Documents

Publication Publication Date Title
WO2018169001A1 (ja) 対話システム、対話装置及びそのためのコンピュータプログラム
CN110121706B (zh) 提供会话中的响应
JP5728527B2 (ja) 発話候補生成装置、発話候補生成方法、及び発話候補生成プログラム
Wen et al. Dynamic interactive multiview memory network for emotion recognition in conversation
CN110795913B (zh) 一种文本编码方法、装置、存储介质及终端
CN107944027A (zh) 创建语义键索引的方法及系统
WO2018169000A1 (ja) 対話システム及びそのためのコンピュータプログラム
CN111221962A (zh) 一种基于新词扩展与复杂句式扩展的文本情感分析方法
JP6076425B1 (ja) 対話インターフェース
CN108153831A (zh) 音乐添加方法及装置
JP6366749B2 (ja) 対話インターフェース
Kao et al. Model of multi-turn dialogue in emotional chatbot
Phan et al. Autoencoder for semisupervised multiple emotion detection of conversation transcripts
de Velasco et al. Emotion Detection from Speech and Text.
Chandiok et al. CIT: Integrated cognitive computing and cognitive agent technologies based cognitive architecture for human-like functionality in artificial systems
Miehle et al. Estimating user communication styles for spoken dialogue systems
Koren et al. Multimodal emotion analysis based on acoustic and linguistic features of the voice
Kumar et al. Comparison of various ml and dl models for emotion recognition using twitter
Irfan et al. Coffee with a hint of data: towards using data-driven approaches in personalised long-term interactions
Pillai et al. The People Moods Analysing Using Tweets Data on Primary Things with the Help of Advanced Techniques
Hoang et al. Emergent communication of multimodal deep generative models based on Metropolis-Hastings naming game
Tigunova et al. Exploring personal knowledge extraction from conversations with charm
JP6858721B2 (ja) コンテンツに関する対話を実施可能な対話制御装置、プログラム及び方法
Hattimare et al. Maruna Bot: An extensible retrieval-focused framework for task-oriented dialogues
Suraj et al. Conversational assistant based on sentiment analysis

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: 18766887

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 18766887

Country of ref document: EP

Kind code of ref document: A1