Estimation device and estimation method
The estimation device accurately connects questioners with suitable answerers in closed groups by using historical message analysis and score updates, enhancing recommendation accuracy through tracking and behavioral data.
Patent Information
- Application Number
- PCT/JP2024/028155
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-08-06
- Publication Date
- 2026-02-12
AI Technical Summary
Conventional methods struggle to accurately connect questioners with appropriate answerers in closed groups, leading to potential inaccuracies in recommendation systems due to psychological barriers and lack of feedback mechanisms, which can degrade recommendation accuracy.
An estimation device that selects a second user to answer a question based on a first user's input, historical message analysis, and score updates, using a question destination estimation unit and an update unit to refine user scores based on message exchanges and behavioral history.
Enables accurate introduction of answerers by tracking question resolution without direct feedback, improving recommendation accuracy by adjusting scores based on actual outcomes and behavioral data.
Smart Images

Figure JP2024028155_12022026_PF_FP_ABST
Abstract
Description
Estimation device and estimation method
[0001] The present invention relates to an estimation device and an estimation method.
[0002] Conventionally, technologies have been developed to make tacit knowledge explicit and to improve searchability so that necessary knowledge can be easily found.
[0003] Examples of such technologies include cross-document searches of documents scattered throughout a company and the accumulation of FAQs (Frequently Asked Questions). By collecting and accumulating various knowledge and further improving searchability, even those without business knowledge can access the necessary information with minimal effort. Furthermore, in recent years, interactive document search AI that utilizes large-scale language models known as LLMs (Large Language Models) has emerged (see, for example, Non-Patent Document 1).
[0004] There is also technology that estimates the knowledge (keyword centrality) and human relationships (intimacy network) held by chat speakers from chat data, etc., and recommends close people who are connected to the desired knowledge (see, for example, non-patent document 2).
[0005] Llamaindex, [online], [Retrieved July 29, 2024], Internet, <URL: https: / / www.llamaindex.ai / > Pham Thanh Quang, Junichi Yamamoto, Study on Knowledge Management Systems Considering Human Relationships, 7F-02, 82nd National Convention of the Information Processing Society of Japan, 2020, <URL: https: / / ipsj.ixsq.nii.ac.jp / ej / ?action=pages_view_main&active_action=repository_view_main_item_detail&item_id=205763&item_no=1&page_id=13&block_id=8>
[0006] However, the conventional techniques have a problem in that they are unable to accurately introduce respondents to questions.
[0007] In closed groups such as corporate organizations, it can be more difficult to assess the accuracy of the people connected and the information provided than in open groups. For example, when a question is answered by connecting someone or by someone actively answering, the conversation may end amicably even if the answer is incorrect. This may be because the person ends the conversation by thanking the person before confirming the accuracy of the answer, or because even if they realize that the answer is incorrect, they may not be able to correct the answerer due to psychological barriers.
[0008] Note that connecting means introducing the questioner to an appropriate person to answer the question (answer). For example, the system can connect the questioner and the answerer by outputting information for identifying an appropriate person to answer the question.
[0009] In other words, if the accuracy of the recommendation results is measured only by the content of the direct conversation, in the above situation, the conversation will be judged to have led to a problem resolution because it ended amicably. Furthermore, from the next time onwards, the recommender and the response content will be given a stronger weight indicating the accuracy of the recommendation results, which may result in a decrease in recommendation accuracy.
[0010] Unlike closed groups, in open Q&A forums (such as websites), feedback mechanisms such as third-party comments and voting to indicate whether the content was helpful or not make it easier to judge whether it was helpful or not, thereby reducing the occurrence of the problems mentioned above.
[0011] It is possible to create a similar feedback system in a closed environment, but there are challenges, such as the difficulty of getting a response if only a small number of people view the question, and the difficulty of receiving negative evaluations due to actions taken to avoid friction within the organization.
[0012] In order to solve the above-mentioned problems, the estimation device of the present invention is characterized by having: a question destination estimation unit that selects a second user to whom the question is to be asked from among a plurality of users, based on a question message input by a first user, a history of messages input by each of a plurality of users, and a score set for each of the plurality of users; and an update unit that updates the score based on messages exchanged between the first user and the second user, messages exchanged between the first user and users other than the second user among the plurality of users, or a behavioral history of the second user.
[0013] According to the present invention, it is possible to introduce an answerer to a question with high accuracy.
[0014] FIG. 1 is a diagram illustrating a problem with an estimation device that does not perform tracking. FIG. 2 is a diagram illustrating an overview of the processing of the estimation device. FIG. 3 is a diagram illustrating an example of the configuration of the estimation device. FIG. 4 is a diagram illustrating processing for estimating a respondent. FIG. 5 is a diagram illustrating processing for determining a solution status. FIG. 6 is a diagram illustrating processing for determining a solution status. FIG. 7 is a diagram illustrating processing for finalizing a result. FIG. 8 is a diagram illustrating behavior tracking. FIG. 9 is a flowchart illustrating an example of a presentation procedure executed by the estimation device. FIG. 10 is a flowchart illustrating an example of a tracking procedure executed by the estimation device. FIG. 11 is a diagram illustrating a computer that executes a program.
[0015] DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, a description will be given of an embodiment of the present invention with reference to the drawings, but the present invention is not limited to the embodiment.
[0016] First, an overview of the estimating device of this embodiment will be described. The estimating device estimates an appropriate question recipient in response to a question from a questioner and presents the estimation result (candidate question recipients). Furthermore, the estimating device determines whether the question from the questioner has been resolved. Note that the process referred to as tracking in the following description includes the process of determining whether the question from the questioner has been resolved.
[0017] For example, if a user has no documented information they want to know (tacit knowledge) and doesn't know who to ask when they're in trouble (tacit knowledge of the knowledge owner), the estimation device estimates who they should ask and presents the information to them. After presenting the information, the estimation device tracks whether the user's question has been resolved and reflects the results of the investigation in specified data.
[0018] In the following description, the estimation device will be described taking as an example a case where it estimates the destination of a user's question based on a post in a chat system, but estimation may also be performed based on a post other than a chat system. Note that a post refers to an input of a message to a chat system or the like.
[0019] First, the problem of an estimation device that does not perform tracking will be described with reference to Fig. 1. Fig. 1 is a diagram for explaining the problem of an estimation device that does not perform tracking.
[0020] The estimation device estimates each poster's skills (including, for example, knowledge, abilities, interests, etc.), attributes, and level of motivation to answer questions from the chat logs in a chat log DB (database), and stores the estimation results in the attribute DB as attribute information of the poster (user).
[0021] Then, as shown in Figure 1, when the estimation device receives a question from a user (UserX) such as "I don't know how to set up XX in in-house system A," it extracts chat logs 1a, 2a, and 3a from the chat log DB as chat logs that are highly relevant to the question.
[0022] Next, the estimation device estimates users who possess the tacit knowledge (users who can answer the question) from the extracted chat log posts. In the example of Figure 1, User C is estimated to be the user who possesses the tacit knowledge.
[0023] For example, if there is a post in the extracted chat log that is highly similar to a user's question, the estimating device determines whether the problem asked in the post has been solved. If the estimating device determines that the problem asked in the post has been solved, it estimates that the poster who has answered the post is a "user who can answer the question."
[0024] On the other hand, if the estimation device determines that the problem asked in the post has not been resolved, it estimates that the poster who is answering the post is a “user who cannot answer the question.” Furthermore, if the similarity between the content of the question asked in the extracted chat log post and the content of the question from the user is not high, the estimation device refers to the attribute information of the poster and estimates whether the poster can answer the question.
[0025] For example, in chat log 1a shown in FIG. 1, User B is unable to solve the problem in in-house system A. Therefore, the estimating device estimates that "User B cannot answer User X's question." Also, in chat log 2a, User C is able to solve the password problem in in-house system A. Therefore, the estimating device estimates that "User C can answer User X's question."
[0026] Furthermore, in chat log 3a, User D did not solve the problem with ERROR1234 in in-house system A, but solved a problem with a different error code in the same system. Furthermore, User D's attribute information reveals that "User D independently answers advanced questions from multiple users, and is highly proficient in the system and proactive." Therefore, the estimation device estimates that "User D can answer User X's questions."
[0027] The estimation device then weights posters estimated to be able to answer the user's question based on their personal relationships and attributes (e.g., their motivation to answer).
[0028] For example, the estimation device ranks posters (UserC, UserD) estimated to be able to answer a question based on their personal relationships with the asker (UserX), their motivation to answer, etc., and presents them in order of how likely the asker (UserX) is to ask a question and how likely they are to actively answer the question. This allows the asker to know who to ask a question to and, among them, who should be given priority. In the example of Figure 1, the estimation device introduces UserC as the answerer.
[0029] One way to improve the accuracy of the estimation device's answerer introduction is to display reputations on the UI and receive feedback from the questioner. The reputations include whether the answer was helpful and whether the question was resolved.
[0030] On the other hand, if UserC belongs to the same organization as UserX, UserX may not honestly state that the answer was not helpful or that the question was not resolved in order to avoid friction within the organization.
[0031] In contrast, the estimation device of this embodiment can determine whether the question has been resolved without receiving feedback from the questioner. Furthermore, the estimation device can update the answerer's score based on the determination result and reflect the score in determining whether or not the answer can be provided.
[0032] Here, an outline of the processing of the estimation device will be explained using Fig. 2. Fig. 2 is a diagram for explaining an outline of the processing of the estimation device.
[0033] As shown in Figure 2, in response to User X's question, "I don't know how to set up X in in-house system A," the estimation device introduces User C as the person to ask, as described in Figure 1. After User X and User C exchange information via chat or other means, the estimation device determines that User C's suggestion (response result) is correct. The estimation device then adjusts internal parameters (e.g., a score, which will be described later) based on the response result.
[0034] Furthermore, the estimation device detects the exchange between UserX and UserC and chat logs on similar topics, and tracks the subsequent behavior of the questioner (UserX) based on the detected chat logs. If the veracity of UserC's suggestion can be confirmed from the subsequent information, the estimation device readjusts its internal parameters based on the answer results and their truthfulness.
[0035] In the example shown in Figure 2, the support staff's input in the chat log confirmed that User C's answer was incorrect, so the parameters are adjusted to make User C less likely to be selected as the answerer for similar questions.
[0036] [Configuration Example] An example configuration of the estimation device 10 will be described with reference to Fig. 3. The estimation device 10 includes, for example, an input / output unit 11, a storage unit 12, and a control unit 13.
[0037] The input / output unit 11 is an interface that controls the input and output of various data. The input / output unit 11 receives, for example, a question input from a user. The input / output unit 11 also outputs an estimation result of who the user should ask the question to (candidates of appropriate people to whom the user should ask the question).
[0038] The storage unit 12 stores data, programs, etc. that are referenced when the control unit 13 executes various processes. The storage unit 12 is realized by a semiconductor memory element such as a random access memory (RAM) or a flash memory, or a storage device such as a hard disk or an optical disk.
[0039] For example, the storage unit 12 includes a chat log DB (posted information storage unit) 121. The storage unit 12 also includes an attribute DB (attribute information storage unit) 122 that accumulates attribute information of each user created by the control unit 13.
[0040] The control unit 13 is responsible for overall control of the estimation device 10. The functions of the control unit 13 are realized, for example, by a central processing unit (CPU) executing a program stored in the storage unit 12.
[0041] The control unit 13 includes, for example, an attribute analysis unit 131, an input reception unit 132, an extraction unit 133, an answer possibility estimation unit 134, a question destination estimation unit (question destination output unit) 135, a judgment unit 136, and an update unit 137.
[0042] The attribute analysis unit 131 analyzes the skills and attributes of each user from the posts of each user and stores the analysis results as attribute information for each user in the attribute DB 122. For example, the attribute analysis unit 131 creates attribute information for each user from the posts of each user in the chat log DB 121 and stores the information in the attribute DB 122.
[0043] For example, the attribute analysis unit 131 extracts major keywords from the content of chat posts in the chat log DB 121, classifies the nature of the post (whether it is a question or a general post) and the topic, and analyzes the relationship between the keywords and the poster.
[0044] Then, through the above analysis, the attribute analysis unit 131 obtains analysis results such as the nature of the chat log post, keywords, topics, technical level, questioner, answerer, the answerer's proactiveness, whether or not the problem was ultimately successfully solved (result), etc. Then, the attribute analysis unit 131 creates attribute information of the poster from the analysis results of the post content and stores it in the attribute DB 122.
[0045] The input receiving unit 132 receives a question input from a user. The extraction unit 133 extracts from the chat log DB 121 a series of posts whose relevance to the input user question is equal to or greater than a predetermined value.
[0046] For example, the estimation device 10 may convert each piece of text in the chat system into a multidimensional vector in advance and store the vector in the chat log DB 121. For example, a Generative Pretrained Transformer (GPT), a Bidirectional Encoder Representations from Transformers (BERT), or the like may be used to vectorize the text.
[0047] The extraction unit 133 then vectorizes the input question from User X and searches for logs that are semantically similar to the question (logs with a short vector distance) from the chat log DB 121. In this way, the extraction unit 133 extracts, for example, a series of chat logs whose relevance to the question is equal to or greater than a predetermined value.
[0048] The answer possibility estimation unit 134 estimates whether or not the poster of the post can answer the user's question based on the series of posts (chat logs) extracted by the extraction unit 133.
[0049] For example, the answerability estimation unit 134 estimates whether the poster of a series of chat logs can answer the user's question based on the natural language pairing the user's question with the series of chat logs and the attribute information of the chat poster.
[0050] For example, if the answerability estimation unit 134 determines that the similarity between a question in the extracted series of posts and the user's question is equal to or greater than a predetermined value, it estimates whether the poster can answer the user's question based on whether the poster was ultimately able to solve the problem in the series of posts. On the other hand, if the answerability estimation unit 134 determines that the similarity between a question in the extracted series of posts and the user's question is less than a predetermined value, it estimates whether the poster can answer the question based on the poster's skills and attributes indicated in the attribute information.
[0051] For example, the answer possibility estimation unit 134 estimates whether or not a poster of a series of chat logs can answer a user's question based on the following viewpoints.
[0052] - Similarity of questions in a series of posts with the user's question - Whether the problem was ultimately solved in a series of posts - Accuracy of the poster's answers in a series of posts (for example, how many exchanges it took to answer the question) - Who answered in a series of posts
[0053] For example, if the similarity between a question in a series of posts extracted by the extraction unit 133 and a user's question is equal to or greater than a predetermined value, the answerability estimation unit 134 estimates whether the poster can answer the user's question based on whether the problem was ultimately solved in the series of posts, who the poster who ultimately answered was, and whether the poster's answer was accurate. Note that an example of the method for estimating answerability by the answerability estimation unit 134 is as described in FIG. 1.
[0054] When the answer possibility estimation unit 134 estimates whether the poster is able to answer, it may take into consideration attribute information of the poster (for example, whether the poster is knowledgeable about the in-house system A, whether the poster is highly motivated to answer, etc.).
[0055] Furthermore, the answer possibility estimation unit 134 estimates whether or not a reply is possible based on the attribute information of the user. In the example of Fig. 1, if the answer possibility estimation unit 134 obtains information from the attribute information of User D that "User D is a former developer of System A, uses System A on a daily basis, is knowledgeable about the technical aspects, and is kind to people in trouble," the answer possibility estimation unit 134 estimates that "User D can reply."
[0056] The question recipient estimation unit 135 selects an appropriate question recipient from among the users estimated to be able to answer the question by the answer ability estimation unit 134. For example, the question recipient estimation unit 135 weights users who are easy for the asker to ask questions to and who are estimated to be likely to answer the question proactively from among the users estimated to be able to answer the question, and outputs the weighted users as question recipient candidates.
[0057] For example, based on the attribute information of each user who is estimated to be able to answer the question, the question recipient estimation unit 135 outputs users who have a close relationship with the questioner (e.g., User X) and who are highly proactive in answering the question as candidates for question recipients.
[0058] For example, the question recipient estimation unit 135 acquires the personal relationships between the users (e.g., User C and User D) analyzed from the chat log and the questioner (e.g., User X). The question recipient estimation unit 135 also acquires information about the department to which each user (User X, User C, User D) belongs from an external DB such as personnel data.
[0059] The question recipient estimation unit 135 then estimates the level of relationship between UserX and each user (UserC, UserD) from the acquired information. For example, the question recipient estimation unit 135 estimates that a user who has a close relationship with UserX and belongs to the same department as UserX is a user who has a strong relationship with UserX. The question recipient estimation unit 135 also acquires the level of answering motivation (proactivity) of each user (UserC, UserD) from the attribute information of each user (UserC, UserD).
[0060] Then, based on these estimation results and the acquired information, the question recipient estimation unit 135 weights users who are estimated to have a strong relationship with the questioner and who are likely to actively answer questions, and outputs them as candidates for question recipients.
[0061] 4 is a diagram for explaining the process of estimating an answerer. As shown in FIG. 4, the answer possibility estimation unit 134 determines whether each user can answer based on the chat log DB 121.
[0062] The question recipient estimation unit 135 references the chat log DB 121 and the attribute DB 122, acquires information about User C, such as "user of system A," "has a general understanding of the basic content," and "would tell you if asked," and calculates a support score of "0.87" based on the acquired information. The question recipient estimation unit 135 calculates support scores for multiple users who have been determined to be able to answer the question, and estimates that User C, who has the highest support score, is the most suitable answerer. In other words, the question recipient estimation unit 135 selects a question recipient from among the users in the chat.
[0063] The question recipient estimation unit 135 outputs information about the most suitable answerer, so that the questioner (UserX) can know to whom to ask a question and, among them, to whom the question should be given priority.
[0064] The determination unit 136 determines the state of the question through tracking. For example, the determination unit 136 determines whether the solution state is a successful solution (the question is solved) or a failed solution. Furthermore, the determination unit 136 determines whether the determined solution state is determined or undetermined. Note that the state of a question is determined based on the question and the answer, and therefore may be referred to as the state of the question and the answer.
[0065] Furthermore, the update unit 137 updates the score of each user in accordance with the determination result by the determination unit 136. The score affects the weighting by the question recipient estimation unit 135. For example, the question recipient estimation unit 135 assigns a larger weight to a user as the score increases. A user with a larger weight is more likely to be selected as an answerer.
[0066] That is, the question recipient estimation unit 135 selects a second user to whom the question will be asked from among the multiple users based on the question message input by the first user (questioner), the history of messages input by each of the multiple users, and the scores set for each of the multiple users.
[0067] 5 and 6 are diagrams illustrating the process of determining the resolution status. As shown in Fig. 5, the determination unit 136 determines whether the status of the question is resolved or unsuccessful based on the chat logs between the questioner (User X) and the answerer (User C).
[0068] The determination unit 136 can make a determination by analyzing the text of the chat log converted into a multidimensional vector, detecting specific keywords from the text of the chat log, or inputting the text of the chat log into the LLM along with a prompt that identifies the state.
[0069] For example, if the questioner enters text that affirms the solution, such as "Thank you! I was able to change the settings!", the determination unit 136 determines that the state of the question is solved and confirmed. In this case, the update unit 137 significantly increases the score of User C.
[0070] For example, if the asker enters text that denies the solution, such as "Sorry, it doesn't seem to appear in the detailed menu," the determination unit 136 determines that the state of the question is a solution failure and confirmation state. In this case, the update unit 137 decreases the score of User C.
[0071] For example, if the questioner enters text such as "Thank you! That's helpful!" that does not confirm or deny the solution, the determination unit 136 determines that the state of the question is solved but undetermined. In this case, the update unit 137 increases the score of User C by a moderate amount (a smaller increase than in the case of a large increase).
[0072] If the determination unit 136 determines that the state is undetermined, it further determines by tracking based on the chat log. As shown in Fig. 6, the situation after the question may be that the answerer engages in a conversation in the chat mentioning that the answer was invalid, that the answerer enters a message in the chat asking another person a question equivalent to the one asked to the asker, or that the answerer shares with another person in the chat.
[0073] For example, if the questioner makes a conversation that mentions that the answer was invalid, such as "Inquiry: I can't find the setting item for XX in the detailed settings of in-house system A," the determination unit 136 determines that the state of the question is a failed and confirmed state. In this case, the update unit 137 decreases the score of User C.
[0074] For example, if the questioner makes a conversation that mentions that the answer was invalid, such as "Inquiry: I can't find the setting item for XX in the detailed settings of in-house system A," the determination unit 136 determines that the state of the question is a failed and confirmed state. In this case, the update unit 137 decreases the score of User C.
[0075] For example, if the asker inputs a message asking another person a question similar to the one he or she asked the asker, such as "Does anyone know how to set up XX in company system A?", the determination unit 136 determines that the state of the question is a solution failure and a confirmation state. In this case, the update unit 137 decreases the score of User C.
[0076] For example, if the asker answers another person's question, "Does anyone know how to set up XX in company system A?" with a similar answer to the answerer, "I was able to change the settings from the advanced menu," the determination unit 136 determines that the state of the question is resolved and confirmed. In this case, the update unit 137 significantly increases the score of User C.
[0077] For example, the judgment unit 136 judges whether the question has been resolved successfully and whether the success or failure has been confirmed based on messages exchanged between the first user and the second user, and if it determines that the success or failure has not been confirmed, judges whether the question has been resolved successfully based on messages exchanged between the first user and users other than the second user among multiple users.
[0078] In the example of Figure 6, UserX is an example of a first user. UserC is an example of a second user. The support staff, UserY, the user to whom the question "Does anyone know how to set up XX on company system A?" is addressed, is an example of a user other than the second user.
[0079] The update unit 137 updates the score based on the determination result of the determination unit 136. That is, the update unit 137 updates the score based on messages exchanged between the first user and the second user, and messages exchanged between the first user and users other than the second user among the multiple users or the behavior history of the second user.
[0080] Furthermore, the update unit 137 can confirm the answer result of the answerer depending on the state of the confirmed question. Fig. 7 is a diagram illustrating the process of confirming the result. As shown in Fig. 7, it is assumed that the answer message of the answerer (User C) to the questioner (User X), "XX can be set from the detailed menu," is discovered to be incorrect by a message from User A in a future conversation, "The item XX in the detailed menu of System A does not appear..."
[0081] In this case, the state of the question is determined to be solution failed and confirmed, and the update unit 137 decreases the score of the answerer. Furthermore, the update unit 137 assigns a flag to the message of the incorrect answer, such as "XX can be set from the advanced menu," indicating that the message is to be excluded from the search targets. The update unit 137 may also add accurate information to the message, such as "This answer is incorrect. Only the system administrator can set it."
[0082] Correction of Results by Behavior Tracking The determination unit 136 may determine the state of a question based on the behavior of the questioner, in addition to the chat log.
[0083] FIG. 8 is a diagram illustrating behavior tracking. For example, assume that a terminal (such as a PC) used by a user (including the questioner) is pre-installed with an agent program. The agent program collects the user's behavior history on the terminal. The behavior history includes the terminal's operation log, browser history (web browser access history to websites), screen captures, and created documents (for example, daily work reports).
[0084] The determination unit 136 determines the state of the question based on the behavioral history acquired from the agent program. As shown in FIG. 8, the questioner (User X) asks a question such as, "I don't know how to set up XX in in-house system A," and receives the answer, "XX can be set from the advanced menu." After that, the state of the question is considered resolved and undetermined. FIG. 8 is a diagram explaining the process of correcting the result.
[0085] For example, if the browser history of the behavioral history includes an access history to a website related to the answer (e.g., a website explaining detailed settings for system A), the judgment unit 136 judges the status of the question to be unsuccessful and confirmed.
[0086] For example, if the screen capture of the behavior history includes a screen where an operation related to the answer has been completed (the setting completion screen of system A), the determination unit 136 determines that the state of the question is resolved and confirmed.
[0087] For example, if the daily work report file of the behavioral history indicates that the operation related to the answer has been completed (the configuration of system A has been completed), the judgment unit 136 judges the status of the question to be resolved and confirmed.
[0088] In this way, the update unit 137 updates the score based on the behavioral history, which is at least one of a screen capture of the terminal used by the first user (questioner), the operation history of the terminal, the operation history of the terminal, and documents created on the terminal. The operation history of the terminal includes the history of the web browser.
[0089] [Example of Processing Procedure] Next, an example of processing procedure executed by the estimation device 10 will be described with reference to Fig. 9 and Fig. 10. Fig. 9 is a flowchart showing an example of a presentation procedure executed by the estimation device. The presentation procedure includes a procedure for updating attribute information and a procedure for presenting a question destination in response to a question.
[0090] First, when the attribute analysis unit 131 of the estimation device 10 acquires a new chat post (S11), it extracts changes in the knowledge and skills of the user (poster) from the post (S12), and updates the attribute information of the user in the attribute DB 122 based on the extracted changes (S13). The attribute analysis unit 131 performs the above process every time a new chat post is acquired or at predetermined intervals.
[0091] The input receiving unit 132 of the estimation device 10 receives a question from a questioner (S21). Thereafter, the extraction unit 133 extracts a plurality of chat logs (chat log groups) that are highly relevant to the question received in S21 (S22). Next, the answer availability estimation unit 134 selects one group from the chat log groups extracted in S22 (S23) and estimates whether the poster of the selected chat log group can answer the question (S24).
[0092] If the reply possibility estimation unit 134 estimates in S24 that the poster can reply (Yes in S24), it adds the chat log group to the reply possible list (S25). On the other hand, if the reply possibility estimation unit 134 estimates that the poster cannot reply (No in S24), it proceeds to S26.
[0093] If there are still chat log groups that have not been selected in S26 (Yes in S26), the process returns to S23. On the other hand, if all chat log groups have been selected (No in S26), the process proceeds to S27. The question destination estimation unit 135 then extracts attribute information of the posters of the chat log groups registered in the answerable list from the attribute DB 122 (S27). Thereafter, the question destination estimation unit 135 determines and presents a question destination from among the posters of the chat log groups registered in the answerable list based on the attribute information extracted in S27 (S28).
[0094] At this time, the question recipient estimation unit 135 reflects the poster's score, which is updated by the update unit 137 based on tracking, in determining the question recipient. The score may be part of the attribute information.
[0095] Fig. 10 is a flowchart showing an example of a tracking procedure executed by the estimation device. The process in Fig. 10 is executed after step S28 in Fig. 9. Based on the determination result, the determination unit 136 classifies the question and answer into one of the following states: resolved (confirmed) (resolved and confirmed), resolved (resolved and unconfirmed), or unsuccessful resolution (confirmed) (unsuccessful resolution and confirmed) (step S31).
[0096] Here, if the resolution of the question and answer has been confirmed (if the status is either resolved and confirmed, or failed to be resolved and confirmed) (Yes in step S32), the update unit 137 will confirm the status of the question (for example, remove the unconfirmed flag that allows the status to be changed), update the answerer's score according to the status, and, if necessary, assign metadata to the answer content (for example, a flag indicating that the answer will be excluded from the search target described in Figure 7) (step S33).
[0097] If the question and answer have been resolved or not (if the status is resolved and unresolved) (No in step S32), the determination unit 136 assigns an unresolved flag (e.g., a flag that allows the status to be changed) to the question (step S34), and searches the posts and actions of the questioner for new posts or action history similar to the question content (step S35).If the search does not yield a hit (No in step S36), the determination unit 136 continues searching.
[0098] If the search results in a hit (Yes in step S36), the determination unit 136 returns to step S32 and repeats the process. If the search results in a hit, the determination unit 136 determines the status of the question as solved (confirmed) or unsuccessfully solved (confirmed) based on the search result.
[0099] The processes of steps S34, S35, and S36 are one aspect of the process of making a determination based on the chat log described with reference to FIG. 6 and the process of making a determination based on the behavior history described with reference to FIG.
[0100] [Effects of the embodiment] The question destination estimation unit 135 selects a second user to whom a question is to be asked from among the multiple users, based on a question message input by a first user (questioner), a history of messages input by each of the multiple users, and scores set for each of the multiple users. The update unit 137 updates the score based on messages exchanged between the first user and the second user, and messages exchanged between the first user and users other than the second user among the multiple users or the behavior history of the second user.
[0101] The determination unit 136 determines whether the question has been solved and whether the success or failure has been confirmed based on messages exchanged between the first user and the second user, and if it determines that the success or failure has not been confirmed, determines whether the question has been solved based on messages exchanged between the first user and users other than the second user among the multiple users. The update unit 137 updates the score based on the determination result of the determination unit 136.
[0102] In this way, the estimation device 10 can determine whether a question has been resolved based on the message exchange between the questioner and users other than the question recipient, without receiving direct feedback from the questioner through reputation or the like. Furthermore, the result of the determination is reflected in the score for selecting the question recipient. As a result, according to this embodiment, it is possible to introduce an answerer to a question with high accuracy.
[0103] The update unit 137 updates the score based on a behavioral history, which is at least one of a screen capture of the device used by the first user (questioner), an operation history of the device, a behavior history of the device, and a document created on the device. This allows the estimation device 10 to determine whether the question has been resolved even if the questioner does not input a message.
[0104] The process for presenting the query destination by the estimation device 10 may include the process described in International Application PCT / JP2023 / 044515.
[0105] [System Configuration, etc.] The components of each unit shown in the figure are conceptual functional units and do not necessarily have to be physically configured as shown. In other words, the specific form of distribution and integration of each device is not limited to that shown, and all or part of them can be functionally or physically distributed and integrated in any unit depending on various loads, usage conditions, etc. Furthermore, all or any part of the processing functions performed by each device can be realized by a CPU and a program executed by the CPU, or can be realized as hardware using wired logic.
[0106] Furthermore, among the processes described in the above embodiments, all or part of the processes described as being performed automatically can be performed manually, or all or part of the processes described as being performed manually can be performed automatically using a known method.In addition, the information including the processing procedures, control procedures, specific names, various data and parameters shown in the above documents and drawings can be changed as desired unless otherwise specified.
[0107] [Program] The above-described estimation device 10 can be implemented by installing a program (estimation program) as package software or online software on a desired computer. For example, by executing the above-described program on an information processing device, the information processing device can function as the estimation device 10. The information processing device referred to here includes mobile communication terminals such as smartphones, mobile phones, and PHS (Personal Handyphone Systems), as well as terminals such as PDAs (Personal Digital Assistants).
[0108] 11 is a diagram showing an example of a computer that executes an estimation program. The computer 1000 includes, for example, a memory 1010 and a CPU 1020. The computer 1000 also includes a hard disk drive interface 1030, a disk drive interface 1040, a serial port interface 1050, a video adapter 1060, and a network interface 1070. These components are connected by a bus 1080.
[0109] The memory 1010 includes a read-only memory (ROM) 1011 and a random access memory (RAM) 1012. The ROM 1011 stores a boot program such as a basic input / output system (BIOS). The hard disk drive interface 1030 is connected to a hard disk drive 1090. The disk drive interface 1040 is connected to a disk drive 1100. A removable storage medium such as a magnetic disk or optical disk is inserted into the disk drive 1100. The serial port interface 1050 is connected to a mouse 1110 and a keyboard 1120, for example. The video adapter 1060 is connected to a display 1130, for example.
[0110] The hard disk drive 1090 stores, for example, an OS 1091, an application program 1092, a program module 1093, and program data 1094. That is, the programs that define the processes executed by the above-described estimation device 10 are implemented as program modules 1093 in which computer-executable code is written. The program modules 1093 are stored, for example, in the hard disk drive 1090. For example, the program modules 1093 for executing processes similar to those of the functional configuration of the estimation device 10 are stored in the hard disk drive 1090. Note that the hard disk drive 1090 may be replaced with an SSD (Solid State Drive).
[0111] Data used in the processing of the above-described embodiment is stored as program data 1094, for example, in the memory 1010 or the hard disk drive 1090. The CPU 1020 then reads the program module 1093 or the program data 1094 stored in the memory 1010 or the hard disk drive 1090 into the RAM 1012 as necessary and executes them.
[0112] The program module 1093 and program data 1094 may not necessarily be stored in the hard disk drive 1090, but may also be stored in a removable storage medium and read by the CPU 1020 via the disk drive 1100 or the like. Alternatively, the program module 1093 and program data 1094 may be stored in another computer connected via a network (such as a local area network (LAN) or a wide area network (WAN)). The program module 1093 and program data 1094 may then be read by the CPU 1020 from the other computer via the network interface 1070.
[0113] REFERENCE SIGNS LIST 10 Estimation device 11 Input / output unit 12 Storage unit 13 Control unit 121 Chat log DB 122 Attribute DB 131 Attribute analysis unit 132 Input reception unit 133 Extraction unit 134 Answer possibility estimation unit 135 Question recipient estimation unit 136 Determination unit 137 Update unit
Claims
1. An estimation device comprising: a question destination estimation unit that selects a second user from a plurality of users to whom the question is to be asked, based on a question message input by a first user, a history of messages input by each of a plurality of users, and a score set for each of the plurality of users; and an update unit that updates the score based on messages exchanged between the first user and the second user, messages exchanged between the first user and users other than the second user among the plurality of users, or a behavior history of the second user.
2. The estimation device described in claim 1 further has a judgment unit that judges whether the question has been solved and whether the success or failure has been confirmed based on messages exchanged between the first user and the second user, and if it is determined that the success or failure has not been confirmed, judges whether the question has been solved based on messages exchanged between the first user and users other than the second user among the multiple users, and the update unit updates the score based on the judgment result of the judgment unit.
3. The estimation device described in claim 1, characterized in that the update unit updates the score based on the behavioral history, which is at least one of a screen capture of the terminal used by the first user, the operation history of the terminal, the operation history of the terminal, and documents created on the terminal.
4. An estimation method executed by an estimation device, comprising: a question recipient estimation step of selecting a second user from a plurality of users to whom the question is to be asked, based on a question message input by a first user, a history of messages input by each of a plurality of users, and a score set for each of the plurality of users; and an update step of updating the score based on messages exchanged between the first user and the second user, messages exchanged between the first user and users other than the second user among the plurality of users, or a behavioral history of the second user.
Citation Information
Patent Citations
Method and system for predicting user satisfaction
CN117952259A
Retrieving method and retrieving device
JP2003108592A
Information processing device, information processing method, and information processing program
WO2023248597A1