A label matching method, device, equipment and computer storage medium
By using backpropagation of gradient propagation nodes and optimizing label matching with preset conditions, the problem of high computational cost in label matching in the financial field is solved, and more efficient label matching results are achieved.
Patent Information
- Application Number
- CN202111475736.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-12-06
- Publication Date
- 2026-02-06
- Estimated Expiration
- 2041-12-06
AI Technical Summary
Existing technologies involve a large amount of computation in the label matching process in the financial field. Especially under the requirements of real-time and generalization, the excessive number of iterative training times caused by label updates or insertions affects computational efficiency and matching accuracy.
Label matching results are determined by backpropagation of gradient propagation nodes. Preset propagation conditions and pruning conditions are used to reduce the number of iterations. The maximum propagation score is selected to improve accuracy. A threshold is set to judge irrelevant labels to control the propagation depth and reduce the amount of computation.
It improves the accuracy and generalization of label matching, reduces the amount of computation, avoids excessive iterative training in traditional methods, and improves computational efficiency.
Smart Images

Figure CN114117168B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the field of cloud computing technology of financial technology (Fintech), and particularly relates to a label matching method and device, electronic equipment and computer storage medium. BACKGROUND
[0002] With the development of computer technology, more and more technologies are applied in the financial field, and the traditional financial industry is gradually changing to financial technology, but due to the security and real-time requirements of the financial industry, higher requirements are also put forward for the technology.
[0003] In a typical business application system, when a label system is used for data matching, on the one hand, in order to respond to the real-time performance, most of the precise / fuzzy search algorithms are used to complete, such as inverted query, and on the other hand, in order to match the generalization, the matrix model is combined with the confidence propagation method to perform data pre-scoring about the label, but the time efficiency of the matrix model calculation is low, and the global label network needs to be combined to perform calculation; in this process, if the matrix model is calculated in real time, the update or insertion of a label brings N rounds of iterative training until global convergence, which increases the complexity of label matching calculation. SUMMARY
[0004] The present application provides a label matching method, device, electronic equipment and computer storage medium, which can solve the problem of large amount of calculation in label matching in the related art.
[0005] The technical solution of the present application is as follows:
[0006] The present application provides a label matching method, device, electronic equipment and computer storage medium, which can solve the problem of large amount of calculation in label matching in the related art.
[0007] Receiving a label matching request, the label matching request including a to-be-matched label group; determining a candidate node set from the nodes associated with each label in the to-be-matched label group, and taking each candidate node in the candidate node set as a first gradient propagation node;
[0008] Determining whether there is an irrelevant label that meets a preset propagation condition in each label associated with each node in the i-th gradient propagation node; the irrelevant label represents a label not included in the to-be-matched label group; i is an integer greater than or equal to 1;
[0009] When the irrelevant label that meets the preset propagation condition is determined to exist, the irrelevant label that meets the preset propagation condition is added to the to-be-matched label group, and a non-candidate node associated with the irrelevant label that meets the preset propagation condition is taken as an (i+1)-th gradient propagation node;
[0010] determining, when the determination result is that there is no irrelevant label in the labels associated with each node in the i-th gradient propagation node, and when the value of i is greater than 1, a propagation score of each label associated with each node in the i-th gradient propagation node; and determining a final score of each candidate node in the first gradient propagation node according to the propagation scores of the labels associated with each node in the i-th gradient propagation node.
[0011] In some embodiments, the determining of the final score of each candidate node in the first gradient propagation node according to the propagation scores of the labels associated with each node in the i-th gradient propagation node comprises:
[0012] In some embodiments, the determining of the final score of each candidate node in the first gradient propagation node according to the propagation scores of the labels associated with each node in the i-th gradient propagation node comprises:
[0013] In some embodiments, the determining of the final score of each candidate node in the first gradient propagation node according to the propagation scores of the labels associated with each node in the i-th gradient propagation node comprises:
[0014] It can be seen that, in the process of label matching, the propagation score of each label associated with each node in the previous gradient is determined according to the propagation score of each label associated with each node in the current gradient, i.e., the final score of each candidate node is determined by means of back propagation, which can ensure the accuracy of the matching result.
[0015] In some embodiments, the method further comprises:
[0016] In some embodiments, the determining of the final score of each candidate node in the first gradient propagation node according to the propagation scores of the labels associated with each node in the i-th gradient propagation node comprises:
[0017] In some embodiments, the determining of the final score of each candidate node in the first gradient propagation node according to the propagation scores of the labels associated with each node in the i-th gradient propagation node comprises:
[0018] In some embodiments, the determining of the final score of each candidate node in the first gradient propagation node according to the propagation scores of the labels associated with each node in the i-th gradient propagation node comprises:
[0019] It can be seen that in the embodiments of the present application, when different nodes in a certain gradient propagation node are associated with the same label, multiple propagation scores corresponding to the label can be obtained, and since the propagation score can indicate the importance of the label relative to the node, selecting the maximum propagation score as the propagation score of the label can further improve the accuracy of the subsequent matching result.
[0020] In some embodiments, the method further comprises:
[0021] determining an initial score of each label associated with each candidate node in the first gradient propagation node;
[0022] if it is determined that there is no irrelevant label that meets the preset propagation condition among the labels associated with each candidate node in the first gradient propagation node, determining the sum of the initial scores of the labels associated with each candidate node in the first gradient propagation node as the final score result of the candidate node.
[0023] It can be seen that in the embodiments of the present application, when it is determined that there is no irrelevant label that meets the preset propagation condition among the labels associated with each candidate node in the first gradient propagation node, it indicates that the current propagation network does not need to be extended, and at this time, by determining the sum of the initial scores of the labels associated with each candidate node in the first gradient propagation node as the final score result of the candidate node, the calculation amount of the label matching algorithm can be greatly reduced.
[0024] In some embodiments, the determination of whether there is an irrelevant label that meets the preset propagation condition among the labels associated with each node in the ith gradient propagation node comprises:
[0025] if it is determined that the ratio of the number of nodes associated with the irrelevant label in the ith gradient propagation node to the number of nodes in the ith gradient propagation node is greater than a set threshold, it is determined that there is an irrelevant label that meets the preset propagation condition;
[0026] if it is determined that the ratio of the number of nodes associated with the irrelevant label in the ith gradient propagation node to the number of nodes in the ith gradient propagation node is less than or equal to a set threshold, it is determined that there is no irrelevant label that meets the preset propagation condition.
[0027] It can be seen that in the embodiments of the present application, by setting the preset propagation condition, some irrelevant labels that can affect the matching result can be better found for each gradient propagation node, and the number of iterations of the label matching algorithm can be reduced.
[0028] In some embodiments, the determination of the candidate node set from the nodes associated with each label in the to-be-matched label group comprises:
[0029] determining at least one label meeting a preset pruning condition from the group of labels to be matched;
[0030] associating each label in the at least one label with a node as an alternative node, and putting the alternative node into an alternative node set.
[0031] It can be seen that in the embodiments of the present application, the labels meeting the actual requirements are selected from the labels in the group of labels to be matched through the preset pruning condition for subsequent matching, so that the calculation amount can be reduced without affecting the matching result.
[0032] In some embodiments, the determining of the final score of each alternative node in the first gradient propagation node according to the propagation scores of the respective labels associated with each node in the i-th gradient propagation node comprises:
[0033] In the case where the value of i is greater than 1, the initial scores of the respective labels associated with each node in the i-th gradient propagation node are determined.
[0034] The final score of each alternative node in the first gradient propagation node is determined according to the propagation scores and the initial scores of the respective labels associated with each node in the i-th gradient propagation node.
[0035] It can be seen that in the embodiments of the present application, the final score of each alternative node in the first gradient propagation node is determined by the propagation scores and the initial scores of the respective labels associated with each node in the other gradient propagation nodes, so that the generalization of the matching result can be improved.
[0036] In some embodiments, the method further comprises:
[0037] The feature attribute and the incentive value of each label in the group of labels to be matched are determined in advance.
[0038] In the case where the value of i is greater than or equal to 1, when the respective labels associated with each node in the i-th gradient propagation node are determined to be the labels in the group of labels to be matched, the initial scores of the respective labels associated with each node in the i-th gradient propagation node are determined according to the incentive values and the number of times of appearance of the feature attribute of the respective labels associated with each node in the i-th gradient propagation node in the group of labels to be matched.
[0039] When the respective labels associated with each node in the i-th gradient propagation node are determined not to be the labels in the group of labels to be matched, a preset value is taken as the initial score of the respective labels associated with each node in the i-th gradient propagation node.
[0040] It can be seen that, in the embodiment of the application, by traversing the judgment result of whether each label associated with each node in the current gradient propagation node is a label in the to-be-matched label group, the initial score of each label can be determined in a targeted manner, and the effectiveness of the final score result is ensured.
[0041] The embodiment of the application further provides a label matching device, which comprises a first determining module and a second determining module, wherein,
[0042] The first determining module is configured to receive a label matching request, wherein the label matching request comprises a to-be-matched label group; determine a candidate node set from nodes associated with each label in the to-be-matched label group; and take each candidate node in the candidate node set as a first gradient propagation node.
[0043] The second determining module is configured to determine whether there is an irrelevant label that meets a preset propagation condition in each label associated with each node in an i-th gradient propagation node; the irrelevant label represents a label that is not included in the to-be-matched label group; i is an integer greater than or equal to 1; when the irrelevant label that meets the preset propagation condition exists, add the irrelevant label that meets the preset propagation condition to the to-be-matched label group, and take a non-candidate node associated with the irrelevant label that meets the preset propagation condition as an (i+1)-th gradient propagation node; when the irrelevant label that meets the preset propagation condition does not exist, and the value of i is greater than 1, determine a propagation score of each label associated with each node in the i-th gradient propagation node; and determine a final score of each candidate node in the first gradient propagation node according to the propagation score of each label associated with each node in the i-th gradient propagation node; the final score is used to reflect the matching degree between the to-be-matched label group and each candidate node.
[0044] The embodiment of the application provides an electronic device, which comprises a memory, a processor, and a computer program stored in the memory and executable on the processor; when the processor executes the program, the label matching method provided by one or more of the preceding technical solutions is implemented.
[0045] The embodiment of the application provides a computer storage medium, which stores a computer program; after the computer program is executed, the label matching method provided by one or more of the preceding technical solutions can be implemented.
[0046] The embodiment of the present application provides a label matching method, device, electronic equipment and computer storage medium, the method comprises the following steps: receiving a label matching request, the label matching request comprises a label group to be matched; determining a candidate node set from nodes associated with each label in the label group to be matched, and taking each candidate node in the candidate node set as a first gradient propagation node; determining whether there is an irrelevant label meeting a preset propagation condition in each label associated with each node in the i-th gradient propagation node; the irrelevant label represents a label not included in the label group to be matched; i is an integer greater than or equal to 1; when the irrelevant label meeting the preset propagation condition exists, the irrelevant label meeting the preset propagation condition is added to the label group to be matched, and a non-candidate node associated with the irrelevant label meeting the preset propagation condition is taken as an (i+1)-th gradient propagation node; when the irrelevant label meeting the preset propagation condition does not exist, and the value of i is greater than 1, the propagation score of each label associated with each node in the i-th gradient propagation node is determined; the final score of each candidate node in the first gradient propagation node is determined according to the propagation score of each label associated with each node in the i-th gradient propagation node; and the final score is used to reflect the matching degree of the label group to be matched and each candidate node.
[0047] It can be seen that, in the embodiment of the present application, whether there is an irrelevant label meeting a preset propagation condition in each label associated with each node in the i-th gradient propagation node is determined, that is, whether the label propagation network can continue to extend based on the irrelevant label is determined, so that some implicit irrelevant labels that can affect the label matching result can be better found, and the accuracy of subsequent label matching is improved; in addition, in the process of determining whether there is an irrelevant label meeting a preset propagation condition, if the labels associated with each node in a certain gradient propagation node no longer meet the preset propagation condition, the labels associated with other nodes are no longer judged, that is, the iterative calculation for the label matching process can be stopped, and the propagation depth is effectively prevented from being too large; compared with the related art, if a label is updated or inserted once, N rounds of iterative training are required until global convergence, and the number of iterations in the label matching process of the embodiment of the present application is smaller, and the calculation amount of label matching can be greatly reduced. BRIEF DESCRIPTION OF DRAWINGS
[0048] Figure 1 is a network structure schematic diagram of a label matching in the related art;
[0049] Figure 2a is a flow schematic diagram of a label matching method in the embodiment of the present application;
[0050] Figure 2b is a network structure schematic diagram for label matching in the embodiment of the present application;
[0051] Figure 2cis another network structure schematic diagram for label matching in the embodiment of the present application;
[0052] Figure 2d is a flow schematic diagram of score value transmission when not meeting preset propagation conditions in the embodiment of the present application;
[0053] Figure 3 is a component structure schematic diagram of a label matching device in the embodiment of the present application;
[0054] Figure 4 is a structure schematic diagram of an electronic device provided in the embodiment of the present application. DETAILED DESCRIPTION
[0055] The present application will be further described below in conjunction with the accompanying drawings and embodiments. It should be understood that the embodiments provided herein are only used to explain the present application, and are not used to limit the present application. In addition, the embodiments provided below are used to implement part of the present application, and the technical solutions described in the embodiments of the present application can be implemented in any combination manner without conflict.
[0056] It should be noted that in the embodiments of the present application, the terms “comprise”, “contain” or any other variants thereof are intended to cover non-exclusive inclusion, so that the method or device comprising a series of elements not only includes the elements explicitly described, but also includes other elements not explicitly listed, or includes elements inherent in the implementation of the method or device. Without more limitation, the element defined by the sentence “comprises a......” does not exclude the presence of another related element (for example, steps in the method or units in the device, for example, the unit can be part of the circuit, part of the processor, part of the program or software, etc.) in the method or device comprising the element.
[0057] The term “and / or” herein is only a description of the association relationship of the associated objects, which means that there can be three relationships, for example, I and / or J, which can mean that there are three cases of I alone, I and J together, and J alone. In addition, the term “at least one” herein means any one of a plurality of combinations of at least two of a plurality of combinations, for example, including at least one of I, J and R, which can mean including any one or more elements selected from the set consisting of I, J and R.
[0058] For example, the tag matching method provided in the embodiments of this application includes a series of steps, but the tag matching method provided in the embodiments of this application is not limited to the steps described. Similarly, the tag matching device provided in the embodiments of this application includes a series of modules, but the tag matching device provided in the embodiments of this application is not limited to the modules explicitly described, but may also include modules that need to be set for obtaining relevant task data or processing based on task data.
[0059] The embodiments of this application can be applied to computer systems composed of server components and can operate together with many other general-purpose or special-purpose computing system environments or configurations. Here, the server can be a distributed cloud computing technology environment including small computer systems, large computer systems, etc.
[0060] Server-side and other electronic devices can achieve corresponding functions through the execution of program modules. Typically, program modules can include routines, programs, object programs, components, logic, data structures, etc., which perform specific tasks or implement specific abstract data types. Computer systems / servers can be implemented in distributed cloud computing environments, where tasks are executed by remote processing devices linked through communication networks. In distributed cloud computing environments, program modules can reside on local or remote computing system storage media, including storage devices.
[0061] In related technologies, matrix models combined with belief propagation can be used for data pre-scoring of labels. Taking Google's PageRank algorithm as an example, assuming that the influence (PageRank, PR) value of each node is a matrix variable related to the node's label, refer to... Figure 1 As shown; to obtain the preliminary score, multiple rounds of iterative calculation are needed to stabilize the PR values of all nodes in the network. The number of iterations is indefinite. The iteration process involves multiplying the PR value of each node by a neighbor matrix (equivalent to the propagation matrix, representing the difference in propagation rate from each node to its neighboring nodes). Let the PR value of node M after N iterations be PR. n,m The PR matrix for N rounds is S n =(PR n,0 +PR n,1 +..+PR n,m The propagation matrix is L, and the iterative process is S. n+1 =S n *L.
[0062] If both real-time performance and generalizability are required, the following two problems will arise:
[0063] 1) If the matrix model is computed in real time, a single label update or insertion will lead to N rounds of iterative training until global convergence.
[0064] 2) Concurrently performing the update, insertion or deletion of labels will cause a large range of dynamic parameter updates to the matrix, making the matrix fall into an unusable state, and if the label network is simply split, it will easily fall into a local optimum, affecting the accuracy of the matching result.
[0065] To solve the above technical problems, the following embodiments are proposed.
[0066] In some embodiments of the present application, the label matching method can be implemented by using a processor in a label matching device. The processor can be at least one of an Application Specific Integrated Circuit (ASIC), a Digital Signal Processor (DSP), a Digital Signal Processing Device (DSPD), a Programmable Logic Device (PLD), a Field Programmable Gate Array (FPGA), a Central Processing Unit (CPU), a controller, a microcontroller, and a microprocessor.
[0067] Figure 2a is a flowchart of a label matching method in an embodiment of the present application, as shown in Figure 2a The method comprises the following steps:
[0068] Step 200: receiving a label matching request, wherein the label matching request comprises a set of labels to be matched; determining a set of candidate nodes from the nodes associated with each label in the set of labels to be matched, and taking each candidate node in the set of candidate nodes as a first gradient propagation node.
[0069] In an embodiment of the present application, the label matching method can be applied to a mesh structure composed of labels (Label) and cluster nodes (Node), referred to as a label network. Here, the cluster node represents a collection of multiple nodes, and each node can correspond to a business entity. The type of business entity is related to the business scenario in which the label matching method is actually applied.
[0070] For example, the set of labels to be matched can include one or more labels. Each label in the set of labels to be matched has a corresponding feature attribute, and each feature attribute has its own incentive value, which is equivalent to a weighting value, and the incentive value will be involved in subsequent score calculation.
[0071] In the embodiments of this application, in the case that the to-be-matched label set includes multiple labels, the feature attributes of different labels can be the same or different; and in the case that the feature attributes of different labels are all the same, the incentive values of these labels are also the same; here, the incentive value of a label indicates the incentive value of the feature attribute corresponding to the label.
[0072] In some embodiments, the classification manner of the feature attributes of the labels is not limited in the embodiments of this application; for example, the feature attributes of the labels can be classified into core labels (Core), suitable labels (Suitable), prioritized labels (Prioritized), optional labels (Optional), and the like in the classification concept; and the feature attributes of the labels can also be classified in other manners.
[0073] Exemplarily, for each label in the matched label set, what feature attribute should be assigned and how much the specific incentive value should be taken can be determined by means of a reduction algorithm or according to human experience, and the embodiments of this application are not limited in this regard; for example, the incentive value of a core label (Core) can be preset as 2.0, the incentive value of a suitable label (Suitable) can be preset as 1.0, the incentive value of a prioritized label (Prioritized) can be preset as 0.8, and the incentive value of an optional label (Optional) can be preset as 0.3.
[0074] Exemplarily, when the label network receives a label matching request sent externally, the to-be-matched label set can be obtained from the label matching request; and then, the candidate node set is determined according to the nodes associated with each label in the to-be-matched label set.
[0075] In some embodiments, the nodes associated with each label in the to-be-matched label set can all be candidate nodes in the candidate node set.
[0076] In some embodiments, for the implementation manner of determining the candidate node set, at least one label that meets a preset pruning condition can be determined from the to-be-matched label set; and the nodes associated with each label in the at least one label are put into the candidate node set as candidate nodes.
[0077] Here, the preset pruning condition is some screening condition set according to actual experience related to the business scenario, and the purpose is to reduce the amount of calculation; exemplarily, in the case that the to-be-matched label set includes multiple labels, at least one label that meets the preset pruning condition can be determined therefrom; and then, the nodes associated with each label in the at least one label are put into the candidate node set as candidate nodes.
[0078] Figure 2b is a network structure schematic diagram for performing label matching in the embodiments of this application, as Figure 2bAs shown, the to-be-matched label group includes four labels, and the feature attributes of the four labels are suitable label (Suitable), prioritized label (Prioritized), optional label (Optional), and core label (Core), respectively. Assuming that the preset pruning condition is that the candidate node must be associated with all labels with Core and Suitable feature attributes in the to-be-matched label group, then Figure 2b The two nodes in the dashed line part are candidate nodes, and the two candidate nodes form a candidate node set.
[0079] Exemplarily, after obtaining the candidate node set, each candidate node in the candidate node set can be taken as a first gradient propagation node; in combination with Figure 2b It can be known that the first gradient propagation node includes the two nodes in the dashed line part.
[0080] As can be seen, in the embodiments of the present application, by the preset pruning condition, the labels meeting the actual requirements are selected from the labels in the to-be-matched label group for subsequent matching, so that the calculation amount can be reduced without affecting the matching result.
[0081] Step 201: determining whether there is an irrelevant label meeting the preset propagation condition in each label associated with each node in the ith gradient propagation node; the irrelevant label means a label not included in the to-be-matched label group; i is an integer greater than or equal to 1.
[0082] Exemplarily, after obtaining the current gradient propagation node, each label associated with each node in the current gradient propagation node is traversed to determine the initial score of each label associated with each node in the current gradient propagation node; here, if i is equal to 1, the current gradient propagation node is the first gradient propagation node; if i is equal to 2, the current gradient propagation node is the second gradient propagation node.
[0083] Exemplarily, for the implementation manner of determining the initial score of each label associated with each node in the current gradient propagation node, the feature attribute and the incentive value of each label in the to-be-matched label group can be determined in advance; in the case that the value of i is greater than or equal to 1, when each label associated with each node in the ith gradient propagation node is determined to be a label in the to-be-matched label group, the initial score of each label associated with each node in the ith gradient propagation node is determined according to the incentive value of each label associated with each node in the ith gradient propagation node and the number of times of occurrence of the feature attribute of each label in the to-be-matched label group; when each label associated with each node in the ith gradient propagation node is determined to be not a label in the to-be-matched label group, a preset value is taken as the initial score of each label associated with each node in the ith gradient propagation node.
[0084] Exemplarily, according to the step 200, the characteristic attribute and the excitation value of each label in the to-be-matched label group can be determined in advance; in the process of traversing each label associated with each node in the current gradient propagation node, if it is determined that the current label is a label in the to-be-matched label group, the initial score of the label can be determined according to the excitation value of the label and the number of times of occurrence of the characteristic attribute of the label in the to-be-matched label group, and the initial score S of the label can be:
[0085] S=(C / Fn)*Bn.
[0086] Here, C represents the basic score of the current label, which can be set by a person, and is set as 1 by default, and is used to expand the data difference; Fn represents the number of times of occurrence of the characteristic attribute of the current label in the to-be-matched label group; and Bn represents the excitation value of the characteristic attribute corresponding to the current label.
[0087] Exemplarily, in the process of traversing each label associated with each node in the current gradient propagation node, if it is determined that the current label is not a label in the to-be-matched label group, the initial score of the current label can be set as a preset value; here, the value of the preset value can be set according to the actual business scenario, and the embodiments of the present application are not limited, for example, can be set as 0, or can be set as other numerical values.
[0088] It can be seen that in the embodiments of the present application, by traversing the judgment result of whether each label associated with each node in the current gradient propagation node is a label in the to-be-matched label group, the initial score of each label can be determined, and then the initial score is used for the score calculation of the subsequent candidate node, so that the effectiveness of the final score result can be ensured.
[0089] In the embodiments of the present application, after obtaining the initial score of each label associated with each node in the current gradient propagation node, it is further determined whether there is an irrelevant label that meets the preset propagation condition in each label associated with each node in the current gradient propagation node.
[0090] Here, the irrelevant label represents a label that is not included in the to-be-matched label group corresponding to the current gradient propagation node; exemplarily, assuming that the current gradient propagation node includes node 1 and node 2, and the to-be-matched label group corresponding thereto includes label 1 and label 2; if node 1 is associated with label 1 and label 3, and node 2 is associated with label 1, label 2 and label 3, then label 3 is an irrelevant label.
[0091] In some embodiments, determining whether there is an irrelevant label that meets the preset propagation condition in the labels associated with each node in the i-th gradient propagation node can include: if it is determined that the ratio of the number of nodes associated with the irrelevant label in the i-th gradient propagation node to the number of all nodes in the i-th gradient propagation node is greater than a set threshold, it is determined that there is an irrelevant label that meets the preset propagation condition; if it is determined that the ratio of the number of nodes associated with the irrelevant label in the i-th gradient propagation node to the number of all nodes in the i-th gradient propagation node is less than or equal to the set threshold, it is determined that there is no irrelevant label that meets the preset propagation condition.
[0092] For example, first, the ratio of the number of nodes associated with the irrelevant label in the current gradient propagation node to the number of all nodes included in the current gradient propagation node is determined; then the ratio is compared with the set threshold to obtain a comparison result; if it is determined according to the comparison result that the ratio is greater than the set threshold, it is indicated that there is an irrelevant label that meets the preset propagation condition; otherwise, if it is determined according to the comparison result that the ratio is less than or equal to the set threshold, it is indicated that there is no irrelevant label that meets the preset propagation condition.
[0093] Here, the value of the set threshold can be determined according to the actual business scenario, which is not limited in the embodiments of the present application, for example, it can be 0.5, or other values.
[0094] For example, it is assumed that the current gradient propagation node includes node 1 and node 2, and the corresponding label group to be matched includes label 1 and label 2; if node 1 is associated with label 1 and label 3, and node 2 is associated with label 1, label 2 and label 3, for the irrelevant label (label 3), since node 1 and node 2 are both associated with label 3, it can be determined that the number of nodes associated with the irrelevant label in the current gradient propagation node is 2, and thus it can be determined that the ratio of the number of nodes associated with the irrelevant label in the current gradient propagation node to the number of all nodes included in the current gradient propagation node is 1; at this time, if the value of the set threshold is 0.5, since the ratio is 1 which is greater than the set threshold 0.5, it can be determined that there is an irrelevant label (label 3) that meets the preset propagation condition in the labels associated with each node in the current gradient propagation node.
[0095] As can be seen, in the embodiments of the present application, by setting the preset propagation condition, some implicit irrelevant labels that can affect the matching result can be better found, and the number of iterations of the label matching algorithm can be reduced; this is because if there is no irrelevant label that meets the preset propagation condition in the labels corresponding to the current gradient propagation node, the iteration calculation of the next gradient propagation node is not performed.
[0096] Step 202: If the irrelevant label exists, the irrelevant label meeting the preset propagation condition is added into the group of labels to be matched, and the non-candidate node associated with the irrelevant label meeting the preset propagation condition is taken as the (i+1)th gradient propagation node; if the irrelevant label does not exist, and the value of i is greater than 1, the propagation scores of each label associated with each node in the ith gradient propagation node are determined; and according to the propagation scores of each label associated with each node in the ith gradient propagation node, the final score of each candidate node in the first gradient propagation node is determined.
[0097] In the embodiment of the present application, when it is determined according to step 201 that the irrelevant label meeting the preset propagation condition exists in each label associated with each node in the current gradient propagation node, it indicates that the irrelevant label has actual significance, and the current propagation network can continue to extend, that is, the irrelevant label has a certain influence on the score results of the candidate nodes in the subsequent first gradient propagation node; at this time, the irrelevant label is added into the group of labels to be matched, the non-candidate node associated with the irrelevant label is searched out, and the non-candidate node is taken as the next gradient propagation node.
[0098] For example, the current gradient propagation node includes node 1, node 2 and node 3, and the corresponding group of labels to be matched includes label 1 and label 2; if node 1 is associated with label 1 and label 3, and node 2 is associated with label 1, label 2 and label 3, it can be determined that the irrelevant label (label 3) meeting the preset propagation condition exists in each label associated with each node in the current gradient propagation node; at this time, the irrelevant label (label 3) is added into the group of labels to be matched, that is, the group of matching labels includes label 1, label 2 and label 3; if label 3 is associated with node 3, node 3 is the non-candidate node associated with the irrelevant label, and at this time, node 3 is taken as the next gradient propagation node. Here, the group of labels to be matched corresponding to the next gradient propagation node is the group of labels to be matched after the irrelevant label is added.
[0099] For example, after the next gradient propagation node is obtained, step 201 is continued to determine the initial scores of each label associated with each node in the next gradient propagation node, and to determine whether the irrelevant label meeting the preset propagation condition exists; the specific implementation manner is similar to the implementation manner of the current gradient propagation node, and will not be described here.
[0100] For example, if the current gradient propagation node is the first gradient propagation node, the next gradient propagation node is the second gradient propagation node, and it is determined according to step 201 that there is another irrelevant label that meets the preset propagation condition after the initial scores of the labels associated with each node in the second gradient propagation node are determined, the irrelevant label is added to the label group to be matched corresponding to the second gradient propagation node, and a non-alternative node associated with the irrelevant label is taken as a third gradient propagation node, and the judgment according to step 201 is continued until there is no irrelevant label that meets the preset propagation condition in the propagation network.
[0101] In some embodiments, determining the final score of each alternative node in the first gradient propagation node according to the propagation scores of the labels associated with each node in the i-th gradient propagation node can include: in the case where the value of i is greater than 1, determining the propagation scores of the labels associated with each node in the i-1-th gradient propagation node when it is determined that there is no irrelevant label that meets the preset propagation condition in the labels associated with each node in the i-th gradient propagation node; until the propagation scores of the labels associated with each alternative node in the first gradient propagation node are obtained; determining the final score of each alternative node in the first gradient propagation node according to the propagation scores of the labels associated with each alternative node in the first gradient propagation node; here, the final score is used to reflect the matching degree of the label group to be matched and each alternative node.
[0102] For example, assuming that it is determined according to step 201 that there is no irrelevant label that meets the preset propagation condition in the labels associated with each node in the second gradient propagation node, at this time, i is equal to 2; the propagation scores of the labels associated with each node in the second gradient propagation node are determined; then, the propagation scores of the labels associated with each node in the first gradient propagation node are determined according to the propagation scores of the labels associated with each node in the second gradient propagation node; and finally, the final score of each alternative node in the first gradient propagation node is determined according to the propagation scores of the labels associated with each alternative node in the first gradient propagation node.
[0103] In some embodiments, determining the final score of each alternative node in the first gradient propagation node according to the propagation scores of the labels associated with each node in the i-th gradient propagation node can include: in the case where the value of i is greater than 1, determining the initial scores of the labels associated with each node in the i-th gradient propagation node; and determining the final score of each alternative node in the first gradient propagation node according to the propagation scores and the initial scores of the labels associated with each node in the i-th gradient propagation node.
[0104] Exemplarily, in the case that i is equal to 2 according to the above steps, firstly, the initial score of each label associated with each node in the second gradient propagation node is determined, the propagation score of each label is determined according to the initial score of each label associated with each node in the second gradient propagation node, and then the propagation score of each label associated with each node in the first gradient propagation node is determined according to the propagation score of each label associated with each node in the second gradient propagation node; finally, the final score of each candidate node in the first gradient propagation node is determined according to the propagation score and the initial score of each candidate node in the first gradient propagation node. It can be seen that, taking the case that i is equal to 2 as an example, the propagation score reflects the influence degree of the score of each label associated with each node in the second gradient propagation node on the score of the candidate node associated with the same label (i.e., the irrelevant label added into the label group to be matched) in the first gradient propagation node.
[0105] It can be seen that, in the embodiment of the present application, the final score of each candidate node in the first gradient propagation node is determined by using the propagation score and the initial score of each label associated with each node in other gradient propagation nodes, which can improve the generalization of the matching result.
[0106] Exemplarily, it is assumed that the first gradient propagation node includes node 1 and node 2, and the corresponding label group 1 to be matched includes label 1 and label 2; node 1 is associated with label 1 and label 3, node 2 is associated with label 2 and label 3, label 3 is added into the label group 1 to be matched to obtain the label group 2 to be matched; if label 3 is associated with node 3, the second gradient propagation node includes node 3, and if node 3 is not associated with other irrelevant labels, at this time, the propagation score of node 3 in the second gradient propagation node is calculated. Specifically, firstly, the initial score of node 3 in the second gradient propagation node is determined, and then the excitation value corresponding to the feature attribute of label 3 and the proportion of the excitation value of all labels in the label group 2 to be matched are determined, and the product of the initial score of node 3 and the proportion of the excitation value is taken as the propagation score of node 3.
[0107] Exemplarily, it is assumed that the initial score of node 3 is 0.5, and the excitation values corresponding to label 1, label 2 and label 3 in the label group 2 to be matched are 2, 1.5 and 0.5 respectively, then the proportion of the excitation value corresponding to node 3 is 0.125, at this time, the propagation score of node 3 is 0.0625.
[0108] Further, after obtaining the propagation score of node 3 in the second gradient propagation node, the first gradient propagation node is returned. At this time, since node 1 in the first gradient propagation node is associated with label 1 and label 3, and node 2 is associated with label 2 and label 3, that is, node 1 and node 2 are both associated with label 3, when calculating the final score of node 1 and node 2, the initial score 0.5 of label 3 is first added to the propagation score 0.0625 to obtain an accumulated score 0.5625, and the accumulated score is further added to the initial scores of other associated labels to obtain the final scores of node 1 and node 2, that is, the final score of node 1 is the sum of the incentive value 2 corresponding to label 1 and the accumulated score 0.5625 of label 3, which is 2.5625, and the final score of node 2 is the sum of the incentive value 1.5 corresponding to label 2 and the accumulated score 0.5625 of label 3, which is 2.0625.
[0109] It can be seen that in the embodiments of the present application, in the process of label matching, the propagation scores of each label associated with each node in the previous gradient are determined according to the propagation scores of each label associated with each node in the current gradient propagation node, that is, the final scores of each candidate node are determined by means of back propagation, which can improve the accuracy of the matching result.
[0110] In some embodiments, the above method can further include: when determining that different nodes in the i-th gradient propagation node are associated with the same target label, determining the propagation scores of the same target label associated with each node in the different nodes; selecting the maximum propagation score of the target label from the propagation scores of the same target label associated with each node in the different nodes; and determining the propagation scores of each label associated with each node in the (i-1)-th gradient propagation node according to the maximum propagation score of the target label.
[0111] For example, the second gradient propagation node includes node 3 and node 4, and if node 3 and node 4 are both associated with label 4, it is assumed that when node 3 is associated with label 4, the propagation score of label 4 is determined to be 0.2, and when node 4 is associated with label 4, the propagation score of label 4 is determined to be 0.5. At this time, 0.5 is taken as the propagation score of label 4 for determining the propagation scores of each node in the previous gradient propagation node (the first gradient propagation node), and finally, the final scores of each candidate node in the first gradient propagation node are determined.
[0112] It can be seen that in the embodiments of the present application, when different nodes in a certain gradient propagation node are associated with the same label, multiple propagation scores corresponding to the label can be obtained. Since the propagation score can indicate the importance of the label with respect to the node, selecting the maximum propagation score as the propagation score of the label can improve the accuracy of the subsequent matching result.
[0113] The embodiment of the application provides a label matching method and device, electronic equipment and computer storage medium, the method comprises the following steps: receiving a label matching request, the label matching request comprises a label group to be matched; determining a candidate node set from nodes associated with each label in the label group to be matched; regarding each candidate node in the candidate node set as a first gradient propagation node; determining whether there is an irrelevant label meeting a preset propagation condition in each label associated with each node in the i-th gradient propagation node; the irrelevant label represents a label not included in the label group to be matched; i is an integer greater than or equal to 1; when the irrelevant label meeting the preset propagation condition is determined to exist, the irrelevant label meeting the preset propagation condition is added to the label group to be matched, and a non-candidate node associated with the irrelevant label meeting the preset propagation condition is regarded as an (i+1)-th gradient propagation node; when the irrelevant label meeting the preset propagation condition is determined to not exist, and the value of i is greater than 1, the propagation score of each label associated with each node in the i-th gradient propagation node is determined; the final score of each candidate node in the first gradient propagation node is determined according to the propagation score of each label associated with each node in the i-th gradient propagation node; and the final score is used to reflect the matching degree of the label group to be matched and each candidate node.
[0114] It can be seen that, in the embodiment of the application, whether there is an irrelevant label meeting a preset propagation condition in each label associated with each node in the i-th gradient propagation node is determined, that is, whether the label propagation network can continue to extend based on the irrelevant label, so that some implicit irrelevant labels that can affect the label matching result can be better found, and the accuracy of subsequent label matching is improved; in addition, in the process of determining whether there is an irrelevant label meeting the preset propagation condition, if the labels associated with each node in a certain gradient propagation node no longer meet the preset propagation condition, the labels associated with other nodes are no longer judged, that is, the iterative calculation for the label matching process can be stopped, and the propagation depth is effectively prevented from being too large; compared with the related art, if a label is updated or inserted once, N rounds of iterative training are required until global convergence, and the number of iterations in the label matching process of the embodiment of the application is less, and the calculation amount of label matching can be greatly reduced.
[0115] In some embodiments, the above method can further comprise: determining an initial score of each label associated with each candidate node in the first gradient propagation node; if it is determined that there is no irrelevant label meeting the preset propagation condition in each label associated with each candidate node in the first gradient propagation node; the sum of the initial scores of each label associated with each candidate node in the first gradient propagation node is determined as the final score result of each candidate node.
[0116] Exemplarily, in a case that the current gradient propagation node is the first gradient propagation node, the initial scores of the labels associated with each candidate node in the first gradient propagation node are determined in the above manner. If it is determined that there is no irrelevant label in the labels associated with each candidate node in the first gradient propagation node, which meets the preset propagation condition; that is, each label associated with each candidate node is a label in the to-be-matched label group; at this time, the initial scores of the labels associated with each candidate node are determined according to formula (1), and the sum of the initial scores of the labels associated with each candidate node is taken as the final score result of each candidate node.
[0117] Exemplarily, it is assumed that the first gradient propagation node includes node 1 and node 2, and the corresponding to-be-matched label group includes label 1 and label 2; if node 1 is associated with label 1, node 2 is associated with label 1 and label 2, and the initial scores of label 1 and label 2 are determined to be 0.3 and 0.8 respectively according to formula (1) above, then the final score result of node 1 is 0.3, and the final score result of node 2 is 1.1.
[0118] It can be seen that, in the embodiment of the present application, when it is determined that there is no irrelevant label in the labels associated with each candidate node in the first gradient propagation node, which meets the preset propagation condition, it indicates that the current propagation network does not need to continue to extend, at this time, the sum of the initial scores of the labels associated with each candidate node in the first gradient propagation node is taken as the final score result of each candidate node, which can greatly reduce the calculation amount of the label matching algorithm.
[0119] Exemplarily, after obtaining the final scores of each candidate node in the first gradient propagation node, the final scores of each candidate node can be sorted in descending order, and the candidate node with the highest ranking is the node with the highest matching degree with the to-be-matched label group; or, the final scores of each candidate node are first normalized according to the standard deviation, and the normalized results are sorted in descending order, and the candidate node with the highest ranking is the node with the highest matching degree with the to-be-matched label group. Since a node corresponds to a business entity, the business entity with the highest matching degree with the to-be-matched label group can be obtained by the above method.
[0120] In order to better reflect the purpose of the present application, further description is made on the basis of the above embodiment of the present application.
[0121] Figure 2b The network structure shown is a local network, Figure 2c is another network structure diagram for label matching in the embodiment of the present application, as shown in Figure 2cAs shown, the network structure is a bidirectional ring structure, which can be represented by two sets of relationships, namely the out-degree and in-degree of edges, Node -> Label and Label -> Node, as inputs of the label matching algorithm, which will be described in detail as follows:
[0122] Step A1: Through a search algorithm, obtain the Label -> Node relationship set with the condition of the to-be-matched label group attached in the label matching request. Before starting the traversal, the preset pruning condition of the network can be set to trim the network, for example, Figure 2b The preset pruning condition in the above example is that the candidate Node must be associated with the labels of all Core and Suitable feature attributes involved in the to-be-matched label group, so Figure 2b The dashed part in the above example is the first gradient propagation node of the propagation network, and other nodes that do not meet the condition are pruned; of course, if the preset pruning condition is not set, the original Label -> Node relationship set is used, and all involved Nodes are used as the first gradient propagation node; here, the first gradient propagation node is also the candidate node of the final matching result.
[0123] Step A2: Take each Node in the current gradient propagation node as a criterion, search for the Node -> Label relationship set, traverse each Label associated with the Node, and give each Label an initial score. If the Label is not the label attached in the to-be-matched label group, the initial score is 0, otherwise, set the current Label as N, the basic score as C, the number of occurrences of the feature attribute of the Label in the to-be-matched label group as Fn, and the incentive value of the feature attribute of the Label as Bn, then the initial score should be: (C / Fn)*Bn.
[0124] Step A3: Reverse the Node -> Label relationship of step A2 and traverse and calculate Label -> Node. Since step A2 ignores the effect of other labels (irrelevant labels) not included in the to-be-matched label group on the score, but irrelevant labels will also affect the score due to the propagation network; here, a ratio of the candidate Nodes associated with irrelevant labels to the total associated Nodes can be set as the propagation condition, and the default ratio is 0.5. As long as the ratio exceeds this value, it is considered that the irrelevant label also has practical significance, and the propagation network can continue to extend; if there is an irrelevant label that meets the propagation condition, dynamically add this irrelevant label to the to-be-matched label group, search for the non-candidate nodes associated with this irrelevant label as the next propagation gradient node, and return to step A2; otherwise, proceed to the next step.
[0125] Step A4: According to the Node->Label relationship of Step 2, traverse again, take the sum of the scores of all labels associated with each Node in the current gradient propagation node as the score of each Node in the current gradient propagation node, if the Node node in the current gradient propagation node is not the candidate node, determine the propagation score of each Label associated with the Node node in the current gradient propagation node according to the proportion of the excitation value of the corresponding feature attribute of the Label associated with the Node node in the current gradient propagation node, one Label may have multiple propagation scores, and the maximum can be taken, after the calculation is completed, return to the previous gradient until the final score result of each candidate node in the first gradient propagation node is obtained; otherwise, the score calculation is completed, and the final score result of each candidate Node is returned.
[0126] Step A5: According to the standard deviation, the final score result of each candidate Node is normalized.
[0127] It can be seen that the iteration number of the label matching algorithm proposed in the embodiment of the application is very small, if the labels in the to-be-matched label group are very clear and accurate, then the calculation amount may be only one to two steps, and compared with related technologies, some implicit factors affecting the matching result can be better found, for example, in the calculation process, some implicit labels not appearing in the query are generated, the potential features of these labels are obtained through pre-calculation, and therefore the accuracy of the matching result can be ensured. Further, in the process of label matching, the network propagation is also used, in order to prevent the propagation depth from being too large and the generation of a loop network, the edge propagation and pruning and the use of a ratio limited propagation condition are used to dynamically outline different propagation networks.
[0128] Exemplarily, for each label, what feature attribute should be assigned and how much the specific excitation value is, the core label and the non-core label and their weighted weights (excitation values) can be defined by means of a reduction algorithm (for example, Roughset fuzzy set theory). The core process of the reduction algorithm is as follows: it is assumed that each label has all feature attributes, and the respective weighted value is an artificial weighted value * an excitation value (the artificial weighted value is an experience setting, and the excitation value is initially 1). The input training data set is a series of query labels and corresponding matching entities. The query label set can be an input matrix with a weighted value, and the matching entity combined with all candidate entity numbers can be a 0-1 sequence with a length of N (candidate entity number). The reduction algorithm is to convert the problem into a classification problem, and each iteration is to solve an optimal classification neural network. After each iteration is completed, the input matrix is adjusted (excitation value is increased or decreased) according to the reduction condition and then iterated, and the reduction condition needs to be beneficial to enhancing the classification ability of the input matrix.
[0129] The characteristic attribute is used to reduce the size of the generated propagation network each time, without affecting the matching result of the label, that is, the most suitable labeled entity, so in the reduction algorithm, whether the matching entity result changes and the influence of the adjustment of the label characteristic attribute incentive value on the confidence range of the result should be used as the reduction condition. Finally, the characteristic attribute with the highest weighted value in each query label is used as its unique characteristic attribute, and the final iteration incentive value of each characteristic attribute is the final incentive value. Of course, in actual scenarios, the characteristic attribute can also be artificially assigned to the label based on experience. Similarly, in general cases, the incentive value of the characteristic attribute can be preset, for example, the incentive value of the core label (Core) is 2.0, the incentive value of the most suitable label (Suitable) is 1.0, the incentive value of the prioritized label (Prioritized) is 0.8, and the incentive value of the optional label (Optional) is 0.3. In addition, the number of characteristic attributes is often not fixed, and a continuous numerical range can be divided into multiple segments, and each segment represents a characteristic attribute, and the range of the segment is the incentive value range. The characteristic attribute and the incentive value are equivalent to prior knowledge and indirectly participate in the label matching score calculation, but cannot directly represent the final matching score of the data, so the incentive value of the characteristic attribute does not need to be adjusted frequently. Unlike the traditional scoring network, the characteristic attribute and the incentive value are irrelevant to the specific matching query.
[0130] Figure 2d is a flowchart of a scoring value transmission process when the preset propagation condition is not met in the embodiment of the application, as shown in Figure 2d init represents scoring of the associated Label after finding the Candidate Node of the first gradient propagation node, which is equivalent to that the scoring of the Candidate Node is implicitly transmitted to the associated Label; sum refers to that the scoring of the Unrelated Node is the sum of the scorings of all Labels associated with it, which is also a transmission; the broadcast propagation between the Unrelated Node and the associated Label is transmitted according to the proportion of the incentive value of the characteristic attribute described in step A4 to calculate the propagation score, which is a reverse transmission; and finally the broadcast propagation from the associated Label to the Candidate Node is transmitted according to the maximum propagation score of the Label itself, and finally the initial score of the Candidate Node is obtained by adding the real score of the Candidate Node, that is, the overall transmission sequence is init->sum->broadcast->broadcast.
[0131] Figure 3 is a schematic diagram of the composition structure of the label matching device in the embodiment of the application, as shown in Figure 3 the device comprises a first determination module 300 and a second determination module 301, wherein
[0132] The first determining module 300 is configured to receive a label matching request, wherein the label matching request comprises a set of labels to be matched; determine a set of candidate nodes from nodes associated with each label in the set of labels to be matched, and take each candidate node in the set of candidate nodes as a first gradient propagation node;
[0133] The second determining module 301 is configured to determine whether there is an irrelevant label that meets a preset propagation condition in each label associated with each node in an i-th gradient propagation node; the irrelevant label represents a label that is not included in the set of labels to be matched; i is an integer greater than or equal to 1; when the irrelevant label that meets the preset propagation condition exists, add the irrelevant label that meets the preset propagation condition to the set of labels to be matched, and take a non-candidate node associated with the irrelevant label that meets the preset propagation condition as an (i+1)-th gradient propagation node; when the irrelevant label that meets the preset propagation condition does not exist, and the value of i is greater than 1, determine a propagation score of each label associated with each node in the i-th gradient propagation node; and determine a final score of each candidate node in the first gradient propagation node according to the propagation scores of the labels associated with each node in the i-th gradient propagation node; the final score reflects a matching degree between the set of labels to be matched and each candidate node.
[0134] In some embodiments, the second determining module 301 is configured to determine the final score of each candidate node in the first gradient propagation node according to the propagation scores of the labels associated with each node in the i-th gradient propagation node, including:
[0135] When the value of i is greater than 1, and it is determined that there is no irrelevant label that meets the preset propagation condition in each label associated with each node in the i-th gradient propagation node, determine a propagation score of each label associated with each node in an (i-1)-th gradient propagation node according to the propagation scores of the labels associated with each node in the i-th gradient propagation node;
[0136] Until the propagation scores of the labels associated with each candidate node in the first gradient propagation node are obtained; and determine the final score of each candidate node in the first gradient propagation node according to the propagation scores of the labels associated with each candidate node in the first gradient propagation node.
[0137] In some embodiments, the second determining module 301 is further configured to:
[0138] When it is determined that different nodes in the i-th gradient propagation node are associated with a same target label, determine a propagation score of the same target label associated with each node in the different nodes;
[0139] Select a maximum propagation score of the target label from the propagation scores of the target label associated with each node in the different nodes;
[0140] determine the propagation score of each label associated with each node in the i-th gradient propagation node according to the maximum propagation score of the target label.
[0141] In some embodiments, the second determining module 301 is further configured to:
[0142] determine the initial score of each label associated with each candidate node in the first gradient propagation node;
[0143] if it is determined that there is no irrelevant label meeting the preset propagation condition among the labels associated with each candidate node in the first gradient propagation node, determine the sum of the initial scores of the labels associated with each candidate node in the first gradient propagation node as the final score result of the candidate node.
[0144] In some embodiments, the second determining module 301 is configured to determine whether there is an irrelevant label meeting the preset propagation condition among the labels associated with each node in the i-th gradient propagation node, including:
[0145] if it is determined that the ratio of the number of nodes associated with the irrelevant label in the i-th gradient propagation node to the number of nodes in the i-th gradient propagation node is greater than a set threshold, it is determined that there is an irrelevant label meeting the preset propagation condition;
[0146] if it is determined that the ratio of the number of nodes associated with the irrelevant label in the i-th gradient propagation node to the number of nodes in the i-th gradient propagation node is less than or equal to a set threshold, it is determined that there is no irrelevant label meeting the preset propagation condition.
[0147] In some embodiments, the first determining module 300 is configured to determine a candidate node set from the nodes associated with each label in the label group to be matched, including:
[0148] determine at least one label meeting a preset pruning condition from the label group to be matched;
[0149] put the nodes associated with each label in the at least one label as candidate nodes into the candidate node set.
[0150] In some embodiments, the determination of the final score of each candidate node in the first gradient propagation node according to the propagation score of each label associated with each node in the i-th gradient propagation node includes:
[0151] if the value of i is greater than 1, determine the initial score of each label associated with each node in the i-th gradient propagation node;
[0152] According to the propagation score and the initial score of each label associated with each node in the i-th gradient propagation node, a final score of each candidate node in the first gradient propagation node is determined.
[0153] In some embodiments, the second determining module 301 is further configured to:
[0154] The feature attribute and the incentive value of each label in the to-be-matched label group are determined in advance.
[0155] In a case where i is greater than or equal to 1, when it is determined that each label associated with each node in the i-th gradient propagation node is a label in the to-be-matched label group, according to the incentive value and the feature attribute of each label associated with each node in the i-th gradient propagation node, the initial score of each label associated with each node in the i-th gradient propagation node is determined.
[0156] In a case where it is determined that each label associated with each node in the i-th gradient propagation node is not a label in the to-be-matched label group, a preset value is taken as the initial score of each label associated with each node in the i-th gradient propagation node.
[0157] In actual applications, the first determining module 300 and the second determining module 301 can be implemented by a processor in an electronic device, which can be at least one of an ASIC, a DSP, a DSPD, a PLD, an FPGA, a CPU, a controller, a microcontroller, and a microprocessor.
[0158] In addition, each functional module in the embodiment can be integrated in one processing unit, or each unit can be physically present separately, or two or more units can be integrated in one unit. The integrated unit can be implemented in the form of hardware or in the form of a software functional module.
[0159] If the integrated unit is implemented in the form of a software functional module and is not sold or used as an independent product, it can be stored in a computer readable storage medium. Based on this understanding, the technical solutions of the embodiment can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including a plurality of instructions for causing a computer device (which can be a personal computer, a server, or a network device, etc.) or a processor to perform all or part of the steps of the embodiment method. The aforementioned storage medium includes: a U disk, a mobile hard disk, a read-only memory (ROM), a RAM, a magnetic disk or an optical disk, and various storage media that can store program codes.
[0160] Specifically, the computer program instructions corresponding to the label matching method in the embodiment can be stored on a storage medium such as an optical disc, a hard disk, a U disk, etc. When the computer program instructions corresponding to the label matching method in the storage medium are read by an electronic device or executed, any label matching method of the foregoing embodiments is implemented.
[0161] Based on the same technical concept as the foregoing embodiments, refer to Figure 4 which shows the electronic device 400 provided by the embodiments of the present application, which can include a memory 401 and a processor 402; wherein,
[0162] The memory 401 is configured to store computer programs and data.
[0163] The processor 402 is configured to execute the computer programs stored in the memory to implement any label matching method of the foregoing embodiments.
[0164] In actual application, the memory 401 can be a volatile memory (Volatile Memory) such as RAM, or a non-volatile memory (Non-Volatile Memory) such as ROM, a flash memory (Flash Memory), a hard disk (Hard Disk Drive, HDD) or a solid-state disk (Solid-State Drive, SSD), or a combination of the above kinds of memories, and provides instructions and data to the processor 402.
[0165] The processor 402 can be at least one of an ASIC, a DSP, a DSPD, a PLD, an FPGA, a CPU, a controller, a microcontroller, and a microprocessor. It can be understood that for different label matching devices, the electronic device for implementing the functions of the processor can also be other electronic devices, and the embodiments of the present application are not limited specifically.
[0166] In some embodiments, the apparatus provided by the embodiments of the present application has functions or includes modules that can be used to execute the methods described in the foregoing method embodiment descriptions, and the specific implementation can refer to the descriptions of the foregoing method embodiments. For brevity, they will not be described here.
[0167] The foregoing descriptions of various embodiments tend to emphasize the differences between various embodiments, and the same or similar parts can be mutually referred to. For brevity, they will not be described here.
[0168] The methods disclosed in the various method embodiments provided by the present application can be combined arbitrarily without conflict to obtain new method embodiments.
[0169] The features disclosed in the various product embodiments provided by the present application can be combined, insofar as possible, to obtain new product embodiments.
[0170] The features disclosed in the various method or device embodiments provided by the present application can be combined, insofar as possible, to obtain new method embodiments or device embodiments.
[0171] Those skilled in the art will understand that the embodiments of the present application can be provided as methods, systems, or computer program products. Therefore, the present application can take the form of hardware embodiments, software embodiments, or embodiments combining software and hardware aspects. Moreover, the present application can take the form of a computer program product implemented on one or more computer-usable storage media (including, but not limited to, disk storage and optical storage) having computer-usable program code contained therein.
[0172] The present application is described with reference to the flowcharts and / or block diagrams of the methods, devices (systems), and computer program products according to the embodiments of the present application. It should be understood that each flow and / or block in the flowcharts and / or block diagrams, as well as a combination of flows and / or blocks in the flowcharts and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing apparatus to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing apparatus generate one or more functions implemented in the flowcharts and / or block diagrams. Figure 1 one or more functions implemented in the flowcharts and / or block diagrams. Figure 1 an apparatus that performs the functions specified in the flowchart or block diagram.
[0173] These computer program instructions can also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable data processing apparatus to produce a computer-implemented process such that the instructions executed by the computer or other programmable data processing apparatus provide the functions implemented in the flowcharts and / or block diagrams. Figure 1 one or more functions implemented in the flowcharts and / or block diagrams. Figure 1 an apparatus that performs the functions specified in the flowchart or block diagram.
[0174] The above is only a preferred embodiment of the present application, and is not intended to limit the protection scope of the present application.
Claims
1. A method for querying business entities, characterized in that, The method includes: Obtain the tag network, which is a mesh structure composed of tags and cluster nodes. The cluster node represents a set of multiple nodes, and each node corresponds to a business entity in a financial business application system. Receive a tag matching request, the tag matching request including a group of tags to be matched, the group of tags to be matched including query tags for querying business entities; determine a set of candidate nodes from the nodes associated with each tag in the group of tags to be matched, and use each candidate node in the set of candidate nodes as a first gradient propagation node; Determine whether there are any irrelevant labels that meet preset propagation conditions among the labels associated with each node in the i-th gradient propagation node; the irrelevant labels refer to labels not included in the label group to be matched; i is an integer greater than or equal to 1; When it is determined that an irrelevant label that meets the preset propagation conditions is added to the label group to be matched, and the non-candidate node associated with the irrelevant label that meets the preset propagation conditions is used as the (i+1)th gradient propagation node; When it is determined that there is no such node, and the value of i is greater than 1, the propagation score of each label associated with each node in the i-th gradient propagation node is determined; based on the propagation score of each label associated with each node in the i-th gradient propagation node, the final score of each candidate node in the first gradient propagation node is determined; the final score is used to reflect the degree of matching between the tag group to be matched and each candidate node. The final scores of each candidate node are sorted in descending order. The candidate node with the highest score is the node with the highest degree of matching with the tag group to be matched, and the business entity that best matches the tag group to be matched is obtained.
2. The method according to claim 1, characterized in that, The step of determining the final score of each candidate node in the first gradient propagation node based on the propagation scores of each label associated with each node in the i-th gradient propagation node includes: When the value of i is greater than 1, if it is determined that there are no irrelevant labels that meet the preset propagation conditions among the labels associated with each node in the i-th gradient propagation node, the propagation score of each label associated with each node in the (i-1)-th gradient propagation node is determined based on the propagation score of each label associated with each node in the i-th gradient propagation node. The propagation score of each label associated with each candidate node in the first gradient propagation node is obtained; based on the propagation score of each label associated with each candidate node in the first gradient propagation node, the final score of each candidate node in the first gradient propagation node is determined.
3. The method according to claim 2, characterized in that, The method further includes: When determining that different nodes in the i-th gradient propagation node are associated with the same target label, the propagation score of each node in the different nodes associated with the same target label is determined; From the propagation scores of the same target label associated with each of the different nodes, select the maximum propagation score of the target label; Based on the maximum propagation score of the target label, determine the propagation score of each label associated with each node in the (i-1)th gradient propagation node.
4. The method according to claim 1, characterized in that, The method further includes: Determine the initial score of each label associated with each candidate node in the first gradient propagation node; If it is determined that there are no irrelevant labels that meet the preset propagation conditions among the labels associated with each candidate node in the first gradient propagation node, the sum of the initial scores of each label associated with each candidate node in the first gradient propagation node is determined as the final score of each candidate node.
5. The method according to claim 1, characterized in that, Determining whether there are irrelevant labels that meet preset propagation conditions among the labels associated with each node in the i-th gradient propagation node includes: If the ratio of the number of nodes associated with the irrelevant label in the i-th gradient propagation node to the number of each node in the i-th gradient propagation node is greater than a set threshold, it is determined that there is an irrelevant label that meets the preset propagation conditions. If the ratio of the number of nodes associated with the irrelevant label in the i-th gradient propagation node to the number of each node in the i-th gradient propagation node is less than or equal to a set threshold, it is determined that there is no irrelevant label that meets the preset propagation conditions.
6. The method according to claim 1, characterized in that, The step of determining a candidate node set from the nodes associated with each tag in the group of tags to be matched includes: Determine at least one tag from the group of tags to be matched that meets the preset pruning conditions; Each node associated with one of the at least one tags is selected as a candidate node and placed into a candidate node set.
7. The method according to claim 1, characterized in that, The step of determining the final score of each candidate node in the first gradient propagation node based on the propagation scores of each label associated with each node in the i-th gradient propagation node includes: If the value of i is greater than 1, determine the initial score of each label associated with each node in the i-th gradient propagation node; Based on the propagation scores and initial scores of each label associated with each node in the i-th gradient propagation node, the final score of each candidate node in the first gradient propagation node is determined.
8. The method according to claim 4 or 7, characterized in that, The method further includes: Predetermine the feature attributes and activation values of each tag in the group of tags to be matched; When the value of i is greater than or equal to 1, when determining that each label associated with each node in the i-th gradient propagation node is a label in the label group to be matched, the initial score of each label associated with each node in the i-th gradient propagation node is determined according to the excitation value of each label associated with each node in the i-th gradient propagation node and the number of times the feature attribute appears in the label group to be matched. When it is determined that each label associated with each node in the i-th gradient propagation node is not a label in the label group to be matched, a preset value is used as the initial score of each label associated with each node in the i-th gradient propagation node.
9. A query device for a business entity, characterized in that, The device includes: The first determining module is used to acquire a tag network, which is a mesh structure composed of tags and cluster nodes. The cluster node represents a set of multiple nodes, and each node corresponds to a business entity in a financial business application system. The module receives a tag matching request, which includes a group of tags to be matched. The group of tags to be matched includes query tags used to query business entities. The module determines a set of candidate nodes from the nodes associated with each tag in the group of tags to be matched, and uses each candidate node in the set of candidate nodes as a first gradient propagation node. The second determining module is used to determine whether there are irrelevant tags that meet preset propagation conditions among the tags associated with each node in the i-th gradient propagation node; the irrelevant tags refer to tags not included in the tag group to be matched; i is an integer greater than or equal to 1; if it is determined that there are, the irrelevant tags that meet the preset propagation conditions are added to the tag group to be matched, and the non-candidate nodes associated with the irrelevant tags that meet the preset propagation conditions are taken as the (i+1)-th gradient propagation node; if it is determined that there are no, and the value of i is greater than 1, the propagation score of each tag associated with each node in the i-th gradient propagation node is determined; based on the propagation score of each tag associated with each node in the i-th gradient propagation node, the final score of each candidate node in the first gradient propagation node is determined; the final score is used to reflect the degree of matching between the tag group to be matched and each candidate node; the final scores of each candidate node are sorted in descending order, and the candidate node ranked first is taken as the node with the highest degree of matching with the tag group to be matched, thus obtaining the business entity that best matches the tag group to be matched.
10. An electronic device, characterized in that, The device includes a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor, when executing the program, implements the method according to any one of claims 1 to 8.
11. A computer storage medium having a computer program stored thereon, characterized in that, When executed by a processor, the computer program implements the method described in any one of claims 1 to 8.
Citation Information
Patent Citations
Route propagation method and node
CN107370675A
Microblog community discovery method based on node influence label propagation
CN108364234A