Recommendation result deduplication method and related products thereof

By obtaining user behavior data in real time on the terminal side and deduplication of the recommendation list using the derepetable configuration file, the problem of repeated display of products in the recommendation system is solved, reducing the repetitive display rate and improving the conversion rate.

CN120256419APending Publication Date: 2025-07-04GUANGZHOU XIYIN INT IMPORT & EXPORT CO LTD +2
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510351658.5
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-03-24
Publication Date
2025-07-04

AI Technical Summary

Technical Problem

The existing recommendation system cannot perceive end user behavior in a timely manner due to the back-end recommendation strategy, resulting in a high product repetition rate, affecting the user experience.

Method used

On the terminal side, the recommended list is deduplicated by obtaining user behavior data and using the pre-acquisitioned deduplication configuration file, and the cache records and behavior rules are updated in real time to reduce duplicate display.

Benefits of technology

It effectively reduces the repetitive display rate of products, improves the click conversion rate of products, and improves the user experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120256419A_ABST
    Figure CN120256419A_ABST
Patent Text Reader

Abstract

The invention discloses a recommendation result deduplication method and related products thereof, and the method comprises the steps: obtaining monitored user behavior data in a process of displaying a recommendation list pushed by a server; and before the user behavior data is reported to the server, performing de-duplication on the recommendation list according to a pre-acquired de-duplication configuration file and the user behavior data to obtain a de-duplication result. According to the method, duplicate removal is performed on the recommendation result of the terminal side by obtaining the reported user behavior data, so that the repeated display rate of the commodity can be reduced, and the commodity click conversion rate is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application generally relates to the technical field of data processing. More specifically, this application relates to a method for deduplicating recommendation results and related products. Background Art

[0002] Recommendation systems are one of the key technologies in modern Internet applications and are widely used in multiple fields such as e-commerce, social media, online video, and news media. In current e-commerce product applications, the display of products usually depends on the recommendation strategies of the backend recommendation system. These recommendation strategies aim to determine which products should be displayed to users in the information stream by analyzing the historical behaviors and interest preferences of users. However, although the backend recommendation system can provide personalized recommendation strategies, due to the frequency limitation of data updates in the backend recommendation system and the inability to timely perceive the real-time changes in the user behaviors of the terminal, the backend recommendation system may repeatedly recommend the same products to the terminal, resulting in a relatively high repetition rate of product displays.

[0003] In view of this, there is an urgent need to provide a method for deduplicating recommendation results to reduce the repetition rate of product displays. Summary of the Invention

[0004] In order to solve at least one or more of the above-mentioned technical problems, this application proposes a method for deduplicating recommendation results and related products in multiple aspects.

[0005] In a first aspect, this application provides a method for deduplicating recommendation results. This method is executed on a terminal and includes: during the process of pushing a recommendation list by a display server, obtaining the monitored user behavior data; before reporting the user behavior data to the server, deduplicating the recommendation list according to the pre-obtained deduplication configuration file and the user behavior data to obtain a deduplication result.

[0006] In some embodiments, deduplicating the recommendation list according to the pre-obtained deduplication configuration file and the user behavior data includes: reading the session cache record and the cache valid duration field of the user behavior record included in the session cache record according to the deduplication configuration file; obtaining a judgment result according to whether the session cache record or the cache valid duration field meets the cache aging rule of the deduplication configuration file; updating the session cache record according to the judgment result and the user behavior data to obtain an updated session cache record; deduplicating the recommendation list according to the comparison result between the user behavior record in the updated session cache record and the user behavior rule of the deduplication configuration file to obtain a deduplication result.

[0007] In some embodiments, there are multiple session caches. The session caches are updated according to the judgment result and user behavior data to obtain updated session caches, including: when the judgment result indicates that the number of session caches does not reach the configured threshold, traverse each session cache, and update the session cache according to the judgment result of the cache validity duration field and user behavior data.

[0008] In some embodiments, there are multiple recommendation lists. The recommendation lists are deduplicated according to the comparison result between the user behavior records in the updated session caches and the user behavior rules in the deduplication configuration file, including: read the updated user behavior records to obtain the recommended object field and the field corresponding to the user behavior event; if the field corresponding to the user behavior event is greater than the cumulative threshold of the user behavior rules, then find the target recommendation list in the multiple recommendation lists according to the recommended object field; delete the recommended object related to the recommended object field in the target recommendation list.

[0009] In some embodiments, the recommendation list is obtained by the server in response to the information flow request sent by the terminal after processing by the deduplication policy, and the sending time of the information flow request is later than the listening time of the user behavior data.

[0010] In some embodiments, the recommendation list is associated with the display position in the recommendation scenario, and the received recommendation list pushed by the server includes the one obtained by the server based on the information flow request corresponding to the display position after processing by the deduplication policy, where the information flow request corresponding to the display position is generated based on different trigger mechanisms.

[0011] In some embodiments, the method further includes: when receiving the recommendation list pushed by the server, if the read cache validity duration fields all meet the cache aging rules of the deduplication configuration file, deduplicate the recommendation list according to the historical recommendation list in the cache to obtain the deduplicated recommendation list.

[0012] In some embodiments, the deduplication configuration file is issued by the server, and the method further includes: registering the recommendation scenario according to the deduplication configuration file; configuring the parameters of the recommendation scenario according to the deduplication configuration file, and reading and updating the data corresponding to the recommendation scenario in the disk cache to the memory cache.

[0013] In a second aspect, the present application provides a device for deduplicating recommendation results, including: a memory; and at least one processor configured to: obtain the monitored user behavior data during the process of displaying the recommendation list pushed by the server; before reporting the user behavior data to the server, deduplicate the recommendation list according to the pre-obtained deduplication configuration file and user behavior data to obtain the deduplication result.

[0014] In a third aspect, the present application provides a non-transitory machine-readable medium having program code stored thereon for deduplicating recommendation results. When the program code is executed by at least one processor, the code guides the execution operations of the at least one processor. The program code includes: during the process of presenting a recommendation list pushed from a server, obtaining monitored user behavior data; before reporting the user behavior data to the server, deduplicating the recommendation list according to a pre-obtained deduplication configuration file and the user behavior data to obtain a deduplication result.

[0015] The technical solutions provided by the present application may include the following beneficial effects:

[0016] The recommendation result deduplication method and related products provided by the present application, by obtaining monitored user behavior data during the process of presenting a recommendation list pushed from a server, can instantaneously perceive the user behavior data, and before reporting the user behavior data to the server, deduplicate the recommendation list according to a pre-obtained deduplication configuration file and the user behavior data to obtain a deduplication result. According to the deduplication configuration file and the user behavior data instantaneously perceived by the user for the recommendation list, the recommendation list is further deduplicated at the terminal, so that the repeated presentation of the subsequent recommendation list to be presented to the front end is controllable. It effectively solves the problem of repeated product recommendations caused by the delay in reporting user behavior data, resulting in subsequent recommendations being unable to instantaneously perceive user behavior, and greatly reduces the product repeated presentation rate. BRIEF DESCRIPTION OF THE DRAWINGS

[0017] By reading the following detailed description with reference to the accompanying drawings, the above and other objects, features, and advantages of the exemplary embodiments of the present application will become readily understood. In the drawings, several embodiments of the present application are shown in an exemplary rather than restrictive manner, and the same or corresponding reference numerals represent the same or corresponding parts, wherein:

[0018] Figure 1 An exemplary flowchart of a recommendation result deduplication method according to some embodiments of the present application is shown;

[0019] Figure 2 An exemplary flowchart of a recommendation result deduplication method according to other embodiments of the present application is shown;

[0020] Figure 3 An exemplary flowchart of a recommendation result deduplication method according to still other embodiments of the present application is shown;

[0021] Figure 4 An exemplary flowchart of the interaction between a terminal and a server according to some embodiments of the present application is shown;

[0022] Figure 5A block diagram showing the hardware configuration of a device 500 for deduplicating recommendation results, which can implement the recommendation result deduplication method of the embodiments of the present application. Detailed implementation manners

[0023] The technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the accompanying drawings in the embodiments of the present application. Obviously, the described embodiments are some, but not all, of the embodiments of the present application. For the sake of simplicity and clarity of description, when considered appropriate, the same reference numerals may be repeated in the drawings to indicate corresponding or similar elements. In addition, the present application sets forth many specific details in order to provide a thorough understanding of the embodiments described herein. However, those of ordinary skill in the art will understand that the embodiments described herein may be practiced without these specific details. In other cases, well-known methods, procedures, and components have not been described in detail so as not to obscure the embodiments described herein. Moreover, this description should not be regarded as limiting the scope of the embodiments described herein. Based on the embodiments in the present application, all other embodiments obtained by those skilled in the art without creative efforts shall fall within the scope of protection of the present application.

[0024] It should be understood that the possible terms "first" or "second" etc. in the claims, the description and the drawings disclosed in the present application are used to distinguish different objects, rather than to describe a specific order. The terms "comprising" and "including" used in the description and claims of the present application indicate the presence of the described features, wholes, steps, operations, elements and / or components, but do not exclude the presence or addition of one or more other features, wholes, steps, operations, elements, components and / or their combinations.

[0025] It should also be understood that the terms used in the description of the present application herein are only for the purpose of describing specific embodiments and are not intended to limit the present application. As used in the description and claims of the present application, unless the context clearly indicates otherwise, the singular forms "a", "an" and "the" are intended to include the plural forms. It should be further understood that the term "and / or" used in the description and claims of the present application refers to any combination and all possible combinations of one or more of the associated listed items, and includes these combinations.

[0026] As used in this specification and the claims, the term "if" may be interpreted as "when" or "once" or "in response to determining" or "in response to detecting" according to the context. Similarly, the phrase "if determined" or "if [the described condition or event] is detected" may be interpreted as meaning "once determined" or "in response to determining" or "once [the described condition or event] is detected" or "in response to detecting [the described condition or event]" according to the context.

[0027] In current e-commerce product applications, the display of products usually depends on the recommendation strategies of the backend recommendation system. These recommendation strategies aim to determine which products should be displayed to users in the information stream by analyzing users' historical behaviors and interest preferences. When users browse products on the terminal, product exposure events can be recorded through a data logging program. The product exposure events are reported to the user behavior sequence on the server through a data logging channel, and then the server uses the product exposure suppression strategy in the deduplication strategy to limit the probability of repeated product occurrences. The server suppression strategy means that the server maintains a recommendation product cache pool at the user level, and the cache pool is set with a certain validity period (such as 1 hour). In this way, it can be ensured that within the validity period, the products obtained by users will not repeat. However, since the data logging program reports user behavior events non-real-time, for example, it reports once every 10 seconds. During the reporting collection period, user behavior data generated by users for products causes the products to have been exposed. User behavior data, such as click behavior, browsing, or purchase behavior, etc. However, these user behavior data are not timely perceived by the server recommendation system, resulting in the repeated appearance of exposed products on the terminal, thus affecting the user experience.

[0028] In view of this, there is an urgent need to provide a method for deduplicating recommendation results, which effectively solves the problem of repeated product recommendations caused by data latency between the terminal and the server by obtaining user behavior data within the reporting collection period to perform secondary deduplication on recommended products.

[0029] The following will describe in detail the specific implementation manners of the present application with reference to the accompanying drawings.

[0030] Figure 1 Exemplary flowchart 100 of the recommendation result deduplication method according to some embodiments of the present application is shown. Please refer to Figure 1 The recommendation result deduplication method shown in the embodiments of the present application may include:

[0031] In step S101, receive the recommended list pushed by the server.

[0032] In some embodiments, the terminal sends an information stream request to the recommendation system configured on the server side. After receiving the information stream request, the recommendation system responds to the information stream request and performs product recall to obtain the recommended list. The recommended list is a set including multiple recommended objects. The recommended objects include but are not limited to recommended products, recommended advertisements, and pushed multimedia data, such as audio, video, etc.

[0033] In still other embodiments, the recommended list may be obtained by the server through processing the deduplication strategy, that is, the terminal receives the deduplicated recommended list pushed by the server.

[0034] In some embodiments, the recommendation list may include one or more recommendation sub - lists, and each recommendation sub - list is associated with each display position in the recommendation scenario. A display position refers to the position area in the recommendation scenario for displaying recommended objects. The recommendation scenario may be a page or a functional module. For example, the recommendation scenario is the home page of a certain e - commerce platform, and the home page of the e - commerce platform is configured to include one or more display positions. Each display position can accommodate multiple product slots, and each slot corresponds to a recommended product. As Figure 4 shown, the recommendation scenario includes display position 1 and display position 2. Among them, display position 2 includes multiple slots. The recommended product for each slot can be associated with a product identifier (Iidentifier, ID) and a store ID.

[0035] In some embodiments, the recommendation sub - lists corresponding to each display position may come from different data sources. For example, the recommendation sub - list 1 corresponding to display position 1 and the recommendation sub - list 2 corresponding to display position 2. The recommendation sub - list 1 and the recommendation sub - list 2 come from different recommendation channels, and their data may partially overlap, and their update times may not be synchronized.

[0036] In step S102, the monitored user behavior data is obtained;

[0037] In the embodiments of the present application, user behavior data refers to a series of data generated by a user's interaction with the interaction interface of an application installed in the terminal. User behavior data includes, but is not limited to, product click behavior, browsing behavior, or purchase behavior, etc. To collect user behavior data and send it to the backend for processing, the method of reporting through data points can be adopted. Based on the method of reporting through data points to collect the user's browsing behavior, when the user browses by swiping the interface, multiple products within the display position are synchronously exposed. The data - point technology can capture the exposure event, and after caching the relevant information of the exposure event (such as user identifier, product identifier, position identifier of the display position, etc.), after an interval of time (the acquisition period and the time required for processing and reporting), all the exposure events captured during the acquisition period are sent to the server together. After receiving these reported data, the server stores them and performs deduplication processing on the products in the unexposed product pool based on these reported data, that is, moves the corresponding products in the unexposed product pool to the exposed product pool according to the data already exposed on the terminal side.

[0038] Since the buried point reporting method reports the collected user behavior data to the server at regular time intervals, it results in that before the reporting, when a user performs a certain user behavior (such as clicking, browsing, purchasing, etc.) within the application, the buried point code can capture these behaviors immediately, but the server cannot perceive them immediately. When the server has not received the user behavior data from the terminal through the buried point reporting channel, a new information flow request triggered by the user behavior has been sent to the server. As a result, when the server receives the new information flow request, the server will recall the corresponding recommendation results from the unexposed product pool, and these recommendation results are sent to the terminal for display, which may result in duplicate display.

[0039] Among them, the user behavior data is monitored before the terminal sends the information flow request.

[0040] In step S103, before reporting the user behavior data to the server, the recommendation list is deduplicated according to the pre-obtained deduplication configuration file and the user behavior data to obtain a deduplication result.

[0041] In some embodiments, the process of reporting the collected user behavior data by the buried point program to the server can be roughly divided into two processes, namely the user behavior data collection process and the user behavior data reporting process. To solve the foregoing problem that the server cannot perceive the user behavior data immediately, resulting in duplicate display of products. In the embodiments of the present application, through the deduplication configuration file pre-obtained on the terminal side, according to the user behavior data collected by the buried point, the received recommendation list is deduplicated again. The deduplication configuration file can be received from the server through relevant interfaces.

[0042] In some embodiments, the deduplication configuration file may include a cache aging rule and a user behavior rule. The cache aging rule is used to limit the effective use time of the memory cache related to the recommendation scenario, and the user behavior rule is used to limit the display frequency of the recommended object.

[0043] In some embodiments, a session cache record corresponding to the recommendation scenario is created in the memory cache. The session cache record includes user behavior records, and the user behavior records are generated and updated according to the user behavior data. The user behavior records include multiple fields, including but not limited to the recommended object field, the field related to the user behavior event, and the aging field related to the user behavior event. For example, when registering the recommendation scenario, the recommendation scenario is registered and filed. The information related to the registered scenario includes the scenario name, and the relevant information of the display position associated within the recommendation scenario, etc.

[0044] For example, the current recommended scenario is a certain shopping home page, which may include a display position. Suppose the position identifier of this display position is configured as GWID1. When an exposure event occurs while the user is browsing the current recommended scenario, a user behavior record is created or updated, and the number of times the product associated with this display position is exposed is accumulated using this user behavior record. The user behavior event is the exposure event that occurs when the user is browsing the current recommended scenario.

[0045] For another example, the recommended scenario includes two or more display positions, and each display position is configured with a unique position identifier. One or more user behavior records are created according to the user behavior event, and each user behavior record is used to record the relevant information of the user behavior event. For example, if the user behavior data includes exposure behavior and click behavior, the user behavior record can simultaneously include an exposure cumulative count field and a click cumulative count field. Or, the user behavior record can only include the exposure cumulative count field or the click cumulative count field, that is, two user behavior records are generated simultaneously.

[0046] Each time the user behavior data is monitored and updated, it will trigger secondary deduplication of the recommended list based on the pre-acquired deduplication configuration file and the user behavior data to obtain a deduplication result. Before reporting the user behavior data to the server, it can be monitored that the user behavior data is collected multiple times. Each time the user behavior data is monitored, the recommended list is deduplicated according to the user behavior data monitored each time and the deduplication configuration file. The deduplication result obtained in the last time is the deduplication result.

[0047] The deduplication configuration file can be sent by the server. By dynamically configuring the deduplication configuration file by the server, the R & D labor cost can be saved, and the development iteration efficiency can be improved through the dynamic configuration iteration of the deduplication configuration file.

[0048] The recommended result deduplication method of this application, before reporting the user behavior data to the server, performs secondary deduplication on the recommended list received at the terminal by obtaining the user behavior data, which can avoid the problem that the server cannot perceive the user behavior data in time and cause the recommended result to be repeatedly displayed, effectively reducing the repetition rate of the products displayed at the terminal, and thus can improve the conversion rate of the products.

[0049] Figure 2 Fig. 200 shows an exemplary flowchart of the recommended result deduplication method according to some other embodiments of this application, where steps S201 - S204 are a specific implementation of the foregoing step S103. Therefore, the Figure 1 related features described above can be similarly applied here. Please refer to Figure 2 , the method may include:

[0050] In step S201, read the session cache record and the cache validity duration field of the user behavior record included in the session cache record according to the deduplication configuration file.

[0051] In the above steps, data can be intercepted and listened to. In response to the interception, parse the deduplication configuration file to obtain the cache path, cache aging rule, and user behavior rule related to the recommendation scenario. Read the session cache record and the cache validity duration field of the user behavior record included in the session cache record according to the cache path.

[0052] In step S202, obtain a judgment result according to whether the session cache record or the cache validity duration field meets the cache aging rule of the deduplication configuration file.

[0053] In the above steps, determining whether the session cache record or the cache validity duration field meets the cache aging rule of the deduplication configuration file includes: if it is determined that both the session cache record and the cache validity duration field meet the cache aging rule, the judgment result indicates that the cache validity duration field is valid. If it is determined that the session cache record meets the cache aging rule and the cache validity duration field does not meet the cache aging rule, the judgment result indicates that the cache validity duration field is valid. If the session cache record does not meet the cache aging rule, the judgment result indicates that the session cache record has reached the specified number threshold.

[0054] In step S203, update the session cache record according to the judgment result and the user behavior data to obtain the updated session cache record.

[0055] In the above steps, multiple session cache records can be cached in the memory cache in the recommendation scenario. Each session cache record includes at least one user behavior record. Updating the session cache record according to the judgment result and the user behavior data to obtain the updated session cache record includes: when the judgment result indicates that the number of session cache records has not reached the configuration threshold, traverse each session cache record and update the session cache record according to the judgment result of the cache validity duration field and the user behavior data. Or, when the judgment result indicates that the session cache record has reached the configuration threshold, delete the session cache record with the earliest cache time, create a new session cache record according to the user behavior data, and then update the session cache record according to the judgment result of the cache validity duration field and the user behavior data. After obtaining the updated user behavior record, enter the process of deduplicating the recommendation list according to the comparison result between the user behavior record in the updated session cache record and the user behavior rule of the deduplication configuration file to obtain the deduplication result.

[0056] Among them, updating the session cache record according to the judgment result of the cache validity duration field and the user behavior data may include traversing each session cache record. When the judgment result indicates that the cache validity duration field is valid, updating the user behavior record related to the user behavior data according to the user behavior data to obtain the updated user behavior record. Alternatively, when the judgment result indicates that the cache validity duration field is invalid, first clear the user behavior records that do not meet the cache aging rule, and update the user behavior record related to the user behavior data according to the user behavior data.

[0057] In step S204, according to the comparison result between the user behavior record in the updated session cache record and the user behavior rule of the deduplication configuration file, deduplicate the recommendation list to obtain the deduplication result.

[0058] In the above steps, the user behavior data includes, but is not limited to, the user behavior event type, the object identifier of the recommended object corresponding to the user behavior event, the timestamp for collecting the user behavior event, etc.

[0059] In some embodiments, the cache validity duration field of the session cache record and the user behavior record contained in the session cache record are stored in the memory cache.

[0060] In some embodiments, the session count threshold corresponding to the recommendation scenario can be configured according to the deduplication configuration file. The session count threshold can be a natural number. For example, the session count threshold of 3 means that 3 sessions can occur in the recommendation scenario, and each session generates a session cache record in the memory cache. Each session cache record can include the recommendation list received within the session and the user behavior record created or updated according to the user behavior data collected by the data logging. The user behavior record can include, but is not limited to, the recommended object field, the field associated with the recommended object corresponding to the user behavior event. The recommended object field can be the object identifier of the recommended object, or the source identifier and object identifier of the recommended object, or the position identifier and object identifier of the display position corresponding to the recommended object, or a combination of these identifiers. The fields corresponding to the user behavior event include, but are not limited to, one or more combinations of fields such as the exposure count field, the click count field, the purchase count field, the rating field, etc. The user behavior record can also include a cache validity duration field. The cache validity duration field is used to limit the valid time of the user behavior record. The cache validity duration field includes, but is not limited to, one or more combinations of fields such as the exposure validity duration field, the click validity duration field, the purchase validity duration field, the rating validity duration field, etc.

[0061] In some embodiments, the cache valid duration field at least includes a first cache valid duration field and a second cache valid duration field. The first cache valid duration field is related to a first user behavior event, and the second cache valid duration field is related to a second user behavior event. Herein, the first and the second are only used to distinguish and represent the cache valid duration fields.

[0062] If the user behavior record only includes the first cache valid duration field, a judgment result can be obtained according to whether the cache valid duration field meets the cache aging rule of the deduplication profile. It can include that when it is determined that the number of sessions of the session cache record meets the session number threshold of the cache aging rule, and the first cache valid duration field meets the first duration threshold of the cache aging rule, the judgment result indicates that the cache valid duration field is valid. When it is determined that the number of sessions of the session cache record meets the session number threshold of the cache aging rule, and it is determined that the first cache valid duration field does not meet the first duration threshold of the cache aging rule, the judgment result indicates that the cache valid duration field is invalid.

[0063] If the user behavior record only includes the second cache valid duration field, a judgment result can be obtained according to whether the cache valid duration field meets the cache aging rule of the deduplication profile. It can include that when it is determined that the number of sessions of the session cache record meets the session number threshold of the cache aging rule, and the second cache valid duration field meets the second duration threshold of the cache aging rule, the judgment result indicates that the cache valid duration field is valid. When it is determined that the number of sessions of the session cache record meets the session number threshold of the cache aging rule, and the second cache valid duration field does not meet the second duration threshold of the cache aging rule, the judgment result indicates that the cache valid duration field is invalid.

[0064] If the user behavior record includes the first cache valid duration field and the second cache valid duration field, a judgment result can be obtained according to whether the cache valid duration field meets the cache aging rule of the deduplication profile. It can include that when it is determined that the number of sessions of the session cache record meets the session number threshold of the cache aging rule, and the first cache valid duration field meets the first duration threshold of the cache aging rule and the second cache valid duration field meets the second duration threshold of the cache aging rule, the judgment result indicates that the cache valid duration field is valid. When it is determined that the number of sessions of the session cache record meets the session number threshold of the cache aging rule, and the first cache valid duration field does not meet the first duration threshold of the cache aging rule and / or the second cache valid duration field does not meet the second duration threshold of the cache aging rule, the judgment results all indicate that the cache valid duration field is invalid.

[0065] Based on whether the session cache record meets the cache aging rule of the deduplication configuration file, a judgment result can be obtained, which may include that when it is determined that the session cache record is less than or equal to the session count threshold of the cache aging rule, the judgment result indicates that the session cache record has not reached the configuration threshold; or when it is determined that the session cache record is greater than the session count threshold of the cache aging rule, the judgment result indicates that the session cache record has reached the configuration threshold.

[0066] In some embodiments, based on the comparison result between the user behavior record in the updated session cache record and the user behavior rule of the deduplication configuration file, the recommendation list is deduplicated to obtain a deduplication result, which may include that if the recommended object identifier included in the user behavior data is the same as the recommended object identifier included in the user behavior record, then in the user behavior record, the fields corresponding to the user behavior events included in the user behavior data are cumulatively updated according to the user behavior events included in the user behavior data to obtain the updated user behavior record. Or, if the recommended object identifier included in the user behavior data is different from the recommended object identifier of the user behavior record, a new user behavior record is created, and in the new user behavior record, the fields corresponding to the user behavior events included in the user behavior data are cumulatively updated according to the user behavior events included in the user behavior data to obtain the updated user behavior record; if the sequence number assigned to the new user behavior record is greater than the maximum cache quantity specified in the deduplication configuration file, the user behavior record with the earliest storage time is deleted.

[0067] Assume that when the user slides the page corresponding to the recommendation scenario, the products presented in the display position will generate user behavior data as the user slides down, and at the same time, when the user slides down, an information flow request for loading the next page of product data is triggered. The data logging program can monitor the user behavior data and store the user behavior data in memory or at the path set by the data logging program. The user behavior data may include, but is not limited to, the product ID exposed, the exposure time, etc. The user behavior event is exposure. Assume that the user behavior record includes a product ID field, an exposure count field, and an exposure cache validity duration field. If the product ID field included in the user behavior record is the same as the product ID in the user behavior data, it is determined whether the exposure cache validity duration field is valid. If so, the exposure count field in the user behavior record is cumulatively updated according to the exposure event in the user behavior data. If not, the user behavior record is cleared. If the product ID field included in the user behavior record is different from the product ID in the user behavior data, a new user behavior record is created, and the product ID, exposure count, and exposure cache validity duration of the user behavior data are added to the new user behavior record. The exposure cache validity duration can be obtained by summing the exposure timestamp and the exposure cache validity duration threshold. For example, if the exposure moment is 14:20 on December 12, 2024, and the exposure cache validity duration threshold is configured as 1 hour, the exposure cache validity duration can be 13:20 on December 12, 2024.

[0068] When the server receives a new information flow request and does not receive the user behavior data reported by data point embedding, in response to the new information flow request, it pushes a new recommendation list to the terminal. When the terminal receives the new recommendation list, it performs secondary deduplication on the recommendation list according to the obtained user behavior data.

[0069] In some embodiments, the recommendation list includes at least one recommendation sub - list, and the recommendation sub - list corresponds to a display position in the recommendation scenario. Each display position can be described by a unique position identifier.

[0070] In some embodiments, adding a position identifier to the display position can select a suitable addition method according to the specific type of the recommendation scenario. For example, through the parameter object class defined in the deduplication configuration file, the corresponding method can be called to implement the parameter object transfer to complete adding the position identifier to the display position, that is, adding it through the parameter object transfer of the deduplication configuration file. Or the position identifier can be added according to the rules defined in the scenario configuration policy of the deduplication configuration file. Or the position identifier is added in the request header of the recommendation request sent by the terminal to the server. Or the position identifier is added in the response header of the recommendation response sent by the server to the terminal.

[0071] Assume that the recommendation scenario is the recommendation page of a certain application, as Figure 4 shown. There are two display positions in this recommendation page. Among them, one display position is used for scrolling and playing to display products, and one display position is used to display products in response to user operations. The display position can include multiple slots for displaying products. When the user slides the recommendation page, it triggers the update of the products displayed in the recommendation page. Among them, each display position corresponds to a recommendation sub - list. The recommendation sub - lists may come from different recommendation information providers. When the user behavior data is monitored, the user behavior record is updated using the user behavior data to obtain the updated user behavior record. Using the comparison result between the updated user behavior record and the user behavior rules in the deduplication configuration file to deduplicate the recommendation list may include reading the fields corresponding to the user behavior events included in the updated user behavior record; when the fields corresponding to the user behavior events are greater than the cumulative threshold of the user behavior rules, determining the display position corresponding to the updated user behavior record; and deleting the recommended object corresponding to the updated user behavior record in the recommendation sub - list corresponding to the display position.

[0072] For example, when the exposure cache effective duration of the updated user behavior record is in the effective state, the updated user behavior record includes an updated exposure count of 4. Since the exposure count of 4 is greater than the exposure count threshold specified in the deduplication configuration file, assuming it is configured as 3 times, the display position corresponding to the updated user behavior record is determined, and the recommended object corresponding to the updated user behavior record is deleted from the recommended sub - list corresponding to the display position.

[0073] The recommended result deduplication method of the present application dynamically maintains the timeliness of user behavior records through the cache effective duration field, making the deduplication of the recommended list based on user behavior rules valid data, significantly improving the accuracy of the deduplication result. The deduplication configuration file deduplicates the recommended list based on the updated cache and user behavior data, which can effectively reduce the repetition rate of products displayed on the terminal. The combined use of the cache effective duration and the fields corresponding to user behavior events enhances the flexibility of the deduplication configuration strategy, effectively reducing the cost of the deduplication configuration file for docking different recommendation scenarios and saving development costs.

[0074] Figure 3 An exemplary flowchart 300 of the recommended result deduplication method in some further embodiments of the present application is shown. Please refer to Figure 3 , the recommended result deduplication method shown in the embodiments of the present application may include:

[0075] In step S301, receive the recommended list pushed by the server.

[0076] In some embodiments, the recommended list is obtained by the server in response to the information flow request sent by the terminal after being processed by the deduplication policy. The sending time of the information flow request is later than the listening time of the user behavior data. Refer to Figure 4 , taking the user behavior event as the exposure event as an example, the products already displayed on the recommendation page are all exposed products. The products currently exposed on the recommendation page are monitored through the buried - point technology. Assuming the monitored time is 16:20 on December 25, 2024, however, due to the interval delay of the buried - point reporting, the server is not yet aware of this exposure event. The user continues to scroll down the recommendation page, generating an information flow request. The sending time of the information flow request is 16:22 on December 25, 2024. Assuming the buried - point reporting time interval is 5 minutes, the server responds to the information flow request, recalls the recommended list, and sends the response result to the terminal. After receiving the response result, the terminal parses it to obtain the recommended list. In the embodiments of the present application, by obtaining the monitored user behavior data to deduplicate the received recommended list, it is possible to perceive user behavior in real - time and effectively reduce the repeated exposure of products.

[0077] In some embodiments, the recommendation list is associated with the display positions in the recommendation scenario. The received recommendation list pushed by the server includes the one obtained by the server based on the information flow request corresponding to the display position and processed through the deduplication policy. Among them, the information flow request corresponding to the display position is generated based on different triggering mechanisms. Refer to Figure 4 , the recommendation scenario includes display position 1 and display position 2. Display position 1 is used to scroll and play recommended products, and display position 2 is used to synchronously display multiple recommended products. The data loading methods of display position 1 and display position 2 are different, that is, the triggering update mechanisms are different. For display position 1, when the user swipes to the top of the page, an information flow request is triggered. For display position 2, the information flow request may be triggered based on the paging loading method. Due to different triggering mechanisms and different triggering times, and the interfaces for providing data to the two display positions may also be different, there may be duplicate recommended products in the two display positions. Through the embodiments of the present application, when receiving the recommendation list, when the user behavior records in the memory cache are all valid, the historical recommendation list is directly used to deduplicate the newly received recommendation list, which can quickly and effectively remove duplicate recommended products and improve the deduplication processing efficiency.

[0078] In step S302, the session cache record and the cache valid duration field of the user behavior record included in the session cache record are read according to the deduplication configuration file.

[0079] In the above steps, the deduplication configuration file is parsed to obtain the cache path, cache aging rule, and user behavior rule configured for the recommendation scenario. The session cache record is read according to the cache path. The created session cache record may include one or more user behavior records. Each user behavior record may include multiple fields, including but not limited to the recommended object field, the field corresponding to the user behavior event, and the cache valid duration field corresponding to the user behavior event.

[0080] In step S303, when it is determined that the cache valid duration field meets the cache aging rule in the deduplication configuration file, the recommendation list is deduplicated according to the cached historical recommendation list to obtain the deduplicated recommendation list.

[0081] In the above steps, when receiving the recommendation list pushed by the server, if the read cache valid duration fields all meet the cache aging rule of the deduplication configuration file, the recommendation list is deduplicated according to the cached historical recommendation list to obtain the deduplicated recommendation list.

[0082] In step S304, when it is determined that the session cache record meets the cache aging rule in the deduplication configuration file and the cache valid duration field does not meet the cache aging rule in the deduplication configuration file, the recommendation list is not processed, and the user behavior records that do not meet the cache aging rule are cleared.

[0083] In step S305, when it is determined that the session cache record does not meet the cache aging rule in the deduplication configuration file, the session cache record with the earliest cache time is deleted, and a new session cache record is created according to the recommendation list.

[0084] Dynamically maintain the timeliness of user behavior records through the cache valid duration field, so that deduplicating the recommendation list based on user behavior rules is valid data, significantly improving the accuracy of the deduplication result.

[0085] In the embodiments of the present application, the recommendation result deduplication method of the present application can immediately utilize the perceived user behavior data to deduplicate the received recommendation list every time a recommendation list is received, effectively reducing the repetition rate of the products presented by the terminal.

[0086] Corresponding to the foregoing embodiments of the application function implementation method, the present application also provides a device for deduplicating recommendation results and corresponding embodiments.

[0087] Figure 5 The block diagram showing the hardware configuration of the device 500 for deduplicating recommendation objects that can implement the recommendation object deduplication method of the embodiments of the present application. As Figure 5 shown, the device 500 for deduplicating recommendation objects may include a processor 510 and a memory 520. In Figure 5 the device 500 for deduplicating recommendation objects, only the constituent elements related to this embodiment are shown. Therefore, it is obvious to those of ordinary skill in the art that: the device 500 for deduplicating recommendation objects may also include common constituent elements different from Figure 5 the constituent elements shown in. For example: fixed-point arithmetic unit.

[0088] The device 500 for deduplicating recommendation objects may correspond to a computing device with various processing functions. For example, functions for generating neural networks, training or learning neural networks, quantifying floating-point neural networks into fixed-point neural networks, or retraining neural networks. For example, the device 500 for deduplicating recommendation objects may be implemented as various types of devices, such as a personal computer (PC), a server device, a mobile device, etc.

[0089] The processor 510 controls all functions of the device 500 for deduplicating recommendation objects. For example, the processor 510 controls all functions of the device 500 for deduplicating recommendation objects by executing the program stored in the memory 520 of the device 500 for deduplicating recommendation objects. The processor 510 may be implemented by a central processing unit (CPU), a graphics processing unit (GPU), an application processor (AP), an artificial intelligence processor chip (IPU), etc. provided in the device 500 for deduplicating recommendation objects. However, the present application is not limited thereto.

[0090] In some embodiments, the processor 510 may include an input / output (I / O) unit 511 and a computing unit 512. The I / O unit 511 may be used to receive various data, such as a deduplication configuration file sent by a server. Exemplarily, the computing unit 512 may be used to deduplicate the recommendation list received via the I / O unit 511 based on the deduplication configuration file received via the I / O unit 511 and the user behavior data collected during the obtained reporting collection period, to obtain a deduplication result, so that the terminal can reduce the number of times certain products are repeatedly displayed. The deduplication result may be output by the I / O unit 511, for example. The deduplication result may be provided to the memory 520 for other devices (not shown) to read and use, or may be directly provided to other devices for use.

[0091] The memory 520 is hardware for storing various data processed in the device 500 for deduplication of recommendation results. For example, the memory 520 may store the processed data and the data to be processed in the device 500 for deduplication of recommendation results. The memory 520 may store the data sets involved in the process of the deduplication method of recommendation results that have been processed or to be processed by the processor 510, such as the feature configuration file sent by the server, etc. In addition, the memory 520 may store the applications, drivers, etc. to be driven by the device 400 for deduplication of recommendation results. For example, the memory 520 may store various programs related to the deduplication method of recommendation results to be executed by the processor 510. The memory 520 may be DRAM, but this application is not limited thereto. The memory 520 may include at least one of volatile memory or non-volatile memory. The non-volatile memory may include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), flash memory, phase change RAM (PRAM), magnetic RAM (MRAM), resistive RAM (RRAM), ferroelectric RAM (FRAM), etc. The volatile memory may include dynamic RAM (DRAM), static RAM (SRAM), synchronous DRAM (SDRAM), PRAM, MRAM, RRAM, ferroelectric RAM (FeRAM), etc. In an embodiment, the memory 520 may include at least one of a hard disk drive (HDD), a solid state drive (SSD), a high density flash (CF) card, a secure digital (SD) card, a micro secure digital (Micro-SD) card, a mini secure digital (Mini-SD) card, an extreme digital (xD) card, caches, or a memory stick.

[0092] In summary, the specific functions implemented by the memory 520 and the processor 510 of the device 500 for deduplicating recommendation results provided in the embodiments of this specification can be interpreted in contrast to the foregoing embodiments in this specification, and can achieve the technical effects of the foregoing embodiments, which will not be elaborated here.

[0093] In this embodiment, the processor 510 can be implemented in any suitable manner. For example, the processor 510 can take the form of, for example, a microprocessor or a processor and a computer-readable medium that stores computer-readable program code (such as software or firmware) executable by the (micro)processor, logic gates, switches, an application specific integrated circuit (ASIC), a programmable logic controller, and an embedded microcontroller, etc.

[0094] It should also be understood that any module, unit, component, server, computer, terminal, or device that executes instructions as exemplified herein can include or otherwise access a computer-readable medium, such as a storage medium, a computer storage medium, or a data storage device (removable) and / or non-removable), such as a magnetic disk, an optical disk, or a magnetic tape. The computer storage medium can include volatile and non-volatile, removable and non-removable media implemented by any method or technology for storing information, such as computer-readable instructions, data structures, program modules, or other data.

[0095] The foregoing can be better understood in accordance with the following clauses:

[0096] Clause A1. A method for deduplicating recommendation results, which is executed on a terminal, and the method includes: receiving a recommendation list pushed by a server; obtaining monitored user behavior data; before reporting the user behavior data to the server, deduplicating the recommendation list according to a pre-obtained deduplication configuration file and the user behavior data to obtain a deduplication result.

[0097] Clause A2. The method for deduplicating recommendation results according to Clause A1, wherein deduplicating the recommendation list according to a pre-obtained deduplication configuration file and the user behavior data includes: reading a session cache record and a cache validity duration field of a user behavior record included in the session cache record according to the deduplication configuration file; obtaining a judgment result according to whether the session cache record or the cache validity duration field meets the cache aging rule of the deduplication configuration file; updating the session cache record according to the judgment result and the user behavior data to obtain an updated session cache record; and deduplicating the recommendation list according to a comparison result between the user behavior record in the updated session cache record and the user behavior rule of the deduplication configuration file to obtain a deduplication result.

[0098] Clause A3. The recommendation result deduplication method according to Clause A2, wherein there are multiple session caches recorded, and the session caches are updated according to the judgment result and user behavior data to obtain the updated session caches, including: when the judgment result indicates that the number of session caches does not reach the configured threshold, traverse each session cache, and update the session cache according to the judgment result of the cache validity duration field and user behavior data.

[0099] Clause A4. The recommendation result deduplication method according to Clause A2, wherein there are multiple recommendation lists, and the recommendation lists are deduplicated according to the comparison result between the user behavior records in the updated session cache and the user behavior rules in the deduplication configuration file, including: reading the updated user behavior records to obtain the recommended object field and the field corresponding to the user behavior event; if the field corresponding to the user behavior event is greater than the cumulative threshold of the user behavior rules, then search for the target recommendation list in the multiple recommendation lists according to the recommended object field; delete the recommended object related to the recommended object field in the target recommendation list.

[0100] Clause A5. The recommendation result deduplication method according to Clause A1, wherein the recommendation list is obtained by the server in response to the information flow request sent by the terminal and processed through the deduplication policy, and the sending time of the information flow request is later than the monitoring time of the user behavior data.

[0101] Clause A6. The recommendation result deduplication method according to Clause A1, wherein the recommendation list is associated with the display position in the recommendation scenario, and the received recommendation list is pushed by the server, including receiving the recommendation list obtained by the server based on the information flow request corresponding to the display position and processed through the deduplication policy, wherein the information flow request corresponding to the display position is generated based on different data loading methods.

[0102] Clause A7. The recommendation result deduplication method according to Clause A1, wherein the method further includes: when receiving the recommendation list pushed by the server, if the read cache validity duration fields all meet the cache aging rules in the deduplication configuration file, deduplicate the recommendation list according to the cached historical recommendation list to obtain the deduplicated recommendation list.

[0103] Clause A8. The recommendation result deduplication method according to Clause A1, wherein the deduplication configuration file is sent by the server, and the method further includes: registering the recommendation scenario according to the deduplication configuration file; configuring the parameters of the recommendation scenario according to the deduplication configuration file, reading and updating the data corresponding to the recommendation scenario in the disk cache to the memory cache.

[0104] Clause A9. A device for deduplicating recommendation results, comprising: a memory; and at least one processor configured to: receive a recommendation list pushed by a server; obtain monitored user behavior data; and before reporting the user behavior data to the server, deduplicate the recommendation list according to a pre-obtained deduplication configuration file and the user behavior data to obtain a deduplication result.

[0105] Clause A10. A non-transitory machine-readable medium storing program code for deduplicating recommendation results, which, when executed by at least one processor, guides the execution operations of the at least one processor. The program code includes: receiving a recommendation list pushed by a server; obtaining monitored user behavior data; and before reporting the user behavior data to the server, deduplicating the recommendation list according to a pre-obtained deduplication configuration file and the user behavior data to obtain a deduplication result.

[0106] Although multiple embodiments of the present application have been shown and described herein, it will be apparent to those skilled in the art that such embodiments are provided by way of example only. Many changes, variations, and alternative ways may occur to those skilled in the art without departing from the spirit and scope of the present application. It should be understood that various alternatives to the embodiments of the present application described herein may be employed in practicing the present application. The appended claims are intended to define the scope of protection of the present application and thus cover equivalents or alternatives within the scope of these claims.

Claims

1. A method for deduplicating recommendation results, characterized in that This method is executed on a terminal and includes: Receiving a recommended list pushed by a server; Obtaining monitored user behavior data; Before reporting the user behavior data to the server, deduplicating the recommended list according to a pre-obtained deduplication configuration file and the user behavior data to obtain a deduplication result.

2. The method according to claim 1, wherein The deduplicating the recommended list according to a pre-obtained deduplication configuration file and the user behavior data includes: Reading session cache records and the cache validity duration fields of user behavior records included in the session cache records according to the deduplication configuration file; Obtaining a judgment result according to whether the session cache records or the cache validity duration fields meet the cache aging rules of the deduplication configuration file; Updating the session cache records according to the judgment result and the user behavior data to obtain updated session cache records; Deduplicating the recommended list according to the comparison result between the user behavior records in the updated session cache records and the user behavior rules of the deduplication configuration file to obtain a deduplication result.

3. The method according to claim 2, wherein There are multiple session cache records. The updating the session cache records according to the judgment result and the user behavior data to obtain updated session cache records includes: When the judgment result indicates that the number of session cache records does not reach the configuration threshold, traversing each session cache record and updating the session cache record according to the judgment result of the cache validity duration field and the user behavior data.

4. The method according to claim 2, characterized in that, There are multiple recommended lists. The deduplicating the recommended list according to the comparison result between the user behavior records in the updated session cache records and the user behavior rules of the deduplication configuration file includes: Reading the updated user behavior records to obtain a recommended object field and a field corresponding to the user behavior event; If the field corresponding to the user behavior event is greater than the cumulative threshold of the user behavior rules, searching for a target recommended list according to the recommended object field in multiple recommended lists; Deleting the recommended object related to the recommended object field in the target recommended list.

5. The method according to claim 1, wherein The recommended list is obtained by the server in response to an information flow request sent by the terminal and processed through a deduplication policy. The sending time of the information flow request is later than the monitoring time of the user behavior data.

6. The method according to claim 1, wherein The recommended list is associated with a display position in a recommended scenario. The receiving the recommended list pushed by the server includes receiving the recommended list obtained by the server based on the information flow request corresponding to the display position and processed through a deduplication policy, where the information flow request corresponding to the display position is generated based on different triggering mechanisms.

7. The method according to claim 1, wherein This method further includes: when receiving the recommended list pushed by the server, if the read cache validity duration fields all meet the cache aging rules of the deduplication configuration file, deduplicating the recommended list according to the cached historical recommended list to obtain a deduplicated recommended list.

8. The method according to claim 1, characterized in that The deduplication configuration file is sent by the server. This method further includes: Registering a recommended scenario according to the deduplication configuration file; Configure the parameters of the recommended scenario according to the duplicate removal configuration file, and read and update the data corresponding to the recommended scenario in the disk cache to the memory cache.

9. An apparatus for deduplicating recommendation results, characterized in that, It includes: A memory; And At least one processor configured to: Receive the recommended list pushed by the server; Obtain the monitored user behavior data; Before reporting the user behavior data to the server, deduplicate the recommended list according to the pre-obtained duplicate removal configuration file and the user behavior data to obtain a deduplication result.

10. A non-transitory machine-readable medium storing program code for deduplicating recommendation results. When the program code is executed by at least one processor, the code guides the execution operations of at least one processor. The program code includes: Receive the recommended list pushed by the server; Obtain the monitored user behavior data; Before reporting the user behavior data to the server, deduplicate the recommended list according to the pre-obtained duplicate removal configuration file and the user behavior data to obtain a deduplication result.