Data recommendation methods, devices, storage value, and electronic equipment based on graph computing
Patent Information
- Application Number
- CN202311049158.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-08-18
- Publication Date
- 2026-09-01
- Estimated Expiration
- 2043-08-18
AI Technical Summary
[0005]本申请的主要目的在于提供一种基于图计算的数据推荐方法、装置、存储价值及电子设备,以解决相关技术中向数据分析师推荐的数据准确性较低的问题
Smart Images

Figure CN117076770B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of artificial intelligence, and more specifically, to a data recommendation method, apparatus, storage value, and electronic device based on graph computing. Background Technology
[0002] In related technologies, data analysis and mining are carried out through systems such as BI (Business Intelligence) platforms. Data analysts choose to write SQL (Structured Query Language), use template queries, drag-and-drop methods, etc., to explore and query data based on different business needs and the complexity of data processing. The query results are returned in real time or asynchronously, displayed on the front-end page, and can be downloaded. Data querying has been widely used in daily business operations.
[0003] However, although the data querying methods through BI platforms have accumulated a wealth of data analysis results, such as SQL query templates, fixed reports, and visualization dashboards, analysts still need to start from scratch to perform self-analysis when using data. The system also lacks relevant BI model recommendation functions during the user analysis process, resulting in very low data analysis efficiency.
[0004] There is currently no effective solution to the problem of low accuracy in the data recommended to data analysts in related technologies. Summary of the Invention
[0005] The main objective of this application is to provide a data recommendation method, apparatus, storage value, and electronic device based on graph computing, in order to solve the problem of low accuracy of data recommended to data analysts in related technologies.
[0006] To achieve the above objectives, according to one aspect of this application, a graph-based data recommendation method is provided. The method includes: obtaining the identity information of the target user to be recommended; determining other users from a target relationship network based on the identity information, wherein the target relationship network consists of multiple nodes and multiple edges, each node representing one of the following objects: user, model, and data table; the edge between any two nodes is constructed by the interaction relationship between the objects represented by the nodes; other users are users in the target relationship network other than the target user; the similarity between the identity information of other users and the identity information of the target user is greater than or equal to a similarity threshold; determining the nodes corresponding to other users in the target relationship network as target nodes, and determining the recommended nodes connected to the target nodes in the target relationship network by edges, obtaining a set of recommended nodes, wherein the recommended nodes are nodes representing models or data tables visited by other users; determining the node importance evaluation value of each recommended node in the set of recommended nodes; sorting all recommended nodes' corresponding models or data tables in descending order of importance evaluation values to obtain a target sequence; and recommending models or data tables to the target user according to the order of the target sequence.
[0007] Optionally, determining other users from the target relationship network based on identity information includes: obtaining the identity information of each user in the target relationship network; calculating the similarity between the identity information of each user and the identity information of the target user; and identifying users whose similarity is greater than or equal to a similarity threshold as other users.
[0008] Optionally, determining the node importance evaluation value of each recommended node includes: calculating the degree, degree centrality evaluation value, and relevance evaluation value of each recommended node in the target relationship network; determining the first weight of the degree, the second weight of the degree centrality evaluation value, and the third weight of the relevance evaluation value; and weighting and summing the degree, degree centrality evaluation value, and relevance evaluation value based on the first weight, the second weight, and the third weight to obtain the node importance evaluation value of the recommended node.
[0009] Optionally, before identifying other users from the target relationship network based on identity information, the method further includes: obtaining data operation records of all users of the target organization; extracting the models and data tables accessed by each user when processing business from the data operation records; and extracting the data tables accessed by each model; defining users, models, and data tables as nodes; connecting edges between the node corresponding to the data table accessed by each user and the node corresponding to the user; connecting edges between the node corresponding to the model accessed by each user and the node corresponding to the user; and connecting edges between the node corresponding to the model and the node corresponding to the data table accessed by the model; and constructing the target relationship network based on the nodes and edges.
[0010] Optionally, before determining the node importance evaluation value of each recommended node in the recommended node set, the method further includes: determining the associated nodes that have edges with the recommended nodes, and identifying the associated nodes as new recommended nodes; adding the new recommended nodes to the recommended node set to obtain an updated recommended node set; and performing the step of determining the node importance evaluation value of each recommended node in the recommended node set based on the updated recommended node set.
[0011] Optionally, after recommending the model or data table to the target user in the order of the target sequence, the method further includes: obtaining the unrecommended models and unrecommended data tables accessed by the target user, wherein the unrecommended models and unrecommended data tables are models and data tables other than the target sequence; determining the nodes corresponding to the unrecommended models and the nodes corresponding to the unrecommended data tables as nodes to be processed; if the target relationship network contains nodes to be processed, connecting the nodes to be processed between the nodes corresponding to the target user and the nodes to be processed; if the target relationship network does not contain nodes to be processed, adding the nodes to be processed to the target relationship network, and connecting the nodes to be processed between the nodes corresponding to the target user and the nodes to be processed.
[0012] Optionally, after recommending the model or data table to the target user in the order of the target sequence, the method further includes: obtaining the recommended model and recommended data table in the target sequence accessed by the target user; determining the position of the recommended model and recommended data table in the target sequence; updating the first weight of the degree, the second weight of the degree centrality evaluation value, and the third weight of the relevance evaluation value if the position is not within the preset position range in the target sequence; and performing the step of determining the node importance evaluation value of each recommended node based on the updated first weight, second weight, and third weight.
[0013] To achieve the above objectives, according to another aspect of this application, a data recommendation apparatus based on graph computing is provided. The apparatus includes: an acquisition unit, configured to acquire the identity information of a target user to be recommended, and determine other users from a target relationship network based on the identity information, wherein the target relationship network consists of multiple nodes and multiple edges, each node representing one of the following objects: user, model, and data table, the edge between any two nodes is constructed by the interaction relationship between the objects represented by the nodes, other users are users in the target relationship network other than the target user, and the similarity between the identity information of other users and the identity information of the target user is greater than or equal to a similarity threshold; a first determination unit, configured to determine the nodes corresponding to other users in the target relationship network as target nodes, and determine the recommended nodes connected to the target nodes in the target relationship network by edges, obtaining a set of recommended nodes, wherein the recommended nodes are nodes representing models or data tables visited by other users; a second determination unit, configured to determine the node importance evaluation value of each recommended node in the set of recommended nodes, and sort the models or data tables corresponding to all recommended nodes in descending order of importance evaluation values to obtain a target sequence; and a recommendation unit, configured to recommend models or data tables to the target user according to the order of the target sequence.
[0014] This application employs the following steps: obtaining the identity information of the target user to be recommended; determining other users from a target relationship network based on the identity information; the target relationship network consists of multiple nodes and multiple edges, each node representing one of the following objects: user, model, or data table; the edge between any two nodes is constructed by the interaction relationship between the objects represented by the nodes; other users are users in the target relationship network other than the target user, and the similarity between the identity information of other users and the identity information of the target user is greater than or equal to a similarity threshold; determining the nodes corresponding to other users in the target relationship network as target nodes, and determining the recommended nodes connected to the target nodes in the target relationship network through edges, obtaining a set of recommended nodes, where recommended nodes are nodes representing models or data tables visited by other users; determining the node importance evaluation value of each recommended node in the set of recommended nodes, and sorting all the models or data tables corresponding to the recommended nodes in descending order of importance evaluation values to obtain a target sequence; recommending models or data tables to the target user according to the order of the target sequence, thus solving the problem of low data accuracy in data analysts in related technologies. By constructing a target relationship network and recommending models and data to target users based on the target relationship network, the efficiency of data analysis is improved. Attached Figure Description
[0015] The accompanying drawings, which form part of this application, are used to provide a further understanding of this application. The illustrative embodiments and descriptions of this application are used to explain this application and do not constitute an undue limitation of this application. In the drawings:
[0016] Figure 1 This is a flowchart of a graph-based data recommendation method provided according to an embodiment of this application;
[0017] Figure 2 This is a flowchart of an optional graph-based data recommendation method provided according to an embodiment of this application;
[0018] Figure 3 This is a schematic diagram of a graph-based data recommendation device provided according to an embodiment of this application;
[0019] Figure 4 This is a schematic diagram of an electronic device provided according to an embodiment of this application. Detailed Implementation
[0020] It should be noted that, unless otherwise specified, the embodiments and features described in this application can be combined with each other. This application will now be described in detail with reference to the accompanying drawings and embodiments.
[0021] To enable those skilled in the art to better understand the present application, the technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present application, and not all embodiments. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative effort should fall within the scope of protection of the present application.
[0022] It should be noted that the terms "first," "second," etc., in the specification, claims, and accompanying drawings of this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate for the embodiments of this application described herein. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion; for example, a process, method, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.
[0023] 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 used for display, data used for analysis, etc.) involved in this disclosure are all information and data authorized by the user or fully authorized by all parties.
[0024] For ease of description, the following explains some of the nouns or terms used in the embodiments of this application:
[0025] BI stands for Business Intelligence. It refers to the use of modern data warehousing technology, online analytical processing technology, data mining, and data visualization technology to analyze data in order to realize business value.
[0026] Graph data: A graph is an important data structure consisting of nodes V (or vertices, entities) and edges E (i.e., relationships between individuals). A graph is typically represented as G(V, E). Typical examples of graph data include web page links, social networks, and product recommendations.
[0027] Graph computation: Graph computation is the process of using graphs as data models to represent and solve problems. Graph algorithms are used in graph computation.
[0028] The present invention will now be described in conjunction with preferred implementation steps. Figure 1 This is a flowchart of a graph-based data recommendation method provided according to an embodiment of this application, such as... Figure 1 As shown, the method includes the following steps:
[0029] Step S101: Obtain the identity information of the target user to be recommended, and determine other users from the target relationship network based on the identity information. The target relationship network consists of multiple nodes and multiple edges. Each node represents one of the following objects: user, model, and data table. The edge between any two nodes is constructed by the interaction relationship between the objects represented by the nodes. Other users are users in the target relationship network other than the target user. The similarity between the identity information of other users and the identity information of the target user is greater than or equal to the similarity threshold.
[0030] Specifically, the target user can be a data analyst. Their identity information can include their company ID, name, department, and company level. The target relationship network can be a network built upon all data analysts, models, data tables, and data operation records within the company. For example, each data analyst, each data table, and each model can be considered a node in the network. Interactions between these objects include data analysts accessing data tables or models, and models accessing data tables. Edges are connected between any two objects with interaction relationships to construct the target relationship network. To recommend models or data tables that the target user might use, other users with similar identity information can be identified, and recommendations can be made based on the models and data tables accessed by these other users.
[0031] Step S102: Determine the nodes corresponding to other users in the target relationship network as target nodes, and determine the recommended nodes connected to the target nodes in the target relationship network through edges, thereby obtaining a set of recommended nodes, where the recommended nodes are the nodes corresponding to the models or data tables that other users have visited.
[0032] Specifically, the target relationship network uses the relationship between nodes and edges to represent the data tables and models that other users have visited. Therefore, by determining the target nodes corresponding to other users, and taking the nodes corresponding to the data tables or models connected to the target nodes in the target relationship network as recommendation nodes, the data tables or models corresponding to the recommendation nodes are also the data tables or models that other users have visited.
[0033] Step S103: Determine the node importance evaluation value of each recommended node in the recommended node set, and sort the models or data tables corresponding to all recommended nodes in descending order of importance evaluation value to obtain the target sequence.
[0034] Specifically, the node importance assessment value can be calculated by comprehensively considering factors such as the degree, degree centrality, and relevance of the recommended nodes. The models or data tables corresponding to the recommended nodes are then sorted according to their importance assessment values to generate a recommendation list, or target sequence. The number and type of recommendations in the target sequence can be set according to user needs.
[0035] Step S104: Recommend the model or data table to the target user according to the order of the target sequence.
[0036] Specifically, the model or data table is presented to the target user in the order of the target sequence, for example, by providing a visual interface to facilitate user browsing and selection, and supporting grouped display, display by theme, etc.
[0037] The graph-based data recommendation method provided in this application obtains the identity information of the target user to be recommended, and determines other users from the target relationship network based on the identity information. The target relationship network consists of multiple nodes and multiple edges. Each node represents one of the following objects: user, model, and data table. The edge between any two nodes is constructed by the interaction relationship between the objects represented by the nodes. Other users are users in the target relationship network other than the target user, and the similarity between the identity information of other users and the identity information of the target user is greater than or equal to a similarity threshold. The nodes corresponding to other users in the target relationship network are determined as target nodes, and the recommended nodes connected to the target nodes in the target relationship network through edges are determined, resulting in a set of recommended nodes. The recommended nodes represent the models or data tables visited by other users. The importance evaluation value of each recommended node in the set of recommended nodes is determined, and the models or data tables corresponding to all recommended nodes are sorted in descending order of importance evaluation value to obtain a target sequence. The models or data tables are recommended to the target user according to the order of the target sequence, solving the problem of low data accuracy in data recommendations to data analysts in related technologies. By constructing a target relationship network, models and data are recommended to target users based on the target relationship network, thereby improving the efficiency of data analysis.
[0038] Other users are determined by the similarity of their identity information with that of the target user. Optionally, in the graph-based data recommendation method provided in this application embodiment, determining other users from the target relationship network based on identity information includes: obtaining the identity information of each user in the target relationship network; calculating the similarity between the identity information of each user and the identity information of the target user; and determining users whose similarity is greater than or equal to a similarity threshold as other users.
[0039] Specifically, similarity can be cosine similarity or Pearson correlation coefficient, etc. It involves calculating the similarity between the identity information of each user in the target relationship network and the identity information of the target user, and artificially setting a similarity threshold. Users with similarity greater than or equal to the similarity threshold are identified as other users. This embodiment obtains the data table or model used for recommendations to the target user by identifying other users.
[0040] For example, by calculating similarities between analysts, models, and tables, other users similar to the target user can be found, and then models and tables visited by those users can be recommended. Similarity can be calculated based on entity attributes such as the analyst's organization and level, the number of times a model has been used, the subject domain of a table, and relationships such as the tables and models visited.
[0041] The importance assessment value of a node is determined by degree, degree centrality assessment value, and relevance assessment value. Optionally, in the graph-based data recommendation method provided in this application embodiment, determining the importance assessment value of each recommended node includes: calculating the degree, degree centrality assessment value, and relevance assessment value of each recommended node in the target relationship network; determining the first weight of the degree, the second weight of the degree centrality assessment value, and the third weight of the relevance assessment value; and performing a weighted summation of the degree, degree centrality assessment value, and relevance assessment value based on the first weight, the second weight, and the third weight to obtain the importance assessment value of the recommended node.
[0042] Specifically, the degree of a recommended node in the target relationship network refers to the number of edges connected to it. The degree centrality evaluation value can be set based on the degree; a higher degree results in a higher degree centrality evaluation value, indicating greater importance of the recommended node in the target relationship network. The relevance evaluation value can be PageRank; if a model or data table is accessed by multiple analysts, it is likely an important model or data table worth recommending to other analysts. Therefore, by manually setting a first, second, and third weight, the degree, degree centrality evaluation value, and relevance evaluation value are weighted and summed based on these weights to obtain the node importance evaluation value for the recommended node. Data tables or models are then recommended to target users based on this node importance evaluation value. This embodiment analyzes the target relationship network by calculating the node importance evaluation value to determine the data tables and BI models to be recommended to the target users.
[0043] It's important to note that the basic idea of a vertex-centric graph computing model can be summarized as "thinking like a vertex." Implementing an algorithm on this model primarily involves creating a user-defined function that describes the behavior of the vertices during computation. For example, PageRank computation is abstracted into operations on each vertex and message communication between vertices. Each iteration of the computation calls the `VertexCompute` function once for each vertex. This allows calls to functions for different vertices to be executed in parallel, fully utilizing the characteristics of single-machine multi-core and cluster multi-machine architectures.
[0044] Before recommending data tables or models to target users, a target relationship network needs to be constructed. Optionally, in the graph computing-based data recommendation method provided in this application embodiment, before determining other users from the target relationship network based on identity information, the method further includes: obtaining data operation records of all users of the target organization; extracting the models called and data tables accessed by each user when processing business from the data operation records; and extracting the data tables called by each model; determining users, models, and data tables as nodes respectively; connecting edges between the node corresponding to the data table accessed by each user and the node corresponding to the user; connecting edges between the node corresponding to the model called by each user and the node corresponding to the user; and connecting edges between the node corresponding to the model and the node corresponding to the data table called by the model; and constructing a target relationship network based on the nodes and edges.
[0045] Specifically, before constructing the target relationship network, data collection is required, encompassing data assets, user behavior information, and user historical access data, i.e., data operation records. For example, data asset collection includes various internal company data assets such as database tables, data warehouses, datasets, and data streams. These data assets can originate from business systems, log systems, and external data interfaces. During data collection, relevant information about the data assets needs to be recorded, such as name, description, creation time, update time, data type, and data structure.
[0046] Behavioral information collection includes: gathering analyst user behavior information on the BI platform, such as query records, report viewing, and dashboard operations. This behavioral information helps understand user interests and needs, providing a basis for subsequent recommendations. Details such as the time, operation type, and target of the behavior information need to be recorded. Historical data collection includes: collecting past data analysis results, such as SQL query templates, fixed reports, and visualization dashboards. This historical data provides rich relational information for building knowledge graphs. Information such as the creation time, author, usage frequency, and associated data assets of historical data needs to be recorded. User information collection includes: collecting basic information about analyst users, such as role, department, responsibilities, and professional background. This information helps understand user needs and characteristics, supporting personalized recommendations.
[0047] After data collection, the collected data needs to be preprocessed to improve data quality and facilitate subsequent analysis. Preprocessing steps include: data cleaning, checking for missing values, outliers, and duplicates, and performing appropriate actions such as filling, deleting, or replacing them; data integration, combining data from different sources and formats into a unified data structure, such as a relational database or graph database. During integration, it is necessary to handle conflicts and inconsistencies between data. Data standardization, converting the data into a unified unit of measurement, data type, and encoding format to facilitate subsequent calculations and analysis.
[0048] After data collection and preprocessing, a target relationship network is constructed based on the collected data. This network comprises three types of entities: analysts, models, and tables, and three types of relationships between them: tables accessed by analysts, models accessed by analysts, and relationships between models and tables. Determining the nodes in the target relationship network, i.e., identifying the entities, includes, for example, the following: Analyst entity: Analyst ID, name, affiliation, and level. These attributes reflect the analyst's identity and professional capabilities, which are valuable for personalized recommendations and user segmentation. Model entity: Model ID and model name. These attributes describe the model's basic information, helping users understand and select models. Table entity: Table ID, name, and subject area. These attributes describe the table's content and business domain, providing guidance for data querying and analysis.
[0049] After identifying the nodes in the target relationship network, edges are constructed based on the interaction relationships between entities. These interaction relationships include, for example: Analyst-accessed table relationships: describing the relationship between analysts and the tables they access, including attributes such as the number of visits in the past month and the past year. These attributes reflect analysts' interests and needs, providing important information for recommendations. Analyst-accessed model relationships: describing the relationship between analysts and the models they access, including attributes such as the number of visits in the past month and the past year. These attributes reflect analysts' model usage and preferences, providing important information for recommendations. Model-table relationships: describing the relationship between models and tables. This relationship reflects the interrelationship between models and tables, aiding in the understanding and use of models.
[0050] When constructing target relationship networks, graph databases can be used to store and manage entities and relationships, such as Neo4j (a graph database) and JanusGraph (a graph database). Graph databases provide rich graph query and analysis capabilities, making it easy to manipulate and query target relationship networks. Constructing target relationship networks provides input for recommendation algorithms and supports data analysis and data visualization. By exploring and analyzing target relationship networks, we can understand the connections and patterns between data assets and BI models, improving the efficiency and quality of data analysis.
[0051] Optionally, in the graph-based data recommendation method provided in this application embodiment, before determining the node importance evaluation value of each recommended node in the recommended node set, the method further includes: determining the associated nodes that have edges with the recommended nodes, and determining the associated nodes as new recommended nodes; adding the new recommended nodes to the recommended node set to obtain an updated recommended node set; and performing the step of determining the node importance evaluation value of each recommended node in the recommended node set based on the updated recommended node set.
[0052] Specifically, besides recommending data tables or models to target users based on data tables or models accessed by other users, models or data tables can also be recommended to target users based on graph traversal calculations. Graph traversal can discover association patterns and paths in the target relationship network, providing a basis for data table or model recommendations. For example, if an analyst accesses a certain model, other models or tables associated with that model can be recommended; if an analyst accesses a certain table, models accessed by other analysts who have accessed that table can be recommended. That is, identifying associated nodes with edges to the recommended nodes, determining the associated nodes as new recommended nodes, and determining the recommendation list based on the updated set of recommended nodes. This embodiment recommends data tables or models to target users through associated nodes, providing target users with more choices and expanding the recommendation list.
[0053] It should be noted that graph algorithms based on target relationship networks can include similarity-based calculations, node importance-based calculations, and graph traversal-based calculations. These graph algorithms can be used individually or in combination. For example, candidate models and tables can be found first through similarity-based recommendations, and then further filtered and ranked using node importance and graph traversal. In practical applications, appropriate recommendation algorithms and parameters need to be selected and adjusted according to business requirements and data characteristics.
[0054] The target relationship network is updated in real time based on the actual access of target users to recommended models and data tables. Optionally, in the graph computing-based data recommendation method provided in this application embodiment, after recommending models or data tables to target users in the order of the target sequence, the method further includes: obtaining unrecommended models and unrecommended data tables accessed by the target users, wherein the unrecommended models and unrecommended data tables are models and data tables other than the target sequence; determining the nodes corresponding to the unrecommended models and the nodes corresponding to the unrecommended data tables as nodes to be processed; if the target relationship network contains nodes to be processed, connecting the nodes corresponding to the target users with the nodes to be processed; if the target relationship network does not contain nodes to be processed, adding the nodes to be processed to the target relationship network, and connecting the nodes corresponding to the target users with the nodes to be processed.
[0055] Specifically, the recommendation algorithm and knowledge graph are continuously optimized by collecting user feedback on the recommended target sequences. For example, after each target sequence is recommended to a user, the data tables and models actually accessed by the target user are obtained. If the model or data table actually accessed by the target user is not in the target sequence, the model is identified as a non-recommended model, and the data table is identified as a non-recommended data table. If the target relationship network contains nodes corresponding to the non-recommended model and non-recommended data table, the target relationship network is updated by connecting the node corresponding to the target user with the node to be processed. If the target relationship network does not contain nodes corresponding to the non-recommended model and non-recommended data table, the node to be processed needs to be added to the target relationship network first, and then the node corresponding to the target user needs to be connected with the node to be processed to update the target relationship network. By combining user feedback and updating the target relationship network in real time, the recommended models and data tables become more accurate and personalized.
[0056] Optionally, in the graph-based data recommendation method provided in this application embodiment, after recommending the model or data table to the target user in the order of the target sequence, the method further includes: obtaining the recommended model and recommended data table in the target sequence accessed by the target user; determining the position of the recommended model and recommended data table in the target sequence; updating the first weight of the degree, the second weight of the degree centrality evaluation value, and the third weight of the relevance evaluation value when the position is not within the preset position range in the target sequence; and performing the step of determining the node importance evaluation value of each recommended node based on the updated first weight, second weight, and third weight.
[0057] Specifically, in addition to updating the target relationship network based on unrecommended data tables and models, the node importance evaluation value can also be updated based on the recommendation order of models or data tables in the target sequence, thereby achieving more accurate recommendation of data tables or models. For example, if the data tables and models actually accessed by the target user are not within the top 30% of the target sequence, it indicates that the arrangement order of models and data tables in the target sequence recommended this time is not accurate enough. Therefore, the arrangement of the target sequence is updated by adjusting the calculation method of the node importance evaluation value. By updating the first weight of degree, the second weight of degree centrality evaluation value, and the third weight of relevance evaluation value, the node importance evaluation value of each model or data table is recalculated until the data tables and models actually accessed by the target user in the target sequence are within the top 30% of the target sequence.
[0058] According to another embodiment of this application, an optional graph-based data recommendation method is also provided. Figure 2 This is a flowchart of an optional graph-based data recommendation method provided according to embodiments of this application. For example... Figure 2 As shown, the method includes: first, data collection, covering various aspects such as data assets, user behavior information, user historical access data, and user identity information. After data collection, the collected data needs to be preprocessed to improve data quality and facilitate subsequent analysis. Preprocessing steps include: data cleaning, data integration, and data standardization. After data preprocessing, a knowledge graph is constructed based on the collected data. The construction steps include: entity construction, relationship construction, and graph construction.
[0059] After constructing the knowledge graph, the graph computation methods are determined. These methods mainly include: similarity-based computation, node importance-based computation, and graph traversal-based computation. These methods can be used individually or in combination. The graph computation methods generate a recommendation list for the target user, which is then displayed as the result. After displaying the result to the target user, user feedback is received, and the knowledge graph and graph computation methods are updated based on this feedback.
[0060] This embodiment employs an optional graph computing-based data recommendation method. By collecting user behavioral data and identity information, and utilizing graph data and graph computing technologies, it infers the user's areas of interest or professions, and automatically recommends relevant data assets and BI models based on the inference results. This helps users quickly find the resources they need, lowers the barrier to entry for users, improves the efficiency of using data analysis tools, and provides strong support for enterprise decision-making and development.
[0061] It should be noted that the steps shown in the flowchart in the accompanying drawings can be executed in a computer system such as a set of computer-executable instructions, and although a logical order is shown in the flowchart, in some cases the steps shown or described may be executed in a different order than that shown here.
[0062] This application also provides a graph-based computation data recommendation device. It should be noted that the graph-based computation data recommendation device of this application can be used to execute the graph-based computation data recommendation method provided in this application. The following describes the graph-based computation data recommendation device provided in this application.
[0063] Figure 3 This is a schematic diagram of a graph-based data recommendation device provided according to an embodiment of this application. For example... Figure 3 As shown, the device includes:
[0064] The first acquisition unit 10 is used to acquire the identity information of the target user to be recommended, and to determine other users from the target relationship network based on the identity information. The target relationship network consists of multiple nodes and multiple edges. Each node represents one of the following objects: user, model and data table. The edge between any two nodes is constructed by the interaction relationship between the objects represented by the nodes. Other users are users in the target relationship network other than the target user. The similarity between the identity information of other users and the identity information of the target user is greater than or equal to the similarity threshold.
[0065] The first determining unit 20 is used to determine the nodes corresponding to other users in the target relationship network as target nodes, and to determine the recommended nodes connected to the target nodes in the target relationship network through edges, thereby obtaining a set of recommended nodes, wherein the recommended nodes are nodes that represent the models or data tables visited by other users;
[0066] The second determining unit 30 is used to determine the node importance evaluation value of each recommended node in the recommended node set, and sort the models or data tables corresponding to all recommended nodes in descending order of importance evaluation values to obtain the target sequence.
[0067] Recommendation unit 40 is used to recommend models or data tables to target users in the order of the target sequence.
[0068] The graph-based data recommendation device provided in this application embodiment acquires the identity information of the target user to be recommended through a first acquisition unit 10, and determines other users from a target relationship network based on the identity information. The target relationship network consists of multiple nodes and multiple edges. Each node represents one of the following objects: user, model, and data table. The edge between any two nodes is constructed by the interaction relationship between the objects represented by the nodes. Other users are users in the target relationship network other than the target user, and the similarity between the identity information of other users and the identity information of the target user is greater than or equal to a similarity threshold. The first determination unit 20 determines the nodes corresponding to other users in the target relationship network as target nodes and determines the target relationship network. The target node in the network is connected to the recommended nodes through edges to obtain a set of recommended nodes, where the recommended nodes are nodes that represent the models or data tables visited by other users; the second determining unit 30 determines the node importance evaluation value of each recommended node in the set of recommended nodes, and sorts the models or data tables corresponding to all recommended nodes in descending order of importance evaluation value to obtain a target sequence; the recommending unit 40 recommends the models or data tables to the target users in the order of the target sequence, which solves the problem of low data accuracy recommended to data analysts in related technologies. By constructing a target relationship network, models and data are recommended to target users based on the target relationship network, thereby improving the efficiency of data analysis.
[0069] Optionally, in the graph-based data recommendation device provided in this application embodiment, the first acquisition unit 10 includes: an acquisition module for acquiring the identity information of each user in the target relationship network; a first calculation module for calculating the similarity between the identity information of each user and the identity information of the target user; and a first determination module for determining users with similarity greater than or equal to a similarity threshold as other users.
[0070] Optionally, in the graph-based data recommendation device provided in this application embodiment, the second determining unit 30 includes: a second calculation module, used to calculate the degree, degree centrality evaluation value, and relevance evaluation value of each recommended node in the target relationship network; a second determining module, used to determine the first weight of the degree, the second weight of the degree centrality evaluation value, and the third weight of the relevance evaluation value; and a summing module, used to perform weighted summation of the degree, degree centrality evaluation value, and relevance evaluation value based on the first weight, the second weight, and the third weight to obtain the node importance evaluation value of the recommended node.
[0071] Optionally, in the graph computing-based data recommendation device provided in this application embodiment, the device further includes: a second acquisition unit, configured to acquire data operation records of all users of the target organization, extract the models called and data tables accessed by each user when processing business from the data operation records, and extract the data tables called by each model; a third determination unit, configured to determine users, models, and data tables as nodes, connect edges between the node corresponding to the data table accessed by each user and the node corresponding to the user, connect edges between the node corresponding to the model called by each user and the node corresponding to the user, and connect edges between the node corresponding to the model and the node corresponding to the data table called by the model; and a construction unit, configured to construct a target relationship network based on nodes and edges.
[0072] Optionally, in the graph-based data recommendation device provided in this application embodiment, the device further includes: a fourth determining unit, used to determine associated nodes that have edges with the recommended nodes, and determine the associated nodes as new recommended nodes; a first adding unit, used to add the new recommended nodes to the recommended node set to obtain an updated recommended node set; and a first execution unit, used to perform the step of determining the node importance evaluation value of each recommended node in the recommended node set based on the updated recommended node set.
[0073] Optionally, in the graph-based data recommendation device provided in this application embodiment, the device further includes: a third acquisition unit, used to acquire unrecommended models and unrecommended data tables accessed by the target user, wherein the unrecommended models and unrecommended data tables are models and data tables other than the target sequence; a fifth determination unit, used to determine the nodes corresponding to the unrecommended models and the nodes corresponding to the unrecommended data tables as nodes to be processed, and, if the target relationship network contains nodes to be processed, to connect an edge between the node corresponding to the target user and the node to be processed; and a second addition unit, used to add the node to be processed to the target relationship network if the target relationship network does not contain nodes to be processed, and to connect an edge between the node corresponding to the target user and the node to be processed.
[0074] Optionally, in the graph-based data recommendation apparatus provided in this application embodiment, the apparatus further includes: a fourth acquisition unit, configured to acquire a recommendation model and a recommendation data table in a target sequence accessed by a target user; a sixth determination unit, configured to determine the position of the recommendation model and the recommendation data table in the target sequence; an update unit, configured to update the first weight of the degree, the second weight of the degree centrality evaluation value, and the third weight of the relevance evaluation value when the position does not belong to a preset position range in the target sequence; and a second execution unit, configured to execute the step of determining the node importance evaluation value of each recommendation node based on the updated first weight, second weight, and third weight.
[0075] The graph-based data recommendation device includes a processor and a memory. The first acquisition unit 10, the first determination unit 20, the second determination unit 30, and the recommendation unit 40 are all stored in the memory as program units. The processor executes the program units stored in the memory to achieve the corresponding functions.
[0076] The processor contains a kernel, which retrieves the corresponding program units from memory. One or more kernels can be configured, and data analysis efficiency can be improved by adjusting kernel parameters.
[0077] The memory may include non-permanent memory in computer-readable media, such as random access memory (RAM) and / or non-volatile memory, such as read-only memory (ROM) or flash RAM, and the memory includes at least one memory chip.
[0078] This invention provides a computer-readable storage medium storing a program that, when executed by a processor, implements a graph-based data recommendation method.
[0079] This invention provides a processor for running a program, wherein the program executes a graph-based data recommendation method during runtime.
[0080] Figure 4 This is a schematic diagram of an electronic device provided according to an embodiment of this application. For example... Figure 4 As shown, electronic device 401 includes a processor, a memory, and a program stored in the memory and executable on the processor. When the processor executes the program, it performs the following steps: obtaining the identity information of the target user to be recommended; determining other users from the target relationship network based on the identity information; wherein the target relationship network consists of multiple nodes and multiple edges, and each node represents one of the following objects: user, model, and data table; the edge between any two nodes is constructed by the interaction relationship between the objects represented by the nodes; other users are users in the target relationship network other than the target user, and the similarity between the identity information of other users and the identity information of the target user is greater than or equal to a similarity threshold; determining the nodes corresponding to other users in the target relationship network as target nodes, and determining the recommended nodes connected to the target nodes in the target relationship network by edges, thus obtaining a set of recommended nodes; wherein the recommended nodes are nodes representing the models or data tables visited by other users; determining the node importance evaluation value of each recommended node in the set of recommended nodes; sorting the models or data tables corresponding to all recommended nodes in descending order of importance evaluation value, thus obtaining a target sequence; and recommending the models or data tables to the target user according to the order of the target sequence. The device in this paper can be a server, PC, PAD, mobile phone, etc.
[0081] This application also provides a computer program product, which, when executed on a data processing device, is suitable for executing an initialization program with the following method steps: obtaining the identity information of the target user to be recommended; determining other users from a target relationship network based on the identity information, wherein the target relationship network consists of multiple nodes and multiple edges, each node representing one of the following objects: user, model, and data table; the edge between any two nodes is constructed by the interaction relationship between the objects represented by the nodes; other users are users in the target relationship network other than the target user; the similarity between the identity information of other users and the identity information of the target user is greater than or equal to a similarity threshold; determining the nodes corresponding to other users in the target relationship network as target nodes, and determining the recommended nodes connected to the target nodes in the target relationship network by edges, thereby obtaining a set of recommended nodes, wherein the recommended nodes are nodes representing models or data tables visited by other users; determining the node importance evaluation value of each recommended node in the set of recommended nodes; sorting the models or data tables corresponding to all recommended nodes in descending order of importance evaluation value, thereby obtaining a target sequence; and recommending the models or data tables to the target user according to the order of the target sequence.
[0082] Those skilled in the art will understand that embodiments of this application can be provided as methods, systems, or computer program products. Therefore, this application can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, this application can take the form of a computer program product embodied on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.
[0083] This application is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of this application. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, generate instructions for implementing the flowchart... Figure 1 One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.
[0084] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing device to function in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means, which are implemented in a process Figure 1One or more processes and / or boxes Figure 1 The function specified in one or more boxes.
[0085] These computer program instructions may also be loaded onto a computer or other programmable data processing equipment to cause a series of operational steps to be performed on the computer or other programmable equipment to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable equipment for implementing the process. Figure 1 One or more processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.
[0086] In a typical configuration, a computing device includes one or more processors (CPU), input / output interfaces, network interfaces, and memory.
[0087] Memory may include non-persistent memory in computer-readable media, such as random access memory (RAM) and / or non-volatile memory, such as read-only memory (ROM) or flash RAM. Memory is an example of computer-readable media.
[0088] Computer-readable media includes both permanent and non-permanent, removable and non-removable media that can store information using any method or technology. Information can be computer-readable instructions, data structures, modules of programs, or other data. Examples of computer storage media include, but are not limited to, phase-change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technologies, CD-ROM, digital versatile optical disc (DVD) or other optical storage, magnetic tape, magnetic magnetic disk storage or other magnetic storage devices, or any other non-transferable medium that can be used to store information accessible by a computing device. As defined herein, computer-readable media does not include transient computer-readable media, such as modulated data signals and carrier waves.
[0089] It should also be noted that the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such process, method, article, or apparatus. Unless otherwise specified, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes that element.
[0090] Those skilled in the art will understand that embodiments of this application can be provided as methods, systems, or computer program products. Therefore, this application can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, this application can take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.
[0091] The above are merely embodiments of this application and are not intended to limit the scope of this application. Various modifications and variations can be made to this application by those skilled in the art. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this application should be included within the scope of the claims of this application.
Claims
1. A data recommendation method based on graph computation, characterized in that, include: The process involves obtaining the identity information of the target user to be recommended, and determining other users from the target relationship network based on the identity information. The target relationship network consists of multiple nodes and multiple edges. Each node represents one of the following objects: user, model, and data table. The edge between any two nodes is constructed by the interaction relationship between the objects represented by the nodes. The other users are users in the target relationship network other than the target user. The similarity between the identity information of the other users and the identity information of the target user is greater than or equal to a similarity threshold. The nodes corresponding to other users in the target relationship network are identified as target nodes, and the recommended nodes connected to the target nodes in the target relationship network through edges are identified to obtain a set of recommended nodes, wherein the recommended nodes are nodes that represent the models or data tables visited by the other users; Determine the node importance evaluation value of each recommended node in the recommended node set, and sort the models or data tables corresponding to all recommended nodes in descending order of the importance evaluation values to obtain the target sequence; The model or data table is recommended to the target user in the order of the target sequence; The node importance evaluation value for each recommended node includes: Calculate the degree, degree centrality evaluation value, and relevance evaluation value of each recommended node in the target relationship network, wherein the degree represents the number of edges connected to the recommended node; Determine the first weight of the degree, the second weight of the degree centrality assessment value, and the third weight of the relevance assessment value; The degree, degree centrality evaluation value, and relevance evaluation value are weighted and summed based on the first weight, the second weight, and the third weight to obtain the node importance evaluation value of the recommended node. After recommending the model or data table to the target user in the order of the target sequence, the method further includes: Obtain the recommendation model and recommendation data table from the target sequence accessed by the target user; Determine the positions of the recommendation model and the recommendation data table within the target sequence; If the position does not belong to the preset position range in the target sequence, update the first weight of the degree, the second weight of the degree centrality evaluation value, and the third weight of the relevance evaluation value; Based on the updated first, second, and third weights, perform the step of determining the node importance evaluation value for each recommended node; Identifying other users from the target relationship network based on the aforementioned identity information includes: Obtain the identity information of each user in the target relationship network; Calculate the similarity between each user's identity information and the target user's identity information, wherein the similarity includes cosine similarity and Pearson correlation coefficient; Users with a similarity score greater than or equal to the similarity threshold are identified as the other users; After recommending the model or data table to the target user in the order of the target sequence, the method further includes: Obtain the unrecommended models and unrecommended data tables accessed by the target user, wherein the unrecommended models and unrecommended data tables are models and data tables other than the target sequence; Both the node corresponding to the unrecommended model and the node corresponding to the unrecommended data table are determined as nodes to be processed. If the target relationship network contains the nodes to be processed, an edge is connected between the node corresponding to the target user and the nodes to be processed. If the node to be processed is not included in the target relationship network, the node to be processed is added to the target relationship network, and an edge is connected between the node corresponding to the target user and the node to be processed.
2. The method according to claim 1, characterized in that, Before identifying other users from the target relationship network based on the identity information, the method further includes: Obtain the data operation records of all users of the target organization, extract the models called and data tables accessed by each user when processing business from the data operation records, and extract the data tables called by each model; Each user, model, and data table is defined as a node. An edge is connected between the node corresponding to the data table visited by each user and the node corresponding to the user. An edge is also connected between the node corresponding to the model called by each user and the node corresponding to the user. Finally, an edge is connected between the node corresponding to the model and the node corresponding to the data table called by the model. The target relationship network is constructed based on the nodes and the edges.
3. The method according to claim 1, characterized in that, Before determining the node importance evaluation value of each recommended node in the recommended node set, the method further includes: Identify the nodes that are associated with the recommended nodes and designate them as new recommended nodes; The new recommended node is added to the recommended node set to obtain the updated recommended node set. Based on the updated set of recommended nodes, perform the step of determining the node importance evaluation value for each recommended node in the set of recommended nodes.
4. A data recommendation device based on graph computation, characterized in that, include: The first acquisition unit is used to acquire the identity information of the target user to be recommended, and to determine other users from the target relationship network based on the identity information. The target relationship network consists of multiple nodes and multiple edges. Each node represents one of the following objects: user, model, and data table. The edge between any two nodes is constructed by the interaction relationship between the objects represented by the nodes. The other users are users in the target relationship network other than the target user. The similarity between the identity information of the other users and the identity information of the target user is greater than or equal to a similarity threshold. The first determining unit is used to determine the nodes corresponding to other users in the target relationship network as target nodes, and to determine the recommended nodes connected to the target nodes in the target relationship network through edges, thereby obtaining a set of recommended nodes, wherein the recommended nodes are nodes that represent the models or data tables visited by the other users; The second determining unit is used to determine the node importance evaluation value of each recommended node in the recommended node set, and sort the models or data tables corresponding to all recommended nodes in descending order of the importance evaluation values to obtain the target sequence. A recommendation unit is used to recommend models or data tables to the target user in the order of the target sequence; The second determining unit includes: a second calculation module, used to calculate the degree, degree centrality evaluation value, and relevance evaluation value of each recommended node in the target relationship network, wherein the degree represents the number of edges connected to the recommended node; a second determining module, used to determine a first weight for the degree, a second weight for the degree centrality evaluation value, and a third weight for the relevance evaluation value; and a summing module, used to perform a weighted summation of the degree, degree centrality evaluation value, and relevance evaluation value based on the first weight, the second weight, and the third weight to obtain the node importance evaluation value of the recommended node; The apparatus further includes: a fourth acquisition unit, configured to acquire a recommendation model and a recommendation data table in a target sequence accessed by a target user; a sixth determination unit, configured to determine the position of the recommendation model and the recommendation data table in the target sequence; an update unit, configured to update the first weight of the degree, the second weight of the degree centrality evaluation value, and the third weight of the relevance evaluation value when the position is not within a preset position range in the target sequence; and a second execution unit, configured to execute the step of determining the node importance evaluation value of each recommendation node based on the updated first weight, second weight, and third weight. The first acquisition unit includes: an acquisition module for acquiring the identity information of each user in the target relationship network; a first calculation module for calculating the similarity between the identity information of each user and the identity information of the target user, wherein the similarity includes cosine similarity and Pearson correlation coefficient; and a first determination module for determining users with similarity greater than or equal to a similarity threshold as other users. The third acquisition unit is used to acquire the unrecommended models and unrecommended data tables accessed by the target user, wherein the unrecommended models and unrecommended data tables are models and data tables other than the target sequence; the fifth determination unit is used to determine the nodes corresponding to the unrecommended models and the nodes corresponding to the unrecommended data tables as nodes to be processed, and if the target relationship network contains nodes to be processed, to connect the nodes to be processed between the nodes corresponding to the target user; the second addition unit is used to add the nodes to be processed to the target relationship network if the target relationship network does not contain nodes to be processed, and to connect the nodes to be processed between the nodes corresponding to the target user and the nodes to be processed.
5. A non-volatile storage medium, characterized in that, The non-volatile storage medium includes a stored program, wherein the program, when running, controls the device where the non-volatile storage medium is located to execute the data recommendation method based on graph computation as described in any one of claims 1 to 3.
6. An electronic device, characterized in that, It includes one or more processors and a memory, the memory being used to store one or more programs, wherein when the one or more programs are executed by the one or more processors, the one or more processors cause the one or more processors to implement the graph-based data recommendation method according to any one of claims 1 to 3.
Citation Information
Patent Citations
Dressing recommendation method and apparatus
CN107066628A
Data recommendation method and device, computer equipment and storage medium
CN111368205A
Recommendation method and device, simulation system, computer equipment and storage medium
CN114691991A