Data filtering method and device, equipment and storage medium
By identifying the real exposure data and high-quality exposure data of user accounts, we eliminate the content with no conversion intention in the candidate pool and retain the content with conversion intention, solving the problem of waste of high-quality content exposure and improving conversion efficiency and distribution efficiency.
Patent Information
- Application Number
- CN202410254690.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-03-06
- Publication Date
- 2025-09-09
AI Technical Summary
In existing technologies, the definition of high-quality content is complex and it is difficult to effectively identify the materials that users are truly interested in, resulting in wasted exposure of high-quality content and low conversion efficiency in the recommendation system.
By obtaining the real exposure data and high-quality exposure data of the user account, we identify the content that the user has the intention to convert but has not converted, and use it as the data to be filtered. We eliminate the content that does not have the intention to convert from the candidate pool, and retain the content that has the intention to convert for recommendation.
It reduces the exposure waste of high-quality content, improves the conversion efficiency of exposure data and the distribution efficiency of the recommendation module, and ensures that high-quality content has the opportunity to be re-exposed and converted by user accounts.
Smart Images

Figure CN120611082A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of computer technology, and in particular to a data filtering method, apparatus, device, and storage medium. Background Art
[0002] To prevent content from being recommended repeatedly, the recommendation system filters recalled materials. However, the amount of material that users are truly interested in and can convert into content is relatively limited. Therefore, it is necessary to repeatedly recommend high-quality content that has been exposed but not converted, in order to improve the distribution efficiency of the recommendation system.
[0003] In related technologies, for high-quality content in the advertising field, relevant advertisements are usually placed when users browse the website based on their browsing and clicking behaviors on the website, to remind users of products or services they are interested in and promote effective conversion of advertisements.
[0004] However, the definition of high-quality content in the advertising field is relatively simple, that is, the content placed by advertisers, while the definition of high-quality materials in other fields is more complicated. Summary of the Invention
[0005] The present invention provides a data filtering method, apparatus, device, and storage medium. The technical solutions provided by the present invention are as follows:
[0006] According to one aspect of an embodiment of the present application, a data filtering method is provided, the method comprising:
[0007] Obtaining real exposure data of a user account within a historical time period, where the real exposure data refers to the content displayed on the client that logged in with the user account;
[0008] Obtaining high-quality exposure data of the user account within the historical time period, where the high-quality exposure data refers to real exposure data of the user account that has a conversion intention and has not been converted by the user account within the historical time period;
[0009] Based on the real exposure data and the high-quality exposure data, data to be filtered is obtained. The data to be filtered refers to the real exposure data of the user account that does not have the conversion intention. The data to be filtered is used to perform exposure filtering on the content in the candidate pool when recommending content to the user account.
[0010] According to one aspect of an embodiment of the present application, a data filtering device is provided, the device comprising:
[0011] A first acquisition module is configured to acquire real exposure data of a user account within a historical period, where the real exposure data refers to content displayed on a client logged in by the user account;
[0012] A second acquisition module is configured to acquire high-quality exposure data of the user account within the historical time period, wherein the high-quality exposure data refers to real exposure data of the user account that has a conversion intention and has not been converted by the user account within the historical time period;
[0013] A filtering module is used to obtain data to be filtered based on the real exposure data and the high-quality exposure data. The data to be filtered refers to real exposure data in which the user account has no conversion intention. The data to be filtered is used to perform exposure filtering on content in the candidate pool when recommending content to the user account.
[0014] According to one aspect of an embodiment of the present application, a computer device is provided, comprising a processor and a memory, wherein a computer program is stored in the memory, and the computer program is loaded and executed by the processor to implement the above-mentioned data filtering method.
[0015] According to one aspect of an embodiment of the present application, a computer-readable storage medium is provided, in which a computer program is stored. The computer program is loaded and executed by a processor to implement the above-mentioned data filtering method.
[0016] According to one aspect of an embodiment of the present application, a computer program product is provided. The computer program product includes a computer program. The computer program is loaded and executed by a processor to implement the above-mentioned data filtering method.
[0017] The technical solutions provided in the embodiments of the present application can bring the following beneficial effects:
[0018] By identifying the real exposure data in which the user account has the intention to convert but has not been converted by the user account in the historical time period as high-quality exposure data, and obtaining the data to be filtered based on the real exposure data and the high-quality exposure data, the data to be filtered in the candidate pool is exposed and filtered, and the content in the candidate pool in which the user account has no intention to convert is eliminated, and the content that has been displayed on the client but the user account has the intention to convert is retained, so that the candidate pool after filtering contains both the content that has not been displayed on the client and the content that has been displayed on the client but the user account has the intention to convert, thereby reducing the exposure waste of high-quality content, allowing high-quality content to have the opportunity to be re-exposed and converted by the user account, improving the conversion efficiency of the exposure data, and improving the distribution efficiency of the recommendation module. BRIEF DESCRIPTION OF THE DRAWINGS
[0019] Figure 1 This is a schematic diagram of an implementation environment for a solution provided by an embodiment of the present application;
[0020] Figure 2This is a flow chart of a data filtering method provided by an embodiment of the present application;
[0021] Figure 3 is a schematic diagram of a display interface of a video application provided by one embodiment of the present application;
[0022] Figure 4 This is a schematic diagram of a process in which a recommendation module selects exposure data from a candidate pool, provided by an embodiment of the present application;
[0023] Figure 5 This is a schematic diagram of the structure of a Bloom filter provided by an embodiment of the present application;
[0024] Figure 6 This is a schematic diagram of a code for a server creating a new storage unit provided by an embodiment of the present application;
[0025] Figure 7 This is a schematic diagram of a data filtering process provided by an embodiment of the present application;
[0026] Figure 8 is a block diagram of a data filtering device provided by one embodiment of the present application;
[0027] Figure 9 This is a structural block diagram of a computer device provided in one embodiment of the present application. DETAILED DESCRIPTION
[0028] In order to make the objectives, technical solutions and advantages of this application clearer, the implementation methods of this application will be further described in detail below with reference to the accompanying drawings.
[0029] Artificial Intelligence (AI) refers to the theories, methods, techniques, and application systems that use digital computers or machines controlled by digital computers to simulate, extend, and expand human intelligence, to perceive the environment, acquire knowledge, and use that knowledge to achieve optimal results. In other words, AI is a comprehensive technology within computer science that seeks to understand the essence of intelligence and produce new intelligent machines that can respond in a manner similar to human intelligence. AI also studies the design principles and implementation methods of various intelligent machines, enabling them to possess the capabilities of perception, reasoning, and decision-making.
[0030] Artificial intelligence (AI) technology is a comprehensive discipline encompassing a wide range of fields, encompassing both hardware and software technologies. Foundational AI technologies generally include sensors, specialized AI chips, cloud computing, distributed storage, big data processing, pre-trained models, operating / interaction systems, and mechatronics. Pre-trained models, also known as large models or basic models, can be fine-tuned and widely applied to downstream tasks across various AI disciplines. AI software technologies primarily encompass computer vision, speech processing, natural language processing, and machine learning / deep learning.
[0031] With the research and progress of artificial intelligence technology, artificial intelligence technology has been studied and applied in many fields, such as common smart homes, smart wearable devices, virtual assistants, smart speakers, smart marketing, unmanned driving, autonomous driving, drones, digital twins, virtual humans, robots, artificial intelligence generated content (Artificial Intelligence Generated Content, AIGC), conversational interaction, smart medical care, intelligent customer service, game AI, virtual reality (VR), augmented reality (AR), etc. It is believed that with the development of technology, artificial intelligence technology will be applied in more fields and play an increasingly important role.
[0032] The technical solution of this application mainly relates to data filtering technology in artificial intelligence technology, mainly to the filtering technology of exposure data by computer equipment.
[0033] Please refer to Figure 1 , which shows a schematic diagram of an implementation environment of a solution provided by an embodiment of the present application. The implementation environment of the solution can be implemented as a data filtering system. The implementation environment of the solution may include: a terminal device 10 and a server 20.
[0034] There can be one or more terminal devices 10. The terminal device 10 can be an electronic device such as a mobile phone, tablet computer, laptop computer, desktop computer, game console, e-book reader, multimedia player, wearable device, smart TV, or in-vehicle terminal. The terminal device 10 can have an application client installed. The application does not limit the type of application, including but not limited to video applications, news applications, game applications, search applications, e-commerce applications, and the like. The server 20 can provide various types of data to the client running on the terminal device 10, including but not limited to video data, music data, text data, and the like. The content that the terminal device 10 requests from the server 20 depends on the type of application. If the application is a video application, the content that the terminal device 10 requests from the server 20 is video data. If the application is a news application, the content that the terminal device 10 requests from the server 20 is news data. If the application is an e-commerce application, the content that the terminal device 10 requests from the server 20 is product content. The server 20 provides the corresponding type of content to the terminal device based on the request from the terminal device 10. This application will mainly explain the case where the application is a video application. Optionally, a client of the video application is running in the terminal device 10.
[0035] The server 20 is used to provide background services for the client applications installed and running on the terminal device 10. For example, the server 20 can be the background server of the aforementioned application. The server 20 can be a single server, a server cluster consisting of multiple servers, or a cloud computing service center. Optionally, the server 20 provides background services for the client applications of multiple terminal devices 10 simultaneously. The terminal device 10 and the server 20 can communicate with each other via a network.
[0036] The server 20 includes a service module 201, a storage module 202, and a recommendation module 203. The service module 201 is mainly used to filter the content in the candidate pool based on the real exposure data uploaded by the terminal device 10, so that the recommendation module 203 can provide the filtered exposure data to the terminal device 10 again. The recommendation module 203 is used to respond to the data acquisition request of the terminal device 10 and provide the exposure data to the terminal device 10. The storage module 202 is used to store the real exposure data uploaded by the terminal device 10. The storage module 202 can also provide the stored real exposure data to the service module 201 so that the service module 201 can filter the content in the candidate pool based on the real exposure data. Among them, the storage module 202 can store the real exposure data in the form of KV storage (Key-Value storage).
[0037] In the embodiment of the present application, when a user initiates a request to access content in the client application on the terminal device 10, the recommendation module 203 in the server 20 will respond to the request by selecting exposure data from the candidate pool and recommending it to the client. The client will then display each content item in turn based on the exposure data and return the actual exposure data to the server 20 in real time, storing the returned exposure data in the storage module 202. The service module 201 in the server 20 filters the content in the candidate pool based on the actual exposure data in the storage module 202 to obtain a filtered candidate pool. The recommendation module 203 can then select exposure data from the filtered candidate pool and recommend it to the client.
[0038] Please refer to Figure 2 , which shows a flow chart of a data filtering method provided by one embodiment of the present application. Each step of the method may be performed by a computer device, which may be the aforementioned terminal device 10 or server 20. The following description will be based on the example of a server. The method may include at least one of the following steps 210 to 230:
[0039] Step 210: Acquire the real exposure data of the user account in a historical time period. The real exposure data refers to the content displayed on the client that the user account has logged in.
[0040] A user account can be any user account that logs into the client. A historical time period refers to a period of time in the user account's registration history, with the end time of the historical time period being the current time. Optionally, the historical time period can be a period corresponding to the user account's registration history; it can also be a period corresponding to a window time specified by a technician, for example, a window time of one month, three months, six months, etc.; or it can be the entire time period of a user account's multiple client logins, for example, the entire time period corresponding to the user account's most recent 10 client logins.
[0041] When a user is browsing the exposed content of the first screen on a client, the server has often already provided the client with the exposed content of the second and third screens. All content provided by the server to the client can be referred to as background exposure data, while the content displayed on the client logged in by the user account can be referred to as real exposure data. For example, the exposed content of the first, second, and third screens is background exposure data, while the exposed content of the first screen is real exposure data. In this application, the data stored in the storage module is real exposure data.
[0042] Actual exposure data primarily includes data related to exposed content displayed on the client side of the user's logged-in account, as well as data related to further displays of exposed content after it is triggered. Exposure content can refer to all content displayed on the client side. This can include personalized content recommended based on user browsing habits, in addition to the basic content available to all users in the application.
[0043] You can refer to Figure 3 In the video application's display interface, all content displayed on the client includes various modules 302 and large cards 301. Modules 302 are the application's basic configuration modules, which may include a history module, a popular film and television module, and a recent update module. Large cards 301 are personalized content recommended based on the user's browsing habits, and may include currently popular content, content with high overall user ratings, and content with high user account attention. Optionally, the exposed content may include content corresponding to both modules 302 and large cards 301 displayed on the client, or may include only content corresponding to large cards 301.
[0044] like Figure 3 As shown, if the exposed content is in the form of video, the real exposure data includes the video identification data (i.e. module 302 and large card 301) that has been displayed on the client where the user account is logged in, and the video playback data that enters the details playback page after the video prompt information is triggered, including playback time, playback progress, number of episodes played and other data.
[0045] The exposed content displayed on the client can be a collection of content of a certain type or a single content. For example, if the exposed content is in the form of a video, the exposed content can be the identification content of the video collection or the identification content of a single video. For example, module 302 and large card 301 can be the identification content of a single episode in a TV series or the identification content of the entire TV series. Therefore, if you click on the identification content of a single episode in a TV series, you can directly enter the video playback interface corresponding to the single episode identification. If you click on the identification content of the entire TV series, you can enter the playback interface of the first episode of the TV series.
[0046] For example, a GUID (Globally Unique Identifier) may be used as identification information of the client, thereby recording real exposure data corresponding to the GUID.
[0047] Step 220 , obtaining high-quality exposure data of the user account in a historical time period, where the high-quality exposure data refers to real exposure data in which the user account has a conversion intention and has not been converted by the user account in the historical time period.
[0048] The historical time period involved in step 220 may be the same as the historical time period involved in step 210, or a different time period from the historical time period involved in step 210. The window time corresponding to the historical time period involved in step 220 may be greater than or less than the window time corresponding to the historical time period involved in step 210, and this application does not limit this. The historical time period refers to a period of time in the registration history of the user account, and the end time of the historical time period is the current time.
[0049] When a user is browsing exposed content on a client, they may perform additional operations on the displayed exposed content, including click operations, consumption operations, etc. Consumption operations may include account top-up operations for the exposed content, additional payment operations for the exposed content, and ad click operations for the exposed content after clicking on the exposed content. The user account's additional operations on the exposed content can be regarded as the user account's conversion intention for the exposed content, that is, conversion intention refers to the willingness to click and consume the exposed content. High-quality exposure data refers to high-quality content that has been displayed on the client where the user account is logged in and for which the user account has conversion intention, but has not been converted by the user account within the historical time period.
[0050] The acquisition of high-quality exposure data depends on the real exposure data in the time period corresponding to the registration history of the user account, and does not necessarily depend on the real exposure data in the historical time period in step 210.
[0051] The key to obtaining high-quality exposure data lies in identifying whether a user account has a conversion intent for unconverted real exposure data. This can be achieved by using a big data algorithm to predict content within the current user account's real exposure data that may indicate a conversion intent based on statistics of the conversion intent of user accounts logged in on at least one client within the big data. Alternatively, based on content already converted within the user account's real exposure data, the user account's preferred content can be predicted, thereby determining content within the current user account's real exposure data that may indicate a conversion intent. For more details, please refer to the following embodiments.
[0052] The high-quality exposure data is stored in the storage module of the server as real exposure data.
[0053] In step 230, based on the real exposure data and the high-quality exposure data, the data to be filtered is obtained. The data to be filtered refers to the real exposure data of the user account that does not have the conversion intention. The data to be filtered is used to perform exposure filtering on the content in the candidate pool when recommending content to the user account.
[0054] It's important to note that a user account's lack of conversion intent for the data to be filtered means that if the individual content in the data to be filtered were displayed on the client the user account is logged into, the user account would have no conversion intent for it. High-quality content that the user account has a conversion intent for and has converted to within a historical time period can be considered as content for which the user account no longer has a conversion intent. Therefore, the data to be filtered refers to actual exposure data for which the user account has no conversion intent. The data to be filtered can include both high-quality content for which the user account has a conversion intent and has converted to within a historical time period, as well as non-high-quality content for which the user account has no conversion intent.
[0055] Obtaining high-quality exposure data is used to avoid filtering content in the candidate pool, where content with user account conversion intentions is filtered out, allowing high-quality exposure data to have the opportunity to be re-exposed and converted by user accounts.
[0056] The candidate pool is a database of exposure data sent by the server to the client logged into the user account. The exposure data in the candidate pool is generated based on the programmatic nature of the application and can contain hundreds of thousands of exposure data items. For example, a video application can generate various types of video data, including but not limited to humorous video data, sports video data, game video data, film and television video data, and so on.
[0057] In some embodiments, the data to be filtered is removed from the content included in the candidate pool to obtain a filtered candidate pool, and the content provided to the user account is selected from the filtered candidate pool.
[0058] The service module derives the data to be filtered based on the real exposure data and high-quality exposure data. It then removes the data to be filtered from the candidate pool to obtain a filtered candidate pool. In response to the data acquisition request from the terminal device, the recommendation module selects exposure data from the filtered candidate pool and recommends it to the client on the terminal device. The storage module then repeats the aforementioned steps, storing the exposure data already displayed on the client for the next exposure filtering step.
[0059] In some embodiments, when the technical solution of the present application is applied to actual video applications, the number of times and duration of video content playback can be increased, thereby improving the conversion efficiency of video content and the distribution efficiency of the recommendation module. Figure 3 For large card 301, the average playing time per person increased by 0.1590%, and the average playing times per person increased by 0.8635%.
[0060] The process of selecting exposure data from the candidate pool by the recommendation module is as follows: Figure 4As shown, the application is a video application. First, the server will train a user model about the user's browsing preference based on the user's browsing behavior. The user model can help the recommendation module select video content that meets the user's preferences and is more popular in the big data algorithm from the candidate pool. In the first step of the filtering stage, the user model is used to perform exposure filtering on the content in the candidate pool according to the data to be filtered, and a filtered candidate pool is obtained. In the second step of the rough sorting stage, the user model is used to further perform rough sorting and filtering on the thousands of videos obtained in the filtering stage. For example, video content that does not meet the user's preferences can be filtered, such as video types that the user has never browsed, and video types that the user has browsed less frequently. It can also filter video content with lower popularity in the big data algorithm, thereby obtaining hundreds of videos after rough sorting. The third step includes the stages of fine sorting, re-sorting, and mixed sorting. The user model is used to further fine-tune and filter the hundreds of videos after rough sorting, and select video content that is more in line with user preferences or video content with higher popularity in big data algorithms. The screened video content is prioritized according to video type, and the video content is filtered and integrated again according to the sorted video content corresponding to various video types. Finally, dozens of integrated video content are recommended to the client logged in by the user account.
[0061] For example, if a user account tends to browse more humorous video materials, browses a small amount of game video materials, and does not browse sports video materials at all, then the recommendation module selects exposure data from the candidate pool. The first step is to filter out the data to be filtered in the candidate pool. The second step is to filter out sports video content and most game video content, and retain a small amount of game video content. The third step is to further select an appropriate number of humorous video content and game video content based on the user's browsing preferences, and prioritize the selected humorous video content and game video content respectively. According to the sorted video content, the video content is filtered and integrated again, and finally the integrated video data is sent to the client where the user account is logged in.
[0062] For example, if the popularity of videos about episode A is higher and the popularity of videos about episode B is lower in the big data algorithm, the user model will filter the relevant content of episode B, retain the relevant content of episode A, and recommend the relevant content of episode A to the client.
[0063] The technical solution provided by the embodiment of the present application identifies real exposure data in which the user account has the intention to convert and has not been converted by the user account in a historical time period as high-quality exposure data, and obtains data to be filtered based on the real exposure data and the high-quality exposure data. By performing exposure filtering on the data to be filtered in the candidate pool, the content in the candidate pool in which the user account has no intention to convert is eliminated, and the content that has been displayed on the client but in which the user account has the intention to convert is retained, so that the candidate pool after filtering contains both content that has not been displayed on the client and content that has been displayed on the client but in which the user account has the intention to convert, thereby reducing the exposure waste of high-quality content, allowing high-quality content to have the opportunity to be re-exposed and converted by the user account, improving the conversion efficiency of the exposure data, and improving the distribution efficiency of the recommendation module.
[0064] For the high-quality exposure data of the user account in the historical time period in the above step 220, several methods for obtaining it are provided in the embodiment of the present application.
[0065] Method 1: Use a prediction model to predict the user account's conversion intention for each content in the real exposure data to obtain predicted content. The predicted content is used to indicate the real exposure data in which the user account has conversion intention; based on the predicted content, high-quality exposure data is obtained.
[0066] The prediction model is a neural network model based on big data algorithms. It is used to predict the user account's conversion intention for each content in the real exposure data, and obtain the prediction score corresponding to each content. The size of the prediction score is used to indicate the user account's conversion intention for the content.
[0067] A big data algorithm analyzes content displayed on at least one client. Based on the content displayed on the at least one client and the content generated by the user account on the at least one client, the algorithm analyzes the user characteristics of the at least one user account, which indicate the user account's browsing preferences. Based on the user characteristics of the at least one user account and the latest content configured by the application's operations, the algorithm then scores each piece of content in the real-world exposure data, obtaining a predicted score for each piece of content based on the big data algorithm.
[0068] Content that a user account is likely to convert to can be content that matches the user's profile, the latest content from the application's operational configuration, or highly popular content (i.e., content with a high conversion rate). Method 1 is used to obtain updated content and highly popular content from the application's operational configuration.
[0069] By adopting a predictive model to obtain high-quality exposure data, the obtained high-quality exposure data is made into popular content under the big data algorithm, broadening the content types in the high-quality exposure data and providing user accounts with richer and fresher content. This can effectively utilize high-quality content that has been displayed on the client but not converted, thereby improving the utilization rate of high-quality content.
[0070] The process of obtaining the predicted content by using the prediction model may include at least one sub-step in steps 221 to 223 (not shown in the figure).
[0071] Step 221 : Use the prediction model to grade and score each content, and obtain at least one level score corresponding to each content.
[0072] Optionally, the level can be a scoring level established for different scoring dimensions, which can include one of the following: the number of times the content has been converted, the update time of the latest content configured by the application operation, and the content type preferred by the user's characteristics. For example, the scoring level corresponding to the first level is the number of times the content has been converted, the scoring level corresponding to the second level is the update time of the latest content configured by the application operation, and the scoring level corresponding to the third level is the content type preferred by the user's characteristics. The prediction model grades and scores the content according to each scoring dimension, and obtains the score corresponding to each content for each scoring dimension.
[0073] Optionally, the level can also be a screening level, for example, the first level is a coarse sorting screening level, the second level is a fine sorting screening level, the third level is a re-sorting screening level, and so on. Each screening level includes at least one of the scoring dimensions, such as the number of times the content has been converted, the update time of the latest content of the application operation configuration, and the content type preferred by user characteristics. For example, the first level may include one scoring dimension, the second level may include two scoring dimensions, and the third level may include three scoring dimensions. The prediction model scores the content according to the scoring dimensions corresponding to each level, and obtains the score of the content corresponding to each level.
[0074] Step 222: Obtain a predicted score corresponding to each content based on the score of at least one level corresponding to each content.
[0075] The prediction model obtains the prediction score corresponding to each content based on a preset prediction score determination algorithm and according to the score of at least one level corresponding to each content.
[0076] Optionally, the prediction score determination algorithm can be a weighted sum of the scores of at least one level corresponding to the content to obtain the prediction score corresponding to the content. The weight value corresponding to at least one level is related to the scoring dimension corresponding to the level. The higher the priority of the scoring dimension corresponding to the level, the larger the weight value corresponding to the level. This application does not limit this. If the weight corresponding to each level is 1, the prediction score determination algorithm is to directly add the scores of at least one level corresponding to the content to obtain the prediction score corresponding to the content.
[0077] Optionally, the prediction score determination algorithm may also use the score with the highest value among the scores of at least one level corresponding to the content as the prediction score corresponding to the content.
[0078] The prediction score is used to measure the user account's willingness to convert the content. The higher the prediction score, the higher the user account's willingness to convert the content.
[0079] Step 223 : Determine, among the various contents, the contents whose prediction scores are greater than the first threshold as predicted contents.
[0080] This application does not limit the specific value of the first threshold, which can be a pre-set empirical value. For example, the standard threshold can be determined based on a big data algorithm, and the standard threshold can be adjusted according to actual application needs to meet the prediction needs of predicting that the user account has conversion intention.
[0081] By grading and scoring each content in the real exposure data and measuring the conversion intention corresponding to each content, we can select content with conversion intention from the real exposure data, thereby improving the accuracy of the predicted content.
[0082] In some embodiments, the predicted content is determined to be premium exposure data.
[0083] In some embodiments, the predicted content is screened based on the number of exposures and conversion status of the predicted content, and the screened predicted content is determined as high-quality exposure data.
[0084] In some embodiments, each time a piece of content is displayed on a client, a corresponding piece of exposure data is generated. Each piece of exposure data includes information such as the identification information of the exposed content, the scores of the exposed content corresponding to each level, the predicted score of the exposed content, the latest exposure time, and the total number of exposures. For example, the exposure data can be expressed as omgid→<content ID (identity document), first level score, second level score, ..., predicted score for the content, latest exposure time, total number of exposures>.
[0085] Based on the exposure data corresponding to each piece of content, the number of exposures and conversion status of each piece of content is determined, and the predicted content is filtered based on the number of exposures and conversion status of the predicted content.
[0086] For example, if the predicted content has been displayed on the client multiple times but the user account has not converted it, it means that the user account has no conversion intention for the predicted content, and therefore it needs to be identified as non-high-quality content. The non-high-quality content in the predicted content is filtered to obtain filtered predicted content, that is, high-quality content, and the filtered predicted content is determined as high-quality exposure data.
[0087] This application does not limit the exposure threshold of the predicted content, which can be a pre-set empirical value. For example, the standard threshold can be determined based on a big data algorithm, and the standard threshold can be adjusted according to actual application needs to meet the need to identify the screened predicted content as non-high-quality content.
[0088] By combining the number of exposures and conversion status of the predicted content, the predicted content can be screened to avoid retaining non-high-quality content that the user account has no conversion intention in the high-quality exposure data, thereby improving the conversion efficiency of the high-quality exposure data.
[0089] Method 2: Based on the characteristic information of the user account, high-quality exposure data is obtained from the real exposure data. The characteristic information of the user account is used to represent the viewing preference of the user account.
[0090] By obtaining high-quality exposure data based on the characteristic information of the user account, the obtained high-quality exposure data can be made to meet the viewing preferences of the user account, thereby recommending the high-quality exposure data to the client again, thereby improving the conversion efficiency of the high-quality exposure data.
[0091] In some embodiments, the characteristic information of the user account includes at least one of the following: a user tag of the user account, and historical viewing data of the user account.
[0092] User tags are used to indicate the user account's preferred type. User tags include user account tags and user preference tags. User account tags are generated based on the user account's attribute data. User account attribute data includes at least one of the following: user account registration time, user account login location, user account age, user account job type, etc. In other words, user account tags are generated based on objective data. User preference tags are user tags that are customized by the user account. For example, they may include the user account's preferred diet type, user account's preferred entertainment type, user account's preferred exercise type, etc.
[0093] The historical viewing data of a user account is used to indicate the content that the user account has watched within a historical time period. The historical time period corresponding to the historical viewing data refers to a period of time in the registration history of the user account. The end time of the historical time period is the current time. This application does not limit the specific time length of the historical time period.
[0094] By determining the user tag of the user account and the historical viewing data of the user account as characteristic information of the user account, the viewing preference of the user account can be more accurately represented, thereby improving the accuracy of high-quality exposure data.
[0095] In some embodiments, based on the historical viewing data of the user account, content that has been watched in the second time period and not watched in the third time period is determined as high-quality exposure data, the end time of the second time period and the third time period is the current time, and the start time of the second time period is before the start time of the third time period.
[0096] The second time period is longer than the third time period. For example, content that has been viewed within a week but not viewed in the last three days is determined as high-quality exposure data.
[0097] In some embodiments, based on the user tag of the user account, the real exposure data associated with the user tag is determined as the high-quality exposure data.
[0098] For example, if the user account tag includes the user account's login location, the real exposure data associated with the user account's login location is determined as high-quality exposure data. If the user account's preferred food type in the user preference tag is Cantonese cuisine, the real exposure data associated with Cantonese cuisine is determined as high-quality exposure data.
[0099] In some embodiments, the content type preferred by the user account is determined based on historical viewing data of the user account, and the real exposure data associated with the content type preferred by the user account is determined as high-quality exposure data.
[0100] For example, the content type that the user account prefers can be determined based on the number of views and frequency of viewing of a certain content type in the historical viewing data. For example, if the number of views of actor A in the historical viewing data is large and the viewing frequency is frequent, the real exposure data associated with actor A will be determined as high-quality exposure data.
[0101] By obtaining high-quality exposure data based on the user tags of the user account and the historical viewing data of the user account, the obtained high-quality exposure data can be made consistent with the viewing preferences of the user account, thereby improving the conversion efficiency of the high-quality exposure data.
[0102] Method three uses a prediction model to predict the user account's conversion intention for each content in the real exposure data to obtain predicted content. The predicted content is used to indicate the real exposure data in which the user account has conversion intention; based on the characteristic information of the user account, high-quality exposure data is obtained from the predicted content.
[0103] Method 3 is a combination of Methods 1 and 2. Alternatively, you can filter the predicted content based on its exposure and conversion rate, then extract high-quality exposure data from the filtered predicted content based on user account characteristics.
[0104] It should be noted that for the various methods of obtaining high-quality exposure data of user accounts in historical time periods, this application does not limit the order of merit and priority. You can choose the appropriate method of obtaining high-quality exposure data based on the data filtering requirements in actual application needs.
[0105] For the data to be filtered in the above step 230, several determination methods are provided in the embodiment of the present application.
[0106] Method 1: Content that does not belong to high-quality exposure data in the actual exposure data is determined as data to be filtered.
[0107] The real exposure data includes high-quality content that the user account has the intention to convert and non-high-quality content that the user account does not have the intention to convert. High-quality content includes content that the user account has the intention to convert but has not been converted by the user account in the historical time period, and content that the user account has the intention to convert and has been converted by the user account in the historical time period. High-quality exposure data refers to high-quality content that the user account has the intention to convert and has not been converted by the user account in the historical time period. Therefore, the data to be filtered includes high-quality content that the user account has the intention to convert and has been converted by the user account in the historical time period, as well as non-high-quality content that the user account does not have the intention to convert. Among them, since the high-quality content in the data to be filtered has been converted by the user account in the historical time period, combined with the conversion of each content, the high-quality content converted by the user account in the historical time period can be determined as the user account no longer has the intention to convert it.
[0108] By filtering out non-high-quality content in real exposure data and retaining high-quality content in the real exposure data, we can reduce the exposure waste of high-quality content, give high-quality content the opportunity to be re-exposed and converted by user accounts, and improve the utilization rate of high-quality content.
[0109] Method 2: Update the high-quality exposure data of the user account in the historical time period every fourth time period; obtain the real exposure data of the user account in the first time period, where the end time of the first time period is the current time; determine the data to be filtered based on the first time period and the time interval between the update time of the high-quality exposure data and the current time.
[0110] The fourth time period is shorter than the first time period. This application does not limit the fourth and first time periods. For example, the fourth time period is one day, and the first time period is one hour. The high-quality exposure data of the user account within the historical time period is updated at a fixed time each day, and the real exposure data of the user account within the most recent hour is obtained.
[0111] To prevent multiple exposures of real exposure data within the first time period, the first time period is set so that real exposure data within the first time period will not be recommended to the client again within the first time period. For example, if premium content X is displayed on the client at a certain moment, then regardless of whether premium content X is converted, for frequency control purposes, premium content X should not be recommended to the client again within a short period of time. However, since premium content X is considered premium exposure data, it will not be filtered out and may continue to be recommended. Therefore, it is necessary to set a window time (first time period) when premium content X belongs to the real exposure data within the first time period, and filter the real exposure data within the first time period.
[0112] However, if the time interval between the exposure time of premium content X and the current time exceeds the duration of the first time period, premium content X is no longer considered actual exposure data within the first time period, but it is considered premium exposure data, so premium content X may still be recommended. Since premium exposure data is updated regularly, premium content X may or may not be considered premium exposure data in the next update. Therefore, if the time interval between the update time of premium exposure data and the current time exceeds the duration of the first time period, no exception will be set for the premium exposure data, meaning that the premium exposure data will still be filtered.
[0113] In some embodiments, what is obtained in method 2 is the background exposure data of the user account in the first time period. The explanation of the background exposure data can refer to the above embodiments.
[0114] By regularly updating high-quality exposure data within the historical time period and setting a window time (the first time period) for the actual exposure data, we can avoid repeated exposure of high-quality content in a short period of time, which affects the user experience and also reduces the conversion efficiency of high-quality content.
[0115] In some embodiments, if the time interval between the update time of the high-quality exposure data and the current time is less than or equal to the time length of the first time period, the content in the real exposure data that does not belong to the high-quality exposure data and the real exposure data within the first time period are determined as data to be filtered.
[0116] For example, the fourth time period is one day, and the first time period is one hour. If the update time of the high-quality exposure data is 0 o'clock, the high-quality content X is displayed on the client at 2 o'clock, and the current time is 3 o'clock, i.e., before 3 o'clock, then the content in the real exposure data that does not belong to the high-quality exposure data and the real exposure data in the first time period are determined as data to be filtered, so as to prevent the high-quality content in the first time period from being exposed again in a short period of time.
[0117] In some embodiments, if the time interval between the update time of the high-quality exposure data and the current time is greater than the length of the first time period, the real exposure data is determined as the data to be filtered.
[0118] For example, the fourth time period is one day, and the first time period is one hour. If the update time of the high-quality exposure data is 0 o'clock, the high-quality content X is displayed on the client at 2 o'clock, and the current time is after 3 o'clock, then the real exposure data is determined as the data to be filtered, and the high-quality exposure data is temporarily not exposed.
[0119] In some embodiments, if the background exposure data of the user account within the first time period is obtained in method 2, the real exposure data within the historical time period or the background exposure data within the first time period is determined as the data to be filtered.
[0120] By filtering the real exposure data in the first time period when the time interval between the update time of the high-quality exposure data and the current time is less than or equal to the time length of the first time period, and filtering the high-quality exposure data when the time interval between the update time of the high-quality exposure data and the current time is greater than the time length of the first time period, it is possible to avoid the high-quality content in the first time period from being exposed again in a short time, thereby improving the user experience and the conversion efficiency of the exposure data.
[0121] Acquiring the actual exposure data of the user account in the first time period may include at least one sub-step in steps 231 to 233 (not shown in the figure).
[0122] Step 231 : Acquire exposure time periods corresponding to at least one storage unit for storing real exposure data. The exposure time periods refer to exposure time periods of the real exposure data stored in the storage units.
[0123] The capacity of each storage unit can be the same or different. Optionally, the capacity of a newly created storage unit can be the same as or greater than that of an existing storage unit. The capacity of a storage unit here refers to the amount of exposure data that can be stored, for example, the amount of video content that can be stored. Each storage unit stores at least one item of real exposure data and can store identification information corresponding to each item of real exposure data, such as link information for each item of real exposure data. The identification information corresponding to each item of real exposure data can be stored in the storage unit in plain text or in the form of a hash function.
[0124] In some embodiments, the capacity of storage units can be configured using a linear adaptive growth schedule. For example, if the capacity of the first storage unit is M, then when the first storage unit is full, the capacity of the newly created second storage unit is 2M, and the capacity of the newly created i-th storage unit is i*M, where i and M are positive integers. For example, if the capacity of storage unit 1 is 125, the capacity of storage unit 2 is 250, the capacity of storage unit 3 is 375, and so on, to meet the storage needs of real exposure data of different historical time periods. i has a maximum upper limit. When new storage units cannot be created, it means that the capacity of all storage units has reached the maximum limit. At this time, the old storage units can be rolled out to free up storage space. The setting of i is related to the frequency and duration of the user account's access to the client. If the user account accesses the client frequently or each access time is long, the corresponding real exposure data volume is large, and the value of i will also be correspondingly large to facilitate the storage of real exposure data for the historical time period. If the user account accesses the client less frequently or each access time is short, the corresponding real exposure data volume is small, and the value of i will also be correspondingly small. This application does not limit this.
[0125] In some embodiments, the storage unit is a Bloom filter. Each piece of real exposure data is processed through k hash functions to obtain k hash values corresponding to the k hash functions, and the k hash values are stored in the Bloom filter, where k is a positive integer.
[0126] A Bloom filter is a data structure consisting of an m-bit bit array and k independent hash functions. The bit array is initialized to 0. All hash functions hash the input data as evenly as possible, allowing you to detect whether a specific element exists in a set. To query an element, the element is hashed using k hash functions. The corresponding bit values of the k hash functions are then checked. If any bit is 0, the element is not in the set. If all bits are 1, the element is in the set. m and k are positive integers.
[0127] You can refer to Figure 5 In the structural diagram of the Bloom filter shown in the figure, m is 15 and k is 3. The data structure of storage unit 1 (Bloom filter 1) is 101010101010101. The hash values of element a generated by hash functions k1, k2, and k3 are 1, 1, and 1, respectively. If all bits are 1, it means that element a is in storage unit 1. The hash values of element b generated by hash functions k1, k2, and k3 are 1, 0, and 1, respectively. If there is one bit that is 0, it means that element b is not in storage unit 1.
[0128] Each storage unit corresponds to a Bloom filter, and the storage capacity of each Bloom filter refers to the linear adaptive growth arrangement scheme described above. If each storage unit is a Bloom filter, the storage unit uses a hash function to map the real exposure data into a large bitmap. The bit value at the corresponding position of each real exposure data item is 0 or 1, which can greatly reduce the storage space required for real exposure data within the historical time period. Taking video data storage as an example, a single video source is approximately 30 bytes. Storing 10,000 video sources requires 300KB of storage space. However, using a Bloom filter for storage only requires 8-12KB of storage space, significantly reducing storage space.
[0129] Optionally, the storage unit is not limited to the scalable Bloom filter, and may be other storage units that can balance the execution time of the server and the storage rate of the storage unit, for example, it may also be a cuckoo filter.
[0130] The exposure period refers to the time period during which the storage unit writes the real exposure data. Specifically, when the first storage unit is created or a new storage unit is created, the real exposure data will be written to the storage unit. When the capacity of a storage unit is full, a new storage unit will be created. The exposure period corresponding to the storage unit refers to the time period from the creation time of the storage unit to the time when the storage unit is full. It can also be understood as the time period from the creation time of the storage unit to the creation time of the next storage unit, or it can refer to the overall time period for writing all the real exposure data to the storage unit.
[0131] The code diagram of the server creating a new storage unit can be referred to Figure 6 As shown, when a new storage unit is created, the creation time of the storage unit (i.e. Figure 6 The current time in ), and the exposure time of each real exposure data written into the storage unit (i.e. Figure 6 The content time in the storage unit is obtained, so that the exposure period corresponding to at least one storage unit can be obtained according to the creation time of each storage unit.
[0132] By obtaining the exposure time periods corresponding to the respective storage units, the actual exposure data within the first time period can be determined based on the relationship between the exposure time periods corresponding to the respective storage units and the first time period, so that the service module of the server can obtain the actual exposure data within the first time period from the actual exposure data within the historical time period.
[0133] Step 232 : determining the state of each storage unit according to the first time period and the exposure period corresponding to each storage unit, where the state is either a valid state or an invalid state.
[0134] In some embodiments, the state corresponding to the storage unit whose exposure period overlaps with the first time period is determined to be a valid state; and the state corresponding to the storage unit whose exposure period does not overlap with the first time period is determined to be an invalid state.
[0135] For example, if the current time is 12 o'clock, the first time period is a period of time before the current time, which can be assumed to be 1 hour, that is, the first time period is from 11 o'clock to 12 o'clock. Then, when the exposure period of the storage unit overlaps with the first time period, that is, the end time of the exposure period of the storage unit is between 11 o'clock and 12 o'clock, for example, the end time of the exposure period can be 12 o'clock, then the exposure period of the storage unit can be the time period from 11 o'clock to 12 o'clock, or the end time of the exposure period can be 11:30, then the exposure period of the storage unit can also be the time period from 10 o'clock to 11:30, the state corresponding to the storage unit that overlaps with the first time period can be determined as a valid state. When the exposure period of the storage unit does not overlap with the first time period, that is, the end time of the exposure period of the storage unit is before 11 o'clock, for example, the exposure period of the storage unit can be the time period from 10 o'clock to 11 o'clock, or the time period from 9 o'clock to 10:50, the state corresponding to the storage unit that overlaps with the first time period can be determined as an invalid state.
[0136] The number of storage units in the effective state may be one or more. The number of storage units in the effective state may be obtained according to whether the exposure period of each storage unit overlaps with the first time period.
[0137] Step 233 : Obtain the real exposure data in the first time period according to the real exposure data in the storage unit in the valid state.
[0138] In some embodiments, the actual exposure data in the storage unit in a valid state is determined as the actual exposure data in the first time period.
[0139] Alternatively, all actual exposure data stored in valid storage units can be directly determined as the actual exposure data for the first time period. This means that all actual exposure data in storage units whose exposure periods overlap with the first time period can be determined as the actual exposure data for the first time period. For example, if the first time period is from 11:00 to 12:00, then all actual exposure data in storage units whose exposure periods end between 11:00 and 12:00 can be determined as the actual exposure data for the first time period.
[0140] In some embodiments, the exposure time of each content in the real exposure data in the storage unit in a valid state is obtained, and the content in the real exposure data in the storage unit in a valid state whose exposure time is within the first time period is determined as the real exposure data within the first time period, and the exposure time is used to indicate the time when the content is written to the storage unit.
[0141] Optionally, after determining the states corresponding to the respective storage units, the exposure time of each real exposure data stored in the storage unit in the valid state can be obtained for the storage unit in the valid state (e.g. Figure 6 The exposure time of each item of real exposure data here may refer to the time when the recommendation module displays the data on the client, or may refer to the time when the recommendation module writes the data into the storage unit of the storage module. Furthermore, based on the exposure time of each item of real exposure data, real exposure data with an exposure time within the first time period can be accurately selected from the real exposure data stored in the valid storage unit, and the real exposure data with an exposure time within the first time period can be determined as the real exposure data for the first time period.
[0142] For example, if the first time period is from 11:00 to 12:00, the real exposure data in the storage unit with an exposure time between 11:00 and 12:00 can be determined as the real exposure data for the first time period. In other words, if some of the real exposure data stored in the valid storage unit is within the first time period and some is before the first time period, the real exposure data before the first time period can be discarded, and the real exposure data within the first time period can be determined as the real exposure data for the first time period.
[0143] By acquiring the exposure time of each item of real exposure data stored in the storage unit in a valid state as described above, the content in the storage unit whose exposure time is within the first time period can be accurately determined as the real exposure data within the first time period, thereby avoiding incorporating content that has not been truly exposed within the first time period into the real exposure data within the first time period, causing erroneous exclusion, thereby avoiding the server recommending duplicate high-quality content to the user account while minimizing the waste of exposure data as much as possible.
[0144] The method for obtaining the real exposure data within the historical time period can refer to the above embodiment and will not be described in detail here.
[0145] Figure 7A schematic diagram of the data filtering process is shown, in which real exposure data is stored in a Bloom filter. In response to a data acquisition request from a terminal device, the recommendation module selects exposure data from the candidate pool and recommends it to the client on the terminal device. Based on the content displayed on the client, the storage module stores real exposure data from a historical time period in Bloom filter A and real exposure data from a first time period in Bloom filter C. The server uses a predictive model or user account feature information to obtain real exposure data from user accounts that have conversion intentions and have not been converted by the user account in a historical time period, i.e., high-quality exposure data. The server stores this high-quality exposure data from the historical time period in Bloom filter B and updates it regularly. The service module obtains the data to be filtered based on the real exposure data and high-quality exposure data, and filters the content in the candidate pool based on the data to be filtered. The recommendation module repeats the aforementioned steps to continue providing exposure data to the terminal device.
[0146] If the time interval between the update time of the high-quality exposure data and the current time is less than or equal to the length of the first time period, the union of the content that hits Bloom filter A but not Bloom filter B, or the content that hits Bloom filter C, is determined as the data to be filtered. If the time interval between the update time of the high-quality exposure data and the current time is greater than the length of the first time period, the union of the content that hits Bloom filter A or Bloom filter C is determined as the data to be filtered.
[0147] It should be noted that for the various methods for determining the data to be filtered mentioned above, this application does not limit the order of merit and priority, and the method for determining the data to be filtered can be selected according to the data filtering requirements in actual application needs.
[0148] The following are device embodiments of the present application, which can be used to implement the method embodiments of the present application. For details not disclosed in the device embodiments of the present application, please refer to the method embodiments of the present application.
[0149] Please refer to Figure 8 , which shows a block diagram of a data filtering device provided by an embodiment of the present application. The device has the function of implementing the above-mentioned data filtering method, and the function can be implemented by hardware or by hardware executing corresponding software. Figure 8 As shown, the device 800 may include: a first acquisition module 810 , a second acquisition module 820 and a filtering module 830 .
[0150] The first acquisition module 810 is used to obtain the real exposure data of the user account in a historical time period, where the real exposure data refers to the content that has been displayed on the client that the user account has logged in.
[0151] The second acquisition module 820 is used to obtain high-quality exposure data of the user account in the historical time period, where the high-quality exposure data refers to real exposure data in which the user account has conversion intention and has not been converted by the user account in the historical time period.
[0152] The filtering module 830 is used to obtain the data to be filtered based on the real exposure data and the high-quality exposure data. The data to be filtered refers to the real exposure data in which the user account has no conversion intention. The data to be filtered is used to perform exposure filtering on the content in the candidate pool when recommending content to the user account.
[0153] In some embodiments, the second acquisition module 820 includes:
[0154] The prediction unit is used to use a prediction model to predict the conversion intention of the user account for each content in the real exposure data to obtain predicted content, where the predicted content is used to indicate the real exposure data of the user account with conversion intention.
[0155] The first acquisition unit is configured to obtain the high-quality exposure data according to the predicted content.
[0156] In some embodiments, the prediction unit is configured to:
[0157] Using the prediction model to grade and score each content to obtain at least one level score corresponding to each content, the prediction model is a neural network model based on a big data algorithm, and the big data algorithm is an algorithm for analyzing content displayed on at least one client;
[0158] Obtaining predicted scores corresponding to the respective contents according to the scores of at least one level corresponding to the respective contents;
[0159] Among the various contents, the content whose prediction score is greater than a first threshold is determined as the predicted content.
[0160] In some embodiments, the first acquiring unit is configured to:
[0161] determining the predicted content as the high-quality exposure data;
[0162] or,
[0163] The predicted content is screened according to the number of exposures and conversion status of the predicted content, and the screened predicted content is determined as the high-quality exposure data.
[0164] In some embodiments, the second acquisition module 820 further includes:
[0165] The second acquisition unit is configured to acquire the high-quality exposure data from the real exposure data based on characteristic information of the user account, where the characteristic information of the user account is used to represent the viewing preference of the user account.
[0166] In some embodiments, the characteristic information of the user account includes at least one of the following: a user tag of the user account, and historical viewing data of the user account.
[0167] In some embodiments, the second acquiring unit is configured to:
[0168] Determining, based on the historical viewing data of the user account, content that has been viewed in a second time period and not viewed in a third time period as the high-quality exposure data, where the end times of the second time period and the third time period are the current time, and the start time of the second time period is before the start time of the third time period;
[0169] or,
[0170] According to the user tag of the user account, the real exposure data associated with the user tag is determined as the high-quality exposure data.
[0171] In some embodiments, the filtering module 830 includes:
[0172] The first filtering unit is configured to determine the content of the real exposure data that does not belong to the high-quality exposure data as the data to be filtered.
[0173] In some embodiments, the filtering module 830 includes:
[0174] The data updating unit is configured to update the high-quality exposure data of the user account in the historical time period every fourth time period.
[0175] The third acquisition unit is used to obtain the real exposure data of the user account in a first time period, where the end time of the first time period is the current time.
[0176] The second filtering unit is configured to determine the data to be filtered according to the first time period and the time interval between the update time of the high-quality exposure data and the current time.
[0177] In some embodiments, the second filtering unit is used to:
[0178] If the time interval between the update time of the high-quality exposure data and the current time is less than or equal to the time length of the first time period, determining the content of the real exposure data that does not belong to the high-quality exposure data and the real exposure data within the first time period as the data to be filtered;
[0179] If the time interval between the update time of the high-quality exposure data and the current time is greater than the length of the first time period, the real exposure data is determined as the data to be filtered.
[0180] In some embodiments, the third acquiring unit is configured to:
[0181] Acquire an exposure period corresponding to at least one storage unit for storing the real exposure data, where the exposure period refers to an exposure period of the real exposure data stored in the storage unit;
[0182] Determining a state corresponding to each of the storage units according to the first time period and the exposure period corresponding to each of the storage units, wherein the state is a valid state or an invalid state;
[0183] The real exposure data in the first time period is obtained according to the real exposure data in the storage unit in the valid state.
[0184] In some embodiments, the third acquiring unit is configured to:
[0185] determining a state corresponding to a storage unit in which the exposure period overlaps with the first time period as the valid state;
[0186] The state corresponding to the storage unit whose exposure period does not overlap with the first time period is determined as the invalid state.
[0187] In some embodiments, the third acquiring unit is configured to:
[0188] determining the real exposure data in the storage unit in the valid state as the real exposure data in the first time period;
[0189] or,
[0190] Obtain exposure time of each content in the real exposure data in the storage unit in the valid state, and determine the content in the real exposure data in the valid state whose exposure time is within the first time period as the real exposure data within the first time period, and the exposure time is used to indicate the time when the content is written to the storage unit.
[0191] In some embodiments, the storage unit is a Bloom filter; each piece of the real exposure data is processed through k hash functions to obtain k hash values corresponding to the k hash functions respectively, and the k hash values are stored in the Bloom filter, where k is a positive integer.
[0192] The technical solution provided by the embodiment of the present application identifies real exposure data in which the user account has the intention to convert and has not been converted by the user account in a historical time period as high-quality exposure data, and obtains data to be filtered based on the real exposure data and the high-quality exposure data. By performing exposure filtering on the data to be filtered in the candidate pool, the content in the candidate pool in which the user account has no intention to convert is eliminated, and the content that has been displayed on the client but in which the user account has the intention to convert is retained, so that the candidate pool after filtering contains both content that has not been displayed on the client and content that has been displayed on the client but in which the user account has the intention to convert, thereby reducing the exposure waste of high-quality content, allowing high-quality content to have the opportunity to be re-exposed and converted by the user account, improving the conversion efficiency of the exposure data, and improving the distribution efficiency of the recommendation module.
[0193] It should be noted that the apparatus provided in the above embodiments, when implementing its functions, is only illustrated by the division of the above functional modules. In actual applications, the above functions can be assigned to different functional modules as needed, that is, the content structure of the device can be divided into different functional modules to complete all or part of the functions described above. In addition, the apparatus and method embodiments provided in the above embodiments are based on the same concept. The specific implementation process is detailed in the method embodiment and will not be repeated here.
[0194] Please refer to Figure 9 , which shows a block diagram of a computer device 900 provided in one embodiment of the present application. The computer device 900 can be any electronic device with data calculation, processing and storage functions, for example, Figure 1 The terminal device 10 or the server 20 shown. The computer device 900 can be used to implement the data filtering method provided in the above embodiment.
[0195] Typically, the computer device 900 includes a processor 901 and a memory 902 .
[0196] The processor 901 may include one or more processing cores, such as a 4-core processor, an 8-core processor, and the like. The processor 901 may be implemented in at least one hardware form of DSP (Digital Signal Processing), FPGA (Field Programmable Gate Array), or PLA (Programmable Logic Array). The processor 901 may also include a main processor and a coprocessor. The main processor is a processor for processing data in an awake state, also known as a CPU (Central Processing Unit); the coprocessor is a low-power processor for processing data in a standby state. In some embodiments, the processor 901 may be integrated with a GPU (Graphics Processing Unit), which is responsible for rendering and drawing the content to be displayed on the display screen. In some embodiments, the processor 901 may also include an AI processor for processing computing operations related to machine learning.
[0197] The memory 902 may include one or more computer-readable storage media, which may be non-transitory. The memory 902 may also include high-speed random access memory and non-volatile memory, such as one or more magnetic disk storage devices or flash memory storage devices. In some embodiments, the non-transitory computer-readable storage media in the memory 902 is used to store a computer program, which is configured to be executed by one or more processors to implement the above-described data filtering method.
[0198] Those skilled in the art will understand that Figure 9 The structure shown in the figure does not constitute a limitation on the computer device 900, and the computer device 900 may include more or fewer components than shown in the figure, or combine some components, or adopt a different component arrangement.
[0199] In an exemplary embodiment, a computer-readable storage medium is also provided, storing a computer program that, when executed by a processor of a computer device, implements the aforementioned data filtering method. Optionally, the computer-readable storage medium may be a ROM (Read-Only Memory), a RAM (Random Access Memory), a CD-ROM (Compact Disc Read-Only Memory), a magnetic tape, a floppy disk, an optical data storage device, or the like.
[0200] In an exemplary embodiment, a computer program product is further provided, the computer program product including a computer program stored in a computer-readable storage medium. A processor of a computer device reads the computer program from the computer-readable storage medium and executes the computer program, so that the computer device performs the above-mentioned data filtering method.
[0201] It should be noted that this application can display a prompt interface, pop-up window or output voice prompt information before collecting the user's relevant data and during the process of collecting the user's relevant data. The prompt interface, pop-up window or voice prompt information is used to remind the user that its relevant data is currently being collected, so that this application only starts to execute the relevant steps of obtaining the user's relevant data after obtaining the user's confirmation operation on the prompt interface or pop-up window. Otherwise (that is, when the user's confirmation operation on the prompt interface or pop-up window is not obtained), the relevant steps of obtaining the user's relevant data are terminated, that is, the user's relevant data is not obtained. In other words, all user data collected by this application (including the real exposure data of the user account) are processed strictly in accordance with the requirements of relevant national laws and regulations. The informed consent or separate consent of the personal information subject is obtained only when the user agrees and authorizes it to be collected, and the subsequent data use and processing behavior is carried out within the scope of authorization of laws and regulations and the personal information subject. The collection, use and processing of relevant user data must comply with the relevant laws, regulations and standards of relevant countries and regions.
[0202] It should be understood that the "multiple" mentioned in this article refers to two or more. "And / or" describes the association relationship of associated objects, indicating that three relationships may exist. For example, A and / or B can represent three situations: A exists alone, A and B exist at the same time, and B exists alone. The character " / " generally indicates that the previous and subsequent associated objects are in an "or" relationship. In addition, the step numbers described in this article only illustrate a possible execution sequence between the steps. In some other embodiments, the above steps may not be executed in the order of the numbers, such as two steps with different numbers are executed at the same time, or two steps with different numbers are executed in the opposite order to the diagram. The embodiments of the present application do not limit this.
[0203] The above description is merely an exemplary embodiment of the present application and is not intended to limit the present application. Any modifications, equivalent substitutions, improvements, etc. made within the spirit and principles of the present application shall be included in the scope of protection of the present application.
Claims
1. A data filtering method, characterized in that: The method comprises: Obtaining real exposure data of a user account within a historical time period, where the real exposure data refers to the content displayed on the client that logged in with the user account; Obtaining high-quality exposure data of the user account within the historical time period, where the high-quality exposure data refers to real exposure data of the user account that has a conversion intention and has not been converted by the user account within the historical time period; Based on the real exposure data and the high-quality exposure data, data to be filtered is obtained. The data to be filtered refers to the real exposure data of the user account that does not have the conversion intention. The data to be filtered is used to perform exposure filtering on the content in the candidate pool when recommending content to the user account.
2. The method according to claim 1, characterized in that The obtaining of high-quality exposure data of the user account within the historical time period includes: Using a prediction model to predict the user account's conversion intention for each content in the real exposure data, to obtain predicted content, the predicted content being used to indicate the real exposure data with which the user account has conversion intention; The high-quality exposure data is obtained according to the predicted content.
3. The method according to claim 2, characterized in that The prediction model is used to predict the user account's conversion intention for each content in the real exposure data to obtain the predicted content, including: Using the prediction model to grade and score each content to obtain at least one level score corresponding to each content, the prediction model is a neural network model based on a big data algorithm, and the big data algorithm is an algorithm for analyzing content displayed on at least one client; Obtaining predicted scores corresponding to the respective contents according to the scores of at least one level corresponding to the respective contents; Among the various contents, the content whose prediction score is greater than a first threshold is determined as the predicted content.
4. The method according to claim 2, characterized in that Obtaining the high-quality exposure data according to the predicted content includes: determining the predicted content as the high-quality exposure data; or, The predicted content is screened according to the number of exposures and conversion status of the predicted content, and the screened predicted content is determined as the high-quality exposure data.
5. The method according to claim 1, wherein The obtaining of high-quality exposure data of the user account within the historical time period includes: The high-quality exposure data is obtained from the real exposure data according to the characteristic information of the user account, where the characteristic information of the user account is used to represent the viewing preference of the user account.
6. The method according to claim 5, characterized in that The characteristic information of the user account includes at least one of the following: a user tag of the user account and historical viewing data of the user account.
7. The method according to claim 6, characterized in that The obtaining the high-quality exposure data from the real exposure data according to the characteristic information of the user account includes: Determining, based on the historical viewing data of the user account, content that has been viewed in a second time period and not viewed in a third time period as the high-quality exposure data, where the end times of the second time period and the third time period are the current time, and the start time of the second time period is before the start time of the third time period; or, According to the user tag of the user account, the real exposure data associated with the user tag is determined as the high-quality exposure data.
8. The method according to claim 1, characterized in that The step of obtaining the data to be filtered based on the real exposure data and the high-quality exposure data includes: The content of the real exposure data that does not belong to the high-quality exposure data is determined as the data to be filtered.
9. The method according to claim 1, characterized in that The step of obtaining the data to be filtered based on the real exposure data and the high-quality exposure data includes: updating the high-quality exposure data of the user account in the historical time period every fourth time period; Acquire real exposure data of the user account within a first time period, where the end time of the first time period is the current time; The data to be filtered is determined according to the first time period and the time interval between the update time of the high-quality exposure data and the current time.
10. The method according to claim 9, characterized in that The determining the data to be filtered based on the first time period and the time interval between the update time of the high-quality exposure data and the current time includes: If the time interval between the update time of the high-quality exposure data and the current time is less than or equal to the time length of the first time period, determining the content of the real exposure data that does not belong to the high-quality exposure data and the real exposure data within the first time period as the data to be filtered; If the time interval between the update time of the high-quality exposure data and the current time is greater than the length of the first time period, the real exposure data is determined as the data to be filtered.
11. The method according to claim 9, characterized in that The obtaining of the real exposure data of the user account in the first time period includes: Acquire an exposure period corresponding to at least one storage unit for storing the real exposure data, where the exposure period refers to an exposure period of the real exposure data stored in the storage unit; Determining a state corresponding to each of the storage units according to the first time period and the exposure period corresponding to each of the storage units, wherein the state is a valid state or an invalid state; The real exposure data in the first time period is obtained according to the real exposure data in the storage unit in the valid state.
12. The method according to claim 11, characterized in that The determining, based on the first time period and the exposure periods corresponding to the respective storage units, the states corresponding to the respective storage units, includes: determining a state corresponding to a storage unit in which the exposure period overlaps with the first time period as the valid state; The state corresponding to the storage unit whose exposure period does not overlap with the first time period is determined as the invalid state.
13. The method according to claim 11, characterized in that The obtaining of the real exposure data in the first time period according to the real exposure data in the storage unit in the valid state includes: determining the real exposure data in the storage unit in the valid state as the real exposure data in the first time period; or, Obtain exposure time of each content in the real exposure data in the storage unit in the valid state, and determine the content in the real exposure data in the valid state whose exposure time is within the first time period as the real exposure data within the first time period, and the exposure time is used to indicate the time when the content is written to the storage unit.
14. The method according to claim 9, characterized in that The storage unit is a Bloom filter; each piece of the real exposure data is processed through k hash functions to obtain k hash values corresponding to the k hash functions respectively, and the k hash values are stored in the Bloom filter, where k is a positive integer.
15. A data filtering device, characterized in that: The device comprises: A first acquisition module is configured to acquire real exposure data of a user account within a historical period, where the real exposure data refers to content displayed on a client logged in by the user account; A second acquisition module is configured to acquire high-quality exposure data of the user account within the historical time period, wherein the high-quality exposure data refers to real exposure data of the user account that has a conversion intention and has not been converted by the user account within the historical time period; A filtering module is used to obtain data to be filtered based on the real exposure data and the high-quality exposure data. The data to be filtered refers to real exposure data in which the user account has no conversion intention. The data to be filtered is used to perform exposure filtering on content in the candidate pool when recommending content to the user account.
16. A computer device, characterized in that: The computer device includes a processor and a memory, wherein a computer program is stored in the memory, and the computer program is loaded and executed by the processor to implement the data filtering method according to any one of claims 1 to 14.
17. A computer-readable storage medium, characterized in that The computer-readable storage medium stores a computer program, which is loaded and executed by a processor to implement the data filtering method according to any one of claims 1 to 14.
18. A computer program product, characterized in that The computer program product comprises a computer program, which is loaded and executed by a processor to implement the data filtering method according to any one of claims 1 to 14.