An information recommendation method and device, electronic equipment and storage medium
By determining the selection path from user tags to information tags in the knowledge graph and selecting candidate information based on conditional probability, the accuracy and explainability issues of collaborative filtering recommendations are solved, and accurate recommendations are achieved.
Patent Information
- Application Number
- CN202111407351.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-11-24
- Publication Date
- 2025-10-10
- Estimated Expiration
- 2041-11-24
AI Technical Summary
In existing technologies, collaborative filtering recommendation methods are difficult to accurately recommend appropriate information to users and lack explainability.
Determine multiple selection paths between the user's target user tag and the information tag of the candidate information from the knowledge graph, determine the target conditional probability of each candidate information based on the conditional probability of the selection path, and select the recommended information based on the target conditional probability.
It achieves accurate and efficient selection of target candidate information that meets user needs from candidate information and is explainable.
Smart Images

Figure CN114090904B_ABST
Abstract
Description
Technical Field
[0001] The embodiments of the present application relate to the field of intelligent recommendation technology, and in particular to an information recommendation method, device, electronic device, and storage medium. Background Art
[0002] With the development of computer technology, the amount of information is increasing. It is difficult for users to select the information of interest from this vast amount of information. Therefore, in some fields, it is necessary to intelligently recommend information of interest to users to solve the problem of information overload.
[0003] In related technologies, collaborative filtering is used to determine information that users are interested in, such as recommending other products to users based on products they have purchased, or recommending other news to users based on news they have browsed.
[0004] However, the information recommended by collaborative filtering is not explainable, so the above recommendation method is difficult to accurately recommend appropriate information to users. Summary of the Invention
[0005] The embodiments of the present application provide an information recommendation method, device, electronic device, and storage medium for accurately recommending appropriate information to users.
[0006] In a first aspect, an embodiment of the present application provides an information recommendation method, the method comprising:
[0007] Determining multiple selection paths from a target user tag of a user to information tags of candidate information from a knowledge graph; wherein the knowledge graph includes multiple user tags and multiple information tags of candidate information;
[0008] Determine the target conditional probability of each candidate information based on the conditional probability of the selection path; wherein the conditional probability of any selection path is determined based on the conditional probabilities between adjacent labels in the selection path;
[0009] Target candidate information recommended to the user is selected from the candidate information according to the target conditional probability of each piece of candidate information.
[0010] The above scheme determines the target user label that represents the user characteristics from the user's perspective; then, based on the conditional probabilities of multiple selection paths from the target user label to the information label of the candidate information, the target conditional probability of each candidate information is determined. The target conditional probability is the predicted probability of the above user selecting the corresponding candidate information. Therefore, based on the target conditional probability of each candidate information, the target candidate information that meets the user's needs and is explainable is selected from the candidate information accurately and efficiently.
[0011] In some optional implementations, the adjacent tags in the selected path include some or all of the following: an adjacent target user tag and a non-target user tag, two adjacent target user tags, two adjacent non-target user tags, an adjacent target user tag and an information tag, an adjacent non-target user tag and an information tag, and two adjacent information tags.
[0012] In some optional implementations, determining a target conditional probability of each candidate information based on the conditional probability of the selected path includes:
[0013] For any candidate information, the target conditional probability of the candidate information is determined according to the conditional probabilities of all selected paths whose path endpoints are the information tag of the candidate information.
[0014] In the above scheme, since the conditional probability of the selection path whose path end point is the information tag of the candidate information represents the possibility of the user selecting this selection path, the target conditional probability of the user selecting the candidate information can be accurately determined based on the conditional probabilities of all selection paths whose path end point is the information tag of the candidate information.
[0015] In some optional implementations, selecting target candidate information recommended to the user from the candidate information based on the target conditional probability of each candidate information includes:
[0016] Determine the N candidate information with the largest target conditional probability as the target candidate information; or
[0017] The candidate information whose target conditional probability is greater than the preset conditional probability is determined as the target candidate information.
[0018] The above scheme determines the N candidate information with the largest target conditional probability as the target candidate information, thereby selecting a certain number of target candidate information to meet the scenario where a certain number of target candidate information needs to be recommended; by determining the candidate information with a probability greater than the preset conditional probability as the target candidate information, it meets the scenario where all target candidate information that may meet the user's needs needs to be recommended; thus, different methods are used to select target candidate information in different scenarios to meet the needs of different scenarios.
[0019] In some optional implementations, the target user tag of the user is determined by:
[0020] Determine a first tag of the user based on the historical behavior of the user, and determine the first tag and the second tag of the user as a target user tag of the user;
[0021] The second tag includes the first tags of other users associated with the user, and / or tags associated with the first tag of the user determined based on a preset tag library.
[0022] The above solution expands the user's target user tag through the first tags of other users associated with the user and the tags associated with the user's first tag, so that the user's target user tag can more comprehensively characterize the user's characteristics; subsequently, target candidate information can be determined more accurately based on the target user tag.
[0023] In some optional implementations, the information label of the candidate information is multi-level information determined by performing multi-level clustering on the candidate information.
[0024] In some optional implementations, the conditional probabilities between adjacent labels are determined based on the user labels of the sample users, the conditional probabilities corresponding to the types of operations performed by the sample users on the candidate information, and the multi-level information of the candidate information;
[0025] The operation types include browsing, liking, collecting, commenting, and sharing, or some or all of them.
[0026] In the above scheme, the user's operation type on the candidate information represents the user's interest in the candidate information; the user tag represents the relevant characteristics of the user; and the multi-level information of the candidate information reflects the characteristics of the candidate information. Therefore, based on the above information, the conditional probability between various adjacent tags can be accurately determined.
[0027] In a second aspect, an embodiment of the present application further provides an information recommendation device, comprising:
[0028] A path determination module is used to determine multiple selection paths from the user's target user tag to the information tags of the candidate information from the knowledge graph; wherein the knowledge graph includes multiple user tags and multiple information tags of the candidate information;
[0029] A probability determination module, configured to determine a target conditional probability of each candidate information based on the conditional probability of the selection path; wherein the conditional probability of any selection path is determined based on the conditional probabilities between adjacent labels in the selection path;
[0030] The information recommendation module is used to select target candidate information recommended to the user from the candidate information according to the target conditional probability of each candidate information.
[0031] In some optional implementations, the adjacent tags in the selected path include some or all of the following: an adjacent target user tag and a non-target user tag, two adjacent target user tags, two adjacent non-target user tags, an adjacent target user tag and an information tag, an adjacent non-target user tag and an information tag, and two adjacent information tags.
[0032] In some optional implementations, the probability determination module is specifically configured to:
[0033] For any candidate information, the target conditional probability of the candidate information is determined according to the conditional probabilities of all selected paths whose path endpoints are the information tag of the candidate information.
[0034] In some optional implementations, the information recommendation module is specifically configured to:
[0035] Determine the N candidate information with the largest target conditional probability as the target candidate information; or
[0036] The candidate information whose target conditional probability is greater than the preset conditional probability is determined as the target candidate information.
[0037] In some optional implementations, the target user tag of the user is determined by:
[0038] Determine a first tag of the user based on the historical behavior of the user, and determine the first tag and the second tag of the user as a target user tag of the user;
[0039] The second tag includes the first tags of other users associated with the user, and / or tags associated with the first tag of the user determined based on a preset tag library.
[0040] In some optional implementations, the information label of the candidate information is multi-level information determined by performing multi-level clustering on the candidate information.
[0041] In some optional implementations, the conditional probabilities between adjacent labels are determined based on the user labels of the sample users, the conditional probabilities corresponding to the types of operations performed by the sample users on the candidate information, and the multi-level information of the candidate information;
[0042] The operation types include browsing, liking, collecting, commenting, and sharing, or some or all of them.
[0043] In a third aspect, an embodiment of the present application provides an electronic device comprising at least one processor and at least one memory, wherein the memory stores a computer program, and when the program is executed by the processor, the processor executes any of the information recommendation methods described in the first aspect above.
[0044] In a fourth aspect, an embodiment of the present application provides a computer-readable storage medium storing a computer program executable by an electronic device. When the program runs on the electronic device, the electronic device executes the information recommendation method described in any one of the first aspects above.
[0045] In a fifth aspect, an embodiment of the present application provides a computer program product comprising computer-executable instructions, wherein the computer-executable instructions are used to enable a computer to execute the information recommendation method as described in any one of the first aspects.
[0046] In addition, the technical effects brought about by any implementation method in the second to fifth aspects can refer to the technical effects brought about by different implementation methods in the first aspect, and will not be repeated here. BRIEF DESCRIPTION OF THE DRAWINGS
[0047] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the following briefly introduces the drawings required for use in the description of the embodiments. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without any creative work.
[0048] Figure 1 A flowchart of the first information recommendation method provided in an embodiment of the present application;
[0049] Figure 2 A schematic diagram of the knowledge graph provided for the embodiment of this application;
[0050] Figure 3 A schematic diagram of a selection path provided in an embodiment of the present application;
[0051] Figure 4 A flowchart of the second information recommendation method provided in an embodiment of the present application;
[0052] Figure 5 A flowchart of the third information recommendation method provided in an embodiment of the present application;
[0053] Figure 6 A schematic diagram of multi-level clustering provided in an embodiment of the present application;
[0054] Figure 7 This is a diagram of the information recommendation model architecture provided in the embodiments of the present application;
[0055] Figure 8 A schematic diagram of the structure of the information recommendation device provided in an embodiment of the present application;
[0056] Figure 9 A schematic diagram of the structure of an electronic device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0057] To make the objectives, technical solutions, and advantages of this application more clear, this application will be further described in detail below with reference to the accompanying drawings. Obviously, the embodiments described are only some of the embodiments of this application, not all of them. Based on the embodiments in this application, all other embodiments obtained by ordinary technicians in this field without making any creative efforts are within the scope of protection of this application.
[0058] In the embodiments of this application, the term "and / or" describes the association relationship between associated objects, indicating that three relationships can exist. For example, A and / or B can represent: A exists alone, A and B exist simultaneously, and B exists alone. The character " / " generally indicates that the associated objects are in an "or" relationship.
[0059] The terms "first" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the number of the technical features being referred to. Thus, a feature specified as "first" or "second" may explicitly or implicitly include one or more of such features. Throughout this application, unless otherwise specified, "plurality" means two or more.
[0060] In the description of this application, it should be noted that, unless otherwise specified or limited, the term "connection" should be understood in a broad sense. For example, it can mean direct connection, indirect connection through an intermediate medium, or internal communication between two devices. Those skilled in the art will understand the specific meaning of the above terms in this application based on specific circumstances.
[0061] In some fields, intelligent recommendations of user-interested information are needed to address information overload. In some implementations, collaborative filtering is used to identify user-interested information, such as recommending products based on items a user has already purchased or news based on news a user has already browsed. Other implementations use deep learning-based black-box models to identify user-interested information.
[0062] However, the above embodiment does not select recommended information based on user characteristics, so the recommended information is not explainable, and it is difficult to accurately recommend appropriate information to the user.
[0063] In view of this, an embodiment of the present application proposes an information recommendation method, device, electronic device and storage medium, the method comprising: determining multiple selection paths from a user's target user tag to information tags of candidate information from a knowledge graph; wherein the knowledge graph includes multiple user tags and information tags of multiple candidate information; based on the conditional probability of the selection path, determining the target conditional probability of each candidate information; wherein the conditional probability of any selection path is determined based on the conditional probability between adjacent tags in the selection path; and selecting target candidate information recommended to the user from the candidate information according to the target conditional probability of each candidate information.
[0064] The above scheme determines the target user label that represents the user characteristics from the user's perspective; then, based on the conditional probabilities of multiple selection paths from the target user label to the information label of the candidate information, the target conditional probability of each candidate information is determined. The target conditional probability is the predicted probability of the above user selecting the corresponding candidate information. Therefore, based on the target conditional probability of each candidate information, the target candidate information that meets the user's needs and is explainable is selected from the candidate information accurately and efficiently.
[0065] The following will be combined with the accompanying drawings and specific embodiments to explain in detail the technical solution of the present application and how the technical solution of the present application solves the above-mentioned technical problems. The following specific embodiments can be combined with each other, and the same or similar concepts or processes may not be repeated in some embodiments.
[0066] The embodiment of the present application provides a first information recommendation method, such as Figure 1 As shown, the following steps are included:
[0067] Step S101: Determine multiple selection paths from the user's target user tag to the information tag of the candidate information from the knowledge graph.
[0068] The knowledge graph includes multiple user tags and multiple information tags of candidate information.
[0069] See Figure 2 As shown in the figure, the knowledge graph includes multiple user tags and multiple information tags of candidate information; the user tag represents the characteristics of the user, and one user corresponds to multiple user tags; the information tag represents the characteristics of the candidate information, and one candidate information corresponds to one information tag, but the information tag can contain multiple pieces of information.
[0070] Figure 2 Taking 8 user tags and 10 information tags as an example, there may be more or fewer user tags and more or fewer information tags in actual applications.
[0071] In this embodiment, the target user tags are multiple user tags corresponding to the users to whom the information is to be recommended. Figure 2 As shown, user tag 1, user tag 3, and user tag 4 in the knowledge graph are target user tags of user A.
[0072] Exemplarily, the above-mentioned selection path can be obtained by traversal or random walk. When traversal is performed, it is necessary to determine all paths starting from any target user tag and ending at any candidate information tag. When random walk is performed, it is necessary to determine a path starting from any target user tag and ending at any candidate information tag.
[0073] Step S102: Based on the conditional probability of the selected path, determine the target conditional probability of each candidate information.
[0074] The conditional probability of any selected path is determined based on the conditional probabilities between adjacent tags in the selected path.
[0075] In this embodiment, the selection path may include a direct path from the user's target user tag to the information tag of the candidate information, and / or an indirect path from the user's target user tag to the information tag of the candidate information.
[0076] Based on this, in some optional implementations, the adjacent tags in the selected path include some or all of the following: an adjacent target user tag and a non-target user tag, two adjacent target user tags, two adjacent non-target user tags, an adjacent target user tag and an information tag, an adjacent non-target user tag and an information tag, and two adjacent information tags.
[0077] For a direct path, adjacent tags only include one target user tag and one information tag of candidate information; the conditional probability of the selected path only needs to be determined based on the conditional probability between the target user tag in the selected path and the information tag of the candidate information, for example, the conditional probability between the target user tag in the selected path and the information tag of the candidate information is determined as the conditional probability of the selected path.
[0078] For indirect paths, the adjacent tags include some or all of the above examples; it is necessary to determine the conditional probability between each two adjacent tags; based on the conditional probability between each two adjacent tags in the selected path, the conditional probability of the selected path is determined, for example, the conditional probability of the selected path Among them, s k is the conditional probability between the kth group of adjacent labels.
[0079] The following is a specific example to illustrate. Figure 3 As shown:
[0080] User tags 1, 3, and 4 in the knowledge graph are target user tags for user A.
[0081] Randomly walk from user tag 1 to select path 1 and path 2; selection path 1 is: user tag 1-user tag 2-information tag 3; selection path 2 is: user tag 1-information tag 1;
[0082] Randomly walking from user tag 3, we get selection path 3 and selection path 4; selection path 3 is: user tag 3 - user tag 4 - information tag 5; selection path 4 is: user tag 3 - information tag 3;
[0083] Randomly walking from user tag 4, we get selection path 5 and selection path 6; selection path 5 is: user tag 4 - information tag 6; selection path 6 is: user tag 4 - user tag 5 - information tag 6 - information tag 7;
[0084] Selecting path 1 includes user tag 1, user tag 2, and information tag 3, and determining the conditional probability of selecting path 1 based on the conditional probability between user tag 1 and user tag 2, and the conditional probability between user tag 2 and information tag 3;
[0085] Select path 2 including only user tag 1 and information tag 1, and determine the conditional probability of selecting path 2 based on the conditional probability between user tag 1 and information tag 1;
[0086] Selecting path 3 includes user tag 3, user tag 4, and information tag 5, and determining the conditional probability of selecting path 3 based on the conditional probability between user tag 3 and user tag 4, and the conditional probability between user tag 4 and information tag 5;
[0087] Select path 4 including only user tag 3 - information tag 3, and determine the conditional probability of selecting path 4 based on the conditional probability between user tag 3 and information tag 3;
[0088] The selection path 5 only includes the user tag 4 and the information tag 6 , and the conditional probability of the selection path 5 is determined based on the conditional probability between the user tag 4 and the information tag 6 .
[0089] Selection path 6 includes user tag 4, user tag 5, information tag 6 and information tag 7. The conditional probability of the above-mentioned selection path 6 is determined based on the conditional probability between user tag 4 and user tag 5, the conditional probability between user tag 5 and information tag 6, and the conditional probability between information tag 6 and information tag 7.
[0090] The above method of determining the conditional probability of selecting a path is merely an example and is not specifically limited in this embodiment.
[0091] Step S103: selecting target candidate information to be recommended to the user from the candidate information according to the target conditional probability of each candidate information.
[0092] The target condition probability of each candidate information is the predicted probability of the user selecting the corresponding candidate information. Based on this, the candidate information with a larger target condition probability can be selected as the target candidate information to be recommended to the user.
[0093] The above scheme determines the target user label that represents the user characteristics from the user's perspective; then, based on the conditional probabilities of multiple selection paths from the target user label to the information label of the candidate information, the target conditional probability of each candidate information is determined. The target conditional probability is the predicted probability of the above user selecting the corresponding candidate information. Therefore, based on the target conditional probability of each candidate information, the target candidate information that meets the user's needs and is explainable is selected from the candidate information accurately and efficiently.
[0094] The embodiment of the present application provides a second information recommendation method, such as Figure 4 As shown, the following steps are included:
[0095] Step S401: Determine multiple selection paths from the user's target user tag to the information tag of the candidate information from the knowledge graph.
[0096] The step S401 can be referred to the above embodiment and will not be described again here.
[0097] Step S402: For any candidate information, determine the target conditional probability of the candidate information according to the conditional probabilities of all selected paths whose path endpoints are the information tag of the candidate information.
[0098] In this embodiment, after determining the conditional probability of a selection path, it is also necessary to determine the selection path corresponding to each candidate information. This is the selection path whose endpoint is the information tag of the candidate information. If a selection path contains the information tag of the candidate information but terminates with the information tag of another candidate information, this selection path cannot be used as the selection path corresponding to the candidate information.
[0099] Still with the above Figure 3 For example, select the candidate information corresponding to information label 3 for path 1 (recorded as candidate information 3); select the candidate information corresponding to information label 1 for path 2 (recorded as candidate information 1); select the candidate information corresponding to information label 5 for path 3 (recorded as candidate information 5); select the candidate information corresponding to information label 3 for path 4 (recorded as candidate information 3); select the candidate information corresponding to information label 6 for path 5 (recorded as candidate information 6); select the candidate information corresponding to information label 7 for path 6 (recorded as candidate information 7);
[0100] According to the conditional probability of selecting path 1 and the conditional probability of selecting path 4, the target conditional probability of candidate information 3 is determined, for example, the sum of the conditional probability of selecting path 1 and the conditional probability of selecting path 4 is used as the target conditional probability of candidate information 3;
[0101] Determine the target conditional probability of candidate information 1 according to the conditional probability of selecting path 2, such as directly using the conditional probability of selecting path 2 as the target conditional probability of candidate information 1;
[0102] Determine the target conditional probability of candidate information 5 based on the conditional probability of selecting path 3, such as directly using the conditional probability of selecting path 3 as the target conditional probability of candidate information 5;
[0103] Determine the target conditional probability of candidate information 6 based on the conditional probability of selecting path 5, such as directly using the conditional probability of selecting path 5 as the target conditional probability of candidate information 6;
[0104] The target conditional probability of candidate information 7 is determined according to the conditional probability of selecting path 6 , such as directly using the conditional probability of selecting path 6 as the target conditional probability of candidate information 7 .
[0105] The above method of determining the target conditional probability of candidate information is only an example, and this embodiment does not impose any specific limitation on this.
[0106] Step S403: selecting target candidate information to be recommended to the user from the candidate information according to the target conditional probability of each candidate information.
[0107] The step S403 may refer to the following embodiment and will not be described in detail here.
[0108] In the above scheme, since the conditional probability of the selection path whose path end point is the information tag of the candidate information represents the possibility of the user selecting this selection path, the target conditional probability of the user selecting the candidate information can be accurately determined based on the conditional probabilities of all selection paths whose path end point is the information tag of the candidate information.
[0109] This application embodiment provides a third information recommendation method, such as Figure 5 As shown, the following steps are included:
[0110] Step S501: Determine multiple selection paths from the user's target user tag to the information tag of the candidate information from the knowledge graph.
[0111] Step S502: Based on the conditional probability of the selected path, determine the target conditional probability of each candidate information.
[0112] The steps S501 to S502 can be referred to the above embodiment and will not be described in detail here.
[0113] Step S503: determining the N candidate information with the largest target conditional probability as the target candidate information; or determining the candidate information with the target conditional probability greater than the preset conditional probability as the target candidate information.
[0114] In this embodiment, it is necessary to select target candidate information with a larger target condition probability. If a certain number of target candidate information needs to be recommended, the N candidate information with the largest target condition probability can be determined as the target candidate information. Taking the above candidate information as an example, the candidate information 1 to 10 are sorted from large to small according to the target condition probability. The sorting result is candidate information 7, candidate information 1, candidate information 4, candidate information 2, candidate information 5, candidate information 8, candidate information 6, candidate information 9, candidate information 10, candidate information 3; N = 3, candidate information 7, candidate information 1 and candidate information 4 are determined as target candidate information;
[0115] If it is necessary to recommend all target candidate information that may meet the user's needs, the candidate information with a probability greater than a preset conditional probability can be determined as the target candidate information. Using the candidate information above as an example, if the target conditional probabilities of candidate information 7, candidate information 1, candidate information 4, and candidate information 2 are greater than the preset conditional probability, these four candidate information are determined as the target candidate information.
[0116] The above scheme determines the N candidate information with the largest target conditional probability as the target candidate information, thereby selecting a certain number of target candidate information to meet the scenario where a certain number of target candidate information needs to be recommended; by determining the candidate information with a probability greater than the preset conditional probability as the target candidate information, it meets the scenario where all target candidate information that may meet the user's needs needs to be recommended; thus, different methods are used to select target candidate information in different scenarios to meet the needs of different scenarios.
[0117] In some optional implementations, the target user tag of the user may be determined by, but not limited to, the following methods:
[0118] Determine a first tag of the user based on the historical behavior of the user, and determine the first tag and the second tag of the user as a target user tag of the user;
[0119] The second tag includes the first tags of other users associated with the user, and / or tags associated with the first tag of the user determined based on a preset tag library.
[0120] In this embodiment, the user's historical behavior may be relatively small, and the number of first tags determined based on the user's historical behavior is also relatively small. The first tags cannot fully characterize the user's characteristics. Therefore, it is difficult to accurately determine the target candidate information based solely on these first tags. Based on this, this embodiment performs tag expansion to obtain the user's second tag.
[0121] For example, based on a social network, the relationships between users can be determined; users who are related to each other usually have similar habits and hobbies, so tags can be expanded based on the first tags of other users related to the user. For example, all the first tags of other users related to the user can be used as the second tag of the user; or the first tags that appear most frequently in other users related to the user can be used as the second tag of the user; or the first tags that appear in all other users related to the user can be used as the second tag of the user;
[0122] In addition, the preset tag library is provided with association relationships between tags. Based on the preset tag library, other tags associated with the first tag of the user can be determined. Usually, these tags can also reflect the characteristics of the user.
[0123] The above solution expands the user's target user tag through the first tags of other users associated with the user and the tags associated with the user's first tag, so that the user's target user tag can more comprehensively characterize the user's characteristics; subsequently, target candidate information can be determined more accurately based on the target user tag.
[0124] In some optional implementations, the information label of the candidate information is multi-level information determined by performing multi-level clustering on the candidate information.
[0125] In this embodiment, the corresponding features of the candidate information at each level are abstracted through clustering at each level, thereby obtaining multi-level information of the candidate information. Therefore, the more identical multi-level information there is, the more similar the information labels are, and the higher the conditional probability between the corresponding candidate information is.
[0126] See Figure 6 As shown, all candidate information is clustered at the first level to obtain three types of first-level information (first-level central concepts): first-level information A, first-level information B, and first-level information C;
[0127] After the second-level clustering, the candidate information corresponding to the first-level information A is clustered into two types of second-level information: second-level information A1 and second-level information A2. After the second-level clustering, the candidate information corresponding to the first-level information B is clustered into three types of second-level information: second-level information B1, second-level information B2, and second-level information B3. After the second-level clustering, the candidate information corresponding to the first-level information C is clustered into two types of second-level information: second-level information C1 and second-level information C2.
[0128] The candidate information corresponding to the secondary information A1 is clustered at a third level to obtain n types of tertiary information. Part of the candidate information corresponding to the secondary information A1 is successfully clustered, and the corresponding tertiary information is directly determined based on the clustering result. Part of the candidate information corresponding to the secondary information A1 fails to be clustered, and information (such as keywords, parts of speech, etc.) capable of representing the characteristics of the candidate information is extracted from the candidate information as the tertiary information of the candidate information. The tertiary information of the candidate information corresponding to other secondary information is determined in a similar manner, which will not be illustrated here.
[0129] The first-level information, the secondary information, and the tertiary information corresponding to each candidate information are combined to obtain the information label thereof, such as the information label of the candidate information corresponding to A11 being A-A1-A11.
[0130] The above examples are only used to more clearly illustrate how to determine the information label of the candidate information, but the present application is not limited thereto.
[0131] In some optional embodiments, the conditional probability between adjacent labels is determined based on the user label of a sample user, the conditional probability corresponding to the operation type of the sample user on the candidate information, and the multi-level information of the candidate information.
[0132] The operation type includes part or all of browsing, liking, collecting, commenting, and sharing.
[0133] Different operation types of the user on the candidate information represent different degrees of interest of the user in the candidate information, and will affect the conditional probability between adjacent labels. For example, a user browses the candidate information 1 and likes the candidate information 2. The user is more interested in the candidate information 2, and the conditional probability between the user label of the user and the information label of the candidate information 1 is smaller than the conditional probability between the user label of the user and the information label of the candidate information 2.
[0134] The user label represents the relevant characteristics of the user, and will affect the conditional probability between adjacent labels. For example, the conditional probability between the user labels corresponding to the same user is relatively high.
[0135] The multi-level information of the candidate information reflects the characteristics of the candidate information, and will also affect the conditional probability between adjacent labels. For example, the more similar the multi-level information, the higher the conditional probability between the information labels of the candidate information.
[0136] The above scheme can accurately determine the conditional probability between adjacent labels based on the operation type of the user on the candidate information, which represents the degree of interest of the user in the candidate information; the user label representing the relevant characteristics of the user; and the multi-level information of the candidate information reflecting the characteristics of the candidate information.
[0137] The above embodiment can be implemented through the information recommendation model. This embodiment does not limit the specific implementation method of the information recommendation model. Figure 7 As shown in the figure, the information recommendation model is equipped with an embedding layer, a long short-term memory network (LSTM) layer, and a pooling layer;
[0138] The above embedding layer is used to map all tags in the knowledge graph and the associations between tags into low-dimensional vector representations;
[0139] The above LSTM layer is used to concatenate the labels, label types and next step relationships contained in the selection path as input, and pass the sequence dependency in the selection path through the hidden state. k Length L, final hidden layer state H L The entire path P k The hidden representation P k =H L , based on s k =s(u,interact,I|P k )=W2 T *ReLU(W1 T *P k ) Score the interaction between user tags and information tags;
[0140] The above pooling layer is used to integrate the scores of different paths through weighted pooling operations (similar to the attention mechanism) and select the conditional probability of the path
[0141] The above information recommendation model is only an example, and other models can also be used in actual applications.
[0142] Based on the same inventive concept, the present application embodiment provides an information recommendation device, see Figure 8 As shown, the information recommendation device 800 includes:
[0143] A path determination module 801 is configured to determine, from a knowledge graph, a plurality of selection paths from a target user tag of a user to information tags of candidate information; wherein the knowledge graph includes a plurality of user tags and a plurality of information tags of candidate information;
[0144] A probability determination module 802 is configured to determine a target conditional probability of each candidate information based on the conditional probability of the selected path; wherein the conditional probability of any selected path is determined based on the conditional probabilities between adjacent labels in the selected path;
[0145] The information recommendation module 803 is configured to select target candidate information to be recommended to the user from the candidate information according to the target conditional probability of each candidate information.
[0146] In some optional implementations, the adjacent tags in the selected path include some or all of the following: an adjacent target user tag and a non-target user tag, two adjacent target user tags, two adjacent non-target user tags, an adjacent target user tag and an information tag, an adjacent non-target user tag and an information tag, and two adjacent information tags.
[0147] In some optional implementations, the probability determination module 802 is specifically configured to:
[0148] For any candidate information, the target conditional probability of the candidate information is determined according to the conditional probabilities of all selected paths whose path endpoints are the information tag of the candidate information.
[0149] In some optional implementations, the information recommendation module 803 is specifically configured to:
[0150] Determine the N candidate information with the largest target conditional probability as the target candidate information; or
[0151] The candidate information whose target conditional probability is greater than the preset conditional probability is determined as the target candidate information.
[0152] In some optional implementations, the target user tag of the user is determined by:
[0153] Determine a first tag of the user based on the historical behavior of the user, and determine the first tag and the second tag of the user as a target user tag of the user;
[0154] The second tag includes the first tags of other users associated with the user, and / or tags associated with the first tag of the user determined based on a preset tag library.
[0155] In some optional implementations, the information label of the candidate information is multi-level information determined by performing multi-level clustering on the candidate information.
[0156] In some optional implementations, the conditional probabilities between adjacent labels are determined based on the user labels of the sample users, the conditional probabilities corresponding to the types of operations performed by the sample users on the candidate information, and the multi-level information of the candidate information;
[0157] The operation types include browsing, liking, collecting, commenting, and sharing, or some or all of them.
[0158] Since the device is the device in the method in the embodiment of the present application, and the principle of solving the problem by the device is similar to that of the method, the implementation of the device can refer to the implementation of the method, and the repeated parts will not be repeated.
[0159] Based on the same technical concept, the embodiment of the present application further provides an electronic device 900, such as Figure 9 As shown, it includes at least one processor 901 and a memory 902 connected to the at least one processor. The specific connection medium between the processor 901 and the memory 902 is not limited in the embodiment of the present application. Figure 9 For example, the processor 901 and the memory 902 are connected via a bus 903. The bus can be divided into an address bus, a data bus, a control bus, etc. For ease of representation, Figure 9 Only one thick line is used in the diagram, but this does not mean that there is only one bus or one type of bus.
[0160] Among them, the processor 901 is the control center of the electronic device, which can use various interfaces and lines to connect various parts of the electronic device, and realize data processing by running or executing instructions stored in the memory 902 and calling data stored in the memory 902. Optionally, the processor 901 may include one or more processing units. The processor 901 may integrate an application processor and a modem processor, wherein the application processor mainly processes the operating system, user interface, and application programs, etc., and the modem processor mainly processes the issuance of instructions. It is understandable that the above-mentioned modem processor may not be integrated into the processor 901. In some embodiments, the processor 901 and the memory 902 may be implemented on the same chip. In some embodiments, they may also be implemented separately on independent chips.
[0161] The processor 901 can be a general-purpose processor, such as a central processing unit (CPU), a digital signal processor, an application-specific integrated circuit (ASIC), a field programmable gate array or other programmable logic device, a discrete gate or transistor logic device, or a discrete hardware component, and can implement or execute the various methods, steps, and logic block diagrams disclosed in the embodiments of the present application. A general-purpose processor can be a microprocessor or any conventional processor. The steps of the method disclosed in the information recommendation method embodiment can be directly embodied as being executed by a hardware processor, or can be executed by a combination of hardware and software modules in the processor.
[0162] The memory 902, as a non-volatile computer readable storage medium, can be used to store non-volatile software programs, non-volatile computer executable programs and modules. The memory 902 can include at least one type of storage medium, for example, can include flash memory, hard disk, multimedia card, card type memory, random access memory (RAM), static random access memory (SRAM), programmable read-only memory (PROM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), magnetic storage, magnetic disk, optical disk, etc. The memory 902 is any other medium capable of carrying or storing desired program code in the form of instructions or data structures and capable of being accessed by a computer, but is not limited thereto. The memory 902 in the embodiments of the present application can also be a circuit or any other device capable of realizing a storage function, used for storing program instructions and / or data.
[0163] In the embodiments of the present application, the memory 902 stores a computer program, which, when executed by the processor 901, causes the processor 901 to perform:
[0164] determine a plurality of selection paths between the target user label of the user and the information label of the candidate information from the knowledge graph; wherein the knowledge graph includes a plurality of user labels and a plurality of information labels of candidate information;
[0165] determine a target conditional probability of each candidate information based on the conditional probability of the selection path; wherein the conditional probability of any selection path is determined based on the conditional probability between adjacent labels in the selection path;
[0166] select a target candidate information recommended to the user from the candidate information according to the target conditional probability of each candidate information.
[0167] In some optional embodiments, the adjacent labels in the selection path include some or all of the following: adjacent target user labels and non-target user labels, two adjacent target user labels, two adjacent non-target user labels, adjacent target user labels and information labels, adjacent non-target user labels and information labels, and two adjacent information labels.
[0168] In some optional embodiments, the processor 901 specifically performs:
[0169] For any candidate information, a target conditional probability of the candidate information is determined according to conditional probabilities of all selected paths of the candidate information for the information tag of the path end point.
[0170] In some optional embodiments, the processor 901 specifically performs:
[0171] N candidate information with the maximum target conditional probability is determined as the target candidate information; or
[0172] The candidate information with the target conditional probability greater than a preset conditional probability is determined as the target candidate information.
[0173] In some optional embodiments, the target user tag of the user is determined by:
[0174] A first tag of the user is determined based on historical behaviors of the user, and the first tag and a second tag of the user are determined as the target user tag of the user;
[0175] The second tag includes a first tag of other users associated with the user, and / or a tag associated with the first tag of the user determined based on a preset tag library.
[0176] In some optional embodiments, the information tag of the candidate information is multi-level information determined by multi-level clustering of the candidate information.
[0177] In some optional embodiments, the conditional probability between adjacent tags is determined based on a user tag of a sample user, a conditional probability corresponding to an operation type of the sample user on candidate information, and multi-level information of the candidate information.
[0178] The operation type includes part or all of browsing, liking, collecting, commenting, and sharing.
[0179] Since the electronic device is the electronic device in the method of the embodiments of the present application, and the principle of solving the problem of the electronic device is similar to that of the method, the implementation of the electronic device can be referred to the implementation of the method, and the repeated parts will not be repeated.
[0180] Based on the same technical concept, the embodiments of the present application also provide a computer readable storage medium storing a computer program executable by an electronic device, when the program runs on the electronic device, the electronic device executes the steps of the above information recommendation method.
[0181] In some optional embodiments, various aspects of the information recommendation method provided by the present application can also be implemented in the form of a program product, which contains computer-executable instructions. When the program product is run on a computer device, the computer-executable instructions are used to enable the computer device to execute the steps of the information recommendation method according to various exemplary embodiments of the present application described above in this specification.
[0182] Those skilled in the art will appreciate that the embodiments of the present application can be provided as methods, systems, or computer program products. Therefore, the present application can adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment in combination with software and hardware. Moreover, the present application can adopt the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to magnetic disk storage, CD-ROM, optical storage, etc.) that contain computer-usable program code.
[0183] The present application is described with reference to the flowcharts and / or block diagrams of the methods, devices (systems), and computer program products according to the present application. It should be understood that each process and / or block in the flowchart and / or block diagram, as well as the combination of processes and / or blocks in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 a process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.
[0184] These computer program instructions may also be stored in a computer readable memory that can direct a computer or other programmable data processing device to work in a specific manner, so that the instructions stored in the computer readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 a process or multiple processes and / or boxes Figure 1 The function specified in one or more boxes.
[0185] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operational steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing the instructions executed on the computer or other programmable device for implementing the process. Figure 1 a process or multiple processes and / or boxes Figure 1 A step that specifies a function in one or more boxes.
[0186] Although the preferred embodiments of the present application have been described, those skilled in the art may make additional changes and modifications to these embodiments once they have learned the basic creative concept. Therefore, the appended claims are intended to be interpreted as including the preferred embodiments and all changes and modifications that fall within the scope of the present application.
[0187] Obviously, those skilled in the art may make various changes and modifications to this application without departing from the spirit and scope of this application. Thus, if these modifications and variations of this application fall within the scope of the claims of this application and their equivalents, this application is intended to include these modifications and variations.
Claims
1. An information recommendation method, characterized in that: The method includes: Determining multiple selection paths from a target user tag of a user to information tags of candidate information from a knowledge graph; wherein the knowledge graph includes multiple user tags and multiple information tags of candidate information; Determine the target conditional probability of each candidate information based on the conditional probability of the selection path; wherein the conditional probability of any selection path is determined based on the conditional probabilities between adjacent labels in the selection path; selecting target candidate information to be recommended to the user from the candidate information according to the target conditional probability of each candidate information; The conditional probability of the selected path is determined by: For a direct selection path, determining the conditional probability between the target user tag and the information tag of the candidate information in the direct selection path as the conditional probability of the direct selection path; wherein the adjacent tags in the direct selection path only include one target user tag and one information tag of the candidate information; For an indirect selection path, a conditional probability of the indirect selection path is determined based on a conditional probability between every two adjacent tags in the indirect selection path; wherein the indirect selection path includes at least two groups of adjacent tags.
2. The method according to claim 1, wherein The adjacent tags in the selected path include some or all of the following: an adjacent target user tag and a non-target user tag, two adjacent target user tags, two adjacent non-target user tags, an adjacent target user tag and an information tag, an adjacent non-target user tag and an information tag, and two adjacent information tags.
3. The method according to claim 1, wherein Determining a target conditional probability of each candidate information based on the conditional probability of the selected path includes: For any candidate information, the target conditional probability of the candidate information is determined according to the conditional probabilities of all selected paths whose path endpoints are the information tag of the candidate information.
4. The method according to claim 1, wherein Selecting target candidate information recommended to the user from the candidate information according to the target conditional probability of each candidate information includes: Determine the N candidate information with the largest target conditional probability as the target candidate information; or The candidate information whose target conditional probability is greater than the preset conditional probability is determined as the target candidate information.
5. The method according to claim 1, wherein Determine the target user tag of the user by: Determine a first tag of the user based on the historical behavior of the user, and determine the first tag and the second tag of the user as a target user tag of the user; The second tag includes the first tags of other users associated with the user, and / or tags associated with the first tag of the user determined based on a preset tag library.
6. The method according to claim 1, wherein The information label of the candidate information is multi-level information determined by performing multi-level clustering on the candidate information.
7. The method according to claim 6, wherein The conditional probability between adjacent labels is determined based on the user label of the sample user, the conditional probability corresponding to the operation type of the sample user on the candidate information, and the multi-level information of the candidate information; The sample users are users who perform operations on the candidate information; the operation types include browsing, liking, collecting, commenting, and some or all of sharing.
8. An information recommendation device, characterized in that: include: A path determination module is used to determine multiple selection paths from the user's target user tag to the information tags of the candidate information from the knowledge graph; wherein the knowledge graph includes multiple user tags and multiple information tags of the candidate information; A probability determination module, configured to determine a target conditional probability of each candidate information based on the conditional probability of the selection path; wherein the conditional probability of any selection path is determined based on the conditional probabilities between adjacent labels in the selection path; An information recommendation module, configured to select target candidate information to be recommended to the user from the candidate information according to the target conditional probability of each candidate information; The conditional probability of the selected path is determined by: For a direct selection path, determining the conditional probability between the target user tag and the information tag of the candidate information in the direct selection path as the conditional probability of the direct selection path; wherein the adjacent tags in the direct selection path only include one target user tag and one information tag of the candidate information; For an indirect selection path, a conditional probability of the indirect selection path is determined based on a conditional probability between every two adjacent tags in the indirect selection path; wherein the indirect selection path includes at least two groups of adjacent tags.
9. The device according to claim 8, wherein The adjacent tags in the selected path include some or all of the following: an adjacent target user tag and a non-target user tag, two adjacent target user tags, two adjacent non-target user tags, an adjacent target user tag and an information tag, an adjacent non-target user tag and an information tag, and two adjacent information tags.
10. The device according to claim 8, wherein The probability determination module is specifically used to: For any candidate information, the target conditional probability of the candidate information is determined according to the conditional probabilities of all selected paths whose path endpoints are the information tag of the candidate information.
11. The device according to claim 8, wherein The information recommendation module is specifically used for: Determine the N candidate information with the largest target conditional probability as the target candidate information; or The candidate information whose target conditional probability is greater than the preset conditional probability is determined as the target candidate information.
12. The device according to claim 8, wherein Determine the target user tag of the user by: Determine a first tag of the user based on the historical behavior of the user, and determine the first tag and the second tag of the user as a target user tag of the user; The second tag includes the first tags of other users associated with the user, and / or tags associated with the first tag of the user determined based on a preset tag library.
13. The device according to claim 8, wherein The information label of the candidate information is multi-level information determined by performing multi-level clustering on the candidate information.
14. The device according to claim 13, wherein The conditional probability between adjacent labels is determined based on the user label of the sample user, the conditional probability corresponding to the operation type of the sample user on the candidate information, and the multi-level information of the candidate information; The sample users are users who perform operations on the candidate information; the operation types include browsing, liking, collecting, commenting, and some or all of sharing.
15. An electronic device, characterized in that: The system comprises at least one processor and at least one memory, wherein the memory stores a computer program, and when the program is executed by the processor, the processor executes the method according to any one of claims 1 to 7.
16. A computer-readable storage medium, characterized in that It stores a computer program that can be executed by an electronic device. When the program runs on the electronic device, the electronic device executes the method according to any one of claims 1 to 7.
17. A computer program product, characterized in that The method comprises computer-executable instructions for causing a computer to execute the method according to any one of claims 1 to 7.
Citation Information
Patent Citations
Keyword extraction method and device, storage medium and computer equipment
CN110826328A
Intelligent question and answer method, device and equipment and storage medium
CN111143540A