Knowledge Graph-Based Intelligent Association and Insight Analysis Methods for Customer Information

By using the Fellegi–Sunter model and the Katz path calculation method, the problems of stably identifying the same customer entity and multi-hop association paths in customer information association and analysis are solved, realizing accurate integration and dynamic expansion of customer relationships, and improving the depth and automation level of customer relationship analysis.

CN122492211APending Publication Date: 2026-07-31SHANDONG MEASUREMENT SCI RES INST
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
SHANDONG MEASUREMENT SCI RES INST
Filing Date
2026-05-13
Publication Date
2026-07-31

AI Technical Summary

Technical Problem

Existing customer information association and analysis technologies struggle to reliably identify the same customer entity in scenarios with missing fields, conflicting information, or time-varying characteristics. Furthermore, they lack systematic modeling and quantitative evaluation of potential multi-hop association paths, resulting in insufficient stability of association results and limited depth of insight.

Method used

The Fellegi–Sunter model is used for probability matching and unified identifier generation. Combined with the Katz path calculation method, the multi-hop association paths between customers are weighted and comprehensively analyzed to construct a customer relationship structure and realize the automatic discovery and dynamic expansion of potential customer relationships.

Benefits of technology

It improves the accuracy and consistency of customer identity integration, enhances the depth and stability of customer relationship profiling, realizes the dynamic evolution and self-improvement of customer relationship networks, and improves the automation level of customer relationship insights.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122492211A_ABST
    Figure CN122492211A_ABST
Patent Text Reader

Abstract

This invention discloses a knowledge graph-based intelligent association and insight analysis method for customer information. By collecting customer data from different data sources and processing it in a standardized manner, standardized integration of customer information is achieved. Based on this, customer records are matched and judged to form a unified set of customer identifiers. A customer relationship structure is further constructed, organizing customers and their relationships into a computable data network, and a trust level label is introduced into this structure. For any customer pair, the potential association strength is evaluated through multi-path association calculation, and new customer relationships are automatically generated based on the calculation results. Finally, key customers and their associations are extracted from the updated relationship structure to form a customer relationship substructure for analysis, achieving automatic discovery and deep insight into customer relationships.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of data processing and information analysis technology, and in particular to a method for intelligent association and insight analysis of customer information based on knowledge graphs. Background Technology

[0002] With the increasing demands for digital operations and refined customer management from enterprises, the scale of customer data from business systems, channel systems, transaction systems, and external platforms continues to grow, and customer information is characterized by diverse sources, inconsistent structures, and fragmented semantics. Existing customer data management typically relies on multi-source data integration and customer association analysis technologies to match and integrate customer records scattered across different systems. Based on this, customer relationship analysis, risk identification, and business insights are conducted, which has become a crucial foundational capability for industries such as finance, retail, and telecommunications.

[0003] Existing customer information association and analysis technologies still have significant shortcomings. On the one hand, traditional customer deduplication and entity identification methods mostly rely on rule matching or simple probabilistic models, making it difficult to stably identify the same customer entity in scenarios with missing fields, information conflicts, or temporal evolution. This easily leads to false or missed matches, resulting in fragmented customer identities. On the other hand, most existing customer relationship analyses are based on direct relationships or fixed rules to build relationship networks. They lack the ability to systematically model and quantitatively evaluate multi-hop potential association paths, cannot effectively distinguish the credibility and contribution intensity of different association paths, and struggle to dynamically discover hidden customer relationships. This results in insufficient stability of association results and limited depth of insight, making it difficult to meet the needs for accurate identification and continuous evolution analysis of customer relationships in complex business scenarios.

[0004] Therefore, how to provide intelligent association and insight analysis methods for customer information based on knowledge graphs is a problem that urgently needs to be solved by those skilled in the art. Summary of the Invention

[0005] This invention proposes a knowledge graph-based intelligent association and insight analysis method for customer information. By introducing the Fellegi-Sunter model, it performs probabilistic matching and unified identification generation on customer records from multiple sources, and builds a customer relationship structure on this basis. The Katz path calculation method is used to perform weighted evaluation and comprehensive analysis on multi-hop association paths between customers, thereby realizing the automatic discovery and dynamic expansion of potential customer relationships.

[0006] The customer information intelligent association and insight analysis method based on knowledge graph according to embodiments of the present invention includes the following steps: S1. Collect customer records from data sources with different structures, process the field formats, encoding methods and time tags in a unified manner, and generate a standardized set of customer records; S2. Construct record pairs based on a standardized set of customer records, and use the Fellegi-Sunter model to calculate the matching probability and non-matching probability of each record pair to form an entity alignment result set; S3. Construct the unified identifiers in the entity alignment result set into graph nodes, construct the static or dynamic association information in the customer records into graph edges, and attach the corresponding confidence value to each graph node and graph edge to generate a graph data structure containing confidence attributes. S4. For any pair of target nodes in a graph data structure, based on the Katz path calculation method, calculate the weight of each path by hop-by-hop accumulation to obtain a path set; S5. Perform aggregation operation on the weight values ​​of each path in the path set, and calculate the comprehensive association strength score of the target node pair; S6. Based on the comparison results between the comprehensive association strength score and the set threshold, node pairs that exceed the threshold are constructed as new graph edges and written into the graph data structure. S7. Extract all graph nodes and related edges connected by the newly added graph edges from the graph data structure containing the newly added graph edges to form the output customer relationship analysis subgraph.

[0007] Optionally, S2 includes: S21. From the standardized customer record set, pair the customer records according to the differences in source system identifier or collection time tag, construct a record pair set, and assign a record pair identifier to each record pair; S22. For each record pair, divide the fields into three categories according to their business type: identifier fields, attribute fields, and time fields, and read the field values ​​of each category. S23. Compare the values ​​of each type of field according to the field correspondence, output the field comparison results, and combine all field comparison results into structured comparison data; S24. Submit the structured alignment data as input to the Fellegi–Sunter model and output the matching probability value and non-matching probability value of the corresponding record pairs. S25. The matching probability value and the non-matching probability value are converted into a ratio to obtain the confidence value of the record belonging to the same customer entity. The confidence value is bound to the record and stored as an identifier. S26. Compare the confidence value with the confidence threshold set in the system. When the confidence value is not lower than the set threshold, mark the record pair as a match. S27. Based on all record pairs marked as matching, construct a connection graph between records, assign the same unified identifier to records belonging to the same connected component in the graph, and write it into the entity alignment result set.

[0008] Optionally, the Fellegi–Sunter model includes: Read record pairs from the customer records that have been annotated with entity data, and divide the record pairs into matching sample sets and non-matching sample sets according to whether they belong to the same customer entity. Each record pair contains field comparison results arranged in a uniform field order. For the matching sample set, count the number of record pairs whose field comparison results are consistent for each field, and count the total number of record pairs in the matching sample set whose field is involved in the comparison. For the non-matching sample set, the same method was used to count the number of record pairs with consistent field comparison results and the total number of record pairs. Based on the results of the above statistical field comparison, the proportion of each field that matches the field comparison result in the matching sample set is calculated as the matching conditional probability of the field; and the proportion of the field that matches the field comparison result in the non-matching sample set is calculated as the non-matching conditional probability of the field. For each field, read its corresponding matching conditional probability and non-matching conditional probability, and calculate the final weight value for that field: ; in, This represents the conditional probability of a field matching within the matched sample set. This represents the conditional probability of a field matching in the set of non-matching samples. Following a unified field order, the final weight values ​​of each field are written into the field weight sequence in sequence, and a one-to-one correspondence is established between the field weight sequence and the field name to form a weight mapping table of records for scoring. For the record pair to be judged, the field comparison results are read in the same field order as the weight mapping table. The field comparison results are multiplied by the corresponding field weights field by field, and the product results of all fields are accumulated to obtain the matching score of the record pair. Sort the matching scores of all record pairs in the matching sample set, and read the minimum score value in the sorting results as the lower bound of the matching score; Sort the matching scores of all record pairs in the non-matching sample set, and read the maximum score value in the sorting results as the upper bound of the non-matching scores; Write the lower bound of the matching score and the upper bound of the non-matching score into the decision parameter set to form a double-boundary decision parameter for recording the decision. The matching score for the pair of records to be judged is compared with the double-boundary judgment parameters: When the matching score is not less than the lower bound of the matching score, the record pair is marked as a matching record pair. When the matching score is not greater than the upper bound of the non-matching score, the record pair is marked as a non-matching record pair. When the matching score is between the lower bound of the matching score and the upper bound of the non-matching score, no matching result is generated for the record pair. For record pairs marked as matching record pairs, calculate the corresponding matching probability value and non-matching probability value based on the relative position of their matching score and non-matching score intervals, generate a record pair confidence value based on the matching probability value and non-matching probability value, and write the confidence value and record pair identifier together into the entity alignment result set.

[0009] Optionally, S3 includes: S31. Traverse the entity alignment result set, map each customer record to its corresponding unified identifier, establish a bidirectional index table from customer records to unified identifiers, and filter out duplicate identifiers based on the table to generate a customer entity set. S32. For each unified identifier in the customer entity set, generate a graph node object. Each graph node object contains the following fields: node ID, number of original records of the node, number of node source types, and average node confidence score. S33. Read the explicit or implicit customer relationship information expressed in the fields from the original customer records, extract the field groups involving two different unified identifiers as candidate edge data, and standardize the fields contained in the field groups to generate a list of relationship fields. S34. Perform the following processing on each record in the candidate edge data: S341. Extract the two unified identifiers of the participating entity pairs based on the field list, and use them as the starting node and target node of the graph edge; S342. Based on the field-level confidence mapping rules, establish the field correspondence between the fields extracted from the structured fields and the field comparison results in the entity alignment stage, obtain the confidence value corresponding to the field, and perform weighted summation according to the importance of the field to obtain the graph edge confidence score. S343. Generate graph edge objects. The graph edge object fields include: edge ID, starting node ID, target node ID, relationship type, and edge confidence score. The edge ID is formed by concatenating the starting node and the target node. The relationship type is generated by the preset classification mapping of the field list. S35. Write the graph node objects and graph edge objects into the graph node set and graph edge set respectively to construct the initial graph data structure; S36. Introduce a confidence mapping structure into the graph data structure. For each graph node (v) and graph edge (e), define the following attribute mapping function: ; in, The mean confidence level of the nodes. Score the edge confidence. This represents the number of original record source types corresponding to each node. S37. Based on the node set, edge set, and confidence mapping function, construct the final graph data structure. The graph structure is based on triples. Encapsulate the format.

[0010] Optionally, S4 includes: S41. Read the target node pairs in the graph data structure and determine the starting node for each pair. With the target node Set the maximum path length for Katz path calculation. With path length attenuation factor And initialize the path queue, path set and visited status table; S42. Construct an initial path set of length 1 for Katz path computation: Read the starting node. The set of adjacent edges, for each adjacent edge Read its other end node , forming a node sequence With edge sequence The sequence is added to the path queue as a candidate path, and the cumulative weight of the candidate path is initialized to [value]. ; S43. Perform dequeue processing on the path queue, and read the end node of the current dequeue path. With current path length ,when The path extension will terminate when the time is right; Continue executing the extension; S44, For the current end node Perform a traversal expansion on the set of adjacent edges, for each adjacent edge Read the next hop node If the next-hop node already exists in the node sequence of the current path, the extension item is discarded; if it does not exist, the next-hop node is appended to the end of the node sequence and the adjacent edges are appended to the end of the edge sequence to form an extended path. S45. Perform Katz path weight hop-by-hop cumulative calculation on the extended path: Read the node of the currently added hop in the extended path. With edge The confidence score is calculated by calling the attribute mapping function. The cumulative weight of the extended path is updated to "the sum of the original cumulative weight and the contribution value of the new jump", where the contribution value of the new jump is... And write the updated cumulative weight to the extended path status; S46. Perform path reachability determination during the expansion process of Katz path computation: For the end node of the extended path Perform a shortest hop count search with an edge weight of 1 to obtain the path to the target node. Shortest number of hops ,when Discard the extended path when; The extended path is then written to the path queue. S47. For each extended path, record its hop-by-hop cumulative weight sequence, read the maximum and minimum values ​​in the weight sequence and calculate the difference. When the difference is less than a preset threshold, ... The extended path is discarded when the difference is not less than a preset threshold. The expansion path is retained for the next round of expansion; S48. When the end node of the extended path equals the target node. When the extended path is written into the path set, the path set records the node sequence, edge sequence, path length, hop-by-hop cumulative weight sequence and final cumulative weight. S49. Continue until the path queue is empty, then output the path set.

[0011] Optionally, S5 includes: S51. Read the path set corresponding to the target node pair, and for each path in the path set, read its node sequence, edge sequence, path length, hop-by-hop cumulative weight sequence and final cumulative weight, and assign a unique path identifier to each path. S52. For each path, calculate the difference sequence of the hop-by-hop cumulative weight sequence according to the order of adjacent node pairs in the path node sequence. S53. Perform stability determination on the difference sequence of each path. If there is any case where the signs of any adjacent difference values ​​are opposite in the difference sequence, mark the path as an unstable path and remove it from the subsequent aggregation calculation. Only retain the stable paths to form the effective path set. S54. Group the set of valid paths according to path length. Within each path length group, sort the final cumulative weight of the paths in descending order and retain only the paths in the sorting results that are within a preset proportion range as the representative paths of that group. S55. For each representative path within a path length group, read its final cumulative weight in sequence, and perform a weighted summation operation based on the length weight factor corresponding to the path length to obtain the group association value of that path length group. S56. Perform cross-group aggregation on the group association values ​​of all path length groups to obtain the comprehensive association strength score of the target node pairs. The comprehensive association strength score is determined by the following formula: ; in, The maximum path length. The path length is Length weighting factor, The path length is The representative set of paths, For path The final cumulative weight; S57. Bind the comprehensive correlation strength score to the target node pair identifier and write it into the score result set.

[0012] Optionally, S6 includes: S61. Read the scoring result set, read the starting node identifier, target node identifier and corresponding comprehensive correlation strength score one by one, and read the correlation threshold set in the system at the same time; S62. Compare each comprehensive correlation strength score with the correlation threshold. When the score is not less than the correlation threshold, form a candidate node pair with the corresponding starting node and target node, and write it into the candidate node pair set. S63. For each node pair in the candidate node pair set, read the set of valid paths corresponding to it in the process of calculating the comprehensive association strength score, and count the number of paths in each path length group in the set of valid paths. S64. When the set of valid paths corresponding to a candidate node pair contains at least two different path length groups and the number of paths in each group is not zero, the candidate node pair is retained and enters the new edge generation step; otherwise, the candidate node pair is removed from the candidate node pair set. S65. For the retained candidate node pairs, query whether there is already a graph edge in the graph data structure with the starting node identifier and the target node identifier as the endpoints. If there is no corresponding graph edge, generate a new graph edge record. S66. For each newly added graph edge record, write the edge identifier, starting node identifier, target node identifier, association strength score, and generation time information, and write the newly added graph edge record into the graph edge set of the graph data structure. S67. Synchronously update the edge index relationship between the starting node and the target node in the graph data structure.

[0013] The beneficial effects of this invention are: This invention introduces the Fellegi–Sunter probabilistic matching model to generate unified identifiers and align entities for customer records from multiple sources and with heterogeneous structures. It can reliably identify the same customer entity even in scenarios with missing fields, conflicting information, and time evolution, effectively reducing the risk of mismatches and missed matches, significantly improving the accuracy and consistency of customer identity integration, and providing a reliable data foundation for subsequent customer relationship analysis.

[0014] This invention introduces a multi-hop association analysis mechanism based on Katz path calculation in the process of building customer relationships. It combines path length decay factor and the credibility information of nodes and relationships to systematically model and quantitatively evaluate the potential associations between customers. This can effectively distinguish the contribution intensity of different association paths, avoid the one-sidedness of relying solely on direct relationships, and improve the depth and stability of complex customer relationship characterization.

[0015] This invention enables the dynamic evolution and self-improvement of customer relationship networks by automatically generating new relationships for customers with high correlation strength and continuously updating the relationship structure. It can automatically extract key customers and their related substructures from large-scale customer data, reduce reliance on manual rules, and improve the automation level and business application value of customer relationship insights. Attached Figure Description

[0016] The accompanying drawings are provided to further illustrate the invention and form part of the specification. They are used in conjunction with embodiments of the invention to explain the invention and do not constitute a limitation thereof. In the drawings: Figure 1 This is a flowchart of the knowledge graph-based intelligent association and insight analysis method for customer information proposed in this invention; Figure 2 This is a flowchart illustrating the customer record matching and confidence calculation process based on the Fellegi–Sunter model proposed in this invention. Detailed Implementation

[0017] The present invention will now be described in further detail with reference to the accompanying drawings. These drawings are simplified schematic diagrams, illustrating only the basic structure of the invention, and therefore only show the components relevant to the invention.

[0018] refer to Figures 1-2 The knowledge graph-based intelligent association and insight analysis method for customer information includes the following steps: S1. Collect customer records from multiple data sources with different structures, process the field formats, encoding methods and time tags in a unified manner, and generate a standardized set of customer records; S2. Construct record pairs based on a standardized set of customer records, use the Fellegi-Sunter model to calculate the matching probability and non-matching probability of each record pair, then calculate the confidence value, and determine whether they match based on a preset confidence threshold. Successfully matched record pairs are assigned a unified identifier to form an entity alignment result set. S3. Construct the unified identifiers in the entity alignment result set into graph nodes, construct the static or dynamic association information in the customer records into graph edges, and attach the corresponding confidence value to each graph node and graph edge to generate a graph data structure containing confidence attributes. S4. For any pair of target nodes in a graph data structure, based on the Katz path calculation method, a path length decay factor and the confidence values ​​of graph nodes and edges in the path are introduced during the path search process. The weight of each path is calculated by hop-by-hop accumulation to obtain the path set. S5. Perform aggregation operation on the weight values ​​of each path in the path set, and calculate the comprehensive association strength score of the target node pair; S6. Based on the comparison results between the comprehensive association strength score and the set threshold, node pairs that exceed the threshold are constructed as new graph edges and written into the graph data structure. S7. Extract all graph nodes and related edges connected by the newly added graph edges from the graph data structure containing the newly added graph edges to form the output customer relationship analysis subgraph.

[0019] In this embodiment, S1 includes: S11. Read customer records one by one from the pre-configured set of data sources, and write the corresponding data source identifier and collection time stamp for each read customer record; S12. According to the pre-determined target field list, perform field filtering operation on the read customer records, write the fields listed in the target field list into the main field area, and write the unlisted fields into the supplementary field area. S13. Based on the pre-established field name mapping table, replace the field names in the main field area so that fields with the same business meaning use the same field name; S14. Perform format processing operations on the field values ​​under the unified field name, delete the leading and trailing whitespace characters in the field values, unify the delimiter to the preset delimiter format, and convert field values ​​with inconsistent representations to a consistent representation format. S15. Perform encoding conversion processing on fields whose field values ​​contain character encoding information, convert the field values ​​to a unified character encoding, and record the encoding conversion result status; S16. Perform parsing processing on fields containing date or time information, convert the field values ​​into a unified time representation format, and write the corresponding time tag for the converted time values; S17. Customer records that have undergone field filtering, field name replacement, field value format processing, encoding conversion, and time tag processing are written into a standardized customer record set in a uniform field order, while retaining the data source identifier and collection time tag.

[0020] In this embodiment, S2 includes: S21. From the standardized customer record set, pair the customer records according to the differences in source system identifier or collection time tag, construct a record pair set, and assign a record pair identifier to each record pair; S22. For each record pair, divide the fields into three categories according to their business type: identifier fields, attribute fields, and time fields, and read the field values ​​of each category. S23. Compare the values ​​of each type of field according to the field correspondence, output the field comparison results, and combine all field comparison results into structured comparison data; S24. Submit the structured alignment data as input to the Fellegi–Sunter model, and the model outputs the matching probability value and non-matching probability value of the corresponding record pairs. S25. The matching probability value and the non-matching probability value are converted into a ratio to obtain the confidence value of the record belonging to the same customer entity. The confidence value is bound to the record and stored as an identifier. S26. Compare the confidence value with the confidence threshold set in the system. When the confidence value is not lower than the threshold, mark the record pair as a match. S27. Based on all record pairs marked as matching, construct a connection graph between records, assign the same unified identifier to records belonging to the same connected component in the graph, and write it into the entity alignment result set.

[0021] In this embodiment, the Fellegi–Sunter model includes: Read record pairs from the customer records that have been annotated with entity data, and divide the record pairs into matching sample sets and non-matching sample sets according to whether they belong to the same customer entity. Each record pair contains field comparison results arranged in a uniform field order. For each matching sample set, count the number of record pairs where the field comparison results are consistent, and then count the total number of record pairs in the matching sample set that participated in the comparison for that field. For the non-matching sample set, the same method was used to count the number of record pairs with consistent field comparison results and the total number of record pairs. Based on the above statistical results, the proportion of each field that matches the field in the matching sample set is calculated as the matching conditional probability of that field; and the proportion of the field that matches the field in the non-matching sample set is calculated as the non-matching conditional probability of that field. For each field, read its corresponding matching conditional probability and non-matching conditional probability, and substitute them into the following formula to calculate the final weight value of that field: ; in, This represents the conditional probability of a field matching within the matched sample set. This represents the conditional probability of a field matching in the set of non-matching samples. Following a unified field order, the final weight values ​​of each field are written into the field weight sequence in sequence, and a one-to-one correspondence is established between the field weight sequence and the field name to form a weight mapping table for recording the scores. For the record pair to be judged, the field comparison results are read in the same field order as the weight mapping table. The field comparison results are multiplied by the corresponding field weights field by field, and the product results of all fields are accumulated to obtain the matching score of the record pair. Sort the matching scores of all record pairs in the matching sample set, and read the minimum score value in the sorting results as the lower bound of the matching score; Sort the matching scores of all record pairs in the non-matching sample set, and read the maximum score value in the sorting results as the upper bound of the non-matching scores; Write the lower bound of the matching score and the upper bound of the non-matching score into the decision parameter set to form a double-boundary decision parameter for recording the decision. For the matching score of the record pair to be judged, it is compared with the double boundary judgment parameter. When the matching score is not less than the lower bound of the matching score, the record pair is marked as a matching record pair; when the matching score is not greater than the upper bound of the non-matching score, the record pair is marked as a non-matching record pair; when the matching score is between the lower bound of the matching score and the upper bound of the non-matching score, no matching judgment result is generated for the record pair. For record pairs marked as matching record pairs, calculate the corresponding matching probability value and non-matching probability value based on the relative position of their matching score and non-matching score intervals, generate a record pair confidence value based on the matching probability value and non-matching probability value, and write the confidence value and record pair identifier together into the entity alignment result set.

[0022] In this embodiment, S3 includes: S31. Traverse the entity alignment result set, map each customer record to its corresponding unified identifier, establish a bidirectional index table from customer records to unified identifiers, and filter out duplicate identifiers based on the table to generate a customer entity set. S32. For each unified identifier in the customer entity set, generate a graph node object. Each graph node object contains the following fields: node ID, number of original records of the node, number of source types of the node, and mean confidence score of the node. The mean confidence score of the node is obtained by weighted average of the confidence scores of all matching record pairs corresponding to the unified identifier. S33. Read the explicit or implicit customer relationship information expressed in the fields from the original customer records, extract the field groups involving two different unified identifiers as candidate edge data, and standardize the fields contained in the field groups to generate a list of relationship fields. S34. Perform the following processing on each record in the candidate edge data: S341. Extract the two unified identifiers of the participating entity pairs based on the field list, and use them as the starting node and target node of the graph edge; S342. Based on the field-level confidence mapping rules, establish the field correspondence between the fields extracted from the structured fields and the field comparison results in the entity alignment stage, obtain the confidence value corresponding to the field, and perform weighted summation according to the importance of the field to obtain the graph edge confidence score. S343. Generate graph edge objects. The graph edge object fields include: edge ID, starting node ID, target node ID, relationship type, and edge confidence score. The edge ID is formed by concatenating the starting node and the target node. The relationship type is generated by the preset classification mapping of the field list. S35. Write the graph node objects and graph edge objects into the graph node set and graph edge set respectively to construct the initial graph data structure; S36. Introduce a confidence mapping structure into the graph data structure. For each graph node (v) and graph edge (e), define the following attribute mapping function: ; in, The mean confidence level of the nodes. Score the edge confidence. This represents the number of original record source types corresponding to each node. S37. Based on the node set, edge set, and confidence mapping function, construct the final graph data structure. The graph structure is based on triples. Encapsulate the format.

[0023] In this embodiment, the field-level confidence mapping rule includes: establishing a one-to-one correspondence between each field name in the relation field list and the comparison result of the same field in the structured comparison data of the entity alignment stage; reading the confidence value of the record corresponding to the field as the field confidence; and performing a weighted summation of all field confidences according to the field order given in the relation field list to obtain the graph edge confidence score.

[0024] In this embodiment, S4 includes: S41. Read the target node pairs in the graph data structure and determine the starting node for each pair. With the target node Set the maximum path length for Katz path calculation. With path length attenuation factor And initialize the path queue, path set and visited status table; S42. Construct an initial path set of length 1 for Katz path computation: Read the starting node. The set of adjacent edges, for each adjacent edge Read its other end node , forming a node sequence With edge sequence The sequence is added to the path queue as a candidate path, and the cumulative weight of the candidate path is initialized to [value]. ; S43. Perform dequeue processing on the path queue, and read the end node of the current dequeue path. With current path length ,when The path extension will terminate when the time is right; Continue executing the extension; S44, For the current end node Perform a traversal expansion on the set of adjacent edges, for each adjacent edge Read the next hop node If the next-hop node already exists in the node sequence of the current path, the extension item is discarded; if it does not exist, the next-hop node is appended to the end of the node sequence and the adjacent edges are appended to the end of the edge sequence to form an extended path. S45. Perform Katz path weight hop-by-hop cumulative calculation on the extended path: Read the node of the currently added hop in the extended path. With edge The confidence score is calculated by calling the attribute mapping function. The cumulative weight of the extended path is updated to "the sum of the original cumulative weight and the contribution value of the new jump", where the contribution value of the new jump is... And write the updated cumulative weight to the extended path status; S46. Perform path reachability determination during the expansion process of Katz path computation: for the terminal nodes of the expanded path Perform a shortest hop count search with an edge weight of 1 to obtain the path to the target node. Shortest number of hops ,when Discard the extended path when; The extended path is then written to the path queue. S47. For each extended path, record its hop-by-hop cumulative weight sequence, read the maximum and minimum values ​​in the weight sequence and calculate the difference. When the difference is less than a preset threshold, ... The extended path is discarded when the difference is not less than a preset threshold. The expansion path is retained for the next round of expansion; S48. When the end node of the extended path equals the target node. When the extended path is written into the path set, the path set records the node sequence, edge sequence, path length, hop-by-hop cumulative weight sequence and final cumulative weight. S49. Continue until the path queue is empty, then output the path set.

[0025] In this embodiment, S5 includes: S51. Read the path set corresponding to the target node pair, and for each path in the path set, read its node sequence, edge sequence, path length, hop-by-hop cumulative weight sequence and final cumulative weight, and assign a unique path identifier to each path. S52. For each path, calculate the difference sequence of the hop-by-hop cumulative weight sequence according to the order of adjacent node pairs in the path node sequence, which is used to characterize the weight change of the path between adjacent hops. S53. Perform stability determination on the difference sequence of each path. If there is any case where the signs of any adjacent difference values ​​are opposite in the difference sequence, mark the path as an unstable path and remove it from the subsequent aggregation calculation. Only retain the stable paths to form the effective path set. S54. Group the set of valid paths according to path length. Within each path length group, sort the final cumulative weight of the paths in descending order and retain only the paths in the sorting results that are within a preset proportion range as the representative paths of that group. S55. For each representative path within a path length group, read its final cumulative weight in sequence, and perform a weighted summation operation based on the length weight factor corresponding to the path length to obtain the group association value of that path length group. S56. Perform cross-group aggregation on the group association values ​​of all path length groups to obtain the comprehensive association strength score of the target node pairs. The comprehensive association strength score is determined by the following formula: ; in, The maximum path length. The path length is Length weighting factor, The path length is The representative set of paths, For path The final cumulative weight; S57. Bind the comprehensive association strength score to the target node pair identifier and write it to the score result set. The score result set record fields shall include at least: starting node identifier, target node identifier, comprehensive association strength score, total number of paths participating in the aggregation, and the number of representative paths in each path length group.

[0026] In this embodiment, S6 includes: S61. Read the scoring result set, read the starting node identifier, target node identifier and corresponding comprehensive correlation strength score one by one, and read the correlation threshold set in the system at the same time; S62. Compare each comprehensive correlation strength score with the correlation threshold. When the score is not less than the correlation threshold, form a candidate node pair with the corresponding starting node and target node, and write it into the candidate node pair set. S63. For each node pair in the candidate node pair set, read the set of valid paths corresponding to it in the process of calculating the comprehensive association strength score, and count the number of paths in each path length group in the set of valid paths. S64. When the set of valid paths corresponding to a candidate node pair contains at least two different path length groups and the number of paths in each group is not zero, the candidate node pair is retained and enters the new edge generation step; otherwise, the candidate node pair is removed from the candidate node pair set. S65. For the retained candidate node pairs, query whether there is already a graph edge in the graph data structure with the starting node identifier and the target node identifier as the endpoints. If there is no corresponding graph edge, generate a new graph edge record. S66. For each newly added graph edge record, write the edge identifier, starting node identifier, target node identifier, association strength score, and generation time information, and write the newly added graph edge record into the graph edge set of the graph data structure. S67. Synchronously update the edge index relationship between the starting node and the target node in the graph data structure so that newly added graph edges can participate in subsequent graph traversal and path calculation.

[0027] In this embodiment, S7 includes: S71. Read all the newly added graph edges generated by claim 8 from the graph data structure, obtain the starting node identifier and target node identifier corresponding to each newly added graph edge, and write the edge identifier of the newly added graph edge into the newly added edge identifier set. S72. Using the newly added edge identifier set as an index, locate the corresponding newly added graph edge object from the graph edge set of the graph data structure, and add each newly added graph edge object to the initial set of subgraph edges. S73. Read the starting node identifier and target node identifier of each newly added graph edge object from the initial set of subgraph edges, and write the starting node identifier and target node identifier into the subgraph node set; S74. Using the identifier of each node in the subgraph node set as the query condition, read all graph edges directly connected to that node from the graph data structure, and write the read graph edges into the candidate edge set. S75. For each graph edge in the candidate edge set, determine whether its starting node identifier and target node identifier are both contained in the subgraph node set. If the determination result is yes, write the graph edge into the subgraph edge set. S76. Construct a customer relationship analysis subgraph based on the subgraph node set and the subgraph edge set. The customer relationship analysis subgraph only contains nodes connected by newly added graph edges and related edges between these nodes. S77. Write the completed customer relationship analysis subgraph into the subgraph output result set. The subgraph output result set shall at least record the subgraph node set and the subgraph edge set.

[0028] Example: In the customer management and risk analysis practices of large organizations, customer information is typically accumulated over a long period across multiple independently built business systems. These systems, designed to serve different business objectives, result in significant differences in customer data field structure, naming conventions, coding rules, and update logic. The same individual or legal entity customer often generates multiple records across different systems, potentially leading to missing fields, information conflicts, or inconsistencies in time. Furthermore, customers may form complex relationships through account usage, reused contact information, transactions, historical behavior, or business relationships. These relationships often span multiple intermediate entities, making accurate identification difficult solely based on direct field relationships. Under current technological conditions, these problems are typically addressed through manual rules and experience, which is not only inefficient but also suffers from poor consistency and scalability.

[0029] In this embodiment, the intelligent association and insight analysis method for customer information based on knowledge graphs proposed in this invention is introduced to systematically process scattered customer data. First, customer records from multiple business systems are collected, and during the data access phase, field formats, character encoding, and time information are standardized. Specifically, fields representing the same business meaning in different systems are mapped to unified field names; spaces, separators, and representation methods in field values ​​are converted to a consistent format; fields involving character encoding are unified to a preset encoding method; and fields involving dates or times are parsed into a unified time representation and appended with a time tag. Through the above processing, a standardized set of customer records with consistent structure and unified semantics is formed, providing stable input for subsequent algorithm calculations.

[0030] In the customer entity identification phase, the system constructs cross-source record pairs based on a standardized set of customer records. The construction of record pairs is not a simple pairwise combination of all records, but rather constrained by source system identifiers and time tags to avoid meaningless combination expansion. For each record pair, the system categorizes fields into identifier fields, attribute fields, and time fields according to their business attributes, and performs structured comparisons on the corresponding field values ​​to generate field-level comparison results. Based on this, the field comparison results are fed into the Fellegi-Sunter model. The model calculates the matching score of the record pair based on pre-built field conditional probabilities and weight mapping relationships, further obtaining the matching probability, non-match probability, and corresponding confidence value. The system compares the confidence value with a set threshold, determining only record pairs that meet the confidence criteria as matches, and assigning a unified customer identifier to the matching records through connected component analysis, thereby completing the alignment and integration of customer entities.

[0031] After unifying customer entities, the system further organizes customer entities and their associated information into a graph structure. Each unified customer identifier is mapped to a graph node, which records the number of original records corresponding to that customer entity, the number of source types, and the average node confidence score calculated based on matching confidence. The system extracts explicit or implicit customer association information from the original customer records, abstracts association field groups involving different unified identifiers into candidate relationships, and calculates the confidence score corresponding to the relationship based on field importance and field-level confidence mapping rules, generating graph edge objects. The resulting graph structure not only includes customers and their relationships but also introduces confidence information at the node and relationship levels, providing quantifiable basis for subsequent path calculation.

[0032] During the customer association analysis phase, the system employs the Katz path calculation method to search for multi-hop paths in the graph structure for any target customer pair. A maximum path length is set during the path search, and a path length decay factor is introduced during hop-by-hop expansion to prevent excessively long paths from unreasonably amplifying the results. Simultaneously, in each path expansion, the system reads the confidence values ​​of the newly added nodes and relationships, calculates the contribution value of that hop using an attribute mapping function, and updates the path weights in a hop-by-hop cumulative manner. To ensure path quality, the system incorporates reachability and weight stability checks during path expansion, eliminating paths that cannot reach the target node within a limited number of hops or have excessively fluctuating weights, retaining only structurally sound and stable paths in the path set.

[0033] After obtaining the set of paths, the system aggregates and calculates the path weights. During aggregation, the system groups paths according to their length, selects representative paths with high and stable weights within each group, and performs a weighted summation based on the weight factors corresponding to the path lengths, ultimately obtaining a comprehensive association strength score for the target customer pair. This score comprehensively reflects the contribution of multiple paths at different length levels, avoiding the excessive influence of a single path on the results. When the comprehensive association strength score exceeds a set threshold and the path structure meets the multi-level distribution conditions, the system automatically identifies the customer pair as a potential association and generates new graph edges to be added to the graph structure, enabling the customer relationship network to have continuous evolution capabilities.

[0034] The above description is only a preferred embodiment of the present invention, but the scope of protection of the present invention is not limited thereto. Any equivalent substitutions or modifications made by those skilled in the art within the scope of the technology disclosed in the present invention, based on the technical solution and inventive concept of the present invention, should be covered within the scope of protection of the present invention.

Claims

1. A method for intelligent association and insight analysis of customer information based on a knowledge graph, characterized in that, Includes the following steps: S1. Collect customer records from data sources with different structures, process the field formats, encoding methods and time tags in a unified manner, and generate a standardized set of customer records; S2. Construct record pairs based on a standardized set of customer records, and use the Fellegi-Sunter model to calculate the matching probability and non-matching probability of each record pair to form an entity alignment result set; S3. Construct the unified identifiers in the entity alignment result set into graph nodes, construct the static or dynamic association information in the customer records into graph edges, and attach the corresponding confidence value to each graph node and graph edge to generate a graph data structure containing confidence attributes. S4. For any pair of target nodes in a graph data structure, based on the Katz path calculation method, calculate the weight of each path by hop-by-hop accumulation to obtain a path set; S5. Perform aggregation operation on the weight values ​​of each path in the path set, and calculate the comprehensive association strength score of the target node pair; S6. Based on the comparison results between the comprehensive association strength score and the set threshold, node pairs that exceed the threshold are constructed as new graph edges and written into the graph data structure. S7. Extract all graph nodes and related edges connected by the newly added graph edges from the graph data structure containing the newly added graph edges to form the output customer relationship analysis subgraph. 2.The knowledge graph-based customer information intelligent association and insight analysis method according to claim 1, characterized in that, S2 includes: S21. From the standardized customer record set, pair the customer records according to the differences in source system identifier or collection time tag, construct a record pair set, and assign a record pair identifier to each record pair; S22. For each record pair, divide the fields into three categories according to their business type: identifier fields, attribute fields, and time fields, and read the field values ​​of each category. S23. Compare the values ​​of each type of field according to the field correspondence, output the field comparison results, and combine all field comparison results into structured comparison data; S24. Submit the structured alignment data as input to the Fellegi–Sunter model and output the matching probability value and non-matching probability value of the corresponding record pairs. S25. The matching probability value and the non-matching probability value are converted into a ratio to obtain the confidence value of the record belonging to the same customer entity. The confidence value is bound to the record and stored as an identifier. S26. Compare the confidence value with the confidence threshold set in the system. When the confidence value is not lower than the set threshold, mark the record pair as a match. S27. Based on all record pairs marked as matching, construct a connection graph between records, assign the same unified identifier to records belonging to the same connected component in the graph, and write it into the entity alignment result set. 3.The knowledge graph-based customer information intelligent association and insight analysis method according to claim 2, characterized in that, The Fellegi–Sunter model includes: Read structured comparison data from customer records that have completed entity annotation, and divide the record pairs into matching sample sets and non-matching sample sets according to whether they belong to the same customer entity. Each record pair contains field comparison results arranged in a uniform field order. For the matching sample set, count the number of record pairs whose field comparison results are consistent for each field, and count the total number of record pairs in the matching sample set whose field is involved in the comparison. For the non-matching sample set, the same method was used to count the number of record pairs with consistent field comparison results and the total number of record pairs. Based on the results of the above statistical field comparison, the proportion of each field that matches the field comparison result in the matching sample set is calculated as the matching conditional probability of the field; and the proportion of the field that matches the field comparison result in the non-matching sample set is calculated as the non-matching conditional probability of the field. For each field, read its corresponding matching conditional probability and non-matching conditional probability, and calculate the final weight value for that field: ; in, This represents the conditional probability of a field matching within the matched sample set. This represents the conditional probability of a field matching in the set of non-matching samples. Following a unified field order, the final weight values ​​of each field are written into the field weight sequence in sequence, and a one-to-one correspondence is established between the field weight sequence and the field name to form a weight mapping table of records for scoring. For the record pair to be judged, the field comparison results are read in the same field order as the weight mapping table. The field comparison results are multiplied by the corresponding field weights field by field, and the product results of all fields are accumulated to obtain the matching score of the record pair. Sort the matching scores of all record pairs in the matching sample set, and read the minimum score value in the sorting results as the lower bound of the matching score; Sort the matching scores of all record pairs in the non-matching sample set, and read the maximum score value in the sorting results as the upper bound of the non-matching scores; Write the lower bound of the matching score and the upper bound of the non-matching score into the decision parameter set to form a double-boundary decision parameter for recording the decision. The matching score for the pair of records to be judged is compared with the double-boundary judgment parameters: When the matching score is not less than the lower bound of the matching score, the record pair is marked as a matching record pair. When the matching score is not greater than the upper bound of the non-matching score, the record pair is marked as a non-matching record pair. When the matching score is between the lower bound of the matching score and the upper bound of the non-matching score, no matching result is generated for the record pair. For record pairs marked as matching record pairs, calculate the corresponding matching probability value and non-matching probability value based on the relative position of their matching score and non-matching score intervals, generate a record pair confidence value based on the matching probability value and non-matching probability value, and write the confidence value and record pair identifier together into the entity alignment result set.

4. The knowledge graph-based intelligent association and insight analysis method for customer information according to claim 1, characterized in that, S3 includes: S31. Traverse the entity alignment result set, map each customer record to its corresponding unified identifier, establish a bidirectional index table from customer records to unified identifiers, and filter out duplicate identifiers based on the table to generate a customer entity set. S32. For each unified identifier in the customer entity set, generate a graph node object. Each graph node object contains the following fields: node ID, number of original records of the node, number of node source types, and average node confidence score. S33. Read the explicit or implicit customer relationship information expressed in the fields from the original customer records, extract the field groups involving two different unified identifiers as candidate edge data, and standardize the fields contained in the field groups to generate a list of relationship fields. S34. Perform the following processing on each record in the candidate edge data: S341. Extract the two unified identifiers of the participating entity pairs based on the field list, and use them as the starting node and target node of the graph edge; S342. Based on the field-level confidence mapping rules, establish the field correspondence between the fields extracted from the structured fields and the field comparison results in the entity alignment stage, obtain the confidence value corresponding to the field, and perform weighted summation according to the importance of the field to obtain the graph edge confidence score. S343. Generate graph edge objects. The graph edge object fields include: edge ID, starting node ID, target node ID, relationship type, and edge confidence score. The edge ID is formed by concatenating the starting node and the target node. The relationship type is generated by the preset classification mapping of the field list. S35. Write the graph node objects and graph edge objects into the graph node set and graph edge set respectively to construct the initial graph data structure; S36. Introduce a confidence mapping structure into the graph data structure, and define the following attribute mapping function for each graph node v and graph edge e: ; in, The mean confidence level of the nodes. Score the edge confidence. This represents the number of original record source types corresponding to each node. S37. Based on the node set, edge set, and confidence mapping function, construct the final graph data structure. The graph structure is based on triples. Encapsulate the format.

5. The knowledge graph-based intelligent association and insight analysis method for customer information according to claim 1, characterized in that, S4 includes: S41. Read the target node pairs in the graph data structure and determine the starting node for each pair. With the target node Set the maximum path length for Katz path calculation. With path length attenuation factor And initialize the path queue, path set, and visited status table; S42. Construct an initial path set of length 1 for Katz path computation: Read the starting node. The set of adjacent edges, for each adjacent edge Read its other end node , forming a node sequence With edge sequence The sequence is added to the path queue as a candidate path, and the cumulative weight of the candidate path is initialized to [value]. ; S43. Perform dequeue processing on the path queue, and read the end node of the current dequeue path. With current path length ,when The path extension will terminate when the time is right; Continue executing the extension; S44, For the current end node Perform a traversal expansion on the set of adjacent edges, for each adjacent edge Read the next hop node If the next-hop node already exists in the node sequence of the current path, the extension item is discarded; if it does not exist, the next-hop node is appended to the end of the node sequence and the adjacent edges are appended to the end of the edge sequence to form an extended path. S45. Perform Katz path weight hop-by-hop cumulative calculation on the extended path: Read the node of the currently added hop in the extended path. With edge The confidence score is calculated by calling the attribute mapping function. The cumulative weight of the extended path is updated to "the sum of the original cumulative weight and the contribution value of the new jump", where the contribution value of the new jump is... And write the updated cumulative weight to the extended path status; S46. Perform path reachability determination during the expansion process of Katz path computation: For the end node of the extended path Perform a shortest hop count search with an edge weight of 1 to obtain the path to the target node. Shortest number of hops ,when Discard the extended path when; The extended path is then written to the path queue. S47. For each extended path, record its hop-by-hop cumulative weight sequence, read the maximum and minimum values ​​in the weight sequence and calculate the difference. When the difference is less than a preset threshold, ... The extended path is discarded when the difference is not less than a preset threshold. The expansion path is retained for the next round of expansion; S48. When the end node of the extended path equals the target node. When the extended path is written into the path set, the path set records the node sequence, edge sequence, path length, hop-by-hop cumulative weight sequence and final cumulative weight. S49. Continue until the path queue is empty, then output the path set.

6. The knowledge graph-based intelligent association and insight analysis method for customer information according to claim 1, characterized in that, S5 includes: S51. Read the path set corresponding to the target node pair, and for each path in the path set, read its node sequence, edge sequence, path length, hop-by-hop cumulative weight sequence and final cumulative weight, and assign a unique path identifier to each path. S52. For each path, calculate the difference sequence of the hop-by-hop cumulative weight sequence according to the order of adjacent node pairs in the path node sequence. S53. Perform stability determination on the difference sequence of each path. If there is any case where the signs of any adjacent difference values ​​are opposite in the difference sequence, mark the path as an unstable path and remove it from the subsequent aggregation calculation. Only retain the stable paths to form the effective path set. S54. Group the set of valid paths according to path length. Within each path length group, sort the paths by their final cumulative weight in descending order and retain only the paths in the sorting results that are within a preset proportion range as the representative paths of that group. S55. For each representative path within a path length group, read its final cumulative weight in sequence, and perform a weighted summation operation based on the length weight factor corresponding to the path length to obtain the group association value of that path length group. S56. Perform cross-group aggregation on the group association values ​​of all path length groups to obtain the comprehensive association strength score of the target node pairs. The comprehensive association strength score is determined by the following formula: ; in, The maximum path length. The path length is Length weighting factor, The path length is The representative set of paths, For path The final cumulative weight; S57. Bind the comprehensive correlation strength score to the target node pair identifier and write it into the score result set.

7. The knowledge graph-based intelligent association and insight analysis method for customer information according to claim 1, characterized in that, S6 includes: S61. Read the scoring result set, read the starting node identifier, target node identifier and corresponding comprehensive correlation strength score one by one, and read the correlation threshold set in the system at the same time; S62. Compare each comprehensive correlation strength score with the correlation threshold. When the score is not less than the correlation threshold, form a candidate node pair with the corresponding starting node and target node, and write it into the candidate node pair set. S63. For each node pair in the candidate node pair set, read the set of valid paths corresponding to it in the process of calculating the comprehensive association strength score, and count the number of paths in each path length group in the set of valid paths. S64. When the set of valid paths corresponding to a candidate node pair contains at least two different path length groups and the number of paths in each group is not zero, the candidate node pair is retained and enters the new edge generation step; otherwise, the candidate node pair is removed from the candidate node pair set. S65. For the retained candidate node pairs, query whether there is already a graph edge in the graph data structure with the starting node identifier and the target node identifier as the endpoints. If there is no corresponding graph edge, generate a new graph edge record. S66. For each newly added graph edge record, write the edge identifier, starting node identifier, target node identifier, association strength score, and generation time information, and write the newly added graph edge record into the graph edge set of the graph data structure. S67. Synchronously update the edge index relationship between the starting node and the target node in the graph data structure.