Question push method, device, computer-readable storage medium and computer equipment
By determining the associated information of user input problems in the question-answer database, the problem of low accuracy of push problems in the prior art is solved, and the high accuracy push problems associated with user input problems are realized.
Patent Information
- Application Number
- CN201910598175.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2019-07-04
- Publication Date
- 2025-04-15
- Estimated Expiration
- 2039-07-04
AI Technical Summary
In the prior art, the accuracy of push problems is low because push problems are generally high-frequency problems caused by manual statistics and have no connection with the problems entered by users.
By obtaining the user input questions, determining the problem node corresponding to the question, obtaining the correlation information between the problem node and other problem nodes in the question and answer database, such as the transfer probability or the jump probability, and then determining the problem to be pushed.
Improve the accuracy of push problems, make them related to user input problems, and enhance the relevance and user experience of push problems.
Smart Images

Figure CN110457448B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of computer Internet technology, and in particular to a question pushing method, apparatus, computer-readable storage medium and computer equipment. Background Art
[0002] With the development of FAQ (Frequently Asked Questions), intelligent customer service robots have emerged. Intelligent customer service robots can output answers based on questions entered by users, and also output push questions to guide users to further understand related content.
[0003] However, push questions are generally high-frequency questions that are manually counted and are usually not related to questions entered by users, resulting in low accuracy of push questions. Summary of the invention
[0004] Based on this, it is necessary to provide a question pushing method, apparatus, computer-readable storage medium and computer device to address the technical problem of low accuracy of pushed questions.
[0005] A problem pushing method, comprising:
[0006] Problems with getting input;
[0007] Determining a question node corresponding to the question in a question-answer database;
[0008] Acquire association information between the question node and other question nodes in the question-answer database, wherein the association information includes at least one of a transition probability and a jump probability;
[0009] The problem to be pushed is determined in the other problem nodes according to the associated information.
[0010] A problem pushing device, the device comprising:
[0011] The acquisition module is used to obtain input questions;
[0012] A determination module, used to determine a question node corresponding to the question in the question-answer database;
[0013] The acquisition module is further used to acquire association information between the question node and other question nodes in the question-answer database, wherein the association information includes at least one of a transition probability and a jump probability;
[0014] The determining module is further configured to determine the problem to be pushed in the other problem nodes according to the associated information.
[0015] A computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the processor executes the steps of the question pushing method.
[0016] A computer device includes a memory and a processor, wherein the memory stores a computer program, and when the computer program is executed by the processor, the processor executes the steps of the question pushing method.
[0017] The above-mentioned question pushing method, apparatus, computer-readable storage medium and computer equipment pre-set a question and answer database, which includes question nodes and association information between question nodes, so that when a question input by a user is obtained, the question node corresponding to the question input by the user is determined, and the question to be pushed is determined in other question nodes through the association information between the question node and other question nodes, so that the pushed question is related to the question input by the user, thereby improving the accuracy of the pushed question. BRIEF DESCRIPTION OF THE DRAWINGS
[0018] Figure 1 A diagram of an application environment of a problem pushing method in an embodiment;
[0019] Figure 2 A schematic diagram of a flow chart of a method for pushing questions in an embodiment;
[0020] Figure 3 This is a schematic diagram of an interface of a method for pushing questions in an embodiment;
[0021] Figure 4 A schematic diagram of a deep matching network in one embodiment;
[0022] Figure 5 A schematic diagram of a binary classification model in an embodiment;
[0023] Figure 6 It is a flowchart of a method for pushing questions in another embodiment;
[0024] Figure 7 A flowchart of a method for pushing questions in another embodiment;
[0025] Figure 8 A flowchart of a method for pushing questions in another embodiment;
[0026] Fig. 9 is a structural block diagram of a question pushing device in another embodiment;
[0027] Fig.10 FIG. 4 is a structural block diagram of a computer device in one embodiment. DETAILED DESCRIPTION
[0028] In order to make the purpose, technical solution and advantages of the present application more clearly understood, the present application is further described in detail below in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present application and are not used to limit the present application.
[0029] Figure 1 FIG. 1 is an application environment diagram of a problem push method in an embodiment. Figure 1 The problem push method is applied to a problem push system, which includes a terminal 102 and a server 104. The terminal 102 and the server 104 are connected via a network. The terminal 102 can be a desktop terminal or a mobile terminal, and the mobile terminal can be at least one of a mobile phone, a tablet computer, a laptop computer, etc. The server 104 can be implemented by an independent server or a server cluster composed of multiple servers.
[0030] like Figure 2 As shown, in one embodiment, a method for pushing questions is provided. This embodiment mainly applies this method to the above Figure 1 The terminal 102 (or server 104) in FIG. Figure 2 , the problem pushing method specifically includes the following steps:
[0031] Step 202, obtaining an input question.
[0032] The input question can be a question that the user enters in the application interface through text, voice, etc., or the user can click on the push question displayed in the application interface. Figure 3 In the application interface shown, users can input text, voice, etc. based on the input area at the bottom of the application interface, or directly click on the push questions in the application interface, such as "Where can I check the insurance policy?"
[0033] Step 204: determine the question node corresponding to the question in the question and answer database.
[0034] The question-and-answer database is a pre-established database that contains question nodes obtained through statistics of a large amount of session data. These question nodes cover most of the questions that users are concerned about.
[0035] Among them, session data refers to the historical interaction data between users and manual customer service, or the historical interaction data between users and robots. For example, in a session box, the user enters a question, and the manual customer service outputs an answer based on the question entered by the user. Both the question data and the answer data are session data. First, the questions that users are concerned about can be obtained in the session data. Secondly, since the answers are given by the manual customer service in response to the user's questions, the answers are relatively accurate. Therefore, the question and answer database is constructed using the session data, so that the question and answer database not only covers most of the questions that users are concerned about, but also covers the accurate answers to the questions.
[0036] The question-answer database includes at least two question nodes and association information between the question nodes. The question nodes include question data for the same type of question and answer data corresponding to the question data. Specifically, the method of determining at least two question nodes in the session data may be: performing a matching operation on the question data in the session data and the answer data corresponding to the question data, performing a clustering operation on the matching results, and obtaining at least two question nodes.
[0037] Since different users have different language habits, different users may ask the same question in different ways. Therefore, when obtaining the question input by the user, the query intent of the question is analyzed to determine the question node corresponding to the question in the question and answer database, so as to obtain the answer data; at the same time, the question node corresponding to the question is determined in the question and answer database, and the question to be pushed is determined in other question nodes based on the association relationship between the question node and other question nodes in the question and answer database.
[0038] Specifically, the user inputs a question, and the terminal or server determines the question node corresponding to the question. The method for determining the question node corresponding to the question may be: determining the question node corresponding to the question through the preset knowledge point model of each question node. The probability of the question is calculated using the preset knowledge point model of each question node to obtain the probability that the question belongs to each question node, obtain the preset knowledge point model whose probability meets the preset conditions, and use the question node corresponding to the preset knowledge point model as the question node corresponding to the question. Among them, obtaining the preset knowledge point model whose probability meets the preset conditions may be: sorting the probabilities of each preset knowledge point model, and selecting a preset number of preset knowledge point models from high to low.
[0039] Alternatively, before the step of calculating the probability of the problem using the preset knowledge point model of each problem node, the similarity between the problem and the preset problem node set can be obtained, and the preset problem node set corresponding to the problem can be determined according to the similarity, and then the probability of the problem can be calculated using the preset knowledge point model in the preset problem node set to reduce the amount of calculation. Among them, the preset problem node set refers to a problem node set involving the same or similar knowledge points. It can be understood that each preset knowledge point model is trained by the training data of the corresponding problem node.
[0040] Step 206, obtaining association information between the question node and other question nodes in the question and answer database, wherein the association information includes at least one of a transition probability and a jump probability.
[0041] Among them, the association information is used to characterize the transfer relationship between question nodes. For example, the user enters the first question, and the manual customer service outputs the first answer based on the first question entered by the user. After understanding the first question, the user is interested in the second question, so he enters the second question, and the manual customer service outputs the second answer based on the second question entered by the user. Then, association information is generated between the first question and the second question.
[0042] Among them, the associated information can be quantified by the transition probability or the jump probability. Both the transition probability and the jump probability refer to the probability that a user will ask another question after asking one question. The difference is that in a conversation box, the user first enters the first question and then the second question. If the second question is a high-frequency question, the associated information between the first question and the second question is quantified by the transition probability. If the second question is a low-frequency question, the associated information between the first question and the second question is quantified by the jump probability. Whether the problem node is high-frequency or low-frequency can be judged based on the relationship between the frequency of the problem node in the conversation data and the frequency threshold. If the frequency of the problem node is greater than the frequency threshold, the problem node is regarded as a high-frequency problem node. If the frequency of the problem node is not greater than the frequency threshold, the problem node is regarded as a low-frequency problem node.
[0043] Specifically, the question-answering database includes at least two question nodes and the association information between the question nodes, and a question node directed graph is generated based on the association information between the question nodes to represent the association between multiple question nodes. Therefore, the association information between the question node and other question nodes in the question-answering database can be obtained through the question-answering database.
[0044] Step 208: determining the problem to be pushed in the other problem nodes according to the associated information.
[0045] Specifically, other problem nodes with a high correlation with the problem node corresponding to the problem are obtained, and the problem to be pushed is determined in these problem nodes. The size of the correlation can be quantified by the transition probability or jump probability between the problem node corresponding to the problem and other problem nodes. In this way, the correlation information between the problem nodes can realize the push of low-frequency problems; the method based on sequence transfer is used to mine the progressive relationship between problems, so that the pushed problems have a hierarchy.
[0046] In the technical solution disclosed in this embodiment, a question and answer database is pre-set, and the question and answer database includes question nodes and association information between question nodes, so that when a question input by a user is obtained, the question node corresponding to the question input by the user is determined, and the question to be pushed is determined in other question nodes through the association information between the question node and other question nodes, so that the pushed question is related to the question input by the user, thereby improving the accuracy of the pushed question.
[0047] In one embodiment, after the step of obtaining the input question, the method further includes: when there is no question node corresponding to the question in the question and answer database, obtaining the answer to the question; updating the question and answer database according to the question and the answer to the question; or, when there is no question node corresponding to the question in the question and answer database, obtaining the answer to the question and the association information between the question and the adjacent questions in the question sequence; updating the question and answer database according to the question, the answer to the question and the association information between the adjacent questions.
[0048] Specifically, when there is no question node corresponding to the question in the question and answer database, it means that the question is not included in the question and answer database, so the question and the answer corresponding to the question can be included in the question and answer database.
[0049] For example, when the user enters the first question, the terminal or server does not find the question node corresponding to the question in the question-answer database. The following situations may occur:
[0050] 1. The user transfers to manual customer service. The manual customer service outputs the first answer based on the first question input by the user, associates the first question with the first answer, and uploads the association result to the question and answer database; or sends the association result to the terminal where the user ID with the staff's authority is located. When receiving the confirmation information responded by the terminal where the user ID with the staff's authority is located, the association result is uploaded to the question and answer database.
[0051] 2. The user ends the consultation. The first question entered by the user can be sent to the terminal where the user ID of the staff member has authority. When the question and answer responded by the terminal where the user ID of the staff member has authority are received, the question and answer are associated and uploaded to the question and answer database.
[0052] 3. After the user enters the first question, regardless of whether the answer is obtained in the question and answer database, the user may enter the second, third, and Nth questions. Then, the questions are associated with each other, and the associated information between the questions can be obtained. The questions, answers, and associated information can be uploaded to the question and answer database together.
[0053] The question sequence refers to a sequence obtained by sorting questions in the same dialog box according to input time.
[0054] Take the example of a user entering the first question and then the second question: if the second question already exists in the database, the transition probability can be used to characterize the correlation between the first and second questions; if the second question does not already exist in the database, the jump probability can be used to characterize the correlation between the first and second questions.
[0055] Before the questions, answers and related information are included in the database, they can also be sent to the terminal where the user ID of the staff member with authority is located. When the confirmation information of the terminal where the user ID of the staff member with authority is located is received, the questions, answers and related information are uploaded to the database.
[0056] In the technical solution disclosed in this embodiment, when there is no question node corresponding to a question in the question and answer database, the question and answer database is updated according to the question to improve the question coverage of the question and answer database.
[0057] In one embodiment, after the step of obtaining the input question, the method further includes: when there is no question node corresponding to the question in the question and answer database, determining the question to be pushed in a preset question node.
[0058] Among them, the preset problem nodes refer to pre-specified problem nodes, such as high-frequency problem nodes.
[0059] Specifically, when there is no question node corresponding to the question in the question-and-answer database, it is difficult to obtain questions related to the question. In this case, some preset questions, such as high-frequency questions, can be pushed to the user.
[0060] In the technical solution disclosed in this embodiment, when there is no question node corresponding to the question in the question and answer database, a preset question is pushed to the user to stimulate the user's interest in understanding related content.
[0061] In one embodiment, the question and answer database is constructed in the following manner: obtaining session data, determining at least two of the question nodes in the session data; determining association information between at least two of the question nodes; and generating the question and answer database based on at least two of the question nodes and association information between at least two of the question nodes.
[0062] Among them, the question and answer database is a pre-established database, which contains question nodes obtained through a large amount of conversation data statistics. These question nodes cover most of the issues that users are concerned about. Through the question and answer database, the intelligent customer service robot can provide intelligent answers to the questions entered by users.
[0063] The session data refers to the historical interaction data between the user and the human customer service, or the historical interaction data between the user and the robot. The method of determining at least two question nodes in the session data may be: performing a matching operation on the question data in the session data and the answer data corresponding to the question data, and performing a clustering operation on the matching results to obtain at least two question nodes.
[0064] The question-answer database includes at least two question nodes and association information between the question nodes. The question nodes include question data for the same type of question and answer data corresponding to the question data. The association information is used to characterize the transition relationship between the question nodes. The association information can be quantified by transition probability or jump probability. Both transition probability and jump probability refer to the probability that a user will ask another question after asking one question.
[0065] Specifically, a question node directed graph is generated based on the association information between question nodes to represent the association between multiple question nodes. Therefore, through the question-answering database, the association information between the question node and other question nodes in the question-answering database can be obtained.
[0066] In the technical solution disclosed in this embodiment, a question-and-answer database is pre-set to determine questions to be pushed that are related to the input question through the question-and-answer database.
[0067] In one embodiment, the step of determining the association information between at least two of the problem nodes includes: obtaining the frequencies corresponding to the first problem node and the second problem node respectively; when the frequency of the second problem node is greater than the frequency threshold, obtaining the transition probability of the first problem node, and using the transition probability as the association information between the first problem node and the second problem node; when the frequency of the second problem node is not greater than the frequency threshold, obtaining the jump probability of the first problem node, and using the jump probability as the association information between the first problem node and the second problem node.
[0068] Among them, there is association information between the first question node and the second question node, and the position of the question corresponding to the first question node in the question sequence is earlier than the position of the question corresponding to the second question node in the question sequence, that is, in a conversation box, the user first enters the question corresponding to the first question node, and then enters the question corresponding to the second question node.
[0069] Among them, the frequency threshold is used to distinguish whether the problem node is a high-frequency problem or a low-frequency problem. It can be understood that there can be multiple frequency thresholds, which can distinguish the problem nodes into high frequency, medium-high frequency, medium frequency, medium-low frequency, low frequency, etc. For the convenience of description, this application only describes high-frequency problems and low-frequency problems. The frequency threshold can be set according to the actual application, and the present invention does not make specific limitations.
[0070] Specifically, the calculation method of the transition probability can be: the probability of jumping from a high-frequency question or a low-frequency question to each high-frequency question is equal. Assuming there are M high-frequency questions, the probability of jumping from a high-frequency question or a low-frequency question to another high-frequency question is 1 / M. Alternatively, taking users as units, count the question sequences of users in each session, construct a two-dimensional matrix of questions-questions, normalize the frequency, use the frequency to represent the strength of the relationship between question nodes, remove the low-probability node edges, and obtain the transition probability based on the number of connecting edges.
[0071] Specifically, the jump probability can be calculated in the following way: the probability of jumping from a high-frequency problem or a low-frequency problem to each low-frequency problem is also equal. Assuming there are N low-frequency problems, the probability of jumping from a high-frequency problem or a low-frequency problem to another low-frequency problem is 1 / N. Alternatively, taking each problem node as the starting point, a predetermined number of initial particles are created to randomly walk along the directed graph of the problem nodes, and jump according to the edges and probability sizes, and the jump probability is obtained by the number of particles that fall on each problem node. The predetermined number can be set according to the actual application. In the technical solution disclosed in this embodiment, the correlation between the problem nodes is quantified by the transfer probability or the jump probability.
[0072] In one embodiment, the step of determining at least two of the question nodes in the session data includes: performing a matching operation on the question data and the answer data in the session data; and performing a clustering operation on the matching results to obtain at least two of the question nodes.
[0073] The matching operation refers to associating the question data with the answer data corresponding to the question data.
[0074] Specifically, the question-answer pairs in each conversation frame in the conversation data are input as positive samples (sometimes there will be misalignment, which can be regarded as a small amount of noise), and the Figure 4The BiMPM deep matching network shown in the figure trains a question-answer matching model, performs matching operations on question data and answer data according to the question-answer matching model, and ensures the accuracy of question-answer pair matching.
[0075] It is understandable that before the matching operation, invalid session data, such as "thank you", "hello", etc., can be filtered out. Figure 5 As shown, a binary classification model can be trained to identify invalid session data.
[0076] The clustering operation refers to associating question data for the same type of questions with answer data corresponding to the question data.
[0077] After matching valid question-answer pairs through the question-answer matching model, Kmeans clustering can be performed to normalize the question nodes; or, Figure 6-Figure 7 As shown in the figure, since the answers of manual customer service to the same type of questions are relatively fixed, SimHash coarse clustering is performed first; then the sets under the same cluster are clustered again by Kmeans; the results after double clustering are sent to the staff for annotation (only the cluster centers need to be annotated); finally, the elements annotated with the cluster centers are mapped back to the annotation results to obtain valid question-answer pairs. It can be understood that if hardware conditions permit, AP clustering can be used instead of SimHash clustering to perform coarse clustering operations.
[0078] In the technical solution disclosed in this embodiment, question nodes are obtained through matching operations and clustering operations to achieve the orderliness of the question and answer database.
[0079] In one embodiment, the step of determining the problem to be pushed in the other problem nodes according to the associated information includes: calculating the push values of the other problem nodes according to the associated information; and determining the problem to be pushed according to the push values.
[0080] The pushed value refers to a value calculated based on the association information between the problem node and other problem nodes, which can represent the strength of the association between the problem node and other problem nodes.
[0081] Specifically, the method of calculating the push value based on the associated information can be: taking the transfer probability or the jump probability as the push value; or, calculating the push value based on the transfer probability and the jump probability, such as setting preset weights for the transfer probability and the jump probability respectively, and calculating the push value based on the transfer probability and the preset weight of the transfer probability, and the jump probability and the preset weight of the jump probability.
[0082] Specifically, the method of determining the problems to be pushed according to the push value may be: selecting a preset number of problem nodes in order of the push values from high to low, and the preset number may be set according to actual applications.
[0083] In the technical solution disclosed in this embodiment, questions to be pushed that have a high correlation with the input questions are selected by pushing numerical values, thereby improving the correlation between the pushed questions and the input questions.
[0084] In one embodiment, the step of calculating the push values of the other problem nodes according to the associated information includes: obtaining the preset weight corresponding to the associated information; and calculating the push values of the other problem nodes according to the associated information and the preset weight corresponding to the associated information.
[0085] The preset weight refers to the weight corresponding to the pre-set association information, such as setting the preset weight corresponding to the transition probability and the preset weight corresponding to the jump probability respectively for the transition probability and the jump probability. The preset weights between the two can be different, such as setting the preset weight corresponding to the transition probability to be higher than the preset weight corresponding to the jump probability.
[0086] Specifically, the push value can be calculated based on the associated information and the preset weight corresponding to the associated information. For example, the push value of the problem node is calculated by the following formula:
[0087] score=w1x1+w2x2+b
[0088] Among them, score is the push value, x1 is the transition probability, w1 is the preset weight corresponding to the transition probability, x2 is the jump probability, w2 is the preset weight corresponding to the jump probability, and b is the bias value.
[0089] In the technical solution disclosed in this embodiment, the pushed value is calculated based on the associated information and the preset weight corresponding to the associated information, thereby ensuring the referenceability of the pushed value.
[0090] Optionally, an embodiment is described below:
[0091] like Figure 8 As shown, the session data is obtained, invalid data in the session data is filtered out, the question data and the answer data in the session data are matched and clustered in sequence to obtain question nodes, and a question-answering database is generated according to the association information between the question nodes, wherein the question-answering database includes a directed graph of question nodes;
[0092] When an input question is obtained, a question node corresponding to the question is determined in the question-answering database, and association information between the question node and other question nodes in the question-answering database is obtained to determine the question to be pushed in the other question nodes.
[0093] The technical solution disclosed in this embodiment makes the pushed questions associated with the questions input by the user, thereby improving the accuracy of the pushed questions.
[0094] Figure 2 FIG. 1 is a flow chart of a method for pushing questions in one embodiment. It should be understood that although Figure 2 The steps in the flowchart are shown in sequence as indicated by the arrows, but these steps are not necessarily executed in the order indicated by the arrows. Unless otherwise specified in this document, there is no strict order restriction for the execution of these steps, and these steps can be executed in other orders. Moreover, Figure 2 At least part of the steps may include multiple sub-steps or multiple stages. These sub-steps or stages are not necessarily executed at the same time, but can be executed at different times. The execution order of these sub-steps or stages is not necessarily sequential, but can be executed in turn or alternately with other steps or at least part of the sub-steps or stages of other steps.
[0095] In one embodiment, Fig. 9 As shown, a problem pushing device 900 is provided, including: an acquisition module 902 and a determination module 904, wherein:
[0096] An acquisition module 902 is used to acquire an input question;
[0097] A determination module 904 is used to determine a question node corresponding to the question in the question and answer database;
[0098] The acquisition module 902 is further used to acquire association information between the question node and other question nodes in the question-answer database, wherein the association information includes at least one of a transition probability and a jump probability;
[0099] The determination module 904 is also used to determine the question to be pushed in the other question nodes according to the association information. In one embodiment, the question pushing device 900 also includes: an update module, wherein: the acquisition module 902 is also used to obtain the answer to the question when there is no question node corresponding to the question in the question and answer database; the update module is used to update the question and answer database according to the question and the answer to the question; the acquisition module 902 is also used to obtain the answer to the question and the association information between the adjacent questions of the question in the question sequence when there is no question node corresponding to the question in the question and answer database; the update module is also used to update the question and answer database according to the question, the answer to the question and the association information between the adjacent questions.
[0100] In one embodiment, the determination module 904 is further used to determine the question to be pushed in a preset question node when there is no question node corresponding to the question in the question and answer database.
[0101] In one embodiment, the question pushing device 900 also includes: a generation module, wherein: the acquisition module 902 is also used to acquire session data and determine at least two of the question nodes in the session data; the determination module 904 is also used to determine the association information between at least two of the question nodes; the generation module is used to generate the question and answer database based on at least two of the question nodes and the association information between at least two of the question nodes.
[0102] In one embodiment, the determination module 904 is also used to obtain the frequencies corresponding to the first problem node and the second problem node respectively; when the frequency of the second problem node is greater than the frequency threshold, the transition probability of the first problem node is obtained, and the transition probability is used as the association information between the first problem node and the second problem node; when the frequency of the second problem node is not greater than the frequency threshold, the jump probability of the first problem node is obtained, and the jump probability is used as the association information between the first problem node and the second problem node.
[0103] In one embodiment, the acquisition module 902 is further used to perform a matching operation on the question data and the answer data in the session data; and perform a clustering operation on the matching results to obtain at least two question nodes.
[0104] In one embodiment, the determination module 904 is further configured to calculate the push values of the other problem nodes according to the associated information; and determine the problem to be pushed according to the push values.
[0105] In one embodiment, the determination module 904 is further used to obtain a preset weight corresponding to the association information; and calculate the push value of the other problem nodes according to the association information and the preset weight corresponding to the association information.
[0106] Fig.10 The internal structure diagram of a computer device in one embodiment is shown. The computer device may specifically be Figure 1 The terminal 102 (or server 104) in FIG. Fig.10As shown, the computer device includes a processor, a memory, a network interface, an input device and a display screen connected through a system bus. Among them, the memory includes a non-volatile storage medium and an internal memory. The non-volatile storage medium of the computer device stores an operating system and may also store a computer program. When the computer program is executed by the processor, the processor can implement the problem pushing method. The internal memory may also store a computer program. When the computer program is executed by the processor, the processor can execute the problem pushing method. The display screen of the computer device may be a liquid crystal display screen or an electronic ink display screen, and the input device of the computer device may be a touch layer covering the display screen, or a button, trackball or touchpad provided on the housing of the computer device, or an external keyboard, touchpad or mouse, etc.
[0107] Those skilled in the art will understand that Fig.10 The structure shown in the figure is only a block diagram of a part of the structure related to the solution of the present application, and does not constitute a limitation on the computer device to which the solution of the present application is applied. The specific computer device may include more or fewer components than those shown in the figure, or combine certain components, or have a different arrangement of components.
[0108] In one embodiment, the problem pushing device provided by the present application can be implemented in the form of a computer program. The computer program can be Fig.10 The memory of the computer device may store various program modules constituting the problem pushing device, for example, Fig. 9 The acquisition module and the determination module shown. The computer program composed of various program modules enables the processor to execute the steps of the question pushing method of each embodiment of the present application described in this specification.
[0109] For example, Fig.10 The computer device shown can be Fig. 9 The acquisition module 902 in the question pushing device shown executes step 202 , the computer device may execute step 204 through the determination module 904 , the computer device may execute step 206 through the acquisition module 902 , and the computer device may execute step 208 through the determination module 904 .
[0110] In one embodiment, a computer device is provided, including a memory and a processor, wherein the memory stores a computer program, and when the computer program is executed by the processor, the processor executes the steps of the above-mentioned question push method. The steps of the question push method here may be the steps of the question push method in each of the above-mentioned embodiments.
[0111] In one embodiment, a computer-readable storage medium is provided, which stores a computer program. When the computer program is executed by a processor, the processor executes the steps of the above-mentioned question push method. The steps of the question push method here can be the steps of the question push method in each of the above-mentioned embodiments.
[0112] Those skilled in the art can understand that all or part of the processes in the above-mentioned embodiment methods can be completed by instructing the relevant hardware through a computer program, and the program can be stored in a non-volatile computer-readable storage medium. When the program is executed, it can include the processes of the embodiments of the above-mentioned methods. Among them, any reference to memory, storage, database or other media used in the embodiments provided in this application can include non-volatile and / or volatile memory. Non-volatile memory may include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM) or flash memory. Volatile memory may include random access memory (RAM) or external cache memory. As an illustration and not limitation, RAM is available in many forms, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDRSDRAM), enhanced SDRAM (ESDRAM), synchronous link (Synchlink) DRAM (SLDRAM), memory bus (Rambus) direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and memory bus dynamic RAM (RDRAM).
[0113] The technical features of the above embodiments may be combined arbitrarily. To make the description concise, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.
[0114] The above-mentioned embodiments only express several implementation methods of the present application, and the descriptions thereof are relatively specific and detailed, but they cannot be understood as limiting the scope of the present application. It should be pointed out that, for a person of ordinary skill in the art, several variations and improvements can be made without departing from the concept of the present application, and these all belong to the protection scope of the present application. Therefore, the protection scope of the present application shall be subject to the attached claims.
Claims
1. A method for pushing a question, comprising: Problems with getting input; Determining a question node corresponding to the question in a question-answer database; Acquire association information between the question node and other question nodes in the question-answer database, wherein the association information includes at least one of a transition probability and a jump probability; Obtaining a preset weight corresponding to the association information; calculating a push value of the other problem nodes according to the association information and the preset weight corresponding to the association information; determining the problem to be pushed according to the push value; wherein the push value refers to a value calculated according to the association information between the problem node and other problem nodes, representing the strength of association between the problem node and other problem nodes; The question-answer database is constructed in the following manner: Acquire session data, and determine at least two of the problem nodes in the session data; Obtain the frequencies corresponding to the first question node and the second question node respectively; When the frequency of the second problem node is greater than the frequency threshold, obtaining the transition probability of the first problem node, and using the transition probability as the association information between the first problem node and the second problem node; When the frequency of the second problem node is not greater than the frequency threshold, obtaining the jump probability of the first problem node, and using the jump probability as association information between the first problem node and the second problem node; The question-answer database is generated according to at least two of the question nodes and association information between at least two of the question nodes.
2. The method according to claim 1, characterized in that After the step of obtaining the input question, the method further includes: When there is no question node corresponding to the question in the question-answer database, obtaining an answer to the question; Update the question-answer database according to the question and the answer to the question; Alternatively, when there is no question node corresponding to the question in the question-answer database, obtaining an answer to the question and association information between adjacent questions of the question in the question sequence; The question-answer database is updated according to the question, the answer to the question and the association information with the adjacent questions.
3. The method according to claim 1, characterized in that After the step of obtaining the input question, the method further includes: When there is no question node corresponding to the question in the question-answer database, the question to be pushed is determined in a preset question node.
4. The method according to claim 1, characterized in that The step of determining at least two problem nodes in the session data comprises: performing a matching operation on the question data and the answer data in the session data; A clustering operation is performed on the matching results to obtain at least two problem nodes.
5. A problem pushing device, characterized in that: The device comprises: The acquisition module is used to obtain input questions; A determination module, used to determine a question node corresponding to the question in the question-answer database; The acquisition module is further used to acquire association information between the question node and other question nodes in the question-answer database, wherein the association information includes at least one of a transition probability and a jump probability; The determination module is further used to obtain a preset weight corresponding to the association information; calculate the push value of the other problem nodes according to the association information and the preset weight corresponding to the association information; determine the problem to be pushed according to the push value; wherein the push value refers to a value calculated according to the association information between the problem node and other problem nodes, representing the strength of association between the problem node and other problem nodes; The acquisition module is further used to acquire session data, and determine at least two of the problem nodes in the session data; The determination module is also used to obtain the frequencies corresponding to the first problem node and the second problem node respectively; when the frequency of the second problem node is greater than the frequency threshold, obtain the transition probability of the first problem node, and use the transition probability as the association information between the first problem node and the second problem node; when the frequency of the second problem node is not greater than the frequency threshold, obtain the jump probability of the first problem node, and use the jump probability as the association information between the first problem node and the second problem node; A generating module is used to generate the question-answer database according to at least two of the question nodes and the association information between at least two of the question nodes.
6. The device according to claim 5, characterized in that The device also includes an update module: The acquisition module is also used to acquire the answer to the question when there is no question node corresponding to the question in the question and answer database; The updating module is used to update the question-answer database according to the question and the answer to the question; Alternatively, the acquisition module is also used to acquire the answer to the question and the association information between adjacent questions in the question sequence when there is no question node corresponding to the question in the question and answer database; the update module is also used to update the question and answer database based on the question, the answer to the question and the association information between the adjacent questions.
7. The device according to claim 5, characterized in that The determination module is also used to determine the question to be pushed in a preset question node when there is no question node corresponding to the question in the question and answer database.
8. The device according to claim 5, characterized in that The acquisition module is also used to perform a matching operation on the question data and the answer data in the session data; and perform a clustering operation on the matching results to obtain at least two question nodes.
9. A computer-readable storage medium storing a computer program, wherein when the computer program is executed by a processor, the processor is caused to perform the steps of the method according to any one of claims 1 to 4.
10. A computer device comprising a memory and a processor, wherein the memory stores a computer program, and when the computer program is executed by the processor, the processor executes the steps of the method according to any one of claims 1 to 4.
Citation Information
Patent Citations
Knowledge base construction and knowledge base-based intelligent question answering methods and apparatuses, storage medium, and terminal
CN108509617A