Financial product recommendation method and device, equipment, storage medium and program product
By constructing multi-time knowledge graphs, frequent sub-graph mining and ripple propagation algorithms, the problem of low accuracy of existing financial product recommendation methods is solved, and more accurate and personalized financial product recommendations are achieved.
Patent Information
- Application Number
- CN202510185252.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-02-19
- Publication Date
- 2025-05-27
AI Technical Summary
The existing financial product recommendation methods only rely on the historical interaction records of the user-product, resulting in low accuracy of recommendations and inability to effectively respond to dynamic changes in users and products.
By constructing knowledge graphs for multiple time periods, frequent sub-graph mining, combining ripple propagation algorithm, and determining the financial products recommended for target users based on the interactive records of target users and financial products.
It improves the accuracy of financial product recommendations, can effectively capture changes in user preferences and market dynamics, and provides more personalized and timely recommendation results.
Smart Images

Figure CN120047196A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the fields of fintech and artificial intelligence technologies, and in particular, to a method, apparatus, device, storage medium, and program product for recommending financial products. Background Art
[0002] With the rapid development of fintech, financial institutions are faced with a vast amount of data and diverse customer needs. How to effectively recommend suitable financial products to customers has become an important challenge. Effective product recommendations can directly increase sales and trading volumes, having a direct impact on the economic benefits of enterprises. At the same time, accurate product recommendations can also help users quickly find products they are interested in or need, thereby enhancing the overall user experience.
[0003] Existing financial product recommendation methods provide financial product recommendations to users based on the historical interaction records between users and financial products. However, in reality, both users and products are dynamic, and it is difficult to provide effective recommendations only based on historical interaction records, resulting in a low accuracy rate of recommended products. Summary of the Invention
[0004] The present application provides a method, apparatus, device, storage medium, and program product for recommending financial products to solve the problem that existing financial product recommendation methods only recommend based on the historical interaction records between users and products, resulting in a low accuracy rate.
[0005] In a first aspect, the present application provides a method for recommending financial products, including:
[0006] Obtain a knowledge graph set, where the knowledge graph set includes knowledge graphs for respective multiple time periods, entities in each knowledge graph are users or financial products, and the relationships between the entities are determined based on user attributes, financial product attributes, and interaction records between users and financial products within each time period;
[0007] Perform frequent subgraph mining on the knowledge graph set to obtain frequent subgraphs;
[0008] Adopt a ripple propagation algorithm to determine financial products to be recommended to the target user based on the interaction records between the target user and financial products and the frequent subgraphs.
[0009] In a second aspect, the present application provides a device for recommending financial products, including:
[0010] An obtaining module, configured to obtain a knowledge graph set, where the knowledge graph set includes knowledge graphs for respective multiple time periods, entities in each knowledge graph are users or financial products, and the relationships between the entities are determined based on user attributes, financial product attributes, and interaction records between users and financial products within each time period;
[0011] A processing module, configured to perform frequent subgraph mining on the knowledge graph set to obtain frequent subgraphs;
[0012] The processing module is further configured to use a ripple propagation algorithm to determine financial products recommended for the target user based on the interaction records between the target user and financial products and the frequent subgraphs.
[0013] In a third aspect, the present application provides an electronic device, including: a memory and a processor;
[0014] The memory stores computer-executable instructions;
[0015] The processor executes the computer-executable instructions stored in the memory, so that the processor executes the financial product recommendation method described in the first aspect and / or various possible implementation manners of the first aspect above.
[0016] In a fourth aspect, the present application provides a computer-readable storage medium, in which computer-executable instructions are stored, and when the computer-executable instructions are executed by a processor, they are used to implement the financial product recommendation method described in the first aspect and / or various possible implementation manners of the first aspect above.
[0017] In a fifth aspect, the present application provides a computer program product, including a computer program, and when the computer program is executed by a processor, it implements the financial product recommendation method described in the first aspect and / or various possible implementation manners of the first aspect above.
[0018] The financial product recommendation method, device, equipment, storage medium and program product provided by the present application obtain a knowledge graph set, which includes knowledge graphs of respective time periods, entities in each knowledge graph are users or financial products, and the relationships between entities are determined based on user attributes, financial product attributes and interaction records between users and financial products within each time period; perform frequent subgraph mining on the knowledge graph set to obtain frequent subgraphs; use a ripple propagation algorithm to determine financial products recommended for the target user based on the interaction records between the target user and financial products and the frequent subgraphs; this method realizes effective reasoning of the user's preferred products, thereby improving the accuracy of recommending financial products for users. BRIEF DESCRIPTION OF THE DRAWINGS
[0019] The accompanying drawings here are incorporated into the specification and constitute a part of the specification, showing embodiments consistent with the present application, and are used together with the specification to explain the principles of the present application.
[0020] Figure 1 is a flowchart of the financial product recommendation method provided by the present application Figure 1 ;
[0021] Figure 2 Flow schematic of the recommendation method for the financial product provided by this application Figure 2 ;
[0022] Figure 3 Structural schematic diagram of the recommendation device for the financial product provided by this application;
[0023] Figure 4 Structural schematic diagram of the electronic device provided by this application.
[0024] Through the above-mentioned accompanying drawings, specific embodiments of this application have been shown, and there will be more detailed descriptions hereinafter. These drawings and textual descriptions are not intended to limit the scope of the concept of this application in any way, but to illustrate the concept of this application to those skilled in the art by referring to specific embodiments. Detailed implementation manners
[0025] To make the objectives, technical solutions and advantages of this application clearer, the technical solutions in this application will be clearly and completely described below in conjunction with the accompanying drawings in this application. Obviously, the described embodiments are some but not all of the embodiments of this application. All other embodiments obtained by those of ordinary skill in the art based on the embodiments in this application without creative efforts shall fall within the scope of protection of this application.
[0026] Terms such as "first", "second", "third", "fourth", etc. (if any) in the specification, claims and above-mentioned accompanying drawings of the present invention are used to distinguish similar objects and do not necessarily have to be used to describe a specific order or sequence. It should be understood that such data can be interchanged under appropriate circumstances so that the embodiments of the present invention described herein can be implemented in an order different from those illustrated or described herein.
[0027] In the embodiments of this application, words such as "exemplary" or "for example" are used to represent examples, illustrations or explanations. Any embodiment or design solution described as "exemplary" or "for example" in this application should not be construed as being more preferred or having more advantages than other embodiments or design solutions. Rather, the use of words such as "exemplary" or "for example" is intended to present relevant concepts in a specific manner.
[0028] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data for analysis, stored data, displayed data, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties. Moreover, for the processing of relevant data such as collection, use, processing, transmission, provision, disclosure, and application, all comply with the relevant laws, regulations, and standards of the relevant countries and regions, adopt necessary confidentiality measures, do not violate public order and good customs, and provide corresponding operation entrances for users to choose to authorize or refuse.
[0029] In addition, the technical solution of this application that involves big data analysis of user information (including but not limited to personal biometric features, identity data, consumption data, asset data, electronic terminal operation data, etc.), uses artificial intelligence technology for automated decision-making, and makes decisions that have a significant impact on personal rights and interests based on the results of automated decision-making provides corresponding operation entrances for users to choose to agree or refuse the results of automated decision-making; if the user chooses to refuse, it will enter the expert decision-making process.
[0030] It should be noted that the method, device, equipment, storage medium, and program product for recommending financial products in this application can be used in the field of financial technology, and can also be used in any field other than the field of financial technology. The application field of the method, device, equipment, storage medium, and program product for recommending financial products in this application is not limited.
[0031] Existing methods for recommending financial products provide financial product recommendations based on the historical interaction records between users and financial products. However, in real life, both users and products are dynamic. For example, users' interests and behavior patterns change over time, and new financial products are constantly entering the market. The reasoning ability of existing methods for recommending financial products is mainly based on static entities and relationships, resulting in poor relevance and timeliness of recommendations; moreover, for new users and new products, there is a lack of behavioral data, the available data information is relatively small, it is difficult to provide effective recommendations, and it is not easy to infer users' preferred products, leading to a low accuracy rate of recommended products.
[0032] In view of this, the present application provides a method for recommending financial products. A temporal knowledge graph set is constructed based on user attribute data, product attribute data, and user-product interaction records in different time periods. Frequent subgraph mining is performed on the temporal knowledge graph set according to a minimum support threshold to obtain a frequent subgraph set. In this way, redundant data in a large amount of user and financial product data can be effectively removed. The ripple propagation algorithm is used, with the user-product interaction records and the mined frequent subgraphs as inputs, to obtain the interaction probability between a target user and a financial product that the user has not interacted with. According to the high and low of the interaction probability, a preset number of target financial products ranked at the top are selected as the financial products finally recommended to the user. In this way, the accuracy of recommending financial products to users is improved.
[0033] The following uses specific embodiments to elaborate in detail on the technical solutions of the present application and how the technical solutions of the present application solve the above technical problems. These several specific embodiments below can be combined with each other. For the same or similar concepts or processes, they may not be repeated in some embodiments. The embodiments of the present application will be described below with reference to the accompanying drawings.
[0034] Figure 1 Schematic flow of the method for recommending financial products provided by the embodiments of the present application Figure 1 , the execution subject of this embodiment is, for example, a financial product recommendation device. As Figure 1 shown, the method for recommending financial products provided by this embodiment includes:
[0035] S101. Obtain a knowledge graph set.
[0036] Among them, the knowledge graph set includes knowledge graphs for respective time periods. The entities in each knowledge graph are users or financial products, and the relationships between the entities are determined based on user attributes, financial product attributes, and user and financial product interaction records within each time period.
[0037] First, collect user attribute information (such as age, occupation, geographical location, etc.) and behavior data (purchase records, browsing history, etc.), collect financial product attribute information (such as product type, interest rate, risk level, etc.), and collect user and financial product interaction records (such as purchase, evaluation, consultation, etc.). Then, divide these data according to time periods. For example, it can be divided by month, quarter, or year. For each time period, construct a knowledge graph. The nodes in the knowledge graph represent users and financial products, and the edges represent the relationships between them. Then, define the relationships between entities based on user attributes, metal product attributes, and interaction records. For example, (user 1, purchase, financial product A), (user 2, browse, metal product B), (financial product A, belongs to, metal product B).
[0038] It can be understood that this knowledge graph set is a temporal knowledge graph set, which contains knowledge graphs corresponding to multiple time periods. This is because both user behavior and the financial market are dynamic. As time goes by, the relationships between entities will change. Therefore, by segmenting the data into different time periods, these dynamic changes can be captured to understand the behavior and preference changes of users in different time periods, so as to provide more personalized financial product recommendations for users.
[0039] S102. Conduct frequent subgraph mining on the knowledge graph set to obtain frequent subgraphs.
[0040] Among them, a frequent subgraph refers to a subgraph that appears more than a preset threshold (i.e., the minimum support) in the knowledge graphs of each time period.
[0041] In the embodiments of this application, the method of frequent subgraph mining is used to mine the knowledge graphs of multiple time periods, which can effectively remove redundant and noisy pattern data and extract discriminative knowledge patterns, that is, frequent subgraphs, for further processing.
[0042] It can be understood that when the number of customers is too large and the customer set is updated relatively quickly, the knowledge graph set may contain a large amount of duplicate information. These redundant information may lead to inconsistent information in the knowledge graph. For example, the same entity or relationship may appear in different forms in different places, which will cause the inference algorithm to produce incorrect results. For example, (User 1, purchases, Financial Product A), (User 2, evaluates, Financial Product B). At this time, if in different data sources, the same user or product is recorded in different forms, such as "User 1" is recorded as "User 1" in some data sources and as "User 01" in other data sources, and "Financial Product A" is recorded as "Financial Product B" in some data sources and as "Wealth Management Product B" in other data sources. In this way, when the subsequent inference algorithm tries to recommend products to "User 1", it may ignore the purchase record of "User 01" because the algorithm may not be able to recognize that these two users are the same entity, thus affecting the accuracy of the recommendation. Similarly, when analyzing the popularity of "Financial Product B", the purchase records of "Financial Product B" and "Wealth Management Product B" may be processed separately and cannot be merged, which will lead to an underestimation or overestimation of the actual popularity of "Financial Product B" and affect the accuracy of the recommendation.
[0043] Exemplarily, a frequent subgraph mining algorithm can be selected, and mining parameters (such as the minimum support) can be determined, and frequent subgraph mining is respectively performed on the knowledge graphs of each time period. Among them, the frequent subgraph mining algorithm can be, for example: an algorithm based on depth-first search (gSpan algorithm), an algorithm based on breadth-first search (FSG), an algorithm based on candidate generation and verification (GASTON), etc.
[0044] S103. Use the ripple propagation algorithm to determine the financial products recommended for the target user based on the interaction records between the target user and the financial products and the frequent subgraphs.
[0045] Among them, the ripple propagation algorithm (Ripple Propagation Algorithm) is an algorithm for propagating information in a graph structure. By simulating the propagation process of information in the network, potential relevant nodes and paths are discovered, so as to recommend the most suitable financial products.
[0046] In this step, the target user can be selected as the starting point, the ripple layer number is initialized (for example, the maximum ripple layer number is set to 3), and based on the interaction records between the target user and the financial products, starting from the target user, it propagates outward along the interaction relationship. Each layer of ripple represents one propagation step, and the nodes and paths visited in each layer of ripple are recorded. Then, according to the matching degree between the ripple layer number and the frequent subgraph, the weight of each node is calculated. Among them, the fewer the ripple layer number, the higher the weight; the more the matching frequent subgraphs, the higher the weight. Then, the potential financial products are sorted according to the weights, and the product with the highest weight is selected as the recommendation result.
[0047] The following takes the target user being User 1 as an example to illustrate the ripple propagation process:
[0048] Layer 0: Starting point - Current node: User 1;
[0049] Layer 1: Starting from User 1, visit the product nodes with interaction relationships: Product A, Product B, and record the paths: (User 1, purchase, Product A), (User 1, attention, Product B);
[0050] Layer 2: Starting from Product A and Product B, visit the user nodes with interaction relationships:
[0051] Product A - User 2; Product B - User 3, and record the paths: (Product A, purchase, User 2), (Product B, attention, User 3);
[0052] Layer 3: Starting from User 2 and User 3, visit the product nodes with interaction relationships: User 2 - Product C, User 3 - Product C, and record the paths: (User 2, purchase, Product C), (User 3, purchase, Product C).
[0053] According to the matching degree between the ripple layer number and the frequent subgraph, the weight of each node is calculated. For example, weight = 1 / (ripple layer number + 1) + frequent subgraph matching degree. Therefore, the weights of Product A, Product B, Product C, and Product D can be calculated respectively as: 1.5, 1.5, 1.33, 0.25.
[0054] In the embodiments of the present application, by combining the ripple propagation algorithm with frequent subgraph mining, financial products can be effectively recommended to users. The ripple propagation algorithm simulates the process of information propagation in a network, gradually expanding the user's social network and discovering potential relevant nodes and paths. Frequent subgraph mining helps to discover common patterns between users and products, improving the accuracy and personalization of recommendations. In this example, the recommended results for target user 1 are product A and product B, followed by product C and product D.
[0055] The method for recommending financial products provided by the embodiments of the present application includes obtaining a knowledge graph set, where the knowledge graph set includes knowledge graphs for respective time periods, entities in each knowledge graph are users or financial products, and the relationships between entities are determined based on user attributes, financial product attributes, and interaction records between users and financial products within each time period; performing frequent subgraph mining on the knowledge graph set to obtain frequent subgraphs; using the ripple propagation algorithm to determine the financial products to be recommended to the target user based on the interaction records between the target user and financial products and the frequent subgraphs; this method realizes effective reasoning of the user's preferred products, thereby improving the accuracy rate of recommending financial products to users.
[0056] Figure 2 It is a flowchart of the method for recommending financial products provided by the present application Figure 2 as Figure 2 shown. On the basis of the Figure 1 embodiment, the method for recommending financial products is described in detail. The method for recommending financial products provided by this embodiment includes:
[0057] S201. Obtain user attributes, financial product attributes, and interaction records between users and financial products.
[0058] Among them, user attributes can be, for example, user ID, age, gender, occupation, address, etc.; financial product attributes can be, for example: product ID, product name, category, risk level, expected rate of return, investment term, etc.
[0059] For example, user basic information tables, user behavior record tables, product information tables, product classification tables, user purchase record tables, user attention record tables, etc. for different time periods can be obtained from the database, and the required data can be extracted and integrated from them to obtain a user attribute set, a product attribute set, and a user-product interaction set.
[0060] The user attribute set can be expressed as: , the product attribute set can be expressed as , and the user-product interaction set can be expressed as , indicating the interaction records of m users with n products. Among them, if , it indicates that there is a historical interaction relationship between the user u and the product v. Conversely, if , it indicates that there is no interaction relationship between the user u and the product v. The interaction relationship between the user and the product can be, for example, purchase, click, rating, browsing time, comment, follow, etc.
[0061] S202. Construct a knowledge graph for each time period based on user attributes, financial product attributes, and the interaction records between the user and the financial product.
[0062] Among them, each element in the knowledge graph includes a head entity, a tail entity, a relationship, and a time period. The head entity can be, for example, user attributes, and the tail entity can be, for example, financial product attributes. The time period refers to the time range during which the interaction relationship between the user and the financial product holds.
[0063] For example, the representation of a temporal knowledge graph using a quadruple structure is defined as , where E represents entities, R represents the set of relationships, represents the set of timestamps related to the facts. Each element in KG is represented in the form of a quadruple: , where , , , h is the head entity, r is the relationship, t is the tail entity, is the time period, and the triple instance holds within the time interval .
[0064] S203. Determine the support degree of each edge in each knowledge graph in the knowledge graph set, determine the edges with support degrees greater than the minimum support degree threshold as frequent edges, and determine the frequent edges as frequent subgraphs.
[0065] Among them, the support degree of an edge represents the frequency of the edge appearing in all knowledge graphs. Specifically, the support degree can be defined as the ratio of the number of knowledge graphs containing the edge to the total number of knowledge graphs. The minimum support degree threshold (MinimumSupport, minsup): refers to the minimum number of times or frequency of an item set or subgraph appearing in the dataset. Only when the number of times or frequency of an item set or subgraph reaches or exceeds this threshold is it considered frequent.
[0066] For example, the support degree of an edge can be calculated using the following formula:
[0067]
[0068] where refers to the support degree of the edge in the knowledge graph set, KG refers to the knowledge graph set, and the knowledge graph set KG contains multiple knowledge graphs in the time dimension , that is .
[0069] If the support of the edge calculated according to the above formula satisfies: , then it can be determined that edge g is a frequent edge.
[0070] Calculate the support of all single edges in the temporal knowledge graph, delete all non-frequent edges from the input graph set, and use the frequent single edges as the initial subgraph.
[0071] S204. For any frequent edge, perform path expansion on the frequent edge, obtain a candidate subgraph by expanding one edge each time, determine the support of the candidate subgraph, and determine the candidate subgraph with a support greater than the minimum support threshold as a frequent subgraph.
[0072] In the embodiment of the present application, by performing the rightmost path expansion on the existing frequent edges according to the minimum DFS encoding, new candidate subgraphs can be generated, and further calculate the support of the new candidate subgraphs. The candidate subgraphs that meet the minimum support threshold condition can be used as frequent subgraphs, and the candidate subgraphs that do not meet the minimum support threshold condition will be deleted to reduce the complexity of subsequent searches and improve the mining efficiency.
[0073] Optionally, before determining the support of each edge in each knowledge graph in the knowledge graph set, a depth-first search encoding can be performed on the knowledge graph set first; if the candidate subgraph with a support greater than the minimum support threshold is the minimum depth-first search encoding, then the candidate subgraph with a support greater than the minimum support threshold is determined as a frequent subgraph.
[0074] Here, the depth-first search encoding (Depth-First Search Code, DFS) is a coding method for representing graph structures. During the process of mining frequent subgraphs, the DFS encoding is used to uniquely represent the substructure of the graph for easy comparison and search. Compare the generated DFS encoding with the currently known minimum DFS encoding. If the generated DFS encoding is smaller, update the minimum DFS encoding; if the generated DFS encoding is larger, it is considered that the candidate subgraph is redundant and can be removed from the candidate subgraph set.
[0075] For example, the DFS encoding of each edge in each graph in the knowledge graph set can be represented by a five-tuple: , where i represents the access order mark of node i, j represents the access order mark of node j, represents the label of node i, represents the label of the edge, represents the label of node j.
[0076] After that, the structure of each knowledge graph is identified using DFS encoding, and each knowledge graph is transformed into an edge sequence. Based on the edge sequences of all single edges, the support of each edge is calculated, and the edges with a support greater than or equal to the minimum support threshold are used as the initial subgraphs. Candidate subgraphs are generated iteratively. The rightmost path of the minimum DFS encoding of the k-frequent subgraph is extended by adding one edge at a time to obtain the (k + 1)-candidate subgraph. Calculate the support of the candidate subgraph. Calculate the support of the extended (k + 1)-order subgraph. If it is a frequent subgraph, it is retained; otherwise, it is deleted. At the same time, if the extended (k + 1)-order frequent subgraph does not have the minimum DFS encoding, it is considered redundant and deleted from the candidate subgraphs; reduce the graph set. When all extensions of a frequent edge are completed, the frequent edge is deleted from the input graph set to shrink the input graph set; after all frequent edge extensions are completed, the frequent subgraph set FG of the KG can be obtained.
[0077] S205. Determine the probability of interaction between the target user and the target financial product based on the embedding vector of the target financial product and the embedding vectors of the entities and relationships in the ripple set.
[0078] Among them, the target financial product is a financial product that has not interacted with the target user. The historical interaction set between the target user and financial products is used as the seed set, that is , and it is extended along the paths in the knowledge graph set KG to the ripple set. The ripple set refers to the triples that have a k-hop relationship with the seed set. The k-hop related entity set of the target user can be expressed as: , and the ripple set can be expressed as: , where h is the head entity, r is the relationship, t is the tail entity, and k is the number of layers of ripple propagation.
[0079] In the embodiments of the present application, using the RippleNet algorithm, taking the user-product interaction set Y and the mined frequent subgraph FG as inputs, the probability of an interaction relationship being generated between the user u and the un-interacted target financial product v can be obtained, which is expressed by the formula: , where represents the probability of interaction between the user u and the target financial product v, represents the model parameters of the function f.
[0080] Optionally, based on the embedding vector of the target financial product and the embedding vectors of the head entity and relationship of each element in the ripple set, determine the correlation probability between the target financial product and each element in the ripple set; based on the correlation probability and the embedding vector of the tail entity of each element in the ripple set, determine the probability of interaction between the target user and the target financial product.
[0081] An embedded vector is a vector that maps discrete objects into a continuous multi-dimensional space to capture their semantic or feature relationships, thereby enhancing the model's understanding and processing capabilities. The embedded vectors of the head entities of each element in the above ripple set, the embedded vectors of the relationships, and the embedded vector of the target financial product are input into the softmax function for interaction to obtain the correlation probabilities between the target financial product and each element in the ripple set. For example, the following formula can be used to calculate the said correlation probabilities:
[0082]
[0083] where, and are the embedded vectors of the relationship and the head entity in the frequent subgraph FG respectively, and v refers to the embedded vector of the target financial product.
[0084] Then, the following formula is used to perform a weighted sum of the tail entities of through the corresponding correlation probabilities:
[0085]
[0086] where, is the embedded vector of the tail entity, and the vector refers to the first-order response of the historical interaction set of the target user to the product set.
[0087] It can be understood that through the above formula, the preferences of the target user are transferred from the historical interaction set to the first-order related entities through the first-layer ripple set , which is the preference propagation process in the ripple propagation algorithm. Repeating the above process, the second-order response of the target user can be obtained, and so on, until the H-order response is iterated, and then these response vectors are combined to finally obtain the response vector of the target user to the target financial product: .
[0088] Finally, the embedded vector of the target user and the embedded vector of the target financial product are combined, and the following formula is used to output the predicted click probability: , where, is the activation function, is the response vector of the target user to the target financial product, is the embedded vector of the target financial product.
[0089] S206. Determine the preset number of target financial products ranked at the top according to the probabilities from high to low as the financial products recommended to the target user.
[0090] For example, sorting the probabilities output by the above-mentioned ripple propagation algorithm from high to low, the probabilities that the target financial products are purchased by the target user can be obtained as follows: Product 1 (0.95), Product 2 (0.93), Product 3 (0.89), Product 4 (0.75). If the top 3 products are selected as the recommendation list, then the three financial products, namely Product 1, Product 2, and Product 3, will be recommended to the target user.
[0091] The financial product recommendation method provided by the embodiments of this application uses a temporal knowledge graph to represent the changes of entities and relationships over time periods, which is helpful for dynamic knowledge analysis. At the same time, a frequent subgraph mining method is adopted to extract meaningful knowledge patterns for model establishment and prediction, which can effectively remove knowledge redundancy in large-scale data and maintain the consistency of the knowledge structure. Finally, the ripple propagation algorithm is used to automatically discover the possible paths from the financial products in the user's historical interaction records to the target financial products, spread the user's interests, and find the user's potential interested products, so as to recommend the target financial products that the user is most likely to be interested in to the user. This method improves the accuracy of recommending financial products to users.
[0092] Figure 3 It is a schematic structural diagram of the financial product recommendation device provided by this application, as Figure 3 shown. The financial product recommendation device 300 provided in this embodiment includes:
[0093] An acquisition module 301, configured to acquire a knowledge graph set, where the knowledge graph set includes knowledge graphs for respective time periods, entities in each knowledge graph are users or financial products, and the relationships between entities are determined based on user attributes, financial product attributes, and interaction records between users and financial products within each time period;
[0094] A processing module 302, configured to perform frequent subgraph mining on the knowledge graph set to obtain frequent subgraphs;
[0095] The processing module 302 is further configured to use the ripple propagation algorithm to determine the financial products to be recommended to the target user based on the interaction records between the target user and financial products and the frequent subgraphs.
[0096] In some embodiments, the processing module 302 is further configured to determine the support degree of each edge in each knowledge graph in the knowledge graph set, determine the edges with support degrees greater than the minimum support degree threshold as frequent edges, and determine the frequent edges as frequent subgraphs;
[0097] The processing module 302 is further configured to, for any frequent edge, perform path expansion on the frequent edge, obtain a candidate subgraph by expanding one edge each time, determine the support degree of the candidate subgraph, and determine the candidate subgraph with a support degree greater than the minimum support degree threshold as a frequent subgraph.
[0098] In some embodiments, the processing module 302 is further configured to perform a depth-first search encoding on the knowledge graph set;
[0099] The processing module 302 is further configured to, when the candidate subgraph with a support greater than the minimum support threshold is a minimum depth-first search encoding, determine the candidate subgraph with a support greater than the minimum support threshold as a frequent subgraph.
[0100] In some embodiments, the processing module 302 is further configured to, based on the interaction records between the target user and financial products, determine the financial products that have interacted with the target user as a seed set, and perform path expansion on the seed set based on the frequent subgraph to obtain a ripple set, where each element in the ripple set includes a head entity, a tail entity, and a relationship;
[0101] The processing module 302 is further configured to determine the probability of interaction between the target user and the target financial product based on the embedding vector of the target financial product and the embedding vectors of the entities and relationships in the ripple set, where the target financial product is a financial product that has not interacted with the target user;
[0102] The processing module 302 is further configured to determine the top preset number of target financial products in descending order of probability as the financial products recommended to the target user.
[0103] In some embodiments, the processing module 302 is further configured to determine the correlation probability between the target financial product and each element in the ripple set based on the embedding vector of the target financial product and the embedding vectors of the head entity and relationship of each element in the ripple set;
[0104] The processing module 302 is further configured to determine the probability of interaction between the target user and the target financial product based on the correlation probability and the embedding vector of the tail entity of each element in the ripple set.
[0105] In some embodiments, the obtaining module 301 is further configured to obtain user attributes, financial product attributes, and interaction records between the user and financial products;
[0106] The processing module 302 is further configured to construct a knowledge graph for each time period based on the user attributes, financial product attributes, and interaction records between the user and financial products, where each element in the knowledge graph includes a head entity, a tail entity, a relationship, and a time period.
[0107] Figure 4 This is a schematic structural diagram of the electronic device provided by the present application. As Figure 4As shown in the figure, the present application provides an electronic device. The electronic device 400 includes: a receiver 401, a transmitter 402, a processor 403, and a memory 404.
[0108] The receiver 401 is configured to receive instructions and data;
[0109] The transmitter 402 is configured to send instructions and data;
[0110] The memory 404 is configured to store computer-executable instructions;
[0111] The processor 403 is configured to execute the computer-executable instructions stored in the memory 404 to implement the various steps performed by the financial product recommendation method in the above embodiments. For specific details, reference can be made to the relevant descriptions in the embodiments of the financial product recommendation method described above.
[0112] Optionally, the above-mentioned memory 404 can be either independent or integrated with the processor 303.
[0113] When the memory 404 is independently provided, the electronic device further includes a bus for connecting the memory 404 and the processor 403.
[0114] In the above embodiments, it should be understood that the processor can be a central processing unit (English: Central Processing Unit, abbreviated: CPU), or other general-purpose processors, digital signal processors (English: Digital Signal Processor, abbreviated: DSP), application specific integrated circuits (English: Application Specific Integrated Circuit, abbreviated: ASIC), etc. The general-purpose processor can be a microprocessor or the processor can also be any conventional processor, etc. The steps of the method disclosed in combination with the invention can be directly implemented by a hardware processor, or implemented by a combination of hardware and software modules in the processor.
[0115] The memory may include a high-speed memory (Random Access Memory, RAM), and may also include a non-volatile memory (Non-volatile Memory, NVM), such as at least one disk memory.
[0116] The bus can be an Industry Standard Architecture (ISA) bus, a Peripheral Component Interconnect (PCI) bus, an Extended Industry Standard Architecture (EISA) bus, etc. The bus can be divided into an address bus, a data bus, a control bus, etc. For the sake of convenience in representation, the buses in the drawings of this application are not limited to only one bus or one type of bus.
[0117] This application also provides a computer program product, including a computer program which, when executed by a processor, implements the above-mentioned financial product recommendation method.
[0118] This application also provides a computer-readable storage medium storing computer-executable instructions, which, when executed by a processor, implement the above-mentioned financial product recommendation method.
[0119] The above-mentioned readable storage medium can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as a static random access memory (SRAM), an electrically erasable programmable read-only memory (EEPROM), an erasable programmable read-only memory (EPROM), a programmable read-only memory (PROM), a read-only memory (ROM), a magnetic memory, a flash memory, a magnetic disk or an optical disc. The readable storage medium can be any available medium accessible by a general-purpose or special-purpose computer.
[0120] An exemplary readable storage medium is coupled to the processor, enabling the processor to read information from the readable storage medium and write information to the readable storage medium. Of course, the readable storage medium can also be a component of the processor. The processor and the readable storage medium can be located in an Application Specific Integrated Circuit (ASIC). Of course, the processor and the readable storage medium can also exist as discrete components in a device.
[0121] The division of units is only a logical function division. In actual implementation, there can be other division methods. For example, multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the displayed or discussed coupling or direct coupling or communication connection between each other can be through some interfaces, and the indirect coupling or communication connection of devices or units can be in an electrical, mechanical or other forms.
[0122] The unit described as a separation component may or may not be physically separated. The component displayed as a unit may or may not be a physical unit, that is, it may be located in one place or distributed across multiple network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of this embodiment.
[0123] In addition, in each embodiment of the present invention, each functional unit can be integrated in a processing unit, or each unit can exist physically alone, or two or more units can be integrated in one unit.
[0124] If the function is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on such an understanding, the technical solution of the present invention, in essence, or the part that contributes to the prior art, or a part of this technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions for causing a computer device (which can be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the methods in each embodiment of the present invention. The aforementioned storage medium includes: USB flash drives, mobile hard disks, read-only memories (ROM, Read-Only Memory), random access memories (RAM, Random Access Memory), magnetic disks, or optical discs, etc., all kinds of media that can store program codes.
[0125] Those of ordinary skill in the art can understand that all or part of the steps of implementing the above method embodiments can be completed by hardware related to program instructions. The aforementioned program can be stored in a computer-readable storage medium. When the program is executed, it executes the steps including the above method embodiments; and the aforementioned storage medium includes: ROM, RAM, magnetic disks, or optical discs, etc., all kinds of media that can store program codes.
[0126] Finally, it should be noted that: after considering the specification and practicing the invention disclosed here, those skilled in the art will easily think of other implementation schemes of the present invention. The present invention aims to cover any variations, uses, or adaptive changes of the present invention. These variations, uses, or adaptive changes follow the general principles of the present invention and include common general knowledge or conventional technical means in the technical field not disclosed in the present invention. It is not limited to the exact structure described above and shown in the drawings, and various modifications and changes can be made without departing from its scope. The scope of the present invention is only limited by the appended claims.
Claims
1. A method for recommending financial products, characterized in that: include: Obtain a knowledge graph set, the knowledge graph set including knowledge graphs for multiple time periods, the entities in each of the knowledge graphs being users or financial products, and the relationships between the entities being determined based on user attributes, financial product attributes, and interaction records between users and financial products in each time period; Performing frequent subgraph mining on the knowledge graph set to obtain frequent subgraphs; A ripple propagation algorithm is adopted to determine the financial product recommended to the target user based on the interaction record between the target user and the financial product and the frequent subgraph.
2. The method according to claim 1, characterized in that The frequent subgraph mining is performed on the knowledge graph set to obtain a frequent subgraph, including: Determine the support of each edge in each knowledge graph in the knowledge graph set, determine the edge whose support is greater than a minimum support threshold as a frequent edge, and determine the frequent edge as a frequent subgraph; For any frequent edge, the path of the frequent edge is extended, and a candidate subgraph is obtained by extending one edge each time, and the support of the candidate subgraph is determined, and the candidate subgraph with a support greater than the minimum support threshold is determined as a frequent subgraph.
3. The method according to claim 2, characterized in that Before determining the support of each edge in each knowledge graph in the knowledge graph set, the method further includes: Performing depth-first search encoding on the knowledge graph set; The step of determining the candidate subgraphs whose support is greater than the minimum support threshold as frequent subgraphs includes: If the candidate subgraph whose support is greater than the minimum support threshold is a minimum depth-first search code, the candidate subgraph whose support is greater than the minimum support threshold is determined as a frequent subgraph.
4. The method according to any one of claims 1 to 3, characterized in that: The method of using the ripple propagation algorithm to determine the financial product to be recommended to the target user based on the interaction record between the target user and the financial product and the frequent subgraph includes: Based on the interaction records between the target user and the financial product, the financial products that interact with the target user are determined as a seed set, and the seed set is path-expanded based on the frequent subgraph to obtain a ripple set, where each element in the ripple set includes a head entity, a tail entity, and a relationship; Determine, based on the embedding vector of the target financial product and the embedding vectors of the entities and relations in the ripple set, a probability of interaction between the target user and the target financial product, wherein the target financial product is a financial product with which the target user has not interacted; In descending order of probability, a preset number of target financial products ranked first are determined as financial products recommended to the target user.
5. The method according to claim 4, characterized in that The determining the probability of the target user interacting with the target financial product based on the embedding vector of the target financial product and the embedding vectors of the entities and relations in the ripple set includes: Determine the correlation probability between the target financial product and each element in the ripple set based on the embedding vector of the target financial product and the embedding vectors of the head entity and the relationship of each element in the ripple set; Based on the relevant probability and the embedding vector of the tail entity of each element in the ripple set, the probability of the target user interacting with the target financial product is determined.
6. The method according to any one of claims 1 to 3, characterized in that: The obtaining of the knowledge graph set includes: Obtain user attributes, financial product attributes, and interaction records between users and financial products; Based on the user attributes, financial product attributes and interaction records between the user and the financial product, a knowledge graph for each time period is constructed, wherein each element in the knowledge graph includes a head entity, a tail entity, a relationship and a time period.
7. A financial product recommendation device, characterized in that: include: An acquisition module, used to acquire a knowledge graph set, wherein the knowledge graph set includes knowledge graphs for respective time periods, wherein entities in each of the knowledge graphs are users or financial products, and relationships between entities are determined based on user attributes, financial product attributes, and interaction records between users and financial products in each time period; A processing module, used for performing frequent subgraph mining on the knowledge graph set to obtain frequent subgraphs; The processing module is further configured to adopt a ripple propagation algorithm to determine the financial product to be recommended to the target user based on the interaction record between the target user and the financial product and the frequent subgraph.
8. An electronic device, characterized in that: include: Memory; processor; Wherein, the memory stores computer-executable instructions; The processor executes the computer-executable instructions stored in the memory to implement the financial product recommendation method according to any one of claims 1 to 6.
9. A computer storage medium, characterized in that The computer storage medium stores computer executable instructions, which, when executed by a processor, are used to implement the method for recommending financial products according to any one of claims 1 to 6.
10. A computer program product, characterized in that The invention comprises a computer program, which, when executed by a processor, implements the method for recommending financial products as described in any one of claims 1 to 6.