WO2020031242A1 - 評価プログラム、評価方法および情報処理装置 - Google Patents
評価プログラム、評価方法および情報処理装置 Download PDFInfo
- Publication number
- WO2020031242A1 WO2020031242A1 PCT/JP2018/029471 JP2018029471W WO2020031242A1 WO 2020031242 A1 WO2020031242 A1 WO 2020031242A1 JP 2018029471 W JP2018029471 W JP 2018029471W WO 2020031242 A1 WO2020031242 A1 WO 2020031242A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- information
- question
- word
- faq
- evaluation
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/332—Query formulation
- G06F16/3329—Natural language query formulation or dialogue systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2452—Query translation
- G06F16/24522—Translation of natural language queries to structured queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/02—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail using automatic reactions or user delegation, e.g. automatic replies or chatbot-generated messages
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/268—Morphological analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/284—Lexical analysis, e.g. tokenisation or collocates
Definitions
- the present invention relates to an evaluation program, an evaluation method, and an information processing device.
- manned systems such as call centers that accept and respond to inquiries from end users such as mail order sales, online sales, and online games, and inquiries from managers such as system failures by telephone or e-mail have been used.
- a computer-based chat-type FAQ (Frequently Asked Questions) system is used in order to be able to respond to inquiries from end users, managers, and the like even outside office hours.
- a technique is known in which a morphological analysis of a question sentence input by a questioner is performed, a noun or the like is returned to the questioner as a deficiency, and an answer corresponding to the information after the supplement is selected and responded. .
- One object of the present invention is to provide an evaluation program, an evaluation method, and an information processing device capable of improving the accuracy of an inquiry to a questioner regarding supplementation of a question sentence.
- the evaluation program causes the computer to execute a process of receiving the question information.
- the evaluation program causes the computer to execute a process of converting a word included in the received question information into a word vector including a plurality of element values respectively associated with a plurality of elements.
- the evaluation program refers to a storage unit that stores specific information that specifies the strength of a specific meaning included in the element value associated with the element in association with the element, and uses the specific information to store the word vector in the word vector.
- the computer is configured to execute a process of acquiring a plurality of pieces of semantic information indicating the strength of the specific meaning included in each of the included element values.
- the evaluation program causes a computer to execute a process of evaluating the received question information based on the acquired plurality of pieces of semantic information.
- FIG. 1 is a diagram illustrating an FAQ system according to the first embodiment.
- FIG. 2 is a functional block diagram illustrating the functional configuration of the FAQ response device according to the first embodiment.
- FIG. 3 is a diagram illustrating an example of information stored in the FAQ list DB.
- FIG. 4 is a diagram illustrating an example of the chatbot screen.
- FIG. 5 is a diagram illustrating an example of calculating a polarity value.
- FIG. 6 is a diagram illustrating an example of evaluating a question sentence.
- FIG. 7 is a diagram illustrating a specific example of evaluation of a question sentence.
- FIG. 8 is a diagram illustrating a process from accepting a question to evaluating a question sentence.
- FIG. 9 is a diagram for explaining from an additional inquiry to a response.
- FIG. 10 is a flowchart showing the flow of the processing.
- FIG. 11 is a diagram illustrating an example of a coefficient calculation method.
- FIG. 12 is a diagram illustrating an example of
- FIG. 1 is a diagram illustrating an FAQ system according to the first embodiment.
- the FAQ system is a system in which a user terminal 1 and an FAQ response device 10 are connected via a network N.
- This FAQ system is a system in which an FAQ response device 10 receives a question sentence from a user terminal 1 in a chat format and responds to the user terminal 1 with an answer to the question sentence.
- Examples of the question text include questions from end users such as mail-order sales, online sales, and online games, and questions from managers such as system failures.
- the network N may employ various communication networks such as the Internet and a dedicated line, regardless of whether it is wired or wireless.
- the user terminal 1 is an example of a computer device used by a user, and is, for example, a personal computer or a smartphone.
- the user terminal 1 accesses the FAQ response device 10 using a Web browser or a dedicated application, and inputs a question sentence and obtains an answer.
- the FAQ response device 10 is an example of a computer device that answers a question sentence input from the user terminal 1, and stores an FAQ list in which questions and answers are associated with each other.
- the FAQ response device 10 Upon receiving access from the user terminal 1, the FAQ response device 10 displays a chatbot screen, which is an example of a chat-type Web screen, on the user terminal 1. Then, the FAQ response device 10 outputs a message such as “What kind of business is it?” On the chatbot screen, and accepts a question sentence from the user terminal 1.
- the FAQ response device 10 accepts, on the chatbot screen, "a sudden failure of the smartphone " as a question sentence from the user terminal 1. Then, the FAQ response device 10 specifies “suddenly” or “smartphone” or the like as a keyword included in the accepted question text “suddenly smartphone failure ...”, and asks a question associated with the keyword from the FAQ list. Search for.
- the FAQ response device 10 narrows down the questions from the FAQ list, and displays the narrowed down two question candidates “1. Emergency support ...” and “2. Outdoors ...” on the chatbot screen. Output. After that, when the user selects “1. Emergency support...” From the two question candidates, the FAQ response device 10 sets the answer “lock function...” Associated with the selected question to the FAQ. Get it from the list and output it on the chatbot screen. In this way, the FAQ response device 10 can provide an environment in which an inquiry can be answered at any time at the user's timing regardless of business hours and the like.
- the FAQ answering apparatus 10 uses a vector to send 5W1H (when (where), where (where), who (who), why (who), and what ( In terms of what) and how), evaluate whether the question is a proper question that contains sufficient information. Then, the FAQ answering device 10 inquires of the user for additional information in order to obtain from the user the missing information out of 5W1H in response to the user's question sentence, and accepts the additional question from the user. In this way, the FAQ answering apparatus 10 searches the FAQ question sentence by adding the added question sentence to the first question sentence from the user, and presents the answer sentence to the user to perform the maximum likelihood estimation. Achieve higher accuracy.
- FIG. 2 is a functional block diagram illustrating the functional configuration of the FAQ response device 10 according to the first embodiment.
- the FAQ response device 10 includes a communication unit 11, a storage unit 12, and a control unit 20.
- the communication unit 11 is a processing unit that controls communication with the user terminal 1, and is, for example, a communication interface.
- the communication unit 11 establishes Web communication or chatbot communication with the user terminal 1 and executes data transmission and reception.
- the storage unit 12 is an example of a storage device that stores programs and data, and is, for example, a memory or a hard disk.
- This storage unit 12 stores an FAQ list DB 13 and a polarity value DB 14.
- the FAQ list DB 13 is a database that stores a FAQ list in which a question is associated with a formal answer corresponding to the question.
- FIG. 3 is a diagram illustrating an example of information stored in the FAQ list DB 13.
- the FAQ list DB 13 stores FAQs associated with “FAQ_ID, category, question, answer”.
- the “FAQ” stored here is an identifier for identifying the FAQ, and the “category” indicates the category of the FAQ.
- “Question” is the content that the user asks a question, and is information specified by a keyword search or the like.
- "Answer” is a formal answer to the question received from the user terminal 1, and is set in advance based on past cases and the like.
- the FAQ corresponding to the category “enrollment” indicates that the question “about the membership fee” and the answer “the membership fee is 1000 yen per month” are associated.
- the answer “Membership fee is 1,000 yen per month” is answered.
- the question “About Membership Fee” is searched as a question candidate whose question or answer includes the keyword.
- the polarity value DB 14 is a database that stores intermediate values such as polarity values calculated in a question evaluation process performed by the FAQ processing unit 22 described below.
- the polarity value DB 14 can store only the latest information, or can store intermediate values in a time series.
- the control unit 20 is a processing unit that controls the entire FAQ response device 10, and is, for example, a processor.
- the control unit 20 includes a screen control unit 21 and an FAQ processing unit 22.
- the screen control unit 21 and the FAQ processing unit 22 are an example of an electronic circuit such as a processor or an example of a process executed by the processor.
- the screen control unit 21 is a processing unit that controls a chatbot screen with the user terminal 1. For example, when receiving access to the FAQ system from the user terminal 1, the screen control unit 21 transmits a chatbot screen 30 shown in FIG. 4 to the user terminal 1. Then, the screen control unit 21 executes reception of an inquiry and the like and output of an answer on the chatbot screen 30.
- FIG. 4 is a diagram showing an example of the chatbot screen 30.
- the chatbot screen 30 includes an avatar 31, a chat area 32, an input area 33, and a send button.
- the avatar 31 is a character that operates to answer an inquiry from a user.
- the chat area 32 is an area for outputting and displaying an answer including a message from the FAQ response device 10 and an inquiry including a message input from the user terminal 1 in the order of input.
- the input area 33 is an area where the user inputs an inquiry or the like via the user terminal 1.
- the send button 34 is a button for executing outputting of an inquiry or the like input to the input area 33 to the chat area 32.
- the ⁇ FAQ processing unit 22 includes a vector operation unit 23, a conversion unit 24, an evaluation unit 25, an inquiry unit 26, and a response unit 27, and is a processing unit that responds to an FAQ corresponding to a question from the user terminal 1.
- the screen control unit 21 is an example of a reception unit
- the vector calculation unit 23 and the conversion unit 24 are examples of a conversion unit and an acquisition unit
- the evaluation unit 25 is an example of an evaluation unit.
- the vector operation unit 23 is a processing unit that performs a vector operation on all words included in the question sentence received from the user terminal 1. For example, the vector operation unit 23 performs morphological analysis or the like on the question sentence, and executes word coding for extracting each word from the question sentence. Then, the vector calculation unit 23 performs a vector calculation on each word (word code). That is, the vector operation unit, by using the Word2Vec for each word code, and generates a 200-dimensional word vector whose elements polarity of V 200 from V 1, graphed each dimension of the vector. Then, the vector calculation unit 23 outputs a word vector corresponding to each word to the conversion unit 24.
- word code word code
- the conversion unit 24 is a processing unit that converts a word code of each word into a polarity value for 5W1H based on a word vector corresponding to each word. Specifically, the conversion unit 24 obtains a graph of a word vector corresponding to each word from the vector calculation unit 23, and applies a conversion formula corresponding to each of 5W1H to apply a polarity value that is a vector value of each 5W1H. Is calculated.
- the conversion unit 24, to the graph of word vectors corresponding to the word A, by applying Equation (1) calculates the polarity value V the when the the when, the where the polarity value by applying Equation (2) Calculate V where , calculate equation (3) to calculate the polarity value of who , V who , calculate equation (4), calculate the polarity value of why V why , and apply equation (5).
- the polarity value V what of what is calculated, and the polarity value V how of how is calculated by applying Expression (6).
- FIG. 5 is a diagram illustrating an example of calculating a polarity value.
- (a) is a word vectors corresponding to the word code (word A)
- the vector operation unit 23 calculates a graph of the 200-dimensional vector value to the polarity of the V 200 elements from V 1.
- the conversion unit 24 calculates “(V 1 ⁇ ⁇ 1 ) + (V 2 ⁇ ⁇ 2 ) +... + (V 200 ⁇ ⁇ 200 )” as the polarity value V when .
- the conversion unit 24 when calculating the polar value V the where, using equation (2), multiplied by beta i in each vector value, and adds the value obtained by multiplying, calculating the polar value V the where .
- the conversion unit 24 calculates “(V 1 ⁇ ⁇ 1 ) + (V 2 ⁇ ⁇ 2 ) +... + (V 200 ⁇ ⁇ 200 )” as the polarity value V where .
- the conversion unit 24 calculates each polarity value of 5W1H for the word A. In this way, the conversion unit 24 calculates each polarity value of 5W1H for each word included in the question sentence, and outputs the calculation result to the evaluation unit 25.
- the coefficients ⁇ , ⁇ , ⁇ , ⁇ , c, and z in Equations (1) to (6) are predetermined values, and will be described later in detail.
- the evaluation unit 25 is a processing unit that evaluates a question sentence using the calculation result of the conversion unit 24. Specifically, the evaluation unit 25 calculates the total value (total vector) by adding the polarity values of all the words included in the question sentence for each of 5W1H.
- evaluation unit 25 the word A, word B from the question sentence, if the word C is extracted, as V the when the question, "V the when + word C of V the when the V the when + word B word A” Is calculated. Similarly, the evaluation unit 25 calculates “V where of the word A + V where of the word B + V where of the word C + V where of the word C” as the V where of the question sentence, and “V Who of the word A” as the V where of the question sentence.
- FIG. 6 is a diagram illustrating an example of evaluating a question sentence.
- the evaluation unit 25 is greater than the polar value V the when and V the where the V who the threshold, but since the polar value V why the V what the V how does not exceed the threshold value, information is insufficient Is determined to be a question sentence.
- the inquiry unit 26 is a processing unit that inquires a user about an additional question based on the evaluation result of the question sentence by the evaluation unit 25. Specifically, the inquiry unit 26 inquires of the user on the chatbot about an item corresponding to the polarity value whose polarity value is determined to be less than the threshold value based on the evaluation result. Then, the inquiry unit 26 generates one new question sentence combining the initially input question sentence and the additionally input information (question). Thereafter, the inquiry unit 26 outputs the generated new question sentence to the vector calculation unit 23, and causes the vector calculation unit 23 to execute the above-described processing.
- the inquiry section 26 the polarity value V why and V what and V how does not exceed the threshold, "why", "what", perform a query to the user in terms of "how” I do.
- the contents to be asked can be set for each 5W1H, and can be automatically generated by combining words included in the first question sentence.
- the inquiry unit 26 determines “what operation failed” or “what failure”. Is it a situation? "As an additional question. If the first question is “the smartphone has failed” and the item of the additional question is “what”, the inquiry unit 26 generates “what is the failure of the smartphone” as an additional question. I do.
- the response unit 27 is a processing unit that responds to an FAQ response corresponding to a question from a user. Specifically, a keyword or the like is extracted from the question sentence determined to be appropriate by the evaluation unit 25, a question corresponding to the keyword or the like is searched from the FAQ list DB 13, displayed on the chatbot as a question candidate, and provided to the user. Inquire. After that, the response unit 27 acquires an answer corresponding to the question selected from the question candidates from the FAQ list DB 13, and displays the answer on the chatbot as an answer to the question.
- FIG. 7 is a diagram illustrating a specific example of evaluation of a question sentence.
- the FAQ processing unit 22 receives a question sentence A “My smartphone has suddenly failed.” On the chatbot. Then, the FAQ processing unit 22 performs morphological analysis, word coding, and vector operation on the question sentence A “My smartphone has suddenly failed.”
- the FAQ processing unit 22 generates a graph A1 after the vector operation processing for the word “suddenly”, and generates a graph A2 after the vector operation processing for the word “I”. In this way, the FAQ processing unit 22 generates a 200-dimensional vector graph for each word included in the question sentence A.
- the FAQ processing unit 22 After that, the FAQ processing unit 22 generates a graph A1 ′ in which the polarity value of 5W1H is obtained for the graph A1 using the graph A1 and the expressions (1) to (6). Similarly, the FAQ processing unit 22 uses the graph A2 and the expressions (1) to (6) to generate a graph A2 ′ in which the polarity value of 5W1H is obtained for the graph A2. In this way, the FAQ processing unit 22 generates a 5W1H vector graph for each word included in the question sentence A.
- the FAQ processing unit 22 calculates a total value by adding the 5W1H vector (polarity value) of each word for each 5W1H. After that, the FAQ processing unit 22 compares the total value of 5W1H with the threshold value and determines that the items of V why , V what, and V how which are less than the threshold value are insufficient. As a result, the FAQ processing unit 22 asks the questioner about V why , V what, and V how . Then, the FAQ processing unit 22 generates a new question message combining the response from the questioner to the reflection and the first question message A, and repeats the above processing.
- FIG. 8 is a diagram illustrating a process from accepting a question to evaluating a question sentence
- FIG. 9 is a diagram illustrating a process from an additional inquiry to a response.
- the FAQ response device 10 displays a chatbot screen on the user terminal 1 that has received the access, and outputs a message such as “What kind of request” on the chatbot screen, A question sentence is received from the user terminal 1 (see FIG. 8A).
- the FAQ response device 10 accepts the question A on the chatbot, "My smartphone has suddenly failed.” (See FIG. 8B). Then, the FAQ response device 10 searches the FAQ using the question sentence A, and specifies “A1 to A50” as the answer candidate (see FIG. 8C). However, since the answer candidate having the threshold value (for example, 3) or more is searched, the FAQ answering apparatus 10 performs 5W1H evaluation on the question sentence A in order to narrow down the answer candidates (see (d) of FIG. 8). ).
- the FAQ response device 10 since the FAQ response device 10 has identified that “where” is insufficient based on the evaluation of 5W1H, the FAQ response device 10 outputs a message such as “Where did it break down” on the chatbot screen and displayed the user terminal. An additional question sentence is received from No. 1 (see (e) of FIG. 9).
- the FAQ response device 10 receives an additional question message B “Outdoors.” On the chatbot (see (f) in FIG. 9). Then, the FAQ answering apparatus 10 searches the FAQ using the question text AB obtained by adding the additional question text B to the initial question text A, and specifies “A1 and A2” as the answer candidates (( g)). Then, since the answer candidate less than the threshold value (for example, 3) is found, the FAQ answering apparatus 10 displays the found answer candidate on the chatbot screen (see (h) of FIG. 9).
- the threshold value for example, 3
- the FAQ response device 10 acquires the corresponding answer from the FAQ list DB 13 and displays it on the chatbot screen.
- the FAQ response device 10 displays a message indicating that the corresponding FAQ does not exist on the chatbot screen, and ends the process.
- FIG. 10 is a flowchart showing the flow of the processing.
- the vector calculation unit 23 performs morphological analysis on the question sentence, extracts words, and uses the word code of each word using Word2Vec or the like. Is generated (S102). Subsequently, the vector calculation unit 23 performs a vector calculation on the word code of each word to generate a 200-dimensional vector (S103).
- the conversion unit 24 calculates the polarity value of 5W1H (S104). That is, the conversion unit 24 calculates a 5W1H-dimensional vector value from the 200-dimensional vector value of each word code using Expressions (1) to (6), and for each of the 5W1H, Are added.
- the evaluation unit 25 determines that the question is an appropriate question (S106). Then, the response unit 27 searches the FAQ list DB 13 for an answer corresponding to the question sentence and responds (S107).
- the inquiry unit 26 inquires of the inquirer to obtain the missing information (polarity value) of 5W1H (S108). Thereafter, when the inquiry unit 26 receives a response (additional information) to the inquiry to the questioner (S109: Yes), the inquiry unit 26 generates one question sentence combining the question sentence and the additional information (S110). After that, S102 and subsequent steps are executed.
- the FAQ response device 10 searches for a registered FAQ question using the question sentence input by the user when chatting with the user in a one-to-one manner using the chatbot. , The response sentence can be presented to the user. Further, the FAQ response device 10 can appropriately determine which information is insufficient even when sufficient information regarding 5W1H is not included in the question sentence from the user.
- the FAQ response device 10 can improve the accuracy of inquiries to the questioner regarding the supplement of the question text.
- the FAQ response device 10 performs the FAQ search using the supplemented question text, so that the content of the question from the user can be appropriately determined, and the response accuracy can be improved.
- the coefficients in the above equations (1) to (5) can be calculated and set in advance.
- FIG. 11 is a diagram illustrating an example of a coefficient calculation method.
- the FAQ responding apparatus 10 converts the word code of the well-balanced question sentence X in 5W1H to “I have a quick meal at Kichijoji because of tomorrow's training” by 200-dimensional vector conversion. , And the vectors of each dimension are added to generate a vector graph (V 1 to V 200 ) shown in FIG.
- the FAQ responding apparatus 10 generates a question sentence Y, which is obtained by removing when (when) from the question sentence X, “I have a training, so I have a quick meal at Kichijoji.” Then, the FAQ response device 10 performs a 200-dimensional vector conversion on each word code of the question sentence Y, adds the vectors of each dimension, and generates a vector graph (V ′ 1 to V ′ 1 ) shown in FIG. ' 200 ).
- the coefficient z a question sentence excluding “how” is generated, and the same processing as in the case of when is performed.
- an accurate coefficient can be calculated and an accurate vector conversion can be executed, so that the response accuracy is also improved.
- the vector conversion using Word2Vec has been described as an example.
- the present invention is not limited to this, and other known techniques can be used.
- the number of dimensions is not limited to 200, and the number of dimensions can be used according to the employed vector conversion technology.
- an example has been described in which the expression is converted into a polarity value, which is an example of an element value, using a mathematical expression.
- the present invention is not limited to this.
- a conversion table or the like in which the correspondence between each polarity value of 5W1H and the total value of the 200-dimensional vector can be used.
- at least one polarity value can be adopted, and the question sentence can be evaluated based on whether the adopted polarity value is equal to or more than a threshold value.
- the evaluation of the above-mentioned question text can be executed only when the answer corresponding to the first question text cannot be searched or when the answer candidate is equal to or more than the threshold, or can be executed for all the question texts.
- the appropriate question is an example of a question that can be answered, and a question that does not correspond to an appropriate question and is inquired is an example of a question that cannot be answered.
- the FAQ system for answering the question from the user has been described as an example, but the present invention is not limited to this.
- the present invention can be applied to a questionnaire entry, a search for a failure response in which an error message of the system is associated with an error response, and the like.
- each device shown in the drawings are functionally conceptual, and do not necessarily need to be physically configured as shown in the drawings. That is, the specific form of distribution and integration of each device is not limited to the illustrated one. That is, all or a part thereof can be configured to be functionally or physically distributed / integrated in arbitrary units according to various loads and usage conditions. Further, all or any part of each processing function performed by each device can be realized by a CPU and a program analyzed and executed by the CPU, or can be realized as hardware by wired logic.
- FIG. 12 is a diagram illustrating an example of a hardware configuration.
- the FAQ response device 10 includes a communication device 10a, a hard disk drive (HDD) 10b, a memory 10c, and a processor 10d.
- the units shown in FIG. 12 are mutually connected by a bus or the like.
- the communication device 10a is a network interface card or the like, and performs communication with another server.
- the HDD 10b stores programs and DBs for operating the functions shown in FIG.
- the processor 10d operates the process for executing each function described in FIG. 2 and the like by reading a program for executing the same processing as each processing unit illustrated in FIG. 2 from the HDD 10b or the like and expanding the program in the memory 10c. That is, this process performs the same function as each processing unit included in the FAQ response device 10. Specifically, the processor 10d reads a program having the same function as the screen control unit 21, the FAQ processing unit 22, and the like from the HDD 10b and the like. Then, the processor 10d executes a process of executing the same processing as that of the screen control unit 21, the FAQ processing unit 22, and the like.
- the FAQ response device 10 operates as an information processing device that executes the evaluation method by reading and executing the program.
- the FAQ response device 10 can also realize the same functions as those of the above-described embodiment by reading out the program from the recording medium using a medium reading device and executing the read out program.
- the program referred to in the other embodiments is not limited to being executed by the FAQ response device 10.
- the present invention can be similarly applied to a case where another computer or server executes a program, or a case where these execute a program in cooperation with each other.
- This program can be distributed via networks such as the Internet.
- the program is recorded on a computer-readable recording medium such as a hard disk, a flexible disk (FD), a CD-ROM, an MO (Magneto-Optical disk), and a DVD (Digital Versatile Disc). It can be executed by being read.
- a computer-readable recording medium such as a hard disk, a flexible disk (FD), a CD-ROM, an MO (Magneto-Optical disk), and a DVD (Digital Versatile Disc). It can be executed by being read.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Mathematical Physics (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Human Computer Interaction (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
FAQ応答装置は、質問情報を受け付け、受け付けた質問情報に含まれる単語を、複数の要素にそれぞれ対応付けられる複数の要素値を含む単語ベクトルに変換する。FAQ応答装置は、要素に対応付けられる要素値が含む特定の意味の強さを特定する特定情報を該要素に対応付けて記憶する記憶部を参照し、特定情報を用いて、単語ベクトルに含まれる複数の要素値がそれぞれ含む特定の意味の強さを示す複数の意味情報を取得する。FAQ応答装置は、取得した複数の意味情報に基づき、受け付けた質問情報に関する評価を行う。
Description
本発明は、評価プログラム、評価方法および情報処理装置に関する。
従来から、通信販売、ネット販売、ネットゲームなどのエンドユーザからの問い合わせやシステム障害などの管理者からの問い合わせを、電話や電子メールなどで受け付けて応答するコールセンターなどの有人システムが利用されている。また、有人の営業時間外でもエンドユーザや管理者などの問い合わせに応答できるように、コンピュータによるチャット形式のFAQ(Frequently Asked Questions)システムが利用されている。近年では、質問者から入力された質問文の形態素解析を行って、不足格として名詞等を質問者に聞き返して、補充後の情報に対応する回答を選択して応答する技術が知られている。
しかしながら、上記技術では、質問文に対して名詞を補充した上で回答を行うので、補充後の質問文に名詞が増えてしまうなど、却って質問文の内容が複雑になり、質問の精度が低下し、誤回答を応答する場合がある。
一つの側面では、質問文の補充に関する質問者への問い合わせの精度を向上させることができる評価プログラム、評価方法および情報処理装置を提供することを目的とする。
第1の案では、評価プログラムは、質問情報を受け付ける処理をコンピュータに実行させる。評価プログラムは、受け付けた前記質問情報に含まれる単語を、複数の要素にそれぞれ対応付けられる複数の要素値を含む単語ベクトルに変換する処理をコンピュータに実行させる。評価プログラムは、要素に対応付けられる要素値が含む特定の意味の強さを特定する特定情報を該要素に対応付けて記憶する記憶部を参照し、前記特定情報を用いて、前記単語ベクトルに含まれる前記複数の要素値がそれぞれ含む前記特定の意味の強さを示す複数の意味情報を取得する処理をコンピュータに実行させる。評価プログラムは、取得した前記複数の意味情報に基づき、受け付けた前記質問情報に関する評価を行う処理をコンピュータに実行させる。
一実施形態によれば、質問文の補充に関する質問者への問い合わせの精度を向上させることができる。
以下に、本発明にかかる評価プログラム、評価方法および情報処理装置の実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。また、各実施例は、矛盾のない範囲内で適宜組み合わせることができる。
[全体構成]
図1は、実施例1にかかるFAQシステムを説明する図である。図1に示すように、FAQシステムは、ユーザ端末1とFAQ応答装置10とがネットワークNを介して接続されるシステムである。このFAQシステムは、FAQ応答装置10がチャット形式でユーザ端末1から質問文を受け付けて、質問文に対する回答をユーザ端末1に応答するシステムである。なお、質問文の一例としては、通信販売、ネット販売、ネットゲームなどのエンドユーザからの質問やシステム障害などの管理者からの質問などがある。また、ネットワークNは、有線や無線を問わず、インターネットや専用線などの各種通信網を採用することができる。
図1は、実施例1にかかるFAQシステムを説明する図である。図1に示すように、FAQシステムは、ユーザ端末1とFAQ応答装置10とがネットワークNを介して接続されるシステムである。このFAQシステムは、FAQ応答装置10がチャット形式でユーザ端末1から質問文を受け付けて、質問文に対する回答をユーザ端末1に応答するシステムである。なお、質問文の一例としては、通信販売、ネット販売、ネットゲームなどのエンドユーザからの質問やシステム障害などの管理者からの質問などがある。また、ネットワークNは、有線や無線を問わず、インターネットや専用線などの各種通信網を採用することができる。
ユーザ端末1は、ユーザが利用するコンピュータ装置の一例であり、例えばパーソナルコンピュータやスマートフォンなどである。このユーザ端末1は、Webブラウザや専用のアプリケーションを用いて、FAQ応答装置10にアクセスし、質問文の入力および回答の取得を行う。
FAQ応答装置10は、ユーザ端末1から入力された質問文に回答するコンピュータ装置の一例であり、質問と回答とを対応付けたFAQ一覧を記憶する。このFAQ応答装置10は、ユーザ端末1からアクセスを受け付けると、チャット形式のWeb画面の一例であるチャットボット画面をユーザ端末1に表示する。そして、FAQ応答装置10は、チャットボット画面上に、「どのようなご用件でしょうか」などのメッセージを出力し、ユーザ端末1から質問文を受け付ける。
続いて、FAQ応答装置10は、チャットボット画面上で、ユーザ端末1からの質問文として「急にスマートフォンが故障・・・」を受け付ける。すると、FAQ応答装置10は、受け付けた質問文「急にスマートフォンが故障・・・」に含まれるキーワードとして「急に」や「スマートフォン」などを特定し、FAQ一覧からキーワードに対応付けられる質問を検索する。
そして、FAQ応答装置10は、FAQ一覧から質問を絞り込み、絞り込まれた2つの質問候補「1.緊急サポートについて・・・」と「2.屋外での・・・」とをチャットボット画面上に出力する。その後、FAQ応答装置10は、2つの質問候補のうち「1.緊急サポートについて・・・」がユーザによって選択されると、選択された質問に対応付けられる回答「ロック機能・・・」をFAQ一覧から取得してチャットボット画面上に出力する。このようにして、FAQ応答装置10は、営業時間等に関係なく、ユーザのタイミングでいつでも問い合わせに回答できる環境を提供することができる。
このようなシステムにおいて、FAQ応答装置10は、受け付けた質問文に対して、ベクトルを用いて、5W1H(when(いつ)、where(どこで)、who(だれが)、why(なぜ)、what(何を)、how(どのように))の観点で、質問文には十分な情報が含まれている適切な質問文であるかどうかを評価する。そして、FAQ応答装置10は、ユーザの質問文に対して、5W1Hのうち足りていない情報をユーザから得るために、ユーザに追加情報の問合せを行い、ユーザから追加の質問を受け付ける。このようにして、FAQ応答装置10は、ユーザからの最初の質問文に追加された質問文を加えて、FAQの質問文を検索し、その回答文をユーザに提示することで最尤推定の高精度化を図る。
[機能構成]
次に、実施例1にかかるFAQシステムの機能構成について説明する。なお、ユーザ端末1は、一般的なコンピュータ装置と同様の構成を有するので、詳細な説明は省略する。図2は、実施例1にかかるFAQ応答装置10の機能構成を示す機能ブロック図である。図2に示すように、FAQ応答装置10は、通信部11、記憶部12、制御部20を有する。
次に、実施例1にかかるFAQシステムの機能構成について説明する。なお、ユーザ端末1は、一般的なコンピュータ装置と同様の構成を有するので、詳細な説明は省略する。図2は、実施例1にかかるFAQ応答装置10の機能構成を示す機能ブロック図である。図2に示すように、FAQ応答装置10は、通信部11、記憶部12、制御部20を有する。
通信部11は、ユーザ端末1との間の通信を制御する処理部であり、例えば通信インタフェースなどである。例えば、通信部11は、ユーザ端末1との間でWeb通信やチャットボットによる通信を確立し、データの送受信を実行する。
記憶部12は、プログラムやデータを記憶する記憶装置の一例であり、例えばメモリやハードディスクなどである。この記憶部12は、FAQ一覧DB13や極性値DB14を記憶する。
FAQ一覧DB13は、質問と当該質問に対応する正式な回答とを対応付けたFAQ一覧を記憶するデータベースである。図3は、FAQ一覧DB13に記憶される情報の例を示す図である。図3に示すように、FAQ一覧DB13は、「FAQ_ID、カテゴリ、質問、回答」を対応付けたFAQを記憶する。ここで記憶される「FAQ」は、FAQを識別する識別子であり、「カテゴリ」は、FAQのカテゴリを示す。「質問」は、ユーザが質問する内容であり、キーワード検索などによって特定される情報である。「回答」は、ユーザ端末1から受け付けた質問に対する正式な回答であり、過去の事例等により予め設定される。
図3の例では、カテゴリ「入会」に該当するFAQには、質問「会費について」と回答「会費は月額1000円です。」とが対応付けられていることを示す。つまり、ユーザから「会費について」が質問された場合に、回答「会費は月額1000円です。」が回答される。また、ユーザからキーワードとして「会費」や「月額」などが入力された場合、質問や回答にキーワードが含まれる質問候補として、質問「会費について」が検索される。
極性値DB14は、後述するFAQ処理部22による質問の評価処理で算出される極性値などの中間値を記憶するデータベースである。なお、極性値DB14は、最新の情報だけを記憶することもでき、時系列で中間値を記憶することもできる。
制御部20は、FAQ応答装置10全体を司る処理部であり、例えばプロセッサなどである。この制御部20は、画面制御部21、FAQ処理部22を有する。なお、画面制御部21、FAQ処理部22は、プロセッサなどの電子回路の一例やプロセッサが実行するプロセスの一例である。
画面制御部21は、ユーザ端末1との間で、チャットボット画面の制御を実行する処理部である。例えば、画面制御部21は、ユーザ端末1からFAQシステムへのアクセスを受け付けると、図4に示すチャットボット画面30をユーザ端末1に送信する。そして、画面制御部21は、チャットボット画面30上で問い合わせなどの受け付けや回答の出力などを実行する。
図4は、チャットボット画面30の例を示す図である。図4に示すように、チャットボット画面30は、アバター31、チャット領域32、入力領域33、送信ボタン34を含む。アバター31は、ユーザからの問い合わせに回答するように動作するキャラクターである。チャット領域32は、FAQ応答装置10からのメッセージなどを含む回答やユーザ端末1から入力されたメッセージなどを含む問い合わせを、入力された順に出力表示する領域である。入力領域33は、ユーザがユーザ端末1を介して、問い合わせ等を入力する領域である。送信ボタン34は、入力領域33に入力された問い合わせ等をチャット領域32に出力することを実行するボタンである。
FAQ処理部22は、ベクトル演算部23、変換部24、評価部25、問合せ部26、応答部27を有し、ユーザ端末1からの質問に対応するFAQを応答する処理部である。なお、画面制御部21は、受付部の一例であり、ベクトル演算部23および変換部24は、変換部と取得部の一例であり、評価部25は、評価部の一例である。
ベクトル演算部23は、ユーザ端末1から受け付けた質問文に含まれるすべての単語に対して、ベクトル演算を実行する処理部である。例えば、ベクトル演算部23は、質問文に形態素解析等を行って、質問文から各単語を抽出する単語コード化を実行する。そして、ベクトル演算部23は、各単語(単語コード)に対してベクトル演算を実行する。すなわち、ベクトル演算部は、各単語コードに対してWord2Vecを用いて、V1からV200の極性を要素とする200次元の単語ベクトルを生成して、各次元のベクトルをグラフ化する。そして、ベクトル演算部23は、各単語に対応する単語ベクトルを変換部24に出力する。
変換部24は、各単語に対応する単語ベクトルを基に、各単語の単語コードを5W1Hについての極性値に変換する処理部である。具体的には、変換部24は、ベクトル演算部23から、各単語に対応する単語ベクトルのグラフを取得し、5W1Hそれぞれに対応した変換式を適用して、5W1Hそれぞれのベクトル値である極性値を算出する。
例えば、変換部24は、単語Aに対応する単語ベクトルのグラフに対して、式(1)を適用してwhenの極性値Vwhenを算出し、式(2)を適用してwhereの極性値Vwhereを算出し、式(3)を適用してwhoの極性値Vwhoを算出し、式(4)を適用してwhyの極性値Vwhyを算出し、式(5)を適用してwhatの極性値Vwhatを算出し、式(6)を適用してhowの極性値Vhowを算出する。
図5は、極性値の算出例を説明する図である。図5の(a)は、ベクトル演算部23が算出した単語コード(単語A)に対応する単語ベクトルであり、V1からV200の極性を要素とする200次元のベクトル値のグラフである。そして、変換部24は、極性値Vwhenを算出する場合、式(1)を用いて、各ベクトル値にαiを乗算し、乗算した各値を加算して、極性値Vwhenを算出する。例えば、変換部24は、極性値Vwhenとして「(V1×α1)+(V2×α2)+・・・+(V200×α200)」を算出する。
また、変換部24は、極性値Vwhereを算出する場合、式(2)を用いて、各ベクトル値にβiを乗算し、乗算した各値を加算して、極性値Vwhereを算出する。例えば、変換部24は、極性値Vwhereとして「(V1×β1)+(V2×β2)+・・・+(V200×β200)」を算出する。
同様の手法により、変換部24は、単語Aについて、5W1Hの各極性値を算出する。このようにして、変換部24は、質問文に含まれる各単語について、5W1Hの各極性値を算出し、算出結果を評価部25に出力する。なお、式(1)から式(6)における係数α、β、γ、δ、c、zは、予め定められた値であり、詳細については後述する。
図2に戻り、評価部25は、変換部24による算出結果を用いて、質問文を評価する処理部である。具体的には、評価部25は、5W1Hそれぞれについて、質問文に含まれるすべての単語の極性値を加算して合計値(合計ベクトル)を算出する。
例えば、評価部25は、質問文から単語A、単語B、単語Cが抽出された場合、質問文のVwhenとして、「単語AのVwhen+単語BのVwhen+単語CのVwhen」を算出する。同様に、評価部25は、質問文のVwhereとして、「単語AのVwhere+単語BのVwhere+単語CのVwhere」を算出し、質問文のVwhoとして、「単語AのVwho+単語BのVwho+単語CのVwho」を算出し、質問文のVwhyとして、「単語AのVwhy+単語BのVwhy+単語CのVwhy」を算出し、質問文のVwhatとして、「単語AのVwhat+単語BのVwhat+単語CのVwhat」を算出し、質問文のVhowとして、「単語AのVhow+単語BのVhow+単語CのVhow」を算出する。
そして、評価部25は、5W1Hそれぞれの合計値が閾値を超える場合、適切な質問文と判定し、閾値未満の合計値が存在する場合、情報が不足している質問文と判定する。図6は、質問文の評価例を説明する図である。図6の場合、評価部25は、極性値VwhenとVwhereとVwhoとが閾値を超えるが、極性値VwhyとVwhatとVhowとが閾値を越えないので、情報が不足している質問文と判定する。
問合せ部26は、評価部25による質問文の評価結果に基づいて、ユーザに追加の質問を問い合わせる処理部である。具体的には、問合せ部26は、評価結果によって極性値が閾値未満と判定された極性値に対応する項目をチャットボット上でユーザに問い合わせる。そして、問合せ部26は、はじめに入力された質問文と追加で入力された情報(質問)とを組み合わせた1つの新たな質問文を生成する。その後、問合せ部26は、生成した新たな質問文をベクトル演算部23に出力して、上述した処理を実行させる。
図6の例では、問合せ部26は、極性値VwhyとVwhatとVhowが閾値を越えないので、「なぜ」、「何が」、「どのように」の観点でユーザに問い合わせを実行する。なお、質問する内容は、5W1Hごとに設定しておくこともでき、初めの質問文に含まれる単語を組み合わせて自動的に生成することもできる。
例えば、問合せ部26は、初めの質問文が「スマートフォンが故障しました」であり、追加質問の項目が「how」の場合は「どのような操作で故障しましたか」や「どのような故障状況ですか」などを追加質問として生成する。また、問合せ部26は、初めの質問文が「スマートフォンが故障しました」であり、追加質問の項目が「what」の場合は「スマートフォンの何が故障していますか」などを追加質問として生成する。
応答部27は、ユーザからの質問に対応するFAQの回答を応答する処理部である。具体的には、評価部25によって適切と判定された質問文からキーワード等を抽出し、キーワード等に該当する質問をFAQ一覧DB13から検索して、質問候補としてチャットボット上に表示してユーザに問い合わせる。その後、応答部27は、質問候補のうち選択された質問に対応する回答をFAQ一覧DB13から取得して、質問に対する回答としてチャットボット上に表示する。
[評価の具体例]
図7は、質問文の評価の具体例を説明する図である。図7に示すように、FAQ処理部22は、チャットボット上で質問文A「急に、私のスマートフォンが故障しました。」を受け付ける。すると、FAQ処理部22は、質問文A「急に、私のスマートフォンが故障しました。」に対して、形態素解析、単語コード化、ベクトル演算を行う。
図7は、質問文の評価の具体例を説明する図である。図7に示すように、FAQ処理部22は、チャットボット上で質問文A「急に、私のスマートフォンが故障しました。」を受け付ける。すると、FAQ処理部22は、質問文A「急に、私のスマートフォンが故障しました。」に対して、形態素解析、単語コード化、ベクトル演算を行う。
その結果、FAQ処理部22は、単語「急に」に対してベクトル演算処理後のグラフA1を生成し、単語「私」に対してベクトル演算処理後のグラフA2を生成する。このようにして、FAQ処理部22は、質問文Aに含まれる各単語について200次元のベクトルのグラフを生成する。
その後、FAQ処理部22は、グラフA1と式(1)から式(6)とを用いて、グラフA1に対して5W1Hの極性値を求めたグラフA1´を生成する。同様に、FAQ処理部22は、グラフA2と式(1)から式(6)とを用いて、グラフA2に対して5W1Hの極性値を求めたグラフA2´を生成する。このようにして、FAQ処理部22は、質問文Aに含まれる各単語について、5W1Hのベクトルのグラフを生成する。
そして、FAQ処理部22は、各単語の5W1Hのベクトル(極性値)を、5W1Hごとに加算して合計値を算出する。その後、FAQ処理部22は、5W1Hの各合計値と閾値とを比較し、閾値未満であるVwhyとVwhatとVhowの各項目が不足していると判定する。この結果、FAQ処理部22は、VwhyとVwhatとVhowについて質問者への聞き返しを行う。そして、FAQ処理部22は、聞き返しに対する質問者からの応答と最初の質問文Aとを組み合わせた新たな質問文を生成して、上記処理を繰り返す。
[画面遷移の具体例]
次に、質問受付から回答を応答するまでの画面遷移について説明する。図8は、質問受付から質問文の評価までを説明する図であり、図9は、追加問い合わせから応答までを説明する図である。
次に、質問受付から回答を応答するまでの画面遷移について説明する。図8は、質問受付から質問文の評価までを説明する図であり、図9は、追加問い合わせから応答までを説明する図である。
図8に示すように、FAQ応答装置10は、アクセスを受け付けたユーザ端末1にチャットボット画面を表示し、チャットボット画面上に「どのようなご用件でしょうか」などのメッセージを出力し、ユーザ端末1から質問文を受け付ける(図8の(a)参照)。
続いて、FAQ応答装置10は、チャットボット上で質問文A「急に、私のスマートフォンが故障してしまいました。」を受け付ける(図8の(b)参照)。そして、FAQ応答装置10は、質問文Aを用いてFAQを検索し、回答候補として「A1からA50」を特定する(図8の(c)参照)。しかし、FAQ応答装置10は、閾値(例えば3)以上の回答候補が検索されたので、回答候補を絞り込むために、質問文Aに対して5W1Hの評価を実行する(図8の(d)参照)。
その後、FAQ応答装置10は、5W1Hの評価により「where(どこで)」が不足していることを特定したので、チャットボット画面上に「どこで故障しましたか」などのメッセージを出力し、ユーザ端末1から追加の質問文を受け付ける(図9の(e)参照)。
続いて、FAQ応答装置10は、チャットボット上で追加の質問文B「屋外です。」を受け付ける(図9の(f)参照)。すると、FAQ応答装置10は、はじめの質問文Aに追加の質問文Bを加えた質問文ABを用いて、FAQを検索し、回答候補として「A1とA2」を特定する(図9の(g)参照)。そして、FAQ応答装置10は、閾値(例えば3)未満の回答候補が検索されたので、検索された回答候補をチャットボット画面上に表示する(図9の(h)参照)。
その後、FAQ応答装置10は、回答候補の「A1」または「A2」が選択されると、該当する回答をFAQ一覧DB13から取得してチャットボット画面上に表示する。一方、FAQ応答装置10は、回答候補のうち「この中にはありません。」が選択されると、該当するFAQが存在しない旨のメッセージをチャットボット画面上に表示して、処理を終了する。
[処理の流れ]
図10は、処理の流れを示すフローチャートである。図10に示すように、ベクトル演算部23は、質問文が受け付けられると(S101:Yes)、質問文に形態素解析を実行して単語を抽出し、Word2Vecなどを用いて、各単語の単語コードを生成する(S102)。続いて、ベクトル演算部23は、各単語の単語コードに対してベクトル演算を実行して200次元のベクトルを生成する(S103)。
図10は、処理の流れを示すフローチャートである。図10に示すように、ベクトル演算部23は、質問文が受け付けられると(S101:Yes)、質問文に形態素解析を実行して単語を抽出し、Word2Vecなどを用いて、各単語の単語コードを生成する(S102)。続いて、ベクトル演算部23は、各単語の単語コードに対してベクトル演算を実行して200次元のベクトルを生成する(S103)。
そして、変換部24は、5W1Hの極性値を算出する(S104)。すなわち、変換部24は、式(1)から式(6)を用いて、各単語コードの200次元のベクトル値から5W1Hの次元のベクトル値を算出し、5W1Hそれぞれについて、質問文のすべての単語のベクトル値を加算する。
その後、評価部25は、全極性値が閾値以上である場合(S105:Yes)、適切な質問文と判定する(S106)。そして、応答部27は、質問文に対応する回答をFAQ一覧DB13から検索して応答する(S107)。
一方、いずれかの極性値が閾値以上ではない場合(S105:No)、問合せ部26は、5W1Hのうち、不足している情報(極性値)を得るために、質問者に問い返す(S108)。その後、問合せ部26は、質問者への問い返しに対する応答(追加情報)を受け付けると(S109:Yes)、質問文と追加情報とを組み合わせた1つの質問文を生成する(S110)。その後、S102以降が実行される。
[効果]
上述したように、FAQ応答装置10は、チャットボットを用いて、ユーザと一対一の形式でチャットを行う際、ユーザが入力した質問文を用いて、登録されているFAQの質問文を検索し、その応答文をユーザに提示することができる。また、FAQ応答装置10は、ユーザからの質問文において、5W1Hに関して十分な情報が含まれていない場合でも、どの情報が不足しているかを適切に判別することができる。
上述したように、FAQ応答装置10は、チャットボットを用いて、ユーザと一対一の形式でチャットを行う際、ユーザが入力した質問文を用いて、登録されているFAQの質問文を検索し、その応答文をユーザに提示することができる。また、FAQ応答装置10は、ユーザからの質問文において、5W1Hに関して十分な情報が含まれていない場合でも、どの情報が不足しているかを適切に判別することができる。
したがって、FAQ応答装置10は、質問文の補充に関する質問者への問い合わせの精度を向上させることができる。また、FAQ応答装置10は、補充した質問文を用いてFAQ検索を実行するので、ユーザからの質問内容を適切に判断することができ、応答精度も向上できる。
さて、これまで本発明の実施例について説明したが、本発明は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。
[係数の設定]
上記式(1)から式(5)における係数は、予め算出して設定することができる。例えば、FAQ応答装置10は、5W1Hにおいてバランスの取れた質問文Xを用意する。そこから、FAQ応答装置10は、5W1Hにおいて任意の要素を1つ決定し、その要素を含む単語を全て除く。さらに、FAQ応答装置10は、単語を除く前と除いた後の質問文それぞれを200次元ベクトルのグラフに表し、それぞれの極性値の差分を係数とする。そのため、係数の値は各ベクトルによって異なり、αi=0となるベクトルも存在する。
上記式(1)から式(5)における係数は、予め算出して設定することができる。例えば、FAQ応答装置10は、5W1Hにおいてバランスの取れた質問文Xを用意する。そこから、FAQ応答装置10は、5W1Hにおいて任意の要素を1つ決定し、その要素を含む単語を全て除く。さらに、FAQ応答装置10は、単語を除く前と除いた後の質問文それぞれを200次元ベクトルのグラフに表し、それぞれの極性値の差分を係数とする。そのため、係数の値は各ベクトルによって異なり、αi=0となるベクトルも存在する。
ここで、Vwhenに対応する式(1)の係数αを例にして説明する。図11は、係数の算出手法の例を説明する図である。図11に示すように、FAQ応答装置10は、5W1Hにおいてバランスのとれた質問文X「明日研修があるため私は吉祥寺で急いでご飯を食べます。」の各単語コードについて200次元のベクトル変換を行い、それぞれの次元のベクトルを加算して、図11の(a)に示すベクトルグラフ(V1からV200)を生成する。
続いて、FAQ応答装置10は、質問文Xからwhen(いつ)を除いた質問文Y「研修があるため私は吉祥寺で急いでご飯を食べます。」を生成する。そして、FAQ応答装置10は、質問文Yの各単語コードについて200次元のベクトル変換を行い、それぞれの次元のベクトルを加算して、図11の(b)に示すベクトルグラフ(V´1からV´200)を生成する。
そして、FAQ応答装置10は、各次元(V1からV200)について、減少した割合を係数αi(i=1から200)として算出する。すなわち、FAQ応答装置10は、「αi=(Vi-V´i)/Vi」を算出する。なお、係数βの場合はwhereを除いた質問文、係数γの場合はwhoを除いた質問文、係数δの場合はwhyを除いた質問文、係数cの場合はwhatを除いた質問文、係数zの場合はhowを除いた質問文を生成して、上記whenのときと同様の処理を実行する。この結果、正確な係数を算出でき、正確なベクトル変換が実行できるので、応答精度も向上する。
[Webページ]
上述した実施例では、チャットボットを用いた例を説明したが、これに限定されるものではなく、例えば一般的なWebブラウザなどを用いることもできる。また、インターネットなどに限らず、イントラネットなども採用することができる。例えば、一般ユーザによるFAQに限らず、社内のFAQにも適用することができる。
上述した実施例では、チャットボットを用いた例を説明したが、これに限定されるものではなく、例えば一般的なWebブラウザなどを用いることもできる。また、インターネットなどに限らず、イントラネットなども採用することができる。例えば、一般ユーザによるFAQに限らず、社内のFAQにも適用することができる。
[ベクトル変換]
上記実施例では、Word2Vecを用いたベクトル変換を例にして説明したが、これに限定されるものではなく、他の公知の技術を用いることができる。また、200次元に限らず、採用するベクトル変換技術に応じた次元数を用いることができる。また、上記実施例では、数式を用いて、要素値の一例である極性値に変換する例を説明したが、これに限定されるものではない。例えば、5W1Hの各極性値と、200次元のベクトルの合計値との対応関係を予め設定した変換テーブルなどを用いることもできる。また、5W1Hをすべて用いて評価するだけではなく、少なくとも一つの極性値を採用し、採用した極性値が閾値以上か否かによって質問文を評価することもできる。
上記実施例では、Word2Vecを用いたベクトル変換を例にして説明したが、これに限定されるものではなく、他の公知の技術を用いることができる。また、200次元に限らず、採用するベクトル変換技術に応じた次元数を用いることができる。また、上記実施例では、数式を用いて、要素値の一例である極性値に変換する例を説明したが、これに限定されるものではない。例えば、5W1Hの各極性値と、200次元のベクトルの合計値との対応関係を予め設定した変換テーブルなどを用いることもできる。また、5W1Hをすべて用いて評価するだけではなく、少なくとも一つの極性値を採用し、採用した極性値が閾値以上か否かによって質問文を評価することもできる。
[評価タイミング]
また、上記質問文の評価は、はじめの質問文に対応する回答が検索できない場合や回答候補が閾値以上存在する場合にだけ実行することもでき、すべての質問文に対して実行することもできる。また、上記適切な質問は、回答可能な質問の一例であり、適切な質問に該当せず、問い合わせが行われる質問は、回答可能ではない質問の一例である。
また、上記質問文の評価は、はじめの質問文に対応する回答が検索できない場合や回答候補が閾値以上存在する場合にだけ実行することもでき、すべての質問文に対して実行することもできる。また、上記適切な質問は、回答可能な質問の一例であり、適切な質問に該当せず、問い合わせが行われる質問は、回答可能ではない質問の一例である。
[適用例]
上記実施例では、ユーザからの質問に回答するFAQシステムを例にして説明したが、これに限定されるものではない。例えば、問診票への記入、システムのエラーメッセージとエラー対応とを対応付けた障害時対応の検索などにも適用することができる。
上記実施例では、ユーザからの質問に回答するFAQシステムを例にして説明したが、これに限定されるものではない。例えば、問診票への記入、システムのエラーメッセージとエラー対応とを対応付けた障害時対応の検索などにも適用することができる。
[システム]
上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。また、実施例で説明した具体例、分布、数値などは、あくまで一例であり、任意に変更することができる。
上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。また、実施例で説明した具体例、分布、数値などは、あくまで一例であり、任意に変更することができる。
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散や統合の具体的形態は図示のものに限られない。つまり、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、CPUおよび当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
[ハードウェア]
図12は、ハードウェア構成例を説明する図である。図12に示すように、FAQ応答装置10は、通信装置10a、HDD(Hard Disk Drive)10b、メモリ10c、プロセッサ10dを有する。また、図12に示した各部は、バス等で相互に接続される。
図12は、ハードウェア構成例を説明する図である。図12に示すように、FAQ応答装置10は、通信装置10a、HDD(Hard Disk Drive)10b、メモリ10c、プロセッサ10dを有する。また、図12に示した各部は、バス等で相互に接続される。
通信装置10aは、ネットワークインタフェースカードなどであり、他のサーバとの通信を行う。HDD10bは、図2に示した機能を動作させるプログラムやDBを記憶する。
プロセッサ10dは、図2に示した各処理部と同様の処理を実行するプログラムをHDD10b等から読み出してメモリ10cに展開することで、図2等で説明した各機能を実行するプロセスを動作させる。すなわち、このプロセスは、FAQ応答装置10が有する各処理部と同様の機能を実行する。具体的には、プロセッサ10dは、画面制御部21、FAQ処理部22等と同様の機能を有するプログラムをHDD10b等から読み出す。そして、プロセッサ10dは、画面制御部21、FAQ処理部22等と同様の処理を実行するプロセスを実行する。
このようにFAQ応答装置10は、プログラムを読み出して実行することで評価方法を実行する情報処理装置として動作する。また、FAQ応答装置10は、媒体読取装置によって記録媒体から上記プログラムを読み出し、読み出された上記プログラムを実行することで上記した実施例と同様の機能を実現することもできる。なお、この他の実施例でいうプログラムは、FAQ応答装置10によって実行されることに限定されるものではない。例えば、他のコンピュータまたはサーバがプログラムを実行する場合や、これらが協働してプログラムを実行するような場合にも、本発明を同様に適用することができる。
このプログラムは、インターネットなどのネットワークを介して配布することができる。また、このプログラムは、ハードディスク、フレキシブルディスク(FD)、CD-ROM、MO(Magneto-Optical disk)、DVD(Digital Versatile Disc)などのコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行することができる。
10 FAQ応答装置
11 通信部
12 記憶部
13 FAQ一覧DB
14 極性値DB
20 制御部
21 画面制御部
22 FAQ処理部
23 ベクトル演算部
24 変換部
25 評価部
26 問合せ部
27 応答部
11 通信部
12 記憶部
13 FAQ一覧DB
14 極性値DB
20 制御部
21 画面制御部
22 FAQ処理部
23 ベクトル演算部
24 変換部
25 評価部
26 問合せ部
27 応答部
Claims (8)
- 質問情報を受け付け、
受け付けた前記質問情報に含まれる単語を、複数の要素にそれぞれ対応付けられる複数の要素値を含む単語ベクトルに変換し、
要素に対応付けられる要素値が含む特定の意味の強さを特定する特定情報を該要素に対応付けて記憶する記憶部を参照し、前記特定情報を用いて、前記単語ベクトルに含まれる前記複数の要素値がそれぞれ含む前記特定の意味の強さを示す複数の意味情報を取得し、
取得した前記複数の意味情報に基づき、受け付けた前記質問情報に関する評価を行う、
処理をコンピュータに実行させることを特徴とする評価プログラム。 - 前記取得する処理は、複数の意味に変換する複数の変換式を用いて、前記単語ベクトルから前記複数の意味を示す複数のベクトル値を取得し、
前記評価を行う処理は、前記複数のベクトル値それぞれが閾値以上である場合、前記質問情報を回答が可能な質問と評価し、前記複数のベクトル値のいずれかが閾値未満である場合、前記質問情報を回答が可能ではない質問と評価することを特徴とする請求項1に記載の評価プログラム。 - 前記変換する処理は、前記質問情報に含まれる各単語を単語ベクトルに変換し、
前記取得する処理は、前記各単語の単語ベクトルから、前記複数の意味情報を取得し、
前記評価を行う処理は、前記複数の意味情報それぞれについて、前記各単語の単語ベクトルから取得された意味情報の累計を算出し、累計結果に基づいて、前記質問情報に関する評価を行うことを特徴とする請求項1に記載の評価プログラム。 - 前記質問情報に関する評価の結果に応じた内容の質問を、前記質問情報を入力した質問者に問い合わせて、追加の質問情報を取得する処理を、前記コンピュータに実行させることを特徴とする請求項1に記載の評価プログラム。
- 前記変換する処理は、前記質問情報と前記追加の質問情報とを組み合わせた新たな質問情報を生成し、前記新たな質問情報から単語を抽出し、各単語を前記単語ベクトルに変換し、
前記取得する処理は、前記新たな質問情報に含まれる前記各単語の単語ベクトルから、前記複数の意味情報を取得し、
前記評価を行う処理は、前記複数の意味情報それぞれについて、前記各単語の単語ベクトルから取得された意味情報の累計を算出し、累計結果に基づいて、前記質問情報に関する評価を行うことを特徴とする請求項4に記載の評価プログラム。 - 前記評価が閾値以上である第1の質問情報に対応する第1の単語ベクトルと、前記第1の質問情報に含まれる単語のうち前記特定の意味に該当する単語が除外された第2の質問情報に対応する第2の単語ベクトルとを用いて、前記特定情報を生成する処理を、前記コンピュータに実行させることを特徴とする請求項1に記載の評価プログラム。
- 質問情報を受け付け、
受け付けた前記質問情報に含まれる単語を、複数の要素にそれぞれ対応付けられる複数の要素値を含む単語ベクトルに変換し、
要素に対応付けられる要素値が含む特定の意味の強さを特定する特定情報を該要素に対応付けて記憶する記憶部を参照し、前記特定情報を用いて、前記単語ベクトルに含まれる前記複数の要素値がそれぞれ含む前記特定の意味の強さを示す複数の意味情報を取得し、
取得した前記複数の意味情報に基づき、受け付けた前記質問情報に関する評価を行う、
処理をコンピュータが実行することを特徴とする評価方法。 - 質問情報を受け付ける受付部と、
受け付けた前記質問情報に含まれる単語を、複数の要素にそれぞれ対応付けられる複数の要素値を含む単語ベクトルに変換する変換部と、
要素に対応付けられる要素値が含む特定の意味の強さを特定する特定情報を該要素に対応付けて記憶する記憶部を参照し、前記特定情報を用いて、前記単語ベクトルに含まれる前記複数の要素値がそれぞれ含む前記特定の意味の強さを示す複数の意味情報を取得する取得部と、
取得した前記複数の意味情報に基づき、受け付けた前記質問情報に関する評価を行う評価部と、
を有することを特徴とする情報処理装置。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020535356A JP7081671B2 (ja) | 2018-08-06 | 2018-08-06 | 評価プログラム、評価方法および情報処理装置 |
PCT/JP2018/029471 WO2020031242A1 (ja) | 2018-08-06 | 2018-08-06 | 評価プログラム、評価方法および情報処理装置 |
US17/166,463 US11275887B2 (en) | 2018-08-06 | 2021-02-03 | Non-transitory computer-readable recording medium, evaluation method, and information processing device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2018/029471 WO2020031242A1 (ja) | 2018-08-06 | 2018-08-06 | 評価プログラム、評価方法および情報処理装置 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US17/166,463 Continuation US11275887B2 (en) | 2018-08-06 | 2021-02-03 | Non-transitory computer-readable recording medium, evaluation method, and information processing device |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2020031242A1 true WO2020031242A1 (ja) | 2020-02-13 |
Family
ID=69414281
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2018/029471 WO2020031242A1 (ja) | 2018-08-06 | 2018-08-06 | 評価プログラム、評価方法および情報処理装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11275887B2 (ja) |
JP (1) | JP7081671B2 (ja) |
WO (1) | WO2020031242A1 (ja) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001014337A (ja) * | 1999-06-30 | 2001-01-19 | Sharp Corp | 検索装置及び検索プログラムを記録した記録媒体 |
JP2007148661A (ja) * | 2005-11-25 | 2007-06-14 | Ntt Docomo Inc | コミュニティ制御システム及びコミュニティ制御方法 |
JP2012088893A (ja) * | 2010-10-19 | 2012-05-10 | Kyoto Univ | 質問応答システム |
Family Cites Families (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001022763A (ja) | 1999-07-06 | 2001-01-26 | Tadamitsu Ryu | コンピュータによる自然語対話システム |
US8983962B2 (en) * | 2005-02-08 | 2015-03-17 | Nec Corporation | Question and answer data editing device, question and answer data editing method and question answer data editing program |
JP2006227823A (ja) * | 2005-02-16 | 2006-08-31 | Canon Inc | 情報処理装置及びその制御方法 |
US9436759B2 (en) * | 2007-12-27 | 2016-09-06 | Nant Holdings Ip, Llc | Robust information extraction from utterances |
US9430563B2 (en) * | 2012-02-02 | 2016-08-30 | Xerox Corporation | Document processing employing probabilistic topic modeling of documents represented as text words transformed to a continuous space |
JP5825676B2 (ja) * | 2012-02-23 | 2015-12-02 | 国立研究開発法人情報通信研究機構 | ノン・ファクトイド型質問応答システム及びコンピュータプログラム |
JP5464295B1 (ja) | 2013-08-05 | 2014-04-09 | 富士ゼロックス株式会社 | 応答装置及び応答プログラム |
CN105701120B (zh) * | 2014-11-28 | 2019-05-03 | 华为技术有限公司 | 确定语义匹配度的方法和装置 |
US9647968B2 (en) * | 2015-03-25 | 2017-05-09 | Pypestream Inc | Systems and methods for invoking chatbots in a channel based communication system |
US10382379B1 (en) * | 2015-06-15 | 2019-08-13 | Guangsheng Zhang | Intelligent messaging assistant based on content understanding and relevance |
US20170085509A1 (en) * | 2015-09-17 | 2017-03-23 | Vicente Fernandez | Semantics classification aggregation newsfeed, an automated distribution method |
US9996533B2 (en) * | 2015-09-30 | 2018-06-12 | International Business Machines Corporation | Question answering system using multilingual information sources |
US10606846B2 (en) * | 2015-10-16 | 2020-03-31 | Baidu Usa Llc | Systems and methods for human inspired simple question answering (HISQA) |
US10755177B1 (en) * | 2015-12-31 | 2020-08-25 | Amazon Technologies, Inc. | Voice user interface knowledge acquisition system |
CN106980624B (zh) * | 2016-01-18 | 2021-03-26 | 阿里巴巴集团控股有限公司 | 一种文本数据的处理方法和装置 |
US10606952B2 (en) * | 2016-06-24 | 2020-03-31 | Elemental Cognition Llc | Architecture and processes for computer learning and understanding |
JP6929539B2 (ja) * | 2016-10-07 | 2021-09-01 | 国立研究開発法人情報通信研究機構 | ノン・ファクトイド型質問応答システム及び方法並びにそのためのコンピュータプログラム |
US10621219B2 (en) * | 2017-02-10 | 2020-04-14 | International Business Machines Corporation | Techniques for determining a semantic distance between subjects |
US10380259B2 (en) * | 2017-05-22 | 2019-08-13 | International Business Machines Corporation | Deep embedding for natural language content based on semantic dependencies |
US11200269B2 (en) * | 2017-06-15 | 2021-12-14 | Microsoft Technology Licensing, Llc | Method and system for highlighting answer phrases |
US10678816B2 (en) * | 2017-08-23 | 2020-06-09 | Rsvp Technologies Inc. | Single-entity-single-relation question answering systems, and methods |
US11200506B2 (en) * | 2017-12-15 | 2021-12-14 | Microsoft Technology Licensing, Llc | Chatbot integrating derived user intent |
US20190260694A1 (en) * | 2018-02-16 | 2019-08-22 | Mz Ip Holdings, Llc | System and method for chat community question answering |
US10978056B1 (en) * | 2018-04-20 | 2021-04-13 | Facebook, Inc. | Grammaticality classification for natural language generation in assistant systems |
-
2018
- 2018-08-06 WO PCT/JP2018/029471 patent/WO2020031242A1/ja active Application Filing
- 2018-08-06 JP JP2020535356A patent/JP7081671B2/ja active Active
-
2021
- 2021-02-03 US US17/166,463 patent/US11275887B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001014337A (ja) * | 1999-06-30 | 2001-01-19 | Sharp Corp | 検索装置及び検索プログラムを記録した記録媒体 |
JP2007148661A (ja) * | 2005-11-25 | 2007-06-14 | Ntt Docomo Inc | コミュニティ制御システム及びコミュニティ制御方法 |
JP2012088893A (ja) * | 2010-10-19 | 2012-05-10 | Kyoto Univ | 質問応答システム |
Also Published As
Publication number | Publication date |
---|---|
US20210157971A1 (en) | 2021-05-27 |
JP7081671B2 (ja) | 2022-06-07 |
JPWO2020031242A1 (ja) | 2021-09-30 |
US11275887B2 (en) | 2022-03-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6544131B2 (ja) | 情報処理装置及び情報処理プログラム | |
Montoya‐Weiss et al. | On‐line focus groups: conceptual issues and a research tool | |
CN111552880B (zh) | 基于知识图谱的数据处理方法、装置、介质及电子设备 | |
KR20160055930A (ko) | 연속적인 소셜 커뮤니케이션에 사용되는 콘텐츠를 능동적으로 구성하기 위한 시스템 및 방법 | |
JP6178208B2 (ja) | 質問分野判定装置及び質問分野判定方法 | |
CN110580282B (zh) | 通过仿真用户与客服交互的方法及装置 | |
Radford et al. | Not dead yet! A longitudinal study of query type and ready reference accuracy in live chat and IM reference | |
US20170243116A1 (en) | Apparatus and method to determine keywords enabling reliable search for an answer to question information | |
WO2014141976A1 (ja) | ソーシャル・メデイアにおけるユーザの分類方法、コンピュータ・プログラム及びコンピュータ | |
JP6442807B1 (ja) | 対話サーバ、対話方法及び対話プログラム | |
WO2013094361A1 (ja) | ソーシャル・メデイアにおけるコミュニティを検出する方法、コンピュータ・プログラム、コンピュータ | |
CN116775815B (zh) | 对话数据的处理方法、装置、电子设备及存储介质 | |
Hadiana | Kansei analysis of interface's elements for mobile commerce application | |
AU2019298610B2 (en) | Search device and program | |
US20150293988A1 (en) | System and Method for Opinion Sharing and Recommending Social Connections | |
US10394804B1 (en) | Method and system for increasing internet traffic to a question and answer customer support system | |
CN116484880A (zh) | 信息处理方法、装置、电子设备及存储介质 | |
WO2020031242A1 (ja) | 評価プログラム、評価方法および情報処理装置 | |
CN107871254A (zh) | 提供数据对象信息的方法及装置 | |
WO2021095358A1 (ja) | 学習方法、評価装置、及び評価システム | |
Ovuakporaye | The Impact, Comparison and Usefulness of Digital Marketing Communications Tools on Organizational Profit Maximization Using Facebook | |
JP7268070B2 (ja) | 回答装置、回答方法、回答プログラム | |
Gröndahl | Public knowledge of digital cookies: Exploring the design of cookie consent forms | |
Alahmed et al. | “How Does ChatGPT Work” Examining Functionality To The Creative AI CHATGPT on X's (Twitter) Platform | |
CN111897910A (zh) | 信息推送方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
ENP | Entry into the national phase |
Ref document number: 2020535356 Country of ref document: JP Kind code of ref document: A |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 18929141 Country of ref document: EP Kind code of ref document: A1 |