Method and device for recommending information

By determining the user type and calculating the recommendation value using the DCN/MLP model, and selecting target recommendation information in combination with constraints, the problem of local optimal solutions in the existing recommendation algorithm is solved, the recommendation accuracy and user retention rate are improved, user interests are expanded, and user interests are expanded, and different business needs are adapted.

CN120541298APending Publication Date: 2025-08-26BEIJING BAIDU NETCOM SCI & TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510624419.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-05-15
Publication Date
2025-08-26

AI Technical Summary

Technical Problem

Existing recommendation algorithms are prone to falling into local optimal solutions when recommending information, making it difficult to expand user interests, resulting in user fatigue and cocoon status, and low recommendation accuracy and user retention rate.

Method used

By determining the user type, using pre-trained neural network model and index statistics table, combining DCN and MLP models, the recommendation value is calculated, and the target recommendation information that meets the scope is selected based on the constraints, avoiding local optimal solutions and improving recommendation accuracy.

Benefits of technology

It improves the accuracy of recommended information and user retention rate, adapts to different user types and business needs, expands user interests, and enhances the scale expansion ability of the product.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120541298A_ABST
    Figure CN120541298A_ABST
Patent Text Reader

Abstract

The invention provides an information recommendation method and device, and relates to the field of artificial intelligence, in particular to the field of intelligent search. According to the specific implementation scheme, a user type is determined according to historical behavior data of a user; querying a statistical index corresponding to the user type from a preset index statistical table; determining a user index based on the candidate recommendation information and the historical behavior data, and determining a recommendation value of the candidate recommendation information based on the user index; target recommendation information meeting constraint conditions is selected from the multiple pieces of candidate recommendation information based on the recommendation value and recommended to the user, and the constraint conditions include that the difference between the user index and the statistical index is within a preset range. According to the embodiment, the recommendation accuracy can be improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the field of artificial intelligence, and in particular to the field of intelligent search, and specifically to a method and device for recommending information. Background Art

[0002] Recommending information refers to the process of filtering content from an information database that may be of interest to users and then presenting this content to them. During the recommendation process, multiple estimated scores are combined through various methods, such as formulas or strategies, to ultimately derive a unique ranking criterion. This ranking criterion can be used to improve overall business metrics or, by simply increasing the impact of a single target score, to optimize specific metrics such as click-through rate, effective views, viewing time, and engagement, ensuring that recommended information is tailored to user interests. Summary of the Invention

[0003] The present disclosure provides a method, apparatus, device, storage medium, and computer program product for recommending information.

[0004] According to a first aspect of the present disclosure, a method for recommending information is provided, including: determining a user type based on the user's historical behavior data; querying statistical indicators corresponding to the user type from a preset indicator statistical table; determining user indicators based on candidate recommendation information and historical behavior data, and determining a recommendation value of the candidate recommendation information based on the user indicators; selecting target recommendation information that meets constraint conditions from multiple candidate recommendation information based on the recommendation value and recommending it to the user, wherein the constraint conditions include that the difference between the user indicator and the statistical indicator is within a predetermined range.

[0005] According to a second aspect of the present disclosure, a device for recommending information is provided, comprising: a determination unit configured to determine a user type based on the user's historical behavior data; a query unit configured to query statistical indicators corresponding to the user type from a preset indicator statistical table; a calculation unit configured to determine user indicators based on candidate recommendation information and historical behavior data, and determine a recommendation value of the candidate recommendation information based on the user indicators; a recommendation unit configured to select target recommendation information that meets a constraint condition from multiple candidate recommendation information based on the recommendation value and recommend it to the user, wherein the constraint condition includes that the difference between the user indicator and the statistical indicator is within a predetermined range.

[0006] According to a third aspect of the present disclosure, an electronic device is provided, comprising: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to execute any one of the methods described in the first aspect.

[0007] According to a fourth aspect of the present disclosure, a non-transitory computer-readable storage medium storing computer instructions is provided, wherein the computer instructions are used to enable the computer to execute any one of the methods according to the first aspect.

[0008] According to a fifth aspect of the present disclosure, a computer program product is provided, comprising a computer program, wherein the computer program implements any one of the methods according to the first aspect when executed by a processor.

[0009] The information recommendation method and apparatus provided by the embodiments of the present disclosure constrain user indicators by using statistical indicators of users of the same type, ensuring a relatively reasonable distribution of recommendation values ​​and thereby improving the accuracy of recommendations.

[0010] It should be understood that the contents described in this section are not intended to identify the key or important features of the embodiments of the present disclosure, nor are they intended to limit the scope of the present disclosure. Other features of the present disclosure will become readily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS

[0011] The accompanying drawings are provided to facilitate a better understanding of the present invention and do not constitute a limitation of the present disclosure.

[0012] Figure 1 is an exemplary system architecture diagram in which an embodiment of the present disclosure may be applied;

[0013] Figure 2 is a flowchart of an embodiment of a method for recommending information according to the present disclosure;

[0014] Figure 3a 、 3b is a schematic diagram of an application scenario of the method for recommending information according to the present disclosure;

[0015] Figure 4 is a flowchart of another embodiment of a method for recommending information according to the present disclosure;

[0016] Figure 5 is a structural diagram of an embodiment of a device for recommending information according to the present disclosure;

[0017] Figure 6 It is a structural diagram of a computer system of an electronic device suitable for implementing the embodiments of the present disclosure. DETAILED DESCRIPTION

[0018] The following description of exemplary embodiments of the present disclosure is made in conjunction with the accompanying drawings, including various details of the embodiments of the present disclosure to facilitate understanding. These details should be considered as merely exemplary. Therefore, those skilled in the art will recognize that various changes and modifications may be made to the embodiments described herein without departing from the scope and spirit of the present disclosure. Similarly, for the sake of clarity and conciseness, descriptions of well-known functions and structures are omitted in the following description.

[0019] Figure 1 An exemplary system architecture 100 is shown to which an embodiment of the method for recommending information or the apparatus for recommending information of the present disclosure can be applied.

[0020] like Figure 1 As shown, system architecture 100 may include terminals 101 and 102, a network 103, a database server 104, and a server 105. Network 103 is used as a medium for providing communication links between terminals 101 and 102, database server 104, and server 105. Network 103 may include various connection types, such as wired or wireless communication links or fiber optic cables.

[0021] User 110 can use terminals 101 and 102 to interact with server 105 via network 103 to receive or send messages, etc. Various client applications can be installed on terminals 101 and 102, such as model training applications, video applications, live streaming applications, search and recommendation applications, shopping applications, payment applications, web browsers, and instant messaging tools.

[0022] The terminals 101 and 102 here can be hardware or software. When the terminals 101 and 102 are hardware, they can be various electronic devices with display screens, including but not limited to smartphones, tablet computers, e-book readers, MP3 players (Moving Picture Experts Group Audio Layer III, Moving Picture Experts Group Audio Layer 3), laptop computers and desktop computers, etc. When the terminals 101 and 102 are software, they can be installed in the electronic devices listed above. They can be implemented as multiple software or software modules (for example, to provide distributed services), or as a single software or software module. No specific limitation is made here.

[0023] The database server 104 can be a database server that provides various services. For example, the database server can store training samples (which may include user behavior data, resource information, etc.). Training samples can be generated by users clicking, browsing, following, adding to favorites, and commenting on resources such as videos, images, and dynamic images through terminals 101 and 102. Various models can be used in the process of generating recommendation information based on training samples by the database server 104 or a third-party server. These models are stored in the database server 104.

[0024] Server 105 may also be a server that provides various services, such as a backend server that supports various applications displayed on terminals 101 and 102. The backend server may obtain various models used in generating recommendation information from database server 104. In this way, resource recommendations can be made based on various user behaviors and the recommendation information can be pushed to terminals 101 and 102.

[0025] The database server 104 and server 105 here can also be hardware or software. When they are hardware, they can be implemented as a distributed server cluster consisting of multiple servers, or as a single server. When they are software, they can be implemented as multiple software or software modules (for example, to provide distributed services), or as a single software or software module. No specific limitations are given here. The database server 104 and server 105 can also be servers of a distributed system, or servers combined with blockchain. The database server 104 and server 105 can also be cloud servers, or intelligent cloud computing servers or intelligent cloud hosts with artificial intelligence technology.

[0026] It should be noted that the information recommendation method provided in the embodiments of the present disclosure is generally executed by the server 105. Accordingly, the information recommendation device is generally also provided in the server 105.

[0027] It should be noted that, in the case where the server 105 can implement the relevant functions of the database server 104 , the database server 104 may not be provided in the system architecture 100 .

[0028] It should be understood that Figure 1 The numbers of terminals, networks, database servers, and servers in the embodiment are merely illustrative. Any number of terminals, networks, database servers, and servers may be provided as required.

[0029] Continue to refer Figure 2 , shows a process 200 of an embodiment of a method for recommending information according to the present disclosure. The method for recommending information includes the following steps:

[0030] Step 201, determining the user type based on the user's historical behavior data;

[0031] In this embodiment, the execution subject of the method for recommending information (eg Figure 1 The server (shown as a server) can collect user behavior data from the user's terminal via a wired or wireless connection to generate historical behavior data. Behavioral data may include data on clicks, browsing, interactions (such as following, adding to favorites, liking, forwarding, and commenting), and other behaviors. For example, information such as the subject, tag, and click time of the recommended information clicked by the user.

[0032] User types can be determined based on information such as the frequency and duration of behaviors in a user's historical behavior data. User types can represent user preferences. For example, if a user's total daily viewing time of short videos exceeds a predetermined time limit, the user type can be determined to be a short video enthusiast. User types can also represent the user's age, occupation, gender, and other factors.

[0033] Optionally, a user profile can be obtained based on user registration information, such as name, age, occupation, interests, etc. The user type can be determined based on the user profile and user historical behavior data. For example, if the total time a user spends viewing short videos per day is greater than a predetermined time and the user is a self-media occupation, the user type can be determined to be a short video practitioner.

[0034] Step 202: Query the statistical indicators corresponding to the user type from the preset indicator statistical table;

[0035] In this embodiment, the indicator statistics table is used to represent the correspondence between user types and statistical indicators.

[0036] Statistical indicators refer to the statistical average of user indicators of the same type of users. User indicators may include at least one of the following: click-through rate, completion rate, viewing time, effective viewing, and interaction.

[0037] Step 203: determining a user index based on the candidate recommendation information and the historical behavior data, and determining a recommendation value of the candidate recommendation information based on the user index;

[0038] In this embodiment, user indicators can be predicted based on candidate recommendation information and historical behavior data through a pre-trained neural network model. The neural network model can output a predicted value of at least one user indicator. The neural network model can adopt a shared underlying modeling architecture, and the shared layer may include components such as DCN (deep cross network) and multi-layer perceptron (MLP). The neural network model may include multiple towers, each tower corresponding to a recommendation goal: click-through rate, playback completion rate, viewing time, effective viewing, and interaction. Each tower has the same underlying network for learning shared cross features and nonlinear features. The upper network and output layer of each tower are independent.

[0039] DCN (Deep Cross Network) is a deep learning model for recommendation systems. It combines the advantages of shallow and deep models to better address the sparsity and high-dimensionality issues in recommendation systems. The DCN model uses a cross network to learn the intrinsic correlations between low-order features and a deep network to learn the nonlinear relationships between high-order features.

[0040] The recommendation value of the candidate recommendation information can be calculated based on the weighted sum of the user indicators and the corresponding weights. For example, recommendation value = first user indicator * first weight + second user indicator * second weight + ... + Nth user indicator * Nth weight.

[0041] You can also multiply multiple user indicators weighted by exponentials to calculate the recommendation value res score , as shown below:

[0042]

[0043] w1, w2, w3…w n They represent the weight of a user indicator respectively, indicating the relative importance of each user indicator.

[0044] Among them, frq stands for playback completion rate, which is a regression task that estimates the completion rate of each viewing;

[0045] Playtime represents the viewing time, which is a regression task that estimates the duration of each video viewing;

[0046] Valid stands for effective viewing, which is a binary classification task that defines whether it is a real viewing behavior by setting a viewing time threshold;

[0047] focusq stands for focus, which is a binary classification task that estimates whether the user has focus behavior.

[0048] Step 204 : Select target recommendation information that meets the constraint conditions from multiple candidate recommendation information based on the recommendation value and recommend it to the user.

[0049] In this embodiment, the constraint condition includes the difference between the user's metric and the statistical metric being within a predetermined range. For example, if the average click-through rate for users of the same type is 10%, the constraint condition is satisfied only if the user's individual click-through rate is within the range of 10% ± 2%. Some candidate recommendation information, while highly valuable, does not meet the constraint condition and is therefore filtered out and not recommended to the user.

[0050] A predetermined number of target recommendation information satisfying the constraint conditions may be selected and recommended to the user in descending order of recommendation value. Alternatively, only the target recommendation information satisfying the constraint conditions with the highest recommendation value may be selected and recommended to the user as needed.

[0051] The methods provided by the above-described embodiments of the present disclosure can overcome the problem in traditional recommendation algorithms where the same set of value combinations is used for the same user, which can easily lead to local optimal solutions, causing user fatigue and a state of isolation, making it difficult for users to develop new interests. This method improves user retention rates for products that utilize this recommendation information method, thereby increasing the scale of the product. This method is universal and can be directly transferred to other user products.

[0052] In some optional implementations of this embodiment, selecting target recommendation information that satisfies the constraints from multiple candidate recommendation information based on recommendation value and recommending it to the user includes selecting target recommendation information that satisfies the constraints and has the highest recommendation value from the multiple candidate recommendation information and recommending it to the user. Recommending only the information with the highest recommendation value maximizes revenue.

[0053] In some optional implementations of this embodiment, determining the user type based on the user's historical behavior data includes: determining the user type based on the historical behavior data through a pre-trained classification model. The user type can be output based on the historical behavior data through a pre-trained classification model. The historical behavior data is pre-labeled with the real user type to generate a training sample. The training sample is input into the classification model, and the predicted user type is output. The network parameters of the classification model are adjusted based on the difference between the predicted user type and the real user type, and training is stopped until the loss value converges to a predetermined threshold or a predetermined number of iterations is reached. Determining the user type through the classification model will be more accurate, thereby obtaining accurate constraints and improving the accuracy of the recommendation results.

[0054] In some optional implementations of this embodiment, the method further includes: determining a statistical indicator corresponding to the user type by calculating the average value of user indicators for the same user type; and recording the correspondence between the user type and the statistical indicator in an indicator statistics table. Each time a user indicator is updated, the average value of user indicators for the same user type may be simultaneously updated. This ensures that the statistical indicators remain up-to-date, improving the accuracy of recommendation results.

[0055] In some optional implementations of this embodiment, user indicators are determined based on candidate recommendation information and historical behavior data, including: determining information features based on the candidate recommendation information; determining user features based on historical behavior data; and determining user indicators of the candidate recommendation information through a pre-trained prediction model based on information features and user features.

[0056] User characteristics may include: gender, age, education level, user activity, etc.

[0057] Information features may include: resource type (for example, video, graphics, animated images, etc.), resource category (for example, news, entertainment, education, etc.), resource title length, resource duration (if the resource is a video, it is the video duration; if it is a picture, it is the number of pictures), etc.

[0058] The information features and user features are fused to obtain fused features, and the user indicators of the candidate recommendation information are determined through a pre-trained prediction model.

[0059] Optionally, contextual features can be extracted based on information related to the recommendation scenario, such as time, weather, and promotions. These contextual features are used to distinguish the user's preferred context for the current resource. A pre-trained prediction model, based on contextual, informational, and user characteristics, determines the user index for the candidate recommendation.

[0060] These features can be used to describe factors such as users, resources, and environments to improve recommendation effectiveness.

[0061] In some optional implementations of this embodiment, the number of user indicators is greater than 1; and the recommendation value of the candidate recommendation information is determined based on the user indicators, including: determining the weight of each user indicator corresponding to the resource type to which the candidate recommendation information belongs according to business needs; and calculating the weighted sum of each user indicator as the recommendation value based on the weight.

[0062] Business requirements can include high click-through rates, high forwarding rates, and other requirements for different resource types. Based on these requirements, the weights of user metrics corresponding to the resource types to which the recommended information belongs can be set higher. For example, if the business requirement is high click-through rates for videos, the weight of the click-through rate for video information can be set to 0.5, and the sum of the weights for other resource types (e.g., images, dynamic images, etc.) can be set to 0.5.

[0063] By adjusting the weights of user indicators to meet business needs, the accuracy of recommendations can be improved.

[0064] In some optional implementations of this embodiment, the weights of each user indicator corresponding to the resource type to which the candidate recommendation information belongs are determined according to business needs, including: determining the weights of each user indicator corresponding to the resource type to which the candidate recommendation information belongs according to the user type and business needs.

[0065] Combine user type with business needs to set the weight of user indicators corresponding to the resource type of recommended information. For example, although they have the same business needs, the weight of videos from freelance users can be set higher than that of videos from office workers.

[0066] Use different value integrations for different types of users to avoid falling into local optimal solutions, prevent user fatigue and cocoon state, and facilitate the development of new interests.

[0067] In some optional implementations of this embodiment, target recommendation information that meets the constraints and has the highest recommendation value is selected from multiple candidate recommendation information and recommended to the user, including: constructing a Lagrangian function based on the recommendation values ​​and constraints of multiple candidate recommendation information; and determining the target recommendation information to recommend to the user by solving the optimal solution of the Lagrangian function.

[0068] The following formula is used as an example for illustration, but is not limited to the following formula:

[0069]

[0070] Among them, i represents the slot position. For a single slot scenario, the value of i can be 1. j represents the resource type. V ij Denotes the expected recommendation value, V′ ij Indicates the predicted recommendation value. j represents the deviation between the expected recommendation value and the predicted recommendation value. Formula (1) is the objective function, which is to maximize the expected recommendation value. Formula (2) and Formula (3) represent the constraints. ij Indicates the user's click rate, c ij Indicates the average click-through rate of users of the same type. ij Indicates the user's viewing time, d ij represents the average viewing time of users of the same type. λ represents the Lagrangian multiplier. Formula (4) represents the Lagrangian function. For formula (4), V′ ij and λ and set the partial derivative equal to 0, we get the equations (5) and (6). Solve the above equations to get V′ ij , then multiply by COPC j The maximum value of the expected recommendation value can be obtained.

[0071] If the prediction accuracy of the user indicator is very high, COPC j Approximately 1 for simple calculations.

[0072] By solving the optimal solution of the Lagrangian function, we can quickly and accurately select the target recommendation information that meets the constraints and has the highest recommendation value, thereby improving the accuracy of the recommendation results.

[0073] In some optional implementations of this embodiment, the recommendation value of candidate recommendation information is determined based on user indicators, including: obtaining the estimated deviation corresponding to the resource type to which the candidate recommendation information belongs; calibrating the user indicator through the estimated deviation to obtain a calibrated user indicator; and calculating the recommendation value based on the calibrated user indicator.

[0074] The current user indicator prediction has the problem of inaccurate estimation, which will affect the calculation of recommendation value. j This is the estimated deviation, which is used to calibrate the deviation between the actual value and the estimated value. The estimated deviation is different for different resource types, such as Figure 3b By calibrating the deviation between the actual value and the estimated value, the accuracy of the recommendation results is improved.

[0075] Continue to see Figure 3a , Figure 3a This is a schematic diagram of an application scenario of the method for recommending information according to this embodiment. Figure 3a In the application scenario, a single slot recommendation is used as an example for demonstration. Genre represents the resource type, which can include pictures and texts, short videos, small videos, dynamics, and story mode. Each resource type has a different weight. Shadow nid represents the recommendation value. There are two ways to calculate the recommendation value:

[0076] 1. Single slot, multiple genres, single value

[0077] The recommendation value of each candidate recommendation information can be calculated according to the following three formulas:

[0078] R1=ctr*dwell

[0079]

[0080] R1 is the recommendation value calculated by multiplying CTR (click-through rate) and dwell (dwell time). R2 first determines the weights of each user metric corresponding to the resource type of the candidate recommendation information based on business needs (represented by genre), and then calculates the weighted sum of each user metric based on these weights as the recommendation value. R3 first determines the weights of each user metric corresponding to the resource type of the candidate recommendation information based on user type and business needs (represented by characterized genre), and then calculates the weighted sum of each user metric based on these weights as the recommendation value.

[0081] After calculating the recommendation value R1, R2, and R3 for each candidate recommendation, the recommendation is sorted from highest to lowest. Based on business needs, a corresponding number of candidate recommendations are selected as target recommendations to be presented to the user. For example, the candidate recommendation with the highest recommendation value is selected and displayed to the user in a single slot.

[0082] 2. Single slot with multiple genres and multiple values

[0083] The recommendation value R of each candidate recommendation information is calculated according to the following formula:

[0084] R=01*max DCP(penetration)

[0085] +a2*max DCD(dwell time)

[0086] +a3*max DCL(long term)

[0087] Here, maxDCP (penetration) represents the model's predicted penetration value (e.g., clicks, swipes, etc.), maxDCD (dwell time) represents the model's predicted dwell time, and maxDCL (long term) represents the model's predicted long-term value (e.g., the likelihood of attracting users to watch other videos). a1, a2, and a3 represent the weights of each item, which can be the same or different, depending on business needs.

[0088] After calculating the recommendation value R for each candidate recommendation, the recommendation information is sorted from highest to lowest by recommendation value. Based on business needs, a corresponding number of candidate recommendation information are selected as target recommendation information to be recommended to the user. For example, the candidate recommendation information with the highest recommendation value is selected and displayed to the user in a single slot.

[0089] Further references Figure 4 , which shows a process 400 of another embodiment of a method for recommending information. The process 400 of the method for recommending information includes the following steps:

[0090] Step 401, determining the user type based on the user's historical behavior data;

[0091] Step 402: Query the statistical indicators corresponding to the user type from the preset indicator statistical table;

[0092] Steps 401-402 are substantially the same as steps 201-203, and therefore are not described in detail.

[0093] Step 403 : For each candidate placement, based on the candidate placement, the candidate recommendation information, and the historical behavior data, a pre-trained recommendation model is used to determine the user index of the candidate recommendation information at the candidate placement.

[0094] In this embodiment, a "slot" in the recommendation system refers to a specific location within the system where content is displayed. For multiple slots, the recommendation model inputs include candidate placements (i.e., slots), candidate recommendation information, and historical behavior data, and outputs user metrics for each candidate placement. Even the same candidate recommendation information may yield different user metrics in different placements.

[0095] The recommendation model can output a predicted value for at least one user metric. The recommendation model can adopt a shared underlying modeling architecture, where the shared layer may include components such as a DCN (deep cross-network) and a multi-layer perceptron (MLP). The recommendation model can include multiple towers, each corresponding to a recommendation objective: click-through rate, completion rate, viewing time, effective viewing, and interaction. Each tower uses the same underlying network to learn shared cross-features and nonlinear features. The upper network and output layer of each tower are independent.

[0096] Step 404 , determining the recommendation value of the candidate recommendation information at each candidate placement location based on the user index of the candidate recommendation information at each candidate placement location;

[0097] In this embodiment, the process is substantially the same as step 203 , except that the recommendation value can be calculated for different display positions.

[0098] Step 405 , selecting target recommendation information and target placement that meet the constraint conditions and have the highest recommendation value from the plurality of candidate recommendation information;

[0099] In this embodiment, the process is basically the same as step 204, except that not only information but also display locations can be recommended.

[0100] Step 406: Recommend target recommendation information to the user based on the target display position.

[0101] In this embodiment, the target recommendation information may be displayed at the target display position, for example, the target recommendation information may be displayed at the first slot.

[0102] In information feed products, each refresh typically displays multiple pieces of content, assigned to different slots. For example, the last one or two slots are used for interest exploration, while the earlier slots are more likely to display content that users may be interested in. This differentiated strategy helps improve recommendation accuracy and user experience.

[0103] Further references Figure 5 As an implementation of the methods shown in the above figures, the present disclosure provides an embodiment of a device for recommending information. Figure 2 Corresponding to the method embodiment shown, the device can be specifically applied to various electronic devices.

[0104] like Figure 5 As shown, the device 500 for recommending information in this embodiment includes: a determination unit 501, a query unit 502, a calculation unit 503 and a recommendation unit 504, wherein the determination unit 501 is configured to determine the user type based on the user's historical behavior data; the query unit 502 is configured to query the statistical indicators corresponding to the user type from a preset indicator statistical table; the calculation unit 503 is configured to determine the user indicators based on the candidate recommendation information and the historical behavior data, and determine the recommendation value of the candidate recommendation information based on the user indicators; the recommendation unit 504 is configured to select the target recommendation information that meets the constraint conditions from multiple candidate recommendation information based on the recommendation value and recommend it to the user, wherein the constraint conditions include that the difference between the user indicator and the statistical indicator is within a predetermined range.

[0105] In this embodiment, the specific processing of the determination unit 501, the query unit 502, the calculation unit 503 and the recommendation unit 504 of the device for recommending information 500 can be referred to. Figure 2 This corresponds to step 201, step 202, step 203 and step 204 in the embodiment.

[0106] In some optional implementations of this embodiment, the recommendation unit 504 is further configured to: select target recommendation information that meets the constraint conditions and has the highest recommendation value from multiple candidate recommendation information and recommend it to the user.

[0107] In some optional implementations of this embodiment, the determination unit is further configured to: determine the user type based on the historical behavior data using a pre-trained classification model.

[0108] In some optional implementations of this embodiment, the device 500 also includes a statistical unit, which is configured to: determine the statistical indicator corresponding to the user type by counting the average value of user indicators of the same user type; and record the correspondence between the user type and the statistical indicator in an indicator statistics table.

[0109] In some optional implementations of this embodiment, the computing unit 503 is further configured to: determine information features based on the candidate recommendation information; determine user features based on historical behavior data; and determine user indicators of the candidate recommendation information based on the information features and user features through a pre-trained prediction model.

[0110] In some optional implementations of this embodiment, the number of user indicators is greater than 1; and the calculation unit 503 is further configured to: determine the weight of each user indicator corresponding to the resource type to which the candidate recommendation information belongs according to business needs; and calculate the weighted sum of each user indicator as the recommendation value based on the weight.

[0111] In some optional implementations of this embodiment, the calculation unit 503 is further configured to determine the weight of each user indicator corresponding to the resource type to which the candidate recommendation information belongs according to the user type and business requirements.

[0112] In some optional implementations of this embodiment, the recommendation unit 504 is further configured to: construct a Lagrangian function based on the recommendation values ​​and constraints of multiple candidate recommendation information; and determine the target recommendation information to recommend to the user by solving the optimal solution of the Lagrangian function.

[0113] In some optional implementations of this embodiment, the computing unit 503 is further configured to: obtain multiple candidate display locations; for each candidate display location, based on the candidate display location, candidate recommendation information and historical behavior data, determine the user indicators of the candidate recommendation information at the candidate display location through a pre-trained recommendation model; and determine the recommendation value of the candidate recommendation information at each candidate display location based on the user indicators of the candidate recommendation information at each candidate display location.

[0114] In some optional implementations of this embodiment, the recommendation unit 504 is further configured to: select target recommendation information and target display position that meet the constraint conditions and have the highest recommendation value from multiple candidate recommendation information; and recommend the target recommendation information to the user based on the target display position.

[0115] In some optional implementations of this embodiment, the calculation unit 503 is further configured to: obtain the estimated deviation corresponding to the resource type to which the candidate recommendation information belongs; calibrate the user indicator through the estimated deviation to obtain the calibrated user indicator; and calculate the recommendation value based on the calibrated user indicator.

[0116] In some optional implementations of this embodiment, the user indicator includes at least one of the following: click-through rate, playback completion rate, viewing time, whether it is effective viewing, and whether it is interactive.

[0117] In the technical solutions disclosed herein, the collection, storage, use, processing, transmission, provision and disclosure of user personal information involved comply with the provisions of relevant laws and regulations and do not violate public order and good morals.

[0118] According to an embodiment of the present disclosure, the present disclosure also provides an electronic device, a readable storage medium, and a computer program product.

[0119] An electronic device comprises: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to execute the method described in process 200 or 400.

[0120] A non-transitory computer-readable storage medium storing computer instructions, wherein the computer instructions are used to cause the computer to execute the method described in process 200 or 400.

[0121] A computer program product includes a computer program, wherein the computer program implements the method described in flow 200 or 400 when executed by a processor.

[0122] Figure 6 A schematic block diagram of an example electronic device 600 that can be used to implement embodiments of the present disclosure is shown. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device can also represent various forms of mobile devices, such as personal digital assistants, cellular phones, smartphones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions are provided as examples only and are not intended to limit the implementation of the present disclosure described and / or claimed herein.

[0123] like Figure 6 As shown, the device 600 includes a computing unit 601, which can perform various appropriate actions and processes according to a computer program stored in a read-only memory (ROM) 602 or a computer program loaded from a storage unit 608 into a random access memory (RAM) 603. Various programs and data required for the operation of the device 600 can also be stored in the RAM 603. The computing unit 601, the ROM 602, and the RAM 603 are connected to each other via a bus 604. An input / output (I / O) interface 605 is also connected to the bus 604.

[0124] Various components in device 600 are connected to I / O interface 605, including an input unit 606, such as a keyboard, mouse, etc.; an output unit 607, such as various types of displays, speakers, etc.; a storage unit 608, such as a magnetic disk, optical disk, etc.; and a communication unit 609, such as a network card, modem, wireless communication transceiver, etc. The communication unit 609 allows device 600 to exchange information / data with other devices via a computer network such as the Internet and / or various telecommunication networks.

[0125] The computing unit 601 can be a variety of general-purpose and / or specialized processing components with processing and computing capabilities. Some examples of the computing unit 601 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various dedicated artificial intelligence (AI) computing chips, various computing units that run machine learning model algorithms, a digital signal processor (DSP), and any appropriate processor, controller, microcontroller, etc. The computing unit 601 performs the various methods and processes described above, such as the method for recommending information. For example, in some embodiments, the method for recommending information can be implemented as a computer software program that is tangibly contained in a machine-readable medium, such as the storage unit 608. In some embodiments, part or all of the computer program can be loaded and / or installed on the device 600 via the ROM 602 and / or the communication unit 609. When the computer program is loaded into the RAM 603 and executed by the computing unit 601, one or more steps of the method for recommending information described above can be performed. Alternatively, in other embodiments, the computing unit 601 can be configured to perform the method for recommending information by any other appropriate means (e.g., by means of firmware).

[0126] Various embodiments of the systems and techniques described herein can be implemented in digital electronic circuit systems, integrated circuit systems, field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), system-on-chip systems (SOCs), programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various embodiments can include being implemented in one or more computer programs that are executable and / or interpreted on a programmable system that includes at least one programmable processor, which can be a special purpose or general purpose programmable processor that can receive data and instructions from a storage system, at least one input device, and at least one output device, and transmit data and instructions to the storage system, the at least one input device, and the at least one output device.

[0127] The program code for implementing the method of the present disclosure can be written in any combination of one or more programming languages. These program codes can be provided to a processor or controller of a general-purpose computer, a special-purpose computer, or other programmable data processing device so that when the program code is executed by the processor or controller, the functions / operations specified in the flow chart and / or block diagram are implemented. The program code can be executed entirely on the machine, partially on the machine, as a stand-alone software package, partially on the machine and partially on a remote machine, or entirely on a remote machine or server.

[0128] In the context of the present disclosure, a machine-readable medium can be a tangible medium that can contain or store a program for use by or in conjunction with an instruction execution system, device or equipment. A machine-readable medium can be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium can include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, device or equipment, or any suitable combination of the foregoing. A more specific example of a machine-readable storage medium can include an electrical connection based on one or more lines, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.

[0129] To provide interaction with a user, the systems and techniques described herein can be implemented on a computer having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user; and a keyboard and pointing device (e.g., a mouse or trackball) through which the user can provide input to the computer. Other types of devices can also be used to provide interaction with the user; for example, the feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including acoustic input, voice input, or tactile input).

[0130] The systems and techniques described herein can be implemented in a computing system that includes back-end components (e.g., as a data server), or a computing system that includes middleware components (e.g., an application server), or a computing system that includes front-end components (e.g., a user computer having a graphical user interface or a web browser through which a user can interact with implementations of the systems and techniques described herein), or a computing system that includes any combination of such back-end components, middleware components, or front-end components. The components of the system can be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include a local area network (LAN), a wide area network (WAN), and the Internet.

[0131] A computer system may include a client and a server. The client and server are generally remote from each other and typically interact through a communication network. The client-server relationship arises through computer programs running on the respective computers and having a client-server relationship with each other. The server may be a cloud server, a server in a distributed system, or a server integrated with a blockchain.

[0132] It should be understood that the various forms of the processes shown above can be used to reorder, add, or delete steps. For example, the steps described in this disclosure can be performed in parallel, sequentially, or in a different order, as long as the desired results of the technical solutions disclosed in this disclosure can be achieved. This is not a limitation herein.

[0133] The above specific embodiments do not constitute a limitation on the scope of protection of this disclosure. Those skilled in the art will appreciate that various modifications, combinations, sub-combinations, and substitutions may be made based on design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of this disclosure shall be included within the scope of protection of this disclosure.

Claims

1. A method for recommending information, comprising: Determine user type based on historical user behavior data; Query the statistical indicators corresponding to the user type from the preset indicator statistical table; Determining a user index based on the candidate recommendation information and the historical behavior data, and determining a recommendation value of the candidate recommendation information based on the user index; Based on the recommendation value, target recommendation information that meets a constraint condition is selected from a plurality of candidate recommendation information and recommended to the user, wherein the constraint condition includes that the difference between the user indicator and the statistical indicator is within a predetermined range.

2. The method according to claim 1, wherein The selecting target recommendation information that meets the constraint condition from the plurality of candidate recommendation information based on the recommendation value and recommending it to the user includes: Select target recommendation information that meets the constraint conditions and has the highest recommendation value from the plurality of candidate recommendation information and recommend it to the user.

3. The method according to claim 1, wherein Determining the user type based on the user's historical behavior data includes: The user type is determined based on the historical behavior data through a pre-trained classification model.

4. The method according to claim 1, wherein The method further comprises: By calculating the average value of user indicators of the same user type, the statistical indicator corresponding to the user type is determined; The corresponding relationship between user types and statistical indicators is recorded in the indicator statistical table.

5. The method according to claim 1, wherein The determining of the user index based on the candidate recommendation information and the historical behavior data includes: determining information features based on the candidate recommendation information; determining user characteristics based on the historical behavior data; The user index of the candidate recommendation information is determined based on the information features and the user features through a pre-trained prediction model.

6. The method according to claim 1, wherein The number of user indicators is greater than 1; as well as The determining the recommendation value of the candidate recommendation information based on the user indicator includes: Determine the weight of each user indicator corresponding to the resource type to which the candidate recommendation information belongs according to business needs; The weighted sum of each user index is calculated according to the weight as the recommendation value.

7. The method according to claim 6, wherein: The step of determining the weight of each user indicator corresponding to the resource type to which the candidate recommendation information belongs according to business requirements includes: The weight of each user indicator corresponding to the resource type to which the candidate recommendation information belongs is determined according to the user type and business requirements.

8. The method according to claim 2, wherein: The selecting target recommendation information that satisfies the constraint conditions and has the highest recommendation value from the plurality of candidate recommendation information and recommending it to the user includes: constructing a Lagrangian function based on the recommendation values ​​of the plurality of candidate recommendation information and the constraint conditions; By solving the optimal solution of the Lagrangian function, target recommendation information is determined and recommended to the user.

9. The method according to claim 1, wherein The determining of the user index based on the candidate recommendation information and the historical behavior data, and determining the recommendation value of the candidate recommendation information based on the user index, includes: Get multiple candidate placements; For each candidate placement location, based on the candidate placement location, the candidate recommendation information, and the historical behavior data, a user index of the candidate recommendation information at the candidate placement location is determined using a pre-trained recommendation model; The recommendation value of the candidate recommendation information at each candidate display position is determined based on the user index of the candidate recommendation information at each candidate display position.

10. The method according to claim 9, wherein: The selecting target recommendation information that meets the constraint condition from the plurality of candidate recommendation information based on the recommendation value and recommending it to the user includes: Selecting target recommendation information and target placement that meet the constraint conditions and have the highest recommendation value from the plurality of candidate recommendation information; Based on the target placement, the target recommendation information is recommended to the user.

11. The method according to claim 1, wherein The determining the recommendation value of the candidate recommendation information based on the user indicator includes: Obtaining an estimated deviation corresponding to the resource type to which the candidate recommendation information belongs; Calibrate the user indicator using the estimated deviation to obtain a calibrated user indicator; The recommendation value is calculated based on the calibrated user indicators.

12. The method according to any one of claims 1 to 11, wherein The user indicator includes at least one of the following: Click-through rate, playback completion rate, viewing time, whether it is effective viewing, and whether it is interactive.

13. A device for recommending information, comprising: a determination unit configured to determine a user type based on historical behavior data of the user; A query unit configured to query the statistical indicator corresponding to the user type from a preset indicator statistical table; a computing unit configured to determine a user index based on the candidate recommendation information and the historical behavior data, and determine a recommendation value of the candidate recommendation information based on the user index; The recommendation unit is configured to select target recommendation information that meets a constraint condition from a plurality of candidate recommendation information based on the recommendation value and recommend it to the user, wherein the constraint condition includes that the difference between the user indicator and the statistical indicator is within a predetermined range.

14. An electronic device comprising: at least one processor; as well as a memory communicatively connected to the at least one processor; wherein, The memory stores instructions that can be executed by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to perform the method according to any one of claims 1 to 12.

15. A non-transitory computer-readable storage medium storing computer instructions, wherein: The computer instructions are used to cause the computer to execute the method according to any one of claims 1-12.

16. A computer program product comprising a computer program, which, when executed by a processor, implements the method according to any one of claims 1 to 12.