System menu recommendation method and device, electronic equipment, storage medium and computer program product
By calling graph convolutional networks and knowledge graph convolutional networks to process the knowledge graph, a system menu recommendation matrix is generated, which solves the problem of low accuracy of system menu recommendations in existing technologies, realizes accurate recommendations based on user needs, and improves user experience.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- CHINA MOBILE CHENGDU INFORMATION & TELECOMM TECH CO LTD
- Filing Date
- 2024-06-03
- Publication Date
- 2026-08-04
AI Technical Summary
Existing system menu recommendation methods based on user click frequency are not very accurate, resulting in a degraded user experience, and cannot recommend system functions that users need to use at different times.
The system calls a Graph Convolutional Network (GCN) to process the set knowledge graph, extracts the features of user usage time and function usage time, combines the Knowledge Graph Convolutional Network (KGCN) and user historical usage information to generate a system menu recommendation matrix, and displays the matching system menu in the system interface.
It improves the accuracy of system menu recommendations, enhances the user experience, and can display recommended system menus based on the tasks users need to handle at different times.
Smart Images

Figure CN121070221B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of artificial intelligence technology, and in particular to a method, apparatus, electronic device, storage medium, and computer program product for recommending system menus. Background Technology
[0002] In related technologies, all system menus are sorted based on the frequency of user clicks on system menus, so that recommended system menus can be given according to user habits. However, the accuracy of the recommendations is not high, which reduces the user experience. Summary of the Invention
[0003] To address the related technical issues, embodiments of this application provide a method, apparatus, electronic device, storage medium, and computer program product for recommending system menus.
[0004] The technical solution of this application embodiment is implemented as follows:
[0005] This application provides a method for recommending system menus, the method comprising:
[0006] A graph convolutional network (GCN) is invoked to process a given knowledge graph to obtain a first feature and a second feature. The given knowledge graph is constructed based on the system's business information, and the entities in the given knowledge graph include user entities and functional entities. The first feature is used to describe the time when users use the system, and the second feature is used to describe the time when the system's functions are used.
[0007] The first feature and the second feature are combined to obtain a first matrix, which is used to describe the user's preference for different functions at different times.
[0008] The first matrix, the set knowledge graph, and the user's historical usage information are processed by calling the Knowledge Graph Convolutional Network (KGCN) to obtain the second matrix. The second matrix represents one or more system menus that the user is recommended to use at different times, and the system menus correspond one-to-one with the functions of the system.
[0009] In response to a system access operation by a target user, obtain the target user's user identifier and system access time;
[0010] Based on the user identifier and system access time of the target user, a system menu sequence is determined from the second matrix, wherein the system menu sequence represents one or more system menus that match the target user;
[0011] The system menu sequence is displayed in the system interface.
[0012] In the above scheme, the step of calling the Graph Convolutional Network (GCN) to process the given knowledge graph to obtain the first feature and the second feature includes:
[0013] The GCN is invoked to process the first entity node of the defined knowledge graph to obtain a first feature; the first entity node represents the user entity of the defined knowledge graph.
[0014] The GCN is invoked to process the second entity node of the set knowledge graph to obtain the second feature; the second entity node represents the functional entity of the set knowledge graph.
[0015] The method in the above scheme further includes:
[0016] The data in the specified database and the specified documents are processed to obtain triplet information; both the data in the specified database and the specified documents include business information.
[0017] Based on the triple information, the specified knowledge graph is constructed.
[0018] In the above scheme, the process of processing the data in the designated database and the designated document to obtain triplet information includes:
[0019] Entity extraction processing is performed on the data in the specified database to obtain entity information;
[0020] The data in the database is processed to extract attributes, and the first attribute information is obtained.
[0021] The Conditional Random Field (CRF) model is invoked to extract attributes from the specified document to obtain the second attribute information;
[0022] The entity information is processed by using a convolutional neural network (CNN) to extract relation information.
[0023] The entity information, the first attribute information, the second attribute information, and the relationship information are subjected to knowledge fusion and knowledge processing to obtain triple information.
[0024] In the above scheme, constructing the specified knowledge graph based on the triple information includes:
[0025] The triplet information is stored in a graph database to obtain the set knowledge graph.
[0026] In the above scheme, the system interface includes an entry control and a menu display control;
[0027] Correspondingly, displaying the system menu sequence on the system interface includes:
[0028] An entry control is displayed on the system interface, wherein the content displayed by the entry control includes the number of system menus in the system menu sequence;
[0029] In response to the target user's click operation on the entry control, a menu display control pops up, and the content displayed by the menu display control includes the menu control corresponding to each system menu in the system menu sequence.
[0030] This application embodiment also provides a system menu recommendation device, including:
[0031] The first invocation unit is used to invoke GCN to process the set knowledge graph to obtain a first feature and a second feature; the set knowledge graph is constructed based on the system's business information, and the entities of the set knowledge graph include: user entities and functional entities; the first feature is used to describe the time when the user uses the system, and the second feature is used to describe the time when the system's functions are used;
[0032] A combination unit is used to combine the first feature and the second feature to obtain a first matrix, which is used to describe the user's preference for different functions at different times.
[0033] The second calling unit is used to call KGCN to process the first matrix, the set knowledge graph, and the user's historical usage information to obtain a second matrix. The second matrix represents one or more system menus that the user is recommended to use at different times, and the system menus correspond one-to-one with the functions of the system.
[0034] The acquisition unit is used to acquire the user identifier and system access time of the target user in response to the system access operation of the target user;
[0035] The determining unit is configured to determine a system menu sequence from the second matrix based on the user identifier and system access time of the target user, wherein the system menu sequence represents one or more system menus that match the target user;
[0036] The display unit is used to display the system menu sequence in the system interface.
[0037] This application also provides an electronic device, including:
[0038] A first processor and a first memory for storing computer programs capable of running on the processor.
[0039] Wherein, when the first processor is used to run the computer program, it executes the steps of any of the above methods.
[0040] This application also provides a storage medium storing a computer program thereon, which, when executed by a processor, implements the steps of any of the above methods.
[0041] This application also provides a computer program product, including a computer program that, when executed by a processor, implements the steps of any of the above methods.
[0042] In this embodiment, GCN is invoked to process a set knowledge graph to obtain a first feature describing the time when a user uses the system, and a second feature describing the time when system functions are used. The set knowledge graph is constructed based on the system's business information, and its entities include user entities and function entities. Then, the first and second features are combined to obtain a first matrix describing the user's preference for different functions at different times. Next, KGCN is invoked to process the first matrix, the set knowledge graph, and the user's historical usage information to obtain a second matrix, which represents one or more system menus recommended to the user at different times. Then, in response to a target user's system access operation, the target user's user identifier and system access time are obtained. Based on the target user's user identifier and system access time, a system menu sequence representing one or more system menus matching the target user is determined from the second matrix and displayed in the system interface. In this way, based on the business information in the constructed knowledge graph, it is possible to predict the functions that users need to use at different times to handle business, predict these functions as the functions that users prefer to use, and then combine the user's historical usage information with the constructed knowledge graph to determine the system menus that users are recommended to use at different times. When the target user visits the system, the recommended system menus are displayed on the system interface. Compared with related technologies, it can display the recommended system menus on the system interface based on the tasks that users need to handle at different times, which increases the accuracy of recommendations and improves the user experience. Attached Figure Description
[0043] Figure 1 A flowchart illustrating a system menu recommendation method provided in an embodiment of this application;
[0044] Figure 2 A schematic diagram of a system interface provided for an embodiment of this application;
[0045] Figure 3 A schematic diagram of another system interface provided in an embodiment of this application;
[0046] Figure 4 A flowchart illustrating a system menu recommendation method provided for an application embodiment of this application;
[0047] Figure 5 A schematic diagram of the structure of a system menu recommendation device provided in an embodiment of this application;
[0048] Figure 6 This is a schematic diagram of the hardware structure of an electronic device provided in an embodiment of this application. Detailed Implementation
[0049] With the development of information technology, more and more office tasks rely on information systems. These systems often have numerous functions, requiring users to invest considerable time and effort in learning and memorizing the locations of the system menus for different functions. One approach involves sorting all system menus based on user click frequency to provide recommended menus. However, this method relies solely on historical user data. Therefore, the accuracy of the recommendations decreases significantly when the user's tasks change, and it also fails to recommend system menus based on the user's needs at different times, thus degrading the user experience.
[0050] Based on this, in this embodiment, GCN is invoked to process the established knowledge graph to obtain a first feature describing the time when a user uses the system, and a second feature describing the time when the system's functions are used. The established knowledge graph is constructed based on the system's business information, and its entities include user entities and function entities. Then, the first and second features are combined to obtain a first matrix describing the user's preference for different functions at different times. Next, KGCN is invoked to process the first matrix, the established knowledge graph, and the user's historical usage information to obtain a second matrix, which represents one or more system menus recommended to the user at different times. Then, in response to a target user's system access operation, the target user's user identifier and system access time are obtained. Based on the target user's user identifier and system access time, a system menu sequence representing one or more system menus matching the target user is determined from the second matrix and displayed in the system interface. In this way, based on the business information in the constructed knowledge graph, it is possible to predict the functions that users need to use at different times to handle business, predict these functions as the functions that users prefer to use, and then combine the user's historical usage information with the constructed knowledge graph to determine the system menus that users are recommended to use at different times. When the target user visits the system, the recommended system menus are displayed on the system interface. Compared with related technologies, it can display the recommended system menus on the system interface based on the tasks that users need to handle at different times, which increases the accuracy of recommendations and improves the user experience.
[0051] Before further describing the specific implementation methods of this application, the concepts involved in the embodiments of this application will be explained:
[0052] Knowledge graphs are structured semantic knowledge bases used to describe concepts and their relationships in the physical world in symbolic form. Their basic building blocks are the "entity-relationship-entity" triple and the "entity-attribute-attribute value" triple. Entities are interconnected through relations to form a network of knowledge structures.
[0053] Entities are the most basic elements in a knowledge graph, corresponding to a semantic ontology. They refer to distinguishable and independently existing things, such as a user, a function, a project, or a role. In practical applications, entities can include various types. For example, a user-type entity can include "User A" or "User B," and a user-type entity can also be called a user entity.
[0054] Ontology: An abstract concept of an entity, such as "user", "project", "function" or "role". An entity is a concrete instance of an ontology.
[0055] Relationships: Relationships between corresponding semantic ontologies that connect entities. For example, the relationship between entity "User A" and entity "Function 1" could be "use", that is, User A uses Function 1.
[0056] Attributes: Describe the characteristics of a certain type of entity. For example, the attributes of a user entity may include "name". Attributes can be a type of relation.
[0057] Nodes: When a knowledge graph is represented using a graph-based data structure, the knowledge graph consists of nodes and edges, with each node representing an entity.
[0058] Edge: When a knowledge graph is represented using a graph-based data structure, each edge represents a relationship between entities.
[0059] The present application will now be described in further detail with reference to the accompanying drawings and embodiments.
[0060] This application provides a method for system menu recommendation, such as... Figure 1 As shown, the method includes:
[0061] Step 101: Call GCN to process the set knowledge graph to obtain the first feature and the second feature.
[0062] The knowledge graph is constructed based on the system's business information. The entities in the knowledge graph include: user entities and functional entities. The first feature is used to describe the time when the user uses the system, and the second feature is used to describe the time when the system's functions are used.
[0063] Here, "business" refers to the transactions that users need to handle. Users rely on the system when processing these transactions. Business information implicitly contains users' system usage needs, which can include when and what system functions are needed. Since the knowledge graph is built upon the system's business information, it is a structured description of that information, containing users' system usage needs. Specifically, business information can include user information, functional information, project information, and role information.
[0064] To address the technical challenges in related technologies and facilitate the identification of user usage needs for different system menus at different times from a defined knowledge graph, it is necessary to rationally model the defined knowledge graph. Specifically, this involves defining the entities, attributes, and relationships within the defined knowledge graph. Here, entities are defined as "user entities" and "functional entities."
[0065] The user entity represents a user of the system. The system menu recommendation method in this application embodiment is to recommend system menus to users of the system. Therefore, it is necessary to treat the user entity as an entity.
[0066] Functional entities represent the functions that the system can provide. Since the system menu is the entry point for users to use the functions provided by the system, it is necessary to treat functional entities as an entity.
[0067] In practical applications, to depict business information from more dimensions and to more accurately define the user needs reflected in the knowledge graph, entities can also be defined as: project entities and role entities.
[0068] Project entities represent the key business items of the system. Users in different projects use different functions. In order to clarify the differences in user functions, it is necessary to treat project entities as a single entity.
[0069] The role entity represents the role a user plays in different projects. Users with different roles use different functions. To further clarify the differences in the functions used by users, it is necessary to treat the project entity as an entity.
[0070] Taking the business information used to construct the knowledge graph from a project management system as an example, the users of the project management system can include users A, B, etc., and these users are used as user entities in the knowledge graph. The functions provided by the project management system can include: schedule management, financial management, resource management, and procurement management, etc. The schedule management function can provide sub-functions, such as: project initiation application, milestone plan, milestone approval, project completion application, milestone management, and daily report management, etc. All functions and sub-functions are used as functional entities in the knowledge graph. The projects of the project management system can include: Project 1, Project 2, etc., and these projects are used as project entities in the knowledge graph. The user roles of the project management system can include project managers, financial personnel, procurement personnel, implementation personnel, and development personnel, etc., and these roles are used as role entities in the knowledge graph.
[0071] Corresponding to the entity settings, the attributes of the knowledge graph are set to entity attributes, and the relationships of the knowledge graph are set to relationships between entities. For example, the attribute and relationship settings are shown in Table 1 and Table 2 below, respectively.
[0072] Table 1
[0073]
[0074] Table 2
[0075]
[0076]
[0077] Based on the above model definition, after constructing a set knowledge graph according to business information, the GCN is called to extract features from the set knowledge graph to obtain the first feature and the second feature. Specifically, the GCN can be called once to extract features from the set knowledge graph to obtain the first feature, and then called again to extract features from the set knowledge graph to obtain the second feature; or the GCN can be called once to obtain the second feature, and then called again to obtain the first feature; or two GCNs can be called simultaneously to obtain the first feature and the second feature respectively.
[0078] In one embodiment, the step of calling GCN to process the given knowledge graph to obtain a first feature and a second feature includes:
[0079] The GCN is invoked to process the first entity node of the defined knowledge graph to obtain a first feature; the first entity node corresponds to the user entity of the defined knowledge graph.
[0080] The GCN is invoked to process the second entity node of the set knowledge graph to obtain the second feature; the second entity node corresponds to the functional entity of the set knowledge graph.
[0081] Here, GCN is invoked to process the first entity node corresponding to the user entity, resulting in a first feature representing the user's characteristics. The content of this representation is controlled by the GCN network parameters and trained feature weights. This first feature describes the user's system usage time. For example, the user's system usage time may include: high-frequency dates, high-frequency times, high-frequency functions, and system usage duration. High-frequency dates represent dates where the number of times the user uses the system exceeds a first set threshold, and high-frequency times represent times where the number of times the user uses the system exceeds a second set threshold. GCN is then invoked to process the second entity node corresponding to the function entity, resulting in a second feature representing the function's characteristics. This second feature describes the time in which the system's functions are used. For example, the time in which the functions are used may include: the function's usage cycle and usage time.
[0082] In practical applications, in order to fully reference business information and improve the accuracy of feature extraction, GCN can be called first to process the first entity node and the second entity node to obtain the first feature, and then GCN can be called again to process the first entity node and the second entity node to obtain the second feature. The network parameters of GCN called in the two calls are different, and they have been trained separately and have different feature weights.
[0083] If the knowledge graph contains entities other than user entities and functional entities, GCN can learn more knowledge based on the relationships between other entities and the entities being processed during feature extraction, thereby improving the accuracy of feature extraction.
[0084] Step 102: Combine the first feature and the second feature to obtain a first matrix, which is used to describe the user's preference for different functions at different times.
[0085] Here, by combining the first and second features, the system's usage time is combined with the usage time of its functions to learn the underlying patterns among user, function, and time information hidden in the business information, resulting in the first matrix. For example, the combination processing can employ a matrix factorization (MF) algorithm.
[0086] In practical applications, the first matrix can be in the form of a rating matrix. The horizontal axis of the first matrix represents different users, such as User 1, User 2, etc., and the vertical axis represents different combinations of functions and times, such as Function A-Time 1, Function A-Time 2, Function B-Time 1, etc. The elements of the first matrix represent the rating values of each user for different functions at different times. The higher the rating value, the more likely the user corresponding to the horizontal axis is to need to use the function corresponding to the vertical axis at the time corresponding to the vertical axis. In other words, the elements in the first matrix predict the degree of user demand for different functions at different times. Understandably, the higher the degree of demand, the higher the degree of preference. Therefore, the first matrix can represent the degree of user preference for different functions at different times.
[0087] Step 103: Call KGCN to process the first matrix, the set knowledge graph, and the user's historical usage information to obtain a second matrix. The second matrix represents one or more system menus that the user is recommended to use at different times, and the system menus correspond one-to-one with the functions of the system.
[0088] Among them, user history usage information is statistical information on how users have used the system menu in the past. For example, it can be the statistics on the frequency of user clicks on different system menus in the past.
[0089] Here, the first matrix represents the user's preference for different functions at different times. KGCN, combined with the set knowledge graph, can determine the system menu corresponding to the user's preferred functions. The user's historical usage information can provide the user's usage habits of the system menu. When processing, KGCN combines the user's historical usage information with the first matrix and the set knowledge graph, so that the historical usage information and business information can jointly determine one or more system menus recommended for the user at different times, and output them as the second matrix.
[0090] After determining one or more system menus that a user is recommended to use at different times, it is also necessary to display the recommended system menus to the target user. Based on this, the system menu recommendation method provided in this application embodiment further includes:
[0091] Step 104: In response to the target user's system access operation, obtain the target user's user identifier and system access time.
[0092] Step 105: Based on the user identifier and system access time of the target user, determine the system menu sequence from the second matrix, wherein the system menu sequence represents one or more system menus that match the target user.
[0093] Step 106: Display the system menu sequence in the system interface.
[0094] In practical applications, when a target user accesses the system, they send an access request to the system's server through the system client. This request carries a user identifier and a time parameter. The user identifier distinguishes different users and can be a system-assigned user ID or a user's name, etc. The time parameter represents the target user's system access time. Since the time interval between the request reception and the target user's system access is very short, the request reception time can also be used to represent the target user's system access time.
[0095] After receiving an access request, the system server parses out the user identifier and the request sending time carried in the request, matches the user identifier with the set number of system menus recommended for use by the user at the time the request was sent, outputs the set number of system menus as a system menu sequence, and then returns the system menu sequence as the system access response to the system client.
[0096] After receiving the access request response, the system client renders the system menu sequence into the system interface and displays it to the target user.
[0097] In one embodiment, the system interface includes an entry control and a menu display control;
[0098] Correspondingly, displaying the system menu sequence on the system interface includes:
[0099] An entry control is displayed on the system interface, wherein the content displayed by the entry control includes the number of system menus in the system menu sequence;
[0100] In response to the target user's click operation on the entry control, a menu display control pops up, and the content displayed by the menu display control includes the menu control corresponding to each system menu in the system menu sequence.
[0101] For example, the system interface is as follows Figure 2 and Figure 3 As shown, the system function area is equivalent to an entry control, and the pop-up menu list area is equivalent to a menu display control. Both the entry control and the menu display control can be draggable floating windows. Specifically,
[0102] When the target user enters the system but has not yet made a menu selection, the system interface looks like this: Figure 2 As shown, after the target user clicks the entry control, a menu display control pops up on the system interface, and the system interface at this time looks like... Figure 3 As shown, each menu control is arranged in a list in the menu display control. The target user can click on any menu control according to their needs, and the system will jump to the system function page corresponding to the clicked menu control.
[0103] Here, the system interface is set up to include entry controls and menu display controls, so that target users can quickly view the recommended system menu after entering the system, and then select according to their own needs, which simplifies the access steps of the system menu and improves the user experience.
[0104] In this embodiment, based on business information in the constructed knowledge graph, the system can predict the functions that users need to use at different times to process business, predict these functions as the functions that users prefer to use, and then combine the user's historical usage information with the constructed knowledge graph to determine the system menus that the user is recommended to use at different times. When the target user accesses the system, the recommended system menus are displayed on the system interface. Compared with related technologies, this system can display the recommended system menus on the system interface based on the tasks that users need to process at different times, which increases the accuracy of the recommendations and improves the user experience.
[0105] Next, we will explain in detail how to construct a knowledge graph.
[0106] In one embodiment, the method further includes:
[0107] The data in the specified database and the specified documents are processed to obtain triplet information; both the data in the specified database and the specified documents include business information.
[0108] Based on the triple information, the specified knowledge graph is constructed.
[0109] Here, both the data in the database and the configuration documents are considered data sources for business information;
[0110] Specifically, the configuration database can be the system's business database, storing user information, functional information, and role information from the business information; the configuration document is unstructured text data, which can be a document that users need to refer to during business processing. For example, the configuration document can include project initiation documents, which record information such as key project time nodes, participants, budget amount, output results, and market targets; it can also include project management system documents, which record information such as milestone completion inspection time, time requirements for work hour reporting, reimbursement time, and output requirements; and it can also include manually compiled Excel files, which record business information missing from other configuration documents.
[0111] Here, the triplet information includes entity information, relation information, and attribute information. It is a collection of information after business information is organized according to the model definition of the set knowledge graph.
[0112] The data in the database and the documents in the database are processed to extract the triplet information, which is to say, the business information.
[0113] In one embodiment, processing the data in the designated database and the designated document to obtain triplet information includes:
[0114] Entity extraction processing is performed on the data in the specified database to obtain entity information;
[0115] The data in the database is processed to extract attributes, and the first attribute information is obtained.
[0116] The CRF model is invoked to perform attribute extraction processing on the specified document to obtain the second attribute information;
[0117] The CNN is invoked to perform relation extraction processing on the entity information to obtain relation information;
[0118] The entity information, the first attribute information, the second attribute information, and the relationship information are subjected to knowledge fusion and knowledge processing to obtain triple information.
[0119] The entity information includes: information related to user entities and functional entity information, and may also include information related to project entities and role entities; the first attribute information is attribute information stored in the set database, which may, for example, include the user's role attributes.
[0120] Here, the Kettle tool can be used to extract information from the data in the specified database to obtain entity information and first attribute information.
[0121] In addition to the first attribute information, some attributes need to be extracted from the configuration document. These attributes are the second attribute information, which may include, for example, the budget amount, key time nodes, etc. The process of extracting the second attribute information may include the following steps:
[0122] (1) Data preprocessing: Perform word segmentation, stop word removal and special symbol removal on the set document to obtain preprocessed text data; on the one hand, improve the classification effect in the attribute extraction process, and on the other hand, filter out irrelevant features, thereby improving the accuracy of attribute extraction; in addition, the preprocessing step can also convert the unstructured text form of the set document into a structured text form, so as to facilitate subsequent model processing.
[0123] (2) Feature extraction: Define a feature function to extract the characteristics of each position based on the features of the input sequence. These characteristics may include the word at the current position, the context before and after, etc. Here, the input sequence comes from the preprocessed text data obtained in step (1).
[0124] (3) Constructing a CRF model: Manually label the text data used for training, assign one or more attribute labels to these text data, for example, mark the project completion date as the corresponding project attribute label to form a training dataset; then use the training dataset to train the CRF model, and minimize the prediction error rate by optimizing the feature weights and model parameters.
[0125] (4) Attribute extraction: The pre-processed text data is labeled using the trained CRF model.
[0126] Identify attribute elements in the text and extract attribute information.
[0127] Here, the process of extracting relational information using CNNs may include the following steps:
[0128] (1) The words in the sentences contained in the given text are converted into word vectors through a pre-trained embedding layer.
[0129] (2) The entity words in the sentence and the context of the entity words in the sentence are used as word-level features. At the same time, sentence-level features are extracted by CNN. The obtained word-level features and sentence-level features are combined to generate the final feature vector representation.
[0130] (3) Input the feature vector into a fully connected neural network layer to classify the relationships expressed in the sentences and obtain the relationship information.
[0131] After extracting entity information, first attribute information, second attribute information, and relation information, based on the data pattern defined by the knowledge graph model, the extracted information is fused and processed to obtain triple information. Specifically, the knowledge fusion process involves: based on the similarity calculation results between entities, determining whether entities with the same name represent different meanings, and whether there are entities with different names but the same meaning in the entity information. Then, based on the judgment results, entity disambiguation and coreference resolution are performed to remove redundant and erroneous concepts from the entity information.
[0132] The knowledge processing method is as follows: based on relational information, reasoning is performed on the associations between entities and the associations between entity information and attribute information, and then triple information pairs are formed based on the reasoning results. The reasoning methods include logic-based reasoning and graph-based reasoning. During the reasoning process, the confidence of the association is measured and information with low confidence is discarded to ensure the information quality in the formed triple information pairs.
[0133] In one embodiment, constructing the defined knowledge graph based on the triple information includes:
[0134] The triplet information is stored in a graph database to obtain the set knowledge graph.
[0135] For example, the graph database can be the Neo4j graph database, and the project name, personnel name, function name, and role name in the entity information can be used as node identifiers to define the knowledge graph.
[0136] In this embodiment, the GCN is invoked to process the knowledge graph constructed based on business information to obtain a first feature and a second feature. The first feature and the second feature are then combined to determine the functions that the user needs to use to process business at different times. These functions are predicted as the functions that the user prefers to use. Then, the system menu recommended for the user at different times is determined by combining the user's historical usage information with the constructed knowledge graph. The knowledge graph is constructed based on business information in the configuration database and configuration documents. Compared with related technologies, it can make full use of business information and provide recommended system menus based on the transactions that the user needs to process at different times, thereby increasing the accuracy of the recommendations and improving the user experience.
[0137] The following provides an application example in conjunction with any of the above embodiments.
[0138] Figure 4 A flowchart illustrating a system menu recommendation method provided in an application embodiment of this application is given, as follows: Figure 4As shown, the main steps include:
[0139] Step 401: Knowledge graph modeling.
[0140] Specifically, a knowledge graph model is established based on the system's business information. The entities in the knowledge graph include user entities and functional entities.
[0141] Step 402: Knowledge graph information extraction.
[0142] The data in the specified database and the specified document are processed to obtain triplet information.
[0143] Step 403: Knowledge Graph Construction
[0144] Based on triple information, the specified knowledge graph is constructed.
[0145] Specifically, the triplet information is stored in the Neo4j graph database to obtain the set knowledge graph.
[0146] Step 404: Call GCN to extract the first and second features.
[0147] Specifically, the Graph Convolutional Network (GCN) is invoked to process the given knowledge graph to obtain a first feature and a second feature. The first feature is used to describe the time when the user uses the system, and the second feature is used to describe the time when the system's functions are used.
[0148] Step 405: Combine the first feature and the second feature to generate the first matrix.
[0149] The first matrix is used to describe the degree of user preference for system functions at different times.
[0150] Step 406: Call KGCN to generate the second matrix.
[0151] The second matrix represents one or more system menus that a user is recommended to use at different times, and each system menu corresponds one-to-one with a function of the system.
[0152] Step 407: Respond to the target user's system access operation and determine the system menu sequence.
[0153] Specifically, in response to a target user's system access operation, the user identifier and system access time of the target user are obtained. Then, based on the target user's user identifier and system access time, a system menu sequence is determined from a second matrix, the system menu sequence representing one or more system menus matching the target user.
[0154] Step 408: Display the system menu sequence on the system interface.
[0155] The system interface includes entry controls and menu display controls.
[0156] Specifically, an entry control is displayed on the system interface, wherein the content displayed by the entry control includes the number of system menus in the system menu sequence; then, in response to the target user's click operation on the entry control, a menu display control pops up, wherein the content displayed by the menu display control includes the menu control corresponding to each system menu in the system menu sequence.
[0157] In this embodiment, the GCN is invoked to process the knowledge graph constructed based on business information to obtain a first feature and a second feature. The first feature and the second feature are then combined to determine the functions that the user needs to use to process business at different times. These functions are predicted as the functions that the user prefers to use. Then, the system menu recommended for the user at different times is determined by combining the user's historical usage information with the constructed knowledge graph. When the target user accesses the system, the recommended system menu is displayed on the system interface. Compared with related technologies, this method can display the recommended system menu on the system interface according to the tasks that the user needs to process at different times, which increases the accuracy of the recommendation and improves the user experience.
[0158] Based on the embodiments of the system menu recommendation method described above, this application also provides a system menu recommendation apparatus, such as... Figure 5 As shown, the recommended devices in the system menu include:
[0159] The first calling unit 51 is used to call GCN to process the set knowledge graph to obtain a first feature and a second feature; the set knowledge graph is constructed based on the system's business information, and the entities of the set knowledge graph include: user entities and functional entities; the first feature is used to describe the time when the user uses the system, and the second feature is used to describe the time when the system's functions are used;
[0160] Combination unit 52 is used to combine the first feature and the second feature to obtain a first matrix, which is used to describe the user's preference for different functions at different times;
[0161] The second calling unit 53 is used to call KGCN to process the first matrix, the set knowledge graph and the user's historical usage information to obtain a second matrix. The second matrix represents one or more system menus that the user is recommended to use at different times, and the system menus correspond one-to-one with the functions of the system.
[0162] Acquisition unit 54 is used to acquire the user identifier and system access time of the target user in response to the system access operation of the target user;
[0163] The determining unit 55 is used to determine a system menu sequence from the second matrix based on the user identifier and system access time of the target user, wherein the system menu sequence represents one or more system menus that match the target user;
[0164] Display unit 56 is used to display the system menu sequence in the system interface.
[0165] In one embodiment, the first calling unit 51 calls GCN to process the set knowledge graph to obtain a first feature and a second feature, including:
[0166] The GCN is invoked to process the first entity node of the defined knowledge graph to obtain a first feature; the first entity node represents the user entity of the defined knowledge graph.
[0167] The GCN is invoked to process the second entity node of the set knowledge graph to obtain the second feature; the second entity node represents the functional entity of the set knowledge graph.
[0168] In one embodiment, the system menu recommendation device further includes: a construction unit; the construction unit is used for:
[0169] The data in the specified database and the specified documents are processed to obtain triplet information; both the data in the specified database and the specified documents include business information.
[0170] Based on the triple information, the specified knowledge graph is constructed.
[0171] In one embodiment, the construction unit processes data in a designated database and designated documents to obtain triplet information, including:
[0172] Entity extraction processing is performed on the data in the specified database to obtain entity information;
[0173] The data in the database is processed to extract attributes, and the first attribute information is obtained.
[0174] The CRF model is invoked to perform attribute extraction processing on the specified document to obtain the second attribute information;
[0175] The CNN is invoked to perform relation extraction processing on the entity information to obtain relation information;
[0176] The entity information, the first attribute information, the second attribute information, and the relationship information are subjected to knowledge fusion and knowledge processing to obtain triple information.
[0177] In one embodiment, the construction unit constructs the defined knowledge graph based on the triple information, including:
[0178] The triplet information is stored in a graph database to obtain the set knowledge graph.
[0179] In one embodiment, the system interface includes an entry control and a menu display control;
[0180] Correspondingly, the display unit displays the system menu sequence on the system interface, including:
[0181] An entry control is displayed on the system interface, wherein the content displayed by the entry control includes the number of system menus in the system menu sequence;
[0182] In response to the target user's click operation on the entry control, a menu display control pops up, and the content displayed by the menu display control includes the menu control corresponding to each system menu in the system menu sequence.
[0183] In practical applications, the first calling unit 51, the combination unit 52, the second calling unit 53, the acquisition unit 54, the determination unit 55, the display unit 56, and the construction unit can all be implemented by the processor in the recommended device of the system menu.
[0184] It should be noted that the system menu recommendation device provided in the above embodiments is only illustrated by the division of the above-described program modules. In practical applications, the above processing can be assigned to different program modules as needed, that is, the internal structure of the device can be divided into different program modules to complete all or part of the processing described above. Furthermore, the system menu recommendation device and the system menu recommendation method embodiments provided in the above embodiments belong to the same concept, and their specific implementation process can be found in the method embodiments, which will not be repeated here.
[0185] Based on the hardware implementation of the above program modules, and in order to implement the method of the embodiments of this application, this application also provides an electronic device, such as... Figure 6 As shown, the electronic device includes:
[0186] The first communication interface 1 is capable of exchanging information with other devices;
[0187] The first processor 2 is connected to the first communication interface 1 to enable information interaction with other devices and to execute the methods provided by one or more of the above-mentioned technical solutions when running a computer program. The computer program is stored in the first memory 3.
[0188] Specifically, the first processor 2 is used for:
[0189] The GCN is invoked to process the set knowledge graph to obtain a first feature and a second feature; the set knowledge graph is constructed based on the system's business information, and the entities of the set knowledge graph include: user entities and functional entities; the first feature is used to describe the time when the user uses the system, and the second feature is used to describe the time when the system's functions are used;
[0190] The first feature and the second feature are combined to obtain a first matrix, which is used to describe the user's preference for different functions at different times.
[0191] KGCN is invoked to process the first matrix, the set knowledge graph, and the user's historical usage information to obtain a second matrix. The second matrix represents one or more system menus that the user is recommended to use at different times, and the system menus correspond one-to-one with the functions of the system.
[0192] In response to a system access operation by a target user, obtain the target user's user identifier and system access time;
[0193] Based on the user identifier and system access time of the target user, a system menu sequence is determined from the second matrix, wherein the system menu sequence represents one or more system menus that match the target user;
[0194] The system menu sequence is displayed in the system interface.
[0195] In one embodiment, the first processor 2 calls GCN to process the set knowledge graph to obtain a first feature and a second feature, including:
[0196] The GCN is invoked to process the first entity node of the defined knowledge graph to obtain a first feature; the first entity node represents the user entity of the defined knowledge graph.
[0197] The GCN is invoked to process the second entity node of the set knowledge graph to obtain the second feature; the second entity node represents the functional entity of the set knowledge graph.
[0198] In one embodiment, the first processor 2 is further configured to process data in a specified database and specified documents to obtain triplet information; both the data in the specified database and the specified documents include business information.
[0199] Based on the triple information, the specified knowledge graph is constructed.
[0200] In one embodiment, the first processor 2 processes data in the designated database and designated documents to obtain triplet information, including:
[0201] Entity extraction processing is performed on the data in the specified database to obtain entity information;
[0202] The data in the database is processed to extract attributes, and the first attribute information is obtained.
[0203] The Conditional Random Field (CRF) model is invoked to perform attribute extraction processing on the specified document to obtain the second attribute information;
[0204] The convolutional neural network (CNN) is invoked to perform relation extraction processing on the entity information to obtain relation information;
[0205] The entity information, the first attribute information, the second attribute information, and the relationship information are subjected to knowledge fusion and knowledge processing to obtain triple information.
[0206] In one embodiment, the first processor 2 constructs the defined knowledge graph based on the triple information, including:
[0207] The triplet information is stored in a graph database to obtain the set knowledge graph.
[0208] In one embodiment, the system interface includes an entry control and a menu display control;
[0209] Correspondingly, the first processor 2 displays the system menu sequence on the system interface, including:
[0210] An entry control is displayed on the system interface, wherein the content displayed by the entry control includes the number of system menus in the system menu sequence;
[0211] In response to the target user's click operation on the entry control, a menu display control pops up, and the content displayed by the menu display control includes the menu control corresponding to each system menu in the system menu sequence.
[0212] It should be noted that the specific processing procedure of the first communication interface 1 can be understood by referring to the above method.
[0213] Of course, in practical applications, the various components in an electronic device are coupled together through bus system 4. It can be understood that bus system 4 is used to achieve communication and connection between these components. In addition to the data bus, bus system 4 also includes a power bus, a control bus, and a status signal bus. However, for clarity, in... Figure 6 The general will label all buses as Bus System 4.
[0214] The first memory 3 in this embodiment is used to store various types of data to support operation in the electronic device. Examples of such data include any computer program used to operate on the electronic device.
[0215] The methods disclosed in the embodiments of this application can be applied to the first processor 2, or implemented by the first processor 2. The first processor 2 may be an integrated circuit chip with signal processing capabilities. In the implementation process, each step of the above method can be completed by the integrated logic circuit of the hardware or by instructions in the form of software in the first processor 2. The first processor 2 may be a general-purpose processor, a DSP, or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The processor 2 can implement or execute the methods, steps and logic block diagrams disclosed in the embodiments of this application. The general-purpose processor may be a microprocessor or any conventional processor, etc. The steps of the methods disclosed in the embodiments of this application can be directly reflected as being executed by a hardware decoding processor, or being executed by a combination of hardware and software modules in the decoding processor. The software modules may be located in a storage medium, which is located in the first memory 3. The first processor 2 reads the information in the first memory 3 and completes the steps of the aforementioned method in combination with its hardware.
[0216] In an exemplary embodiment, the electronic device may be implemented by one or more ASICs, DSPs, PLDs, CPLDs, FPGAs, general-purpose processors, controllers, MCUs, microprocessors, or other electronic components to perform the aforementioned method.
[0217] It is understood that the first memory 3 in the embodiments of this application can be volatile memory or non-volatile memory, or both. The non-volatile memory can be read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), ferromagnetic random access memory (FRAM), flash memory, magnetic surface memory, optical disc, or compact disc read-only memory (CD-ROM); the magnetic surface memory can be disk storage or magnetic tape storage. The volatile memory can be random access memory (RAM), which is used as an external cache. By way of example, but not limitation, many forms of RAM are available, such as Static Random Access Memory (SRAM), Synchronous Static Random Access Memory (SSRAM), Dynamic Random Access Memory (DRAM), Synchronous Dynamic Random Access Memory (SDRAM), Double Data Rate Synchronous Dynamic Random Access Memory (DDRSDRAM), Enhanced Synchronous Dynamic Random Access Memory (ESDRAM), SyncLink Dynamic Random Access Memory (SLDRAM), and Direct Rambus Random Access Memory (DRRAM).The memories described in the embodiments of this application are intended to include, but are not limited to, these and any other suitable types of memories.
[0218] In an exemplary embodiment, this application also provides a storage medium, namely a computer storage medium, specifically a computer-readable storage medium, such as an electronic device including a computer program. The computer program can be executed by a first processor 2 of the electronic device to complete the steps described in the aforementioned method. The computer-readable storage medium may be a memory such as FRAM, ROM, PROM, EPROM, EEPROM, Flash Memory, magnetic surface memory, optical disc, or CD-ROM.
[0219] In an exemplary embodiment, this application also provides a computer program product, including a computer program that can be executed by a first processor 2 of an electronic device to perform the steps described in any of the foregoing methods.
[0220] It should be noted that terms such as "first" and "second" are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence.
[0221] In this document, the term "and / or" is merely a description of the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent three cases: A alone, A and B simultaneously, and B alone. Additionally, the term "one or more" in this document refers to any combination of at least two of any one or more elements from a set of A, B, and C. For example, including at least one of A, B, and C can represent including any one or more elements selected from the set of A, B, and C.
[0222] Furthermore, the technical solutions described in the embodiments of this application can be combined arbitrarily without conflict.
[0223] The above description is merely a preferred embodiment of this application and is not intended to limit the scope of protection of this application.
Claims
1. A method of recommending a system menu, characterized by, The method includes: A graph convolutional network (GCN) is invoked to process a defined knowledge graph, resulting in a first feature and a second feature. The defined knowledge graph is constructed based on the system's business information, and the entities in the defined knowledge graph include user entities and functional entities. The first feature describes the time when users use the system, and the second feature describes the time when the system's functions are used. The first feature and the second feature are combined to obtain a first matrix, which is used to describe the user's preference for different functions at different times. The Knowledge Graph Convolutional Network (KGCN) is invoked to process the first matrix, the set knowledge graph, and the user's historical usage information to obtain a second matrix. The second matrix represents one or more system menus that the user is recommended to use at different times, and the system menus correspond one-to-one with the functions of the system. In response to a system access operation by a target user, obtain the target user's user identifier and system access time; Based on the user identifier and system access time of the target user, a system menu sequence is determined from the second matrix, wherein the system menu sequence represents one or more system menus that match the target user; The system menu sequence is displayed in the system interface.
2. The method of claim 1, wherein, The graph convolutional network (GCN) is invoked to process the given knowledge graph to obtain a first feature and a second feature, including: The GCN is invoked to process the first entity node of the defined knowledge graph to obtain a first feature; the first entity node represents the user entity of the defined knowledge graph. The GCN is invoked to process the second entity node of the set knowledge graph to obtain the second feature; the second entity node represents the functional entity of the set knowledge graph.
3. The method of claim 1, wherein, The method further includes: The data in the specified database and the specified documents are processed to obtain triplet information; both the data in the specified database and the specified documents include business information. Based on the triple information, the specified knowledge graph is constructed.
4. The method of claim 3, wherein, The process of processing data in the specified database and specified documents to obtain triplet information includes: Entity extraction processing is performed on the data in the specified database to obtain entity information; The data in the database is processed to extract attributes, and the first attribute information is obtained. The Conditional Random Field (CRF) model is invoked to perform attribute extraction processing on the specified document to obtain the second attribute information; The convolutional neural network (CNN) is invoked to perform relation extraction processing on the entity information to obtain relation information; The entity information, the first attribute information, the second attribute information, and the relationship information are subjected to knowledge fusion and knowledge processing to obtain triple information.
5. The method of claim 3, wherein, The construction of the specified knowledge graph based on the triple information includes: The triplet information is stored in a graph database to obtain the set knowledge graph.
6. The method of claim 1, wherein, The system interface includes an entry control and a menu display control; Correspondingly, displaying the system menu sequence in the system interface includes: An entry control is displayed on the system interface, wherein the content displayed by the entry control includes the number of system menus in the system menu sequence; In response to the target user's click operation on the entry control, a menu display control pops up, and the content displayed by the menu display control includes the menu control corresponding to each system menu in the system menu sequence.
7. A system menu recommendation apparatus characterized by comprising: include: The first calling unit is used to call GCN to process the set knowledge graph and obtain the first feature and the second feature; The defined knowledge graph is constructed based on the system's business information. The entities in the defined knowledge graph include: user entities and functional entities; the first feature is used to describe the time when the user uses the system, and the second feature is used to describe the time when the system's functions are used. A combination unit is used to combine the first feature and the second feature to obtain a first matrix, which is used to describe the user's preference for different functions at different times. The second calling unit is used to call KGCN to process the first matrix, the set knowledge graph, and the user's historical usage information to obtain a second matrix. The second matrix represents one or more system menus that the user is recommended to use at different times, and the system menus correspond one-to-one with the functions of the system. The acquisition unit is used to acquire the user identifier and system access time of the target user in response to the system access operation of the target user; The determining unit is configured to determine a system menu sequence from the second matrix based on the user identifier and system access time of the target user, wherein the system menu sequence represents one or more system menus that match the target user; The display unit is used to display the system menu sequence in the system interface.
8. An electronic device, comprising: include: A first processor and a first memory for storing computer programs capable of running on the processor. Wherein, when the first processor is used to run the computer program, it performs the steps of the method according to any one of claims 1 to 6.
9. A storage medium having stored thereon a computer program, characterized in that When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 6.
10. A computer program product comprising a computer program, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 6.