Program, information processing apparatus and information processing method
The information processing apparatus addresses the inefficiency of dialogue systems by analyzing search queries to generate targeted responses, ensuring adequate information retrieval without excess or deficiency, enhancing user experience.
Patent Information
- Application Number
- JP2024006971
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-01-19
- Publication Date
- 2025-08-01
- Estimated Expiration
- 2044-01-19
AI Technical Summary
Existing dialogue systems struggle to efficiently retrieve desired information when user queries are ambiguous, often presenting excessive or insufficient information, leading to user inconvenience and inefficiency.
An information processing apparatus that includes a search unit, candidate generation unit, determination unit, decision unit, and response generation unit to analyze search queries, generate operation candidates, determine information sufficiency, and produce targeted responses without excess or deficiency.
Enables users to efficiently obtain required information by generating responses that accurately include or exclude unnecessary details, reducing the need for additional user input and improving search efficiency.
Smart Images

Figure 2025112629000001_ABST
Abstract
Description
Technical Field
[0001] Embodiments of the present invention relate to a program, an information processing apparatus, and an information processing method.
Background Art
[0002] Dialogue systems that receive a user's input sentence, search for information related to the input sentence, and respond based on the search results are utilized in many scenarios. When a large number of related information is retrieved due to deficiencies or ambiguities in the user's input sentence, the dialogue system makes a follow-up inquiry to prompt additional input and receives an additional input sentence from the user. Through such multiple exchanges, the dialogue system can perform searches and retrieve desired information even for complex and ambiguous requests.
Prior Art Documents
Patent Documents
[0003] [[ID=2,1]] [[ID=2,2]] [[ID=2,3]]
Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0004] [[ID=3,4]] [[ID=3,5]]An object of the present invention is to provide a program, an information processing apparatus, and an information processing method capable of more efficiently retrieving information. [[ID=3,6]] [[ID=3,7]]
Means for Solving the Problems
[0005] [[ID=4,1]] The program of the embodiment causes a computer to execute a search step of searching for one or more texts that match a search query from a text group to be searched, a candidate generation step of generating one or more candidates for operations for generating a response to the search query using the search query, the searched text, and a determination step of determining whether there is an excess or deficiency in the information included in the first response generated according to each candidate, and a determination step based on the determination result of the determination step. A determination step of determining one of the one or more candidates as an operation for generating a response, and a response generation step of generating a second response according to the determined operation.
Brief Description of the Drawings
[0006] [Figure 1] Block diagram of the information processing apparatus according to the embodiment. [Figure 2] Flowchart of the response generation process in the embodiment. [Figure 3] Block diagram of the information processing apparatus according to Modification 1. [Figure 4] Flowchart of the response generation process in Modification 1. [Figure 5] Block diagram of the information processing apparatus according to Modification 2. [Figure 6] Flowchart of the response generation process in Modification 2. [Figure 7] Hardware configuration diagram of the information processing apparatus according to the embodiment.
Embodiments for Carrying Out the Invention
[0007] Hereinafter, with reference to the accompanying drawings, preferred embodiments of the program, information processing apparatus, and information processing method according to the present invention will be described in detail.
[0008] As described above, an interactive system has been proposed that outputs a response to an input sentence from a user. For example, assume that the interactive system has retrieved a large number of relevant pieces of information because the search query input by the user is ambiguous. In such a situation, if a large number of pieces of information are presented to the user as they are, the user has to check each of those pieces of information one by one, which is time-consuming and laborious. In an interactive system, even in such a situation, it is desired that the user can easily obtain the desired information.
[0009] As a technique for performing a search considering ambiguity, a technique has been proposed in which keywords are extracted from a search query input by a user, and the ambiguity of the search query is determined based on the dependency information between the keywords and the frequency of occurrence in the search target.
[0010] However, whether a search query is ambiguous and whether the search results contain appropriate information do not necessarily correspond. For example, even when a search query is ambiguous and a plurality of search results are obtained, there may be a case where unnecessary information can be excluded at the response generation stage and only the information required by the user can be presented. In such a case, since asking the user back from the system would cause unnecessary trouble to the user, it is better to respond rather than resolve the ambiguity.
[0011] In the above-described technique for determining ambiguity, since such a determination is not executed, there may be a case where the user cannot easily search for the desired information.
[0012] The information processing apparatus according to the following embodiments generates candidates for operations (hereinafter, operation candidates) that the information processing apparatus should perform next from a search query and search results, determines whether the information required by the user can be appropriately (neither excessively nor insufficiently) provided for each operation candidate, and generates a response according to one operation candidate selected based on the determination result. As a result, the user can search for the desired information more efficiently.
[0013] FIG. 1 is a block diagram showing an example of the configuration of the information processing apparatus 100 according to the present embodiment. As shown in FIG. 1, the information processing apparatus 100 includes a storage unit 121, a display unit 122, a search unit 101, a candidate generation unit 102, a determination unit 103, a decision unit 104, a response generation unit 105, and an output control unit 106.
[0014] The storage unit 121 stores various information used in the information processing apparatus 100. For example, the storage unit 121 stores data (text group) to be searched.
[0015] Note that the storage unit 121 can be configured by any generally used storage medium such as a flash memory, a memory card, a RAM (Random Access Memory), an HDD (Hard Disk Drive), and an optical disk.
[0016] The display unit 122 is a configuration for displaying various information used in the information processing apparatus 100, and is realized by a display device such as a liquid crystal display.
[0017] The search unit 101 searches for one or more texts that match the search query from the text group to be searched. The search query is input by the user using an input device such as a keyboard. The search unit 101 receives the input search query, searches the text group to be searched, and outputs the search result to the candidate generation unit 102.
[0018] The candidate generation unit 102 generates one or more operation candidates that are candidates for operations for generating a response to the search query, using the search query and one or more texts that are the search results by the search unit 101. The candidate generation unit 102 outputs the generated operation candidates to the determination unit 103.
[0019] The determination unit 103 determines whether there is an excess or deficiency (excess or deficiency) in the information included in the response R1 (first response) generated according to the operation candidate for each of the generated operation candidates. The determination unit 103 outputs the determination result to the decision unit 104.
[0020] Based on the determination result by the determination unit 103, the decision unit 104 determines, as an operation for generating a response that the information processing apparatus 100 outputs, one of the one or more operation candidates. The decision unit 104 outputs the determined operation to the response generation unit 105.
[0021] The response generation unit 105 generates a response R2 (second response) according to the determined operation. The response R2 corresponds to the response that is finally presented to the user according to the search query and the search result.
[0022] The output control unit 106 controls the output of various information used in the information processing apparatus 100. For example, the output control unit 106 outputs the response R2 generated by the response generation unit 105. The output method of the response R2 may be any method, and for example, the following methods can be applied. · Display text information representing the response R2 on the display unit 122 or the display device of the device used by the user. · Output voice representing the response R2 to a voice output device such as a speaker provided in the information processing apparatus 100 or the device used by the user. The voice is generated by voice synthesis or the like for the text information representing the response R2.
[0023] At least a part of the above-described respective units (search unit 101, candidate generation unit 102, determination unit 103, decision unit 104, response generation unit 105, and output control unit 106) may be realized by one or more processing units. Each of the above units may be realized by, for example, one or a plurality of processors. For example, each of the above units may be realized by causing a processor such as a CPU (Central Processing Unit) and a GPU (Graphics Processing Unit) to execute a program, that is, by software. Each of the above units may be realized by a processor such as a dedicated IC (Integrated Circuit), that is, by hardware. Each of the above units may be realized by using a combination of software and hardware. When a plurality of processors are used, each processor may realize one of the respective units, or may realize two or more of the respective units.
[0024] Also, the information processing apparatus 100 may be physically configured by one device, or may be physically configured by a plurality of devices. For example, the information processing apparatus 100 may be constructed in a cloud environment. Also, each unit within the information processing apparatus 100 may be provided in a distributed manner across a plurality of devices.
[0025] Next, response generation processing by the information processing apparatus 100 of the present embodiment will be described. FIG. 2 is a flowchart showing an example of response generation processing in the present embodiment.
[0026] The search unit 101 receives the input text input by the user as a search query (step S101). The input text (search query) may be text input via a keyboard, or may be text obtained by speech recognition of speech input from a voice input device such as a microphone.
[0027] The search unit 101 extracts feature quantities from the input search query (step S102). The feature quantity may be any information as long as it represents the features of the search query. For example, the feature quantity may be one or more keywords extracted from the search query, or a vector (such as an embedding vector) representing the meaning of the search query. In the case of keywords, the search unit 101, for example, extracts nouns included in the search query and uses the extracted nouns as keywords. In the case of a vector, the search unit 101, for example, uses a deep learning model such as BERT (Bidirectional Encoder Representations from Transformers) and Transformer to convert the search query into a vector.
[0028] The search unit 101 uses the extracted feature quantities to search for one or more texts related to the search query from the data (text group) to be searched (step S103). For example, when keywords are used as feature quantities, the search unit 101 searches for texts containing the keywords. For example, when a vector is used as a feature quantity, the search unit 101 searches for texts having a vector whose similarity to the vector is equal to or greater than a threshold value. The vector of each text may be generated in advance and stored, for example, in the storage unit 121.
[0029] The candidate generation unit 102 receives the text obtained as the search result from the search unit 101 and the search query, and then generates candidates (operation candidates) for the operations to be performed by the information processing apparatus 100 (step S104). The candidate generation unit 102 generates operation candidates, for example, by the following generation methods M1 and M2. (M1) Select one or more operation candidates corresponding to the search query and the search result from a plurality of predetermined candidates. (M2) Dynamically generate operation candidates from the search query and the search result.
[0030] First, a specific example of (M1) will be described. The predefined operation candidates are candidates for operations that can be generally used for various search queries and search results. These operation candidates are, for example, pre-stored in the storage unit 121 in advance. Examples of the predefined operation candidates are described below. (E1-1) The operation of "generating a response sentence from all of the search results" (E1-2) The operation of "generating a response sentence by adding a fixed string to the search query", such as "What do you want to know about **? " and "Is it okay with **? " (E1-3) The operation of "generating an apology response sentence", such as "Sorry. No information was found", when no search results are obtained
[0031] For example, when the number of texts obtained as search results is equal to or less than the threshold, the candidate generation unit 102 selects the operation candidate of (E1-1). Also, when the number of texts obtained as search results is greater than the threshold, the candidate generation unit 102 selects the operation candidate of (E1-2). (E1-2) corresponds to an operation that makes an inquiry for inputting additional information. In the part of "**", keywords extracted from the search query or the like may be set. Also, when no text is obtained as a search result (the number of texts is 0), the candidate generation unit 102 generates the operation candidate of (E1-3).
[0032] Next, a specific example of (M2) will be described. The operation candidates generated dynamically are candidates for operations for making a more flexible response according to the search situation.
[0033] For example, assume that a large number of search results are obtained for a search query such as "The reason why the screen remains black even when the PC is turned on". Also, assume that each of the large number of search results contains approximately the same number of information related to the PC (personal computer) main body, the display, and the cable connecting the PC main body and the display.
[0034] In such a case, the candidate generation unit 102 generates an operation candidate of "generating a response sentence from the category information (PC main body, display, cable)". Note that the response sentence generated using this operation candidate becomes a sentence such as "A failure of the PC main body, a failure of the display, or a failure of the cable is conceivable...".
[0035] Also, for the same search query "The reason why the screen remains black even when the PC is powered on" as above, there are 30 search results. Among them, 25 pieces of information are related to both the PC main body and the display, and the remaining 5 pieces of information are related to the cable, the graphics board, and the scene setting.
[0036] In such a case, the candidate generation unit 102 generates an operation candidate of "generating a response sentence from the category information (PC main body, display, other)". Note that the response sentence generated using this operation candidate becomes a sentence such as "A failure of the PC main body, a failure of the display, or other failures are conceivable...".
[0037] The above example corresponds to an example of dynamically generating operation candidates with different category information set according to the search results. The candidate generation unit 102 may perform such dynamic generation of operation candidates using, for example, rules created in advance.
[0038] In the example of setting category information, for example, the following rules are used. · When the search results can be roughly evenly clustered, the title of each cluster is extracted as category information, and the extracted category information is set in the "**" of the template of the operation of "generating a response sentence from the category information (**)" to generate an operation candidate.
[0039] For the clustering of search results and the determination of the title, for example, the following method can be applied. · When a text group containing multiple sections and chapters is the search target, cluster by the chapter or section containing the keyword included in the search query, and use the title of the chapter or section as the title of each cluster. · Cluster based on the keywords appearing in each of the search results, and use the keyword with a large difference in appearance frequency compared to other clusters as the title of the cluster. · Convert each search result into a vector using a deep learning model or the like, cluster based on the similarity between the vectors, and generate a title by summarizing using another deep learning model or the like from the information assigned to each cluster. The information assigned to the cluster is, for example, the search results (texts) classified into the cluster.
[0040] Another example of dynamically generating operation candidates will be described. Suppose that for a search query of "ABC2.0 cannot be started", search results containing only information related to "ABC1.0" are obtained. In such a case, the candidate generation unit 102 generates, for example, an operation candidate of "asking back whether it is ABC1.0 and generating a response sentence from the information of ABC1.0". Note that the response sentence generated using this operation candidate is, for example, a sentence such as "Is it ABC1.0? In that case...".
[0041] In this example, for example, the following rules are used. · When there is one search result, while presenting the search result, if there is a difference between the search query and the search result, ask about the difference.
[0042] The difference can be detected, for example, by the following method. · Detect a compound noun that partially matches as a difference. In the above example, the compound nouns "ABC1.0" and "ABC2.0" where the "ABC" part matches correspond to the differences. · Analyze the modification relationship, and if different phrases modify the same keyword in the search query and the search result, detect the modifying phrases as differences.
[0043] Return to the description of FIG. 2. The determination unit 103 determines the sufficiency or insufficiency of the information to be provided for each of the one or more operation candidates generated by the candidate generation unit 102 (step S105). For example, the determination unit 103 determines whether the information to be provided for the search query can be provided without sufficiency or insufficiency by the response generated according to the operation candidate.
[0044] For example, the determination unit 103 uses the comparison result between one or more pieces of topic information T1 (first topic information) included in the response R1 generated according to the operation candidate and one or more pieces of topic information T2 (second topic information) extracted from the search query to determine whether there is sufficiency or insufficiency in the information included in the response R1.
[0045] The topic information is information representing the topic of the text (search query or text group to be searched). The method for extracting the topic information may be any method, and for example, the following methods can be applied. · Extract the title of the chapter or section of the searched text as the topic information. · Use a topic extraction technique from the text. For example, use a model such as a generative AI (Artificial Intelligence) model to extract topic information for the input text.
[0046] When the topic information T2 is not included in the topic information T1, the determination unit 103 determines that there is insufficiency in the information included in the response R1. Also, when topic information different from the topic information T2 is included in the topic information T1, the determination unit 103 determines that the information included in the response R1 is excessive.
[0047] For example, assume that the following two search results are obtained for the search query "Tell me the power consumption of product ABC". · "The power consumption of product ABC is 200 watts" · "The power consumption of product ABC is on average about 200 watts, up to 400 watts in a high-load state, and 60 watts in a standby state"
[0048] Also, assume that the operation candidate "return a response from the search results" is generated. In this case, the determination unit 103 uses this operation candidate to generate, for example, a response sentence "The power consumption of product ABC is 200 watts." A method for generating one response sentence from a plurality of search results may be any method, but for example, a model such as a generation AI model trained to input one or more search results and output a response sentence can be used.
[0049] The determination unit 103 extracts "product ABC" and "power consumption" from the generated response sentence (response R1) as topic information T1. Also, the determination unit 103 extracts "product ABC" and "power consumption" from the search query as topic information T2.
[0050] In this example, since the topic information T1 and the topic information T2 match, the determination unit 103 determines that there is no excess or deficiency in the information included in the generated response sentence (response R1).
[0051] As another example, assume that a search query that does not specify a product such as "Tell me the power consumption" is input, and the following three search results are obtained. · "The power consumption of product ABC is 200 watts" · "The power consumption of product ABC is on average about 200 watts, up to 400 watts under high load, and 60 watts in standby state" · "The power consumption of product DEF is 240 watts"
[0052] Furthermore, assume that the operation candidate "return a response from the search results" is generated in the same manner as above. The determination unit 103 uses this operation candidate to generate, for example, a response sentence "The power consumption of product ABC is 200 watts, and the power consumption of product DEF is 240 watts."
[0053] The determination unit 103 extracts "Product ABC", "Product DEF", and "Power consumption" from the generated response text (Response R1) as topic information T1. In this case, since the topic information "Product DEF", which is different from the topic information T2, is included in the topic information T1, the determination unit 103 determines that the information included in the response text (Response R1) is excessive.
[0054] Suppose that "Ask again whether it is Product ABC or DEF and return a response from the search results for additional input" is generated as an operation candidate. In this case, the determination unit 103 pseudo-generates additional input for the question and pseudo-obtains the search results for the generated input. For example, the determination unit 103 pseudo-generates two inputs, "Product ABC" and "Product DEF", and obtains refined search results for each of the two inputs.
[0055] Regarding the input "Product ABC", the search query, search results, and topic information respectively correspond to the following. · Search query: "Tell me the power consumption" AND "Product ABC" · Topic information of the search query: "Product ABC", "Power consumption" · Search results: "The power consumption of Product ABC is 200 watts", and "The power consumption of Product ABC is on average about 200 watts, up to 400 watts in a high-load state, and 60 watts in a standby state" · Topic information of the response based on the search results: "Product ABC", "Power consumption"
[0056] Regarding the input "Product DEF", the search query, search results, and topic information respectively correspond to the following. · Search query: "Tell me the power consumption" AND "Product DEF" · Topic information of the search query: "Product DEF", "Power consumption" · Search results: "The power consumption of Product DEF is 240 watts" · Topic information of the response based on the search results: "Product DEF", "Power consumption"
[0057] In any case, since the topic information of the search query and the topic information of the response match, the determination unit 103 determines that there is no excess or deficiency in the information included in the generated response. That is, the determination unit 103 determines that there is no excess or deficiency in the provided information regarding the operation candidate "ask back whether it is product ABC or DEF and return a response from the search results for additional input".
[0058] The determination unit 103 may output, as a determination result, a score (hereinafter, determination score) indicating whether there is an excess or deficiency in the information included in the response R1 generated according to the operation candidate. The determination score can be interpreted as representing the degree to which the response R1 generated according to the operation candidate can provide information without excess or deficiency. The determination score may be represented by a real number value from a lower limit value (for example, 0) to an upper limit value (for example, 1).
[0059] The determination unit 103 may calculate the determination score by any method. For example, a method using a model such as a pre-learned deep learning model can be used. This model is learned as follows, for example, by inputting a search query and search results and returning a real number value between 0 and 1.
[0060] First, before learning, learning data (learning samples) including a search query and search results that are positive examples for the search query, and learning data including search results that are negative examples for the search query are prepared.
[0061] Positive examples correspond to learning data including correct search results corresponding to the search query. Negative examples are learning data including incorrect search results corresponding to the search query, and are, for example, the following types of data. · Learning data including search results that contain excessive information unrelated to the search query in addition to information related to the search query · Learning data including search results in which at least a part of the necessary information is missing · Learning data including search results that contain information unrelated to the search query
[0062] The model is trained so that the output is 1 for positive examples and 0 for negative examples, for instance.
[0063] When calculating the determination score, the determination unit 103 may use a pre-trained large language model (LLM). The LLM is trained, for example, to input a search query, search results, and a prompt for inquiring whether there is an excess or deficiency of information, and output a determination score.
[0064] Returning to the description of FIG. 2. The decision unit 104 determines the operation to be performed by the information processing apparatus 100 (step S106) based on the determination result of the determination unit 103 from among one or more operation candidates generated by the candidate generation unit 102. For example, the decision unit 104 uses the determination result to rank the operation candidates according to a rule, and selects the operation candidate with the highest rank as the operation to be adopted. As a rule for ranking, for example, the following rules can be used. · Rank higher the operation candidates that generate responses without excess or deficiency. · Rank higher the operation candidates with a larger number of pieces of topic information T1 that match the topic information T2 extracted from the search query. · Rank higher the operation candidates with a smaller number of pieces of topic information T1 that do not match the topic information T2 extracted from the search query.
[0065] When the determination unit 103 calculates and outputs a determination score, the decision unit 104 may use a rule for ranking based on the value of the determination score.
[0066] The response generation unit 105 generates a response with reference to the search query and search results according to the operation determined by the decision unit 104 (step S107). The response generation unit 105 may use the same method as the method for generating a response when the determination unit 103 makes a determination, or a different method.
[0067] The response generation unit 105 may generate a response by the following method. ·Generate a response by embedding search query and search result information into a pre-prepared response text template corresponding to an operation. ·Use the output obtained by inputting a prompt with the operation, search query, and search result embedded as context into a pre-trained LLM as the response.
[0068] The response text template is prepared for each operation, for example. For example, the response text template is a sentence such as "** has been found" that includes the placeholder "**". One or more keywords extracted from the search results are embedded in the placeholder.
[0069] When using an LLM, the response generation unit 105, for example, inputs an instruction on the task content such as "Generate an assistant's response text for the search query based on the following search query, operation, and search result" and the search query, operation, and search result into the LLM as a prompt to have the LLM generate a response text.
[0070] The response generation unit 105 may generate a response text using the search results as they are, or may generate a response text using the edited text of the search results. For example, when the data size of the search results is small and can be all displayed on the display screen, the response generation unit 105 may embed the search results into the response text as they are. When the data size of the search results is large and cannot be all displayed on the display screen, the response generation unit 105 may summarize each of the search results into a short sentence (summary sentence) and use the summary sentence to generate a response text.
[0071] Return to the description of FIG. 2. The output control unit 106 outputs the generated response text (step S108) and ends the response generation process.
[0072] As described above, in this embodiment, it becomes possible to generate and output a response that includes exactly the information required by the search query without excess or deficiency. For example, even when a large number of search results are obtained, a response containing excessive information is not output, so that the user can search for the desired information more efficiently.
[0073] (Modification Example 1) In Modification Example 1, an example will be described in which the determination criteria used at the time of over / under determination can be set.
[0074] FIG. 3 is a block diagram showing an example of the configuration of the information processing apparatus 100-2 according to Modification Example 1 of the embodiment. As shown in FIG. 3, the information processing apparatus 100-2 includes a storage unit 121-2, a display unit 122, a search unit 101, a candidate generation unit 102, a determination unit 103-2, a decision unit 104, a response generation unit 105, an output control unit 106, and a setting unit 107-2.
[0075] In Modification Example 1, the setting unit 107-2 is added, and the functions of the determination unit 103-2 and the storage unit 121-2 are different from those of the above embodiment. Since the other configurations and functions are the same as those in FIG. 1, which is a block diagram of the information processing apparatus 100 of the above embodiment, the same reference numerals are given, and the description thereof is omitted here.
[0076] The setting unit 107-2 sets the determination criteria used in the determination by the determination unit 103-2. For example, the setting unit 107-2 sets the determination criteria according to at least one of user information and priority information.
[0077] The storage unit 121-2 is different from the storage unit 121 of the above embodiment in that it further stores at least one of user information and priority information.
[0078] First, the setting of the determination criteria according to user information will be described. User information is information about the user that should be considered at the time of over / under determination. For example, user information includes at least one of information representing the attributes (characteristics) of the user who inputs the search query (hereinafter, user attribute information) and information representing the attributes of the device used by the user (hereinafter, device information). User information may be input by the user via the device used by the user, for example.
[0079] Device information is information for specifying, for example, how a device outputs a response and the ability to output a response. For example, the device information may be information that can specify whether the method of outputting the response is display on a display device or output by voice. The device information may be information that can specify, as the ability to output a response, the size of the display device or the like.
[0080] Depending on whether the device used by the user is a device equipped with a display device such as a PC or a device equipped only with a voice output device, the method of outputting the response and the amount of information of the response to be output vary. For example, in the case of a device equipped with a display device, even if the response contains excessive information, it is preferable to output the response earlier. On the other hand, in the case of a device equipped only with a voice output device, since it takes a very long time and is difficult to hear all of the response as voice, it is desirable to output only the minimum necessary information.
[0081] The setting unit 107-2 sets a determination criterion for determining an excess or deficiency of information according to such a device, according to the device information, in order to perform adjustment according to such a device. The determination criterion represents, for example, a threshold value of the number of topic information.
[0082] For example, when the device information indicates that the device is a device equipped with a display device, the setting unit 107-2 sets the threshold value to a larger value. Thereby, a response including excessive topic information having a number below the threshold value can be configured to be output. For example, when the device information indicates that the device is a device equipped only with a voice output device, the setting unit 107-2 sets the threshold value to a smaller value. Thereby, the output of a response including excessive topic information can be minimized.
[0083] The determination unit 103-2 determines the excess or deficiency of the information included in the response R1 using the determination criterion set by the setting unit 107-2. For example, when the number of topic information different from the topic information T2 extracted from the search query included in the topic information T1 included in the response R1 is greater than the threshold value TH1, the determination unit 103-2 determines that the information included in the response R1 is excessive.
[0084] A threshold value TH1 for determining excess or, alternatively, a threshold value TH2 for determining deficiency may be used instead of the threshold value TH1. For example, when the number of pieces of topic information T2 not included in the topic information T1 is greater than the threshold value TH2, the determination unit 103-2 determines that there is a deficiency in the information included in the response R1.
[0085] The user attribute information is, for example, the following information. · Information indicating whether the user is familiar with the field of search · Information indicating whether the user wants a rough answer immediately or a more appropriate answer through dialogue
[0086] An example of the process using the first piece of user attribute information will be described. For example, when the setting unit 107-2 obtains user attribute information indicating that the user is familiar with the field of search, the setting unit 107-2 sets the threshold value to a smaller value. For example, when the setting unit 107-2 obtains user attribute information indicating that the user is not familiar with the field of search, the setting unit 107-2 sets the threshold value to a larger value.
[0087] For example, assume that the search target is the manuals of a plurality of home appliances, and the user owns a specific home appliance among the plurality of home appliances. In such a case, for this specific home appliance, user attribute information indicating that the user is familiar with the field of search is set.
[0088] The setting unit 107-2 sets the determination criteria for the specific home appliance to more strictly determine excess or deficiency. For example, the setting unit 107-2 sets the threshold value as the determination criterion to a smaller value. On the other hand, the setting unit 107-2 sets the determination criteria for home appliances other than the specific home appliance to more loosely determine excess or deficiency. For example, the setting unit 107-2 sets the threshold value as the determination criterion to a larger value.
[0089] Note that the determination unit 103-2 determines, for example, which home appliance the response R1 generated in accordance with the candidate action is related to, and determines whether there is a surplus or deficiency using the determination criterion for the determined home appliance.
[0090] This allows the system to provide the desired information accurately for home appliances that the user is familiar with (e.g., owns), while quickly providing general information for other home appliances that the user is not familiar with.
[0091] The second example of processing using user attribute information will be described below. In order to resolve any excess or deficiency of information contained in a response, the user may be asked questions again, but when questions are asked again, it takes more time to obtain the desired information. For this reason, some users may prioritize obtaining information as quickly as possible and prefer fewer questions, assuming that the user will select information from rough information themselves. On the other hand, some users may prioritize obtaining more appropriate information and prefer to be provided with only appropriate information, even if it means more questions, rather than having the user select information from a large amount of information themselves.
[0092] Therefore, when user attribute information indicating that the user wants a quick, even rough, answer is obtained, setting unit 107-2 sets the threshold to a larger value. When user attribute information indicating that the user wants a more appropriate answer through dialogue is obtained, setting unit 107-2 sets the threshold to a smaller value.
[0093] Setting unit 107-2 can adjust the criteria used to determine whether the amount is excessive or insufficient in accordance with such user preferences, thereby enabling a dialogue suited to the user's preferences.
[0094] Next, the setting of the determination criteria according to the priority information will be described. The priority information is, for example, information indicating whether to prioritize the topic information for each topic information. The priority information may be set in any way, but can be set, for example, by the following method. · A method of using the history information extracted from the usage log of the information processing apparatus 100 as the priority information · A method of setting according to an input by an administrator of the information processing apparatus 100 or the like
[0095] When a large number of usage logs are accumulated, a general tendency can be obtained regarding the operation of the information processing apparatus 100 and the user's selection for the operation. For example, tendencies such as "when making a reply to a certain search query, the same option is selected in almost all cases" and "this reply is rarely selected" can be obtained. The information representing this tendency can be interpreted as history information (priority information) indicating that the topic information with a higher selection frequency than other topic information is prioritized.
[0096] Also, for example, immediately after a new product (new function) is announced, inquiries regarding the new product may temporarily increase. In such a case, in order to make it easier to output information regarding the new product in the response, priority information indicating that the topic information related to the new product is prioritized may be used. Such priority information may be input, for example, by the administrator of the information processing apparatus 100.
[0097] The setting unit 107-2 sets, for example, a determination criterion that the topic information indicated to be prioritized by the priority information is topic information that is not determined to be excessive.
[0098] The determination unit 103-2 determines that the information included in the response R1 is excessive, for example, when the topic information different from the topic information T2 extracted from the search query and included in one or more topic information T1 included in the response R1 is not included in the topic information that is not determined to be excessive.
[0099] Next, a response generation process by information processing device 100-2 according to the first modification will be described with reference to Fig. 4. Fig. 4 is a flowchart showing an example of the response generation process according to the first modification.
[0100] Setting unit 107-2 receives the user information and priority information, and sets the determination criteria used in the determination by determination unit 103-2 in accordance with the received user information and priority information (step S201).
[0101] Steps S202 to S205 are the same as steps S101 to S104 in the information processing apparatus 100 of the above embodiment, and therefore a description thereof will be omitted.
[0102] In this modification, the determining unit 103-2 determines whether there is excess or deficiency of information for each of the motion candidates using the set determination criteria (step S206).
[0103] Steps S207 to S209 are the same as steps S106 to S108 in the information processing apparatus 100 of the above embodiment, and therefore a description thereof will be omitted.
[0104] As described above, in the first modification, the operation to be performed by the information processing device 100 can be appropriately selected according to the user's situation, etc. This makes it possible to provide information within the range acceptable to the user without unnecessary questioning.
[0105] (Variation 2) In the second modification, an example will be described in which information indicating that there is a surplus or deficiency (surplus or deficiency information) can be output.
[0106] Fig. 5 is a block diagram showing an example of the configuration of an information processing device 100-3 according to Modification 2 of the embodiment. As shown in Fig. 5, the information processing device 100-3 includes a storage unit 121, a display unit 122, a search unit 101, a candidate generation unit 102, a determination unit 103, a determination unit 104, a response generation unit 105, and an output control unit 106-3.
[0107] In Modification 2, the function of the output control unit 106-3 is different from that in the above embodiment. Since the other configurations and functions are the same as those in FIG. 1 which is the block diagram of the information processing apparatus 100 in the above embodiment, the same reference numerals are used and the description here is omitted.
[0108] The output control unit 106-3 is different from the output control unit 106 in the above embodiment in that it has a function of generating and outputting excess / deficiency information to be presented to the user by using the search query, the search result, the operation, and the determination result by the determination unit 103.
[0109] The excess / deficiency information is information indicating how much excess or deficiency the response and the search result have with respect to the search query. The excess / deficiency information is used to convey the excess / deficiency state to the user in an easy-to-understand manner.
[0110] For example, the output control unit 106-3 generates and outputs excess / deficiency information indicating whether the topic information is topic information with no excess / deficiency, excessive topic information, or deficient topic information, as follows. · Topic information with no excess / deficiency: Topic information included in both the topic information T1 included in the response R1 and the topic information T2 extracted from the search query · Excessive topic information: Topic information included in the topic information T1 but not included in the topic information T2 · Deficient topic information: Topic information included in the topic information T2 but not included in the topic information T1
[0111] In web search technology, for example, when a search query such as "TV failure" is entered, narrowing search queries such as "TV failure, no image on the screen" and "TV failure, no power" may be proposed as highly relevant search queries. Also, when searching with a search query that includes multiple keywords that are likely not to be included in a single text, such as "failure, pi", supplementary information such as "not included: failure | make essential: failure" may be displayed for search results that hit only on "pi" and not on "failure". This makes it easier to understand the correspondence with the search query when checking the list of search results. Also, the search results can be narrowed down without checking search results that contain excessive information.
[0112] In contrast, the excess / deficiency information of this modification example can indicate, in the response text, for which part of the search query information is provided, which part is excessive, and which part is deficient. For example, in the response text "Is it ABC1.0? If so... " for the search query "ABC2.0 cannot be started", the part "ABC2.0" at the beginning of the search query corresponds to the deficient part in the response text.
[0113] The output control unit 106-3 may output a response together with the excess / deficiency information. Also, the output control unit 106-3 may use the excess / deficiency information to output a plurality of topic information with different excess / deficiency states in mutually different output modes. For example, the output control unit 106 may output excessive topic information and topic information with no excess / deficiency in an output mode that emphasizes them more than the topic information with no excess / deficiency.
[0114] The output mode can be any mode. For example, when displaying a response, it includes the color of the characters to be displayed, the size of the characters, the type of font, the presence or absence of a strikethrough, overwriting with a cross mark, and the color of the background, etc. This enables the user to intuitively understand the search results. When the response is synthesized into speech and played back, the output mode is, for example, the volume, the speech rate, and the insertion of short pauses or sound effects before and after, etc. This enables the user to intuitively grasp the adequacy without having to check the screen.
[0115] Next, the response generation process by the information processing apparatus 100-3 of Modification 2 will be described with reference to FIG. 6. FIG. 6 is a flowchart showing an example of the response generation process in Modification 2.
[0116] Steps S301 to S307 are the same as steps S101 to S107 in the information processing apparatus 100 of the above embodiment, so the description thereof will be omitted.
[0117] The output control unit 106-3 generates the adequacy information to be presented to the user from the operations to be performed next by the information processing apparatus 100-2, the determination result of the adequacy for the operations, the search results, and the search query (step S308). The output control unit 106-3 outputs the response sentence generated in step S307 and the adequacy information generated in step S308 (step S309), and ends the response generation process.
[0118] As described above, according to the present embodiment, since a response based on an operation according to whether the information processing apparatus can provide the information required by the user without excess or deficiency is generated, the user can search for the desired information more efficiently.
[0119] Next, the hardware configuration of the information processing apparatus of the embodiment will be described with reference to FIG. 7. FIG. 7 is an explanatory diagram showing an example of the hardware configuration of the information processing apparatus of the embodiment.
[0120] The information processing apparatus according to the embodiment includes a control device such as a CPU (Central Processing Unit) 51, a storage device such as a ROM (Read Only Memory) 52 and a RAM (Random Access Memory) 53, a communication I / F 54 that connects to a network and performs communication, and a bus 61 that connects each part.
[0121] The program executed by the information processing apparatus according to the embodiment is provided by being pre-installed in the ROM 52 or the like.
[0122] The program executed by the information processing apparatus according to the embodiment may be configured to be recorded on a computer-readable recording medium such as a CD-ROM (Compact Disk Read Only Memory), a flexible disk (FD), a CD-R (Compact Disk Recordable), or a DVD (Digital Versatile Disk) in an installable or executable file format and provided as a computer program product.
[0123] Furthermore, the program executed by the information processing apparatus according to the embodiment may be configured to be stored on a computer connected to a network such as the Internet and downloaded via the network for provision. Also, the program executed by the information processing apparatus according to the embodiment may be configured to be provided or distributed via a network such as the Internet.
[0124] The program executed by the information processing apparatus according to the embodiment can cause a computer to function as each part of the information processing apparatus described above. This computer can read a program from a computer-readable storage medium and execute it on the main storage device by the CPU 51.
[0125] Although several embodiments of the present invention have been described, these embodiments are presented by way of example and are not intended to limit the scope of the invention. These novel embodiments can be implemented in various other forms, and various omissions, replacements, and changes can be made without departing from the gist of the invention. These embodiments and their modifications are included in the scope and gist of the invention, and are also included in the invention described in the claims and its equivalent scope.
Explanation of Reference Numerals
[0126] 100, 100-2, 100-3 Information Processing Apparatus 101 Search Unit 102 Candidate Generation Unit 103, 103-2 Determination Unit 104 Decision Unit 105 Response Generation Unit 106, 106-3 Output Control Unit 107-2 Setting Unit 121, 121-2 Storage Unit 122 Display Unit
Claims
1. cause a computer to perform a search step of searching for one or more texts that match a search query from a group of texts to be searched; perform a candidate generation step of generating one or more candidates for operations for generating a response to the search query using the search query and the searched text; perform a determination step of determining, for each of the candidates, whether there is an excess or deficiency in the information included in a first response generated according to the candidate; perform a determination step of determining, based on the determination result of the determination step, one of the one or more candidates as an operation for generating a response; perform a response generation step of generating a second response according to the determined operation; A program for causing the above to be executed.
2. The determination step uses a comparison result between one or more pieces of first topic information included in the first response and one or more pieces of second topic information extracted from the search query to determine whether there is an excess or deficiency in the information included in the first response. The program according to claim 1.
3. The determination step determines that there is a deficiency in the information included in the first response when the second topic information is not included in the first topic information, and determines that the information included in the first response is excessive when topic information different from the second topic information is included in the first topic information. The program according to claim 2.
4. The determination step outputs, as the determination result, a score indicating whether there is an excess or deficiency in the information included in the first response. The program according to claim 1.
5. cause the computer to further perform a setting step of setting a determination criterion used in the determination by the determination step, The determination step determines whether there is an excess or deficiency in the information included in the first response generated according to the candidate according to the determination criterion. The program according to claim 1.
6. The setting step sets the determination criterion using user information representing at least one of an attribute of a user who inputs the search query and an attribute of a device used by the user. The program according to claim 5.
7. The determination criterion represents a threshold value of the number of pieces of topic information, The determination step When the number of topic information different from one or more pieces of second topic information extracted from the search query and included in one or more pieces of first topic information included in the first response is greater than the threshold value, it is determined that the information included in the first response is excessive. The program according to claim 5.
8. The determination criterion represents topic information that is not determined to be excessive. The determination step determines that the information included in the first response is excessive when topic information different from one or more pieces of second topic information extracted from the search query and included in one or more pieces of first topic information included in the first response is not included in the topic information that is not determined to be excessive. The program according to claim 5.
9. The setting step sets the determination criterion using priority information indicating whether to prioritize the topic information for each topic information. The program according to claim 8.
10. On the computer an output control step of outputting excess / deficiency information indicating which of the topic information included in at least one of the search query and the second response is included in both the topic information included in one or more pieces of first topic information included in the first response and the topic information included in one or more pieces of second topic information extracted from the search query, the topic information included in the first topic information but not included in the second topic information, and the topic information included in the second topic information but not included in the first topic information is further executed. The program according to claim 1.
11. a search unit that searches for one or more texts that match a search query from a text group to be searched; a candidate generation unit that generates one or more candidates for operations for generating a response to the search query using the search query and the searched text; a determination unit that determines whether there is an excess or deficiency in the information included in the first response generated according to each candidate for each candidate; a determination unit that determines, based on the determination result by the determination unit, one of the one or more candidates as an operation for generating a response; a response generation unit that generates a second response according to the determined operation; An information processing apparatus comprising:
12. An information processing method executed by an information processing apparatus, comprising: a search step of searching for one or more texts that match a search query from a text group to be searched; A candidate generation step of generating one or more candidates for an operation for generating a response to the search query using the search query and the retrieved text; A determination step of determining, for each of the candidates, whether there is an excess or deficiency in the information included in the first response generated according to the candidate; A determination step of determining, based on the determination result by the determination step, one of the one or more candidates as an operation for generating a response; A response generation step of generating a second response according to the determined operation; An information processing method including the above.
Citation Information
Patent Citations
Response generation program, response generation method and response generation apparatus
JP2006031467A
Facilitating offline semantic processing on resource-constrained devices
JP2019516150A
Non-deterministic task initiation by the personal assistant module
JP2019523907A
Dialogue system, dialogue method and dialogue program
JP2021103535A
Dialogue system, dialogue method, program, and storage medium
JP2022105186A