Information recommendation method and device
By constructing a graph network and training a GCN model, high-scoring candidate interest information is filtered and recommended, thus solving the information cocoon effect in the recommendation system, achieving more comprehensive information recommendation, and enhancing information diversity and accuracy.
Patent Information
- Application Number
- CN202310559628.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-05-17
- Publication Date
- 2026-02-27
- Estimated Expiration
- 2043-05-17
AI Technical Summary
The information cocoon effect exists in recommendation systems, where users become so engrossed in information that interests them that they ignore other potentially interesting information, leading to a narrow perspective.
By constructing a graph network and training a graph convolutional network (GCN) model, the vector representations of users, tags, and categories are determined. Candidate tags and categories that the target user is interested in are selected. The Thompson sampling method is used to determine the scores of the candidate interests, and information with scores higher than the threshold is recommended. The alpha and beta parameters are updated in combination with user interaction behavior to optimize information recommendation.
It improves the comprehensiveness and diversity of information recommendations, reduces the information cocoon effect, and ensures that the recommended information is more in line with users' diverse interests.
Smart Images

Figure CN117112919B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present disclosure relates to the technical field of computer, and particularly relates to an information recommendation method and device, and a computer storage medium. BACKGROUND
[0002] In the recommendation square, when a user generates a large number of behaviors on the same type of information (a point of interest), the recommendation system is more inclined to recommend the same type of information (a point of interest) to the user. This will lead to the information cocoon effect in the recommendation system. The information cocoon refers to the phenomenon that a user is immersed in the information that the user likes and is isolated from the information outside. SUMMARY
[0003] To solve the information cocoon effect in the recommendation system and avoid the user's narrow-mindedness due to the immersion in the information that the user is interested in and the neglect of other information that the user may be interested in, the present disclosure proposes a solution that can recommend more comprehensive information to the user and improve the comprehensiveness and diversity of information recommendation.
[0004] According to a first aspect of the present disclosure, an information recommendation method is provided, including: obtaining a plurality of users and at least one information with an existing operation behavior of the plurality of users in a historical time period separated from a current time by a specified time length; determining a label and a belonging category of each information; determining at least one candidate label and at least one candidate category corresponding to a target user in the plurality of users from the label and the category as a plurality of candidate interests, wherein the plurality of candidate interests include the label and the belonging category of the information without the existing operation behavior of the target user in the historical time period; determining a score of each candidate interest in response to an operation of the target user requesting information, wherein the score represents a degree of interest of the target user in the each candidate interest; selecting a candidate interest with a score greater than a score threshold as a target interest of the target user; and recommending at least one information corresponding to the target interest to the target user.
[0005] In some embodiments, determining the score of each candidate interest includes: determining the score of the each candidate interest according to an alpha parameter and a beta parameter of a beta distribution corresponding to the each candidate interest by using the Thompson sampling method.
[0006] In some embodiments, the information recommendation method further comprises: updating the alpha parameter and the beta parameter corresponding to the target interest corresponding to the target information according to a case that the target user views the target information and a case that the target user has interactive behavior for the target information; and in response to an operation that the target user requests information again, repeating the steps of determining the score of each candidate interest, selecting the candidate interest with the score greater than the score threshold, and recommending the target information corresponding to the target interest to the target user according to the updated alpha parameter and the updated beta parameter.
[0007] In some embodiments, updating the alpha parameter and the beta parameter corresponding to the target interest corresponding to the target information comprises: in a case that the target user views the target information and the target user has interactive behavior for the target information, increasing the alpha parameter corresponding to the target interest corresponding to the target information by a specified value; and in a case that the target user views the target information but the target user does not have interactive behavior for the target information, increasing the beta parameter corresponding to the target interest corresponding to the target information by a specified value.
[0008] In some embodiments, determining at least one candidate label and at least one candidate category corresponding to a target user in the plurality of users from the labels and the categories comprises: determining a vector representation of each user, a vector representation of a label of each piece of information, and a vector representation of a category to which each piece of information belongs; selecting a user, a label, and a category whose vector representation has a similarity greater than a similarity threshold with the vector representation of the target user as a reference user, a reference label, and a reference category; obtaining, from the labels and the categories, a category and a label for which the reference user has interactive behavior between the historical time period and the target user as the reference label and the reference category; and filtering, from the reference label and the reference category, a label and a category to which information for which the target user has operation behavior within the historical time period belongs to obtain the at least one candidate label and the at least one candidate category.
[0009] In some embodiments, determining a vector representation of each user, a vector representation of a label of each piece of information, and a vector representation of a category to which each piece of information belongs comprises: constructing a graph network, the graph network comprising user nodes, label nodes, category nodes, and unidirectional edges between user nodes and label nodes, unidirectional edges between user nodes and category nodes, or unidirectional edges or bidirectional edges between different user nodes; and training a graph convolution network (GCN) model according to the graph network to obtain the vector representation of each user, the vector representation of the label of each piece of information, and the vector representation of the category to which each piece of information belongs.
[0010] In some embodiments, training the graph convolutional network (GCN) model according to the graph network comprises: performing data cleaning on the graph network; and training the GCN model according to the data cleaned graph network.
[0011] In some embodiments, the data cleaning on the graph network comprises: deleting a user node corresponding to a user whose number of operation behaviors on information is less than a first behavior quantity threshold; and / or deleting a user node corresponding to a user whose number of operation behaviors on information is greater than a second behavior quantity threshold, wherein the second behavior quantity threshold is greater than the first behavior quantity threshold.
[0012] In some embodiments, the data cleaning on the graph network comprises: deleting a label node corresponding to a specified percentage of labels whose number of operation behaviors corresponding to the labels is in a lower rank; and / or deleting a label node whose percentage of covered users is greater than a percentage threshold.
[0013] In some embodiments, the data cleaning on the graph network comprises: deleting a category node whose percentage of covered users is greater than the percentage threshold.
[0014] In some embodiments, the data cleaning on the graph network comprises: in a case where a number of edges starting from a user node is greater than an edge quantity threshold, deleting the edges starting from the user node in a random sampling manner so that a number of the deleted edges starting from the user node is less than or equal to the edge quantity threshold.
[0015] In some embodiments, the GCN model comprises a GraphSAGE model.
[0016] In some embodiments, selecting, as the reference user, the reference label, and the reference category, the user, the label, and the category whose similarity between the vector representation and the vector representation of the target user is greater than a similarity threshold comprises: constructing a vector index service based on the vector representation of the plurality of users, the vector representation of the label of the at least one piece of information, and the vector representation of the category to which the at least one piece of information belongs, respectively, to obtain a user vector index service, a label vector index service, and a category vector index service; selecting, as the reference user, the user whose similarity between the vector representation and the vector representation of the target user is greater than the similarity threshold based on the user vector index service; selecting, as the reference label, the label whose similarity between the vector representation and the vector representation of the target user is greater than the similarity threshold based on the label vector index service; and selecting, as the reference category, the category whose similarity between the vector representation and the vector representation of the target user is greater than the similarity threshold based on the category vector index service.
[0017] In some embodiments, recommending, for the target user, at least one piece of information corresponding to the target interest comprises: determining, as target information corresponding to the target interest, at least one piece of information corresponding to the target interest that is closest to the current time; and recommending, for the target user, the target information corresponding to the target interest.
[0018] In some embodiments, determining, as target information corresponding to the target interest, at least one piece of information corresponding to the target interest that is closest to the current time comprises: performing reverse sorting on information corresponding to the target interest in chronological order of time stamps of the information corresponding to the target interest; and determining, as target information corresponding to the target interest, at least one piece of information corresponding to the target interest that is closest to the current time according to a result of the reverse sorting.
[0019] According to a second aspect of the present disclosure, an information recommendation apparatus is provided, comprising: an acquisition module configured to acquire at least one piece of information of a plurality of users and their existence operation behaviors in a historical time period that is a specified time length away from a current time; a first determination module configured to determine a label and a category of each piece of information; a second determination module configured to determine, from the label and the category, at least one candidate label and at least one candidate category corresponding to a target user in the plurality of users as a plurality of candidate interests, wherein the plurality of candidate interests comprise labels and categories of information for which the target user does not exist in the historical time period; a third determination module configured to determine a score of each candidate interest in response to an operation of the target user requesting information, wherein the score represents a degree of interest of the target user in the each candidate interest; a selection module configured to select a candidate interest with a score greater than a score threshold as a target interest of the target user; and a recommendation module configured to recommend, for the target user, at least one piece of information corresponding to the target interest.
[0020] According to a third aspect of the present disclosure, an information recommendation apparatus is provided, comprising: a memory; and a processor coupled to the memory, the processor being configured to execute an information recommendation method according to any of the above embodiments based on instructions stored in the memory.
[0021] According to a fourth aspect of the present disclosure, a computer storage medium is provided, having computer program instructions stored thereon, the instructions being executed by a processor to implement an information recommendation method according to any of the above embodiments.
[0022] In the above embodiments, more comprehensive information can be recommended for a user, improving the comprehensiveness and diversity of information recommendation. BRIEF DESCRIPTION OF DRAWINGS
[0023] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments of the present disclosure and, together with the description, serve to explain the principles of the present disclosure.
[0024] The present disclosure can be more clearly understood and appreciated from the following detailed description, taken in conjunction with the following drawings of which:
[0025] Figure 1 is a flowchart illustrating an information recommendation method according to some embodiments of the present disclosure;
[0026] Figure 2 is a schematic diagram illustrating a graph network according to some embodiments of the present disclosure;
[0027] Figure 3 is a schematic diagram illustrating an aggregation process of a GraphSAGE model according to some embodiments of the present disclosure;
[0028] Figure 4 is a block diagram illustrating an information recommendation apparatus according to some embodiments of the present disclosure;
[0029] Figure 5 is a block diagram illustrating an information recommendation apparatus according to some other embodiments of the present disclosure;
[0030] Figure 6 is a block diagram illustrating a computer system for implementing some embodiments of the present disclosure. DETAILED DESCRIPTION
[0031] Various exemplary embodiments of the present disclosure will now be described in detail with reference to the accompanying drawings. It should be noted that the relative arrangement of the components and steps set forth in the embodiments, numerical expressions, and numerical values are not limiting to the scope of the present disclosure unless specifically stated otherwise.
[0032] Meanwhile, it should be understood that the sizes of the respective portions shown in the drawings are not drawn in actual proportional relationships for the convenience of description.
[0033] The following description of at least one exemplary embodiment is merely illustrative in nature and is in no way limiting to the scope of the present disclosure and its applications or uses.
[0034] Techniques, methods, and devices known to those of ordinary skill in the relevant art can not be discussed in detail herein. However, where appropriate, such techniques, methods, and devices can be viewed as part of the specification.
[0035] In all of the examples shown and discussed herein, any specific values should be interpreted as merely illustrative and not as a limitation. Thus, other examples of exemplary embodiments can have different values.
[0036] It should be noted that like reference numerals and characters refer to like elements throughout the following description and the claims attached hereto. Therefore, once a term is defined in one drawing figure, it is not necessary to discuss it further in connection with other drawing figures.
[0037] Figure 1 is a flowchart illustrating an information recommendation method according to some embodiments of the present disclosure.
[0038] As shown in Figure 1 , the information recommendation method includes steps S110-S160. In some embodiments, the information recommendation method is performed by an information recommendation device.
[0039] In step S110, at least one piece of information of a plurality of users and their presence operation behaviors in a historical time period apart from a current time by a specified time length is acquired. In some embodiments, the historical time period apart from the current time by the specified time length includes the nearest one month to the current time, and the plurality of users are active users in the nearest one month to the current time.
[0040] In some embodiments, the operation behaviors include at least one of liking, commenting, sharing, collecting, and picture clicking.
[0041] In some embodiments, the information includes but is not limited to posts of a social platform.
[0042] In step S120, the label of each piece of information and the category to which it belongs are determined. Taking the information as a post for example, the label is the tag label of the post, and the category is the category to which the post belongs. The label of the post includes, for example, "# fashion sharing", "# Shanghai", etc. The category to which the post belongs includes, for example, cute pets, two-dimensional, landscape photography, etc. In some embodiments, the label and the category to which each piece of information belongs are extracted from each piece of information.
[0043] In step S130, at least one candidate label and at least one candidate category corresponding to a target user in the plurality of users are determined from the labels and the categories as a plurality of candidate interests. The plurality of candidate interests include the label and the category of the information in which the target user does not have operation behaviors or interaction behaviors in the historical time period. In some embodiments, the plurality of candidate interests do not include the label and the category of the information in which the target user has operation behaviors or interaction behaviors in the historical time period.
[0044] In some embodiments, the determination of at least one candidate label and at least one candidate category corresponding to a target user in the plurality of users from the labels and the categories can be achieved by the following steps 1)-4).
[0045] In step 1), the vector representation of each user, the vector representation of the label of each piece of information, and the vector representation of the category to which each piece of information belongs are determined.
[0046] In some embodiments, the vector representation of each user, the vector representation of each label of information, and the vector representation of each category to which each piece of information belongs can be determined in the following way.
[0047] First, a graph network is constructed, which includes user nodes, label nodes, category nodes, and unidirectional edges between user nodes and label nodes, unidirectional edges between user nodes and category nodes, or unidirectional or bidirectional edges between different user nodes. The user nodes are used to represent users, the label nodes are used to represent labels, and the category nodes are used to represent categories. The multiple behaviors (liking, commenting, sharing, collecting, picture clicking) of users on information are used as edges between user nodes and label nodes and edges between user nodes and category nodes. The multiple behaviors (private chatting, following, avatar clicking) between users are used as edges between user nodes.
[0048] Figure 2 is a schematic diagram showing a graph network according to some embodiments of the present disclosure.
[0049] As shown in Figure 2 , the graph network includes user nodes representing users 1, 2, 3, and 4, label nodes representing labels "#Fashion Share" and "#Shanghai", and category nodes representing categories "Cute Pets", "2D", and "Landscape Photography". In addition, the graph network also includes a unidirectional edge that user 1 follows user 2, a unidirectional edge that user 1 follows the label "#Shanghai", a unidirectional edge that user 1 privately chats with user 4, a unidirectional edge that user 2 likes the label "#Shanghai", a unidirectional edge that user 2 clicks the avatar of user 3, a unidirectional edge that user 2 comments on the category "Landscape Photography", a unidirectional edge that user 3 shares the category "Landscape Photography", a unidirectional edge that user 3 clicks the picture of the label "#Fashion Share", a unidirectional edge that user 3 follows the category "Cute Pets", a unidirectional edge that user 3 collects the category "2D", a unidirectional edge that user 4 comments on the label "#Fashion Share", and a unidirectional edge that user 4 follows the category "Cute Pets".
[0050] In some embodiments, data cleaning of the graph network includes deleting user nodes corresponding to users whose number of operation behaviors on information is less than a first behavior quantity threshold, and / or deleting user nodes corresponding to users whose number of operation behaviors on information is greater than a second behavior quantity threshold, where the second behavior quantity threshold is greater than the first behavior quantity threshold.
[0051] In some embodiments, data cleaning of the graph network includes deleting label nodes corresponding to a specified percentage (e.g., 20%) of labels whose number of operation behaviors corresponding to the labels is ranked last, and / or deleting label nodes whose percentage of covering users is greater than a percentage threshold.
[0052] In some embodiments, the data cleaning of the graph network comprises: deleting a category node whose percentage of covering users is greater than the percentage threshold.
[0053] In some embodiments, the data cleaning of the graph network comprises: in a case where the number of edges starting from a user node is greater than an edge number threshold, deleting the edges starting from the user node in a random sampling manner so that the number of edges starting from the user node after the deletion is less than or equal to the edge number threshold (for example, 5000).
[0054] In the above embodiments, the process of data cleaning of the graph network can be divided into point filtering and edge filtering. In the point filtering process, for a user node, the user node with no or less behavior (the number of behaviors in a month is less than 5 times) is removed, and the user node with obviously high heat (the number of behaviors in a month is higher than 5000 times, i.e., a robot cheating user) is removed; for a label node, the label node with less behavior (the last 20% is removed after sorting according to the number of behaviors) is filtered, and the popular node is filtered (the nodes covering 80% of users are filtered); for a category node, the popular node is filtered (the nodes covering 80% of users are filtered). The behavior between users is represented as a bidirectional edge between user nodes, and the edge between a user node and a label node or a category node is a unidirectional edge. In the edge filtering process, if the number of edges going out from a user node is greater than 5000, the edges are pruned. For example, 5000 edges are reserved in a random sampling manner.
[0055] Then, according to the graph network, a GCN (Graph Convolutional Network) model is trained to obtain a vector representation of each user, a vector representation of a label of each information, and a vector representation of a category to which each information belongs. The vector representation obtained by training the GCN model has been normalized. The training process of the GCN model is offline training. For example, the graph network and the GCN model are updated on a daily basis, so that each vector representation can also be updated on a daily basis. For example, the update is performed once every 1-2 days.
[0056] In some embodiments, after the data cleaning of the graph network, the GCN model can be trained according to the graph network after the data cleaning. For example, the GCN model comprises a GraphSAGE (Graph Sample and aggregate) model.
[0057] In the following, the GraphSAGE model will be taken as an example to describe the process of determining the vector representation of a target node in combination with Figure 3 The process of determining the vector representation of a target node will be described in detail.
[0058] Figure 3This is a schematic diagram illustrating the aggregation process of a GraphSAGE model according to some embodiments of the present disclosure.
[0059] First, random sampling is performed on the neighbors, with the number of neighbors sampled in each hop not exceeding S. k One. Reference Figure 3 In (a), the first hop (k=1) collects 3 neighbors, and the second hop (k=2) collects 5 neighbors.
[0060] Then, the vector representation (embedding) of the target node is generated. (See reference...) Figure 3 In (b), the features of two-hop neighbors are first aggregated to generate the vector representation of one-hop neighbors, and then the vector representations of one-hop neighbors are aggregated to generate the vector representation of the target node.
[0061] Finally, the vector representation of the target node is input into the fully connected network to obtain the predicted value of the target node. This process can be referenced... Figure 3 In step (c), the accuracy of the target node's vector representation can be determined by comparing it with the label information. Since the aggregation process is existing technology, it will not be elaborated upon here.
[0062] In step 2), users, tags, and categories whose similarity to the vector representation of the target user is greater than a similarity threshold are selected as reference users, reference tags, and reference categories.
[0063] In some embodiments, users, tags, and categories whose similarity to the vector representation of the target user is greater than a similarity threshold can be selected as reference users, reference tags, and reference categories in the following manner.
[0064] First, vector index services are constructed for the vector representations of the multiple users, the vector representation of the tag of the at least one piece of information, and the vector representation of the category to which the at least one piece of information belongs, respectively, to obtain user vector index service, tag vector index service, and category vector index service.
[0065] In some embodiments, the vector representations of multiple users, the vector representation of the tag of the at least one piece of information, and the vector representation of the category to which the at least one piece of information belongs are first stored in a Redis in-memory database. Then, a vector index service is built based on the vector representations in the Redis in-memory database.
[0066] Secondly, based on the user vector index service, a user whose vector representation is similar to the vector representation of the target user by more than a similarity threshold is selected as a reference user. For example, by performing vector dot multiplication on the vector of the target user and the vectors of other users in the plurality of users, the top K similar users are sorted from large to small to obtain the reference users.
[0067] Then, based on the label vector index service, a label whose vector representation is similar to the vector representation of the target user by more than a similarity threshold is selected as a reference label. For example, by performing vector dot multiplication on the vector of the target user and the vectors of the labels, the top K categories that the target user is likely to be interested in are sorted from large to small to obtain the reference labels.
[0068] Finally, based on the category vector index service, a category whose vector representation is similar to the vector representation of the target user by more than a similarity threshold is selected as a reference category. For example, by performing vector dot multiplication on the vector of the target user and the vectors of the categories, the top K labels that the target user is likely to be interested in are sorted from large to small to obtain the reference labels.
[0069] In the above embodiment, the similarity thresholds used when selecting reference users, reference labels, and reference categories can be at least partially the same or completely different.
[0070] In step 3), from the labels and the categories, the categories and labels that the reference user has interactive behaviors with the target user in the historical time period are obtained as reference labels and reference categories. By borrowing the idea of collaborative filtering (CF), the categories and labels that similar users interact with are used as reference labels and reference categories that the target user is likely to be interested in, thereby improving the comprehensiveness, diversity, and accuracy of information recommendation.
[0071] In step 4), from the reference labels and the reference categories, the labels and the categories of the information that the target user has operation behaviors in the historical time period are filtered to obtain the at least one candidate label and the at least one candidate category.
[0072] In the above embodiment, by filtering candidate labels and candidate categories through similar users (i.e., reference users), candidate interests of the target user can be more accurately determined, thereby further improving the comprehensiveness, diversity, and accuracy of information recommendation.
[0073] In step S140, in response to the target user requesting information, a score of each candidate interest is determined. The score represents the degree of interest of the target user in the each candidate interest.
[0074] In some embodiments, the score of each candidate interest is determined according to the alpha (a) parameter and the beta (b) parameter of the beta distribution corresponding to the candidate interest, by using Thompson sampling. For example, the candidate interests include c1, c2 and c3, each of which has a respective alpha parameter and beta parameter according to the Thompson sampling, and three scores are obtained by beta sampling, each of which corresponds to a candidate interest.
[0075] In step S150, the candidate interest with a score greater than a score threshold is selected as the target interest of the target user. For example, the candidate interest with the highest score is selected as the expressed interest of the target user in the current request. The expressed interest is the information corresponding to the interest exposed to the user in the current request.
[0076] In step S160, at least one information corresponding to the target interest is recommended to the target user. In some embodiments, the target user can also be recommended other information in addition to the information corresponding to the target interest. For example, the other information is information whose number of operation behaviors of the target user in a historical time period exceeds a number threshold. Taking a post as an example, the process of recommending information to the target user is the process of showing the post to the target user.
[0077] In some embodiments, by using the information recommendation method of some embodiments of the present disclosure, at least one information in the set of information shown to the user is obtained by screening the candidate interest, thereby ensuring the diversity of information recommendation.
[0078] In some embodiments, at least one information corresponding to the target interest and closest to the current time is determined as the target information corresponding to the target interest, and the target information corresponding to the target interest is recommended to the target user. For example, the target information can be forced to be inserted into the exposure sequence of the target user to show the target information to the target user.
[0079] In some embodiments, the information corresponding to the target interest can be sorted in reverse order according to the time stamps of the information corresponding to the target interest, and at least one information corresponding to the target interest and closest to the current time is determined as the target information corresponding to the target interest according to the result of the reverse sorting. Taking a post as an example and a comic category as the target interest, the information corresponding to the target interest is arranged in order from near to far according to the post time, so as to realize the process of sorting the information corresponding to the target interest in reverse order.
[0080] In the above embodiments, when recommending information to a target user, the system filters out tags and categories corresponding to information in which the target user has not performed any actions within a certain historical period from the tags and categories corresponding to multiple user operations in the recommendation system. These are then used as candidate interests. By scoring the candidate interests to determine the target user's level of interest in each candidate interest, at least one piece of information corresponding to the candidate interest with a score greater than a score threshold is recommended to the user. This can recommend some information that the target user may be interested in, thereby reducing the occurrence of the information cocoon effect, recommending more comprehensive and diverse information to the user, and improving the comprehensiveness and diversity of information recommendations.
[0081] In some embodiments, the information recommendation method further includes: updating the alpha and beta parameters corresponding to the target interest associated with the target information based on the target user's viewing of the target information and the target user's interactive behavior with the target information; and, in response to the target user's subsequent request for information, repeatedly executing the steps of determining the score of each candidate interest, selecting candidate interests with scores greater than a score threshold, and recommending target information corresponding to the target interest to the target user based on the updated alpha and beta parameters. For example, interactive behaviors include, but are not limited to, liking, commenting, sharing, saving, private messaging, and following.
[0082] In some embodiments, when the target user views the target information and interacts with it, the alpha parameter corresponding to the target interest associated with the target information is incremented by a specified value. When the target user views the target information but does not interact with it, the beta parameter corresponding to the target interest associated with the target information is incremented by a specified value. For example, the specified value includes, but is not limited to, 1. If there is exposure and interaction, the alpha parameter is incremented by 1; if there is exposure but no interaction, the beta parameter is incremented by 1. Increasing the alpha parameter indicates a higher level of interest in the target interest, while increasing the beta parameter indicates a lower level of interest.
[0083] In some embodiments, the viewing status of target users on the target information (i.e., exposure data) and the interactive behavior of target users on the target information (i.e., interaction data) can be reported to the server for processing through client-side data tracking.
[0084] In the above embodiments, by constantly exposing target information to target users, and recycling the exposure data of the target users viewing the target information and the interaction data of the target users interacting with the target information, the alpha parameters and beta parameters are updated, the exposure probabilities of different interests are adjusted, the potential interests of the target users are constantly explored by MAB (Multi-armed bandit problem, K-armed bandit problem), so as to constantly improve the accuracy of providing potential interests for the target users, and improve the comprehensiveness, diversity and accuracy of information recommendation. In addition, by constantly exploring interests, the user can discover potential interest points, and the potential interest points can be changed into long-term interests.
[0085] Figure 4 is a block diagram illustrating an information recommendation apparatus according to some embodiments of the present disclosure.
[0086] As shown in Figure 4 , the information recommendation apparatus 4 comprises an acquisition module 41, a first determination module 42, a second determination module 43, a third determination module 44, a selection module 45 and a recommendation module 46.
[0087] The acquisition module 41 is configured to acquire at least one information of a plurality of users and their existing operation behaviors in a historical time period separated from a current time by a specified time length, for example, performing step S110 as shown in Figure 1 .
[0088] The first determination module 42 is configured to determine the label and the category of each information, for example, performing step S120 as shown in Figure 1 .
[0089] The second determination module 43 is configured to determine at least one candidate label and at least one candidate category corresponding to a target user in the plurality of users from the label and the category as a plurality of candidate interests, wherein the plurality of candidate interests include the label and the category of the information on which the target user does not have operation behaviors in the historical time period, for example, performing step S130 as shown in Figure 1 .
[0090] The third determination module 44 is configured to determine the score of each candidate interest in response to the operation of the target user requesting information, wherein the score represents the degree of interest of the target user in the each candidate interest, for example, performing step S140 as shown in Figure 1 .
[0091] The selection module 45 is configured to select the candidate interest with a score greater than a score threshold as the target interest of the target user, for example, performing step S150 as shown inFigure 1 The step S150 is shown.
[0092] The recommendation module 46 is configured to recommend at least one information corresponding to the target interest for the target user, for example, to perform the method of recommending information as Figure 1 The step S160 is shown.
[0093] Other embodiments of the above modules can refer to the corresponding information recommendation method embodiment part, which will not be described here.
[0094] Figure 5 is a block diagram illustrating an information recommendation apparatus according to some embodiments of the present disclosure.
[0095] As shown in Figure 5 The information recommendation 5 includes a memory 51 and a processor 52 coupled to the memory 51. The memory 51 is configured to store instructions for performing the corresponding embodiments of the information recommendation method. The processor 52 is configured to execute the information recommendation method in any of the embodiments of the present disclosure based on the instructions stored in the memory 51.
[0096] Figure 6 is a block diagram illustrating a computer system for implementing some embodiments of the present disclosure.
[0097] As shown in Figure 6 The computer system 60 can be in the form of a general-purpose computing device. The computer system 60 includes a memory 610, a processor 620, and a bus 600 connecting different system components.
[0098] The memory 610 may, for example, include system memory, non-volatile storage media, and the like. The system memory, for example, stores an operating system, application programs, a boot loader, and other programs. The system memory can include volatile storage media, such as random access memory (RAM) and / or cache memory. The non-volatile storage media, for example, stores instructions for performing at least one of the model training method or the natural language processing method. The non-volatile storage media includes, but is not limited to, disk storage, optical storage, flash storage, and the like.
[0099] The processor 620 can be implemented in the form of a general-purpose processor, a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA) or other programmable logic device, a discrete hardware component, or the like. Accordingly, each module, such as the determination module and the determination module, can be implemented by a central processing unit (CPU) running instructions in the memory for performing the corresponding steps, or by a dedicated circuit for performing the corresponding steps.
[0100] The bus 600 can use any of a variety of bus structures, for example. The bus structures include, without limitation, an Industry Standard Architecture (ISA) bus, a Micro Channel Architecture (MCA) bus, a Peripheral Component Interconnect (PCI) bus.
[0101] The computer system 60 can also include an input / output interface 630, a network interface 640, a storage interface 650, etc. These interfaces 630, 640, 650, as well as the memory 610 and the processor 620, can be connected to each other by the bus 600. The input / output interface 630 can provide a connection interface for display, mouse, keyboard, etc. input / output devices. The network interface 640 provides a connection interface for various networking devices. The storage interface 650 provides a connection interface for external storage devices such as floppy disks, U disks, SD cards, etc.
[0102] Here, various aspects of the disclosure are described with reference to flowcharts and / or block diagrams of methods, apparatuses and computer program products according to embodiments of the disclosure. It should be understood that each block of the flowchart and / or block diagram can be implemented by computer readable program instructions.
[0103] These computer readable program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable device to produce a machine, so that the instructions executed by the processor produce the device that implements the functions specified in one or more blocks of the flowchart and / or block diagram.
[0104] These computer readable program instructions can also be stored in a computer readable storage medium, which causes the computer to work in a specific way, so as to produce a product, including instructions that implement the functions specified in one or more blocks of the flowchart and / or block diagram.
[0105] The disclosure can take the form of an entirely hardware embodiment, an entirely software embodiment, or an embodiment combining software and hardware aspects.
[0106] The disclosure also discloses: A1. An information recommendation method, comprising:
[0107] Obtaining at least one information of a plurality of users and their presence operation behaviors in a historical time period separated from the current time by a specified time length;
[0108] Determining the label and the category of each information;
[0109] From the label and the category, determining at least one candidate label and at least one candidate category corresponding to a target user in the plurality of users as a plurality of candidate interests, wherein the plurality of candidate interests include the label and the category of the information on which the target user does not operate in the historical time period;
[0110] in response to the operation of requesting information by the target user, determining a score of each candidate interest, wherein the score represents a degree of interest of the target user in the each candidate interest;
[0111] selecting a candidate interest with a score greater than a score threshold as a target interest of the target user;
[0112] recommending at least one piece of information corresponding to the target interest to the target user.
[0113] A2. The information recommendation method of A1, wherein determining the score of each candidate interest comprises:
[0114] determining the score of each candidate interest according to an alpha parameter and a beta parameter of a beta distribution corresponding to the each candidate interest by using Thompson sampling.
[0115] A3. The information recommendation method of A2, further comprising:
[0116] updating the alpha parameter and the beta parameter corresponding to the target interest corresponding to the target information according to a situation of the target user viewing the target information and a situation of the target user interacting with the target information;
[0117] in response to an operation of the target user requesting information again, repeating the steps of determining the score of each candidate interest, selecting a candidate interest with a score greater than a score threshold, and recommending target information corresponding to the target interest to the target user according to the updated alpha parameter and the updated beta parameter.
[0118] A4. The information recommendation method of A3, wherein updating the alpha parameter and the beta parameter corresponding to the target interest corresponding to the target information comprises:
[0119] in a case where the target user views the target information and the target user has an interaction with the target information, increasing the alpha parameter corresponding to the target interest corresponding to the target information by a specified value;
[0120] in a case where the target user views the target information but the target user does not have an interaction with the target information, increasing the beta parameter corresponding to the target interest corresponding to the target information by a specified value.
[0121] A5. The information recommendation method of A1, wherein determining at least one candidate label and at least one candidate category corresponding to a target user in the plurality of users from the labels and the categories comprises:
[0122] determine a vector representation of each user, a vector representation of each label of each information, and a vector representation of each category to which each information belongs;
[0123] select a user, a label, and a category whose similarity between the vector representation and the vector representation of the target user is greater than a similarity threshold value, as a reference user, a reference label, and a reference category;
[0124] from the label and the category, obtain the category and the label in which the reference user has an interaction behavior between the historical time period and the target user, as a reference label and a reference category;
[0125] from the reference label and the reference category, filter the label and the category to which the information in which the target user has an operation behavior within the historical time period belongs, to obtain the at least one candidate label and the at least one candidate category.
[0126] A6. The information recommendation method of A5, wherein determining a vector representation of each user, a vector representation of each label of each information, and a vector representation of each category to which each information belongs comprises:
[0127] constructing a graph network, the graph network comprising user nodes, label nodes, category nodes, and unidirectional edges between user nodes and label nodes, unidirectional edges between user nodes and category nodes, or unidirectional edges or bidirectional edges between different user nodes;
[0128] training a graph convolutional network (GCN) model according to the graph network to obtain a vector representation of each user, a vector representation of each label of each information, and a vector representation of each category to which each information belongs.
[0129] A7. The information recommendation method of A6, wherein training a graph convolutional network (GCN) model according to the graph network comprises:
[0130] performing data cleaning on the graph network;
[0131] training the GCN model according to the graph network after data cleaning.
[0132] A8. The information recommendation method of A7, wherein performing data cleaning on the graph network comprises:
[0133] deleting user nodes corresponding to users whose number of operation behaviors on information is less than a first behavior quantity threshold value; and / or
[0134] deleting user nodes corresponding to users whose number of operation behaviors on information is greater than a second behavior quantity threshold value, wherein the second behavior quantity threshold value is greater than the first behavior quantity threshold value.
[0135] A9. The information recommendation method according to A7, wherein the data cleaning of the graph network comprises:
[0136] deleting a specified percentage of label nodes corresponding to label whose number of operation behaviors corresponding to the label is ranked at the lower end; and / or
[0137] deleting label nodes whose percentage of covering users is greater than a percentage threshold.
[0138] A10. The information recommendation method according to A7, wherein the data cleaning of the graph network comprises:
[0139] deleting category nodes whose percentage of covering users is greater than the percentage threshold.
[0140] A11. The information recommendation method according to A7, wherein the data cleaning of the graph network comprises:
[0141] in a case where the number of edges starting from a user node is greater than an edge number threshold, deleting the edges starting from the user node in a random sampling manner so that the number of edges starting from the user after deletion is less than or equal to the edge number threshold;
[0142] A12. The information recommendation method according to A6, wherein the GCN model comprises a graph sampling and aggregation GraphSAGE model.
[0143] A13. The information recommendation method according to A5, wherein selecting users, labels and categories whose similarity between the vector representation and the vector representation of the target user is greater than a similarity threshold as reference users, reference labels and reference categories comprises:
[0144] respectively constructing vector index services for the vector representations of the plurality of users, the vector representations of the labels of the at least one information and the vector representations of the categories to which the at least one information belongs, to obtain a user vector index service, a label vector index service and a category vector index service;
[0145] based on the user vector index service, selecting users whose similarity between the vector representation and the vector representation of the target user is greater than a similarity threshold as reference users;
[0146] based on the label vector index service, selecting labels whose similarity between the vector representation and the vector representation of the target user is greater than a similarity threshold as reference labels;
[0147] based on the category vector index service, selecting categories whose similarity between the vector representation and the vector representation of the target user is greater than a similarity threshold as reference categories.
[0148] A14. The information recommendation method of A1, wherein recommending, for the target user, at least one piece of information corresponding to the target interest comprises:
[0149] determining, as target information corresponding to the target interest, at least one piece of information corresponding to the target interest that is closest to the current time;
[0150] recommending, for the target user, the target information corresponding to the target interest.
[0151] A15. The information recommendation method of A14, wherein determining, as target information corresponding to the target interest, at least one piece of information corresponding to the target interest that is closest to the current time comprises:
[0152] performing reverse ordering on information corresponding to the target interest according to the chronological order of the time stamps of the information corresponding to the target interest;
[0153] determining, as target information corresponding to the target interest, at least one piece of information corresponding to the target interest that is closest to the current time according to the result of the reverse ordering.
[0154] B16. An information recommendation apparatus, comprising:
[0155] an acquisition module configured to acquire at least one piece of information of a plurality of users and their presence operation behaviors in a historical time period that is a specified time length away from a current time;
[0156] a first determination module configured to determine a label and a category to which each piece of information belongs;
[0157] a second determination module configured to determine, from the labels and the categories, at least one candidate label and at least one candidate category corresponding to a target user among the plurality of users as a plurality of candidate interests, wherein the plurality of candidate interests comprise labels and categories of information for which the target user does not perform operation behaviors in the historical time period;
[0158] a third determination module configured to determine, in response to an operation of the target user requesting information, a score of each candidate interest, wherein the score represents the degree of interest of the target user in the each candidate interest;
[0159] a selection module configured to select a candidate interest with a score greater than a score threshold as a target interest of the target user;
[0160] a recommendation module configured to recommend, for the target user, at least one piece of information corresponding to the target interest.
[0161] C17. An information recommendation apparatus comprising:
[0162] a memory; and
[0163] a processor coupled to the memory, the processor configured to perform the information recommendation method of any one of A1 to A15 based on instructions stored in the memory.
[0164] D18. A computer storage medium having computer program instructions stored thereon, the instructions, when executed by a processor, implement the information recommendation method of any one of A1 to A15.
[0165] By the information recommendation method and apparatus, and the computer storage medium, more comprehensive and diverse information can be recommended for a user, and the comprehensiveness and diversity of information recommendation can be improved.
[0166] Thus far, the information recommendation method and apparatus, and the computer storage medium according to the present disclosure have been described in detail. In order to avoid obscuring the concept of the present disclosure, some details well known in the art have not been described. Those skilled in the art can fully understand how to implement the technical solutions disclosed herein according to the above description.
Claims
1. An information recommendation method, comprising: Retrieve information on at least one user and their activity from a historical time period that is a specified time interval from the current time. Determine the tags and category for each piece of information; From the tags and categories, at least one candidate tag and at least one candidate category corresponding to the target user among the plurality of users are determined as a plurality of candidate interests, wherein the plurality of candidate interests include tags and categories to which the target user has no operational behavior during the historical time period; In response to the target user's request for information, a score is determined for each candidate interest, wherein the score represents the degree of interest the target user has in each candidate interest; Candidate interests with scores greater than a score threshold are selected as the target interests of the target user. Recommend at least one piece of information corresponding to the target user's target interests. Specifically, determining at least one candidate tag and at least one candidate category corresponding to the target user among the plurality of users from the tags and categories includes: Determine the vector representation for each user, the vector representation for the tag of each message, and the vector representation for the category to which each message belongs. Users whose vector representations have a similarity greater than a similarity threshold to the vector representations of the target users are selected as reference users; tags whose vector representations have a similarity greater than a similarity threshold to the vector representations of the target users are selected as first reference tags; and categories whose vector representations have a similarity greater than a similarity threshold to the vector representations of the target users are selected as first reference categories. From the tags and categories, obtain the categories and tags in which the reference user interacted with the target user during the historical time period, and use them as the second reference tags and second reference categories. From the first reference tag, the second reference tag, the first reference category, and the second reference category, filter the tags and categories of the target user's operational behavior during the historical time period to obtain the at least one candidate tag and the at least one candidate category.
2. The information recommendation method according to claim 1, wherein, The score for each candidate interest includes: Using the Thompson sampling method, the score of each candidate interest is determined based on the alpha and beta parameters of the beta distribution corresponding to each candidate interest.
3. The information recommendation method according to claim 2 further includes: Based on the target user's viewing of the target information and the target user's interaction behavior with the target information, update the alpha and beta parameters corresponding to the target interest associated with the target information; In response to the target user's request for information again, the steps of determining the score of each candidate interest, selecting candidate interests with scores greater than the score threshold, and displaying target information corresponding to the target interest to the target user are repeated based on the updated alpha parameter and the updated beta parameter.
4. The information recommendation method according to claim 3, wherein, Updating the alpha and beta parameters corresponding to the target interest associated with the target information includes: If the target user has viewed the target information and the target user has interacted with the target information, the alpha parameter corresponding to the target interest corresponding to the target information is increased by a specified value. If the target user has viewed the target information but has not interacted with it, the beta parameter corresponding to the target interest associated with the target information is increased by a specified value.
5. The information recommendation method according to claim 1, wherein, Determining the vector representation for each user, the vector representation for the tag of each message, and the vector representation for the category to which each message belongs includes: Construct a graph network, which includes user nodes, label nodes, category nodes, and one-way edges between user nodes and label nodes, one-way edges between user nodes and category nodes, and one-way or two-way edges between different user nodes. Based on the graph network, a graph convolutional network (GCN) model is trained to obtain the vector representation of each user, the vector representation of the tag of each piece of information, and the vector representation of the category to which each piece of information belongs.
6. The information recommendation method according to claim 5, wherein, Based on the graph network, training a graph convolutional network (GCN) model includes: Perform data cleaning on the graph network; The GCN model is trained based on the cleaned graph network.
7. The information recommendation method according to claim 6, wherein, Data cleaning of the graph network includes: Delete user nodes corresponding to users whose number of information operation actions is less than the first action quantity threshold; and / or Delete the user node corresponding to the user whose number of information operation actions exceeds the second action number threshold, wherein the second action number threshold is greater than the first action number threshold.
8. The information recommendation method according to claim 6, wherein, Data cleaning of the graph network includes: Delete the tag nodes corresponding to tags that rank lowest in the number of actions performed on those tags; and / or Delete tag nodes whose percentage of users covered is greater than the percentage threshold.
9. The information recommendation method according to claim 6, wherein, Data cleaning of the graph network includes: Delete category nodes whose percentage of users covered is greater than the percentage threshold.
10. The information recommendation method according to claim 6, wherein, Data cleaning of the graph network includes: If the number of edges originating from user nodes exceeds the edge count threshold, edges originating from user nodes are deleted through random sampling, so that the number of deleted edges originating from user nodes is less than or equal to the edge count threshold.
11. The information recommendation method according to claim 5, wherein, The GCN model includes the graph sampling and aggregation GraphSAGE model.
12. The information recommendation method according to claim 1, wherein, Users, tags, and categories whose vector representations have a similarity greater than a similarity threshold with the vector representations of the target user are selected as reference users, reference tags, and reference categories, including: Vector index services are constructed for the vector representations of the multiple users, the vector representation of the tag of the at least one piece of information, and the vector representation of the category to which the at least one piece of information belongs, respectively, to obtain user vector index service, tag vector index service, and category vector index service; Based on the user vector indexing service, users whose vector representations have a similarity greater than a similarity threshold with the vector representations of the target users are selected as reference users; Based on the tag vector indexing service, tags whose vector representations have a similarity greater than a similarity threshold with the target user's vector representation are selected as reference tags; Based on the category vector index service, categories whose vector representations have a similarity greater than a similarity threshold with the target user's vector representation are selected as reference categories.
13. The information recommendation method according to claim 1, wherein, Recommending at least one piece of information corresponding to the target interest to the target user includes: Identify at least one piece of information that is closest to the current time among the information corresponding to the target interest, and use it as the target information corresponding to the target interest; Recommend target information that matches the target user's target interests.
14. The information recommendation method according to claim 13, wherein, Identify at least one piece of information among the information corresponding to the target interest that is closest to the current time, and use this information as the target information corresponding to the target interest as follows: The information corresponding to the target interest is sorted in reverse order according to the chronological order of the timestamps. Based on the results of the inverted sorting, at least one piece of information that is closest to the current time among the information corresponding to the target interest is determined as the target information corresponding to the target interest.
15. An information recommendation device, comprising: The acquisition module is configured to acquire at least one piece of information about multiple users and their operational behaviors within a historical time period that is a specified time interval from the current time. The first determination module is configured to determine the tag and category of each piece of information; The second determining module is configured to determine, from the tags and the categories, at least one candidate tag and at least one candidate category corresponding to the target user among the plurality of users, as a plurality of candidate interests, wherein the plurality of candidate interests include tags and categories to which the target user has no operational behavior during the historical time period; The third determining module is configured to determine a score for each candidate interest in response to the operation of the target user's request information, wherein the score represents the degree of interest of the target user in each candidate interest; The selection module is configured to select candidate interests with scores greater than a score threshold as the target interests of the target user. The recommendation module is configured to recommend at least one piece of information corresponding to the target user's target interests. The second determining module is further configured as follows: Determine the vector representation for each user, the vector representation for the tag of each message, and the vector representation for the category to which each message belongs. Users whose vector representations have a similarity greater than a similarity threshold to the vector representations of the target users are selected as reference users; tags whose vector representations have a similarity greater than a similarity threshold to the vector representations of the target users are selected as first reference tags; and categories whose vector representations have a similarity greater than a similarity threshold to the vector representations of the target users are selected as first reference categories. From the tags and categories, obtain the categories and tags in which the reference user interacted with the target user during the historical time period, and use them as the second reference tags and second reference categories. From the first reference tag, the second reference tag, the first reference category, and the second reference category, filter the tags and categories of the target user's operational behavior during the historical time period to obtain the at least one candidate tag and the at least one candidate category.
16. An information recommendation device, comprising: Memory; as well as A processor coupled to the memory, the processor being configured to execute the information recommendation method as described in any one of claims 1 to 14 based on instructions stored in the memory.
17. A computer-storeable medium having stored thereon computer program instructions that, when executed by a processor, implement the information recommendation method as described in any one of claims 1 to 14.
Citation Information
Patent Citations
Information mining method and device and information recommendation method and device
CN111966813A
Data processing method and device and computer readable medium
CN112749332A
Information processing method, information processing device, storage medium and electronic equipment
CN114065063A
Resource recommendation method and training method and device of resource recommendation model
CN115994263A