A method, device, storage medium and electronic device for information recommendation
By constructing a feature map, the features of users and recommendation information are obtained, and the click-through rate of users under the influence of descriptive information is predicted. This solves the problem that the influence of descriptive information is not considered in the existing technology, and achieves more accurate information recommendation.
Patent Information
- Application Number
- CN202210856576.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-07-20
- Publication Date
- 2025-11-28
- Estimated Expiration
- 2042-07-20
AI Technical Summary
Existing information recommendation methods fail to adequately consider the impact of descriptive information contained in the recommended information on user click behavior, resulting in inaccurate recommendations.
By constructing feature maps, user information, information to be recommended, and descriptive information are obtained. User map features, description map features, and information map features are determined. These features are then used to predict the click-through rate of users under the influence of descriptive information, and information is recommended.
It improves the accuracy of information recommendations, making the recommended information more in line with user preferences and enhancing the user experience.
Smart Images

Figure CN115130000B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present specification relates to the field of information recommendation, and in particular, to a method and apparatus for information recommendation, a storage medium and an electronic device BACKGROUND
[0002] In recent years, with the development of technology, information recommendation models have been applied to more and more fields, especially in the background of recommendation, search, advertising, etc. The information recommendation model can predict the click rate of different recommended information of the user by analyzing the user information and historical behavior, so as to generate a corresponding recommended information list according to the prediction result to display to the user.
[0003] However, the current method usually only predicts the click rate of the user according to the characteristics of the user and the characteristics of the recommended information, but ignores the guiding effect of other factors contained in the recommended information on the user, which will result in the recommended information recommended to the user being not accurate enough.
[0004] Therefore, how to accurately predict the click situation of the user on different recommended information, so as to recommend the recommended information that meets the user's preference to the user, and thus improve the user's experience, is a problem to be solved. SUMMARY
[0005] The present specification provides a method and apparatus for information recommendation, a storage medium and an electronic device to partially solve the above problems existing in the prior art.
[0006] The present specification adopts the following technical solutions:
[0007] The present specification provides a method for information recommendation, comprising:
[0008] obtaining user information of a user and to-be-recommended information;
[0009] inputting the user information and to-be-recommended information into a pre-trained information recommendation model to determine description information contained in the to-be-recommended information for describing a business object corresponding to the to-be-recommended information, and determining a user graph feature corresponding to the user, a description graph feature corresponding to the description information, and an information graph feature corresponding to the to-be-recommended information through a pre-constructed feature graph, wherein the feature graph is used to represent the historical interaction relationship between each user and each historical recommended information under the influence of different types of historical description information;
[0010] determining a first click rate of the user under the influence of the description information on the to-be-recommended information according to the user graph feature, the description graph feature, and the information graph feature;
[0011] According to the first click rate, information is recommended to the user.
[0012] Optionally, the feature map is constructed, specifically comprising:
[0013] Obtain historical interaction records between each user and each historical recommended information.
[0014] For each user, according to the historical interaction records, connect the user node corresponding to the user and the information node corresponding to the historical recommended information clicked by the user with the description feature corresponding to the determined description information matching the historical recommended information as an edge, to construct the feature map.
[0015] Optionally, the description information matching the historical recommended information is determined, specifically comprising:
[0016] If the historical recommended information does not contain description information, determine the description information matching the historical recommended information according to the historical interaction records.
[0017] Optionally, the description information matching the historical recommended information is determined according to the historical interaction records, specifically comprising:
[0018] Determine other historical recommended information of the same information type as the historical recommended information.
[0019] According to the historical interaction records corresponding to the other historical recommended information, determine reference recommended information from the other historical recommended information.
[0020] According to the description information contained in the reference recommended information, determine the description information matching the historical recommended information.
[0021] Optionally, before the information is recommended to the user according to the first click rate, the method further comprises:
[0022] Determine the original user feature corresponding to the user and the original information feature corresponding to the recommended information.
[0023] According to the original user feature, the user feature, the original information feature and the information feature, determine the click rate of the user clicking the recommended information as a second click rate.
[0024] According to the first click rate, information is recommended to the user.
[0025] According to the first click rate and the second click rate, information is recommended to the user.
[0026] Optionally, information is recommended to the user according to the first click rate and the second click rate, and specifically includes:
[0027] A weight corresponding to the first click rate is determined as a first weight, and a weight corresponding to the second click rate is determined as a second weight.
[0028] According to the first click rate and the first weight, and the second click rate and the second weight, a click rate of the user clicking the information to be recommended is determined as a comprehensive click rate.
[0029] According to the comprehensive click rate, information is recommended to the user.
[0030] Optionally, a weight corresponding to the first click rate is determined as a first weight, and a weight corresponding to the second click rate is determined as a second weight, and specifically includes:
[0031] According to the user graph feature, the description graph feature and the information graph feature, the first weight is determined.
[0032] According to the first weight, the second weight is determined.
[0033] The present specification provides an information recommendation device, which includes:
[0034] An acquisition module acquires user information of a user and information to be recommended;
[0035] An input module inputs the user information and the information to be recommended into a pre-trained information recommendation model to determine description information contained in the information to be recommended, which is used to describe a business object corresponding to the information to be recommended, and determines a user graph feature corresponding to the user, a description graph feature corresponding to the description information and an information graph feature corresponding to the information to be recommended through a pre-constructed feature graph, wherein the feature graph is used to represent a historical interaction relationship between each user and each historical recommended information under the influence of different types of historical description information.
[0036] A determination module determines a first click rate of the user clicking the information to be recommended under the influence of the description information according to the user graph feature, the description graph feature and the information graph feature.
[0037] A recommendation module recommends information to the user according to the first click rate.
[0038] The present specification provides a computer readable storage medium, which stores a computer program, and the computer program is executed by a processor to implement the above-mentioned information recommendation method.
[0039] The specification provides an electronic device, comprising a memory, a processor, and a computer program stored on the memory and executable on the processor, wherein the processor implements the method of the above information recommendation when executing the program.
[0040] The above at least one technical solution adopted by the specification can achieve the following beneficial effects:
[0041] In the information recommendation method provided by the specification, the obtained user information and the to-be-recommended information are input into a pre-trained information recommendation model to determine description information contained in the to-be-recommended information for describing a business object corresponding to the to-be-recommended information, and through a pre-constructed feature graph, a user graph feature corresponding to the user, a description graph feature corresponding to the description information, and an information graph feature corresponding to the recommended information are determined, the feature graph is used to represent the historical interaction relationship between each user and each historical recommended information under the influence of different types of historical description information, the click rate of the user under the influence of the description information for clicking the to-be-recommended information is determined according to the user graph feature, the description graph feature, and the information graph feature, and then information is recommended to the user according to the click rate.
[0042] As can be seen from the above method, in the information recommendation to the user, the description information contained in the recommended information is extracted, and the user graph feature corresponding to the user, the description graph feature corresponding to the description information, and the information graph feature corresponding to the recommended information are determined in the corresponding feature graph, so that the information recommendation model can accurately determine the click rate of the user under the influence of the description information for clicking the to-be-recommended information. Compared with the method of currently only recommending information according to user information and recommended information, the present scheme fully considers the influence of the description information contained in the recommended information on the user's click, so that the information recommended to the user is more accurate. BRIEF DESCRIPTION OF DRAWINGS
[0043] The drawings described herein are used to provide further understanding of the specification, and form a part of the specification. The illustrative embodiments of the specification and their descriptions are used to explain the specification, and do not constitute an improper limitation on the specification. In the drawings:
[0044] Figure 1 It is a flowchart of the information recommendation method provided in the specification;
[0045] Figure 2 It is a generation process diagram of the interaction record provided by the specification;
[0046] Figure 3 It is a comprehensive click rate prediction process diagram provided by the specification;
[0047] Figure 4 A schematic diagram of an information recommendation device provided in the present specification;
[0048] Figure 5 A schematic diagram of an electronic device corresponding to Figure 1 the present specification. DETAILED DESCRIPTION
[0049] For the purposes of the present specification, the technical solutions and advantages of the present specification will be more clearly described below in conjunction with the specific embodiments of the present specification and the corresponding drawings. Obviously, the described embodiments are only some of the embodiments of the present specification, not all embodiments. Based on the embodiments in the present specification, all other embodiments obtained by a person of ordinary skill in the art without creative labor fall within the scope of protection of the present specification.
[0050] The technical solutions provided by the embodiments of the present specification will be described in detail below in conjunction with the drawings.
[0051] Figure 1 A flowchart of a method of information recommendation provided in the present specification, comprising the following steps:
[0052] S101: Obtain user information of a user.
[0053] When a user browses recommendation information such as takeout, hotels, catering, etc. in a business client or webpage, the user's preference for the attributes of the recommendation information (such as the price, location, type, etc. of the business object in the recommendation information) often determines whether the user will click on the recommendation information, but in actual applications, the description information contained in the recommendation information for describing the business object corresponding to the recommended information will also play a certain guiding role for the user. Some users will often pay more attention to these description information recorded in the recommendation information. If the user is interested in the description information recorded in the recommendation information, the user will click on the recommendation information even if the attributes of the recommendation information do not meet the user's preferences.
[0054] For example, when recommending hotel information to a user, the price, type, and location of the hotel often affect the user's clicking on the recommendation information. The user tends to click on the hotel with the price and location closest to his or her own when browsing the information, but when the user browses a hotel recommendation information that does not meet his or her preferences, if the description information (such as hotel facilities, hotel environment, service quality, sound insulation effect, geographical location, etc.) contained in this recommendation information can interest the user, the user will also be interested, and then click on the recommendation information.
[0055] Based on this, the present specification provides a method for information recommendation, wherein user information of a user needs to be acquired, so as to describe a user portrait according to the user information, and determine a user feature corresponding to the user.
[0056] It should be noted that in the present specification, before acquiring the user information of the user, the user needs to be authorized first, and the user information of the user can be acquired only after the user is authorized. If the user refuses to authorize, the user information of the user will not be acquired. If the user authorizes first and then cancels the authorization, all the user information of the user acquired after the user authorizes will be deleted.
[0057] In addition, the server can also acquire each to-be-recommended information, select a certain number of to-be-recommended information from the to-be-recommended information, and display the to-be-recommended information to the user in the determined order, wherein the recommended information can be recommended information corresponding to different types of business objects such as takeout, hotels, clothing, catering, daily necessities, etc., and of course, can also be recommended information corresponding to other business objects, which is not limited in the present specification.
[0058] In the present specification, the execution subject for implementing the method for information recommendation can refer to a specified device such as a server arranged in a business platform. In order to facilitate description, the present specification will be described below only by taking the server as the execution subject.
[0059] S102: input the user information and the to-be-recommended information into a pre-trained information recommendation model, to determine description information contained in the to-be-recommended information for describing a business object corresponding to the to-be-recommended information, and determine a user graph feature corresponding to the user, a description graph feature corresponding to the description information, and an information graph feature corresponding to the to-be-recommended information through a pre-constructed feature graph, wherein the feature graph is used to represent a historical interaction relationship between each user and each historical recommended information under the influence of different types of historical description information.
[0060] After acquiring the user information corresponding to the user, the server can input the user information into a pre-trained information recommendation model. For each to-be-recommended information, the server can extract description information contained in the to-be-recommended information for describing a business object corresponding to the to-be-recommended information through the information recommendation model.
[0061] Of course, the description information can be a script for introducing and describing the to-be-recommended information, and of course, can also be comments, tags and other information in the to-be-recommended information, which is not limited in the present specification.
[0062] Further, the server can perform feature extraction on the user information of the user through a feature extraction layer set in the information recommendation model, to obtain original user features corresponding to the user, perform feature extraction on the to-be-recommended information, to obtain original information features corresponding to the to-be-recommended information, and perform feature extraction on the description information contained in the to-be-recommended information, to obtain original description features corresponding to the description information.
[0063] In this specification, the original description features corresponding to the description information can be original description features corresponding to a type to which the description information belongs. The type to which the description information belongs can be a type of different content recorded in the description information. For example, in a hotel recommendation scenario, the type to which the description information belongs can be a hotel environment description, a hotel service quality description, a hotel geographical location description, a hotel equipment and facility description, and a hotel sound insulation effect description. Of course, the type to which the description information belongs can also be other content types corresponding to other business scenarios, which are not limited in this specification.
[0064] The server can map the user information into a one-hot vector through a feature extraction layer in the information recommendation model, and then multiply the one-hot vector corresponding to the user information and a corresponding embedding matrix, to obtain the original user features corresponding to the user (i.e., a vector obtained by multiplying the one-hot vector corresponding to the user information and the corresponding embedding matrix).
[0065] Similarly, the original information features corresponding to the recommended information and the description features corresponding to the description information contained in the recommended information can also be extracted in the above manner, which will not be described in detail herein.
[0066] After obtaining the original user features corresponding to the user, the original information features corresponding to the recommended information, and the original description features corresponding to the description information contained in the recommended information, the server can input the original user features, the original information features, and the original description features into a feature graph set in the information recommendation model in advance, so that the feature graph queries, in the graph, the user graph features corresponding to the user, the information graph features corresponding to the recommended information, and the description graph features corresponding to the description information contained in the recommended information according to the original user features, the original information features, and the original description features.
[0067] Of course, the server can also directly input the user information corresponding to the user, the recommended information, and the description information contained in the recommended information into the above feature graph, so that the feature graph directly determines the user graph features corresponding to the user according to the user information, determines the information graph features corresponding to the recommended information according to the recommended information, and determines the description graph features corresponding to the description information contained in the recommended information according to the description information.
[0068] In actual application, there can be some new users who do not appear in the feature map that has been constructed, and thus the user feature map of the user can not be found. Therefore, when information is recommended to the new user, some recommended information that meets other conditions can be recommended to the user first, such as recommended information with the highest current click rate or recommended information with the most recommended quantity. After the user uses the recommended information and some interaction data of the user under the influence of different description information and different recommended information is generated, the user feature map of the user can be updated to the feature map according to the interaction data.
[0069] In addition, the server can also perform feature matching on the original user feature of the new user and the original user feature of other users in the feature map, so as to take the user feature map of the other user corresponding to the original user feature closest to the original user feature of the user as the user feature map of the user.
[0070] The feature map can be constructed based on historical interaction data of the user and other users in the sample data set under the influence of different types of description information and each recommended information, and is used to represent the historical interaction relationship between each user and each historical recommended information under the influence of different types of historical description information. That is, if there is data of the user clicking the recommended information under the description information in the feature map, the user will have a greater probability of clicking the recommended information under the guidance of the description information.
[0071] It should be noted that in the present specification, although the roles of the original feature extraction layer and the feature map are both to determine the corresponding features, the original user features, the original description features and the original information features extracted by the initial feature extraction layer are essentially different from the features determined by the feature map. The original user features, the original description features and the original information features extracted by the initial feature extraction layer are independent of each other and have no certain correlation, while the target features determined by the feature map are obtained by iterating each original feature according to the historical interaction data of each user and each recommended information under the influence of different types of description information. That is, the user feature map, the information feature map and the description feature map determined by the feature map have certain correlation and can reflect the influence of different types of scripts on the interaction behavior between the user and the recommended information.
[0072] Before the server constructs the feature map, the historical interaction records between each user and each historical recommended information need to be obtained, so as to construct the feature map.
[0073] In actual application, some recommended information contains description information, and some recommended information does not contain description information. The historical interaction record of the same user and each recommended information is often sparse. For example, if a specified user does not click a recommended information containing description information, only the interaction record that the user does not click the recommended information under the description information is generated. Since it is unknown whether the user will click the historical recommended information in the case that the recommended information does not contain description information, the corresponding interaction record in the case that the recommended information does not contain description information will not appear. Such sparse single-direction interaction record is not conducive to the construction of the feature map, and limits the accuracy of the constructed feature map.
[0074] Therefore, the server can determine whether the historical recommended information contains description information for each historical recommended information, obtain a determination result, and then generate new sample data according to the determination result and actual operation data of the user on the historical recommended information.
[0075] Specifically, since the description information contained in the recommended information often has a positive guiding effect on the click behavior of the user in the process of browsing information, for the historical recommended information containing historical description information and on which the user has clicked, the server can generate a historical interaction record that the user does not click the historical recommended information in the case that the historical recommended information does not contain historical description information. In other words, if the user does not click the historical recommended information in the case that the historical recommended information contains historical description information, the user will not click the historical recommended information in the case that the historical recommended information does not contain historical description information.
[0076] For the historical recommended information not containing historical description information and on which the user has clicked, the server can generate an interaction record that the user clicks the historical recommended information in the case that the historical recommended information contains historical description information. In other words, if the user clicks the historical recommended information in the case that the historical recommended information does not contain historical description information, the user will click the historical recommended information in the case that the historical recommended information contains historical description information.
[0077] Since the user node and the information node are connected by an edge when the feature map is constructed, for the historical recommended information on which the user has clicked but which does not contain description information, that is, the historical recommended information according to the historical interaction record generated in the case that the historical recommended information does not contain historical description information and on which the specified user has clicked, the server can determine whether the historical recommended information contains description information. If the historical recommended information does not contain description information, the server determines the description information matched with the historical recommended information according to the historical interaction record.
[0078] Specifically, the server can determine other historical recommendation information of the same information type as the historical recommendation information, and determine reference recommendation information from the other historical recommendation information according to historical interaction records corresponding to the other historical recommendation information, and then determine description information matching the historical recommendation information according to description information contained in the reference recommendation information.
[0079] For example, the server can determine the historical recommendation information with the most clicks and containing description information as the reference recommendation information, and the description information contained in the reference recommendation information as the description information matching the historical recommendation information.
[0080] Of course, the server can also determine the description information of the historical recommendation information that is displayed to other users the most times as the description information matching the historical recommendation information.
[0081] And for the historical recommendation information that the user has clicked and contains description information, the server does not need to reconfirm the description information of the historical recommendation information.
[0082] Of course, the description information in the generated historical recommendation information can also be the description information corresponding to other historical recommendation information clicked by the user, which is not limited in the specification.
[0083] In this way, the actual interaction record and the new generated interaction record generated according to the speculation of the actual interaction record are obtained. In order to facilitate understanding, the specification also provides a generation diagram of sample data, as shown in Figure 2 .
[0084] Figure 2 A generation process diagram of the interaction record provided in the specification.
[0085] Among them, the server can filter out actual samples containing description information and not clicked by the user, and historical interaction records containing no description information and clicked by the user, and then make an inference. For historical interaction records containing description information and not clicked by the user, the user himself will have repulsion to the historical recommendation information corresponding to the actual sample, so in the case that the historical recommendation information does not contain description information, the historical recommendation information will not be clicked, so the corresponding new generated interaction record of the historical recommendation information not containing description information and not clicked by the user will be generated.
[0086] For the historical interaction record without description information and with user click, the user is interested in the historical recommendation information, so the user will click the historical recommendation information with description information, and the corresponding historical recommendation information with description information and user click will be generated.
[0087] After obtaining the historical interaction record and the generated interaction record, the server can construct a feature graph, wherein the graph convolution network comprises a plurality of convolution layers, in each convolution layer, since one user clicks a plurality of recommendation information and one recommendation information is clicked by a plurality of users, the user node of the first layer of the graph convolution network can be represented as: The information node of this layer can be represented as:
[0088] For any one node f (the node can be a user node or an information node), the combination of the neighbor nodes (i.e. the nodes connected to the node f) of the node f can be represented as:
[0089] N f ={(t,b)|(f,t,b)∈G}
[0090] Wherein, N f is the neighbor node combination of the node f, b is the neighbor node of f, t is the edge between the two nodes, and G is the feature graph.
[0091] Therefore, the feature corresponding to the node f can be represented by the neighbor nodes of the node f and the corresponding edges:
[0092]
[0093] Wherein, is the representation of the feature corresponding to the node f through the neighbor nodes of the node f, N f is the neighbor node set, is the feature corresponding to the neighbor node b connected to the node f in this layer, e t is the feature corresponding to the edge between the node f and the neighbor node b.
[0094] After convolution propagation through a plurality of convolution layers, the graph feature corresponding to the node after iteration can be represented as:
[0095]
[0096] Wherein, is the graph feature corresponding to the node f in the last layer (i.e. the l layer), LeakyReLU is the corresponding activation function, W1 and W2 are the corresponding transformation matrices respectively.
[0097] In this way, the user graph feature corresponding to each user, the information graph feature corresponding to each historical recommendation information, and the description graph feature corresponding to each description information can be obtained, so that the feature graph is constructed through the above graph features.
[0098] Specifically, for each user, the server can take the user graph feature corresponding to the user and the information graph feature corresponding to the historical recommendation information clicked by the user as nodes, and connect the user graph feature node and the information graph feature node with the description graph feature corresponding to the historical description information contained in the historical recommendation information as an edge. In this way, if there is a user u i under the guidance of the historical description information t k , the historical recommendation information i j has been clicked, a triple (u i , t k , i j ) is formed, that is, the user graph feature node u k is connected with the information graph feature node i i through the description graph feature node t j .
[0099] S103: Determine a first click rate of the user clicking the to-be-recommended information under the influence of the description information according to the user graph feature, the description graph feature, and the information graph feature.
[0100] The information recommendation model can include two prediction networks, namely a first prediction network and a second prediction network. The second prediction network is configured to determine, based on the matching degree between the user information and the to-be-recommended information, a click rate of the user to the to-be-recommended information as a second click rate according to inputted original user features, original information features, user graph features, and information graph features.
[0101] The first prediction network is configured to determine a first click rate of the user clicking the to-be-recommended information under the influence of the description information contained in the to-be-recommended information according to inputted user graph features, description graph features, and information graph features.
[0102] Since the user graph feature corresponding to the user and the information graph feature corresponding to the to-be-recommended information are obtained after multiple iterations in the feature graph construction process, the user graph feature, the information graph feature and the description graph feature are in different representation spaces. Therefore, before the user graph feature and the information graph feature are input into the first prediction network, the user graph feature and the information graph feature need to be processed. The processing process of the user graph feature corresponding to the user can be represented by the following formula:
[0103] e′ u =e u +σ(e u ⊙e t )⊙e u
[0104] wherein e u is the user graph feature corresponding to the user, e′ u is the processed user graph feature, and σ is an activation function (such as a sigmod function).
[0105] The processing process of the association feature corresponding to the to-be-recommended information can be represented by the following formula:
[0106] e′ i =e i +σ(e i ⊙e t )⊙e i
[0107] wherein e i is the information graph feature corresponding to the to-be-recommended information, e′ i is the processed information graph feature corresponding to the to-be-recommended information, and σ is an activation function.
[0108] In addition, the server can also perform corresponding processing on the description graph feature.
[0109] After the user graph feature, the information graph feature and the description graph feature are processed, the server can input the processed user graph feature, the processed information graph feature and the processed description graph feature corresponding to the description information contained in the to-be-recommended information into the first prediction network, so as to determine the first click rate of the user under the influence of the description information.
[0110] The server can determine the weight corresponding to the first click rate as the first weight, and determine the weight corresponding to the second click rate as the second weight. Then, the server can determine the comprehensive click rate corresponding to the to-be-recommended information according to the first click rate, the first weight corresponding to the first click rate, the second click rate and the second weight corresponding to the second click rate.
[0111] Furthermore, based on the aforementioned graph features, the server can determine the first weight corresponding to the first click-through rate and the second weight corresponding to the second click-through rate using a multilayer perceptron. The weight corresponding to the first click-through rate can be expressed by the following formula:
[0112]
[0113] Where ω is the first weight corresponding to the first click-through rate mentioned above, MLP is a multilayer perceptron, and σ is the sigmoid function. For user u i Corresponding user graph features For recommended information i j The included descriptive information t k Corresponding descriptive spectral features, For recommended information i j The corresponding information graph features.
[0114] The server can then determine the second weight corresponding to the second click-through rate based on the weight corresponding to the first click-through rate.
[0115] In practical applications, if users focus more on the descriptive information included in the recommendations, the attributes of the recommendations (such as the product category and price range) will have a smaller impact on user click behavior. Conversely, if users focus more on the attributes of the recommendations, the descriptive information may have a smaller impact on user click behavior. Therefore, the overall click-through rate can be expressed by the following formula:
[0116]
[0117] in, For the information to be recommended i j The corresponding overall click-through rate, The first click-through rate for the information to be recommended. Let ω be the second click-through rate corresponding to the information to be recommended, and ω be the first weight corresponding to the first click-through rate. Then (1-ω) is the second weight corresponding to the second click-through rate.
[0118] As can be seen from the above formula, the larger the first weight corresponding to the first click-through rate, the smaller the second weight corresponding to the second click-through rate. Conversely, the smaller the first weight corresponding to the first click-through rate, the larger the second weight corresponding to the second click-through rate. However, the sum of the first weight and the second weight is a fixed value (i.e., the sum is 1).
[0119] To facilitate understanding, this manual also provides a schematic diagram of the comprehensive click-through rate prediction process, such as... Figure 3 As shown.
[0120] Figure 3 A schematic diagram of an integrated click rate prediction process is provided for the present specification.
[0121] The server can input the processed user graph features, the processed information graph features, and the processed description graph features into a first prediction network to determine a first click rate corresponding to the recommended information, input the user graph features, the information graph features, original user features, and original information features into a second prediction network to determine a second click rate corresponding to the recommended information, and further determine a first weight corresponding to the first click rate and a second weight corresponding to the second click rate according to the graph features, and then perform weighted summation on the first click rate and the second click rate according to the first weight and the second weight to obtain an integrated click rate corresponding to the recommended information.
[0122] S104: recommending information to the user according to the first click rate.
[0123] After determining the first click rate and the integrated click rate corresponding to each recommended information, the server can recommend information to the user according to the integrated click rate corresponding to each recommended information. For example, the server can sort the recommended information according to the integrated click rate from high to low to obtain a sorting result corresponding to each recommended information, select the recommended information before a specified sorting position, generate a recommended list corresponding to the recommended information, and recommend information to the user.
[0124] Of course, the server can also recommend information to the user according to only the first click rate corresponding to each recommended information, or recommend information to the user according to only the second click rate corresponding to each recommended information.
[0125] In addition, the information recommendation model needs to be trained in advance before being used. It should be noted that the historical interaction records between each user and each historical recommended information included in the sample data set used in the training process of the information recommendation model can be the historical interaction records between each user and each historical recommended information in the process of constructing the feature graph. Of course, they can also be different historical interaction records, but new generated interaction records can be generated by inferring the actual interaction records in the same way.
[0126] That is, for the historical interaction record containing the description information and the user not clicking, the user himself will be repelled by the historical recommendation information corresponding to the actual sample, so in the case that the historical recommendation information does not contain the description information, the user will not click on the historical recommendation information, so the newly generated interaction record of the historical recommendation information not containing the description information and the user not clicking will be generated. For the historical interaction record not containing the description information and the user having clicked, the user himself will be interested in the historical recommendation information, so in the case that the historical recommendation information contains the description information, the user will click on the historical recommendation information, so the generated interaction record of the historical recommendation information containing the description information and the user having clicked will be generated.
[0127] In the present specification, the training subject for training the information recommendation model can refer to a server or a specified device such as a desktop computer, a notebook computer, etc. For the convenience of description, the training of the information recommendation model will be described below by taking the server as an example of the training subject for training the information recommendation model.
[0128] The server can obtain the historical user information and the historical recommendation information of each user, and input the historical user information and the historical recommendation information into the information recommendation model to be trained, to determine that the historical recommendation information contains the description information, and determine the user graph feature corresponding to the user, the description graph feature corresponding to the description information, and the information graph feature corresponding to the historical recommendation information through the pre-constructed feature graph, determine the first click rate of the user clicking on the historical recommendation information under the influence of the description information according to the user graph feature, the graph feature and the information graph feature, and recommend information to the user according to the first click rate, to obtain a recommendation result.
[0129] The server can train the information recommendation model with the optimization target of minimizing the deviation between the recommendation result and the actual operation of the specified user on each historical recommendation information, until the training target is met, and deploy the information recommendation model. The training target can be that the information recommendation model converges within a preset threshold range, or reaches a preset training number, to ensure that the information recommendation model accurately recommends the recommended information preferred by the user. The preset threshold range and the preset training number can be set according to the actual situation, and the present specification does not make specific limitations.
[0130] The loss function of the information recommendation model can be determined according to the actual interaction record of the specified user on each historical data and the comprehensive click rate corresponding to each historical data, and the information recommendation model is trained with the optimization target of minimizing the loss function. The loss function can be calculated by the following formula:
[0131]
[0132] Wherein, L is the loss function corresponding to the information recommendation model, y j is the actual interaction of the sample data j and the user. For example, when the user clicks on the sample data j, y j = 1, and when the user does not click on the sample data j, y j = 0. is the comprehensive click rate of the sample data j predicted by the information recommendation model, λ is a hyperparameter for controlling regularization, and Θ represents all trainable parameters in the model.
[0133] From the above formula, when the actual click condition y j of the sample data j is 1, that is, the user clicks on the sample data j, then The greater the comprehensive click rate of the sample data j predicted at this time, the smaller the value of L. When the actual click condition y j of the sample data j is 0, that is, the user does not click on the sample data j, The greater the comprehensive click rate of the sample data j predicted at this time, the greater the value of L.
[0134] From the above method, it can be seen that when the information is recommended to the user, the description information contained in the recommended information is extracted, and the user graph features corresponding to the user, the description graph features corresponding to the description information, and the information graph features corresponding to the recommended information are determined in the corresponding feature graph, so that the information recommendation model can accurately determine the click rate of the user clicking on the recommended information under the influence of the description information. Compared with the method of recommending information only according to user information and recommended information, the present scheme fully considers the influence of the description information contained in the recommended information on the user's click, so that the information recommended to the user is more accurate.
[0135] It should be noted that all actions of obtaining signals, information or data in the present specification are carried out in accordance with the corresponding data protection regulations and policies of the country where the device is located, and with the authorization of the corresponding device owner.
[0136] The above is the method of one or more embodiments of the present specification for information recommendation. Based on the same idea, the present specification also provides a corresponding information recommendation device, as shown in Figure 4 .
[0137] Figure 4 is a schematic diagram of an information recommendation device provided by the present specification, which comprises:
[0138] The acquisition module 401 acquires user information of a user and to-be-recommended information.
[0139] The input module 402 inputs the user information and the to-be-recommended information into a pre-trained information recommendation model to determine description information included in the to-be-recommended information and used to describe a service object corresponding to the to-be-recommended information, and determine, through a pre-constructed feature graph, a user graph feature corresponding to the user, a description graph feature corresponding to the description information, and an information graph feature corresponding to the to-be-recommended information, where the feature graph is used to represent a historical interaction relationship between each user and each historical recommended information under the influence of different types of historical description information.
[0140] The determination module 403 determines a first click rate of the user under the influence of the description information and clicking the to-be-recommended information according to the user graph feature, the description graph feature, and the information graph feature.
[0141] The recommendation module 404 performs information recommendation to the user according to the first click rate.
[0142] Optionally, the apparatus further includes a construction module 405.
[0143] The construction module 405 is specifically configured to obtain historical interaction records between each user and each historical recommended information; for each user, connect a user node corresponding to the user and an information node corresponding to historical recommended information clicked by the user with a description feature corresponding to determined description information matching the historical recommended information as an edge to construct the feature graph.
[0144] The construction module 405 is specifically configured to, if the historical recommended information does not include description information, determine description information matching the historical recommended information according to the historical interaction records.
[0145] The construction module 405 is specifically configured to determine other historical recommended information of the same information type as the historical recommended information, determine reference recommended information from the other historical recommended information according to historical interaction records corresponding to the other historical recommended information, and determine description information matching the historical recommended information according to description information included in the reference recommended information.
[0146] Optionally, before performing information recommendation to the user according to the first click rate, the recommendation module 404 is configured to determine original user features corresponding to the user and original information features corresponding to the to-be-recommended information, and determine a click rate of the user clicking the to-be-recommended information as a second click rate according to the original user features, the user graph feature, the original information features, and the information graph feature.
[0147] The recommendation module 404 is specifically configured to recommend information to the user according to the first click rate and the second click rate.
[0148] Optionally, the recommendation module 404 is specifically configured to determine a weight corresponding to the first click rate as a first weight, and a weight corresponding to the second click rate as a second weight; determine a click rate of the user clicking the to-be-recommended information as a comprehensive click rate according to the first click rate and the first weight, and the second click rate and the second weight; and recommend information to the user according to the comprehensive click rate.
[0149] Optionally, the recommendation module 404 is specifically configured to determine the first weight according to the user graph feature, the description graph feature and the information graph feature; and determine the second weight according to the first weight.
[0150] The specification also provides a computer-readable storage medium storing a computer program, and the computer program can be used to execute the above Figure 1 The specification also provides a computer-readable storage medium storing a computer program, and the computer program can be used to execute the above
[0151] The specification also provides a computer-readable storage medium storing a computer program, and the computer program can be used to execute the above Figure 5 The specification also provides a computer-readable storage medium storing a computer program, and the computer program can be used to execute the above Figure 1 The specification also provides a computer-readable storage medium storing a computer program, and the computer program can be used to execute the above Figure 5 The specification also provides a computer-readable storage medium storing a computer program, and the computer program can be used to execute the above Figure 1 The specification also provides a computer-readable storage medium storing a computer program, and the computer program can be used to execute the above
[0152] In the 1990s, it was quite obvious to distinguish whether an improvement in a technology was in hardware (e.g., improvement in circuit structures of diodes, transistors, switches, etc.) or in software (improvement in method flow). However, as technology has evolved, many improvements in method flow today can be considered as direct improvements in hardware circuit structures. Designers almost always obtain the corresponding hardware circuit structures by programming the improved method flow into hardware circuits. Therefore, it cannot be said that an improvement in a method flow cannot be implemented by hardware entity modules. For example, a programmable logic device (PLD) (e.g., a field programmable gate array (FPGA)) is an integrated circuit whose logic function is determined by user programming of the device. A digital system is "integrated" on a PLD by the designer programming it, rather than by asking a chip manufacturer to design and fabricate a custom integrated circuit chip. Moreover, instead of manually fabricating integrated circuit chips, this programming is now mostly implemented by "logic compiler" software, which is similar to software compilers used in program development, and the original code to be compiled is written in a specific programming language, which is called a hardware description language (HDL), and there are many such languages, such as ABEL (Advanced Boolean Expression Language), AHDL (Altera Hardware Description Language), Confluence, CUPL (Cornell University Programming Language), HDCal, JHDL (Java Hardware Description Language), Lava, Lola, MyHDL, PALASM, RHDL (Ruby Hardware Description Language), etc., and the most commonly used are VHDL (Very-High-Speed Integrated Circuit Hardware Description Language) and Verilog. Those skilled in the art should be aware that, as long as the method flow is logically programmed in the above-mentioned hardware description languages and programmed into an integrated circuit, a hardware circuit implementing the logical method flow can be easily obtained.
[0153] The controller can be implemented in any suitable manner. For example, it can take the form of a microprocessor or processor and a computer-readable medium storing computer-readable program code (e.g., software or firmware) executable by the (micro)processor, logic gates, switches, application-specific integrated circuits (ASICs), programmable logic controllers, and embedded microcontrollers. Examples of controllers include, but are not limited to, the following microcontrollers: ARC 625D, Atmel AT91SAM, Microchip PIC18F26K20, and Silicon Labs C8051F320. A memory controller can also be implemented as part of the control logic of the memory. Those skilled in the art will also recognize that, in addition to implementing the controller in purely computer-readable program code form, the same functionality can be achieved by logically programming the method steps to make the controller take the form of logic gates, switches, application-specific integrated circuits, programmable logic controllers, and embedded microcontrollers. Therefore, such a controller can be considered a hardware component, and the means included therein for implementing various functions can also be considered as structures within the hardware component. Alternatively, the means for implementing various functions can be considered as both software modules implementing the method and structures within the hardware component.
[0154] The systems, devices, modules, or units described in the above embodiments can be implemented by computer chips or entities, or by products with certain functions. A typical implementation device is a computer. Specifically, a computer can be, for example, a personal computer, laptop computer, cellular phone, camera phone, smartphone, personal digital assistant, media player, navigation device, email device, game console, tablet computer, wearable device, or any combination of these devices.
[0155] For ease of description, the above devices are described in terms of function, divided into various units. Of course, in implementing this specification, the functions of each unit can be implemented in one or more software and / or hardware components.
[0156] Those skilled in the art will understand that embodiments of this specification can be provided as methods, systems, or computer program products. Therefore, this specification may take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, this specification may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.
[0157] The specification is presented with reference to flow diagrams and / or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the specification. It will be understood that each block of the flow diagrams and / or block diagrams, and combinations of blocks in the flow diagrams and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general purpose computer, special purpose computer, embedded processing element or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flow diagrams and / or block diagrams block or blocks. Figure 1 The flow diagram and / or block diagram in the flow diagrams and / or block diagrams can represent one or more of any appropriate circuitry configured to perform the specified functions. In this regard, one or more flow diagrams and / or block diagrams in the flow diagrams and / or block diagrams can represent a means for performing the specified functions. Figure 1 The flow diagram and / or block diagram in the flow diagrams and / or block diagrams can represent one or more of any appropriate circuitry configured to perform the specified functions. In this regard, one or more flow diagrams and / or block diagrams in the flow diagrams and / or block diagrams can represent a means for performing the specified functions.
[0158] The computer program instructions can also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flow diagrams and / or block diagrams block or blocks. Figure 1 The flow diagram and / or block diagram in the flow diagrams and / or block diagrams can represent one or more of any appropriate circuitry configured to perform the specified functions. In this regard, one or more flow diagrams and / or block diagrams in the flow diagrams and / or block diagrams can represent a means for performing the specified functions. Figure 1 The flow diagram and / or block diagram in the flow diagrams and / or block diagrams can represent one or more of any appropriate circuitry configured to perform the specified functions. In this regard, one or more flow diagrams and / or block diagrams in the flow diagrams and / or block diagrams can represent a means for performing the specified functions.
[0159] The computer program instructions can also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flow diagrams and / or block diagrams block or blocks. Figure 1 The flow diagram and / or block diagram in the flow diagrams and / or block diagrams can represent one or more of any appropriate circuitry configured to perform the specified functions. In this regard, one or more flow diagrams and / or block diagrams in the flow diagrams and / or block diagrams can represent a means for performing the specified functions. The flow diagram and / or block diagram in the flow diagrams and / or block diagrams can represent one or more of any appropriate circuitry configured to perform the specified functions. In this regard, one or more flow diagrams and / or block diagrams in the flow diagrams and / or block diagrams can represent a means for performing the specified functions.
[0160] In a typical configuration, a computing device includes one or more processors (CPUs), input / output interfaces, network interfaces, and memory.
[0161] The memory can include non-persistent memory and / or persistent memory, such as flash memory, or other non-volatile memory, among others. The memory is an example of computer-readable media.
[0162] Computer-readable media includes permanent and non-permanent, movable and non-movable media that can be implemented by any method or technology to store information. The information can be computer-readable instructions, data structures, program modules or other data. Examples of computer storage media include, but are not limited to, phase-change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technologies, compact disc read-only memory (CD-ROM), digital versatile disc (DVD) or other optical storage, magnetic cassette, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other non-transmission medium that can be used to store information accessible to a computing device. According to the definition herein, computer-readable media does not include transitory media such as modulated data signals and carriers.
[0163] It should also be noted that the terms "comprising", "comprising" or any other variant thereof are intended to cover non-exclusive inclusion, so that a process, method, article or apparatus that includes a list of elements not only includes those elements, but also includes other elements not explicitly listed or inherent to such process, method, article or apparatus. Without more limitations, the element defined by the statement "comprising a" does not exclude the presence of additional identical elements in the process, method, article or apparatus that includes the element.
[0164] Those skilled in the art will appreciate that embodiments of the present specification can be provided as methods, systems or computer program products. Therefore, the present specification can take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Moreover, the present specification can take 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.) containing computer-usable program code.
[0165] The present specification can be described in the general context of computer-executable instructions, such as program modules, executed by computers. Generally, program modules include routines, programs, objects, components, data structures, etc. that perform particular tasks or implement particular abstract data types. The present specification can also be practiced in distributed computing environments where tasks are performed by remote processing devices connected through a communication network. In a distributed computing environment, program modules can be located in both local and remote computer storage media, including storage devices.
[0166] The various embodiments described in this specification are described using a numbering of embodiments approach: these are each individually integrated contributions pertaining to different but related aspects of the description. Each of the various embodiments can stand on its own, and each can be combined with the subject matter of other embodiments to produce further embodiments. Where appropriate, therefore, the contents of the specification can be regarded as being incorporated by reference, including the description, drawings, claims, abstract and the like.
[0167] The above only describes the embodiments of the specification and is not intended to limit the specification. The specification can have various modifications and changes for those skilled in the art. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the specification shall be included in the scope of claims of the specification.
Claims
1. A method for information recommendation, characterized in that, include: Obtain user information and recommendation information; The user information and the information to be recommended are input into a pre-trained information recommendation model to determine the descriptive information contained in the information to be recommended, which describes the business object corresponding to the information to be recommended. The user graph features, the description graph features, and the information graph features corresponding to the information to be recommended are determined by a pre-constructed feature graph. The feature graph is used to characterize the historical interaction relationship between each user and each historical recommendation information under the influence of different types of historical description information. Based on the user graph features, the description graph features, and the information graph features, determine the first click-through rate of the user clicking on the recommended information under the influence of the description information; Based on the first click-through rate, information is recommended to the user; the feature map is constructed, specifically including: Obtain the historical interaction records between each user and each historical recommendation information; For each user, based on the historical interaction records, the user node corresponding to that user and the information nodes corresponding to the historical recommendation information clicked by that user are connected using the descriptive features corresponding to the descriptive information that matches the historical recommendation information as edges to construct the feature graph; the descriptive information that matches the historical recommendation information specifically includes: If the historical recommendation information does not contain descriptive information, then based on the historical interaction records, descriptive information that matches the historical recommendation information is determined.
2. The method as described in claim 1, characterized in that, Based on the historical interaction records, descriptive information matching the historical recommendation information is determined, specifically including: Identify other historical recommendation information that belongs to the same information type as the historical recommendation information; Based on the historical interaction records corresponding to the other historical recommendation information, reference recommendation information is determined from the other historical recommendation information; Based on the descriptive information contained in the reference recommendation information, descriptive information that matches the historical recommendation information is determined.
3. The method as described in claim 1, characterized in that, Before recommending information to the user based on the first click-through rate, the method further includes: Determine the original user characteristics corresponding to the user and the original information characteristics corresponding to the information to be recommended; Based on the original user characteristics, the user graph characteristics, the original information characteristics, and the information graph characteristics, the click-through rate of the user clicking on the information to be recommended is determined as the second click-through rate; Based on the first click-through rate, information recommendations are made to the user, specifically including: Information is recommended to the user based on the first click-through rate and the second click-through rate.
4. The method as described in claim 3, characterized in that, Based on the first click-through rate and the second click-through rate, information recommendations are made to the user, specifically including: Determine the weight corresponding to the first click-through rate as the first weight, and the weight corresponding to the second click-through rate as the second weight; Based on the first click-through rate and the first weight, and the second click-through rate and the second weight, the click-through rate of the user clicking on the information to be recommended is determined as the comprehensive click-through rate; Information is recommended to the user based on the overall click-through rate.
5. The method as described in claim 4, characterized in that, Determine the weight corresponding to the first click-through rate as the first weight, and the weight corresponding to the second click-through rate as the second weight, specifically including: The first weight is determined based on the user graph features, the description graph features, and the information graph features; the second weight is determined based on the first weight.
6. An information recommendation device, characterized in that, include: The acquisition module retrieves user information and recommendation information for users. The input module inputs the user information and the information to be recommended into a pre-trained information recommendation model to determine the descriptive information contained in the information to be recommended, which describes the business object corresponding to the information to be recommended. Through a pre-constructed feature map, the module determines the user map features corresponding to the user, the description map features corresponding to the description information, and the information map features corresponding to the information to be recommended. The feature map is used to characterize the historical interaction relationship between each user and each historical recommendation information under the influence of different types of historical description information. The determination module determines the first click-through rate of the user clicking on the information to be recommended under the influence of the description information, based on the user graph features, the description graph features, and the information graph features. The recommendation module recommends information to the user based on the first click-through rate; Constructing the feature map specifically includes: Obtain the historical interaction records between each user and each historical recommendation information; For each user, based on the historical interaction records, the user node corresponding to the user and the information node corresponding to the historical recommendation information clicked by the user are connected with the descriptive features corresponding to the descriptive information that matches the historical recommendation information as edges to construct the feature graph; Determine the descriptive information that matches the historical recommendation information, specifically including: If the historical recommendation information does not contain descriptive information, then based on the historical interaction records, descriptive information that matches the historical recommendation information is determined.
7. A computer-readable storage medium, characterized in that, The storage medium stores a computer program, which, when executed by a processor, implements the method described in any one of claims 1 to 5.
8. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the program, it implements the method described in any one of claims 1 to 5.
Citation Information
Patent Citations
Model training and click rate estimation method and device
CN113010780A