Recommendation method and device, electronic equipment and storage medium

By dynamically adjusting the weight of the recall results, based on the user feedback data and the use weight of the recall results, the problem of fixed weights in the existing recommendation system that cannot adapt to changes in user needs is solved, and a more reasonable object proportion and user satisfaction are achieved.

CN119719491AInactive Publication Date: 2025-03-28BEIJING VOLCANO ENGINE TECH CO LTD
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202411774901.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-04
Publication Date
2025-03-28
Estimated Expiration
Not applicable · inactive patent

AI Technical Summary

Technical Problem

In the existing recommendation system, the weight of the recall result is a preset value and cannot be dynamically adjusted to adapt to changes in user needs.

Method used

By dynamically determining the weights of the recall results of the current round based on the feedback data of the recommendation results of the previous round and the use weights of each recall results, the use weights of each recall results of the current round are filtered and sorted based on these weights.

Benefits of technology

Dynamic adjustment of the recall results is achieved, making the number ratio of objects more reasonable and meeting the purpose of user information use needs.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119719491A_ABST
    Figure CN119719491A_ABST
Patent Text Reader

Abstract

The invention relates to a recommendation method and device, electronic equipment and a storage medium. The method comprises the steps that according to a plurality of preset recall strategies, object recall is conducted from a candidate object library, and a current round multi-path recall result is obtained; the recall results are in one-to-one correspondence with the recall strategies; according to the feedback data of the recommendation result of the previous round and the use weight of each path of recall result of the previous round, determining the use weight of each path of recall result of the current round; based on the use weight of each path of recall result of the current round, screening each path of recall result to obtain a screening result of each path of recall result; and arranging screening results of all recall results to form a recommendation result. The reasonability of the use weight of each recall result in the previous round is evaluated according to the feedback condition of the user to the recommendation result in the previous round, and then the use weight of each recall result in the current round is determined, so that the proportion of the number of objects from each recall result in the current round is more reasonable.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the technical field of recommendation systems, and in particular to a recommendation method, device, electronic device, and storage medium. Background Art

[0002] Recommendation system is an important part of modern information technology and is widely used in e-commerce, social media, news platforms and other fields. Its role is to provide users with personalized content in massive information and improve the efficiency and satisfaction of information acquisition. The basic workflow of the recommendation system includes: recalling objects from a large number of candidate objects to obtain recall results; removing irrelevant objects from the recall results through a screening mechanism, and sorting the remaining objects in the recall results according to multiple indicators to ensure that the final content meets diverse needs.

[0003] For the multi-channel recall process, multiple recall results will be obtained. When screening these recall results, the number of objects that are finally involved in the sorting in each recall result can be controlled by weight. In the prior art solution, these weights are pre-set fixed values. However, in actual applications, as the user's usage scenario changes, the user's demand for different types of objects will also change. Obviously, fixed preset values ​​cannot meet the user's information usage needs well. Summary of the invention

[0004] In order to solve the above technical problem or at least partially solve the above technical problem, the present disclosure provides a recommendation method, device, electronic device and storage medium.

[0005] In a first aspect, the present disclosure provides a recommendation method, comprising:

[0006] According to the preset multiple recall strategies, objects are respectively recalled from the candidate object library to obtain the multi-way recall results of the current round; the recall results correspond to the recall strategies one by one;

[0007] Determine the usage weights of the recall results in the current round based on the feedback data of the recommendation results in the previous round and the usage weights of the recall results in the previous round;

[0008] Based on the usage weights of the recall results in each channel in the current round, the recall results in each channel are screened respectively to obtain the screening results of the recall results in each channel;

[0009] The screening results of all the recall results are arranged to obtain a sequence of objects to be displayed, thereby forming a recommendation result.

[0010] In a second aspect, the present disclosure further provides a recommendation device, comprising:

[0011] A recall module, used to recall objects from the candidate object library according to multiple preset recall strategies, and obtain the multi-way recall results of the current round; the recall results correspond to the recall strategies one by one;

[0012] A weight determination module, used to determine the usage weight of each recall result in the current round according to the feedback data of the recommendation result in the previous round and the usage weight of each recall result in the previous round;

[0013] A screening module, used to screen the recall results of each channel based on the usage weight of the recall results of each channel in the current round, and obtain screening results of the recall results of each channel;

[0014] The arrangement module is used to arrange the screening results of all the recall results to obtain a sequence of objects to be displayed and form a recommendation result.

[0015] In a third aspect, the present disclosure further provides an electronic device, the electronic device comprising:

[0016] one or more processors;

[0017] A storage device for storing one or more programs;

[0018] When the one or more programs are executed by the one or more processors, the one or more processors implement the recommended method as described above.

[0019] In a fourth aspect, the present disclosure further provides a computer-readable storage medium having a computer program stored thereon, which implements the recommendation method as described above when executed by a processor.

[0020] Compared with the prior art, the technical solution provided by the embodiments of the present disclosure has the following advantages:

[0021] In the technical solution provided by the embodiment of the present disclosure, the usage weights of each recall result in the current round are determined by setting the feedback data of the recommendation results in the previous round and the usage weights of each recall result in the previous round; based on the usage weights of each recall result in the current round, each recall result is screened respectively to obtain the screening results of each recall result; the screening results of all recall results are arranged to obtain a sequence of objects to be displayed to form a recommendation result. In essence, the rationality of the usage weights of each recall result in the previous round is evaluated according to the feedback of users on the recommendation results in the previous round, and then the usage weights of each recall result in the current round are determined, so that the proportion of the number of objects from each recall result in this round is more reasonable, thereby achieving the purpose of meeting the user's information usage needs. BRIEF DESCRIPTION OF THE DRAWINGS

[0022] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present disclosure and, together with the description, serve to explain the principles of the present disclosure.

[0023] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, for ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative labor.

[0024] Figure 1 A flowchart of a recommended method provided for an embodiment of the present disclosure;

[0025] Figure 2 A schematic diagram of a recommended method provided for an embodiment of the present disclosure;

[0026] Figure 3 is a structural schematic diagram of a recommended device in an embodiment of the present disclosure;

[0027] Figure 4 It is a structural schematic diagram of an electronic device in an embodiment of the present disclosure. DETAILED DESCRIPTION

[0028] In order to more clearly understand the above-mentioned objectives, features and advantages of the present disclosure, the scheme of the present disclosure will be further described below. It should be noted that the embodiments of the present disclosure and the features in the embodiments can be combined with each other without conflict.

[0029] In the following description, many specific details are set forth to facilitate a full understanding of the present disclosure, but the present disclosure may also be implemented in other ways different from those described herein; it is obvious that the embodiments in the specification are only part of the embodiments of the present disclosure, rather than all of the embodiments.

[0030] Figure 1 A flowchart of a recommendation method provided in an embodiment of the present disclosure. This embodiment can be applicable to situations where information recommendation is performed. The method can be executed by a recommendation device, which can be implemented in software and / or hardware. The device can be configured in an electronic device, such as a server.

[0031] like Figure 1 As shown, the method may specifically include:

[0032] S110 . According to a plurality of preset recall strategies, objects are respectively recalled from the candidate object library to obtain a multi-way recall result of the current round; the recall result corresponds to the recall strategy one by one.

[0033] An object may refer to, for example, specific content recommended by a recommendation system, which may be news, videos, commodities, music, books, tourist attractions, courses, etc. In practice, after the objects are recalled, screened, and sorted by the recommendation system, they may be presented to users in the form of one or more combinations of text descriptions, video clips, and audio introductions.

[0034] The candidate object library is a database including all objects.

[0035] Recall, for example, can be a process of retrieving specific objects from a candidate object library according to a recall strategy. A recall strategy can be, for example, a recall method. It includes specific steps of recall, query logic used in the recall process, specific parameter values ​​used in the recall process, etc. Exemplarily, the recall strategy can include double-tower recall, reverse recall, and hotspot recall, etc.

[0036] According to the recall strategy, recalling objects from the candidate object library means searching in the candidate object library, extracting the retrieved objects, and forming a new set. This set is the recall result. In other words, the recall result is a subset of the candidate object library. The objects in the candidate object library include the objects in the recall result and the objects that have not been recalled.

[0037] The recall result and the recall strategy correspond one to one, which means that the recall result and the recall strategy are mutually traceable. Based on the recall result, it can be determined which recall strategy the recall result is based on; and based on the recall strategy, it can be determined which recall result will be obtained by using the recall strategy.

[0038] For example, if a recommendation system is used to recommend information flow, three recall strategies are pre-set, namely, recall strategy 1, recall strategy 2, and recall strategy 3. Based on recall strategy 1, objects are recalled from the candidate object library to obtain recall result 1. Recall result 1 corresponds to recall strategy 1. Similarly, based on recall strategy 2, objects are recalled from the candidate object library to obtain recall result 2. Recall result 2 corresponds to recall strategy 2. Based on recall strategy 3, objects are recalled from the candidate object library to obtain recall result 3. Recall result 3 corresponds to recall strategy 3.

[0039] S120: Determine the usage weights of the various recall results in the current round according to the feedback data of the recommendation results in the previous round and the usage weights of the various recall results in the previous round.

[0040] During operation, the recommendation system continuously recommends objects to users. Specifically, after completing a round of object recommendations, the recommendation system performs a new round of object recommendations when it detects that the triggering conditions for a new round of recommendations are met. The present application does not limit the specific conditions for triggering a new round of recommendations. Exemplarily, in practice, the triggering conditions for a new round of recommendations may be, for example, that the user has performed a preset operation that triggers a new round of object recommendations (e.g., the user has entered a search keyword and clicked on a search option; or, the user has swiped in the list of recommended objects so that the number of remaining unviewed objects is less than or equal to a set threshold); or, the preset recommended object update time has been reached; or, the geographical location of the electronic device has changed; or, new objects have been published, etc.

[0041] The object recommendation process of each round includes: recalling objects from the candidate object library according to multiple preset recall strategies; determining the usage weights of each recall result in the current round; filtering each recall result based on the usage weights of each recall result in the current round to obtain the filtering results; arranging the filtering results to obtain the object sequence to be displayed and form the recommendation results. Subsequently, the recommendation results formed in each round will be displayed to the user.

[0042] In practical applications, the number of objects in the candidate object library is usually large, and the recall strategy is relatively simple, resulting in a large number of objects in the recall results. If the recall results are sorted directly without filtering, the computational complexity will increase and the recommendation quality will be affected. The purpose of filtering the recall results is to further narrow the sorting range so that the subsequent sorting is only performed on the filtered objects, which can reduce the computational complexity and improve the recommendation quality. The usage weight of the recall results determines the number of objects in each recall result that can participate in the subsequent sorting process.

[0043] After the recommendation results of the previous round are displayed, the user may perform interactive operations on some or all of the objects in the recommendation results of the previous round. The feedback data of the recommendation results of the previous round may be, for example, feedback given by users to the recommendation results of the previous round. The feedback data of the recommendation results of the previous round includes feedback given by users to each object in the recommendation results of the previous round. The feedback can be obtained through interactive operations performed by users on the objects. Here, the interactive operations performed by users on the objects may be, for example, click operations, slide operations, favorite operations, forwarding operations, comment operations, and browsing time on the objects. If the object is audio or video, the feedback data may also include the number of times the object is played, the playback time, the ratio of the playback time to the total time of the object, etc.

[0044] S130 , based on the usage weight of each recall result in the current round, screen each recall result respectively to obtain a screening result of each recall result.

[0045] Optionally, the implementation method of this step may include: for any recall result, based on the usage weight of the recall result of the current round, determining the target number corresponding to the recall result; filtering the recall result to obtain a filtering result of the recall result so that the number of objects included in the filtering result is equal to the target number.

[0046] In practice, there are many specific implementation methods for "determining the target number corresponding to the recall results based on the usage weights of the current round of recall results", and the present application does not limit this. Exemplarily, the target number corresponding to the recall results can be determined based on the usage weights of the current round of recall results and the number of objects included in the current round of recall results. Furthermore, the usage weights of the current round of recall results are directly proportional to the target number corresponding to the recall results. Exemplarily, the target number corresponding to the recall results is determined based on the product of the usage weights of the current round of recall results and the number of objects included in the current round of recall results.

[0047] Exemplarily, assume that there are three recall results: recall result 1, recall result 2, and recall result 3. Among them, the usage weights of recall result 1, recall result 2, and recall result 3 are 0.1, 0.3, and 0.6, respectively. Moreover, recall result 1, recall result 2, and recall result 3 all include 100 objects. According to the usage weight of recall result 1, it is determined that the target number corresponding to recall result 1 is 10. Subsequently, 10 objects will be screened out from recall result 1 as the screening result of recall result 1. According to the usage weight of recall result 2, it is determined that the target number corresponding to recall result 2 is 30. Subsequently, 30 objects will be screened out from recall result 2 as the screening result of recall result 2. According to the usage weight of recall result 3, it is determined that the target number corresponding to recall result 3 is 60. Subsequently, 60 objects will be screened out from recall result 3 as the screening result of recall result 3.

[0048] This application does not limit the screening rules used during the specific screening.

[0049] S140: Arrange the screening results of all the recall results to obtain a sequence of objects to be displayed, and form a recommendation result.

[0050] The filtering results include one or more objects. Sorting the filtering results means arranging the objects in the filtering results. Optionally, the objects in the filtering results are mixed to obtain a sequence of objects to be displayed. That is, in the sorting process, it is not considered from which recall result each object is filtered, nor is it considered by which recall strategy the object is recalled. In simple terms, it is to mix all the objects in the filtering results together for sorting, and no longer distinguish their sources.

[0051] The recommendation result may refer to, for example, identification information of each object arranged in the order of each object in the object sequence. For example, in a video recommendation system, the recommendation result may include identification information of a series of videos arranged in the order of the object sequence. The identification information of the video may include one or more of the video itself, the title of the video, and the content introduction.

[0052] In practice, when the recall strategy remains unchanged, different usage weights of the recall results will result in different numbers of objects from the recall results in the object sequence, which will ultimately lead to different user satisfaction with the recommendation results.

[0053] In the above technical scheme, the usage weights of each recall result in the current round are determined by setting the feedback data of the recommendation results in the previous round and the usage weights of each recall result in the previous round; based on the usage weights of each recall result in the current round, each recall result is screened respectively to obtain the screening results of each recall result; the screening results of all recall results are arranged to obtain a sequence of objects to be displayed to form a recommendation result. In essence, the rationality of the usage weights of each recall result in the previous round is evaluated based on the user's feedback on the recommendation results in the previous round, and then the usage weights of each recall result in the current round are determined, so that the proportion of the number of objects from each recall result in this round is more reasonable, thereby achieving the purpose of meeting the user's information usage needs.

[0054] On the basis of the above technical solution, optionally, S130 can be replaced by: if the current round is greater than or equal to 2, determine the usage weight of each recall result in the current round according to the feedback data of the recommendation results of the previous round and the usage weight of each recall result in the previous round; if the current round is equal to 1, determine the usage weight of each recall result in the current round as a preset value. The present application does not limit the specific value of the preset value. If the current round is equal to 1, it means that there is no user feedback on the recommendation results of the previous round. Therefore, setting the usage weight of each recall result in the current round to a preset value can ensure the normal operation of the recommendation system.

[0055] Based on the above technical solution, optionally, S130 may further include:

[0056] S131. For each recall result of the current round, determine the recall strategy corresponding to the recall result as the target strategy.

[0057] For example, if three recall results are obtained, namely, recall result 1, recall result 2, and recall result 3. Recall result 1 corresponds to recall strategy 1, recall result 2 corresponds to recall strategy 2, and recall result 3 corresponds to recall strategy 3. If the usage weight is currently determined for recall result 1, recall strategy 1 is used as the target strategy.

[0058] S132. Determine feedback data of a target object in the recommendation results of the previous round; the target object is an object recalled based on the target strategy.

[0059] Since the objects included in the recommendation results of the previous round are screened from multiple recall results of the previous round, the essence of this step is to determine the recall strategy based on which each object in the recommendation result is recalled, and then determine the object recalled based on the target strategy (i.e., the target object), and then extract the feedback data of the target object from the feedback data of the recommendation results of the previous round.

[0060] S133. Determine the usage weight of the historical recall results; the historical recall results are the recall results corresponding to the target strategy in the previous round.

[0061] S134: Determine the usage weight of the recall result based on the feedback data of the target object and the usage weight of the historical recall results.

[0062] The essence of this step is to consider how the usage weights of the historical recall results used in the previous round should be modified based on the feedback data of the target object.

[0063] There are many methods for implementing this step, and this application does not limit this. Exemplarily, the implementation method of this step may include: determining the feedback summary data of the historical recall results based on the feedback data of the target object; determining the actual amount of information and the ideal amount of information of the historical recall results based on the feedback summary data of the historical recall results and the usage weight; determining the information deviation based on the actual amount of information and the ideal amount of information of the historical recall results; determining the usage weight of the current round of recall results based on the information deviation and the usage weight of the historical recall results.

[0064] Since the target object is the object recalled based on the target strategy. In other words, for a specific recall result, the target strategy is clear, and all target objects are objects in the recall result. Therefore, the feedback data of the target object can be summarized, and the summary result can be used to represent the overall feedback performance of the user on the recall result based on the target strategy in the previous round of recall. Therefore, the summary result of the feedback data of the target object is called the feedback summary data of the historical recall result.

[0065] This application does not limit the specific aggregation method. Exemplarily, the feedback summary data of the historical recall results is equal to the ratio of the number of objects in the target object interacted by the user to the number of objects in the recommendation results interacted by the user. If the recommendation results include M objects, of which N objects are recalled based on the target strategy, these N objects are the target objects. Assuming that the user interacts with b objects out of M objects, and the number of target objects among these b objects is a, the feedback summary data of the historical recall results can be determined to be a / b. Among them, M, N, a and b are all positive integers. And M>N, b>a, M>b, N>a. Here, the user's interaction with the target object can be, for example, some form of interaction or processing of the object by the user, such as clicking, collecting, forwarding, commenting, watching, etc. In the following text, the "ratio of the number of objects in the target object interacted by the user to the number of objects in the recommendation results interacted by the user" is referred to as "the user's interaction with the target object".

[0066] Research shows that the best recommendation effect of multi-channel recall is that the user's interaction ratio with the target object is exactly equal to the usage weight of the recall results corresponding to the same recall strategy as the target object. Based on this, optionally, "determine the actual information volume and ideal information volume of the historical recall results based on the feedback summary data and usage weights of the historical recall results", including: determine the actual information volume of the recall results based on the feedback summary data and usage weights of the historical recall results; determine the ideal information volume of the recall results based on the feedback summary data of the historical recall results.

[0067] The actual amount of information of the historical recall results may be, for example, an indicator reflecting the actual quality of the historical recall results. The ideal amount of information of the historical recall results may be, for example, an indicator reflecting the ideal quality of the historical recall results. In some embodiments, feedback summary data based on the historical recall results and usage weights may be set to determine the actual amount of information of the recall results; and the ideal amount of information of the recall results may be determined based on the feedback summary data of the historical recall results.

[0068] For example, assuming that the weight value is determined for the i-th recall result of the t+1th round, the current round is the t+1th round, and the previous round is the tth round, where t and i are positive integers. The actual information amount H of the i-th historical recall result of the tth round isi实际 (t) can be expressed as:

[0069] H i实际 (t) = -A i (t)*log 2 (B i (t)+f)

[0070] The ideal information volume H of the historical recall result of the i-th path in the t-th round i理想 (t) can be expressed as:

[0071] H i理想 (t) = -B i (t)*log 2 (B i (t)+f)

[0072] Among them, A i (t) is the usage weight of the i-th historical recall result in the t-th round. i (t) is the percentage of user interactions with the target object for the recommendation result formed in the tth round. f is a constant not equal to 0, which is a small amount. Since the percentage of user interactions with the target object can be 0 in practice, f is set to a constant not equal to 0 to ensure that the true value of the logarithmic function is not 0.

[0073] There are many specific implementation methods for "determining the information deviation based on the actual information amount and the ideal information amount of the historical recall results", and this application does not limit this. For example, the difference and / or ratio of the actual information amount and the ideal information amount of the historical recall results can be used as the information deviation.

[0074] For example, the information deviation e of the i-th historical recall result in the t-th round is i (t) can be expressed as:

[0075] e i (t) = H i理想 (t)-H i实际 (t).

[0076] There are many specific implementation methods for "determining the usage weight of the current round of recall results based on the information deviation and the usage weight of the historical recall results", and this application does not limit this. Exemplarily, "determining the usage weight of the current round of recall results based on the information deviation and the usage weight of the historical recall results" includes: determining the proportional weight correction amount, the integral weight correction amount, and the differential weight correction amount based on the information deviation; determining the usage weight of the current round of recall results based on at least one of the proportional weight correction amount, the integral weight correction amount, and the differential weight correction amount, and the usage weight of the historical recall results.

[0077] For example, the proportional weight correction amount It can be expressed as:

[0078]

[0079] Integral weight correction It can be expressed as:

[0080]

[0081] Derivative weight correction It can be expressed as:

[0082]

[0083] Among them, K P , K I and K D are constants, and any two of the three may be the same or different, and this application does not impose any limitation on this.

[0084] For example, if the current round is the t+1th round, the usage weight of the recall result of the current round is determined based on the usage weights of the proportional weight correction, the integral weight correction, the differential weight correction, and the historical recall results. The usage weight A of the i-th recall result of the t+1th round can be determined by the following formula: i (t+1):

[0085]

[0086] For example, see Figure 2 In the actual process of adopting this method, for the i-th recall result, in the first round, the usage weight of the recall result is a preset value. After displaying the recommendation results of the first round, the feedback data of the i-th recall result in the first round (such as the interaction ratio of users to the target object) can be obtained. In the second round, based on the usage weight of the recall result in the first round and the feedback data of the i-th recall result in the first round, the usage weight of the recall result in the second round is calculated. After displaying the recommendation results of the second round, the feedback data of the i-th recall result in the second round (such as the interaction ratio of users to the target object) can be obtained. In the third round, based on the usage weight of the recall result in the second round and the feedback data of the i-th recall result in the second round, the usage weight of the recall result in the third round is calculated.

[0087] The above technical solution determines the feedback data of the target object by setting it in the recommendation results of the previous round; the target object is the object recalled based on the target strategy; based on the feedback data of the target object and the usage weight of the historical recall results, the usage weight of the recall result is determined. Its essence is to provide a method for specifically and reasonably determining the usage weights of each recall result in the current round, so as to improve the quality of the recommendation results of this round.

[0088] It should be noted that, for the above-mentioned method embodiments, for the sake of simplicity, they are all described as a series of action combinations, but those skilled in the art should know that the present invention is not limited by the described action sequence, because according to the present invention, certain steps can be performed in other sequences or simultaneously. Secondly, those skilled in the art should also know that the embodiments described in the specification are all preferred embodiments, and the actions and modules involved are not necessarily required by the present invention.

[0089] Figure 3 Schematic diagram of a recommendation device in an embodiment of the present disclosure. The recommendation device provided in the embodiment of the present disclosure can be configured in a client or in a server. Figure 3 , the recommended device specifically includes:

[0090] The recall module 310 is used to recall objects from the candidate object library according to multiple preset recall strategies, and obtain the multi-way recall results of the current round; the recall results correspond to the recall strategies one by one;

[0091] The weight determination module 320 is used to determine the usage weight of each recall result in the current round according to the feedback data of the recommendation result in the previous round and the usage weight of each recall result in the previous round;

[0092] A screening module 330 is used to screen the recall results of each channel based on the usage weight of the recall results of each channel in the current round, and obtain screening results of the recall results of each channel;

[0093] The arrangement module 340 is used to arrange the screening results of all the recall results to obtain a sequence of objects to be displayed and form a recommendation result.

[0094] Furthermore, the weight determination module 320 is used to:

[0095] If the current round is greater than or equal to 2, determine the usage weights of the recall results in the current round based on the feedback data of the recommendation results in the previous round and the usage weights of the recall results in the previous round;

[0096] If the current round is equal to 1, the usage weight of each recall result in the current round is determined to be a preset value.

[0097] Furthermore, the weight determination module 320 is used to:

[0098] For each recall result of the current round, determining the recall strategy corresponding to the recall result as the target strategy;

[0099] In the recommendation results of the previous round, feedback data of a target object is determined; the target object is an object recalled based on the target strategy;

[0100] Determine the usage weight of the historical recall result; the historical recall result is the recall result corresponding to the target strategy in the previous round;

[0101] Based on the feedback data of the target object and the usage weight of the historical recall results, the usage weight of the recall result is determined.

[0102] Furthermore, the weight determination module 320 is used to:

[0103] Based on the feedback data of the target object, determine the feedback summary data of the historical recall results;

[0104] Determine the actual amount of information and the ideal amount of information of the historical recall results based on the feedback summary data of the historical recall results and the usage weights;

[0105] Determining an information amount deviation based on an actual information amount and an ideal information amount of the historical recall results;

[0106] Based on the information amount deviation and the usage weight of the historical recall results, the usage weight of the recall results in the current round is determined.

[0107] Furthermore, the weight determination module 320 is used to:

[0108] Determine the actual amount of information of the recall result based on the feedback summary data of the historical recall result and the usage weight;

[0109] Based on the feedback summary data of the historical recall results, the ideal amount of information of the recall results is determined.

[0110] Furthermore, the weight determination module 320 is used to:

[0111] Based on the information deviation, determining a proportional weight correction amount, an integral weight correction amount, and a differential weight correction amount;

[0112] Based on at least one of the proportional weight correction amount, the integral weight correction amount and the differential weight correction amount, and the usage weight of the historical recall results, the usage weight of the recall results in the current round is determined.

[0113] Furthermore, the screening module 330 is used to:

[0114] For any of the recall results, based on the usage weight of the recall result in the current round, determine the target quantity corresponding to the recall result;

[0115] The recall result is screened to obtain a screening result of the recall result, so that the number of objects included in the screening result is equal to the target number.

[0116] The recommendation device provided in the embodiment of the present disclosure can execute the steps executed by the client or server in the recommendation method provided in the embodiment of the method of the present disclosure, and has the execution steps and beneficial effects, which will not be repeated here.

[0117] Figure 4 Schematic diagram of the structure of an electronic device in the embodiment of the present disclosure. Figure 4 , which shows a schematic diagram of the structure of an electronic device 1000 suitable for implementing the embodiment of the present disclosure. The electronic device 1000 in the embodiment of the present disclosure may include, but is not limited to, mobile terminals such as mobile phones, laptop computers, digital broadcast receivers, PDAs (personal digital assistants), PADs (tablet computers), PMPs (portable multimedia players), vehicle terminals (such as vehicle navigation terminals), wearable electronic devices, etc., and fixed terminals such as digital TVs, desktop computers, smart home devices, etc. Figure 4 The electronic device shown is only an example and should not bring any limitation to the functions and scope of use of the embodiments of the present disclosure.

[0118] like Figure 4 As shown, the electronic device 1000 may include a processing device (e.g., a central processing unit, a graphics processor, etc.) 1001, which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 1002 or a program loaded from a storage device 1008 to a random access memory (RAM) 1003 to implement the recommended method of the embodiment described in the present disclosure. In the RAM 1003, various programs and information required for the operation of the electronic device 1000 are also stored. The processing device 1001, the ROM 1002, and the RAM 1003 are connected to each other via a bus 1004. An input / output (I / O) interface 1005 is also connected to the bus 1004.

[0119] Typically, the following devices may be connected to the I / O interface 1005: an input device 1006 including, for example, a touch screen, a touch pad, a keyboard, a mouse, a camera, a microphone, an accelerometer, a gyroscope, etc.; an output device 1007 including, for example, a liquid crystal display (LCD), a speaker, a vibrator, etc.; a storage device 1008 including, for example, a magnetic tape, a hard disk, etc.; and a communication device 1009. The communication device 1009 may allow the electronic device 1000 to communicate with other devices wirelessly or by wire to exchange information. Although Figure 4 The electronic device 1000 is shown with various devices, but it should be understood that it is not required to implement or possess all the devices shown. More or fewer devices may be implemented or possessed instead.

[0120] In particular, according to an embodiment of the present disclosure, the process described above with reference to the flowchart can be implemented as a computer software program. For example, an embodiment of the present disclosure includes a computer program product, which includes a computer program carried on a non-transitory computer-readable medium, and the computer program contains a program code for executing the method shown in the flowchart, thereby implementing the recommended method as described above. In such an embodiment, the computer program can be downloaded and installed from the network through the communication device 1009, or installed from the storage device 1008, or installed from the ROM 1002. When the computer program is executed by the processing device 1001, the above-mentioned functions defined in the method of the embodiment of the present disclosure are executed.

[0121] It should be noted that the computer-readable medium disclosed above may be a computer-readable signal medium or a computer-readable storage medium or any combination of the above two. The computer-readable storage medium may be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device or device, or any combination of the above. More specific examples of computer-readable storage media may include, but are not limited to: an electrical connection with one or more wires, 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 above. In the present disclosure, a computer-readable storage medium may be any tangible medium containing or storing a program that may be used by or in combination with an instruction execution system, device or device. In the present disclosure, a computer-readable signal medium may include an information signal propagated in a baseband or as part of a carrier wave, which carries a computer-readable program code. This propagated information signal may take a variety of forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the above. The computer readable signal medium may also be any computer readable medium other than a computer readable storage medium, which may send, propagate or transmit a program for use by or in conjunction with an instruction execution system, apparatus or device. The program code contained on the computer readable medium may be transmitted using any suitable medium, including but not limited to: wires, optical cables, RF (radio frequency), etc., or any suitable combination of the above.

[0122] In some embodiments, the client and the server may communicate using any known or future developed network protocol such as HTTP (HyperText Transfer Protocol), and may be interconnected with any form or medium of digital information communication (e.g., a communication network). Examples of communication networks include a local area network ("LAN"), a wide area network ("WAN"), an internet (e.g., the Internet), and a peer-to-peer network (e.g., an ad hoc peer-to-peer network), as well as any known or future developed network.

[0123] The computer-readable medium may be included in the electronic device, or may exist independently without being incorporated into the electronic device.

[0124] The computer-readable medium carries one or more programs. When the one or more programs are executed by the electronic device, the electronic device:

[0125] According to the preset multiple recall strategies, objects are respectively recalled from the candidate object library to obtain the multi-way recall results of the current round; the recall results correspond to the recall strategies one by one;

[0126] Determine the usage weights of the recall results in the current round based on the feedback data of the recommendation results in the previous round and the usage weights of the recall results in the previous round;

[0127] Based on the usage weights of the recall results in each channel in the current round, the recall results in each channel are screened respectively to obtain the screening results of the recall results in each channel;

[0128] The screening results of all the recall results are arranged to obtain a sequence of objects to be displayed, thereby forming a recommendation result.

[0129] Optionally, when the above one or more programs are executed by the electronic device, the electronic device may also execute other steps described in the above embodiments.

[0130] Computer program code for performing the operations of the present disclosure may be written in one or more programming languages ​​or a combination thereof, including, but not limited to, object-oriented programming languages, such as Java, Smalltalk, C++, and conventional procedural programming languages, such as "C" or similar programming languages. The program code may be executed entirely on the user's computer, partially on the user's computer, as a separate software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving a remote computer, the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computer (e.g., through the Internet using an Internet service provider).

[0131] The flow chart and block diagram in the accompanying drawings illustrate the possible architecture, function and operation of the system, method and computer program product according to various embodiments of the present disclosure. In this regard, each square box in the flow chart or block diagram can represent a module, a program segment or a part of a code, and the module, the program segment or a part of the code contains one or more executable instructions for realizing the specified logical function. It should also be noted that in some implementations as replacements, the functions marked in the square box can also occur in a sequence different from that marked in the accompanying drawings. For example, two square boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each square box in the block diagram and / or flow chart, and the combination of the square boxes in the block diagram and / or flow chart can be implemented with a dedicated hardware-based system that performs a specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions.

[0132] The units involved in the embodiments described in the present disclosure may be implemented by software or hardware, wherein the name of a unit does not, in some cases, limit the unit itself.

[0133] The functions described above herein may be performed at least in part by one or more hardware logic components. For example, without limitation, exemplary types of hardware logic components that may be used include: field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), systems on chips (SOCs), complex programmable logic devices (CPLDs), and the like.

[0134] In the context of the present disclosure, a machine-readable medium may be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, device, or equipment. A machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium may 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 may 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.

[0135] According to one or more embodiments of the present disclosure, the present disclosure provides an electronic device, including:

[0136] one or more processors;

[0137] A memory for storing one or more programs;

[0138] When the one or more programs are executed by the one or more processors, the one or more processors implement any recommendation method provided in the present disclosure.

[0139] According to one or more embodiments of the present disclosure, the present disclosure provides a computer-readable storage medium having a computer program stored thereon, and when the program is executed by a processor, the program implements any recommendation method provided by the present disclosure.

[0140] The embodiments of the present disclosure also provide a computer program product, which includes a computer program or instructions. When the computer program or instructions are executed by a processor, the recommendation method as described above is implemented.

[0141] It should be noted that, in this article, relational terms such as "first" and "second" are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Moreover, the terms "include", "comprise" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or device. In the absence of further restrictions, the elements defined by the sentence "comprise a ..." do not exclude the existence of other identical elements in the process, method, article or device including the elements.

[0142] The above description is only a specific embodiment of the present disclosure, so that those skilled in the art can understand or implement the present disclosure. Various modifications to these embodiments will be apparent to those skilled in the art, and the general principles defined herein may be implemented in other embodiments without departing from the spirit or scope of the present disclosure. Therefore, the present disclosure will not be limited to the embodiments described herein, but will conform to the widest scope consistent with the principles and novel features disclosed herein.

Claims

1. A recommendation method, characterized in that: include: According to the preset multiple recall strategies, objects are recalled from the candidate object library respectively to obtain the multi-way recall results of the current round; The recall results correspond to the recall strategies one by one; Determine the usage weights of the recall results in the current round based on the feedback data of the recommendation results in the previous round and the usage weights of the recall results in the previous round; Based on the usage weights of the recall results in each channel in the current round, the recall results in each channel are screened respectively to obtain the screening results of the recall results in each channel; The screening results of all the recall results are arranged to obtain a sequence of objects to be displayed, thereby forming a recommendation result.

2. The method according to claim 1, characterized in that Determining the usage weights of the recall results of each channel in the current round according to the feedback data of the recommendation results of the previous round and the usage weights of the recall results of each channel in the previous round includes: If the current round is greater than or equal to 2, determine the usage weights of the recall results in the current round based on the feedback data of the recommendation results in the previous round and the usage weights of the recall results in the previous round; If the current round is equal to 1, the usage weight of each recall result in the current round is determined to be a preset value.

3. The method according to claim 1, characterized in that Determining the usage weights of the recall results of each channel in the current round according to the feedback data of the recommendation results of the previous round and the usage weights of the recall results of each channel in the previous round includes: For each recall result of the current round, determining the recall strategy corresponding to the recall result as the target strategy; In the recommendation results of the previous round, feedback data of a target object is determined; the target object is an object recalled based on the target strategy; Determine the usage weight of the historical recall result; the historical recall result is the recall result corresponding to the target strategy in the previous round; Based on the feedback data of the target object and the usage weight of the historical recall results, the usage weight of the recall result is determined.

4. The method according to claim 3, characterized in that The determining the usage weight of the recall result based on the feedback data of the target object and the usage weight of the historical recall result includes: Based on the feedback data of the target object, determine the feedback summary data of the historical recall results; Determine the actual amount of information and the ideal amount of information of the historical recall results based on the feedback summary data of the historical recall results and the usage weights; Determining an information amount deviation based on an actual information amount and an ideal information amount of the historical recall results; Based on the information amount deviation and the usage weight of the historical recall results, the usage weight of the recall results in the current round is determined.

5. The method according to claim 4, characterized in that The step of determining the actual amount of information and the ideal amount of information of the historical recall results based on the feedback summary data of the historical recall results and the usage weights includes: Determine the actual amount of information of the recall result based on the feedback summary data of the historical recall result and the usage weight; Based on the feedback summary data of the historical recall results, the ideal amount of information of the recall results is determined.

6. The method according to claim 4, characterized in that The determining the usage weight of the recall result in the current round based on the information amount deviation and the usage weight of the historical recall result includes: Based on the information deviation, determining a proportional weight correction amount, an integral weight correction amount, and a differential weight correction amount; Based on at least one of the proportional weight correction amount, the integral weight correction amount and the differential weight correction amount, and the usage weight of the historical recall results, the usage weight of the recall results in the current round is determined.

7. The method according to claim 1, characterized in that The method of filtering the recall results of each channel based on the usage weight of the recall results of each channel in the current round to obtain the filtering results of the recall results of each channel includes: For any of the recall results, based on the usage weight of the recall result in the current round, determine the target quantity corresponding to the recall result; The recall result is screened to obtain a screening result of the recall result, so that the number of objects included in the screening result is equal to the target number.

8. A recommendation device, characterized in that: include: The recall module is used to recall objects from the candidate object library according to multiple preset recall strategies to obtain the multi-way recall results of the current round; The recall results correspond to the recall strategies one by one; A weight determination module, used to determine the usage weight of each recall result in the current round according to the feedback data of the recommendation result in the previous round and the usage weight of each recall result in the previous round; A screening module, used to screen the recall results of each channel based on the usage weight of the recall results of each channel in the current round, and obtain screening results of the recall results of each channel; The arrangement module is used to arrange the screening results of all the recall results to obtain a sequence of objects to be displayed and form a recommendation result.

9. An electronic device, characterized in that: The electronic device comprises: one or more processors; A storage device for storing one or more programs; When the one or more programs are executed by the one or more processors, the one or more processors implement the method according to any one of claims 1 to 7.

10. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the program is executed by a processor, the method according to any one of claims 1 to 7 is implemented.

Citation Information

Patent Citations

  • Image retrieval method, apparatus, server, and storage medium

    CN109241319A

  • Recommendation method and device, computer readable storage medium and electronic equipment

    CN112115370A

  • Information recommendation method and device, equipment and storage medium

    CN113536104A