Data recommendation method and device, equipment and medium
By cached the recall candidate data truncated after the rough placing model and scoring it using the fine placing model, the problems of waste of recall candidate data and loss of recommendation effects in the prior art are solved, and efficient data recommendation effect is achieved.
Patent Information
- Application Number
- CN202510314043.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-03-17
- Publication Date
- 2025-08-08
AI Technical Summary
In the prior art, due to the high complexity of fine-scheduling and the limited computing resources and overall response speed, it is impossible to score all fine-scheduling for a large number of recall results, resulting in waste of recall candidate data and loss of recommendation effects.
By pre-cache the recall candidate data truncated after the rough layout model, and when responding to the data display request, the cached data is calculated as the new candidate data, the fine layout model is used for scoring and cached into the cached data set, and the recommended data matching the user's feature identifier is obtained to display it on the client.
It improves the efficiency and accuracy of data recommendation, meets user data display needs, and improves the computing efficiency and accuracy of the recommendation system.
Smart Images

Figure CN120448585A_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the field of data processing technology, and in particular to a data recommendation method, apparatus, device, and medium. Background Art
[0002] Currently, in the short video recommendation scenario, in order to recommend rich and diverse personalized content to users, multiple recommendation algorithms are usually used to generate multi-channel recalls; the average result of each recall can be as many as hundreds or even thousands, resulting in tens of thousands of recalled candidate data.
[0003] In order to balance performance and effectiveness in recommendation systems, a cascaded architecture of coarse ranking, fine ranking, and re-ranking is generally adopted. Coarse ranking requires screening out thousands of candidate data from tens of thousands of candidate data and feeding them into fine ranking. Since the coarse ranking model structure is simpler than the fine ranking model, its sorting effect is worse than that of fine ranking. Therefore, truncating the coarse ranking results before feeding them into fine ranking causes a certain degree of accuracy loss. However, due to the constraints of the computing resources of the fine ranking service and the overall response speed of the recommendation, it is impossible to perform a complete fine ranking process on all candidate data, resulting in a waste of recalled candidate data and a loss of recommendation effectiveness. Summary of the Invention
[0004] In order to solve the above technical problems or at least partially solve the above technical problems, the present disclosure provides a data recommendation method, device, equipment and medium.
[0005] An embodiment of the present disclosure provides a data recommendation method, which includes: obtaining a user feature identifier in response to a data recommendation request from a client; obtaining recommended data matching the user feature identifier from a cached data set for display on the client; wherein, the recalled data truncated by a coarse ranking model is scored by a fine ranking model and cached in the cached data set.
[0006] Optionally, the method further includes: sorting the candidate data set based on the rough ranking model to obtain a rough ranking result, and obtaining a target data set from the candidate data set based on the rough ranking result and a preset first filtering condition; sorting the target data set based on the fine ranking model to obtain a fine ranking result, and obtaining first recommended data from the target data set based on the fine ranking result and a preset second filtering condition for display on the client.
[0007] Optionally, the method further includes: filtering the cached data set based on historical recommendation data of the client to obtain second recommendation data for display on the client.
[0008] Optionally, the method further includes: determining target recommendation data based on the first recommendation data and the second recommendation data to display on the client.
[0009] Optionally, the method further includes: obtaining a data set to be cached from the candidate data set based on the rough sorting result and the first screening condition; processing the data set to be cached based on the fine sorting model to obtain a scoring result corresponding to each data to be cached, and caching each data to be cached and the scoring result corresponding to each data to be cached.
[0010] Optionally, the method further includes: setting a scoring timestamp corresponding to each of the data to be cached; and caching the scoring timestamp corresponding to each of the data to be cached.
[0011] Optionally, the method further includes: after scoring each data to be cached and before caching, querying whether each data to be cached in the data set to be cached is in the cache data set; when there is cached data matching the data to be cached in the cache data set, obtaining the scoring timestamp corresponding to the cached data, and comparing the scoring timestamp corresponding to the cached data with the current timestamp; when the time difference between the scoring timestamp corresponding to the cached data and the current timestamp is less than or equal to a preset time threshold, deleting the data to be cached that matches the cached data from the cache data set.
[0012] Optionally, the method also includes: obtaining the data length of the cached data set; when the data length is greater than a preset length threshold, comparing the scoring result corresponding to the cached data in the cached data set with the scoring result corresponding to the data to be cached; deleting the data corresponding to the minimum scoring result in the comparison result, and when the comparison result is that the scoring results are the same, comparing the scoring timestamp corresponding to the cached data with the scoring timestamp corresponding to the data to be cached, and deleting the data corresponding to the maximum time difference between the scoring timestamp and the current timestamp.
[0013] Optionally, if no recommendation data matching the user feature identifier can be obtained from the cached data set, the method further includes: obtaining historical request information of the client, and determining the target request time of the client based on the historical request information; obtaining a recalled data set of the client within a preset time range of the target request time, and inputting the recalled data set into a coarse ranking model to obtain a data set to be cached; inputting the refined ranking model based on the data set to be cached for processing to obtain a scoring result corresponding to each data to be cached, and setting a scoring timestamp corresponding to each data to be cached for caching processing.
[0014] Optionally, the method further includes: obtaining the data quantity of the second recommended data; when the data quantity is greater than a preset data volume threshold, sorting the second recommended data according to the scoring results, and deleting the second recommended data based on the sorting results and the data quantity.
[0015] Optionally, the method further includes: when the data quantity is less than the data quantity threshold, determining the current data quantity based on the data quantity and the data quantity threshold; obtaining cached data of the current data quantity from the cached data set and adding it to the second recommended data.
[0016] The disclosed embodiment also provides a data recommendation device, including a response acquisition module for acquiring a user feature identifier in response to a data recommendation request from a client; an acquisition display module for acquiring recommended data matching the user feature identifier from a cached data set for display on the client; wherein the recalled data truncated by the coarse ranking model is scored by the fine ranking model and cached in the cached data set.
[0017] An embodiment of the present disclosure also provides an electronic device, comprising: a processor; a memory for storing instructions executable by the processor; the processor for reading the executable instructions from the memory and executing the instructions to implement the data recommendation method provided in the embodiment of the present disclosure.
[0018] An embodiment of the present disclosure further provides a computer-readable storage medium, wherein the storage medium stores a computer program, and the computer program is used to execute the data recommendation method provided by the embodiment of the present disclosure.
[0019] The embodiments of the present disclosure also provide a computer program product, including a computer program, wherein the computer program is executed by a processor as the data recommendation method provided in the embodiments of the present application.
[0020] The above-mentioned technical solution provided by the embodiment of the present disclosure can solve the technical problem in the prior art that a large number of recall results cannot be fully refined and scored due to the large complexity of refined ranking and the limited computing resources and overall response speed, resulting in waste of recall candidate data and loss of recommendation effect. When responding to a data recommendation request, the recall data truncated by the coarse ranking model is scored by the refined ranking model and cached in the cached data set to obtain the recommended data matching the user feature identifier and display it on the client. While improving the data calculation efficiency, it also increases the calculation scale of refined ranking to the level of coarse ranking, thereby effectively improving the data recommendation accuracy and meeting the user data display needs.
[0021] It should be understood that the contents described in this section are not intended to identify the key or important features of the embodiments of the present disclosure, nor are they intended to limit the scope of the present disclosure. Other features of the present disclosure will become readily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS
[0022] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present disclosure and, together with the description, serve to explain the principles of the present disclosure.
[0023] In order to more clearly illustrate the embodiments of the present disclosure or the technical solutions in the prior art, the following briefly introduces the drawings required for use in the embodiments or the description of the prior art. Obviously, for ordinary technicians in this field, other drawings can be obtained based on these drawings without any creative work.
[0024] Figure 1 A flowchart of a data recommendation method provided in an embodiment of the present disclosure;
[0025] Figure 2 A flowchart of a data recommendation method provided in an embodiment of the present disclosure;
[0026] Figure 3 A schematic diagram of a data recommendation process provided by an embodiment of the present disclosure;
[0027] Figure 4 A schematic diagram of a data recommendation process provided by an embodiment of the present disclosure;
[0028] Figure 5 A schematic diagram of the structure of a data recommendation device provided in an embodiment of the present disclosure;
[0029] Figure 6 A schematic structural diagram of an electronic device provided in an embodiment of the present disclosure. DETAILED DESCRIPTION
[0030] In order to more clearly understand the above-mentioned objectives, features and advantages of the present disclosure, the scheme of the present disclosure will be further described below. It should be noted that the embodiments of the present disclosure and the features therein can be combined with each other in the absence of conflict.
[0031] In the following description, many specific details are set forth to facilitate a full understanding of the present disclosure, but the present disclosure may also be implemented in other ways different from those described herein; it is obvious that the embodiments in the specification are only part of the embodiments of the present disclosure, rather than all of the embodiments.
[0032] In existing data recommendation application scenarios, such as short video recommendation scenarios, in order to recommend rich and diverse personalized content to users, the recalled candidate data reaches tens of thousands. In addition, in order to balance performance and effect, a cascade architecture of coarse sorting, fine sorting, and re-ranking is generally adopted. The fine sorting model is relatively complex. Limited by the computing resources of the fine sorting service and the overall response speed of the recommendation, the recalled candidate data will first be screened by a coarse sorting model with lower complexity, and the sorting results will be truncated by a certain length from high to low according to the score before entering the fine sorting. Since it is impossible to perform complete fine sorting processing on all candidates, not only will the recalled candidate data be wasted, but the recommendation effect will also be damaged.
[0033] In response to the above problems, the disclosed embodiment proposes a data recommendation method, which pre-caches the candidate data of multiple recalls that have been truncated after the rough ranking model within a certain period of time in the past. When responding to a data display request, the cached data is used as the new candidate data to calculate and determine the recommended data to be displayed on the client. This solves the technical problem in the data recommendation scenario that it is impossible to perform fine ranking and scoring on all recall results due to the high complexity of fine ranking and the limited computing resources and overall response speed, and effectively improves the efficiency and accuracy of the recommendation system. The following is a detailed explanation:
[0034] Figure 1 This is a flow chart of a data recommendation method provided by an embodiment of the present disclosure. The method can be applied to electronic devices, such as computers, servers, etc., which are not limited here. Figure 1 As shown, the method mainly includes the following steps S102 to S110:
[0035] Step S102: Responding to the data recommendation request from the client, obtaining a user feature identifier.
[0036] In the embodiments of the present disclosure, the client may be an electronic device such as a mobile phone or a tablet computer; the user may request data recommendations on the client according to actual usage needs, so that data can be recommended to the user; as an example of a scenario, in a short video recommendation scenario, each recommended short video may be displayed in a short video list interface; as an example of another scenario, in an item recommendation scenario, each recommended item may be displayed in an item list interface. The embodiments of the present disclosure do not impose specific restrictions on the data in the data recommendation.
[0037] In an embodiment of the present disclosure, obtaining a data recommendation request from a client includes: obtaining the data recommendation request from the client based on a user triggering a preset data display control on a data page. A data page refers to a page used to display data, and a data display control refers to an anchor point set in the data page for displaying data. The form of the data page is not specifically limited. For example, a triggering operation on a short video playback control on a short video page obtains a short video display request from the client; another example is a triggering operation on an advertisement display control on an advertisement page obtains an advertisement display request from the client.
[0038] In an embodiment of the present disclosure, after receiving a data recommendation request from a client, a user feature identifier is obtained by parsing the data recommendation request; wherein, the user feature identifier includes static feature identifiers such as the user's age and gender, and also includes feature identifiers such as the user's recent video viewing history information and click video history information. The user feature identifier can be determined by the terminal identifier and / or in combination with the user identifier.
[0039] Step S104 , obtaining recommended data matching the user feature identifier from the cached data set for display on the client; wherein, the recalled data truncated by the coarse ranking model is scored by the fine ranking model and cached in the cached data set.
[0040] In an embodiment of the present disclosure, a cached data set corresponding to a user using a client is obtained, and matching can be performed through user feature identifiers (such as user account, user name, etc.) to directly obtain the corresponding cached data set, and each cached data has a scoring result of the recalled data truncated by the coarse ranking model and scored by the fine ranking model; it can be understood that the cached data set refers to the candidate data remaining after the coarse ranking model is screened and filtered during the processing of the data display request in the historical time (excluding the current request time) and scored by the fine ranking model, as well as the data set that is cached after setting the corresponding scoring timestamp.
[0041] In the disclosed embodiment, a coarse ranking model refers to a network model that quickly screens out a small amount of high-quality data from a large amount of candidate data, and provides it to a fine ranking model for further processing and sorting; the accuracy requirement of the coarse ranking model is lower than that of the fine ranking model, but the latency requirement is higher than that of the fine ranking model. The role of the coarse ranking model is to perform preliminary screening and sorting of a large amount of candidate data obtained in the recall stage to reduce the computational burden of the fine ranking model while retaining high-value data as much as possible; the coarse ranking model usually adopts a relatively simple model structure, such as a dual-tower model or a fully linked deep neural network, to ensure computational efficiency.
[0042] In the disclosed embodiment, the fine ranking model is located after the coarse ranking model, and refers to a network model that performs more fine sorting on a small amount of data selected by the coarse ranking model; the fine ranking model usually uses a more complex model structure to achieve higher accuracy; the coarse ranking model processes a large amount of data and usually uses a relatively simple model structure, while the fine ranking model processes a small amount of data and uses a more complex model structure.
[0043] Therefore, when responding to a data recommendation request, recommended data matching the user's feature identifier is obtained from the cached data set for display on the client. This can solve the technical problem in the existing technology that, due to the high complexity of fine ranking and limited computing resources and overall response speed, a large number of recall results cannot be fully fine-ranked and scored, resulting in waste of recall candidate data and loss of recommendation effect. While improving data computing efficiency, it also increases the computing scale of fine ranking to the level of coarse ranking, thereby effectively improving data recommendation accuracy and meeting user data display needs.
[0044] In some embodiments, the data recommendation method may further include: sorting the candidate data set based on a coarse sorting model to obtain a coarse sorting result, and obtaining a target data set from the candidate data set based on the coarse sorting result and a preset first filtering condition; sorting the target data set based on a fine sorting model to obtain a fine sorting result, and obtaining first recommended data from the target data set based on the fine sorting result and a preset second filtering condition for display on the client.
[0045] In the embodiments of the present disclosure, a candidate data set is obtained. It can be understood that different application scenarios obtain different candidate data, which can be short videos, advertisements, and items. Specifically, based on the data display request, user information such as static information such as the user's age and gender, and dynamic information such as the user's recent viewing history, click history, and the like, as well as requested data content such as short videos, items, and other data are obtained; and the candidate data set is obtained from each content source according to a preset plurality of recall algorithms; wherein the candidate data set generally includes multiple candidate data, such as multiple short video data or multiple advertisement data, etc., and the corresponding candidate data set is recalled specifically according to the application scenario.
[0046] Specifically, in the process of displaying data on a data page, the user's triggering operation on the data page can be detected. When the user's click on the data display control is detected, the client's data recommendation request can be received, and the candidate data set can be obtained in response to the client's data recommendation request.
[0047] In the disclosed embodiment, a coarse ranking model such as a tree model, a deep neural model, etc. is pre-set. The coarse ranking model usually has a relatively simple structure, but can be quickly sorted so that the target data set can be quickly obtained from the candidate data set; wherein, the target data set refers to a portion of data in the candidate data set with a relatively high ranking result.
[0048] Specifically, the candidate data set is input into the coarse sorting model, and the coarse sorting model can score each candidate data and sort all the candidate data according to the scoring results to obtain a coarse sorting result, and obtain the target data set from the candidate data set according to the coarse sorting result and the preset first filtering condition; wherein, the first filtering condition can be set according to the application scenario. In the embodiment of the present disclosure, the target data can be randomly obtained from a certain number of candidate data before sorting in the coarse sorting result to obtain the target data set; a certain quantity threshold can also be set, and the candidate data before the quantity threshold is used as the target data according to the coarse sorting result to obtain the target data set.
[0049] Specifically, the candidate data set is input into the coarse ranking model to obtain the coarse ranking results of all candidate data, and then the coarse ranking results are truncated according to the set quantity threshold, and the candidate data of the quantity threshold before sorting are used as the target data to obtain the target data set, and the remaining candidate data are input into the fine ranking model as the data to be cached, and then scored and processed as cached data.
[0050] In the disclosed embodiments, a refined ranking model such as a deep neural model, a sequence model, etc. is pre-set. The refined ranking model is usually more complex in structure than the coarse ranking model, and can sort the target data more accurately; wherein, there are usually multiple first recommended data, and the first recommended data refers to some data in the target data set that are ranked relatively high.
[0051] Specifically, the target data set is input into the refined ranking model, and the refined ranking model can score each target data and sort all the target data according to the scoring results to obtain a refined ranking result, and obtain the first recommended data from the target data set according to the refined ranking result and the preset second filtering condition; wherein, the second filtering condition can be set according to the application scenario. In the embodiment of the present disclosure, the first recommended data can be randomly obtained from a certain number of target data before sorting in the refined ranking result; a certain quantity threshold can also be set, and the target data before the quantity threshold is used as the first recommended data according to the refined ranking result.
[0052] Specifically, the target data set is input into the refined ranking model to obtain refined ranking results of all target data, and then the refined ranking results are truncated according to a set quantity threshold, and the target data within the quantity threshold before sorting is used as the first recommended data.
[0053] In some embodiments, the data recommendation method may further include: filtering the cached data set based on historical recommendation data of the client to obtain second recommendation data.
[0054] In some embodiments, the data recommendation method may further include: determining target recommended data based on the first recommended data and the second recommended data to display on the client.
[0055] In the embodiment of the present disclosure, the cached data in the cached data set may have been displayed on the client. Therefore, it is necessary to obtain the client's historical recommendation data and delete the cached data in the cached data set that is the same as the historical recommendation data to further improve the accuracy of the recommendation.
[0056] Furthermore, the filtered cached data is used as the second recommended data. It can be understood that the cached data has a scoring result scored by the refined ranking model, the second recommended data has a scoring result scored by the refined ranking model, and the aforementioned first recommended data is also a scoring result scored by the refined ranking model. Therefore, the first recommended data and the second recommended data can be sorted according to the scoring results to obtain the sorting results corresponding to all recommended data. A certain number of recommendations can be determined according to the sorting results and certain filtering conditions, such as the number before the sort or the number of client-preferred recommendations, and a certain number of target recommended data before the sort is obtained for data recommendation to be displayed on the client. Among them, the sorting corresponding to the target recommended data can also be recommended from front to back, further improving the efficiency and effect of data recommendation, further meeting the client's data display needs, and improving the user experience.
[0057] In this way, the technical problem in the prior art that a large number of recall results cannot be fully refined and scored due to the large complexity of refined ranking and the limited computing resources and overall response speed, resulting in waste of recall candidate data and loss of recommendation effect is solved. When responding to a data display request, refined ranking is performed on the candidate data truncated by the coarse ranking model, and the cached data is used to determine the first recommended data and the second recommended data determined by the refined ranking model to jointly determine the target recommended data for display on the client. This improves the data calculation efficiency while also increasing the calculation scale of refined ranking to the level of coarse ranking, thereby effectively improving the data recommendation accuracy and meeting user data display needs.
[0058] In some embodiments, the method further includes: obtaining a data set to be cached from a candidate data set based on a rough sorting result and a first screening condition; processing the data set to be cached based on a fine sorting model to obtain a scoring result corresponding to each data to be cached, and caching each data to be cached and the scoring result corresponding to each data to be cached.
[0059] In some embodiments, the method further includes: setting a scoring timestamp corresponding to each data to be cached; and caching the scoring timestamp corresponding to each data to be cached.
[0060] In an embodiment of the present disclosure, a first filtering condition is set in advance, and candidate data that meet the first filtering condition is input as target data into the refined ranking model for processing, and the first recommended data is determined. The candidate data that does not meet the first filtering condition is used as data to be cached, and is further scored by the refined ranking model, and a corresponding scoring timestamp is set. Finally, each data to be cached, the scoring result corresponding to each data to be cached, and the scoring timestamp corresponding to each data to be cached are cached.
[0061] Among them, the first screening condition can be to set a certain quantity threshold, and input the candidate data of the quantity threshold before the rough sorting result is sorted as the target data set into the fine ranking model for processing, and obtain the first recommended data from the target data set; input the remaining candidate data as the data to be cached into the fine ranking model for scoring, and set the corresponding scoring timestamp, and finally cache each data to be cached, the scoring result corresponding to each data to be cached, and the scoring timestamp corresponding to each data to be cached.
[0062] Specifically, the candidate data sets of multiple recalls that are truncated after coarse sorting are cached for quick subsequent calls to reduce repeated calculations; more specifically, the remaining results (data sets to be cached) that are truncated due to low scores in coarse sorting are sent to the message queue by means of message notifications. Based on the received message queue, the data sets to be cached can be obtained and combined with the fine sorting model to be called for scoring and evaluation, and the cached data sets can be updated to generate new recall candidate data; to ensure timeliness, the timestamp of each scoring is recorded for deleting or re-scoring expired data in the cache.
[0063] In some embodiments, after scoring each data to be cached and before caching, query whether each data to be cached in the data set to be cached is in the cache data set; when there is cached data matching the data to be cached in the cache data set, obtain the scoring timestamp corresponding to the cached data, and compare the scoring timestamp corresponding to the cached data with the current timestamp; when the time difference between the scoring timestamp corresponding to the cached data and the current timestamp is less than or equal to a preset time threshold, delete the data to be cached that matches the cached data from the cache data set.
[0064] Specifically, after obtaining the message that there is a data set to be cached, it is queried whether the data to be cached is already in the cache data set, that is, whether the data to be cached and the cached data are the same. If there is cached data matching the data to be cached in the cache data set, the scoring timestamp corresponding to the cached data is obtained, and the scoring timestamp corresponding to the cached data is compared with the current timestamp to obtain the time difference. When the time difference between the scoring timestamp corresponding to the cached data and the current timestamp is less than or equal to the preset time threshold, the data to be cached that matches the cached data is deleted from the cache data set, which means that the time when the cached data was last scored by the fine ranking model is relatively long from the current time, and it needs to be scored again. Therefore, the cached data in the cache data set is deleted, and the corresponding data to be cached is input into the fine ranking model for scoring to obtain the scoring result corresponding to the data to be cached, and the scoring timestamp is cached in the cache data set; wherein, the time difference can be set according to actual application needs, such as ten minutes.
[0065] It should be noted that if there is cached data in the cached data set that matches the data to be cached, the data to be cached is directly input into the refined ranking model for scoring, and the scoring result corresponding to the data to be cached is obtained, and the scoring timestamp is cached in the cached data set.
[0066] In some embodiments, the data length of the cached data set is obtained, and when the data length is greater than a preset length threshold, the scoring result corresponding to the cached data in the cached data set is compared with the scoring result corresponding to the data to be cached; the data corresponding to the minimum scoring result in the comparison result is deleted, and when the comparison result is that the scoring result is the same, the scoring timestamp corresponding to the cached data and the scoring timestamp corresponding to the data to be cached are compared, and the data corresponding to the maximum time difference between the scoring timestamp and the current timestamp is deleted.
[0067] In the embodiment of the present disclosure, in order to avoid a single user's candidate being too large, a maximum cache data length, ie, a length threshold, can be set for each user's cache data set; the length threshold can be set according to the application scenario, such as 10,000.
[0068] In an embodiment of the present disclosure, when caching the data to be cached into a cache data set, the data length of the cache data set is greater than a length threshold, and it is necessary to compare the scoring results corresponding to the cached data in the cache data set with the scoring results corresponding to the data to be cached, and delete the data corresponding to the smallest scoring result in the comparison result, so as to cache the data with a higher scoring result.
[0069] It should be noted that when the comparison result shows that the scoring result is the same, the scoring timestamp corresponding to the cached data and the scoring timestamp corresponding to the data to be cached will be compared, and the data corresponding to the maximum time difference between the scoring timestamp and the current timestamp will be deleted. In other words, by comparing the scoring timestamps, the older data will be eliminated to further ensure the accuracy of data recommendations.
[0070] In the above scheme, the candidate data remaining after being truncated after the coarse sorting is used as the data to be cached, so that it can be quickly called later to reduce repeated calculations; and the fine sorting service is called for scoring and evaluation, and the cached data is updated; to ensure timeliness, the scoring timestamp corresponding to each cached data is recorded, which is used to delete or re-score expired data in the cache, so that a large number of recall results can be quickly processed based on the cached data and the recommendation results can be returned to the user in time, meeting the response speed requirements of the online recommendation scenario, thereby significantly improving the efficiency of data recommendation, and based on the scoring of a large number of recalled candidate data, the candidate results can be evaluated more accurately, providing users with personalized recommendations that are more in line with their interests and needs, thereby improving the quality of data recommendation.
[0071] In some embodiments, no recommendation data matching the user feature identifier can be obtained from the cached data set, and the method further includes: obtaining historical request information of the client, and determining a target request time of the client based on the historical request information; obtaining a recalled data set of the client within a preset time range of the target request time, and inputting the recalled data set into a coarse ranking model to obtain a data set to be cached; inputting a refined ranking model based on the data set to be cached for processing to obtain a scoring result corresponding to each data to be cached, and setting a scoring timestamp corresponding to each data to be cached for caching processing.
[0072] In an embodiment of the present disclosure, there is a case where the user corresponding to the client makes a data display request for the first time or has not made a data display request for a long time, and thus the user does not have a corresponding cached data set. For the aforementioned scenario, the embodiment of the present disclosure can process based on the user's historical request information and obtain and cache the corresponding data before the user makes a real-time online data display request, that is, obtain the cached data corresponding to the user.
[0073] Specifically, obtaining the user's historical request information refers to the user's request information for data display, such as the user's historical request time, historical request content, and customer location information; each historical request time can be obtained from the historical request information, and a target request time can be determined based on each historical request time. The target request time refers to the time when the user frequently makes data display requests.
[0074] Among them, the time range can be set as needed, such as 30 minutes before the target request time, etc., to obtain the client's user information such as static information such as the user's age and gender, as well as dynamic information such as the user's recent viewing history, click history, and other dynamic information, as well as requested data content such as short videos, items and other data; and according to the preset multiple recall algorithms, obtain the recalled data set from each content source and input it into the coarse ranking model to obtain the data set to be cached, and further input the fine ranking model based on the data set to be cached for processing, to obtain the scoring result corresponding to each data to be cached, and set the scoring timestamp corresponding to each data to be cached for caching processing.
[0075] In the above solution, when the cached data becomes invalid due to the user's first visit or the long interval between visits, the user's access timing can be estimated based on the user's access history information such as access frequency (access records in the recent period) to start calculating and caching data in advance, thereby expanding the user's near-line recall content to a greater extent. In this way, asynchronous cached data recall can be used in the future to effectively expand the recall candidates, and the quality of the recall can be ensured by using the precise ranking and scoring calculation method.
[0076] In some embodiments, the method further includes: obtaining the data quantity of the second recommended data; when the data quantity is greater than a preset data volume threshold, sorting the second recommended data according to the scoring results, and deleting the second recommended data based on the sorting results and the data quantity.
[0077] In the embodiment of the present disclosure, a data volume threshold is set in advance and can be set according to actual application selection; it can be understood that a second recommended amount of data, that is, the data volume threshold, can be obtained in advance from the cached data set. When the amount of data of the second recommended data is greater than the data volume threshold, the second recommended data is sorted according to the scoring result, and the second recommended data based on the data volume threshold before sorting is retained, and the rest is deleted.
[0078] In some embodiments, when the data quantity is less than the data quantity threshold, the current data quantity is determined based on the data quantity and the data quantity threshold, and cached data of the current data quantity is obtained from the cached data set and added to the second recommended data.
[0079] That is to say, the difference between the data volume threshold and the data quantity is taken as the current data volume, and the cached data of the current data volume is obtained from the cached data set and added to the second recommended data. The cached data with a relatively high scoring result can be obtained according to the scoring result of the cached data in the cached data set and added to the second recommended data, thereby further improving the subsequent recommendation effect.
[0080] In the above solution, the amount of recommended data obtained from the cached data can be determined as needed, thereby further improving the recommendation efficiency and flexibility and meeting user needs.
[0081] Figure 2 This is a flow chart of a data recommendation method provided in an embodiment of the present disclosure. The method mainly includes the following steps S202 to S212:
[0082] Step S202: In response to the data recommendation request from the client, obtain the user feature identifier and the candidate data set.
[0083] Step S204 , sorting the candidate data sets based on a preset rough sorting model to obtain a rough sorting result, and acquiring a target data set and a to-be-cached data set from the candidate data sets based on the rough sorting result and a preset first screening condition.
[0084] Step S206 , sorting the target data set based on the preset refined ranking model to obtain a refined ranking result, and acquiring first recommended data from the target data set based on the refined ranking result and a preset second screening condition.
[0085] Step S208: Process the cached data set based on the refined ranking model to obtain the scoring result corresponding to each cached data, and set the scoring timestamp corresponding to each cached data; cache each cached data, the scoring result corresponding to each cached data, and the scoring timestamp corresponding to each cached data to update the cached data set.
[0086] Step S210 , obtaining second recommendation data matching the user feature identifier from the cached data set, wherein the recalled data truncated by the coarse ranking model is scored by the fine ranking model and cached in the cached data set.
[0087] Step S212 , filtering the cached data set based on the historical recommendation data of the client to obtain second recommendation data, and determining target recommendation data based on the first recommendation data and the second recommendation data to display on the client.
[0088] Specifically, the candidate data sets recalled from multiple channels are truncated after coarse sorting, and the remaining results are used as the data set to be cached, and are finely sorted and scored, and the scoring timestamp is set and then cached for quick subsequent calls to reduce repeated calculations; wherein, the message notification method can be used to obtain incremental truncated candidate data, and the fine ranking model can be called for scoring evaluation, and the cached data set can be updated; in order to ensure timeliness, the scoring timestamp of each time is recorded for deleting or re-scoring expired data in the cached data set; and by obtaining the cached data in the cached data set and performing lightweight online calculations, the second recommendation data is obtained and combined with the first recommendation data processed by the ordinary fine ranking model to jointly determine the target recommendation data for display on the client.
[0089] For example, Figure 3As shown, through a variety of recall algorithms, such as Figure 3 The execution step 3.1 is shown as recall, that is, data is recalled from the content source through recall algorithm A, recall algorithm B, recall algorithm C until recall algorithm X to obtain a candidate data set, and then step 3.2 is executed for coarse sorting, that is, the candidate data set is input into the coarse sorting model for coarse sorting processing to obtain a target data set and a data set to be cached, and step 3.3 is further executed for fine sorting, that is, the target data set is input into the fine sorting model for fine sorting processing to obtain the first recommended data; and step 3.4 is executed for cached data calculation processing, that is, the data set to be cached obtained by inputting the candidate data set into the coarse sorting model for coarse sorting is input for caching, and the cached data set is obtained by fine sorting scoring and setting a scoring timestamp, and near-line recall calculation is performed on the cached data set to obtain the top N data in the sorting as the second recommended data; wherein N is a positive integer greater than 0; finally, step 3.5 is executed for re-sorting, that is, the first recommended data and the second recommended data are re-sorted to determine certain target recommended data for display to the user.
[0090] For example, for a user X, in the rough ranking and scoring stage of the recommendation process, the candidate data sets recalled by multiple recall algorithms are requested to the rough ranking model according to a certain ratio, and the remaining results (data sets to be cached) with low scores in the rough ranking are sent to the message queue by means of message notification. Based on the message queue, a batch of data sets to be cached for user X can be obtained, and the following operations are performed on the cached data sets: for example, Figure 4 As shown, execute step 4.1 cache query: first query whether the data is in the cache data set, if it exists, execute step 4.2; if not, execute step 4.3; step 4.2 update judgment, compare the scoring timestamp of the cached data in the cache data set with the current timestamp, if it is greater than a certain time threshold, such as 10 minutes; then execute step 4.3, otherwise do not re-request fine ranking; step 4.3 fine ranking scoring, batch request fine ranking model, and store the latest score in the cache module, and set the scoring timestamp to the current timestamp for subsequent comparison; step 4.4 cache elimination, in order to avoid the cache data set of a single user being too large, set the maximum length of the cache data set for each user (such as 10,000); for example, when the length exceeds the maximum limit, the lower-scoring ones will be eliminated; when the scoring results are consistent, compare the scoring timestamps and eliminate the older data.
[0091] Furthermore, for a user, in the refined ranking and scoring stage of the recommendation process, while requesting the refined ranking model and waiting for the result to be returned, the near-line scoring result is obtained in parallel. If it does not exist, the process ends. If it exists, the cached data obtained is filtered based on the user's recommendation history. Because the near-line scoring process and the recommendation process are two independent processes, it is impossible to determine whether the near-line results contain data that has been pushed to user H. After the filtered data is sorted by score, for example, it is first truncated by a threshold (for example, 0.8, which needs to be combined with online data indicator statistical decisions). If the truncated result is greater than topN (for example, 10 items), it is truncated to topN. Otherwise, it is supplemented. The ordinary refined ranking results and the results after near-line calculation are merged according to the refined ranking scores, and post-processing such as re-ranking is performed together.
[0092] Therefore, an asynchronous mechanism is provided to perform fine ranking, scoring, and caching of the candidate data truncated after the coarse ranking. When the online service responds to the request, only the cached data is used as the new candidate set and a sorted topN result is obtained through lightweight online calculation. This not only breaks the speed limit of the original need for online calculation, but also approximately increases the calculation scale of the fine ranking to the level of the coarse ranking, thereby effectively improving the accuracy of the recommendation system.
[0093] In summary, the data recommendation method of the disclosed embodiments significantly improves the efficiency of the recommendation system. Based on caching, it can quickly process a large number of recall results and promptly return recommendation results to users, meeting the response speed requirements of online recommendation scenarios. It also improves the quality of recommendations. By scoring a large number of recall candidates, it can more accurately evaluate candidate results and provide users with personalized recommendations that better suit their interests and needs. This increases the number of candidates recalled by users and ensures the quality of the recall. This not only improves the efficiency of the recommendation system while meeting the response speed requirements of online recommendation scenarios, but also improves the user experience and recommendation effectiveness.
[0094] Corresponding to the aforementioned data recommendation method, the present disclosure further provides a data recommendation device. Figure 5 This is a schematic diagram of the structure of a data recommendation device provided in an embodiment of the present disclosure. The device can be implemented by software and / or hardware, and includes:
[0095] A response acquisition module 502 is configured to acquire a user feature identifier in response to a data recommendation request from a client;
[0096] The acquisition and display module 504 is used to acquire the recommended data matching the user feature identifier from the cached data set for display on the client; wherein the recalled data truncated by the coarse ranking model is scored by the fine ranking model and cached in the cached data set.
[0097] The above-mentioned device provided by the embodiment of the present disclosure can solve the technical problem in the prior art that a large number of recall results cannot be fully refined and scored due to the large complexity of refined ranking and limited computing resources and overall response speed, resulting in waste of recall candidate data and loss of recommendation effect. When responding to a data recommendation request, the recall data truncated by the coarse ranking model is scored by the refined ranking model and cached in the cache data set to obtain the recommended data matching the user feature identifier and display it on the client. While improving the data calculation efficiency, it also increases the calculation scale of refined ranking to the level of coarse ranking, thereby effectively improving the data recommendation accuracy and meeting the user data display needs.
[0098] In some embodiments, the device further includes: a coarse sorting module for sorting the candidate data set based on a coarse sorting model to obtain a coarse sorting result, and obtaining a target data set from the candidate data set based on the coarse sorting result and a preset first filtering condition; a fine sorting module for sorting the target data set based on a fine sorting model to obtain a fine sorting result, and obtaining first recommended data from the target data set based on the fine sorting result and a preset second filtering condition for display on the client.
[0099] In some embodiments, the apparatus further includes: a screening module configured to screen the cached data set based on historical recommendation data of the client to obtain second recommendation data for display on the client.
[0100] In some embodiments, the apparatus further includes: a determination and display module, configured to determine target recommendation data based on the first recommendation data and the second recommendation data for display on the client.
[0101] In some embodiments, the device also includes: a cache processing module, which is used to obtain a data set to be cached from the candidate data set based on the rough sorting result and the first screening condition, process the data set to be cached based on the fine sorting model, obtain a scoring result corresponding to each data to be cached, and cache each data to be cached and the scoring result corresponding to each data to be cached.
[0102] In some embodiments, the device further includes: a cache module configured to set a scoring timestamp corresponding to each data to be cached, and cache the scoring timestamp corresponding to each data to be cached.
[0103] In some embodiments, the device further includes: a query deletion module, configured to query whether each to-be-cached data in the to-be-cached data set is in the cache data set; when cache data matching the to-be-cached data exists in the cache data set, obtain a scoring timestamp corresponding to the cache data, and compare the scoring timestamp corresponding to the cache data with a current timestamp; when the time difference between the scoring timestamp corresponding to the cache data and the current timestamp is less than or equal to a preset time threshold, the to-be-cached data matching the cache data is deleted from the cache data set.
[0104] In some embodiments, the device also includes: an acquisition and deletion module, which is used to obtain the data length of the cached data set. When the data length is greater than a preset length threshold, the scoring result corresponding to the cached data in the cached data set is compared with the scoring result corresponding to the data to be cached, and the data corresponding to the minimum scoring result in the comparison result is deleted; and when the comparison result is that the scoring results are the same, the scoring timestamp corresponding to the cached data is compared with the scoring timestamp corresponding to the data to be cached, and the data corresponding to the maximum time difference between the scoring timestamp and the current timestamp is deleted.
[0105] In some embodiments, if no recommendation data matching the user feature identifier can be obtained from the cached data set, the device further includes: an acquisition cache module for obtaining historical request information of the client, and determining the target request time of the client based on the historical request information, obtaining the client's recall data set within a preset time range of the target request time, and inputting the recall data set into a coarse ranking model to obtain a data set to be cached, inputting the fine ranking model based on the data set to be cached for processing, obtaining a scoring result corresponding to each data to be cached, and setting a scoring timestamp corresponding to each data to be cached for cache processing.
[0106] In some embodiments, the device also includes: a first processing module, used to obtain the data quantity of the second recommended data, when the data quantity is greater than a preset data volume threshold, sorting the second recommended data according to the scoring result, and deleting the second recommended data based on the sorting result and the data quantity.
[0107] In some embodiments, the device also includes: a second processing module, which is used to determine the current data volume based on the data volume and the data volume threshold when the data volume is less than the data volume threshold, and obtain cached data of the current data volume from the cached data set and add it to the second recommended data.
[0108] The data recommendation device provided in the embodiments of the present disclosure can execute the data recommendation method provided in any embodiment of the present disclosure, and has the corresponding functional modules and beneficial effects of the execution method.
[0109] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working process of the above-described device embodiment can refer to the corresponding process in the method embodiment, and will not be repeated here.
[0110] An embodiment of the present disclosure provides an electronic device, which includes: a storage device storing a computer program; and a processing device configured to execute the computer program in the storage device to implement the steps of any one of the methods in the present disclosure.
[0111] Reference below Figure 6 , which shows a schematic structural diagram of an electronic device 600 suitable for implementing the embodiments of the present disclosure. The terminal devices in the embodiments of the present disclosure may include, but are not limited to, mobile terminals such as mobile phones, laptop computers, digital broadcast receivers, PDAs (personal digital assistants), PADs (tablet computers), PMPs (portable multimedia players), in-vehicle terminals (e.g., in-vehicle navigation terminals), and fixed terminals such as digital TVs and desktop computers. Figure 6 The electronic device shown is only an example and should not limit the functions and scope of use of the embodiments of the present disclosure.
[0112] like Figure 6 As shown, the electronic device 600 may include a processing device (e.g., a central processing unit, a graphics processing unit, etc.) 601, which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 602 or a program loaded from a storage device 608 into a random access memory (RAM) 603. Various programs and data required for the operation of the electronic device 600 are also stored in the RAM 603. The processing device 601, the ROM 602, and the RAM 603 are connected to each other via a bus 604. An input / output (I / O) interface 605 is also connected to the bus 604.
[0113] Typically, the following devices may be connected to the I / O interface 605: an input device 606 including, for example, a touch screen, a touchpad, a keyboard, a mouse, a camera, a microphone, an accelerometer, a gyroscope, etc.; an output device 607 including, for example, a liquid crystal display (LCD), a speaker, a vibrator, etc.; a storage device 608 including, for example, a magnetic tape, a hard disk, etc.; and a communication device 609. The communication device 609 may allow the electronic device 600 to communicate with other devices wirelessly or by wire to exchange data. Although Figure 6The electronic device 600 is shown with various devices, but it should be understood that it is not required to implement or possess all of the devices shown. More or fewer devices may be implemented or possessed instead.
[0114] In particular, according to an embodiment of the present disclosure, the process described above with reference to the flowchart can be implemented as a computer software program. For example, an embodiment of the present disclosure includes a computer program product, which includes a computer program carried on a non-transitory computer-readable medium, and the computer program includes a program code for executing the method shown in the flowchart. In such an embodiment, the computer program can be downloaded and installed from the network through the communication device 609, or installed from the storage device 608, or installed from the ROM 602. When the computer program is executed by the processing device 601, the above-mentioned functions defined in the method of the embodiment of the present disclosure are performed.
[0115] In addition to the above-mentioned methods and devices, the embodiments of the present disclosure may also be a computer program product, which includes computer program instructions, which, when executed by a processor, cause the processor to perform the image processing method provided by the embodiments of the present disclosure. The computer program product may be written in any combination of one or more programming languages to write program codes for performing the operations of the embodiments of the present disclosure, the programming languages including object-oriented programming languages such as Java, C++, etc., and also conventional procedural programming languages such as "C" language or similar programming languages. The program code may be executed entirely on the user computing device, partially on the user device, as a separate software package, partially on the user computing device and partially on a remote computing device, or entirely on a remote computing device or server.
[0116] In addition, the embodiment of the present disclosure may also be a computer-readable storage medium having computer program instructions stored thereon. When the computer program instructions are executed by a processor, the processor is caused to execute the data recommendation method provided by the embodiment of the present disclosure.
[0117] The computer-readable storage medium can adopt any combination of one or more readable media. The readable medium can be a readable signal medium or a readable storage medium. The readable storage medium can, for example, include but is not limited to a system, device or component of electricity, magnetism, light, electromagnetic, infrared, or semiconductor, or any combination thereof. More specific examples (non-exhaustive list) of readable storage media include: an electrical connection with one or more wires, a portable disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination thereof.
[0118] The embodiments of the present disclosure further provide a computer program product, including a computer program / instruction, which implements the data recommendation method in the embodiments of the present disclosure when executed by a processor.
[0119] It is understandable that before using the technical solutions disclosed in the various embodiments of this disclosure, the type, scope of use, usage scenarios, etc. of the personal information involved in this disclosure should be informed to the user and the user's authorization should be obtained in an appropriate manner in accordance with relevant laws and regulations.
[0120] For example, in response to a user's active request, a prompt message is sent to the user to clearly inform the user that the operation requested will require the acquisition and use of the user's personal information. This allows the user to independently choose whether to provide personal information to the electronic device, application, server, storage medium, or other software or hardware that performs the operations of the disclosed technical solution based on the prompt message.
[0121] As an optional but non-limiting implementation, in response to receiving a user's active request, the prompt information may be sent to the user in the form of a pop-up window, in which the prompt information may be presented in text form. Furthermore, the pop-up window may also contain a selection control for the user to select "agree" or "disagree" to provide personal information to the electronic device.
[0122] It is understandable that the above notification and user authorization process are merely illustrative and do not constitute a limitation on the implementation of the present disclosure. Other methods that comply with relevant laws and regulations may also be applied to the implementation of the present disclosure.
[0123] It should be noted that, in this document, relational terms such as "first" and "second" are used only to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any actual relationship or order between these entities or operations. Moreover, the terms "comprises," "comprising," or any other variations thereof are intended to cover non-exclusive inclusion, so that a process, method, article, or device comprising a series of elements includes not only those elements, but also other elements not explicitly listed, or elements inherent to such process, method, article, or device. In the absence of further limitations, an element defined by the phrase "comprising a ..." does not exclude the presence of other identical elements in the process, method, article, or device comprising the element.
[0124] The foregoing description is intended only to provide specific embodiments of the present disclosure, intended to enable those skilled in the art to understand and implement the present disclosure. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the general principles defined herein may be implemented in other embodiments without departing from the spirit or scope of the present disclosure. Therefore, the present disclosure is not intended to be limited to the embodiments described herein, but rather to be construed in the broadest manner consistent with the principles and novel features disclosed herein.
Claims
1. A data recommendation method, characterized in that: The method comprises: Responding to a data recommendation request from a client, obtaining a user feature identifier; The recommended data matching the user feature identifier is obtained from the cached data set for display on the client; wherein the recalled data truncated by the coarse ranking model is scored by the fine ranking model and cached in the cached data set.
2. The method according to claim 1, characterized in that The method further comprises: Sorting the candidate data set based on the rough sorting model to obtain a rough sorting result, and acquiring a target data set from the candidate data set based on the rough sorting result and a preset first screening condition; The target data set is sorted based on the refined ranking model to obtain a refined ranking result, and first recommended data is obtained from the target data set based on the refined ranking result and a preset second screening condition to be displayed on the client.
3. The method according to claim 1, characterized in that The method further comprises: The recommendation data is filtered based on historical recommendation data of the client to obtain second recommendation data for display on the client.
4. The method according to claim 3, characterized in that The method further comprises: Target recommended data is determined based on the first recommended data and the second recommended data to be displayed on the client.
5. The method according to claim 2, characterized in that The method further comprises: Acquire a data set to be cached from the candidate data set based on the rough sorting result and the first screening condition; The data set to be cached is processed based on the refined ranking model to obtain a scoring result corresponding to each data to be cached, and each data to be cached and the scoring result corresponding to each data to be cached are cached.
6. The method according to claim 5, characterized in that The method further comprises: Setting the scoring timestamp corresponding to each data to be cached; The scoring timestamp corresponding to each data to be cached is cached.
7. The method according to claim 5, characterized in that The method further comprises: After scoring each to-be-cached data and before caching, querying whether each to-be-cached data in the to-be-cached data set is in the cache data set; When there is cached data matching the data to be cached in the cached data set, obtaining a scoring timestamp corresponding to the cached data, and comparing the scoring timestamp corresponding to the cached data with the current timestamp; When the time difference between the scoring timestamp corresponding to the cached data and the current timestamp is less than or equal to a preset time threshold, the to-be-cached data that matches the cached data is deleted from the cached data set.
8. The method according to claim 5, characterized in that The method further comprises: Obtaining the data length of the cached data set; When the data length is greater than a preset length threshold, comparing the scoring result corresponding to the cached data in the cached data set with the scoring result corresponding to the data to be cached; The data corresponding to the minimum score result in the comparison result is deleted, and when the comparison result is that the score result is the same, the score timestamp corresponding to the cached data is compared with the score timestamp corresponding to the data to be cached, and the data corresponding to the maximum time difference between the score timestamp and the current timestamp is deleted.
9. The method according to claim 1, characterized in that If no recommended data matching the user feature identifier is obtained from the cached data set, the method further includes: Acquire historical request information of the client, and determine a target request time of the client based on the historical request information; Acquire the client's recalled data set within a preset time range of the target request time, and input the recalled data set into the coarse sorting model to acquire a data set to be cached; The refined ranking model is inputted based on the data set to be cached for processing, a scoring result corresponding to each data to be cached is obtained, and a scoring timestamp corresponding to each data to be cached is set for cache processing.
10. The method according to claim 3, characterized in that The method further comprises: Obtaining the data quantity of the second recommended data; When the data quantity is greater than a preset data quantity threshold, the second recommended data is sorted according to the scoring result, and the second recommended data is deleted based on the sorting result and the data quantity.
11. The method according to claim 10, characterized in that The method further comprises: When the data amount is less than the data amount threshold, determining a current data amount based on the data amount and the data amount threshold; The cache data of the current data volume is obtained from the cache data set and added to the second recommendation data.
12. A data recommendation device, characterized in that: The device comprises: A response acquisition module, configured to respond to a data recommendation request from a client and acquire a user feature identifier; An acquisition and display module is used to acquire recommended data matching the user feature identifier from a cached data set for display on the client; wherein the recall data truncated by the coarse ranking model is scored by the fine ranking model and cached in the cached data set.
13. An electronic device, characterized in that: The electronic device comprises: a storage device having a computer program stored thereon; A processing device, configured to execute the computer program in the storage device to implement the steps of the data recommendation method according to any one of claims 1 to 11.
14. A computer-readable storage medium, characterized in that The storage medium stores a computer program, and the computer program is used to execute the data recommendation method according to any one of claims 1 to 11.
Citation Information
Cited By
Social user discovery method and system based on multi-level cache and intelligent recommendation pool
CN121560930A