Response system, response method, and response program
The response system addresses user oversight in FAQ chatbots by aligning response phrasing with user input, improving comprehension and reducing cognitive load through dynamic sentence conversion.
Patent Information
- Application Number
- JP2021109960
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2021-07-01
- Publication Date
- 2025-01-17
- Estimated Expiration
- 2041-07-01
AI Technical Summary
Existing FAQ chatbot systems output predetermined responses that may be overlooked due to differences in phrasing, leading to user oversight.
A response system that acquires user questions, selects and converts response sentences based on the degree of similarity between words in the question and response sentences, using word vectors and similarity calculations to align phrasing.
Reduces user oversight by dynamically generating responses that match the user's phrasing, enhancing comprehension and reducing cognitive load.
Smart Images

Figure 0007615923000001 
Figure 0007615923000002 
Figure 0007615923000003
Abstract
Description
[Technical field]
[0001] The present disclosure relates to a response system, a response method, and a response program. [Background technology]
[0002] FAQ (Frequently Asked Question) chatbot systems have been introduced to improve the efficiency of responding to inquiries. Patent Document 1 discloses a technique for improving the response accuracy of an FAQ chatbot system by having the system learn user phrases in advance and automatically increasing the number of input patterns. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] JP 2019-204415 A Summary of the Invention [Problem to be solved by the invention]
[0004] However, in this technology, the response sentence itself is a predetermined sentence, so even if the response is correct, there is a possibility that the user may overlook the response due to differences in wording.
[0005] The present disclosure has been made to solve such problems, and aims to provide a response system, a response method, and a response program that can reduce user oversights. [Means for solving the problem]
[0006] The response system in this embodiment is An acquisition means for acquiring a question sentence from a user; a response sentence selection means for selecting a response sentence prestored in a storage means in response to the acquired question sentence; a response sentence conversion means for converting the selected response sentence in accordance with the question sentence; an output means for outputting the converted response sentence; Equipped with The response sentence conversion means The words included in the response sentence are converted into the words included in the question sentence based on the similarity between the selected words included in the response sentence and the words included in the question sentence.
[0007] The response method in this embodiment is as follows: The computer obtaining a user's question; selecting a response sentence pre-stored in a storage means in response to the acquired question sentence; converting the selected response sentence in response to the question sentence; outputting the converted response sentence; Including, The converting step includes: The words included in the response sentence are converted into the words included in the question sentence based on the similarity between the selected words included in the response sentence and the words included in the question sentence.
[0008] The response program in this embodiment is On the computer, A response program for executing a response method, The response method includes: obtaining a user's question; selecting a response sentence pre-stored in a storage means in response to the acquired question sentence; converting the selected response sentence in response to the question sentence; outputting the converted response sentence; Including, The converting step includes: The words included in the response sentence are converted into the words included in the question sentence based on the similarity between the selected words included in the response sentence and the words included in the question sentence. Effect of the Invention
[0009] The present disclosure makes it possible to provide a response system, a response method, and a response program that can reduce user oversight. [Brief description of the drawings]
[0010] [Figure 1] 1 is a block diagram showing a configuration of a response system according to a first embodiment. [Diagram 2] 5 is a flowchart showing an operation of the response system according to the first embodiment for analyzing a question sentence. [Diagram 3] 3 is a schematic diagram showing an operation of the response system according to the first embodiment for converting a response sentence. FIG. [Figure 4] 4 is a schematic diagram showing an operation of the response system according to the first embodiment for converting a response sentence based on a history of question sentences. FIG. [Diagram 5] FIG. 13 is a block diagram showing a configuration of a response system according to a modified example of the first embodiment. [Figure 6] 13 is a schematic diagram showing an operation of the response system according to the modified example of the first embodiment for determining a defect in a sentence. FIG. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0011] EMBODIMENT 1 The present invention will be described below through embodiments of the invention, but the invention according to the claims is not limited to the following embodiments. Furthermore, not all of the configurations described in the embodiments are necessarily essential as means for solving the problems.
[0012] Hereinafter, a response system according to an embodiment will be described with reference to the drawings. The response system according to the first embodiment is an FAQ chatbot system that outputs a response sentence to a question sentence from a user. The FAQ chatbot system is a system that searches a DB (Data Base) consisting of pairs of question sentences and answer sentences, and presents an appropriate response sentence. The response sentence may include only the answer sentence, or may include both the question sentence and the answer sentence. It is assumed that the pair of question sentence and answer sentence is created in advance by an administrator or an operator.
[0013] 1 is a block diagram showing a configuration of a response system 1000 according to the first embodiment. The response system 1000 includes a terminal 100 and a server 200. The terminal 100 and the server 200 are connected to each other via a network N. The network N may be wired or wireless.
[0014] Each function of the server 200 described later may be provided on the terminal 100 side. A system that does not include the server 200 and in which processing is completed within the terminal 100 may also be included in the response system according to the first embodiment.
[0015] The terminal 100 is a terminal operated by a user who uses the response system 1000. The terminal 100 may be a personal computer (PC) or a smartphone. The terminal 100 may also be a robot such as a communication robot.
[0016] The terminal 100 includes an input device 110 for a user to input a question, a display device 120 such as a display, and a control unit 130. The input device 110 may be a device for inputting text (e.g., a mouse, a keyboard, a touch panel) or a device for inputting voice (e.g., a microphone). A response to the user's question is displayed on the display device 120. The terminal 100 may output a voice response corresponding to the user's question. In such a case, the terminal 100 may not include the display device 120. The control unit 130 includes a processor, a memory, and the like. The control unit 130 acquires the question input to the input device 110, transmits it to the server 200, and causes the display device 120 to display the response output by the server 200.
[0017] The server 200 includes a storage unit 210 and a control unit 220. The storage unit 210 is a storage device such as a hard disk or a flash memory. The storage unit 210 stores an FAQ-DB 211 that stores a plurality of pairs of question sentences and answer sentences. The storage unit 210 is also referred to as an agent information storage unit. The question sentences and answer sentences are assumed to be respectively represented in advance as vectors. The FAQ-DB 211 stores, for example, the text of the question sentence, the text of the answer sentence, the word vectors of each of the words included in the question sentence, and the word vectors of each of the words included in the answer sentence.
[0018] The storage unit 210 may further store a word vector dictionary (not shown) used for analyzing a question sentence, etc. The storage unit 210 further stores a response program (not shown) for responding to a user's question sentence.
[0019] The control unit 220 includes a processor and a memory. The processor executes a response program, causing the control unit 220 to operate as an acquisition unit 221, an analysis unit 222, a response sentence selection unit 223, a response sentence conversion unit 224, and an output unit 225.
[0020] The acquisition unit 221 is a module that acquires a user's question input to the terminal 100. The acquisition unit 221 is also referred to as a speech acquisition unit for acquiring the user's speech. The user's question is input, for example, via a chat interface. The question may be input by voice or may be input as text. However, in the case of a voice interface, it is necessary to perform voice recognition and convert the input voice information into text.
[0021] The analysis unit 222 is a module for analyzing the acquired question sentence and calculating the score of each of the multiple question sentences stored in the FAQ-DB 211. The score is used when the response sentence selection unit 223 described later selects a response sentence. The operation of the analysis unit 222 will be described in detail later.
[0022] The response sentence selection unit 223 selects a response sentence pre-stored in the FAQ-DB 211 according to the acquired question sentence. In other words, the response sentence selection unit 223 is a module that selects a response sentence to be output by each agent according to the score calculated by the analysis unit 222. The response sentence selection unit 223 may select the question sentence with the highest score and its answer sentence as a response sentence based on the score calculated by the analysis unit 222. The response sentence selection unit 223 can also select multiple response sentences and determine the priority order of each.
[0023] The response sentence conversion unit 224 is a module for replacing words included in the response sentence selected by the response sentence selection unit 223 with words included in the question sentence acquired by the acquisition unit 221. The operation of the response sentence conversion unit 224 will be described in detail later.
[0024] The output unit 225 is a means for outputting the converted response sentence to the terminal 100. The output unit 225 is also referred to as a screen display unit. In other words, the output unit 225 is a module for displaying the response sentence of each agent on the display device 120 of the terminal 100. The output unit 225 may output the user's question sentence together with the response sentence. As described above, the response sentence may include only an answer sentence, or may include both a question sentence and an answer sentence. The output unit 225 may display a plurality of response sentences according to their respective priorities. In addition, the output unit 225 may output the response sentence by voice to a speaker (not shown) of the terminal 100.
[0025] As described above, some or all of the functions of the control unit 220 may be provided on the terminal 100 side. Also, the storage unit 210 may be provided on the terminal 100 side. Therefore, the response system 1000 does not need to include the server 200.
[0026] Next, the operation of the analysis unit 222 will be described in detail with reference to Fig. 2. It is assumed that the analysis unit 222 receives a question sentence that has been converted into text. First, the analysis unit 222 formats the question sentence into text (step S101). Specifically, the analysis unit 222 standardizes the full-width / half-width characters included in the question sentence and replaces specific words.
[0027] Next, the analysis unit 222 divides the formatted question sentence into a plurality of words (step S102). The word division is implemented by a known technique such as the Viterbi algorithm or LSTM (Long short-term memory).
[0028] Next, the analysis unit 222 converts each divided word into a word vector using the word vector dictionary 212 created in advance (step S103). In this way, the analysis unit 222 acquires the word vectors of the words included in the question sentence. The word vector dictionary 212 may be implemented using known techniques such as CBOW (Continuous Bag Of Words), Skip-gram, or GloVe (Global Vectors), which is an advanced version of these. Note that the analysis unit 222 does not need to convert all parts of speech into vectors, and may convert only nouns and verbs, for example, into vectors.
[0029] Next, the analysis unit 222 calculates a sentence vector of the question sentence from the list of word vectors (step S104). The sentence vector may be calculated by taking an average of the word vectors or by using a DNN (Deep Neural Network) such as LSTM based on the word vectors.
[0030] Next, the analysis unit 222 calculates a score indicating the similarity between the sentence vector of the question sentence stored in the FAQ-DB 211 and the sentence vector of the user's question sentence (step S105). The FAQ-DB 211 stores a text 2111a of the question sentence 2111 and a word vector 2111b of each of one or more words included in the question sentence 2111. The FAQ-DB 211 also stores a text 2112a of the answer sentence 2112 and a word vector 2112b of each of one or more words included in the answer sentence 2112. Therefore, the sentence vector of the stored question sentence 2111 can be calculated based on the word vector 2111b in the same manner as the sentence vector of the user's question sentence. The calculated sentence vector may be stored in the FAQ-DB 211 in advance.
[0031] The score is calculated, for example, by calculating the cosine distance between the sentence vectors. The score may also be calculated using a machine learning classification model such as a Support Vector Machine (SVM) or a Convolutional Neural Network (CNN). The score may be a classification probability in the machine learning classification model.
[0032] Thereafter, the analysis unit 222 passes the calculated score and the information on the corresponding response sentence to the next process. The calculated score is used by the response sentence selection unit 223 when selecting a response sentence.
[0033] Next, the operation of the response sentence conversion unit 224 in Fig. 1 will be described in detail. The response sentence conversion unit 224 uses the word vector of each word extracted by the analysis unit 222 to calculate the similarity between the words included in the user's question sentence and the words included in the response sentence selected by the response sentence selection unit 223. Specifically, the response sentence conversion unit 224 calculates the similarity between each word included in the response sentence and each word included in the user's question sentence. The similarity between words may be the cosine distance between the word vectors.
[0034] As described above, the response sentence may include both a question sentence and an answer sentence. Therefore, the response sentence conversion unit 224 may calculate the similarity between the words included in the selected response sentence and the words included in the user's question sentence, and may also calculate the similarity between the words included in the selected question sentence and the words included in the user's question sentence. The response sentence conversion unit 224 does not need to convert all parts of speech, and may convert only nouns and verbs. Here, parts of speech such as adjectives may also be converted.
[0035] Next, the response sentence conversion unit 224 determines the word that is most similar to each word included in the response sentence from among the words included in the user's question sentence. In other words, the response sentence conversion unit 224 extracts a combination of a word included in the response sentence and a word that has the highest similarity to the word. Then, the response sentence conversion unit 224 determines whether the similarity is equal to or greater than a threshold. If the similarity is equal to or greater than the threshold, the response sentence conversion unit 224 converts each of the words included in the response sentence into the determined word.
[0036] Next, the operation of the response sentence conversion unit 224 will be specifically described with reference to Fig. 3. Here, a case where the user's question is "Where is the operation manual?" will be described. It is assumed that the response sentence selection unit 223 has already selected the response sentence "The instruction manual is here."
[0037] In such a case, the user's question is divided into words "operation", "manual", "wa", "doko" and "?". When nouns and verbs are the conversion candidates, the nouns "operation", "manual", and "doko" become the conversion candidates. The selected response sentence is then divided into words "instruction manual", "wa", "kore" and "desu". In the response sentence, the nouns "instruction manual" and "kore" become the conversion candidates.
[0038] The response sentence conversion unit 224 calculates the similarity between the conversion candidates "instruction manual" and "here" included in the response sentence and the conversion candidates "operation", "manual", and "where" included in the user's question sentence. Here, it is assumed that the similarity between "operation" and "instruction manual" is 0.6, the similarity between "manual" and "instruction manual" is 0.9, and the similarity between "where" and "instruction manual" is 0.2. It is also assumed that the similarity between "operation" and "here" is 0.2, the similarity between "manual" and "here" is 0.3, and the similarity between "where" and "here" is 0.6.
[0039] In such a case, the response sentence conversion unit 224 determines "manual" as the word having the highest similarity to the "instruction manual" of the response sentence. Then, the response sentence conversion unit 224 determines that the similarity between the "instruction manual" and the "manual" is 0.9, which is equal to or greater than a threshold value (e.g., 0.8). Therefore, the response sentence conversion unit 224 converts (replaces) the "instruction manual" of the response sentence with the "manual" of the user's question sentence.
[0040] The response sentence conversion unit 224 also determines "where" as the word with the highest similarity to "here" in the response sentence. The response sentence conversion unit 224 then determines that the similarity between "here" and "where" is 0.6, which does not exceed a threshold value (for example, 0.8). Therefore, the response sentence conversion unit 224 does not convert (replace) "here" in the response sentence with "where" in the user's question sentence.
[0041] As a result, the response sentence conversion unit 224 converts the selected response sentence, "The procedure manual is here" to "The manual is here." Since the response sentence contains the "manual" that the user input when asking the question, it is possible to reduce user oversight.
[0042] The response sentence conversion unit 224 may further convert the response sentence by taking into account the user's past question history. In other words, the response sentence conversion unit 224 may further convert the words included in the response sentence based on the similarity between the words included in the selected response sentence and the words extracted from the user's past question history. By converting the words included in the response sentence into words that the user normally uses, it is possible to further reduce the user's oversight.
[0043] The response sentence conversion unit 224 creates a list of words included in the history, calculates the similarity between each word included in the list and each word included in the selected response sentence, and converts the words based on the similarity. Here, if the question sentence history contains many words, it may be difficult to calculate the similarity. In such a case, the response sentence conversion unit 224 may extract some of the words included in the list and use them as conversion candidates.
[0044] A method of using a user's past question history will be described with reference to FIG. 4. It is assumed that a plurality of users use the response system 1000 on a daily basis, and a question history for each user is accumulated (step S201). The response sentence conversion unit 224 creates a list by extracting words (e.g., nouns and verbs) contained in the question history (step S202). For example, the list of user A contains many words including "operation," "manual," "where," and "URL."
[0045] The response system 1000 can calculate the similarity between the words included in the list of user A and the words included in the response sentence to user A, and convert the words in the response sentence based on the similarity. If the list contains many words, the process may proceed to step S203.
[0046] The response sentence conversion unit 224 generates a vocabulary vector based on the list (step S203). The vocabulary vector is calculated by taking the average (for example, simple average) of the word vectors of multiple words included in the list with reference to the word vector dictionary. Then, the response sentence conversion unit 224 extracts N words (N is an integer equal to or greater than 1) that have a high similarity (for example, cosine distance) with the vocabulary vector from the words included in the list (step S204). Note that a word that has a high similarity with the vocabulary vector means a word that has a high similarity between the word vector and the vocabulary vector. For example, N words including "operation", "manual", "control", and "address" are extracted from the list of user A.
[0047] As a result, words around the vocabulary vector are extracted from the list. The vocabulary vector is a vector obtained by averaging a number of words included in the list. Therefore, the words around the vocabulary vector are considered to be words that the user regularly uses. Note that the extraction of words may be performed based on the frequency of use of each word. The response system 1000 can convert the response sentence using the extracted N words.
[0048] The response system according to the first embodiment converts words contained in a response sentence into words used in a question sentence. The response system according to the first embodiment uses words contained in a question sentence, thereby reducing user oversight due to differences in wording. In addition, the response system according to the first embodiment can reduce the cognitive load on the user.
[0049] When checking a response text, the question text entered by the user remains strongly in the user's memory. Therefore, converting the response text using words contained in the question text is considered to be advantageous in reducing the user's oversight.
[0050] The response system according to the first embodiment dynamically generates a response sentence that matches the user's wording. Therefore, it is not necessary to prepare in advance a template of an answer sentence with a different wording and a pattern of a question sentence. In addition, the response system according to the first embodiment changes the content of the response according to the user's question, so that a mechanical impression is alleviated and a natural dialogue interaction can be realized.
[0051] In addition, the response system according to the first embodiment can further convert the words included in the response sentence by utilizing the history of the user's question sentence. Since the words included in the response sentence can be converted according to the characteristics of the user, the response system according to the first embodiment can further reduce the user's oversight.
[0052] Variation 1 The response system according to the first embodiment may output a sentence that is not grammatically correct. In the specific example shown in Fig. 3, if "here" is replaced with "where", the response sentence "Where is the manual" will be output. To prevent this, it is possible to evaluate the validity of the sentence, that is, the grammatical correctness, after the words are replaced.
[0053] Fig. 5 is a block diagram showing the configuration of a response system 1000a according to a modified example. Comparing Fig. 1 with Fig. 5, a determination unit 226 is added to the control unit 220 of the server 200 in Fig. 5. The determination unit 226 determines whether or not the response sentence converted by the response sentence conversion unit 224 has a defect.
[0054] The response sentence conversion unit 224 outputs the converted response sentence to the determination unit 226 and receives the determination result. If a defect is detected, the response sentence conversion unit 224 cancels at least a part of the conversion of words in the response sentence. For example, the response sentence conversion unit 224 may cancel the conversion of N words (N is an integer equal to or greater than 1) that have a low similarity out of the multiple converted words. If no defect is detected, the response sentence conversion unit 224 does not cancel the conversion of words in the response sentence, but outputs them as is.
[0055] The determination unit 226 may detect defects in a response sentence using a deep learning model such as CNN or RNN. The determination unit 226 may also detect defects using n-grams that represent the occurrence probability of adjacent words.
[0056] FIG. 6 is a schematic diagram showing a method for detecting defects in a response sentence using a deep learning model. N1 to N9 represent nodes of a neural network. N1 to N4 represent input layer nodes, N5 to N7 represent intermediate layer nodes, and N8 to N9 represent output layer nodes. "Manual", "wa", "kore", and "desu" that constitute the response sentence are input to N1 to N4. N8 to N9 correspond to the establishment of the response sentence and the non-establishment of the response sentence, respectively. The neural network consisting of N1 to N9 can output the probability that the converted response sentence is established (hereinafter also referred to as the probability of establishment) and the probability that the converted response sentence is not established (hereinafter also referred to as the probability of non-establishment).
[0057] When the probability of success exceeds the probability of failure, the response sentence conversion unit 224 does not cancel the conversion of words in the response sentence and outputs it as is. On the other hand, when the probability of success is equal to or less than the probability of failure, the response sentence conversion unit 224 performs a process of canceling at least a part of the conversion of words.
[0058] Next, the effects of the response system according to the modified example of the first embodiment will be described. When a response sentence is converted, there is a possibility that the response sentence will not be valid as a sentence. The response system according to the modified example of the first embodiment can determine defects in the response sentence before outputting the response sentence, and output an appropriate response sentence.
[0059] In the above embodiment, the present disclosure has been described as a hardware configuration, but is not limited to this. Any process in the present disclosure can be realized by causing a CPU to execute a computer program.
[0060] In the above examples, the program includes instructions (or software code) that, when loaded into a computer, cause the computer to perform one or more functions described in the embodiments. The program may be stored in a non-transitory computer-readable medium or a tangible storage medium. By way of example and not limitation, the computer-readable medium or tangible storage medium includes random-access memory (RAM), read-only memory (ROM), flash memory, solid-state drive (SSD) or other memory technology, CD-ROM, digital versatile disc (DVD), Blu-ray® disk or other optical disk storage, magnetic cassette, magnetic tape, magnetic disk storage or other magnetic storage device. The program may be transmitted on a transitory computer-readable medium or communication medium. By way of example and not limitation, the transitory computer-readable medium or communication medium includes electrical, optical, acoustic, or other forms of propagated signals.
[0061] The present invention is not limited to the above-described embodiment, and can be modified as appropriate without departing from the spirit and scope of the present invention. [Explanation of symbols]
[0062] 1000, 1000a Response System 100 devices 110 Input Device 120 Display device 130 Control section 200 Servers 210 Storage section 211 FAQ-DB 2111 Question 2111a Text 2111b Word Vector 2112 Answer text 2112a Text 2112b Word Vector 212 word vector dictionary 220 Control section 221 Acquisition Department 222 Analysis Department 223 Response selection section 224 Response Text Conversion Unit 225 Output section 226 Judgment section N Network
Claims
1. An acquisition means for acquiring a question sentence from a user; a response sentence selection means for selecting a response sentence prestored in a storage means in response to the acquired question sentence; a response sentence conversion means for converting the selected response sentence in accordance with the question sentence; an output means for outputting the converted response sentence; Equipped with The response sentence conversion means converting the words included in the response sentence into the words included in the question sentence based on a similarity between the selected words included in the response sentence and the words included in the question sentence; The response sentence conversion means further converting the words included in the selected response sentence based on a similarity between the words included in the selected response sentence and words extracted from a history of past questions of the user; Response system.
2. The response system comprises: A determination means for determining whether or not there is a defect in the converted response sentence; The response system of claim 1 further comprising:
3. The response sentence conversion means generating a vocabulary vector by averaging word vectors of a plurality of words included in the history, and extracting words having a high similarity to the vocabulary vector from the history; 2. The response system of claim 1.
4. The response sentence conversion means determining, from among the words contained in the user's question, the words that have the highest similarity to each word contained in the response sentence; if the similarity is equal to or greater than a threshold, converting each of the words to the determined word; 4. A response system according to any one of claims 1 to 3.
5. The computer obtaining a user's question; selecting a response sentence pre-stored in a storage means in response to the acquired question sentence; converting the selected response sentence in response to the question sentence; outputting the converted response sentence; Including, The converting step includes: converting the words included in the response sentence into the words included in the question sentence based on a similarity between the selected words included in the response sentence and the words included in the question sentence; The converting step includes: further converting the words included in the selected response sentence based on a similarity between the words included in the selected response sentence and words extracted from a history of past questions of the user; How to respond.
6. On the computer, A response program for executing a response method, The response method includes: obtaining a user's question; selecting a response sentence pre-stored in a storage means in response to the acquired question sentence; converting the selected response sentence in response to the question sentence; outputting the converted response sentence; Including, The converting step includes: converting the words included in the response sentence into the words included in the question sentence based on a similarity between the selected words included in the response sentence and the words included in the question sentence; The converting step includes: further converting the words included in the selected response sentence based on a similarity between the words included in the selected response sentence and words extracted from a history of past questions of the user; Response program.
Citation Information
Patent Citations
Answer sentence preparing device and method and program therefor
JP2003242086A
Device and method for answer sentence generation, and program and storage medium thereof
JP2007102104A
Dialog system and computer program thereof
JP2019197498A
Wording generation method, wording device and program
JP2019204415A
Synonym determination method, synonym determination program and synonym determination device
JP2020154668A