A problem dynamic recommendation method, device and equipment based on HITS algorithm
By dynamically updating the attributes of asked and recommended questions using the HITS algorithm, the rigidity of static question lists in complex scenarios is solved, dynamic question recommendation is achieved, and the efficiency and accuracy of questioning in scenarios such as arbitration are improved.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- NEUSOFT CORP
- Filing Date
- 2025-06-24
- Publication Date
- 2026-06-26
AI Technical Summary
Existing technologies struggle to intelligently and dynamically recommend the next question in scenarios with high uncertainty and complexity, resulting in static question lists failing to meet the real-time recommendation needs of scenarios such as arbitration.
The HITS algorithm is used to abstract asked questions into hub pages and questions to be recommended into authority pages. By iteratively updating the hub degree of asked questions and the authority degree of questions to be recommended, dynamic recommendation of questions is achieved.
It achieves dynamic question recommendation, which can better meet the questioning needs in complex and highly uncertain scenarios, such as real-time question recommendation in arbitration scenarios.
Smart Images

Figure CN120744236B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of computer technology, and in particular to a method, apparatus and device for dynamic recommendation of problems based on the HITS algorithm. Background Technology
[0002] In scenarios such as project management, market research and analysis, policy formulation and evaluation, community building and management, and arbitration, it is often necessary for people to carefully study materials and extract the questions to be asked. Taking arbitration as an example, arbitrators need to extract core questions that have substantial value or influence on the ruling from several textual materials. To save manpower and improve the efficiency of question extraction, some technologies can generate static question lists based on textual materials, displaying recommended questions in the list. However, in arbitration, for example, there is significant uncertainty during the trial process, and the specific circumstances of cases are often quite complex, making static question lists difficult to adapt to the characteristics of these scenarios. Therefore, there is a real need for intelligently and dynamically recommending the next question based on the previous one, rather than filtering and sorting a pre-generated question list. Unfortunately, there is currently no technical solution that can intelligently and dynamically recommend the next question based on the previous one. Summary of the Invention
[0003] To address the aforementioned issues, this application provides a method, apparatus, and device for dynamic question recommendation based on the HITS algorithm. The aim is to provide a technical solution that intelligently and dynamically recommends the next question based on the previous question, thereby meeting the questioning needs in scenarios with high uncertainty and complexity.
[0004] The embodiments of this application disclose the following technical solutions:
[0005] The first aspect of this application provides a dynamic recommendation method for problems based on the HITS algorithm, the method comprising:
[0006] Obtain the set of already asked questions and the set of questions to be recommended; wherein, each already asked question in the set of already asked questions is abstracted as a hub page in the HITS algorithm, and each question to be recommended in the set of questions to be recommended is abstracted as an authoritative page in the HITS algorithm;
[0007] Based on the questioning time of each question and the similarity between multiple known questions, the hub degree of each question is initialized; the multiple known questions include at least each question and each question to be recommended.
[0008] Initialize the authority of each question to be recommended based on its recommendation score.
[0009] For each question to be recommended, the authority of the question to be recommended is iteratively updated based on the initial value of the authority of the question to be recommended and the latest value of the hub degree of each question already asked; for each question already asked, the hub degree of the question already asked is iteratively updated based on the initial value of the hub degree of the question already asked and the latest value of the authority of each question to be recommended.
[0010] After the iteration ends, the recommendation results are generated based on the authority of each question to be recommended.
[0011] A second aspect of this application provides a problem dynamic recommendation device based on the HITS algorithm, the device comprising:
[0012] The question acquisition module is used to acquire a set of already asked questions and a set of questions to be recommended; wherein, each already asked question in the set of already asked questions is abstracted as a hub page in the HITS algorithm, and each question to be recommended in the set of questions to be recommended is abstracted as an authoritative page in the HITS algorithm;
[0013] The first initialization module is used to initialize the hub degree of each asked question based on the questioning time of each asked question and the similarity between multiple known questions; the multiple known questions include at least each asked question and each question to be recommended;
[0014] The second initialization module is used to initialize the authority of each question to be recommended based on its recommendation score.
[0015] The first iteration module is used to iteratively update the authority of each question to be recommended based on the initial value of the authority of the question to be recommended and the latest value of the hub degree of each question already asked.
[0016] The second iteration module is used to iteratively update the hub degree of each asked question based on the initial value of the hub degree of the asked question and the latest value of the authority degree of each question to be recommended.
[0017] The recommendation module is used to generate recommendation results based on the authority of each question after the iteration ends.
[0018] A third aspect of this application provides a problem dynamic recommendation device based on the HITS algorithm, the device comprising: a memory and a processor;
[0019] The memory is used to store computer programs;
[0020] The processor is configured to run the computer program, which, when running, executes the steps of the problem dynamic recommendation method based on the HITS algorithm as described in the first aspect.
[0021] Compared with the prior art, this application has the following beneficial effects:
[0022] This application discloses a method, apparatus, and device for dynamic question recommendation based on the HITS algorithm. The method acquires a set of already asked questions and a set of questions to be recommended; initializes the hub degree of each already asked question based on its questioning time and the similarity between multiple known questions; initializes the authority degree of each question to be recommended based on its recommendation score; for each question to be recommended, iteratively updates its authority degree based on the initial value of its authority degree and the latest value of the hub degree of each already asked question; for each already asked question, iteratively updates its hub degree based on the initial value of its hub degree and the latest value of the authority degree of each question to be recommended; after the iteration ends, a question recommendation result is generated based on the authority degree of each question to be recommended. In this application's technical solution, the concept of the HITS algorithm is used, abstracting already asked questions as hub pages in the HITS algorithm and questions to be recommended as authority pages in the HITS algorithm. Already asked questions have hub degrees, and questions to be recommended have authority degrees. The hub degrees of already asked questions and the authority degrees of questions to be recommended are interactively iteratively updated. Finally, the latest recommended question is determined based on the authority degree of the questions to be recommended after the iteration. Since the set of already asked questions and the set of questions to be recommended are continuously updated as the questioning process progresses, the question dynamic recommendation method based on the HITS algorithm in this application can match this dynamic change and realize dynamic question recommendation. This overcomes the drawbacks of rigid and inflexible question recommendation methods, and thus better meets the questioning needs in scenarios with high uncertainty and high complexity, such as the questioning needs in arbitration scenarios. Attached Figure Description
[0023] To more clearly illustrate the technical solutions in the embodiments of this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0024] Figure 1 This is a diagram illustrating a static list of questions.
[0025] Figure 2 This is an example of the effect of using the question dynamic recommendation method based on the HITS algorithm provided in the embodiments of this application to implement question dynamic recommendation;
[0026] Figure 3 A flowchart illustrating a dynamic recommendation method for problems based on the HITS algorithm provided in this application embodiment;
[0027] Figure 4 A problem association diagram provided as an example of an embodiment of this application;
[0028] Figure 5 A flowchart for constructing a list of questions to be recommended is provided in an embodiment of this application;
[0029] Figure 6 This is a schematic diagram of a problem dynamic recommendation device based on the HITS algorithm provided in an embodiment of this application. Detailed Implementation
[0030] In scenarios such as project management, market research and analysis, policy formulation and evaluation, community building and management, and arbitration, there are high requirements for the ability and experience of humans to extract questions from textual materials. To improve efficiency and save labor costs, it is currently possible to provide a recommended set of questions for a specific textual material through research on the textual material or similar past materials, allowing humans to select and use them. This set of questions can be presented in the form of a list, with the order in which the questions are presented reflecting the degree of recommendation. Often, this list-based question set is static, meaning that once a specific textual material is identified, the recommended question list for it remains fixed and does not change. Figure 1 This is a diagram illustrating a static list of questions. Figure 1 The image displays eight questions from top to bottom, denoted as Q1 to Q8. Figure 1 In the example, Q1 has the highest recommendation level, followed by Q2, and so on, with Q8 having the lowest recommendation level. Taking the arbitration scenario as an example, because... Figure 1 The questions in the list shown are automatically recommended in an intelligent manner after analyzing textual materials. Therefore, arbitrators can select questions from this list and ask them during the trial investigation. While the aforementioned automated technology improves the efficiency of question extraction and questioning, and saves labor costs, its suitability for scenarios with high uncertainty and complexity still needs improvement.
[0031] Taking arbitration as an example, due to the uncertainties in the trial process and the complexity of the specific circumstances of the case, Figure 1 The static question list shown cannot quickly recommend the next suitable question to the arbitrator based on the previous question, making it difficult to serve the arbitrator's real-time recommendation needs. Therefore, it is necessary to propose a technology that can intelligently and dynamically recommend the next question based on the previous question, thereby addressing the questioning needs in scenarios with high uncertainty and complexity.
[0032] In this application, the inventors propose using the HITS algorithm to abstract asked questions as hub pages and questions to be recommended as authority pages. Asked questions have hub status, and questions to be recommended have authority status. These two statuses are interactively and iteratively updated. Finally, the latest recommended question is determined based on the authority status of the questions to be recommended after each iteration. After each question is asked, the set of asked questions is updated. If a new question originates from the set of questions to be recommended, this set is also updated after the question is asked. The updates to both sets affect the recommendation of the next question. This dynamic question recommendation method based on the HITS algorithm can match this dynamic change, achieving dynamic question recommendation and overcoming the rigidity and inflexibility of existing question recommendation methods. This better meets the questioning needs in scenarios with high uncertainty and complexity, such as the questioning needs in arbitration scenarios.
[0033] Figure 2 This image illustrates the effect of using the HITS algorithm-based dynamic question recommendation method provided in this application to implement dynamic question recommendation. Figure 2 In the example, assume that at three times t1, t2, and t3, the set of already asked questions and the set of questions to be recommended are respectively used to recommend questions to the user. Time t1 is earlier than time t2, and time t2 is earlier than time t3. Combined with... Figure 2 As shown, at different times, as the question-asking process progresses, the set of asked questions changes, and the set of questions to be recommended also changes. It should be noted that... Figure 2 The Q indicates a question, and the number or character next to the Q is used to distinguish different questions.
[0034] Figure 2 In the example, at time t1, three questions were ultimately recommended from the set of 19 questions to be recommended (Q1 to Q19): Q1, Q3, and Q11. Q1 was selected as the next question to be asked after Qx7. Therefore, at time t2, after Q1 has been asked, we can see... Figure 2 The set of already asked questions, shown below, now includes Q1; correspondingly, Q1 is no longer included in the set of questions to be recommended. Based on the set of already asked questions and the set of questions to be recommended at time t2, the next question is recommended again for Q1, generating... Figure 2 The image shows the recommended results for questions Q3, Q4, and Q15. Q3 was selected as the next question to be asked after Q1; therefore, at time t3, after Q3 has already been asked, the set of asked questions and the set of questions to be recommended change again. At time t3, the following results were generated: Figure 2The image shows the recommendation results for questions Q4, Q12, and Q17. From... Figure 2 As seen in the example, the recommended questions change as new questions are asked. In other words, the recommended questions change dynamically based on the question-asking process. This dynamic attribute of the question recommendation mechanism makes the recommended questions more closely related to the previous questions, and can better meet the question-asking needs of users in scenarios with high complexity and uncertainty, recommending more accurate questions with stronger contextual coherence.
[0035] To enable those skilled in the art to better understand the present application, the technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present application, and not all embodiments. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative effort are within the scope of protection of the present application.
[0036] See Figure 3 This figure is a flowchart of a dynamic recommendation method for problems based on the HITS algorithm provided in an embodiment of this application. Figure 3 As shown, the problem dynamic recommendation method based on the HITS algorithm includes:
[0037] S301. Obtain the set of questions already asked and the set of questions to be recommended.
[0038] To facilitate understanding, let's take the arbitration hearing investigation stage as an example. An arbitration tribunal is a temporary organization responsible for arbitrating disputes between the parties. It can handle various types of disputes, including civil and commercial arbitration, labor dispute arbitration (also known as labor arbitration), agricultural contract dispute arbitration, and maritime arbitration. In the arbitration hearing process, the tribunal conducts questioning based on written materials—this is the hearing investigation. This stage is crucial for arbitrators to proactively investigate the facts and legal issues of the case. Its significance goes far beyond simple "questioning"; it is a core procedure that directly affects the direction of the case and the award, and is an important guarantee for ensuring the fairness and efficiency of the award. Previously, arbitrators needed to comprehensively study and accurately grasp the arbitration applications, responses, and evidence submitted by both parties, meticulously extracting key questions for questioning. With an automatic question recommendation system, the arbitrator can assist in this process, simply selecting questions from the recommended options.
[0039] As the questioning process progresses, questions that have been asked can be continuously collected in practical applications, thus constructing a set of asked questions. Furthermore, this application's technical solution also proposes the concept of a set of questions to be recommended. This set contains multiple questions to be recommended, which can be worthwhile questions extracted from current text materials or past text materials of the same scenario type. In this application's technical solution, dynamic question recommendation involves combining the latest asked questions with the current set of questions to be recommended. In this application, the set of asked questions and the set of questions to be recommended can be considered as the basic materials for implementing dynamic question recommendation in this embodiment.
[0040] This application utilizes the concept of the HITS (Hyperlink-Induced Topic Search) algorithm. The HITS algorithm is a ranking algorithm based on webpage link structure, primarily used in search engines to evaluate the authority and hub status of webpages. In the HITS algorithm, an authority page refers to a webpage with high-quality content that is linked to by multiple hub pages. For example, an authoritative academic paper page will be cited by numerous research reviews or course materials. A hub page is similar to a "navigation page," referring to a webpage that provides a collection of high-quality links, typically pointing to multiple authority pages. Examples include academic navigation websites or course resource list pages.
[0041] In this application's technical solution, each asked question in the set of asked questions is abstracted as a hub page in the HITS algorithm, and each question to be recommended in the set of questions to be recommended is abstracted as an authority page in the HITS algorithm. The purpose is to explore and reflect the relationship between asked questions and questions to be recommended in this way. Each hub page, i.e., each asked question in this application, should have a hub degree (or hub value); each authority page, i.e., each question to be recommended in this application, should have an authority degree (or authority value). The initialization methods for the hub degree of asked questions and the authority degree of questions to be recommended will be described below through S302 and S303, respectively.
[0042] S302. Based on the questioning time of each question and the similarity between multiple known questions, initialize the hub degree of each question.
[0043] This application also introduces the concept of known problems. Both the asked questions in the set of asked questions and the recommended questions in the set of recommended questions can be considered known problems. That is, the multiple known problems described in this step include at least: each asked question in the set of asked questions and each recommended question in the set of recommended questions. The similarity between these known problems can be characterized by calculated numerical values.
[0044] As an example, the first question and the second question are two different questions among multiple known questions. The first question can be a question that has already been asked or a question that is yet to be recommended; the second question can also be a question that has already been asked or a question that is yet to be recommended. The similarity between the first question and the second question can be calculated using the Jaccard similarity calculation method. In the Jaccard similarity calculation process, the first question and the second question are converted into word segmentation sets respectively, and the similarity between the first question and the second question is specifically reflected by the number of words in the intersection and the number of elements in the union of the two word segmentation sets. The specific calculation method is as follows: obtain the word segmentation set of the first question and the word segmentation set of the second question; calculate the number of words in the intersection of the word segmentation set of the first question and the word segmentation set of the second question, and calculate the number of words in the union of the word segmentation set of the first question and the word segmentation set of the second question; use the ratio of the number of words in the intersection to the number of words in the union as the similarity between the first question and the second question. The above calculation method can be expressed by formula (1).
[0045]
[0046] In formula (1), Q i Indicates the first question, Q j This refers to the second question, Words(Q) i Words(Q) represents the set of words for the first question. j ) represents the word set of the second question. In formula (1), the numerator on the right side of the equal sign represents Words(Q) i ) and Words(Q j The number of words in the intersection of Q and y is expressed in the denominator on the right side of the equation, where Q represents the number of words in the intersection of Q and y. i ) and Words(Q j The number of words in the union of Sim(Q). i Q j The ) represents the Jaccard similarity between the first and second questions.
[0047] It should be noted that Formula (1) is only an example implementation for calculating the similarity between two questions and is not intended to limit the method of similarity calculation. In practical applications, the similarity between questions can also be calculated and represented in other ways, such as converting the questions into vector form and then calculating the similarity between the two questions using the cosine similarity method.
[0048] In this embodiment, to initialize the hubness of each asked question, the questioning time of each asked question is specifically considered, along with the similarity among multiple known questions, including both asked questions and questions to be recommended. For any two different questions among the multiple known questions, the similarity between the two questions needs to be calculated.
[0049] The initialization process of the hub degree in the question will be described below.
[0050] In this application, a problem association graph is constructed based on multiple known problems and the similarity between pairs of known problems. Figure 4 This is an example of a problem association diagram provided for an embodiment of this application. Figure 4 In the problem association graph shown, circles represent nodes, and each node represents a known problem. The lines connecting the nodes are called edges, and in practical applications, the edges between two nodes in the problem association graph are bidirectional, with the direction of the edge indicating the direction of problem transition. Figure 4 The example only shows 6 nodes and the edges between each pair of nodes. In actual applications, the number of nodes in the problem association graph is consistent with the number of known problems, and the nodes, node weights, and edge weights between nodes (referred to as edge weights) in the problem association graph can be updated in real time.
[0051] To initialize the hub degree of already asked questions, this application uses multiple known questions as nodes in a question association graph. Based on the chronological order of the asked questions, the time decay weight of each asked question is determined as the initial weight of the corresponding node in the question association graph. Let v i / t represents the time decay weight of node i, where t represents the total number of questions asked in the set of asked questions, and v i This indicates that the question has already been asked (Q). i The order in which the questions were asked among the t already asked questions, v i The smaller the value, the earlier the question was asked, the smaller the time decay weight of that question, and the more drastic the time decay; conversely, the larger the value, the more significant the time decay. i The larger the value, the later the question was asked, the greater the time decay weight of the question, and the weaker the time decay.
[0052] As an example, if the set of asked questions contains 10 questions, then the question association graph will have 10 nodes representing these 10 questions. These 10 nodes will have an initial weight based on a time decay weight; in this example, t = 10. If a node represents the 9th asked question in the question-asking order, then the node's v value will be 9, the time decay weight of the asked question it represents will be 0.9, and the node's initial weight will also be 0.9. Similarly, if a node represents the 3rd asked question in the question-asking order, then the node's v value will be 3, the time decay weight of the asked question it represents will be 0.3, and the node's initial weight will also be 0.3.
[0053] The methods for calculating the similarity between two questions have been introduced. In this application's embodiments, the similarity between asked questions, between asked questions and the question to be recommended, and between the questions to be recommended are all quantifiable. To more accurately explore the connections between questions in the question association graph, it is necessary to combine the pairwise similarities between different known questions as bridges to construct a relatively complete question association graph. In this application, the pairwise similarities between multiple known questions are used as the edge weights between corresponding two nodes in the question association graph.
[0054] Based on the above introduction, for ease of understanding, let's take a specific target question Q from the set of already asked questions as an example. i As an example, this section describes how to initialize the hub degree of a target asked question. A target asked question is one of the individual asked questions in the set of asked questions. In the question association graph, for ease of description and distinction, the node representing the target asked question is called the target node, and this target node is denoted by i.
[0055] For the target node in the problem association graph, determine the set of nodes in the problem association graph that directly point to the target node, and further obtain the problem weight of each node in the node set, determine the edge weight from each node in the node set to the target node, and obtain the out-degree of each node in the node set. The set of nodes directly pointing to the target node can be represented as incoming(i), and the nodes in the node set incoming(i) can be represented as n, n∈incoming(i). The out-degree of each node n in incoming(i) is represented as out_degree(n), the problem weight of each node in incoming(i) is represented as PR(n), and the edge weight from node n to node i is represented as graph(n,i). It should be noted that when calculating the problem weight of node i, the problem weights of each node in the node set incoming(i) are obtainable because there is a pointing relationship between node n and node i, which means that there is a problem transfer relationship between the problem represented by node n and the problem represented by node i. Therefore, obtaining PR(n) is feasible.
[0056] The problem weight of the target node is calculated by multiplying the problem weight of the same node in the node set by the edge weight from that node to the target node, and then dividing by the out-degree of that node. The calculated results for each node in the node set are then summed to obtain the problem weight of the target node. The problem weight of the target node is PR(Q). i The expression for ) is:
[0057]
[0058] Based on the already obtained question weights of the target question, the following method (3) is used to express how to obtain the initial value of the pivot degree of the target question.
[0059] Hub0(Q i ) = PR(Q i )×(v i / t); Formula (3)
[0060] As shown in formula (3), the problem weight PR(Q) of the target node is... i The initial weight v of the target node i Multiplying by / t yields the initial value of Hub0(Q) for the hub degree of the target question. i Based on the description above, for each question in the set of asked questions, the hub degree of each question can be initialized using the established question relationship graph as described above.
[0061] S302 provides a detailed introduction to the initialization method of the hub degree of already asked questions, and correspondingly, S303 will introduce the initialization method of the authority degree of questions to be recommended.
[0062] S303. Initialize the authority of each question to be recommended based on its recommended score.
[0063] It should be noted that, in this embodiment of the application, the recommendation score for each question in the set of questions to be recommended can be obtained in advance. The recommendation score is positively correlated with the degree of recommendation; that is, the higher the recommendation score, the higher the degree of recommendation; conversely, the lower the recommendation score, the lower the degree of recommendation.
[0064] Based on the recommended scores of each question to be recommended, the minimum and maximum recommended scores of each question in the set of questions to be recommended can be determined. The difference between the maximum and minimum scores can be calculated, and this difference is called the first difference. Furthermore, for each question in the set of questions to be recommended, its difference from the aforementioned minimum score can also be obtained. In this application, the difference between the recommended score of each question to be recommended and the minimum recommended score among all questions to be recommended is called the second difference. The initial value of the authority of each question to be recommended can be calculated using formula (4).
[0065]
[0066] In formula (4), max(scores) and min(scores) represent the maximum and minimum scores for each question to be recommended, respectively, and the denominator on the right side of formula (4) represents the first difference. For a certain question Q to be recommended... c Its recommended score is expressed as a score. c Then the numerator on the right side of equation (4) represents the part based on the question Q to be recommended. c The second difference is calculated by comparing the recommended score with the minimum score. The ratio of this second difference to the first difference is Auth0(Q). c (This is the question Q to be recommended) c The initial value of authority is determined by formula (4). The initial value of authority for each question to be recommended can be calculated based on formula (4).
[0067] In formula (4), the recommendation score of the question to be recommended is actually scaled by minimum-maximum. In this way, the recommendation score of each question to be recommended is scaled to the range [0,1] as the initial value of authority.
[0068] It should be noted that, in the embodiments of this application, S302 and S303 can be as follows: Figure 3 The execution order shown can also be different, with S303 executed first and then S302. Furthermore, S302 and S303 can be executed simultaneously. Therefore, this application does not limit the execution order of these two steps.
[0069] Through the execution of S302 and S303, the hub degree of each asked question in the asked question set and the authority degree of each question to be recommended in the recommended question set are initialized. In this embodiment, in order to dynamically recommend the next suggested question based on the previous question, S304 is further executed to iteratively update the hub degree of each asked question and the authority degree of each question to be recommended. Based on the concept of the HITS algorithm, in the process of iteratively updating the hub degree and authority degree, the update of the hub degree of the asked question depends on the value of the authority degree of each question to be recommended. In addition, the update of the authority degree of the question to be recommended depends on the value of the hub degree of each asked question. The following is a detailed explanation in conjunction with S304.
[0070] S304. For each question to be recommended, the authority of the question to be recommended is iteratively updated based on the initial value of the authority of the question to be recommended and the latest value of the hub degree of each question already asked; for each question already asked, the hub degree of the question already asked is iteratively updated based on the initial value of the hub degree of the question already asked and the latest value of the authority of each question to be recommended.
[0071] S304 primarily involves iterative updates on two levels: one is updating the authority of questions to be recommended, and the other is updating the hub status of already asked questions. These will be described in detail below.
[0072] First, we introduce the updating of the authority of the question to be recommended. Taking the target question to be recommended as an example, we introduce the technical implementation of iteratively updating the authority of the target question to be recommended based on the initial value of its authority and the latest value of the hub degree of each already asked question. The target question to be recommended is one of the questions to be recommended in the set of questions to be recommended, denoted by Q. c To express.
[0073] Regarding the target recommendation question Q c Obtain the transition probability W from each asked question to the target question to be recommended. i→c In this transition probability, the subscript i→c indicates the transition from problem Q. i Transfer to question Q c Q i This represents any one of the asked questions in the set Asked. It's important to note that the transition probability between questions represents the likelihood of a logical connection between the previous and next questions; a higher transition probability indicates a greater probability of a logical connection, and vice versa. Optional methods for calculating transition probabilities will be discussed later and will not be elaborated upon here.
[0074] Formula (5) shows the iterative update target recommendation problem Q. c How authority is achieved:
[0075]
[0076] In formula (5), Hub(Q) i ) (k) This represents the question Q obtained after the update following the k-th iteration. i The hub-and-spoke nature of the system. α is a preset weighting coefficient, whose value can be set according to actual needs. Auth(Q) c ) (k+1) This represents the target recommendation problem Q obtained after the (k+1)th iteration. c The authority of Auth0(Q) c Question Q is the target to be recommended. c The initial value of authority. It is not difficult to see from formula (5) that the target question to be recommended, Q c Each iteration of the authority rating depends on the target question Q to be recommended. c The initial value of authority, and the degree of authority depends on each asked question Q in the set of asked questions.i The hub degree updated after the previous iteration, and each question Q asked. i The transition probability W to the target recommendation question i→c .
[0077] The implementation process of formula (5) is briefly described in text below. To iteratively update the authority of the target question to be recommended, it is necessary to obtain the latest value of the pivotality of each asked question and the first product of the corresponding transition probability from the asked question to the target question to be recommended. The first product corresponding to each asked question is summed to obtain the first summation result.
[0078] Obtain the first weight coefficient α and the first summation result. The second product yields the first factor on the right-hand side of equation (5). The initial values of the second weight coefficient (1-α) and the authority of the target recommendation question, Auth0(Q), are obtained. c The third product of (1-α) gives the second factor on the right side of equation (5). The sum of the first weighting coefficient α and the second weighting coefficient (1-α) is 1. Finally, summing the second and third products gives the second summation result Auth(Q). c ) (k+1) And the second summation result Auth(Q) c ) (k+1) As a measure of the authority of the target question to be recommended after the current iteration update.
[0079] Next, we will discuss the updating of hub degree for already asked questions. Taking a target already asked question as an example, we will introduce the technical implementation of iteratively updating the hub degree of the target already asked question based on the initial value of its hub degree and the latest value of the authority of each question to be recommended. The target already asked question is one of the already asked questions in the set of already asked questions, denoted by Q. i To express.
[0080] Regarding the question already asked about the target: i Obtain the transition probability W from the target question to each question to be recommended. i→c In this transition probability, the subscript i→c indicates the transition from problem Q. i Transfer to question Q c Q c This represents any one of the questions to be recommended from the set of questions to be recommended, Candidates.
[0081] Formula (6) shows the question Q that has been asked in the iterative update of the target. i How hub degree is implemented:
[0082]
[0083]
[0084] In formula (6), Auth(Q) c ) (k) Let Q represent the recommendation question obtained after the k-th iteration. c The authority level. α is a preset weighting coefficient, whose value can be set according to actual needs. Hub(Q) i ) (k+1) This indicates that the target obtained after the (k+1)th iteration has been updated to the question Q. i Hub0(Q) i Question Q has been asked for the target. i The initial value of the pivot degree. It is not difficult to see from formula (6) that the target has already asked question Q. i Each iteration of the pivotality depends on the target question Q. i The initial value of hub degree, and the value of each candidate question Q in the candidate question set Candidates. c The authority level updated after the previous iteration, and the target questions Q. i The transition probability W to each recommendation question i→c .
[0085] The implementation process of formula (6) is briefly described in text below. To iteratively update the hub degree of the target already asked questions, it is necessary to obtain the latest value of the authority of each question to be recommended and the fourth product of the transition probability from the target already asked questions to the corresponding questions to be recommended. Summing the fourth products corresponding to each question to be recommended yields the third summation result.
[0086] Obtain the first weight coefficient α and the result of the third summation calculation. The fifth product yields the first factor on the right-hand side of equation (6). The second weight coefficient (1-α) and the initial value of the hub degree of the target question, Hub0(Q), are obtained. i The sixth product of (Q) yields the second factor on the right side of equation (6). The sum of the first weighting coefficient α and the second weighting coefficient (1-α) is 1. Finally, summing the fifth and sixth products yields the fourth summation result Hub(Q). i ) (k+1) And the fourth summation result Hub(Q) i ) (k+1) As the hub degree of the target question after the current iteration update.
[0087] S305. After the iteration ends, generate question recommendation results based on the authority of each question to be recommended.
[0088] Combining the descriptions of iterative updates to the hubliness of already asked questions and the authority of questions to be recommended in S304 above, the specific calculation method can be understood. Iterative updates satisfy the need for interactive optimization of the hubliness of already asked questions and the authority of questions to be recommended. In practical applications, the number of iterations can be set according to the optimization requirements or the real-time requirements of dynamic recommendation questions. As an example, iterative iterations can be set to end after 5 iterations. In this example, after completing 5 iterations, the authority of each question to be recommended in the set of questions to be recommended can be obtained. Based on this, the question recommendation results can be generated according to the authority of each question to be recommended at this time.
[0089] For example, after the iteration ends, the top X questions with the highest authority and their corresponding authority values are included in the question recommendation results, and the results are output. X is a positive integer, and X is less than the total number of questions in the set of questions to be recommended. As an example, X = 3, meaning the top 3 questions with the highest authority values are included in the question recommendation results.
[0090] For example, after the iteration ends, the top Y% of recommended questions with high authority and their corresponding authority are included in the question recommendation results, and the results are output. Y is a positive number less than 100. As an example, Y = 5, which means recommending the top 5% of recommended questions with high authority.
[0091] Displaying authority levels reflects the numerical differences in the authority of recommended questions, making it easier for users to refer to and select questions for their next inquiry. Alternatively, authority levels can be omitted; for example, the recommended questions could be sorted in descending order of their authority levels in the question recommendation list, allowing users to understand the relative authority of the questions.
[0092] In practical applications, to avoid recommending duplicate questions and improve the efficiency and effectiveness of dynamic question recommendation, after generating question recommendation results based on the authority of each question to be recommended, the method can further record the next question selected to be asked from the question recommendation results; then, the next question is removed from the set of questions to be recommended and added to the set of questions already asked. In this way, the update of the set of questions already asked and the set of questions to be recommended are also completed.
[0093] In this application's technical solution, the concept of the HITS algorithm is applied. Asked questions are abstracted as hub pages in the HITS algorithm, and questions to be recommended are abstracted as authority pages. Asked questions have hub status, and questions to be recommended have authority status. The hub status of asked questions and the authority status of questions to be recommended are interactively and iteratively updated. Finally, the latest recommended question is determined based on the authority status of the questions to be recommended after the iteration. Since the set of asked questions and the set of questions to be recommended are continuously updated as the questioning process progresses, this application's dynamic question recommendation method based on the HITS algorithm can match this dynamic change, achieving dynamic question recommendation. This overcomes the rigidity and inflexibility of traditional question recommendation methods, thus better meeting the questioning needs in scenarios with high uncertainty and complexity, such as the questioning needs in arbitration scenarios.
[0094] Regarding the set of questions to be recommended mentioned in the previous embodiments, the following describes a method for constructing a list-based set of questions to be recommended (list of questions to be recommended). In this embodiment, the questions to be recommended in the list are arranged in descending order of their recommendation scores, and their format can be referred to... Figure 1 As shown. Essentially, for a specific text material, the list of questions to be recommended is static and will not change, but it can help determine the initial value of the authority of each question to be recommended in the technical solution of this application.
[0095] Figure 5 This is a flowchart illustrating the construction of a list of questions to be recommended, provided as an embodiment of this application. Figure 5 As shown, constructing the list of questions to be recommended includes the following steps:
[0096] S501. Using the keywords and word frequencies of the target text material, retrieve multiple feature vectors from the pre-constructed co-occurrence matrix.
[0097] In this embodiment, both the questioning and recommendation are based on the target text material. Taking the court investigation stage in an arbitration scenario as an example, the target text material can specifically refer to the court transcript. For the target text material, keywords and the word frequency of each keyword in that text can be extracted. Keyword extraction can utilize a pre-built keyword library; for example, words in the target text material that match the keyword library can be identified as keywords. The word frequency can be calculated as the ratio of the number of times a keyword appears in the target text material to the sum of the number of times all keywords appear in the target text material.
[0098] In this embodiment, a co-occurrence matrix is pre-constructed based on a historical text dataset. The co-occurrence matrix is a two-dimensional matrix, where the first dimension represents the question and the second dimension represents the keyword. Specifically, the first dimension represents the question statements extracted from the historical text dataset, and the second dimension represents the text keywords extracted from the historical text dataset. Here, the first and second dimensions are used to distinguish the two different dimensions of the co-occurrence matrix: rows and columns. For example, if the first dimension is the row of the matrix and the second dimension is the column, then each row of the co-occurrence matrix corresponds to one question, and each column corresponds to one keyword. In another example, if the first dimension is the column and the second dimension is the row, then each column corresponds to one question, and each row corresponds to one keyword. In the embodiments described below, for ease of understanding and description, an example where the first dimension is the row and the second dimension is the column will be used. It is understood that even when the first dimension is the column and the second dimension is the row, the technical concept described in this application can still be adaptively applied.
[0099] The co-occurrence matrix is built upon a large dataset of historical texts (of the same type as the target text) by analyzing the co-occurrence of keywords and questions. It reflects the closeness of the relationship between keywords and questions within the historical texts in matrix form. The larger the value of an element at a given position in the co-occurrence matrix, the closer the relationship between the corresponding keyword and question. In this application, the co-occurrence matrix, as a dataset reflecting the closeness of the relationship between keywords and questions based on historical data, can be used to recommend suitable questions for new texts (i.e., target texts), thereby forming a list of recommended questions for the target text.
[0100] Based on the constructed co-occurrence matrix, data indexing can be performed using keywords from the target text material, resulting in multiple feature vectors that correspond one-to-one with the keywords in the target text material. For example, if five keywords from the target text material match the keyword database, five feature vectors can be extracted from the co-occurrence matrix. In the example where the first dimension is the rows of the matrix and the second dimension is the columns, the values of the elements at each position in the column corresponding to a keyword collectively constitute a feature vector corresponding to that keyword.
[0101] S502. Use word frequency to perform feature enhancement processing on the feature vectors corresponding to the keywords to obtain multiple enhanced feature vectors.
[0102] In the specific implementation of this step, feature vectors can be enhanced by word frequency analysis (e.g., multiplying the feature vector corresponding to a keyword by the word frequency of that keyword in the target text material). This strengthens the crucial role of word frequency, thereby creating a strong correlation between the enhanced feature vector and the inherent features of the target text material. The enhanced feature vector not only reflects the co-occurrence characteristics of questions and keywords in historical text materials but also reflects the significant contribution of keywords in the target text material to question extraction and recommendation.
[0103] S503. Summate multiple enhanced feature vectors to obtain the result vector.
[0104] The length of each enhanced feature vector is consistent. In this step, the values of the elements at the same position of these vectors are summed to obtain a total vector, which is the result vector.
[0105] S504. Generate a list of questions to be recommended for the target text material based on the recommended scores in the result vector.
[0106] Each element in the result vector corresponds one-to-one with a question, and the numerical value of each element represents the recommended score for that question. By selecting the questions corresponding to the elements with larger numerical values in the result vector and sorting them in descending order of recommended scores, a list of questions to be recommended for the target text material can be generated.
[0107] For example, the result vector obtained by the summation operation is represented as [11 13 25 0 0 10], with each position corresponding to question 1, question 2, question 3, question 4, question 5, and question 6, respectively. The list of questions to be recommended that can be formed from this result vector, in descending order of recommendation score, is as follows: ① Question 3; ② Question 2; ③ Question 1; ④ Question 6.
[0108] It should be noted that the technical solutions described above repeatedly involve the processing or transformation of questions and related data. In practical applications, considering the potential semantic similarities between questions with different expressions, treating questions with different expressions separately might reduce the efficiency of dynamic question recommendation. Therefore, questions can be standardized beforehand. For example, a similar question database can be built, from which representative questions and similar questions with high semantic similarity to the representative questions can be queried or indexed. When recommending questions, only the representative question can be considered, thus standardizing the processing of the diverse range of similar questions into the processing of the representative question.
[0109] In step S304 of the previous embodiment, the iterative update process of the authority of the question to be recommended and the hub status of the questions already asked is described in detail. Combining formulas (5) and (6), it can be understood that the above update relies on the calculation results of the transition probabilities between questions. For ease of understanding, the method of obtaining the transition probabilities is described below.
[0110] The calculation of transition probabilities relies on the construction of the problem transition matrix. In this application, the transition probabilities between corresponding problems are extracted from the problem transition matrix. First, we will introduce the method for constructing the problem transition probabilities:
[0111] First, iterate through the historical text set. For each historical text, count the number of consecutive questions that are related by sequence. Add this count to the corresponding position in a blank first transition matrix. Continue this process until the entire set is complete, resulting in a second transition matrix. In the first transition matrix, both the first and second dimensions represent questions. It's called a blank first transition matrix because it's essentially an initialized question transition matrix, with all elements set to 0. In one example, the first and second dimensions represent the rows and columns of the matrix, respectively. For example, in a historical text, questions i, j, and k appear sequentially, with i and j appearing one after the other and being consecutive. Based on this, in the first transition matrix, the position at row i, column j is counted once, and the position at row j, column k is counted once. When determining the positions to be counted, earlier questions are indexed according to the first dimension (rows), and later questions are indexed according to the second dimension (columns), thus determining the counting positions in the first transition matrix. By traversing historical text materials and counting, a second transition matrix is formed. In the second transition matrix, the numerical values reflect the close contextual relationship between questions, and the strength of the contextual relationship between questions is positively correlated with the value in the second transition matrix.
[0112] The second transition matrix is numerically normalized along its first dimension to obtain the problem transition matrix. Normalization ensures that the sum of the transition probabilities of all problems in the first dimension of the final problem transition matrix is 1. That is, if the sum of the values of all elements in a row of the problem transition matrix is 1, the sum of the transition probabilities of the problem corresponding to that row to the other problems represented in each column of the problem transition matrix is also 1. Taking the transition probability from the first problem to the second problem as an example, we only need to extract the values of the elements that commonly correspond to the first problem in the first dimension and the second problem in the second dimension of the problem transition matrix; these values represent the transition probability from the first problem to the second problem.
[0113] The method described above for constructing a question transition matrix and extracting the transition probability from one question to another is suitable for scenarios where the question exists within the aforementioned question transition matrix. However, in practical applications, there may be situations where newly proposed questions are not extracted from the historical question database. This results in the question transition matrix failing to cover the newly proposed question in the first and second dimensions, meaning it's impossible to extract the transition probability from that question to other questions. For example, during court proceedings, an arbitrator might discard traditional questions and raise one or more personalized questions based on case details. However, the question transition matrix does not contain the transition probability from that question to each question to be recommended, making HITS iteration impossible.
[0114] To address the difficulty in extracting the transition probability from a newly posed question to other questions using the question transition matrix, this application further describes possible methods for calculating transition probabilities. See the description below for details. The description below uses the extraction of the transition probability from a newly posed question to another question to be recommended (which, for ease of explanation, can be referred to as the target question to be recommended) as an example.
[0115] If the most recently asked question in the set of asked questions (denoted as Q) new If the question is not extracted from the historical text database, then the latest asked question will be selected as the target question to be recommended (represented as Q). q The transition probability of ) is calculated as follows:
[0116] Calculate the latest asked question Q new Other questions Q in the set of already asked questions r The similarity. Q r This represents the set of questions already asked, excluding Q. new This includes any other previously asked questions besides those already posed. The method for calculating the similarity between questions has been described earlier and will not be repeated here. Subsequently, other previously asked questions Q are extracted from the constructed question transition matrix. r Each to their target, pending recommendation question Q q The transition probability W r→q Here, it is assumed that each other previously asked question (Q) will be considered automatically. r Each to their target, pending recommendation question Q q The transition probability W r→qAll of these can be extracted from the problem transition matrix. Alternatively, it can be understood as follows: once a new problem (not previously included in the problem transition matrix) has its transition probability to other known problems calculated using this method, the existing problem transition matrix can be updated accordingly, for example, in the row corresponding to the new problem. At this point, the new problem can also be included in the category of known problems.
[0117] Next, the question that was asked latest will be listed. new Other questions Q in the set of already asked questions r Similarity, and other questions already asked Q r Each to their target, pending recommendation question Q q The transition probability W r→q And the attenuation coefficient, according to other questions already asked Q r The corresponding products are multiplied and summed to obtain the fifth summation result, which serves as the preliminary transition probability from the latest asked question to the target question to be recommended. See formula (7):
[0118]
[0119] In formula (7), λ represents the attenuation coefficient. Multiplying by the attenuation coefficient is mainly due to the transition probability W in this application. new→q Through W r→q The transition probabilities are obtained indirectly, and this indirect calculation process can be considered as exhibiting a certain degree of attenuation compared to directly obtained probabilities. As an example, the attenuation coefficient λ = 0.5; the specific value of this attenuation coefficient can be set independently and is not limited. The above method of calculating the transition probabilities between problems utilizes the SimRank core mechanism of propagating similarity through intermediate nodes, assuming that similar nodes have similar neighbors. In this application, this mechanism can also be understood as similar problems pointing to similar problems. Furthermore, the attenuation coefficient is used to control the intensity of propagation.
[0120] However, although the fifth summation result obtained by calculation in the current formula (7) can represent problem Q, new To reach the target, please recommend the question Q. q The transition tendency is shown, but the calculated result is not in the range [0,1]. This is because it has not undergone normalization and therefore cannot represent the true transition probability. Therefore, further analysis of problem Q is needed. new To each question to be recommended (e.g., the target question to be recommended, Q) q The initial transition probability W' new→q Perform a normalization operation, specifically by first normalizing Q. newThe initial transition probabilities of each problem to be recommended are summed to obtain the result SUM (i.e., the sum of the initial transition probabilities), see formula (8); then, the result SUM obtained by summing through formula (8) is used as the denominator, and the result calculated by formula (7) is used as the numerator, thereby normalizing the result calculated by formula (7) to obtain problem Q. new To reach the target, please recommend the question Q. q The normalized transition probability W new→q See formula (9):
[0121]
[0122] Using formula (8), the same problem Q is taken into account. new The overall trend of the transition tendency for each question to be recommended is determined. Formula (9) is used to normalize the initial transition probability. The normalized result is in the interval [0,1] and can be used to represent the transition probability. Using the above formula, even if a certain question (e.g., question Q) is not in the question transition matrix, the transition probability can be determined. new The transition probability from each question to the question to be recommended can also be combined with the transition probabilities from similar questions in the set of already asked questions to the question to be recommended, thus indirectly obtaining question Q. new The transition probability to each question to be recommended.
[0123] This application utilizes the HITS algorithm combined with transition probabilities and a static question recommendation list. Through bidirectional iteration of the hub degree of already asked questions and the authority of questions to be recommended, it captures the implicit logical chains between questions in real time. Even if some question pairs lack direct edges in the question transition matrix and their transition probabilities cannot be directly read, connections can still be established based on the multi-level propagation of the corresponding nodes in the question association graph, indirectly calculating the transition probabilities and thus achieving dynamic question recommendation. Therefore, when a user suddenly switches topics (e.g., from "labor contracts" to "work injury insurance"), the hub degree of already asked questions can be quickly redistributed. This dynamic mechanism, compared to relying solely on a static question transition matrix, achieves a more flexible, dynamic, and adaptable question recommendation effect.
[0124] Based on the dynamic problem recommendation method based on the HITS algorithm described in the foregoing embodiments, this application also provides a dynamic problem recommendation device based on the HITS algorithm. The implementation of this device will be described below with reference to the accompanying drawings. Figure 6 This is a schematic diagram of a problem dynamic recommendation device based on the HITS algorithm provided in an embodiment of this application. Figure 6 As shown, the problem dynamic recommendation device based on the HITS algorithm includes:
[0125] The question acquisition module 601 is used to acquire a set of already asked questions and a set of questions to be recommended; wherein, each already asked question in the set of already asked questions is abstracted as a hub page in the HITS algorithm, and each question to be recommended in the set of questions to be recommended is abstracted as an authoritative page in the HITS algorithm;
[0126] The first initialization module 602 is used to initialize the hub degree of each asked question based on the questioning time of each asked question and the similarity between multiple known questions; the multiple known questions include at least each asked question and each question to be recommended;
[0127] The second initialization module 603 is used to initialize the authority of each question to be recommended based on the recommendation score of each question to be recommended.
[0128] The first iteration module 604 is used to iteratively update the authority of each question to be recommended based on the initial value of the authority of the question to be recommended and the latest value of the hub degree of each question already asked.
[0129] The second iteration module 605 is used to iteratively update the hub degree of each asked question based on the initial value of the hub degree of the asked question and the latest value of the authority degree of each question to be recommended.
[0130] The recommendation module 606 is used to generate recommendation results based on the authority of each question to be recommended after the iteration ends.
[0131] In an optional implementation, the first iteration module 604 includes:
[0132] The first transition probability acquisition unit is used to acquire the transition probability from each asked question to the target recommendation question for the target recommendation question; the target recommendation question is one of the recommendation questions in the set of recommendation questions;
[0133] The first calculation unit is used to obtain the latest value of the hub degree of each asked question and the first product of the corresponding transition probability from the asked question to the target recommended question;
[0134] The second calculation unit is used to sum the first products corresponding to each question to obtain the first summation result.
[0135] The third calculation unit is used to obtain the second product of the first weight coefficient and the first summation result, and to obtain the third product of the second weight coefficient and the initial value of the authority of the target question to be recommended; the sum of the first weight coefficient and the second weight coefficient is 1;
[0136] The fourth calculation unit is used to sum the second product and the third product to obtain a second summation result, and uses the second summation result as the authority of the target recommendation question after the current iteration update.
[0137] In an optional implementation, the second iteration module 605 includes:
[0138] The second transition probability acquisition unit is used to acquire the transition probability from the target already asked question to each question to be recommended for the target already asked question; the target already asked question is one of the questions in the set of already asked questions;
[0139] The fifth calculation unit is used to obtain the latest value of the authority of each question to be recommended and the fourth product of the transition probability from the target question to the corresponding question to be recommended;
[0140] The sixth calculation unit is used to sum the fourth product corresponding to each question to be recommended, and obtain the third summation calculation result;
[0141] The seventh calculation unit is used to obtain the fifth product of the first weight coefficient and the third summation calculation result, and to obtain the sixth product of the second weight coefficient and the initial value of the pivot degree of the target question; the sum of the first weight coefficient and the second weight coefficient is 1;
[0142] The eighth calculation unit is used to sum the fifth product and the sixth product to obtain the fourth summation result, and use the fourth summation result as the pivot degree of the target question after the current iteration update.
[0143] In an optional implementation, the transition probability acquisition unit or the second transition probability acquisition unit acquires the transition probability between the two problems in the following way:
[0144] Traverse the historical text material set, and count the two adjacent questions with a sequential question relationship in each historical text material. Add the count value to the corresponding position of the two adjacent questions with a sequential question relationship in the first transition matrix until the traversal is completed, and obtain the second transition matrix. In the first transition matrix, the first dimension and the second dimension both represent questions, and all elements are set to 0. The first transition matrix is the initialization structure of the question transition matrix.
[0145] The second transition matrix is numerically normalized according to the first dimension to obtain the problem transition matrix;
[0146] If it is necessary to obtain the transition probability from the first problem to the second problem, extract the values of the elements that correspond to the first problem in the first dimension and the second problem in the second dimension in the problem transition matrix, and use them as the transition probability from the first problem to the second problem.
[0147] In an optional implementation, if the most recently asked question in the set of asked questions is not a question extracted from the historical text material library, then the transition probability from the most recently asked question to the target question to be recommended is calculated as follows:
[0148] Calculate the similarity between the latest asked question and other asked questions in the set of asked questions;
[0149] Extract the transition probabilities from each of the other asked questions to the target question to be recommended from the question transition matrix;
[0150] The similarity between the latest asked question and other asked questions in the set of asked questions, the transition probability of each of the other asked questions to the target question to be recommended, and the decay coefficient are multiplied together according to the corresponding values of the other asked questions and summed to obtain the fifth summation result as the initial transition probability of the latest asked question to the target question to be recommended.
[0151] The fifth summation result is divided by the sum of the preliminary transition probabilities for normalization. The calculated quotient is used as the normalized transition probability from the latest asked question to the target question to be recommended. The sum of the preliminary transition probabilities is the sum of the preliminary transition probabilities from the latest asked question to each question to be recommended.
[0152] In an optional implementation, the first initialization module 602 includes:
[0153] The node initial weight determination unit is used to take the multiple known questions as nodes in the problem association graph, and determine the time decay weight of each question as the initial weight of the corresponding node in the problem association graph according to the order of the questioning time of each question.
[0154] The node edge weight determination unit is used to determine the similarity between each pair of the multiple known problems as the edge weight between the corresponding two nodes in the problem association graph.
[0155] The first initialization module 602 is specifically used to initialize the hub degree of the target question in the following ways:
[0156] For the target node in the problem association graph, determine the set of nodes in the problem association graph that directly point to the target node, and further obtain the problem weight of each node in the node set, determine the edge weight from each node in the node set to the target node, and obtain the out-degree of each node in the node set; the problem corresponding to the target node is the target already asked question; the target already asked question is one of the various already asked questions in the set of already asked questions;
[0157] Multiply the problem weight of the same node in the node set by the edge weight from that node to the target node, and then divide by the out-degree of that node to obtain the calculation result corresponding to that node.
[0158] The problem weight of the target node is obtained by summing the calculation results of each node in the node set.
[0159] Multiply the question weight of the target node by the initial point weight of the target node to obtain the initial value of the hub degree of the target question.
[0160] In an optional implementation, the second initialization module 603 includes:
[0161] The score determination unit is used to determine the minimum and maximum scores among the recommended scores for each question to be recommended;
[0162] A difference calculation unit is used to obtain a first difference between the maximum score and the minimum score;
[0163] The difference acquisition unit is used to acquire, for each question to be recommended, the second difference between the recommended score of the question to be recommended and the minimum score;
[0164] An initial value determination unit is used to take the ratio of the second difference to the first difference as the initial value of the authority of the question to be recommended.
[0165] In the optional implementation, the similarity between the first question and the second question is calculated as follows:
[0166] Obtain the word segmentation set for the first question and the word segmentation set for the second question;
[0167] Calculate the number of words in the intersection of the word segmentation sets of the first problem and the word segmentation sets of the second problem, and calculate the number of words in the union of the word segmentation sets of the first problem and the word segmentation sets of the second problem;
[0168] The ratio of the number of words in the intersection to the number of words in the union is used as the similarity between the first question and the second question.
[0169] In an optional implementation, the set of questions to be recommended takes the form of a list of questions to be recommended, wherein the questions to be recommended are arranged in descending order of their recommendation scores; the dynamic question recommendation device based on the HITS algorithm also includes a question list construction module, used to construct the list of questions to be recommended in the following manner:
[0170] Using the keywords and word frequencies of the target text material, multiple feature vectors are retrieved from a pre-constructed co-occurrence matrix; each feature vector corresponds one-to-one with a keyword in the target text material; the co-occurrence matrix is a two-dimensional matrix, where the first dimension represents the question and the second dimension represents the keywords; wherein, the first dimension of the co-occurrence matrix represents the question statement extracted from the historical text material set, and the second dimension of the co-occurrence matrix represents the text keywords extracted from the historical text material set;
[0171] The word frequency is used to perform feature enhancement processing on the feature vectors corresponding to the respective keywords to obtain multiple enhanced feature vectors;
[0172] The summation operation is performed on the multiple enhanced feature vectors to obtain the result vector;
[0173] A list of questions to be recommended for the target text material is generated based on the recommendation scores in the result vector.
[0174] Among the optional implementations, module 606 is recommended, specifically for:
[0175] After the iteration ends, the top X questions with higher authority and their corresponding authority are included in the question recommendation results, and the question recommendation results are output; or, after the iteration ends, the top Y% questions with higher authority and their corresponding authority are included in the question recommendation results, and the question recommendation results are output.
[0176] X is a positive integer, and X is less than the total number of questions to be recommended in the set of questions to be recommended; Y is a positive number less than 100.
[0177] In optional implementations, the problem dynamic recommendation device based on the HITS algorithm also includes a set update module, used for:
[0178] Record the next question selected from the recommended questions;
[0179] The next question is removed from the set of questions to be recommended and added to the set of questions already asked.
[0180] Based on the methods and apparatus described in the foregoing embodiments, this application further provides a problem dynamic recommendation device based on the HITS algorithm. The device includes: a memory and a processor;
[0181] The memory is used to store computer programs;
[0182] The processor is configured to run the computer program, which, when running, executes the steps of the problem dynamic recommendation method based on the HITS algorithm as described in any implementation of the method embodiments.
[0183] It should be noted that the various embodiments in this specification are described in a progressive manner, and the same or similar parts between the various embodiments can be referred to mutually. Each embodiment focuses on describing the differences from other embodiments. In particular, for the device and equipment embodiments, since they are basically similar to the method embodiments, the description is relatively simple, and the relevant parts can be referred to the description of the method embodiments. The device and equipment embodiments described above are merely illustrative. The units described as separate components may or may not be physically separate, and the components indicated as units may or may not be physical units, that is, they may be located in one place or distributed across multiple network units. Some or all of the modules can be selected to achieve the purpose of the solution in this embodiment according to actual needs. Those skilled in the art can understand and implement this without creative effort.
[0184] The above description is merely one specific embodiment of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the technical scope disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.
Claims
1. A dynamic recommendation method for problems based on the HITS algorithm, characterized in that, include: Obtain the set of already asked questions and the set of questions to be recommended; wherein, each already asked question in the set of already asked questions is abstracted as a hub page in the HITS algorithm, and each question to be recommended in the set of questions to be recommended is abstracted as an authoritative page in the HITS algorithm; Based on the questioning time of each question and the similarity between multiple known questions, the hub degree of each question is initialized; the multiple known questions include at least each question and each question to be recommended. Initialize the authority of each question to be recommended based on its recommendation score. For each question to be recommended, the authority of the question to be recommended is iteratively updated based on the initial value of the authority of the question to be recommended and the latest value of the hub degree of each question already asked; for each question already asked, the hub degree of the question already asked is iteratively updated based on the initial value of the hub degree of the question already asked and the latest value of the authority of each question to be recommended. After the iteration ends, the recommendation results are generated based on the authority of each question to be recommended; For each question to be recommended, the authority of the question to be recommended is iteratively updated based on the initial value of the authority of the question to be recommended and the latest value of the hub degree of each question already asked, including: For a target question to be recommended, obtain the transition probability from each previously asked question to the target question to be recommended; the target question to be recommended is one of the questions to be recommended in the set of questions to be recommended. Obtain the latest value of the pivotality of each question and the first product of the corresponding transition probability from the question to the target question to be recommended; Summing the first product corresponding to each of the posed questions yields the first summation result; Obtain the second product of the first weight coefficient and the first summation result, and obtain the third product of the second weight coefficient and the initial value of the authority of the target question to be recommended; the sum of the first weight coefficient and the second weight coefficient is 1; Summing the second product and the third product yields a second summation result, which is then used as the authority of the target question to be recommended after the current iteration update.
2. The method according to claim 1, characterized in that, For each asked question, the hub degree of the asked question is iteratively updated based on the initial value of the hub degree of the asked question and the latest value of the authority degree of each question to be recommended, including: For a target question already asked, obtain the transition probability from the target question already asked to each question to be recommended; the target question already asked is one of the questions asked in the set of questions already asked. Obtain the latest value of the authority of each question to be recommended and the fourth product of the transition probability from the target question to the corresponding question to be recommended; Summing the fourth product corresponding to each question to be recommended yields the third summation result; Obtain the fifth product of the first weight coefficient and the third summation result, and obtain the sixth product of the second weight coefficient and the initial value of the pivot degree of the target question; the sum of the first weight coefficient and the second weight coefficient is 1; Summing the fifth product and the sixth product yields the fourth summation result, which is then used as the pivot degree of the target question after the current iteration update.
3. The method according to claim 1 or 2, characterized in that, The transition probability between the two problems is obtained in the following way: Traverse the historical text material set, and count the two adjacent questions with a sequential question relationship in each historical text material. Add the count value to the corresponding position of the two adjacent questions with a sequential question relationship in the first transition matrix until the traversal is completed, and obtain the second transition matrix. In the first transition matrix, the first dimension and the second dimension both represent questions, and all elements are set to 0. The first transition matrix is the initialization structure of the question transition matrix. The second transition matrix is numerically normalized according to the first dimension to obtain the problem transition matrix; If it is necessary to obtain the transition probability from the first problem to the second problem, extract the values of the elements that correspond to the first problem in the first dimension and the second problem in the second dimension in the problem transition matrix, and use them as the transition probability from the first problem to the second problem.
4. The method according to claim 3, characterized in that, If the most recently asked question in the set of asked questions is not a question extracted from the historical text material database, then the probability of transitioning from the most recently asked question to the target question to be recommended is calculated as follows: Calculate the similarity between the latest asked question and other asked questions in the set of asked questions; Extract the transition probabilities from each of the other asked questions to the target question to be recommended from the question transition matrix; The similarity between the latest asked question and other asked questions in the set of asked questions, the transition probability of each of the other asked questions to the target question to be recommended, and the decay coefficient are multiplied together according to the corresponding values of the other asked questions and summed to obtain the fifth summation result as the initial transition probability of the latest asked question to the target question to be recommended. The fifth summation result is divided by the sum of the preliminary transition probabilities for normalization. The calculated quotient is used as the normalized transition probability from the latest asked question to the target question to be recommended. The sum of the preliminary transition probabilities is the sum of the preliminary transition probabilities from the latest asked question to each question to be recommended.
5. The method according to claim 1, characterized in that, The process of initializing the pivotality of each asked question based on its questioning time and the similarity between multiple known questions includes: The known questions are used as nodes in the question association graph. Based on the order in which the questions were asked, the time decay weight of each question is determined and used as the initial point weight of the corresponding node in the question association graph. The similarity between each pair of the known problems is used as the edge weight between the corresponding two nodes in the problem association graph. The method for initializing the pivotality of the target's asked questions is as follows: For the target node in the problem association graph, determine the set of nodes in the problem association graph that directly point to the target node, and further obtain the problem weight of each node in the node set, determine the edge weight from each node in the node set to the target node, and obtain the out-degree of each node in the node set; the problem corresponding to the target node is the target already asked question; the target already asked question is one of the various already asked questions in the set of already asked questions; Multiply the problem weight of the same node in the node set by the edge weight from that node to the target node, and then divide by the out-degree of that node to obtain the calculation result corresponding to that node. The problem weight of the target node is obtained by summing the calculation results of each node in the node set. Multiply the question weight of the target node by the initial point weight of the target node to obtain the initial value of the hub degree of the target question.
6. The method according to claim 1, characterized in that, The process of initializing the authority of each question to be recommended based on its recommendation score includes: Determine the minimum and maximum recommended scores for each question to be recommended; Obtain the first difference between the maximum score and the minimum score; For each question to be recommended, obtain the second difference between the recommended score of the question and the minimum score; The ratio of the second difference to the first difference is used as the initial value of the authority of the question to be recommended.
7. The method according to claim 1 or 5, characterized in that, The similarity between the first question and the second question is calculated as follows: Obtain the word segmentation set for the first question and the word segmentation set for the second question; Calculate the number of words in the intersection of the word segmentation sets of the first problem and the word segmentation sets of the second problem, and calculate the number of words in the union of the word segmentation sets of the first problem and the word segmentation sets of the second problem; The ratio of the number of words in the intersection to the number of words in the union is used as the similarity between the first question and the second question.
8. The method according to claim 1, characterized in that, The set of questions to be recommended is in the form of a list of questions to be recommended, in which each question is arranged in descending order of its recommendation score; the list of questions to be recommended is constructed as follows: Using the keywords and word frequencies of the target text material, multiple feature vectors are retrieved from a pre-constructed co-occurrence matrix; each feature vector corresponds one-to-one with a keyword in the target text material; the co-occurrence matrix is a two-dimensional matrix, where the first dimension represents the question and the second dimension represents the keywords; wherein, the first dimension of the co-occurrence matrix represents the question statement extracted from the historical text material set, and the second dimension of the co-occurrence matrix represents the text keywords extracted from the historical text material set; The word frequency is used to perform feature enhancement processing on the feature vectors corresponding to the respective keywords to obtain multiple enhanced feature vectors; The summation operation is performed on the multiple enhanced feature vectors to obtain the result vector; A list of questions to be recommended for the target text material is generated based on the recommendation scores in the result vector.
9. The method according to claim 1, characterized in that, After the iteration ends, the process of generating recommendation results based on the authority of each question to be recommended includes: After the iteration ends, the top X questions with higher authority and their corresponding authority are included in the question recommendation results, and the question recommendation results are output; or, after the iteration ends, the top Y% questions with higher authority and their corresponding authority are included in the question recommendation results, and the question recommendation results are output. X is a positive integer, and X is less than the total number of questions to be recommended in the set of questions to be recommended; Y is a positive number less than 100.
10. The method according to claim 1, characterized in that, After generating question recommendation results based on the authority of each question to be recommended, the method further includes: Record the next question selected from the recommended questions; The next question is removed from the set of questions to be recommended and added to the set of questions already asked.
11. A problem dynamic recommendation device based on the HITS algorithm, characterized in that, include: The question acquisition module is used to acquire a set of already asked questions and a set of questions to be recommended; wherein, each already asked question in the set of already asked questions is abstracted as a hub page in the HITS algorithm, and each question to be recommended in the set of questions to be recommended is abstracted as an authoritative page in the HITS algorithm; The first initialization module is used to initialize the hub degree of each asked question based on the questioning time of each asked question and the similarity between multiple known questions; the multiple known questions include at least each asked question and each question to be recommended; The second initialization module is used to initialize the authority of each question to be recommended based on its recommendation score. The first iteration module is used to iteratively update the authority of each question to be recommended based on the initial value of the authority of the question to be recommended and the latest value of the hub degree of each question already asked. The second iteration module is used to iteratively update the hub degree of each asked question based on the initial value of the hub degree of the asked question and the latest value of the authority degree of each question to be recommended. The recommendation module is used to generate recommendation results based on the authority of each question after the iteration ends; The first iteration module includes: The first transition probability acquisition unit is used to acquire the transition probability from each asked question to the target recommendation question for the target recommendation question; the target recommendation question is one of the recommendation questions in the set of recommendation questions; The first calculation unit is used to obtain the latest value of the hub degree of each asked question and the first product of the corresponding transition probability from the asked question to the target recommended question; The second calculation unit is used to sum the first products corresponding to each question to obtain the first summation result. The third calculation unit is used to obtain the second product of the first weight coefficient and the first summation result, and to obtain the third product of the second weight coefficient and the initial value of the authority of the target question to be recommended; the sum of the first weight coefficient and the second weight coefficient is 1; The fourth calculation unit is used to sum the second product and the third product to obtain a second summation result, and uses the second summation result as the authority of the target recommendation question after the current iteration update.
12. A problem dynamic recommendation device based on the HITS algorithm, characterized in that, include: Memory and processor; The memory is used to store computer programs; The processor is configured to run the computer program, which, when running, performs the steps of the problem dynamic recommendation method based on the HITS algorithm as described in any one of claims 1-10.