A method and device for pushing application programs

By generating a configuration file containing the target push strategy and application sorting model, the problem that push services in the existing technology are difficult to accurately match the user's personalized characteristics, and more accurate push services are achieved and user experience is improved.

CN109582865BActive Publication Date: 2025-05-02BEIJING QIHOOD TECHNOLOGY CO LTD
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
CN201811379074.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2018-11-19
Publication Date
2025-05-02
Estimated Expiration
2038-11-19

AI Technical Summary

Technical Problem

The prior art is difficult to accurately match the user's personalized characteristics in push services, resulting in push information being regarded as harassment by the user and affecting the user experience.

Method used

By receiving user search requests, a configuration file is generated, including target push policies and application sorting models, using these models to obtain a list of target applications pushed to users, and the sorting model is updated based on user feedback and historical data.

Benefits of technology

Improve the accuracy of push services, ensure that push information is more in line with the user's personalized characteristics, and improve the user experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN109582865B_ABST
    Figure CN109582865B_ABST
Patent Text Reader

Abstract

The present invention relates to the field of information processing technology, and in particular to a method and device for pushing applications, the method comprising: receiving a search request sent by a user; generating a corresponding configuration file based on the search request; the configuration file comprising a target push strategy and an application ranking model; executing the target push strategy, and using the application ranking model to obtain a target application list pushed to the user; receiving feedback data from the user regarding the target application list; updating the application ranking model based on the feedback data and historical data information, wherein the historical data information specifically includes user behavior data of historical users and feature data of historical applications, thereby being able to push service information targeting the user's personalized features and improving the accuracy of the push service.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of information processing technology, and in particular to a method and device for pushing an application program. Background Art

[0002] Existing intelligent information processing technology is developing rapidly, especially information processing based on big data. For personalized information processing, for example, based on the user's purchase information, the user's download list, the user's browsing information, etc., the user's personalized characteristics can be determined, and then, based on the personalized characteristics, the corresponding service information can be pushed, and the service information can match the user's personalized characteristics. However, if the pushed service information is not appropriate for the user's personalized characteristics, the service information will be regarded as harassment information by the user, affecting the user's experience.

[0003] Therefore, when providing a push service adapted to the personalized characteristics of a user with respect to the user's personalized information, how to improve the accuracy of the push service is a technical problem that needs to be solved urgently. Summary of the invention

[0004] In view of the above problems, the present invention is proposed to provide a method and apparatus for pushing applications that overcome the above problems or at least partially solve the above problems.

[0005] In a first aspect, an embodiment of the present invention provides a method for pushing an application program, including:

[0006] Receive search requests sent by users;

[0007] Generate a corresponding configuration file based on the search request; the configuration file includes a target push strategy and an application ranking model;

[0008] Execute the target push strategy and use the application ranking model to obtain a target application list to be pushed to the user;

[0009] receiving feedback data from the user regarding the target application list;

[0010] The application ranking model is updated based on the feedback data and historical data information, wherein the historical data information specifically includes user behavior data of historical users and feature data of historical applications.

[0011] Preferably, before receiving the search request sent by the user, the method further includes:

[0012] Obtaining user behavior data of the historical user;

[0013] Obtaining characteristic data of the historical application;

[0014] Based on the user behavior data of the historical user and the characteristic data of the historical application, a preset algorithm is used to obtain a list of historical application corresponding to the user behavior data of the historical user;

[0015] Obtaining training samples based on user behavior data of historical users and a list of historical applications corresponding to the user behavior data of the historical users;

[0016] Inputting the training samples into M machine learning models for training to obtain M first sorting models;

[0017] A ranking model with the highest accuracy is obtained from the M first ranking models as the application ranking model.

[0018] Preferably, the user behavior data of the historical users is specifically any one or more combinations of the following:

[0019] The geographical data of the historical user, the model data of the device used by the historical user, the demographic data of the historical user, the value data generated by the historical user for the historical application, the application data installed by the historical user, the browsing record data of the historical user, and the usage data of the installed application by the historical user.

[0020] Preferably, the characteristic data of the application is any one of the following data or a combination of them:

[0021] The age group data of users to which the application is applicable, similar applications to the application, and comprehensive evaluation data of the application by users.

[0022] Preferably, after inputting the training samples into M machine learning models for training and obtaining M first sorting models, the method further includes:

[0023] Obtaining a test sample based on user behavior data of historical users and a list of historical applications corresponding to the user behavior data of the historical users;

[0024] Using the test samples to test the M first sorting models respectively, to obtain output results of the M first sorting models;

[0025] Compare the output results of the M first ranking models with the historical application lists corresponding to the user behavior data in the test sample to obtain M comparison results;

[0026] The acquiring the ranking model with the highest accuracy from the M first ranking models as the application ranking model specifically includes:

[0027] A ranking model with the highest matching degree is selected from the M comparison results as the application ranking model.

[0028] Preferably, after receiving the feedback data from the user regarding the target application list, the method further includes:

[0029] Collecting the user behavior data of the user, the feedback data, and the target application list for performance testing;

[0030] The performance test results are displayed through the display interface.

[0031] Preferably, generating a corresponding configuration file based on the search request specifically includes:

[0032] Based on the search request, obtaining user behavior data of the user in the search request;

[0033] Based on the user behavior data of the user, a target push strategy and an application ranking model corresponding to the user behavior data of the user are obtained.

[0034] Preferably, executing the target push strategy and obtaining a target application list pushed to the user using the application ranking model specifically includes:

[0035] Executing the target push strategy, inputting the user behavior data of the user into the application ranking model, and obtaining a target application list corresponding to the user behavior data of the user;

[0036] The target application list is pushed to the user.

[0037] Preferably, updating the application ranking model based on the feedback data and historical data information specifically includes:

[0038] Using the feedback data and historical data information as new training samples;

[0039] Inputting the new training samples into M machine learning models to obtain M second sorting models;

[0040] The ranking model with the highest accuracy is selected from the M second ranking models as the updated application ranking model.

[0041] Preferably, after updating the application ranking model based on the feedback data and historical data information, the method further includes:

[0042] Receive search requests from other users, and obtain corresponding configuration files based on the search requests from other users; wherein the configuration files corresponding to the other users include corresponding target push strategies and the application ranking model;

[0043] After the updated application ranking model is updated into the memory, the target push strategy corresponding to the other users is executed, and the target application list pushed to the other users is obtained by directly using the updated application ranking model.

[0044] In a second aspect, the present invention further provides a device for pushing an application program, comprising:

[0045] A first receiving module, used to receive a search request sent by a user;

[0046] A generation module, used to generate a corresponding configuration file based on the search request; the configuration file includes a target push strategy and an application ranking model;

[0047] A first execution module, configured to execute the target push strategy and obtain a target application list to be pushed to the user by using the application ranking model;

[0048] A second receiving module, configured to receive feedback data from the user regarding the target application list;

[0049] An updating module is used to update the application ranking model based on the feedback data and historical data information, wherein the historical data information specifically includes user behavior data of historical users and feature data of historical applications.

[0050] Preferably, it also includes:

[0051] A first acquisition module, used to acquire user behavior data of the historical user;

[0052] A second acquisition module, used to acquire characteristic data of the historical application;

[0053] A first obtaining module, configured to obtain a list of historical applications corresponding to the user behavior data of the historical user by using a preset algorithm based on the user behavior data of the historical user and the feature data of the historical applications;

[0054] A training sample acquisition module, used to acquire training samples based on user behavior data of historical users and a list of historical applications corresponding to the user behavior data of the historical users;

[0055] A first training module, used for inputting the training samples into M machine learning models for training to obtain M first sorting models;

[0056] A selection module is used to obtain the ranking model with the highest accuracy from the M first ranking models as the application ranking model.

[0057] Preferably, the user behavior data of the historical users is specifically any one or more combinations of the following:

[0058] The geographical data of the historical user, the model data of the device used by the historical user, the demographic data of the historical user, the value data generated by the historical user for the historical application, the application data installed by the historical user, the browsing record data of the historical user, and the usage data of the installed application by the historical user.

[0059] Preferably, the characteristic data of the application is any one of the following data or a combination of them:

[0060] The age group data of users to which the application is applicable, similar applications to the application, and comprehensive evaluation data of the application by users.

[0061] Preferably, it also includes:

[0062] A test sample acquisition module, used to acquire a test sample based on user behavior data of historical users and a list of historical applications corresponding to the user behavior data of the historical users;

[0063] A testing module, used to test the M first sorting models respectively using the test samples to obtain output results of the M first sorting models;

[0064] A comparison result obtaining module, used to compare the output results of the M first ranking models with the historical application lists corresponding to the user behavior data in the test sample, respectively, to obtain M comparison results;

[0065] The selection module is specifically used to select the ranking model with the highest matching degree from the M comparison results as the application ranking model.

[0066] Preferably, it also includes:

[0067] A performance testing module, used to collect the user behavior data of the user, the feedback data, and the target application list for performance testing;

[0068] The display module is used to display the performance test results through a display interface.

[0069] Preferably, the generating module specifically includes:

[0070] A first obtaining unit, configured to obtain user behavior data of the user in the search request based on the search request;

[0071] The second obtaining unit is used to obtain a target push strategy and an application ranking model corresponding to the user behavior data of the user based on the user behavior data of the user.

[0072] Preferably, the execution module specifically includes:

[0073] A first training unit is used to execute the target push strategy, input the user behavior data of the user into the application ranking model, and obtain a target application list corresponding to the user behavior data of the user;

[0074] A pushing unit is used to push the target application list to the user.

[0075] Preferably, the update module specifically includes:

[0076] A new training sample acquisition unit, used to use the feedback data and historical data information as new training samples;

[0077] A second training unit, used for inputting the new training samples into M machine learning models to obtain M second sorting models;

[0078] The second selection unit is used to select the ranking model with the highest accuracy from the M second ranking models as the updated application ranking model.

[0079] Preferably, it also includes:

[0080] A third receiving module is used to receive search requests from other users, and obtain corresponding configuration files based on the search requests from other users; wherein the configuration files corresponding to the other users include corresponding target push strategies and the application ranking model;

[0081] The second execution module is used to execute the target push strategy corresponding to the other users after updating the updated application ranking model into the memory, and directly use the updated application ranking model to obtain the target application list pushed to the other users.

[0082] In a third aspect, an embodiment of the present invention further provides a computer device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements the above-mentioned method steps when executing the program.

[0083] In a fourth aspect, an embodiment of the present invention further provides a computer-readable storage medium having a computer program stored thereon, which implements the above-mentioned method steps when executed by a processor.

[0084] One or more technical solutions in the embodiments of the present invention have at least the following technical effects or advantages:

[0085] The present invention provides a method for pushing applications, comprising: receiving a search request sent by a user; generating a corresponding configuration file based on the search request, wherein the configuration file includes a target push strategy and an application ranking model, executing the target push strategy, using the application ranking model to obtain a target application list pushed to the user, receiving feedback data from the user for the target application list, and updating the application ranking model based on the feedback data and historical data information, wherein the historical data information specifically includes user behavior data of historical users and feature data of historical applications, thereby solving the problem in the prior art that when information is pushed to the user, the service information pushed is not appropriate for the user's current personalized features, so that the service information is regarded as harassing information by the user, affecting the user experience, thereby being able to push service information targeting the user's personalized features, thereby improving the accuracy of the push service. BRIEF DESCRIPTION OF THE DRAWINGS

[0086] Various other advantages and benefits will become apparent to those of ordinary skill in the art by reading the detailed description of the preferred embodiments below. The accompanying drawings are only for the purpose of illustrating the preferred embodiments and are not to be considered as limiting the present invention. Also, throughout the accompanying drawings, the same reference figures are used to represent the same components. In the drawings:

[0087] Figure 1 A schematic diagram showing the steps of a method for pushing an application program in an embodiment of the present invention is shown;

[0088] Figure 2a , Figure 2b A schematic diagram of the steps in the offline phase in an embodiment of the present invention is shown;

[0089] Figure 3 A schematic diagram of the steps of the update phase in an embodiment of the present invention is shown;

[0090] Figure 4 A schematic diagram showing the structure of a device for pushing an application program in an embodiment of the present invention is shown;

[0091] Figure 5 A schematic diagram of the structure of a computer device in an embodiment of the present invention is shown. DETAILED DESCRIPTION

[0092] The exemplary embodiments of the present disclosure will be described in more detail below with reference to the accompanying drawings. Although the exemplary embodiments of the present disclosure are shown in the accompanying drawings, it should be understood that the present disclosure can be implemented in various forms and should not be limited by the embodiments set forth herein. On the contrary, these embodiments are provided to enable a more thorough understanding of the present disclosure and to fully convey the scope of the present disclosure to those skilled in the art.

[0093] Embodiment 1

[0094] The embodiment of the present invention provides a method for pushing an application program, such as Figure 1 As shown, it includes: S101, receiving a search request sent by a user; S102, generating a corresponding configuration file based on the search request, wherein the configuration file includes a target push strategy and an application ranking model; S103, executing the target push strategy, and using the application ranking model to obtain a target application list pushed to the user; S104, receiving feedback data from the user regarding the target application list; S105, updating the application ranking model based on the feedback data and historical data information, wherein the historical data information specifically includes user behavior data of historical users and feature data of historical applications.

[0095] In a specific implementation, the method for pushing an application is divided into an offline preparation stage and an online application stage.

[0096] The online application phase is carried out after the offline preparation phase.

[0097] First, in the offline preparation stage, that is, before S101, as shown in FIG2, it also includes:

[0098] S201, obtaining user behavior data of historical users;

[0099] S202, obtaining characteristic data of historical applications;

[0100] S203, based on the user behavior data of the historical user and the feature data of the historical application program, a preset algorithm is used to obtain a list of historical application programs corresponding to the user behavior data of the historical user;

[0101] S204, obtaining a training sample based on the user behavior data of the historical user and the historical application list corresponding to the user behavior data of the historical user;

[0102] S205, inputting the training samples into M machine learning models for training to obtain M first ranking models;

[0103] S206, obtaining a ranking model with the highest accuracy from the M first ranking models as a ranking model for the application.

[0104] Among them, the user behavior data of the historical user specifically includes any one or more combinations of the following: geographical data of the historical user (for example, the city where the user is located is Beijing), model data of the device used by the historical user (here refers to the model of the mobile phone or the model of the computer), demographic data of the historical user (for example, the population mobility and employment status of the city where the user is located), value data generated by historical users for historical applications (for example, whether the user often downloads new applications or the applications have not been updated for a long time), application data installed by historical users (for example, data on office software, game software, communication software, etc. installed by users), browsing record data of historical users (for example, information on web pages browsed by users or keyword information searched by users), and usage data of installed applications by historical users (for example, information on the frequency of use of downloaded applications by users).

[0105] The characteristic data of the historical application may specifically be any one of the following data or a combination of them: age group data of users to which the application is applicable (for example, application A has mostly female users between the ages of 15 and 20, and application B has mostly male users between the ages of 30 and 35), similar applications to the application (for example, application D and application E are similar to application C), comprehensive evaluation data of users on the application (for example, most users' feedback on application F is: fast response speed and comprehensive data), etc.

[0106] The user behavior data of the historical user and the characteristic data of the historical application are not limited to the above contents, and are not limited in the embodiments of the present invention.

[0107] In the offline preparation stage, a large amount of user behavior data of historical users and feature data of historical applications are collected and calculated through preset algorithms, namely item-based, contend-based, model-based and other algorithms, to obtain a list of historical applications corresponding to the user behavior data of the historical users.

[0108] Specifically, based on the user behavior data of the above historical users, through the above algorithm, multiple applications that are compatible with the behavior data of the historical users can be obtained; based on the feature data of the above historical applications, applications similar to the historical applications can be obtained, where applications similar to the historical applications can be determined based on the similarity of the application name, introduction, and content in the user's comments. The above three algorithms are combined to obtain more accurate calculation results.

[0109] After obtaining the historical application list corresponding to the user behavior data of the historical user, S204 is executed to obtain a training sample based on the user behavior data of the historical user and the historical application list corresponding to the user behavior data of the historical user. That is, some data is selected from a large amount of user behavior data of historical users and the historical application list corresponding to the user behavior data of historical users as training samples.

[0110] Next, in S205, the training sample is input into M machine learning models for training to obtain M first sorting models.

[0111] Specifically, the M machine learning models may be GBDT (Gradient Boosting Decision Tree, iterative decision tree algorithm model), CNN (Convolutional Neural Network, convolutional neural network model), RNN (Recurrent Neural Network, recursive neural network model), etc. They will not be described in detail in the embodiments of the present invention.

[0112] Due to the different types of machine learning models used, after training these machine learning models with training samples, the obtained ranking models are also different. If the same input data is input into different ranking models, the output results obtained are also different. For example, the ranking results of applications obtained by ranking model 11 are A, B, D; the ranking results of applications obtained by ranking model 12 are A, E, D; the ranking results of applications obtained by ranking model 13 are B, A, D..., where A, B, D, E are all substitute marks for applications, and ranking models 11, 12, and 13 belong to M first ranking models.

[0113] After obtaining the M first sorting models, execute S206 to obtain the sorting model with the highest accuracy from the M first sorting models as the sorting model for the application.

[0114] Specifically, after obtaining M first sorting models, as Figure 2b As shown, it also includes:

[0115] S2051 , obtaining a test sample based on the user behavior data of the historical user and the historical application list corresponding to the user behavior data of the historical user.

[0116] The test sample is also obtained from a large amount of user behavior data of historical users and a list of historical application programs corresponding to the user behavior data of historical users. The test sample does not overlap with the data of the training sample.

[0117] S2052, using the test samples to test the M first sorting models respectively, to obtain output results of the M first sorting models.

[0118] This step is similar to the training process, that is, the data in the test sample as the input part is input into M first sorting models respectively to obtain M output results.

[0119] S2053, comparing the output results of the M first sorting models with the historical application lists corresponding to the user behavior data in the test sample, to obtain M comparison results.

[0120] The output results of the M first sorting models are different from the data that serves as the output part in the test sample. M comparison results are obtained by comparing the output results of the M first sorting models with the data that serves as the output part in the test sample, that is, the historical application list corresponding to the user behavior data.

[0121] After M comparison results are obtained, S206 is executed to obtain a ranking model with the highest accuracy from the M first ranking models as a ranking model for the application.

[0122] Specifically, the sorting model with the highest matching degree is selected from the M comparison results as the sorting model of the application.

[0123] The above is an offline preparation phase, in which the obtained user behavior data of historical users and the application ranking model with the highest matching degree are stored in memory.

[0124] Then, S101 is executed to receive a search request sent by a user.

[0125] In a specific implementation scenario: a user performs a search operation through a search box in a browser or an application with a search function, such as inputting "game" and clicking to search for the corresponding application. Correspondingly, the server in the present invention receives the user's search request, specifically including a URL request.

[0126] Next, S102 is executed to generate a corresponding configuration file based on the search request, wherein the configuration file includes a target push strategy and an application program ranking model. For each user, the generated configuration file is different.

[0127] Specifically, S102 includes:

[0128] Based on the search request, obtaining user behavior data of the user in the search request;

[0129] Based on the user behavior data of the user, a target push strategy and an application ranking model corresponding to the user behavior data of the user are obtained.

[0130] Since the URL request includes some parameter information, the user's identity information can be obtained by parsing the parameter information. Therefore, based on the user's account information on the browser, that is, the user's identity information, the user behavior data information corresponding to the user's identity information can be directly obtained.

[0131] The user behavior data information here may include the user's browsing history data, the user's installed application data, the user's usage data of the installed application, and so on. Then, based on the user behavior data of the user, the target push strategy and application ranking model corresponding to the user behavior data of the user are obtained. The target push strategy and application ranking model corresponding to the user behavior data information of all historical users are stored in the memory.

[0132] Next, S103 is executed to execute the target push strategy, and the target application list to be pushed to the user is obtained by using the application ranking model.

[0133] The S103 specifically includes:

[0134] Execute the target push strategy, input the user behavior data of the user into the application ranking model, and obtain a target application list corresponding to the user behavior data of the user;

[0135] The target application list is pushed to the user.

[0136] In a specific implementation, the configuration file includes a target push strategy and an application ranking model. Under the guidance of the target push strategy, the user behavior data of the user is input into the application ranking model, thereby obtaining a target application list corresponding to the user behavior data of the user. That is, according to the user behavior data of the user input into the application ranking model, the output result obtained is a ranked list of applications related to the search request of the user, and the application ranking model is the application ranking model with the highest matching degree obtained through testing.

[0137] Then the obtained target application list is pushed to the user, and the user obtains a target application list that matches the user's current behavior habits.

[0138] Of course, the application ranking model used by the user in the process of obtaining the target application list may also be an application ranking model updated based on the feedback data of the previous historical users on the historical target application list. That is, the application ranking model used in the search process before this search for applications is different from the application ranking model used in the search process of this search for applications.

[0139] After the server pushes the target application list to the user, S104 is executed to receive feedback data from the user on the target application list. The feedback data may specifically be data on the download or installation of the applications in the target application list by the user, that is, the usage of the applications in the received target application list. The feedback data of the user may be used to modify the original target application list.

[0140] After receiving the user's feedback data on the target application list, the method further includes:

[0141] Collect user behavior data, feedback data, and target application lists for performance testing;

[0142] The performance test results are displayed through the display interface.

[0143] Specifically, the real-time data is analyzed through performance testing to determine its authenticity and accuracy. Finally, the confirmed performance test results of the real-time data are displayed through the display interface. This is convenient for testers to view. Of course, it also avoids inaccurate data that may lead to poor recommendation results.

[0144] After receiving the feedback data from the user regarding the target application list, execute 105 to update the application ranking model based on the feedback data and historical data information, where the historical data information specifically includes historical user behavior data and historical application feature data.

[0145] like Figure 3 As shown, the S105 specifically includes:

[0146] S301, using feedback data and historical data information as new training samples;

[0147] S302, inputting the new training sample into M machine learning models to obtain M second ranking models;

[0148] S303: Select the ranking model with the highest accuracy from the M second ranking models as the updated application ranking model, that is, select the ranking model with the highest matching degree from the M second ranking models as the updated application ranking model.

[0149] In a specific implementation, the new training sample is obtained by integrating the feedback data of the current user and the historical data information. Then, the new training sample is input into the M machine learning models to obtain M second ranking models, which are different from the M first ranking models. The ranking model with the highest accuracy is selected from the M second ranking models as the updated application ranking model.

[0150] The training process this time is similar to the previous one, except that the training samples are updated. The updated training samples make the model obtained by training more accurate. Therefore, each update of the training samples will improve the accuracy of the model training.

[0151] After S105, it also includes:

[0152] Receive search requests from other users, and obtain corresponding configuration files based on the search requests from other users; wherein the configuration files corresponding to other users include corresponding target push strategies and application ranking models;

[0153] After the updated application ranking model is updated into the memory, the target push strategy corresponding to other users is executed, and the target application list pushed to other users is obtained by directly using the updated application ranking model.

[0154] In a specific implementation, after the application ranking model is updated, if another user initiates a search request, the server corresponding to the search engine will still obtain the corresponding configuration file based on the search request, and the configuration file includes the corresponding target push strategy and application ranking model. Then, after the updated application ranking model is updated to the memory, the target push strategy corresponding to the other user will point to the updated application ranking model.

[0155] Therefore, in the prior art, if the first user initiates an access request and finally obtains a list of target applications to be pushed, and then collects the feedback results of the first user, if a second user (i.e., other users) initiates an access request at this time, the corresponding application sorting model may not be obtained according to the obtained configuration file, and the server needs to be restarted. However, in the present invention, since the updated application sorting model is updated to the memory, after the configuration file is obtained, when executing the target push policy corresponding to the user, the updated application sorting model can be directly used to obtain the target application list pushed to the second user (i.e., other users). Therefore, by adopting the configuration file, the application sorting model can be updated without restarting the service.

[0156] Moreover, the updated application sorting model is placed in memory, which can reduce the overhead of network requests and improve response speed.

[0157] Embodiment 2

[0158] Based on the same inventive concept, an embodiment of the present invention provides a device for pushing an application program, such as Figure 4 As shown, including:

[0159] The first receiving module 401 is used to receive a search request sent by a user;

[0160] A generating module 402, configured to generate a corresponding configuration file based on the search request; the configuration file includes a target push strategy and an application ranking model;

[0161] The first execution module 403 is used to execute the target push strategy and obtain a target application list pushed to the user by using the application ranking model;

[0162] A second receiving module 404 is used to receive feedback data from the user regarding the target application list;

[0163] The updating module 405 is used to update the application ranking model based on the feedback data and historical data information, wherein the historical data information specifically includes user behavior data of historical users and feature data of historical applications.

[0164] Preferably, it also includes:

[0165] A first acquisition module, used to acquire user behavior data of the historical user;

[0166] A second acquisition module, used to acquire characteristic data of the historical application;

[0167] A first obtaining module, configured to obtain a list of historical applications corresponding to the user behavior data of the historical user by using a preset algorithm based on the user behavior data of the historical user and the feature data of the historical applications;

[0168] A training sample acquisition module, used to acquire training samples based on user behavior data of historical users and a list of historical applications corresponding to the user behavior data of the historical users;

[0169] A first training module, used for inputting the training samples into M machine learning models for training to obtain M first sorting models;

[0170] A selection module is used to obtain the ranking model with the highest accuracy from the M first ranking models as the application ranking model.

[0171] Preferably, the user behavior data of the historical users is specifically any one or more combinations of the following:

[0172] The geographical data of the historical user, the model data of the device used by the historical user, the demographic data of the historical user, the value data generated by the historical user for the historical application, the application data installed by the historical user, the browsing record data of the historical user, and the usage data of the installed application by the historical user.

[0173] Preferably, the characteristic data of the application is any one of the following data or a combination of them:

[0174] The age group data of users to which the application is applicable, similar applications to the application, and comprehensive evaluation data of the application by users.

[0175] Preferably, it also includes:

[0176] A test sample acquisition module, used to acquire a test sample based on user behavior data of historical users and a list of historical applications corresponding to the user behavior data of the historical users;

[0177] A testing module, used to test the M first sorting models respectively using the test samples to obtain output results of the M first sorting models;

[0178] A comparison result obtaining module, used to compare the output results of the M first ranking models with the historical application lists corresponding to the user behavior data in the test sample, respectively, to obtain M comparison results;

[0179] The selection module is specifically used to select the ranking model with the highest matching degree from the M comparison results as the application ranking model.

[0180] Preferably, it also includes:

[0181] A performance testing module, used to collect the user behavior data of the user, the feedback data, and the target application list for performance testing;

[0182] The display module is used to display the performance test results through a display interface.

[0183] Preferably, the generating module 402 specifically includes:

[0184] A first obtaining unit, configured to obtain user behavior data of the user in the search request based on the search request;

[0185] The second obtaining unit is used to obtain a target push strategy and an application ranking model corresponding to the user behavior data of the user based on the user behavior data of the user.

[0186] Preferably, the execution module specifically includes:

[0187] A first training unit is used to execute the target push strategy, input the user behavior data of the user into the application ranking model, and obtain a target application list corresponding to the user behavior data of the user;

[0188] A pushing unit is used to push the target application list to the user.

[0189] Preferably, the updating module 405 specifically includes:

[0190] A new training sample acquisition unit, used to use the feedback data and historical data information as new training samples;

[0191] A second training unit, used for inputting the new training samples into M machine learning models to obtain M second sorting models;

[0192] The second selection unit is used to select the ranking model with the highest accuracy from the M second ranking models as the updated application ranking model.

[0193] Preferably, it also includes:

[0194] A third receiving module is used to receive search requests from other users, and obtain corresponding configuration files based on the search requests from other users; wherein the configuration files corresponding to the other users include corresponding target push strategies and the application ranking model;

[0195] The second execution module is used to execute the target push strategy corresponding to the other users after updating the updated application ranking model into the memory, and directly use the updated application ranking model to obtain the target application list pushed to the other users.

[0196] Embodiment 3

[0197] Based on the same inventive concept, a third embodiment of the present invention provides a computer device, such as Figure 5 As shown, it includes a memory 304, a processor 302, and a computer program stored in the memory 304 and executable on the processor 302. When the processor 302 executes the program, the above method steps for pushing the application are implemented.

[0198] Among them, Figure 5In the embodiment of the present invention, a bus architecture (represented by bus 500) is shown, which may include any number of interconnected buses and bridges, and bus 500 links various circuits including one or more processors represented by processor 502 and memory represented by memory 504. Bus 500 may also link various other circuits such as peripherals, voltage regulators, and power management circuits, which are well known in the art and are therefore not further described herein. Bus interface 506 provides an interface between bus 500 and receiver 501 and transmitter 503. Receiver 501 and transmitter 503 may be the same element, namely a transceiver, providing a unit for communicating with various other devices over a transmission medium. Processor 502 is responsible for managing bus 500 and general processing, while memory 504 may be used to store data used by processor 502 when performing operations.

[0199] Embodiment 4

[0200] Based on the same inventive concept, a fourth embodiment of the present invention provides a computer-readable storage medium on which a computer program is stored. When the program is executed by a processor, the method steps for pushing the application program are implemented.

[0201] The algorithm and display provided herein are not inherently related to any particular computer, virtual system or other device. Various general purpose systems can also be used together with the teachings based on this. According to the above description, it is obvious that the structure required for constructing such systems. In addition, the present invention is not directed to any specific programming language either. It should be understood that various programming languages ​​can be utilized to realize the content of the present invention described herein, and the description of the above specific languages ​​is for disclosing the best mode of the present invention.

[0202] In the description provided herein, a large number of specific details are described. However, it is understood that embodiments of the present invention can be practiced without these specific details. In some instances, well-known methods, structures and techniques are not shown in detail so as not to obscure the understanding of this description.

[0203] Similarly, it should be understood that in order to streamline the present disclosure and aid in understanding one or more of the various inventive aspects, in the above description of exemplary embodiments of the present invention, various features of the present invention are sometimes grouped together into a single embodiment, figure, or description thereof. However, this disclosed method should not be interpreted as reflecting the intention that the claimed invention requires more features than those explicitly recited in each claim. More specifically, as reflected in the claims below, inventive aspects lie in less than all the features of the individual embodiments disclosed above. Therefore, the claims that follow the specific embodiment are hereby expressly incorporated into the specific embodiment, with each claim itself serving as a separate embodiment of the present invention.

[0204] Those skilled in the art will appreciate that the modules in the devices in the embodiments may be adaptively changed and arranged in one or more devices different from the embodiments. The modules or units or components in the embodiments may be combined into one module or unit or component, and in addition they may be divided into a plurality of submodules or subunits or subcomponents. Except that at least some of such features and / or processes or units are mutually exclusive, all features disclosed in this specification (including the accompanying claims, abstracts and drawings) and all processes or units of any method or device disclosed in this manner may be combined in any combination. Unless otherwise expressly stated, each feature disclosed in this specification (including the accompanying claims, abstracts and drawings) may be replaced by an alternative feature providing the same, equivalent or similar purpose.

[0205] In addition, those skilled in the art will appreciate that, although some embodiments herein include certain features included in other embodiments but not other features, the combination of features of different embodiments is meant to be within the scope of the present invention and form different embodiments. For example, in the claims below, any one of the claimed embodiments may be used in any combination.

[0206] The various component embodiments of the present invention may be implemented in hardware, or in software modules running on one or more processors, or in a combination thereof. It should be understood by those skilled in the art that a microprocessor or digital signal processor (DSP) may be used in practice to implement some or all of the functions of some or all of the components of the device or server for intelligent scheduling according to an embodiment of the present invention. The present invention may also be implemented as a device or device program (e.g., a computer program and a computer program product) for executing part or all of the methods described herein. Such a program implementing the present invention may be stored on a computer-readable medium, or may be in the form of one or more signals. Such a signal may be downloaded from an Internet website, or provided on a carrier signal, or provided in any other form.

[0207] It should be noted that the above embodiments illustrate the present invention rather than limit it, and that those skilled in the art may devise alternative embodiments without departing from the scope of the appended claims. In the claims, any reference symbol between brackets shall not be construed as a limitation on the claims. The word "comprising" does not exclude the presence of elements or steps not listed in the claims. The word "one" or "an" preceding an element does not exclude the presence of a plurality of such elements. The present invention may be implemented by means of hardware comprising a number of different elements and by means of a suitably programmed computer. In a unit claim enumerating a number of devices, several of these devices may be embodied by the same hardware item. The use of the words first, second, and third, etc., does not indicate any order. These words may be interpreted as names.

[0208] The present invention discloses A1, a method for pushing an application program, comprising:

[0209] Receive search requests sent by users;

[0210] Generate a corresponding configuration file based on the search request; the configuration file includes a target push strategy and an application ranking model;

[0211] Execute the target push strategy and use the application ranking model to obtain a target application list to be pushed to the user;

[0212] receiving feedback data from the user regarding the target application list;

[0213] The application ranking model is updated based on the feedback data and historical data information, wherein the historical data information specifically includes user behavior data of historical users and feature data of historical applications.

[0214] A2. The method for pushing an application as described in A1 is characterized in that, before receiving a search request sent by a user, it also includes:

[0215] Obtaining user behavior data of the historical user;

[0216] Obtaining characteristic data of the historical application;

[0217] Based on the user behavior data of the historical user and the characteristic data of the historical application, a preset algorithm is used to obtain a list of historical application corresponding to the user behavior data of the historical user;

[0218] Obtaining training samples based on user behavior data of historical users and a list of historical applications corresponding to the user behavior data of the historical users;

[0219] Inputting the training samples into M machine learning models for training to obtain M first sorting models;

[0220] A ranking model with the highest accuracy is obtained from the M first ranking models as the application ranking model.

[0221] A3. The method for pushing an application as described in A2, wherein the user behavior data of the historical users is any one or more combinations of the following:

[0222] The geographical data of the historical user, the model data of the device used by the historical user, the demographic data of the historical user, the value data generated by the historical user for the historical application, the application data installed by the historical user, the browsing record data of the historical user, and the usage data of the installed application by the historical user.

[0223] A4. The method for pushing an application as described in A2 is characterized in that the characteristic data of the application is specifically any one or a combination of the following data:

[0224] The age group data of users to which the application is applicable, similar applications to the application, and comprehensive evaluation data of the application by users.

[0225] A5. The method for pushing an application as described in A2 is characterized in that after inputting the training samples into M machine learning models for training and obtaining M first ranking models, it also includes:

[0226] Obtaining a test sample based on user behavior data of historical users and a list of historical applications corresponding to the user behavior data of the historical users;

[0227] Using the test samples to test the M first sorting models respectively, to obtain output results of the M first sorting models;

[0228] Compare the output results of the M first ranking models with the historical application lists corresponding to the user behavior data in the test sample to obtain M comparison results;

[0229] The acquiring the ranking model with the highest accuracy from the M first ranking models as the application ranking model specifically includes:

[0230] A ranking model with the highest matching degree is selected from the M comparison results as the application ranking model.

[0231] A6. The method for pushing applications as described in A1, characterized in that after receiving the feedback data of the user regarding the target application list, it further comprises:

[0232] Collecting the user behavior data of the user, the feedback data, and the target application list for performance testing;

[0233] The performance test results are displayed through the display interface.

[0234] A7. The method for pushing an application as described in A1, characterized in that the step of generating a corresponding configuration file based on the search request specifically includes:

[0235] Based on the search request, obtaining user behavior data of the user in the search request;

[0236] Based on the user behavior data of the user, a target push strategy and an application ranking model corresponding to the user behavior data of the user are obtained.

[0237] A8. The method for pushing applications as described in A7, characterized in that executing the target push strategy and using the application ranking model to obtain a list of target applications pushed to the user specifically includes:

[0238] Executing the target push strategy, inputting the user behavior data of the user into the application ranking model, and obtaining a target application list corresponding to the user behavior data of the user;

[0239] The target application list is pushed to the user.

[0240] A9. The method for pushing applications as described in A1 is characterized in that the application ranking model is updated based on the feedback data and historical data information, specifically comprising:

[0241] Using the feedback data and historical data information as new training samples;

[0242] Inputting the new training samples into M machine learning models to obtain M second sorting models;

[0243] The ranking model with the highest accuracy is selected from the M second ranking models as the updated application ranking model.

[0244] A10. The method for pushing an application as described in A9, characterized in that after updating the application ranking model based on the feedback data and historical data information, it also includes:

[0245] Receive search requests from other users, and obtain corresponding configuration files based on the search requests from other users; wherein the configuration files corresponding to the other users include corresponding target push strategies and the application ranking model;

[0246] After the updated application ranking model is updated into the memory, the target push strategy corresponding to the other users is executed, and the target application list pushed to the other users is obtained by directly using the updated application ranking model.

[0247] B11. A device for pushing an application, comprising:

[0248] A first receiving module, used to receive a search request sent by a user;

[0249] A generation module, used to generate a corresponding configuration file based on the search request; the configuration file includes a target push strategy and an application ranking model;

[0250] A first execution module, configured to execute the target push strategy and obtain a target application list to be pushed to the user by using the application ranking model;

[0251] A second receiving module, configured to receive feedback data from the user regarding the target application list;

[0252] An updating module is used to update the application ranking model based on the feedback data and historical data information, wherein the historical data information specifically includes user behavior data of historical users and feature data of historical applications.

[0253] B12. The device for pushing an application as described in B11, characterized in that it also includes:

[0254] A first acquisition module, used to acquire user behavior data of the historical user;

[0255] A second acquisition module, used to acquire characteristic data of the historical application;

[0256] A first obtaining module, configured to obtain a list of historical applications corresponding to the user behavior data of the historical user by using a preset algorithm based on the user behavior data of the historical user and the feature data of the historical applications;

[0257] A training sample acquisition module, used to acquire training samples based on user behavior data of historical users and a list of historical applications corresponding to the user behavior data of the historical users;

[0258] A first training module, used for inputting the training samples into M machine learning models for training to obtain M first sorting models;

[0259] A selection module is used to obtain the ranking model with the highest accuracy from the M first ranking models as the application ranking model.

[0260] B13. The device for pushing an application as described in B12, wherein the user behavior data of the historical users is any one or more combinations of the following:

[0261] The geographical data of the historical user, the model data of the device used by the historical user, the demographic data of the historical user, the value data generated by the historical user for the historical application, the application data installed by the historical user, the browsing record data of the historical user, and the usage data of the installed application by the historical user.

[0262] B14. The device for pushing an application as described in B12 is characterized in that the characteristic data of the application is specifically any one or a combination of the following data:

[0263] The age group data of users to which the application is applicable, similar applications to the application, and comprehensive evaluation data of the application by users.

[0264] B15. The device for pushing an application as described in B12, characterized in that it also includes:

[0265] A test sample acquisition module, used to acquire a test sample based on user behavior data of historical users and a list of historical applications corresponding to the user behavior data of the historical users;

[0266] A testing module, used to test the M first sorting models respectively using the test samples to obtain output results of the M first sorting models;

[0267] A comparison result obtaining module, used to compare the output results of the M first ranking models with the historical application lists corresponding to the user behavior data in the test sample, respectively, to obtain M comparison results;

[0268] The selection module is specifically used to select the ranking model with the highest matching degree from the M comparison results as the application ranking model.

[0269] B16. The device for pushing an application as described in B11, characterized in that it also includes:

[0270] A performance testing module, used to collect the user behavior data of the user, the feedback data, and the target application list for performance testing;

[0271] The display module is used to display the performance test results through a display interface.

[0272] B17. The device for pushing an application as described in B11, characterized in that the generating module specifically comprises:

[0273] A first obtaining unit, configured to obtain user behavior data of the user in the search request based on the search request;

[0274] The second obtaining unit is used to obtain a target push strategy and an application ranking model corresponding to the user behavior data of the user based on the user behavior data of the user.

[0275] B18. The device for pushing an application as described in B17, characterized in that the execution module specifically includes:

[0276] A first training unit is used to execute the target push strategy, input the user behavior data of the user into the application ranking model, and obtain a target application list corresponding to the user behavior data of the user;

[0277] A pushing unit is used to push the target application list to the user.

[0278] B19. The device for pushing an application as described in B11, characterized in that the update module specifically includes:

[0279] A new training sample acquisition unit, used to use the feedback data and historical data information as new training samples;

[0280] A second training unit, used for inputting the new training samples into M machine learning models to obtain M second sorting models;

[0281] The second selection unit is used to select the ranking model with the highest accuracy from the M second ranking models as the updated application ranking model.

[0282] B20. The device for pushing an application as described in B19, characterized in that it also includes:

[0283] A third receiving module is used to receive search requests from other users, and obtain corresponding configuration files based on the search requests from other users; wherein the configuration files corresponding to the other users include corresponding target push strategies and the application ranking model;

[0284] The second execution module is used to execute the target push strategy corresponding to the other users after updating the updated application ranking model into the memory, and directly use the updated application ranking model to obtain the target application list pushed to the other users.

[0285] C21. A computer device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein when the processor executes the program, the method steps described in any one of A1-A10 are implemented.

[0286] D22. A computer-readable storage medium having a computer program stored thereon, characterized in that when the program is executed by a processor, the method steps described in any one of A1-A10 are implemented.

Claims

1. A method for pushing an application, characterized in that: include: Receive search requests sent by users; generating a corresponding configuration file based on the search request; The configuration file includes a target push strategy and an application program sorting model; Execute the target push strategy and use the application ranking model to obtain a target application list to be pushed to the user; receiving feedback data from the user regarding the target application list; Update the application ranking model based on the feedback data and historical data information, wherein the historical data information specifically includes user behavior data of historical users and feature data of historical applications; The generating a corresponding configuration file based on the search request specifically includes: Based on the search request, obtaining user behavior data of the user in the search request; Based on the user behavior data of the user, obtaining a target push strategy and an application ranking model corresponding to the user behavior data of the user; Before receiving the search request sent by the user, it also includes: Obtaining user behavior data of the historical user; Obtaining characteristic data of the historical application; Based on the user behavior data of the historical user and the feature data of the historical application, a preset algorithm is used to obtain a list of historical application corresponding to the user behavior data of the historical user; Obtaining training samples based on user behavior data of historical users and a list of historical applications corresponding to the user behavior data of the historical users; Inputting the training samples into M machine learning models for training to obtain M first sorting models; A ranking model with the highest accuracy is obtained from the M first ranking models as the application ranking model.

2. The method according to claim 1, characterized in that The user behavior data of the historical users is specifically any one or more combinations of the following: The geographical data of the historical user, the model data of the device used by the historical user, the demographic data of the historical user, the value data generated by the historical user for the historical application, the application data installed by the historical user, the browsing record data of the historical user, and the usage data of the installed application by the historical user.

3. The method according to claim 1, characterized in that The characteristic data of the application program is specifically any one or a combination of the following data: The age group data of users to which the application is applicable, similar applications to the application, and comprehensive evaluation data of the application by users.

4. The method according to claim 1, characterized in that After inputting the training samples into M machine learning models for training to obtain M first sorting models, the method further includes: Obtaining a test sample based on user behavior data of historical users and a list of historical applications corresponding to the user behavior data of the historical users; Using the test samples to test the M first sorting models respectively, to obtain output results of the M first sorting models; Compare the output results of the M first ranking models with the historical application lists corresponding to the user behavior data in the test sample to obtain M comparison results; The acquiring the ranking model with the highest accuracy from the M first ranking models as the application ranking model specifically includes: A ranking model with the highest matching degree is selected from the M comparison results as the application ranking model.

5. The method according to claim 1, characterized in that After receiving the feedback data from the user regarding the target application list, the method further includes: Collecting the user behavior data of the user, the feedback data, and the target application list for performance testing; The performance test results are displayed through the display interface.

6. The method according to claim 1, characterized in that The executing the target push strategy and obtaining a target application list pushed to the user by using the application ranking model specifically includes: Executing the target push strategy, inputting the user behavior data of the user into the application ranking model, and obtaining a target application list corresponding to the user behavior data of the user; The target application list is pushed to the user.

7. The method according to claim 1, characterized in that Updating the application ranking model based on the feedback data and historical data information specifically includes: Using the feedback data and historical data information as new training samples; Inputting the new training samples into M machine learning models to obtain M second sorting models; The ranking model with the highest accuracy is selected from the M second ranking models as the updated application ranking model.

8. The method according to claim 7, characterized in that After updating the application ranking model based on the feedback data and historical data information, the method further includes: Receive search requests from other users, and obtain corresponding configuration files based on the search requests from other users; wherein the configuration files corresponding to the other users include corresponding target push strategies and the application ranking model; After the updated application ranking model is updated into the memory, the target push strategy corresponding to the other users is executed, and the target application list pushed to the other users is obtained by directly using the updated application ranking model.

9. A device for pushing an application, characterized in that: include: A first receiving module, used to receive a search request sent by a user; A generating module, used to generate a corresponding configuration file based on the search request; The configuration file includes a target push strategy and an application program sorting model; A first execution module, configured to execute the target push strategy and obtain a target application list to be pushed to the user by using the application ranking model; A second receiving module, configured to receive feedback data from the user regarding the target application list; An updating module, configured to update the application ranking model based on the feedback data and historical data information, wherein the historical data information specifically includes user behavior data of historical users and feature data of historical applications; The generation module specifically includes: A first obtaining unit, configured to obtain user behavior data of the user in the search request based on the search request; A second obtaining unit, configured to obtain, based on the user behavior data of the user, a target push strategy and an application ranking model corresponding to the user behavior data of the user; Also includes: A first acquisition module, used to acquire user behavior data of the historical user; A second acquisition module, used to acquire characteristic data of the historical application; A first obtaining module, configured to obtain a list of historical applications corresponding to the user behavior data of the historical user by using a preset algorithm based on the user behavior data of the historical user and the feature data of the historical applications; A training sample acquisition module, used to acquire training samples based on user behavior data of historical users and a list of historical applications corresponding to the user behavior data of the historical users; A first training module, used for inputting the training samples into M machine learning models for training to obtain M first sorting models; A selection module is used to obtain the ranking model with the highest accuracy from the M first ranking models as the application ranking model.

10. The device according to claim 9, characterized in that The user behavior data of the historical users is specifically any one or more combinations of the following: The geographical data of the historical user, the model data of the device used by the historical user, the demographic data of the historical user, the value data generated by the historical user for the historical application, the application data installed by the historical user, the browsing record data of the historical user, and the usage data of the installed application by the historical user.

11. The device according to claim 9, characterized in that The characteristic data of the application program is specifically any one or a combination of the following data: The age group data of users to which the application is applicable, similar applications to the application, and comprehensive evaluation data of the application by users.

12. The device according to claim 9, characterized in that Also includes: A test sample acquisition module, used to acquire a test sample based on user behavior data of historical users and a list of historical applications corresponding to the user behavior data of the historical users; A testing module, used to test the M first sorting models respectively using the test samples to obtain output results of the M first sorting models; A comparison result obtaining module, used to compare the output results of the M first ranking models with the historical application lists corresponding to the user behavior data in the test sample, respectively, to obtain M comparison results; The selection module is specifically used to select the ranking model with the highest matching degree from the M comparison results as the application ranking model.

13. The device according to claim 9, characterized in that Also includes: A performance testing module, used to collect the user behavior data of the user, the feedback data, and the target application list for performance testing; The display module is used to display the performance test results through a display interface.

14. The device according to claim 9, characterized in that The execution module specifically includes: A first training unit is used to execute the target push strategy, input the user behavior data of the user into the application ranking model, and obtain a target application list corresponding to the user behavior data of the user; A pushing unit is used to push the target application list to the user.

15. The device according to claim 9, characterized in that The update module specifically includes: A new training sample acquisition unit, used to use the feedback data and historical data information as new training samples; A second training unit, used for inputting the new training samples into M machine learning models to obtain M second sorting models; The second selection unit is used to select the ranking model with the highest accuracy from the M second ranking models as the updated application ranking model.

16. The device according to claim 15, characterized in that Also includes: A third receiving module is used to receive search requests from other users, and obtain corresponding configuration files based on the search requests from other users; wherein the configuration files corresponding to the other users include corresponding target push strategies and the application ranking model; The second execution module is used to execute the target push strategy corresponding to the other users after updating the updated application ranking model into the memory, and directly use the updated application ranking model to obtain the target application list pushed to the other users.

17. A computer device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that: When the processor executes the program, the method steps according to any one of claims 1 to 8 are implemented.

18. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the program is executed by a processor, the method steps described in any one of claims 1 to 8 are implemented.

Citation Information

Patent Citations

  • Page pushing method and device

    CN105117491A

  • Item recommendation method and device

    CN105446970A

  • Application program recommendation method and device

    CN107977445A

  • Page personalized sorting method, page personalized sorting apparatus and electronic device

    CN108829808A