Data push methods, devices, computer equipment, and storage media

By performing offline fine ranking on the candidate objects screened out by the coarse ranking model to obtain the second candidate objects, the problems of long recommendation time and high computing power consumption in the existing technology are solved, and a more efficient recommendation process is achieved.

CN116708548BActive Publication Date: 2026-03-13BEIJING QIYI CENTURY SCI & TECH CO LTD
View PDF 4 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-06-28
Publication Date
2026-03-13

AI Technical Summary

Technical Problem

In existing technologies, coarse-ranking models are simple and tend to filter out better candidates, resulting in longer recommendation times and higher computational costs, especially when there are many concurrent requests.

Method used

By performing offline fine-ranking on the candidate objects after coarse-ranking, a second candidate object is obtained, and the push object is determined based on this object when a push request is received, thus reducing the need for online fine-ranking.

Benefits of technology

It reduces recommendation time, improves recommendation accuracy, and saves computing resources.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116708548B_ABST
    Figure CN116708548B_ABST
Patent Text Reader

Abstract

This disclosure provides a data push method, apparatus, computer device, and storage medium. The method includes: obtaining candidate push objects corresponding to a target object, and determining a first candidate object from the candidate push objects, wherein the first candidate object is an object filtered out after coarse ranking of the candidate push objects; performing offline fine ranking on the first candidate object to obtain a second candidate object corresponding to the target object; and upon receiving a push request, determining the push object corresponding to the target object based on the second candidate object, and pushing the push object to the target object. In this embodiment, offline fine ranking can be used to filter the first candidate objects filtered out after coarse ranking, eliminating the need for online fine ranking, thus reducing recommendation time and improving recommendation accuracy.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to the field of computer technology, and more specifically, to data push methods, apparatus, computer equipment, and storage media. Background Technology

[0002] In multimedia applications, such as video applications, recommendation systems commonly recommend content to users, such as videos and advertisements. When a user prepares to browse a page, the recommendation system first retrieves content to be recommended through various means, and then proceeds to the ranking stage. To reduce delays in the ranking process, a coarse-ranking model is typically used to roughly evaluate the content to be recommended, filtering out most content with low relevance to the user. Next, the content selected by the coarse-ranking model is sent to a fine-ranking model, allowing the fine-ranking model to calculate the optimal recommendations.

[0003] However, because coarse-ranking models are relatively simple, they often filter out some better candidates. If coarse-ranking is not used and all the content to be recommended is directly pushed to the fine-ranking model, the recommendation process will take longer and consume more computing power when there are many concurrent requests. Summary of the Invention

[0004] This disclosure provides at least one data push method, apparatus, computer device, and storage medium.

[0005] In a first aspect, embodiments of this disclosure provide a data push method, characterized in that it includes:

[0006] Obtain candidate push objects corresponding to the target object, and determine a first candidate object among the candidate push objects, wherein the first candidate object is an object that is filtered out after coarse sorting of the candidate push objects;

[0007] The first candidate object is subjected to offline fine-ranking to obtain the second candidate object corresponding to the target object;

[0008] Upon receiving a push request, based on the second candidate object, a push object corresponding to the target object is determined, and the push object is pushed to the target object.

[0009] In one optional implementation, determining the push object corresponding to the target object based on the second candidate object includes:

[0010] Based on a preset recall path, recall the third candidate object corresponding to the target object;

[0011] The third candidate object and the second candidate object are subjected to online fine-ranking to obtain a first preset number of push objects corresponding to the target object.

[0012] In one optional implementation, the offline fine-ranking process based on the first candidate object to obtain the second candidate object corresponding to the target object includes:

[0013] Establish a bypass fine sorting task for the target object;

[0014] The first candidate object is processed offline based on the bypass fine sorting task to obtain a second preset number of second candidate objects, and the second candidate objects are stored in the cache area.

[0015] In one optional implementation, the method further includes:

[0016] Search the cache area for the second candidate object corresponding to the target object;

[0017] Based on the storage time of the second candidate object, invalid candidate objects are determined, and the invalid candidate objects are cleaned up.

[0018] In an optional implementation, the method according to claim 1, wherein determining the first candidate object among the candidate push objects includes:

[0019] Obtain the preset number of accesses and determine the number of requests to the target object;

[0020] If the number of requested accesses does not exceed the preset number of accesses, the candidate push objects are coarsely sorted based on the third preset number, and the first candidate object is determined according to the processing result.

[0021] If the number of requested accesses exceeds the preset number of accesses, the first candidate object will not be determined from the candidate push objects.

[0022] In one optional implementation, the step of performing a coarse ranking of the candidate push objects based on a third preset number, and determining the first candidate object based on the processing result, includes:

[0023] Through the coarse sorting process, a fourth candidate object corresponding to the third preset number is determined from the candidate push objects;

[0024] Determine the difference between the number of candidate push objects and the third preset number, and determine the difference as the target number;

[0025] Based on the target number, the first candidate object is determined.

[0026] In one optional implementation, the method further includes:

[0027] The fourth candidate object is subjected to online fine-ranking to obtain the push object, and the push object is pushed to the target object.

[0028] Secondly, embodiments of this disclosure also provide a data push device, comprising:

[0029] The acquisition unit is used to acquire candidate push objects corresponding to the target object, and determine a first candidate object among the candidate push objects, wherein the first candidate object is an object that is filtered out after coarse sorting of the candidate push objects;

[0030] The fine-ranking unit is used to perform offline fine-ranking processing on the first candidate object to obtain the second candidate object corresponding to the target object;

[0031] The push unit is used to, upon receiving a push request, determine the push object corresponding to the target object based on the second candidate object, so as to push the push object to the target object.

[0032] Thirdly, embodiments of this disclosure also provide a computer device, including: a processor, a memory, and a bus, wherein the memory stores machine-readable instructions executable by the processor, and when the computer device is running, the processor communicates with the memory via the bus, and when the machine-readable instructions are executed by the processor, the steps of the first aspect above, or any possible implementation of the first aspect, are performed.

[0033] Fourthly, this application also provides a computer storage medium storing computer-executable instructions for executing the data push method described in any of the preceding claims.

[0034] Compared with the prior art, the technical solution provided in this application has the following advantages: The method provided in this application first obtains candidate push objects corresponding to the target object, and determines a first candidate object among the candidate push objects, wherein the first candidate object is the object that was filtered out after coarse ranking of the candidate push objects. Then, offline fine ranking processing can be performed on the first candidate object to obtain a second candidate object corresponding to the target object. Next, after receiving a push request, the push object corresponding to the target object can be determined based on the second candidate object, so as to push the push object to the target object. Thus, the first candidate object filtered out after coarse ranking is filtered out through offline fine ranking processing, without the need for online fine ranking, which reduces the recommendation time and improves the recommendation accuracy. Attached Figure Description

[0035] To more clearly illustrate the technical solutions of the embodiments of this disclosure, the accompanying drawings used in the embodiments will be briefly described below. These drawings are incorporated in and constitute a part of this specification. They illustrate embodiments conforming to this disclosure and, together with the specification, serve to explain the technical solutions of this disclosure. It should be understood that the following drawings only show some embodiments of this disclosure and should not be considered as limiting the scope. Those skilled in the art can obtain other related drawings based on these drawings without creative effort.

[0036] Figure 1 A flowchart of a data push method provided by an embodiment of this disclosure is shown;

[0037] Figure 2 A schematic diagram of a method for determining a push target provided by an embodiment of this disclosure is shown;

[0038] Figure 3 A schematic diagram of another method for determining push targets provided by an embodiment of this disclosure is shown;

[0039] Figure 4 This diagram illustrates a recommendation system for recalling candidate recommendation objects provided in an embodiment of this disclosure.

[0040] Figure 5 A schematic diagram of a data push device provided in an embodiment of this disclosure is shown;

[0041] Figure 6 A schematic diagram of a computer device provided in an embodiment of this disclosure is shown. Detailed Implementation

[0042] To make the objectives, technical solutions, and advantages of the embodiments of this disclosure clearer, the technical solutions of the embodiments of this disclosure will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only a part of the embodiments of this disclosure, and not all of them. The components of the embodiments of this disclosure described and shown in the accompanying drawings can generally be arranged and designed in various different configurations. Therefore, the following detailed description of the embodiments of this disclosure provided in the accompanying drawings is not intended to limit the scope of the claimed disclosure, but merely represents selected embodiments of this disclosure. All other embodiments obtained by those skilled in the art based on the embodiments of this disclosure without inventive effort are within the scope of protection of this disclosure.

[0043] It should be noted that similar labels and letters in the following figures indicate similar items. Therefore, once an item is defined in one figure, it does not need to be further defined and explained in subsequent figures.

[0044] In this document, the term "and / or" merely describes a relationship, indicating that three relationships can exist. For example, A and / or B can represent three cases: A alone, A and B simultaneously, and B alone. Furthermore, the term "at least one" in this document means any combination of at least two of any one or more elements. For example, including at least one of A, B, and C can mean including any one or more elements selected from the set consisting of A, B, and C.

[0045] Research has found that multimedia applications, such as video applications, commonly recommend content to users through recommendation systems, such as recommending videos and advertisements. When a user prepares to browse a page, the recommendation system first retrieves content to be recommended through various means, and then proceeds to the ranking stage. To reduce delays in the ranking stage, a coarse-ranking model is typically used to roughly evaluate the content to be recommended, filtering out most content with low relevance to the user. Next, the content to be recommended filtered by the coarse-ranking model can be sent to a fine-ranking model, allowing the fine-ranking model to calculate the optimal recommended content.

[0046] However, because coarse-ranking models are relatively simple, they often filter out some better candidates. If coarse-ranking is not used and all the content to be recommended is directly pushed to the fine-ranking model, the recommendation process will take longer and consume more computing power when there are many concurrent requests.

[0047] Based on the above research, this disclosure provides a data push method, apparatus, computer device, and storage medium. In embodiments of this disclosure, firstly, candidate push objects corresponding to the target object can be obtained, and a first candidate object can be determined from among these candidate push objects. This first candidate object is the object that was filtered out after coarse ranking of the candidate push objects. Then, offline fine ranking processing can be performed on the first candidate object to obtain a second candidate object corresponding to the target object. Next, upon receiving a push request, the push object corresponding to the target object can be determined based on the second candidate object, and the push object can be pushed to the target object. This offline fine ranking processing filters the first candidate objects filtered out after coarse ranking, eliminating the need for online fine ranking, reducing recommendation time, and improving recommendation accuracy.

[0048] To facilitate understanding of this embodiment, a data push method disclosed in this disclosure will first be described in detail. The execution subject of the data push method provided in this disclosure is generally a computer device with a certain computing power. In some possible implementations, this data push method can be implemented by the processor calling computer-readable instructions stored in memory.

[0049] See Figure 1The diagram shows a flowchart of a data push method provided in an embodiment of this disclosure. The method includes steps S101 to S105, wherein:

[0050] S101: Obtain the candidate push object corresponding to the target object, and determine the first candidate object among the candidate push objects, wherein the first candidate object is the object that is filtered out after coarse sorting of the candidate push objects.

[0051] In this embodiment of the disclosure, after detecting a browsing request of a target object in a target application, a recommendation system can be used to recall candidate push objects corresponding to the target object. Here, the number of candidate push objects can be preset, for example, L, where L is a positive integer.

[0052] It should be understood that the target application can be the aforementioned video application, and the browsing request can be a user's browsing request for the video content displayed in the target application. The recommendation system can respond to the browsing request and make content recommendations to the user, such as recommending short videos or products that the user may be interested in.

[0053] In practice, the aforementioned recommendation system first recalls several candidate push objects, which can be at least a portion of the recommended objects in the recommendation pool. Then, a coarse-ranking model is used to filter the candidate push objects, thereby filtering out most of the candidate push objects that may be irrelevant to the target object, thus reducing the computational load of the fine-ranking model.

[0054] For example, the model parameters of the coarse-ranking model can be determined based on partial object information of the target object, and candidate push objects can be filtered based on this coarse-ranking model. Specifically, the matching score between each candidate push object and the target object can be calculated, and candidate push objects with matching scores exceeding a certain threshold can be pushed to the fine-ranking model. Then, the first candidate object can be determined from the candidate push objects with matching scores below the threshold.

[0055] S103: Perform offline fine sorting on the first candidate object to obtain the second candidate object corresponding to the target object.

[0056] In this embodiment, after determining the first candidate object, a separate offline fine-ranking task can be established for that target object. This offline fine-ranking task can call the fine-ranking model to perform offline fine-ranking processing on the first candidate object to obtain a second candidate object, which is then stored in the corresponding cache area. It should be understood that the offline fine-ranking task is independent of the aforementioned recommendation system; their threads are independent and do not interfere with each other. Therefore, the efficiency of the offline fine-ranking task will not affect the efficiency of the recommendation system in pushing content to the target object. The specific offline fine-ranking process is described below and will not be elaborated here.

[0057] S105: After receiving the push request, based on the second candidate object, determine the push object corresponding to the target object, and push the push object to the target object.

[0058] In this embodiment of the disclosure, after detecting that the target object initiates a browsing request again in the target application, a push request for the target object can be determined, which is used to instruct content recommendation for the target object.

[0059] Specifically, the second candidate object corresponding to the target object can be retrieved from the aforementioned cache area and sent to the recommendation system so that the recommendation system can re-initiate the recommendation process for the target object. Here, the recommendation system can recall at least a portion of the recommended objects from the recommendation pool; for example, the number of recommended objects can be the aforementioned L. Then, coarse and fine ranking processes can be initiated based on the recalled recommended objects and the second candidate objects to obtain recommended objects, which are then pushed to the target object.

[0060] As described above, in this embodiment, candidate push objects corresponding to the target object are first obtained, and a first candidate object is determined from these candidate push objects. This first candidate object is the object that was filtered out after coarse ranking of the candidate push objects. Then, offline fine ranking is performed on the first candidate object to obtain a second candidate object corresponding to the target object. Next, upon receiving a push request, the push object corresponding to the target object can be determined based on the second candidate object, and this push object is then pushed to the target object. This offline fine ranking process filters the first candidate objects filtered out after coarse ranking, eliminating the need for online fine ranking, reducing recommendation time, and improving recommendation accuracy.

[0061] In an optional implementation, step S101, determining the first candidate object from the candidate push objects, specifically includes the following process:

[0062] S1011: Obtain the preset number of accesses and determine the number of requests to the target object.

[0063] S1012: If the number of requested accesses does not exceed the preset number of accesses, the candidate push objects are coarsely sorted based on the third preset number, and the first candidate object is determined according to the processing result.

[0064] S1013: If the number of requested accesses exceeds the preset number of accesses, the first candidate object is not determined from the candidate push objects.

[0065] In this embodiment of the disclosure, considering that offline fine-grained ranking requires high computing power and is time-consuming, and that a large number of candidate push objects are recalled each time the target object initiates a browsing request, determining the first candidate object every time may result in high computing power consumption and waste of computing resources.

[0066] Based on this, a preset number of accesses can be set, and the determination of whether to obtain the first candidate object can be made based on the comparison between the number of requested accesses to the target object and the preset number of accesses. The number of requested accesses can be used to indicate the number of times the above browsing requests are made, specifically including the following situations:

[0067] Scenario 1: The number of access requests has not exceeded the preset access limit.

[0068] In this embodiment of the disclosure, the preset number of accesses can be one or more, and this disclosure does not limit this. When the number of requested accesses does not exceed the preset number of accesses, it can be considered that the number of first candidate objects is still relatively small. At this time, the candidate push objects can be coarsely sorted, and the filtered candidate push objects can be determined as the first candidate objects.

[0069] Scenario 2: The number of access requests exceeds the preset number of accesses.

[0070] In this embodiment of the disclosure, if the number of requested accesses exceeds the preset number of accesses, it indicates that a sufficient number of first candidate objects have accumulated in the cache area. At this point, the candidate recommendation objects filtered out by the coarse ranking process can be directly discarded. Then, the first candidate object corresponding to the target object can be obtained from the cache area, and subsequent fine ranking processing can be performed based on the first candidate object and the candidate recommendation objects filtered out by the coarse ranking model.

[0071] In this embodiment of the disclosure, considering that offline fine-ranking requires high computing power and is time-consuming, and that a large number of candidate push objects are recalled each time the target object initiates a browsing request, determining the first candidate object every time may result in high computing power consumption and waste of computing resources. Therefore, this disclosure can determine the first candidate object only when the number of requests from the target object does not exceed a preset number of accesses, thereby saving computing resources.

[0072] In an optional implementation, step S1012 above, which involves coarsely ranking the candidate push objects based on a third preset number and determining the first candidate object based on the processing result, includes:

[0073] (1) Through the coarse sorting process, determine the fourth candidate object corresponding to the third preset number in the candidate push objects;

[0074] (2) Determine the difference between the number of candidate push objects and the third preset number, and determine the difference as the target number;

[0075] (3) Based on the target number, determine the first candidate object.

[0076] In this embodiment of the disclosure, a third preset number corresponding to the coarse-ranking model can be preset. This third preset number is used to indicate the number of candidate recommendation objects selected by the coarse-ranking model each time it performs coarse-ranking processing. For example, the third preset number can be M, where M is a positive integer less than L. Here, the candidate recommendation objects selected by the coarse-ranking model can be determined as the fourth candidate objects.

[0077] Next, the difference between the number of candidate push objects L and the third preset number M, i.e., LM, can be calculated, and this difference can be used as the target number. Then, the first candidate object can be determined based on this target number. It should be understood that this target number can be used to verify whether packet loss occurred in the first candidate object obtained by the fine-ranking model, that is, whether the first candidate object was completely obtained. Specifically, after the fine-ranking model obtains the first candidate object, it can be determined whether the number of the first candidate object is the target number. If so, it means that no packet loss occurred.

[0078] In this embodiment of the disclosure, a third preset number corresponding to the coarse ranking model can be preset. The third preset number is used to indicate the number of candidate recommendation objects selected by the coarse ranking model each time it performs coarse ranking processing, thereby controlling the number of fourth candidate objects selected, so as to reduce the computational pressure of the fine ranking model.

[0079] In an optional implementation, step S1012 above further includes the following process:

[0080] The fourth candidate object is subjected to online fine-ranking to obtain the push object, and the push object is pushed to the target object.

[0081] In the embodiments disclosed herein, such as Figure 2 The diagram illustrates a method for determining push targets. As shown in the diagram, the coarse-ranking model can perform coarse-ranking on L candidate recommendation targets recalled through multiple recall paths (Recall 1-Recall 4) to obtain M fourth candidate targets, which are then sent to the fine-ranking model.

[0082] Then, the fine-ranking model can perform online fine-ranking on the obtained fourth candidate object to obtain N push objects, and push these N push objects to the target object for display.

[0083] In this embodiment of the disclosure, after the first candidate object is determined, the fourth candidate object can be further processed online to obtain the push object, and the push object is pushed to the target object, thereby improving the content push process.

[0084] In an optional implementation, step S103 above, which involves performing offline fine-ranking based on the first candidate object to obtain the second candidate object corresponding to the target object, specifically includes the following process:

[0085] S1031: Establish a bypass fine sorting task for the target object.

[0086] S1032: Based on the bypass fine sorting task, perform offline fine sorting on the first candidate object to obtain a second preset number of second candidate objects, and store the second candidate objects in the cache area.

[0087] In this embodiment of the disclosure, the aforementioned bypass fine-ranking task can be used to invoke the fine-ranking model to perform fine-ranking processing on the first candidate object, so as to obtain a second preset number of second candidate objects. Here, the second preset number can be Q, where Q is a positive integer less than the aforementioned LM.

[0088] like Figure 3 The diagram illustrates another method for determining the push target. Figure 3 It can be seen that the fine-ranking model can perform offline fine-ranking of the above LM first candidate objects and store the resulting Q second candidate objects in the cache area.

[0089] In practice, the model parameters of the fine-tuning model can be determined based on the object information of the target object. Specifically, this object information can include: historical viewing records, location information, user information, etc. The fine-tuning model can determine the matching score between the first candidate object and the target object based on these model parameters, and then rank the first candidate objects based on the matching score. Then, a second preset number of second candidate objects can be determined based on the ranking results.

[0090] In this embodiment of the disclosure, a bypass fine ranking task can be established for the target object, thereby performing offline fine ranking of the first candidate objects screened out by the coarse ranking model, without the need for online fine ranking, which reduces the recommendation time and improves the recommendation accuracy.

[0091] In an optional implementation, step S103 above further includes the following process:

[0092] (1) Locate the second candidate object corresponding to the target object in the cache area;

[0093] (2) Based on the storage time of the second candidate object, determine the failed candidate object and perform a cleanup operation on the failed candidate object.

[0094] In this embodiment of the disclosure, considering that the second candidate object has a certain time-sensitivity, for example, when the geographical location of the target object changes, the second candidate object related to the geographical location will become invalid. Therefore, invalid second candidate objects in the cache area can be periodically cleaned up.

[0095] In practice, a periodic cleanup strategy can be adopted. Here, the second object whose storage time exceeds the preset storage time can be identified as a candidate for failure, and the candidate for failure can be cleaned up.

[0096] In this embodiment of the disclosure, considering that the second candidate object has a certain time-sensitivity, the invalid candidate objects in the cache area can be cleaned up periodically to avoid too many invalid candidate objects affecting the efficiency of the recommendation system in determining the recommended object.

[0097] In an optional implementation, step S105 above, which determines the push object corresponding to the target object based on the second candidate object, specifically includes the following process:

[0098] S1051: Based on the preset recall path, recall the third candidate object corresponding to the target object.

[0099] S1052: Perform online fine-ranking processing on the third candidate object and the second candidate object to obtain a first preset number of push objects corresponding to the target object.

[0100] In this embodiment of the disclosure, the preset recall path can be used to indicate the recall of recommended objects in the above-mentioned recommendation pool. It should be understood that the number of third candidate objects can be the same as the number of candidate recommended objects.

[0101] Next, the third candidate object can be coarsely ranked, and the result of the coarse ranking can be compared with the second candidate object online for fine ranking. Specifically, fine ranking can be performed online by calling the fine ranking model to obtain a first preset number of push objects, where the first preset number can be N as mentioned above.

[0102] In this embodiment of the disclosure, before online fine ranking, a third candidate object can be recalled through a preset recall path, thereby increasing the number of samples participating in online fine ranking and improving the accuracy of the identified push objects.

[0103] In one alternative implementation, see as follows: Figure 4The diagram illustrates the recall of candidate recommendations by the aforementioned recommendation system. Here, the target user can browse the target application through a client, which can include a mobile phone, webpage, television, etc.

[0104] After detecting a browsing request for a target object within a target application, the recommendation system can determine the corresponding push target. Specifically, this can be achieved by invoking the recall model, the coarse-grained ranking model, and the fine-grained ranking model.

[0105] Depend on Figure 4 Yes, recall can retrieve candidate recommendation objects by calling the data warehouse (i.e., the recommendation pool mentioned above) and the cache area. Calling the coarse ranking model can obtain the fourth candidate object obtained after the coarse ranking model filters the candidate recommendation objects. Calling the fine ranking model can obtain the push object obtained after online fine ranking processing.

[0106] Additionally, the recycling system can recycle the second candidate object obtained after the offline fine-ranking task has refined the first candidate object, and store the second candidate object in the cache area so that the recommendation system can recall the second candidate object.

[0107] In summary, in this embodiment, candidate push objects corresponding to the target object can first be obtained, and a first candidate object can be determined from the candidate push objects. This first candidate object is the object that was filtered out after coarse ranking of the candidate push objects. Then, offline fine ranking can be performed on the first candidate object to obtain a second candidate object corresponding to the target object. Next, upon receiving a push request, the push object corresponding to the target object can be determined based on the second candidate object, and the push object can be pushed to the target object. This offline fine ranking process filters the first candidate objects filtered out after coarse ranking, eliminating the need for online fine ranking, reducing recommendation time, and improving recommendation accuracy.

[0108] Those skilled in the art will understand that, in the above-described method of the specific implementation, the order in which each step is written does not imply a strict execution order and does not constitute any limitation on the implementation process. The specific execution order of each step should be determined by its function and possible internal logic.

[0109] Based on the same inventive concept, this disclosure also provides a data push device corresponding to the data push method. Since the principle of the device in this disclosure for solving the problem is similar to the data push method described above in this disclosure, the implementation of the device can refer to the implementation of the method, and the repeated parts will not be described again.

[0110] Reference Figure 5The diagram shown is a schematic representation of a data push device provided in an embodiment of this disclosure. The device includes: an acquisition unit 51, a sorting unit 52, and a push unit 53; wherein,

[0111] The acquisition unit 51 is used to acquire the candidate push objects corresponding to the target object, and determine the first candidate object among the candidate push objects, wherein the first candidate object is the object that is filtered out after coarse sorting of the candidate push objects;

[0112] The fine sorting unit 52 is used to perform offline fine sorting on the first candidate object to obtain the second candidate object corresponding to the target object;

[0113] The push unit 53 is used to, after receiving a push request, determine the push object corresponding to the target object based on the second candidate object, so as to push the push object to the target object.

[0114] In this embodiment, candidate push objects corresponding to the target object are first obtained, and a first candidate object is determined from these candidate push objects. This first candidate object is the object that was filtered out after coarse ranking of the candidate push objects. Then, offline fine ranking is performed on the first candidate object to obtain a second candidate object corresponding to the target object. Next, upon receiving a push request, the push object corresponding to the target object can be determined based on the second candidate object, and this push object is pushed to the target object. This offline fine ranking process filters the first candidate objects that were filtered out after coarse ranking, eliminating the need for online fine ranking, reducing recommendation time, and improving recommendation accuracy.

[0115] In one possible implementation, the pushing unit 53 is further configured to:

[0116] Based on a preset recall path, recall the third candidate object corresponding to the target object;

[0117] The third candidate object and the second candidate object are subjected to online fine-ranking to obtain a first preset number of push objects corresponding to the target object.

[0118] In one possible implementation, the fine sorting unit 52 is further configured to:

[0119] Establish a bypass fine sorting task for the target object;

[0120] The first candidate object is processed offline based on the bypass fine sorting task to obtain a second preset number of second candidate objects, and the second candidate objects are stored in the cache area.

[0121] In one possible implementation, the fine sorting unit 52 is further configured to:

[0122] Search the cache area for the second candidate object corresponding to the target object;

[0123] Based on the storage time of the second candidate object, invalid candidate objects are determined, and the invalid candidate objects are cleaned up.

[0124] In one possible implementation, the acquisition unit 51 is further configured to:

[0125] Obtain the preset number of accesses and determine the number of requests to the target object;

[0126] If the number of requested accesses does not exceed the preset number of accesses, the candidate push objects are coarsely sorted based on the third preset number, and the first candidate object is determined according to the processing result.

[0127] If the number of requested accesses exceeds the preset number of accesses, the first candidate object will not be determined from the candidate push objects.

[0128] In one possible implementation, the acquisition unit 51 is further configured to:

[0129] Through the coarse sorting process, a fourth candidate object corresponding to the third preset number is determined from the candidate push objects;

[0130] Determine the difference between the number of candidate push objects and the third preset number, and determine the difference as the target number;

[0131] Based on the target number, the first candidate object is determined.

[0132] In one possible implementation, the acquisition unit 51 is further configured to:

[0133] The fourth candidate object is subjected to online fine-ranking to obtain the push object, and the push object is pushed to the target object.

[0134] The description of the processing flow of each unit in the device and the interaction flow between each unit can be found in the relevant descriptions in the above method embodiments, and will not be detailed here.

[0135] Corresponding to Figure 1 In addition to the data push method in this disclosure, this embodiment also provides a computer device 600, such as... Figure 6 The diagram shown is a structural schematic of a computer device 600 provided in an embodiment of this disclosure, including:

[0136] The computer device 600 comprises a processor 61, a memory 62, and a bus 63. The memory 62 stores execution instructions and includes main memory 621 and external memory 622. Main memory 621, also called internal memory, temporarily stores computational data in the processor 61, as well as data exchanged with external memory such as a hard disk. The processor 61 exchanges data with external memory 622 through main memory 621. When the computer device 600 is running, the processor 61 communicates with the memory 62 through the bus 63, causing the processor 61 to execute the following instructions:

[0137] Obtain candidate push objects corresponding to the target object, and determine a first candidate object among the candidate push objects, wherein the first candidate object is an object that is filtered out after coarse sorting of the candidate push objects;

[0138] The first candidate object is subjected to offline fine-ranking to obtain the second candidate object corresponding to the target object;

[0139] Upon receiving a push request, based on the second candidate object, a push object corresponding to the target object is determined, and the push object is pushed to the target object.

[0140] This disclosure also provides a computer-readable storage medium storing a computer program, which, when executed by a processor, performs the steps of the data push method described in the above method embodiments. The storage medium can be a volatile or non-volatile computer-readable storage medium.

[0141] This disclosure also provides a computer program product carrying program code. The program code includes instructions that can be used to execute the steps of the data push method described in the above method embodiments. For details, please refer to the above method embodiments, which will not be repeated here.

[0142] The aforementioned computer program product can be implemented through hardware, software, or a combination thereof. In one optional embodiment, the computer program product is specifically embodied in a computer storage medium; in another optional embodiment, the computer program product is specifically embodied in a software product, such as a software development kit (SDK), etc.

[0143] Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the specific working processes of the systems and devices described above can be referred to the corresponding processes in the foregoing method embodiments, and will not be repeated here. In the several embodiments provided in this disclosure, it should be understood that the disclosed systems, devices, and methods can be implemented in other ways. The device embodiments described above are merely illustrative. For example, the division of units is only a logical functional division; in actual implementation, there may be other division methods. Furthermore, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Another point is that the displayed or discussed mutual coupling or direct coupling or communication connection may be through some communication interfaces; the indirect coupling or communication connection of devices or units may be electrical, mechanical, or other forms.

[0144] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.

[0145] In addition, the functional units in the various embodiments of this disclosure can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit.

[0146] If the aforementioned functions are implemented as software functional units and sold or used as independent products, they can be stored in a processor-executable, non-volatile, computer-readable storage medium. Based on this understanding, the technical solution of this disclosure, in essence, or the part that contributes to the prior art, or a portion of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of this disclosure. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.

[0147] Finally, it should be noted that the above-described embodiments are merely specific implementations of this disclosure, used to illustrate the technical solutions of this disclosure, and not to limit it. The protection scope of this disclosure is not limited thereto. Although this disclosure has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that any person skilled in the art can still modify or easily conceive of changes to the technical solutions described in the foregoing embodiments, or make equivalent substitutions for some of the technical features, within the scope of the technology disclosed in this disclosure. Such modifications, changes, or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of this disclosure, and should all be covered within the protection scope of this disclosure. Therefore, the protection scope of this disclosure should be determined by the protection scope of the claims.

Claims

1. A data push method, characterized by, The method comprises the following steps: After detecting that a target object initiates a browsing request in a target application, a candidate pushing object corresponding to the target object is obtained, and a first candidate object is determined in the candidate pushing object, wherein the first candidate object is an object filtered out after rough sorting processing of the candidate pushing object; offline fine sorting processing is performed on the first candidate object to obtain a second candidate object corresponding to the target object, and online fine sorting processing is performed on the candidate recommended object filtered out after rough sorting processing to obtain a pushing object, and the pushing object is pushed to the target object; after detecting that the target object initiates a browsing request in the target application again and determining that a pushing request for the target object is received, a pushing object corresponding to the target object is determined based on the second candidate object, so as to push the pushing object to the target object; the determination of the pushing object corresponding to the target object based on the second candidate object comprises: based on a preset recall path, a third candidate object corresponding to the target object is recalled; based on the third candidate object and the second candidate object, online fine sorting processing is performed to obtain a first preset number of pushing objects corresponding to the target object.

2. The method of claim 1, wherein, the offline fine sorting processing based on the first candidate object to obtain the second candidate object corresponding to the target object comprises: a bypass fine sorting task is established for the target object; based on the bypass fine sorting task, offline fine sorting processing is performed on the first candidate object to obtain a second preset number of second candidate objects, and the second candidate objects are stored in a cache area.

3. The method of claim 2, wherein, The method further comprises: the second candidate object corresponding to the target object is searched in the cache area; based on the storage time of the second candidate object, an invalid candidate object is determined, and a cleaning operation is performed on the invalid candidate object.

4. The method of claim 1, wherein, the determination of the first candidate object in the candidate pushing object comprises: a preset access number is obtained, and a request access number of the target object is determined; in a case where the request access number does not exceed the preset access number, rough sorting processing is performed on the candidate pushing object based on a third preset number, and the first candidate object is determined according to the processing result; in a case where the request access number exceeds the preset access number, the first candidate object is not determined in the candidate pushing object.

5. The method of claim 4, wherein, the rough sorting processing of the candidate pushing object based on the third preset number and the determination of the first candidate object according to the processing result comprise: through the rough sorting processing, a fourth candidate object corresponding to the third preset number is determined in the candidate pushing object; a difference between the number of the candidate pushing object and the third preset number is determined as a target number; based on the target number, the first candidate object is determined.

6. The method of claim 5, wherein, The method further comprises: online fine sorting processing is performed on the fourth candidate object to obtain a pushing object, and the pushing object is pushed to the target object.

7. A data push apparatus, characterized by comprising: ​ After detecting that the target object initiates a browsing request in the target application, an acquisition unit is configured to acquire a candidate push object corresponding to the target object, and determine a first candidate object in the candidate push object, wherein the first candidate object is an object filtered out after rough sorting processing of the candidate push object; a fine sorting unit is configured to perform offline fine sorting processing on the first candidate object to obtain a second candidate object corresponding to the target object, and perform online fine sorting processing on the candidate recommended object filtered out after the rough sorting processing to obtain a push object, and push the push object to the target object; a push unit is configured to, after detecting that the target object initiates a browsing request in the target application again and determining that a push request is received, determine a push object corresponding to the target object based on the second candidate object, and push the push object to the target object; the determination of the push object corresponding to the target object based on the second candidate object comprises: recalling a third candidate object corresponding to the target object based on a preset recall path; performing online fine sorting processing on the third candidate object and the second candidate object to obtain a first preset number of push objects corresponding to the target object.

8. A computer device, comprising: comprises: a processor, a memory and a bus, the memory stores machine readable instructions executable by the processor, when the computer device is running, the processor and the memory communicate through the bus, the machine readable instructions are executed by the processor to execute the steps of the data push method in any one of claims 1 to 6.

9. A computer-readable storage medium, characterized in that, The computer readable storage medium stores a computer program, which is executed by the processor to execute the steps of the data push method in any one of claims 1 to 6.

Citation Information

Patent Citations

  • Travel scheme recommendation method and system, intelligent terminal and storage medium

    CN111461835A

  • Personalized recommendation method, system and equipment based on traditional Chinese medicine knowledge and medium

    CN113111253A

  • Recommended resource determination method and device, server and computer program product

    CN114547449A

  • Searching method and device

    CN115827841A