Disclosure of Invention
The embodiment of the application aims at a push time determining method, a program product, electronic equipment and a storage medium, wherein behavior differences of different users are considered in the process of determining push time, and the accuracy of push time is improved.
The embodiment of the application provides a pushing time determining method, which comprises the steps of obtaining original characteristics of a user to be predicted, wherein the original characteristics comprise user information characteristics of the user to be predicted and interaction behavior characteristics of the user to be predicted in a plurality of time windows, obtaining cross characteristics of the user to be predicted in the plurality of time windows according to the user information characteristics and the interaction behavior characteristics, wherein the cross characteristics are used for representing interaction behaviors of the user to be predicted containing the user information characteristics in the time windows, inputting the cross characteristics of the user to be predicted in the plurality of time windows into a pre-trained user preference analysis model to obtain preference degrees of the user to be predicted in the plurality of time windows, and determining pushing time based on the preference degrees of the user to be predicted in the plurality of time windows.
In the implementation process, through pre-training the user preference analysis model, the user preference analysis model can learn the behavior patterns of the user to be predicted in different time periods, the preference degree of the user to be predicted in different time windows is predicted by using the model, and the probability of predicting the click of the information to be predicted in each time window by the user to be predicted is obtained, so that more accurate pushing time is determined.
Optionally, in the embodiment of the application, the cross characteristics of the user to be predicted in a plurality of time windows are obtained according to the user information characteristics and the interactive behavior characteristics, and the cross characteristics of the user to be predicted in the plurality of time windows are obtained by respectively processing the user information characteristics and the interactive behavior characteristics of the user to be predicted in the plurality of time windows according to a preset form, wherein the preset form comprises at least one of Cartesian product, polynomial processing or conditional combination.
In the implementation process, the user information characteristics and the interactive behavior characteristics of the user to be predicted in a plurality of time windows can be effectively combined through the cross characteristics, so that richer cross characteristics are generated, and the prediction capability and accuracy of the model are improved. And a plurality of cross characteristic generating modes are provided, and the cross characteristic generating modes can be adjusted and optimized according to service scenes and data characteristics.
Optionally, in the embodiment of the application, before the cross characteristics of the user to be predicted in a plurality of time windows are input into a pre-trained user preference analysis model to obtain the preference degree of the user to be predicted in the plurality of time windows, the method further comprises the steps of extracting sample original characteristics from historical behaviors of the sample user, wherein the sample original characteristics comprise sample information characteristics and sample behavior characteristics of the sample user in the plurality of time windows, determining the sample cross characteristics of the sample user in the plurality of time windows based on the sample information characteristics and the sample behavior characteristics of the sample user in the plurality of time windows, training a preset user preference initial analysis model by utilizing the sample cross characteristics of the sample user in the plurality of time windows to obtain the user preference analysis model, and the user preference initial analysis model comprises a depth factor decomposition machine model.
In the implementation process, sample original features can be extracted from the historical behaviors of the sample user, sample cross features are determined, the features are used for training the user preference initial analysis model, and finally the preference degree of the user to be predicted in a plurality of time windows is obtained. The method can effectively combine static information (user information characteristics) and dynamic behavior (cross characteristics of the user to be predicted in a plurality of time windows) of the user to be predicted, and improves accuracy and efficiency of preference analysis of the user to be predicted.
Optionally, in the embodiment of the application, the pushing time is determined based on the preference degree of the user to be predicted in a plurality of time windows, and the method comprises the steps of sorting the preference degree of the user to be predicted in the plurality of time windows to obtain a sorting result, determining the pushing time according to the sorting result, or determining the time window with the preference degree of the user to be predicted in the plurality of time windows larger than a preset threshold value as the pushing time, wherein the interval of the pushing time is larger than a preset interval.
In the implementation process, the pushing time is determined according to the preference degree of the user to be predicted in a plurality of time windows, so that the pushing time which is more likely to be active by the user to be predicted is effectively identified, the accuracy and the effect of pushing are improved, and the pushing effect is improved.
Optionally, in the embodiment of the application, the pushing time is determined based on the preference degree of the user to be predicted in a plurality of time windows, the method comprises the steps of obtaining advertisement request data sent by a user terminal, wherein the advertisement request data comprises user context information, the user context information comprises equipment identification and a request time stamp, a user account number associated with the equipment identification is determined according to the equipment identification, the pushing time is determined based on the preference degree of the user to be predicted in the plurality of time windows and the request time stamp, and after the pushing time is determined, the pushing information is sent to the user to be predicted according to the user account number and the pushing time.
In the implementation process, the pushing time determined by the preference degree of the user to be predicted in a plurality of time windows can be optimized by using the request time stamp, and the optimized pushing time combines the result of offline data prediction, the real-time behavior of the user to be predicted, the pushing time is more accurate, and the pushing resource utilization rate is improved.
Optionally, in the embodiment of the application, the push information is sent to the user to be predicted according to the user account and the push time, and the method comprises the steps of generating a push content request corresponding to the user to be predicted according to the user account and the push time, wherein the push content request is used for obtaining personalized push content generated or selected for the user to be predicted, sending the push content request to a push system, receiving the push information returned by the push system according to the push content request, wherein the push information is the personalized push content generated or selected by the push system for the user to be predicted, and sending the push information to the user to be predicted after the fact that the time interval between the current time and the previous push is larger than the preset interval is determined.
In the implementation process, the push content request is constructed through the user account number and the push time, so that the push information is sent to the user to be predicted at a proper time, and meanwhile, the interference of the user to be predicted caused by too frequent pushing is avoided. The high efficiency of the push service and the experience of the user to be predicted are improved.
Optionally, in the embodiment of the application, the original characteristics of the user to be predicted are acquired, wherein the original characteristics comprise user information of the user to be predicted is acquired through calling an interface or from a database, the user information characteristics are acquired according to the user information, the user information characteristics comprise at least one of user registration information, user equipment information, user position information or user account information, the interactive behavior characteristics of the user to be predicted in a plurality of time windows are determined according to log data or sensor data of electronic equipment used by the user to be predicted, and the interactive behavior characteristics comprise at least one of click characteristics, browsing characteristics, purchasing characteristics, searching characteristics or social characteristics.
In the implementation process, the original characteristics of the user to be predicted, including the user information characteristics and the user interaction behavior characteristics to be predicted, are effectively obtained. The characteristics can better reflect the preference degree of the user to be predicted on different time windows, thereby improving the accuracy of personalized recommendation and the like.
The embodiment of the application also provides a pushing time determining device which comprises an acquisition feature module used for acquiring original features of the user to be predicted, wherein the original features comprise user information features of the user to be predicted and interaction behavior features of the user to be predicted in a plurality of time windows, a cross feature module used for acquiring cross features of the user to be predicted in the plurality of time windows according to the user information features and the interaction behavior features, a model analysis module used for representing interaction behaviors of the user to be predicted including the user information features in the time windows, and a pushing time determining module used for determining pushing time based on the preference degrees of the user to be predicted in the plurality of time windows, wherein the model analysis module is used for inputting the cross features of the user to be predicted in the plurality of time windows into a pre-trained user preference analysis model to obtain the preference degrees of the user to be predicted in the plurality of time windows.
In a third aspect, embodiments of the present application also provide a computer program product comprising computer program instructions which, when executed by a processor, perform the method of the first aspect or any implementation of the first aspect.
In a fourth aspect, embodiments of the present application also provide an electronic device comprising a processor and a memory storing computer program instructions that, when executed by the processor, perform the method provided by the first aspect or any implementation of the first aspect.
In a fifth aspect, embodiments of the present application also provide a computer readable storage medium having stored thereon computer program instructions which, when executed by a processor, perform the method provided by the first aspect or any implementation of the first aspect.
By adopting the pushing time determining method, the program product, the electronic device and the storage medium, the user preference analysis model can learn the behavior patterns of the users to be predicted in different time periods through pre-training the user preference analysis model, and the preference degree of each user to be predicted in different time windows is predicted by using the model, namely the probability that the users to be predicted click pushing information in each time window is predicted, so that more accurate pushing time is determined.
Detailed Description
Embodiments of the technical scheme of the present application will be described in detail below with reference to the accompanying drawings. The following examples are only for more clearly illustrating the technical aspects of the present application, and thus are merely examples, and are not intended to limit the scope of the present application.
Unless defined otherwise, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this application belongs, and the terms used herein are for the purpose of describing particular embodiments only and are not intended to limit the application.
In the description of embodiments of the present application, the technical terms "first," "second," and the like are used merely to distinguish between different objects and are not to be construed as indicating or implying a relative importance or implicitly indicating the number of technical features indicated, a particular order or a primary or secondary relationship. In the description of the embodiments of the present application, the meaning of "plurality" is two or more unless otherwise specifically defined.
At present, the method for determining the pushing opportunity mainly relies on a fixed time interval algorithm to push information at preset time intervals, but the method can disturb a user if the time intervals are too frequent, and the user can miss or miss the pushed information if the time intervals are too long. Therefore, the pushing time is difficult to grasp the time interval, and the pushing time is inaccurate, so that the problem of wasting pushing resources is caused.
Some schemes further analyze through historical data, for example, the historical data shows that the activity of users at 20:00-21:00 in the evening is higher, the period includes that more users enter the APP, more users click pushing information, more users browse webpage or commodity and other data, so that the pushing time is determined to be 20:00-21:00 in the evening.
The applicant finds that the behavior habits of users with different characteristics are different, for example, different sexes, different professions or different time periods of activity in different age periods, and the embodiment of the application can predict the preference degree of each user in different time windows by using the model by training the user preference analysis model in advance and learning the behavior mode of the user in different time periods, namely, predicting the probability of the user clicking the push information in each time window, thereby determining more accurate push time.
Please refer to fig. 1, which is a flowchart illustrating a push time determining method according to an embodiment of the present application. The pushing time determining method provided by the embodiment of the application can be applied to electronic equipment, wherein the electronic equipment can comprise physical equipment such as a server, a PC (personal computer), a tablet personal computer or a smart phone, or virtual equipment such as a virtual machine or a container, and the electronic equipment can be single equipment, or can be a combination of a plurality of equipment or a cluster of a large number of equipment. The push time determining method may include:
step S110, original characteristics of the user to be predicted are obtained, wherein the original characteristics comprise user information characteristics of the user to be predicted and interaction behavior characteristics of the user to be predicted in a plurality of time windows.
And step 120, acquiring cross characteristics of the user to be predicted in a plurality of time windows according to the user information characteristics and the interactive behavior characteristics, wherein the cross characteristics are used for representing the interactive behavior of the user to be predicted containing the user information characteristics in the time windows.
And S130, inputting the cross characteristics of the user to be predicted in a plurality of time windows into a pre-trained user preference analysis model to obtain the preference degree of the user to be predicted in the plurality of time windows.
Step S140, determining push time based on preference degree of the user to be predicted in a plurality of time windows.
In step S110, the user to be predicted may be a user registered in a certain APP (application program), a user who clicks a certain web page, a user who uses a certain application program, or the like, and these users may be objects that need to push information, which are called users to be predicted. In order to improve the probability of receiving the message by the user to be predicted, the activity of each period of the user to be predicted needs to be predicted, and then better pushing time is determined.
The user information features of the user to be predicted may be information filled in by the user to be predicted when registering, such as age, gender, region, occupation, etc., and the registration information may be directly extracted from a registration form of the user to be predicted. The user information characteristics can be determined according to the personal information updated in the application, such as schools filled in by the personal information characteristics, interested contents and the like, the user information characteristics of the user to be predicted also comprise information such as equipment (such as mobile phones and tablet) information, operating system versions and the like of the user to be predicted, and the equipment information can be obtained through an API (application interface). The user information characteristics of the user to be predicted can also comprise the position information of the user to be predicted, and the position information can be obtained by means of GPS, IP addresses and the like. The original characteristics of the user are merely examples, and a part of the data may be selected as the original characteristics of the user in the actual collection process.
The user interaction behavior feature to be predicted is used for representing dynamic interaction data generated by the user to be predicted when the application or the service is used. The interactive behavior features are acquired or collected in units of time windows, and the length of the time windows can be set according to requirements, for example, the time windows can be set to 15 minutes, 20 minutes, longer or shorter, and the like. The time windows may or may not overlap with each other, for example, 15 minutes is taken as one time window, 08:00-08:15 is taken as one time window, 08:16-08:30 minutes is taken as one time window (indicating that the time windows do not overlap), and 08:01-08:16 minutes is taken as one time window (indicating that the time windows overlap).
The interactive behavior characteristics of the user to be predicted in a plurality of time windows are, for example, page browsing behavior, clicking behavior, scrolling behavior, searching behavior, purchasing behavior, video playing behavior, praise, comment or private letter interactive behavior of the user to be predicted in different time windows.
The method for acquiring the interactive behavior characteristics comprises the steps that operation behaviors of a user to be predicted are recorded in a log file generated in an application running process, user behavior data to be predicted can be obtained through analysis of the log file, and access paths and behavior modes of the user to be predicted are analyzed through recording click operations of the user to be predicted in the application. Click event tracking code may be embedded in the application, recording each click operation of the user to be predicted, or some data analysis tool may also be used to obtain interactive behavior features.
The original characteristics of the user to be predicted can be the original data itself, or the data after preprocessing or conversion. For example, the collected basic information is organized into a structured format, such as an array or list, which is referred to as the user information characteristics of the user to be predicted.
It should be noted that, before the original features of the user to be predicted are obtained, the user to be predicted needs to be explicitly described, authorization of the user to be predicted is obtained, and relevant policies and laws and regulations are followed in the process of obtaining the original features of the user to be predicted.
In step S120, cross features of the user to be predicted in a plurality of time windows are obtained according to the user information features and the interactive behavior features, and the cross features are generated, for example, by combining, splicing or calculating the user information features and the interactive behavior features.
The user information characteristics of the user to be predicted are, for example, age 30 years, sex men, territory city user information characteristics. The interactive behavior characteristics of the user to be predicted in the multiple time windows comprise a time window 1 (08:00-08:15) that the user to be predicted has clicking behaviors, a time window 2 (12:00-12:15) that the user to be predicted has no clicking behaviors, and a time window 3 (20:00-20:15) that the user to be predicted has clicking behaviors. Combining the user information features and the interactive behavior features of the users to be predicted in a plurality of time windows to generate cross features, wherein a 30-year-old male with the urban user information features has clicking behaviors in the time window 1, a 30-year-old male with the urban user information features does not have clicking behaviors in the time window 2, and a 30-year-old male with the urban user information features has clicking behaviors in the time window 3.
The cross features may capture non-linear relationships, improve the interpretability of the model, and improve model performance. Capturing the nonlinear relationship refers to the model learning the nonlinear relationship between features by combining the features. Improving the interpretation of the model means that the cross-over feature can explain how the different features affect the target variable together. Improving the model performance means that the cross feature can improve the prediction accuracy of the model by capturing the interaction effect between the features.
By constructing the cross characteristics of the users to be predicted on different time windows, the model can learn the behavior trends of the users to be predicted with different user information characteristics in different time windows, so that the pushing time can be optimized and the click rate can be improved according to the behavior trends.
In step S130, after the cross features of the user to be predicted in the multiple time windows are built, the cross features of the user to be predicted in the multiple time windows are input into a pre-trained user preference analysis model, where the user preference analysis model is used to determine the preference degree of the user to be predicted in the multiple time windows, and the preference degree can be understood as the activity degree of the user to be predicted in the time windows, and the higher the activity degree, the higher the probability that the user to be predicted clicks push information in the time windows. The preference level may be a score or probability value, the higher the activity representing the user to be predicted in the time window, or the preference level may be a classification, such as high, medium or low.
In step S140, the push time is determined based on the preference degree of the user to be predicted in the multiple time windows, for example, by sorting the preference degree of the user to be predicted in the multiple time windows to obtain a sorting result, and determining the push time according to the sorting result, or determining the time window in which the preference degree of the user to be predicted in the multiple time windows is greater than a preset threshold as the push time.
In the implementation process, through pre-training the user preference analysis model, the user preference analysis model can learn the behavior patterns of the users to be predicted in different time periods, and the preference degree of each user to be predicted in different time windows is predicted by using the model, namely, the probability that the users to be predicted click on push information in each time window is predicted, so that more accurate push time is determined.
Optionally, in the embodiment of the application, the cross characteristics of the user to be predicted in a plurality of time windows are obtained according to the user information characteristics and the interactive behavior characteristics, and the cross characteristics of the user to be predicted in the plurality of time windows are obtained by respectively processing the user information characteristics and the interactive behavior characteristics of the user to be predicted in the plurality of time windows according to a preset form, wherein the preset form comprises at least one of Cartesian product, polynomial processing or conditional combination.
A cartesian product is a mathematical operation used to generate all possible ordered pairs in two sets. In the user feature processing, cartesian products can be used to generate possible combinations between user information features and interaction behavior features. Illustratively, user information features (e.g., age, gender) and interaction behavior features (e.g., page browsing, click behavior) are selected. A cartesian product operation is performed on each pair of features to generate all possible feature combinations. For example, if the user information features have an age and gender and the interactive behavior features have a browse page user information feature and a page sample user, the Cartesian product will generate four feature combinations (age, page A), (age, page B), (gender, page A), (gender, page B).
Polynomial processing refers to polynomial expansion of features to capture interaction effects between features. In the process of generating the cross features, the user information features and the interactive behavior features of the user to be predicted in a plurality of time windows can be multiplied by each other, or the user information features and the interactive behavior features of the user to be predicted in a plurality of time windows can be combined in a higher order. For example, if there are user information features a (user age) and B (number of clicks of the user in a particular time window), the polynomial processing may generate a plurality of intersecting features a, B, a×b, etc. The complexity of the cross-over feature and the non-linearity capability of the model can also be controlled by adjusting the degree of the polynomial.
The condition combination is to combine the features according to preset condition rules to reflect the logical relationship between the features. A preset condition rule is defined, for example "if the user to be predicted is between 18 and 35 years old and the user to be predicted is active between 8 and 10 pm, a feature is generated to represent this condition". New features are generated according to these preset condition rules. In this process, the user information features AND the interaction behavior features of the user to be predicted in a plurality of time windows can be processed through logical operators (such as AND AND OR), AND the interaction features can be generated through conditional functions.
In the implementation process of the embodiment, the method can effectively combine the user information characteristics and the interactive behavior characteristics of the user to be predicted in a plurality of time windows to generate richer cross characteristics, thereby improving the prediction capability and accuracy of the model. And a plurality of cross characteristic generating modes are provided, and the cross characteristic generating modes can be adjusted and optimized according to service scenes and data characteristics.
Optionally, in the embodiment of the present application, before the cross features of the user to be predicted in the multiple time windows are input into the pre-trained user preference analysis model to obtain the preference degrees of the user to be predicted in the multiple time windows, the user preference analysis model should be trained first, and a process of training the user preference analysis model is described below.
And extracting sample original characteristics from the historical behaviors of the sample user, wherein the sample original characteristics comprise sample information characteristics and sample behavior characteristics of the sample user in a plurality of time windows. The historical behaviors of the sample user in the historical time period, such as the gender, age, occupation, academic and other sample information features of the sample user, and the browsing behaviors, clicking behaviors, searching behaviors and the like of the sample user in the last 3 months, can be obtained through log file analysis, embedded codes and the like.
Based on the sample information features and the sample behavior features of the sample user in a plurality of time windows, determining sample cross features of the sample user in a plurality of time windows, wherein the sample cross features are generated in a similar way to the cross features, and at least one of Cartesian product, polynomial processing or conditional combination can be adopted to process the sample information features and the sample behavior features of the sample user in a plurality of time windows to obtain the sample cross features.
Training a preset user preference initial analysis model by using sample cross characteristics of a sample user in a plurality of time windows to obtain a user preference analysis model, wherein the user preference initial analysis model comprises a depth factor decomposition machine model.
The deep factorizer model (DeepFM model) combines the advantages of the Factorizer (FM) and Deep Neural Network (DNN) to learn the low-order and high-order interactions of features through the embedded layer and the fully connected layer. The model is trained DeepFM using sample cross-characteristics of the sample user over multiple time windows, with the model being trained by an optimization algorithm (e.g., adam) and a loss function (e.g., binary cross entropy) to minimize prediction errors and improve accuracy of the model. The depth factor decomposition model DeepFM is an end-to-end model, and can be trained directly from input data to a predicted target, so that the model training process is simplified.
In the implementation process of the embodiment, sample original features can be extracted from the historical behaviors of a sample user, sample cross features are determined, the features are used for training a user preference initial analysis model, and finally the preference degree of the user in a plurality of time windows is obtained. The method can effectively combine static information (user information characteristics) and dynamic behavior (cross characteristics of the user in a plurality of time windows) of the user, and improves accuracy and efficiency of user preference analysis.
Optionally, in the embodiment of the present application, the pushing time is determined based on preference degrees of the user to be predicted in a plurality of time windows, including the following ways:
the first mode includes that preference degrees of users to be predicted in a plurality of time windows are ranked to obtain ranking results, and pushing time is determined according to the ranking results.
And determining a time window, in which the preference degree of the user to be predicted in a plurality of time windows is greater than a preset threshold, as push time, wherein the interval of the push time is greater than a preset interval. When determining the push time, it is ensured that the interval of the push time is greater than a preset interval. This is to avoid disturbing the user to be predicted, while taking into account that the user to be predicted may have different behavior patterns in different time windows. For example, pushing may be set during peak hours where the user to be predicted is active, while avoiding frequent pushing for a short period of time.
In the implementation process of the embodiment, the pushing time is determined according to the preference degree of the user to be predicted in a plurality of time windows, so that the pushing time which is more likely to be active by the user to be predicted is effectively identified, the pushing accuracy and the pushing effect are improved, and the pushing effect is improved.
Optionally, in an embodiment of the present application, determining the push time based on preference degrees of the user to be predicted in a plurality of time windows includes:
The method comprises the steps of obtaining advertisement request data sent by a user terminal, wherein the advertisement request data comprise user context information, and the user context information comprises a device identifier and a request time stamp. For example, when a user to be predicted accesses a web page or opens an application, and the page or application contains an advertisement slot, the user terminal (automatically) triggers an advertisement request data using the page code, the request being initiated by the browser or application client of the user to be predicted, the advertisement request data being used to present an advertisement on the page.
The advertisement request data may include information such as device identification and request time stamp, which helps the advertisement server decide which advertisement to present on the terminal device of the user to be predicted. The advertisement request data may also include, for example, device information (e.g., device type, device identification, operating system version) of the user to be predicted. The network environment of the user to be predicted (e.g., whether Wi-Fi is used or not). The location information of the user to be predicted (requiring authorization of the user to be predicted) may also include browsing history and behavior data of the user to be predicted. Page content information, which may include topics or keywords of pages to be predicted that the user is browsing. Wherein the request time stamp is used for recording the time of advertisement request data sent by the user terminal. It should be noted that, the foregoing automatically sends out the advertisement request data, and the advertisement request data carries information such as the device identifier and the request timestamp, which needs to be authorized by the user to be predicted.
And determining a user account associated with the equipment identifier according to the equipment identifier, wherein the user account can be a user ID account of the user to be predicted, and the user ID account is an identifier for uniquely identifying the user in the application program. By mapping the device identification to the user ID account, the behavior of the same user can be identified and tracked in different devices or sessions. With the user account, personalized push content can be provided for the user more accurately. For example, historical behavior and preferences of the user are determined based on the user account, and related advertisements or notifications are pushed.
The push time is determined based on the user preference to be predicted over a plurality of time windows and the request timestamp. The preference degree of the user to be predicted in a plurality of time windows is obtained through offline data calculation, and the request time stamp reflects the real-time action of the user to be predicted. The pushing time determined by the preference degree of the user to be predicted in a plurality of time windows can be optimized by using the request time stamp, and the optimized pushing time combines the result of offline data prediction and the real-time behavior of the user to be predicted, so that the method is more accurate.
The optimization process is to determine offline pushing opportunities based on preference degrees of users to be predicted in a plurality of time windows, match request time stamps with the offline pushing opportunities and take the time of successful matching as pushing time. After the push time is determined, the method further comprises the step of sending push information to the user to be predicted according to the user account and the push time.
In the implementation process of the embodiment, the pushing time determined by the preference degree of the user to be predicted in a plurality of time windows can be optimized by using the request time stamp, and the optimized pushing time combines the result of offline data prediction and the real-time behavior of the user to be predicted, so that the pushing time is more accurate, and the pushing resource utilization rate is improved.
Optionally, in the embodiment of the present application, sending push information to a user to be predicted according to a user account and push time includes:
And generating a push content request corresponding to the user to be predicted according to the user account number and the push time, wherein the push content request is used for acquiring personalized push content generated or selected by the user to be predicted. The first choice needs to identify the target user to be predicted according to the user account, for example, the database can be queried to obtain related information of the user to be predicted, such as user ID, equipment information, preference setting and the like of the user to be predicted. The push content request includes a user account number, push time and other necessary information, and is used for the push system to acquire personalized content.
The method comprises the steps of sending a push content request to a push system, receiving push information returned by the push system according to the push content request, wherein the push information is personalized push content generated or selected by the push system for a user to be predicted.
The push content request may be sent to the push system, for example, through a call interface. After the push system processes the push content request, personalized push content generated or selected for the user to be predicted is returned. The rear end of the application or service receives the personalized push content, and may perform necessary processing, such as formatting, encoding, etc., in preparation for sending to the user to be predicted at the push time.
In an alternative embodiment, after the push system receives the push content request, the historical behavior data of the user to be predicted may be analyzed according to the information contained therein, including the interactive records of clicking, browsing, purchasing, evaluating, etc. of the user to be predicted. And selecting personalized push content of the user to be predicted according to the user behavior data to be predicted and the push strategy.
Before sending push information, checking the time interval between the current time and the previous push, and ensuring that the interval is larger than the preset time interval. If the time interval between the current time and the previous pushing is smaller than the preset interval, waiting is needed until the time interval requirement is met. And (3) sending push information to the user terminal equipment through push services (such as APNS, FCM and the like) to meet the time interval requirement.
In the implementation process of the embodiment, the push content request is constructed through the user account number and the push time, so that the push information is sent to the user to be predicted at a proper time, and meanwhile, the interference of too frequent pushing to the user to be predicted is avoided. The high efficiency of the push service and the experience of the user to be predicted are improved.
Optionally, in an embodiment of the present application, acquiring original features of a user to be predicted includes:
And acquiring user information of the user to be predicted by calling an interface or acquiring user information characteristics according to the user information, wherein the user information characteristics comprise at least one of user registration information, user equipment information, user position information or user account information. For example, if the user information is stored in a remote service, it may be retrieved through an API call. For example, the REST API is used to obtain user registration information. If the user information is stored in a database, the user information may be obtained using an SQL query or other database query language.
And determining the interactive behavior characteristics of the user to be predicted in a plurality of time windows according to the log data or the sensor data of the electronic equipment used by the user to be predicted, wherein the interactive behavior characteristics comprise at least one of click characteristics, browsing characteristics, purchasing characteristics, searching characteristics or social characteristics.
For example, log data generated by the user to be predicted when using the application or service may be collected, where the log data includes an operation record, a page access record, and the like of the user to be predicted. If the user to be predicted uses a mobile device, data may be collected by sensors of the device, such as accelerometers, gyroscopes, GPS, etc., to obtain a pattern of behavior of the user to be predicted.
The interactive behavior features are extracted, for example, click behaviors of users to be predicted are analyzed, and click features such as the number of clicks, the click interval, the click position and the like are extracted. And analyzing the browsing behaviors of the user to be predicted, and extracting browsing characteristics such as page stay time, browsing paths, access frequency and the like. And analyzing the purchasing behavior of the user to be predicted, and extracting purchasing characteristics such as purchasing frequency, purchasing category, purchasing time and the like. And analyzing the search behavior of the user to be predicted, and extracting search features such as search keywords, search frequency, click search results and the like. And analyzing social behaviors of users to be predicted, and extracting social characteristics such as published content, interaction times, social network structures and the like.
It should be noted that relevant data protection and privacy protection regulations should be adhered to in the process of collection.
In the implementation process of the embodiment, the original characteristics of the user to be predicted, including the user information characteristics and the user interaction behavior characteristics to be predicted, can be effectively obtained. The characteristics can better reflect the preference degree of the user to be predicted on different time windows, thereby improving the accuracy of personalized recommendation and the like.
Referring to fig. 2, a schematic structural diagram of a pushing time determining apparatus according to an embodiment of the present application is provided, and a pushing time determining apparatus 200 is provided according to an embodiment of the present application, including:
the acquisition feature module 210 is configured to acquire original features of a user to be predicted, where the original features include user information features of the user to be predicted and interaction behavior features of the user to be predicted in a plurality of time windows;
The cross feature module 220 is configured to obtain cross features of the user to be predicted in a plurality of time windows according to the user information features and the interaction behavior features, where the cross features are used for characterizing interaction behaviors of the user to be predicted including the user information features in the time windows;
the model analysis module 230 is configured to input cross features of the user to be predicted in a plurality of time windows into a pre-trained user preference analysis model, so as to obtain preference degrees of the user to be predicted in the plurality of time windows;
The push time determining module 240 is configured to determine a push time based on preference degrees of the user to be predicted in a plurality of time windows.
Optionally, in the embodiment of the present application, the pushing time determining device 200 and the cross feature module 220 are specifically configured to process the user information feature and the interactive behavior feature of the user to be predicted in a plurality of time windows according to a preset form, to obtain the cross feature of the user to be predicted in the plurality of time windows, where the preset form includes at least one of cartesian product, polynomial processing, or condition combination.
Optionally, in the embodiment of the present application, the pushing time determining device 200 and the model training module are configured to extract a sample original feature from a historical behavior of a sample user, where the sample original feature includes a sample information feature and a sample behavior feature of the sample user in a plurality of time windows, determine a sample cross feature of the sample user in the plurality of time windows based on the sample information feature and the sample behavior feature of the sample user in the plurality of time windows, train a preset user preference initial analysis model by using the sample cross feature of the sample user in the plurality of time windows, and obtain the user preference analysis model, where the user preference initial analysis model includes a depth factor decomposition machine model.
Optionally, in the embodiment of the present application, the pushing time determining device 200 and the pushing time determining module 240 are specifically configured to sort the preference degrees of the user to be predicted in a plurality of time windows to obtain a sorting result, determine the pushing time according to the sorting result, or determine the time window in which the preference degrees of the user to be predicted in the plurality of time windows are greater than a preset threshold value as the pushing time, where an interval of the pushing time is greater than a preset interval.
Optionally, in the embodiment of the present application, the push time determining apparatus 200, the push time determining module 240 is further configured to obtain advertisement request data sent by a user terminal, where the advertisement request data includes user context information, the user context information includes a device identifier and a request timestamp, determine a user account associated with the device identifier according to the device identifier, and determine push time based on preference degrees of a user to be predicted in a plurality of time windows and the request timestamp. The pushing time determining device 200 further includes a pushing module, configured to send pushing information to the user to be predicted according to the user account number and the pushing time.
Optionally, in the embodiment of the present application, the push time determining device 200 and the push module are specifically configured to generate a push content request corresponding to a user to be predicted according to a user account and a push time, the push content request is configured to obtain personalized push content generated or selected for the user to be predicted, send the push content request to the push system, and receive push information returned by the push system according to the push content request, where the push information is personalized push content generated or selected by the push system for the user to be predicted, and send the push information to the user to be predicted after determining that a time interval between a current time and a previous push is greater than a preset interval.
Optionally, in the embodiment of the present application, the pushing time determining apparatus 200, the obtaining feature module 210 is configured to obtain, through a call interface or by obtaining user information of a user to be predicted from a database, a user information feature according to the user information, where the user information feature includes at least one of user registration information, user equipment information, user location information, or user account information, determine, according to log data or sensor data of an electronic device used by the user to be predicted, an interaction behavior feature of the user to be predicted in a plurality of time windows, where the interaction behavior feature includes at least one of a click feature, a browse feature, a purchase feature, a search feature, or a social feature.
It should be understood that, corresponding to the above embodiment of the push time determining method, the apparatus can perform the steps related to the above embodiment of the method, and specific functions of the apparatus may be referred to the above description, and detailed descriptions are omitted herein as appropriate to avoid repetition. The device includes at least one software functional module that can be stored in memory in the form of software or firmware (firmware) or cured in an Operating System (OS) of the device.
Please refer to fig. 3, which illustrates a schematic structural diagram of an electronic device according to an embodiment of the present application. An electronic device 300 according to an embodiment of the present application includes a processor 310 and a memory 320, where the memory 320 stores machine-readable instructions executable by the processor 310, which when executed by the processor 310, perform a method as described above.
The components shown in fig. 3 may be implemented in hardware, software, or a combination thereof. The electronic device 300 may be a physical device, such as a server, a PC, etc., or may be a virtual device, such as a virtual machine, a virtualized container, etc. The electronic device 300 is not limited to a single device, and may be a combination of a plurality of devices or a cluster of a large number of devices.
The embodiment of the application also provides a storage medium, wherein a computer program is stored on the storage medium, and the computer program is executed by a processor to execute the method.
The storage medium may be implemented by any type of volatile or non-volatile Memory device or combination thereof, such as static random access Memory (Static Random Access Memory, SRAM), electrically erasable Programmable Read-Only Memory (ELECTRICALLY ERASABLE PROGRAMMABLE READ-Only Memory, EEPROM), erasable Programmable Read-Only Memory (Erasable Programmable Read Only Memory, EPROM), programmable Read-Only Memory (PROM), read-Only Memory (ROM), magnetic Memory, flash Memory, magnetic disk, or optical disk.
In the embodiments of the present application, it should be understood that the disclosed apparatus and method may be implemented in other manners. The apparatus embodiments described above are merely illustrative, for example, of the flowcharts and block diagrams in the figures that illustrate the architecture, functionality, and operation of possible implementations of apparatus, methods and computer program products according to various embodiments of the present application. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
In addition, the functional modules in the embodiments of the present application may be integrated together to form a single part, or each module may exist alone, or two or more modules may be integrated to form a single part.
The foregoing description is merely an optional implementation of the embodiment of the present application, but the scope of the embodiment of the present application is not limited thereto, and any person skilled in the art may easily think about changes or substitutions within the technical scope of the embodiment of the present application, and the changes or substitutions are covered by the scope of the embodiment of the present application.