An information push method and device

The two-stage decision tree approach addresses the limitations of linear regression in ad slot pricing by using recent samples to determine target attributes and adjust prices, improving pricing accuracy and reducing user costs.

CN111429164BActive Publication Date: 2025-07-15BEIJING JINGDONG SHANGKE INFORMATION TECH CO LTD +1
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN201910022779.X
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2019-01-10
Publication Date
2025-07-15
Estimated Expiration
2039-01-10

AI Technical Summary

Technical Problem

The existing advertising position pricing scheme based on linear regression model cannot ensure the rationality of advertising position information, resulting in increased user usage costs, unable to take into account multiple nonlinear data indicators and seasonal fluctuations, and is susceptible to outliers.

Method used

The second-stage decision tree method is adopted to generate the first decision tree and the second decision tree. By discretely processing attributes, the principle of information gain maximization is used to construct decision tree nodes, and the time attributes are used to sense market changes and adjust advertising space bids.

Benefits of technology

It improves the accuracy of information push, reduces user usage costs, responds flexibly to changes in market demand, and avoids the risk of unreasonable budget allocation.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN111429164B_ABST
    Figure CN111429164B_ABST
Patent Text Reader

Abstract

The present application discloses an information push method and apparatus. The method includes: The server uses a first sample set within a preset sampling time period corresponding to the current moment, and generates a first decision tree according to a preset decision tree generation method. Using the first decision tree, the server determines a first target attribute of the current data object; the first target attribute belongs to the attributes possessed by the samples in the first sample set; The server uses a second sample set within the sampling time period, generates a second decision tree according to the decision tree generation method, and uses the second decision tree to determine a second target attribute of the data object; the second target attribute belongs to the attributes possessed by the samples in the second sample set; The server determines a target push attribute of the data object according to the first target attribute and the second target attribute, and sends the target push attribute to the corresponding user terminal. By adopting the present invention, the accuracy of the pushed information can be improved, and the usage cost of the user can be effectively reduced.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to computer application technology, and particularly to a method and device for information push. Background Art

[0002] In existing advertising space charging systems, the charge is usually based on the number of downloads. When actually settling accounts, the download unit price is not fixed, but a pricing information for the advertising space is determined by a bidding method similar to an auction.

[0003] Determining the advertising space price for a user based on a linear regression model is one of the common solutions in the above system. In this solution, the relationship between advertising effect indicators such as exposure, download volume, and activation volume and the bid is regarded as a linearly varying function, and a linear combination function of these attributes is learned through given samples for bid prediction. Since there are multiple attributes, a multiple linear regression model is generally used. The multiple linear regression model attempts to learn:

[0004] f(x) = w T x + b, such that

[0005] The advertising effect indicator is a sample x = (x1, x2,..., x d ) described by d attributes, and the bid y = (y1, y2,..., y m ). Combining w and b into a vector form, Representing the data set D as an m×(d + 1) matrix X, where each row corresponds to a sample data, and the first d elements in the matrix columns correspond to d attribute values, and the elements in the last column are always 1

[0006]

[0007] In the case where (X T X) is a full-rank matrix or a positive definite matrix, The adjoint matrix solution formula of

[0008]

[0009] Then the finally learned multiple linear regression model is:

[0010]

[0011] where, (X T X) -1 is the inverse matrix of (X T X),

[0012] In the process of actually implementing the present invention, the applicant found that the above-mentioned traditional advertising space pricing scheme based on the linear regression model is limited by the limitations of the linear regression model, and cannot ensure the rationality of the advertising space information sent to users, which will in turn increase the user's usage cost. The specific analysis is as follows:

[0013] 1. The linear regression model is only applicable to linear data, while the advertising bidding sample data is often non-linear data, with multiple evaluation indicators such as exposure, download volume, activation volume, cost, ECPM (earning cost per mille), download unit price, etc., and there is an inverse relationship between some indicators, which cannot be judged based on the rise or fall of a single data dimension, nor can it take into account the maximization of the effects of all data dimensions.

[0014] 2. The advertising effect fluctuates greatly due to seasons and holiday cycles, and also fluctuates significantly at different times of the day. Moreover, frequent e-commerce promotion activities have exacerbated the frequency and irregularity of this fluctuation. And linear regression is easily affected by outliers. The goal of linear regression is to obtain the "optimal fit" straight line for all training data. If there are outliers in the data set that do not conform to the overall pattern, the final result will have a large deviation.

[0015] 3. The regression equation is only a speculation, which affects the diversity of factors and the unpredictability of some factors, making regression analysis limited in some cases. Summary of the Invention

[0016] In view of this, the main object of the present invention is to provide an information push method and device, which can improve the accuracy of the pushed information and effectively reduce the user's usage cost.

[0017] To achieve the above object, the technical solution proposed by the embodiments of the present invention is as follows:

[0018] An information push method, comprising:

[0019] The server uses the first sample set within the preset sampling time period corresponding to the current moment, and generates a first decision tree according to the preset decision tree generation method, and uses the first decision tree to determine the first target attribute of the current data object; the first target attribute belongs to the attributes of the samples in the first sample set;

[0020] The server uses the second sample set within the sampling time period, generates a second decision tree according to the decision tree generation method, and uses the second decision tree to determine the second target attribute of the data object; the second target attribute belongs to the attributes of the samples in the second sample set;

[0021] The server determines the target push attribute of the data object according to the first target attribute and the second target attribute of the data object, and sends the target push attribute to the corresponding user terminal.

[0022] Preferably, the decision tree generation method includes:

[0023] For each attribute of the samples in the current sample set used to generate the decision tree, if the value range of the attribute is continuous, the attribute is discretized, and according to the discretization result, the attribute of each sample in the current sample set is converted into the corresponding discrete value;

[0024] Take the root node of the decision tree as the current working node, and take all samples of the sample set as the sample set of the root node;

[0025] According to the principle of maximizing information gain, construct the next-level nodes for the current working node; the construction includes: dividing the sample set of the current working node according to the attribute with the largest information gain corresponding to the sample set of the current working node, and creating the corresponding number of next-level nodes for the current working node by using the obtained sample subsets as the sample sets of the next-level nodes; among them, different next-level nodes correspond to different sample subsets;

[0026] Traverse each next-level node of the current working node. If the number of samples corresponding to the node is greater than 1, take the node as the working node and return to the previous step for the construction. Otherwise, traverse the next node until the number of samples corresponding to all leaf nodes of the decision tree is 1.

[0027] Preferably, the determination of the attribute with the largest information gain corresponding to the sample set of the current working node includes:

[0028] Classify the samples of the sample set D of the current working node according to the target attribute corresponding to the current decision tree; according to Calculate the information entropy Ent(D) of the sample set D when classifying based on the target attribute; where p k is the proportion of the samples of the kth class in the sample set D of the current working node, and K is the number of categories obtained after classification;

[0029] For each attribute a other than the target attribute corresponding to the sample set of the current working node, classify the samples of the sample set D of the current working node according to the attribute a; according to Calculate the information entropy Ent(D V ) of the sample set D when classifying based on the attribute a; where q vis the proportion of the samples of the v-th class in the sample set D at the current working node, and V is the number of classes obtained after classification; using the Ent(D) and Ent(D V ), according to Calculate the information gain Gain(D,a) obtained by partitioning the sample set D of the current working node according to the attribute a;

[0030] Determine the attribute corresponding to the maximum value among all the information gains Gain(D,a) as the attribute with the largest information gain corresponding to the sample set of the current working node.

[0031] Preferably, the attributes of each sample in the first sample set include: exposure, download volume, activation volume, cost, download unit price, ECPM, and revenue, where the first target attribute is revenue.

[0032] Preferably, the attributes of each sample in the second sample set include: whether it is a working day, time serial number, planned budget, planned activity, number of sub-plans, and step size, where the second target attribute is the step size.

[0033] Preferably, determining the first target attribute of the data object includes:

[0034] According to the other attributes of the data object except the first target attribute, search the first decision tree to obtain the first target attribute of the data object.

[0035] Preferably, determining the second target attribute of the data object includes:

[0036] According to the other attributes of the data object except the second target attribute, search the second decision tree to obtain the second target attribute of the data object.

[0037] Preferably, determining the target push attribute of the data object includes:

[0038] If the plan to which the data object belongs has no sub-plans, then calculate the product of the second target attribute of the data object and the step size unit corresponding to the plan to obtain the bid adjustment amount of the data object in the plan to which it belongs; use the bid adjustment amount to perform corresponding adjustment on the bid value of the data object in the plan to which it belongs according to the adjustment direction matching the first target attribute, and determine the bid value of the data object in the plan to which it belongs after adjustment as the target push attribute of the data object;

[0039] If the plan to which the data object belongs has sub-plans, for each sub-plan of the plan to which the data object belongs, calculate the product of the second target attribute of the data object and the step unit corresponding to the sub-plan to obtain the bid adjustment amount of the data object in the sub-plan; use the bid adjustment amount to correspondingly adjust the bid value of the data object in the sub-plan in the adjustment direction matching the first target attribute; determine the bid value of the data object in the sub-plan obtained after adjustment as the target push attribute of the data object.

[0040] Preferably, the sampling time period is a preset time period before the current time, where the termination time serial number of the time period is the previous time serial number of the current time.

[0041] An information push device includes:

[0042] A target attribute determination unit, configured to generate a first decision tree according to a preset decision tree generation method by using a first sample set within a preset sampling time period corresponding to the current moment, and use the first decision tree to determine a first target attribute of the current data object; the first target attribute belongs to an attribute possessed by samples in the first sample set; generate a second decision tree according to the decision tree generation method by using a second sample set within the sampling time period, and use the second decision tree to determine a second target attribute of the data object; the second target attribute belongs to an attribute possessed by samples in the second sample set;

[0043] A push unit, configured to determine a target push attribute of the data object according to the first target attribute and the second target attribute of the data object, and send the target push attribute to a corresponding user terminal.

[0044] Preferably, the target attribute determination unit is configured to, for each attribute of the samples in the current sample set used to generate the decision tree, if the value range of the attribute is continuous, perform discretization processing on the attribute, and according to the discretization processing result, convert the attribute of each sample in the current sample set into a corresponding discrete value; use the root node of the decision tree as the current working node, and use all the samples of the sample set as the sample set of the root node; construct the next-level node for the current working node according to the principle of maximizing information gain; the construction includes: dividing the sample set of the current working node according to the attribute with the largest information gain corresponding to the sample set of the current working node, and creating the corresponding number of next-level nodes for the current working node by using the obtained sample subsets as the sample sets of the next-level nodes; wherein, different next-level nodes correspond to different sample subsets; traverse each next-level node of the current working node, if the number of samples corresponding to the node is greater than 1, use the node as the working node, and return to the previous step to perform the construction, otherwise, perform the traversal of the next node until the number of samples corresponding to all the leaf nodes of the decision tree is 1.

[0045] Preferably, the target attribute determination unit is configured to classify the samples of the sample set D of the current working node according to the target attribute corresponding to the current decision tree; according to Calculate the information entropy Ent(D) of the sample set D when performing the classification based on the target attribute; wherein, p k is the proportion of the samples of the k-th class in the sample set D of the current working node, and K is the number of classes obtained after classification;

[0046] For each attribute a other than the target attribute corresponding to the sample set of the current working node, classify the samples of the sample set D of the current working node according to the attribute a; according to Calculate the information entropy Ent(D V ) of the sample set D when performing the classification based on the attribute a; wherein, q v is the proportion of the samples of the v-th class in the sample set D of the current working node, and V is the number of classes obtained after classification; use the Ent(D) and Ent(D V ), according to Calculate the information gain Gain(D, a) obtained by dividing the sample set D of the current working node according to the attribute a;

[0047] Determine the attribute corresponding to the maximum value among all the information gains Gain(D, a) as the attribute with the largest information gain corresponding to the sample set of the current working node.

[0048] Preferably, the attributes of each sample in the first sample set include: exposure, downloads, activations, cost, cost per download, ECPM, and revenue, where the first target attribute is revenue.

[0049] Preferably, the attributes of each sample in the second sample set include: whether it is a weekday, time serial number, planned budget, planned activity level, number of sub - plans, and step size, where the second target attribute is the step size.

[0050] Preferably, the target attribute determination unit is configured to, according to the attributes of the data object other than the first target attribute, search the first decision tree to obtain the first target attribute of the data object; according to the attributes of the data object other than the second target attribute, search the second decision tree to obtain the second target attribute of the data object.

[0051] Preferably, the pushing unit is configured to, if the plan to which the data object belongs has no sub - plans, calculate the product of the second target attribute of the data object and the step - size unit corresponding to the plan to which it belongs to obtain the bid adjustment amount of the data object in the plan to which it belongs; use the bid adjustment amount to correspondingly adjust the bid value of the data object in the plan to which it belongs in the adjustment direction matching the first target attribute, and determine the bid value of the data object in the plan to which it belongs after adjustment as the target push attribute of the data object; if the plan to which the data object belongs has sub - plans, for each sub - plan of the plan to which the data object belongs, calculate the product of the second target attribute of the data object and the step - size unit corresponding to the sub - plan to obtain the bid adjustment amount of the data object in the sub - plan; use the bid adjustment amount to correspondingly adjust the bid value of the data object in the sub - plan in the adjustment direction matching the first target attribute; and determine the bid value of the data object in the sub - plan after adjustment as the target push attribute of the data object.

[0052] Preferably, the sampling time period is a preset time period before the current time, where the end time serial number of the time period is the previous time serial number of the current time.

[0053] An information pushing device includes:

[0054] A memory; and a processor coupled to the memory, the processor being configured to execute the method embodiment as described above based on instructions stored in the memory.

[0055] A computer - readable storage medium, on which a computer program is stored, and when the program is executed by a processor, the method embodiment as described above is implemented.

[0056] In summary, the information push method and device proposed by the present invention introduce a two-stage decision tree, reflect the impact brought by the previous decision on the target push attribute determined next time, and form a positive feedback. In this way, the connection between the target push attribute and the corresponding usage effect is fully considered, the change of the actual application demand can be sensitively sensed, and thus the target push attribute can be adjusted in real time to increase the objectivity of the target push attribute. Therefore, the accuracy of pushing information to users can be improved, and further, it is beneficial for users to correctly select the data objects to be used according to the received target push attribute information, effectively reducing the user's usage cost. Brief Description of the Drawings

[0057] Figure 1 It is a schematic flowchart of the method according to an embodiment of the present invention;

[0058] Figure 2 It is a schematic diagram of dividing the root node by using the activation unit price attribute in an embodiment of the present invention;

[0059] Figure 3 It is a schematic diagram of the decision tree according to an embodiment of the present invention;

[0060] Figure 4 It is a schematic diagram of the device structure according to an embodiment of the present invention. Detailed Embodiment

[0061] To make the objectives, technical solutions and advantages of the present invention clearer, the present invention will be further described in detail below with reference to the accompanying drawings and specific embodiments.

[0062] A decision tree is a multi-condition decision processing mechanism based on a tree structure, which allows people to learn a model from a given training data set to classify new examples. Its basic process follows the simple and intuitive idea of the "divide and conquer method", recursively purifies the attributes of the samples, and selects the optimal division attribute. Based on this, in the embodiments of the present invention, a decision tree will be considered, and by introducing a time attribute, the fluctuations at different time periods within a day can be sensitively sensed, so as to make different decisions. And since the change of the advertising activity is also related to the time period, the introduction of the time attribute can also avoid the risk of unreasonable budget allocation.

[0063] Figure 1 It is a schematic flowchart of the method according to an embodiment of the present invention. As Figure 1 shown, the information push method implemented in this embodiment mainly includes:

[0064] Step 101: The server generates a first decision tree using a first sample set within a preset sampling time period corresponding to the current moment according to a preset decision tree generation method, and determines a first target attribute of the current data object using the first decision tree; the first target attribute belongs to the attributes possessed by the samples in the first sample set.

[0065] In this step, it is necessary to first generate a corresponding decision tree based on the first sample set obtained in the recent period (i.e., the sampling time period corresponding to the current moment), and then obtain the first target attribute of the current data object based on this decision tree, so as to determine the target push attribute of the data object based on this first target attribute in the subsequent steps.

[0066] Preferably, the sampling time period is a preset time period before the current time, where the termination time serial number of the time period is the previous time serial number of the current time.

[0067] The above sampling time period is used to define the time interval for currently obtaining historical data samples for generating a decision tree, and specifically, those skilled in the art can set a suitable time range according to actual needs. For example, assuming the current time is 12:00 am, the sampling time period can be set as from 12:00 am yesterday to 11:59 am today.

[0068] In practical applications, for the attribute set possessed by the samples in the first sample set and the first target attribute, those skilled in the art can specifically set them according to actual needs.

[0069] For example, preferably, when the data object is used to represent an advertisement, the attributes possessed by each sample in the first sample set may include: exposure volume, download volume, activation volume, cost, download unit price, earning cost per mille (ECPM), and revenue. Among them, the first target attribute is revenue.

[0070] Preferably, in order to enable the decision tree to objectively reflect the information gain of different attributes of the samples, the following method can be adopted in this embodiment to generate the decision tree (including the first decision tree and the second decision tree):

[0071] Step x1: For each attribute of the samples in the current sample set used to generate the decision tree, if the value range of the attribute is continuous, discretize the attribute, and convert the attribute of each sample in this sample set into a corresponding discrete value according to the discretization result.

[0072] Here, in order to facilitate the construction of the decision tree, it is necessary to first discretize the attributes with continuous values. For example, for the exposure volume, after discretization, three discrete values of high, medium, and low can be obtained.

[0073] Step x2: Take the root node of the decision tree as the current working node, and take all samples of the sample set as the sample set of the root node.

[0074] Here, the construction of the decision tree starts from the root node. That is, take the root node as the current working node. At this time, the sample set used to generate the decision tree is the sample set of the root node.

[0075] Step x3: Construct the next-level nodes for the current working node according to the principle of maximizing information gain; the construction includes: divide the sample set of the current working node according to the attribute with the largest information gain corresponding to the sample set of the current working node, and create the corresponding number of next-level nodes for the current working node by taking the obtained sample subsets as the sample sets of the next-level nodes; among them, different next-level nodes correspond to different sample subsets.

[0076] This step x3 is used to construct child nodes (i.e., next-level nodes) for the current working node. Here, the construction of child nodes will be carried out according to the principle of maximizing information gain, that is, use the attribute that can obtain the largest information gain to divide the sample set of the working node, so as to improve the purity of the obtained samples, and further enable the decision tree to more objectively reflect the correlation between different attributes.

[0077] Preferably, the following method can be used to determine the attribute with the largest information gain corresponding to the sample set of the current working node:

[0078] Step y1: Classify the samples of the sample set D of the current working node according to the target attribute corresponding to the current decision tree; according to Calculate the information entropy Ent(D) of the sample set D when classifying based on the target attribute.

[0079] Among them, p k is the proportion of the k-th type of samples in the sample set D of the current working node, and K is the number of categories obtained after classification.

[0080] It should be noted that information entropy is an index used to measure the purity of samples. Assume that the proportion of the k-th type of samples in the current sample set D is p k (k = 1, 2,..., K), then the information entropy of D is:

[0081] Step y2: For each attribute a other than the target attribute corresponding to the sample set of the current working node, classify the samples of the sample set D of the current working node according to the attribute a; according to Calculate the information entropy Ent(D) of the sample set D when performing the classification based on the attribute a V ); where q v is the proportion of the samples of the v-th class in the sample set D of the current working node, and V is the number of classes obtained after classification; use the Ent(D) and Ent(D V ), and calculate the information gain Gain(D, a) obtained by partitioning the sample set D of the current working node according to the attribute a according to .

[0082] Step y3: Determine the attribute corresponding to the maximum value among all the information gains Gain(D, a) as the attribute with the largest information gain corresponding to the sample set of the current working node.

[0083] It should be noted here that the larger the information gain, the greater the improvement in purity obtained by using the attribute a for partitioning. Therefore, in each construction of a child node in this embodiment, the one with the largest information gain among all the attributes of the sample set is selected for attribute partitioning.

[0084] Step x4: Traverse each next-level node of the current working node. If the number of samples corresponding to the node is greater than 1, then use this node as the working node and return to the previous step (i.e., step x3) for the construction. Otherwise, perform the traversal of the next node until the number of samples corresponding to all the leaf nodes of the decision tree is 1.

[0085] This step is used to further generate the next-level nodes for each child node of the working node. The method is the same as step x3. In this way, the construction is carried out layer by layer until all the next-level nodes have only one sample and no more child nodes can be generated, and then the corresponding decision tree is obtained.

[0086] Preferably, the following method can be used to determine the first target attribute of the data object in step 101, including:

[0087] According to the other attributes of the data object except the first target attribute, search the first decision tree to obtain the first target attribute of the data object.

[0088] Next, taking the establishment of the first decision tree as an example, the generation of the decision tree in the embodiment of the present invention will be further elaborated. Suppose there is a data set containing 16 samples as shown in Table 1 below.

[0089]

[0090] Table 1

[0091] First, calculate the information entropy of the root node. The root node contains all the samples, where the proportion of positive returns The proportion of negative returns The calculated information entropy is as follows:

[0092]

[0093] Then, calculate the information gain of all attributes of the current sample. The set of all attributes of the current sample is D = {exposure volume, download volume, activation volume, cost, download unit price, activation unit price, ECPM}. Taking the calculation of the exposure volume as an example, the three values of the exposure volume are: {low, medium, high}. If this attribute is used to divide D, then 3 subsets can be obtained, which are: D 1 (exposure volume = low), D 2 (exposure volume = medium), D 3 (exposure volume = high).

[0094] D 1 contains the numbers {1, 5, 10, 11}, where the proportion of positive returns the proportion of negative returns D 2 contains the numbers {2, 3, 8, 13, 14}, where the proportion of positive returns the proportion of negative returns D 3 contains the numbers {4, 6, 7, 9, 12, 15, 16}, where the proportion of positive returns the proportion of negative returns According to calculate the information entropy of the three nodes after division by the exposure volume as follows:

[0095]

[0096]

[0097]

[0098] Then, according to calculate the information gain of the exposure volume attribute as follows:

[0099]

[0100] Following the above steps, the information gain of other attributes can be calculated as follows:

[0101] Gain(D, download volume) = 0.401

[0102] Gain(D, activation volume) = 0.481

[0103] Gain(D, cost) = 0.119

[0104] Gain(D, download unit price) = 0.094

[0105] Gain(D, activation unit price) = 0.483

[0106] Gain(D, ECPM) = 0.332

[0107] Among them, the information gain of the activation unit price is the largest. Therefore, the activation unit price attribute is selected to divide the root node, and the obtained division result is as Figure 2 shown.

[0108] Continue to divide each sub-sample set after division according to the above steps, and the finally obtained decision tree is as Figure 3 shown.

[0109] Step 102: The server uses the second sample set within the sampling time period to generate a second decision tree according to the decision tree generation method, and uses the second decision tree to determine the second target attribute of the data object; the second target attribute belongs to the attributes possessed by the samples in the second sample set.

[0110] In this step, the decision tree generation method in step 101 will be used to generate a second decision tree. The difference is that the sample data used is the sample of the second sample set. The second sample data and the second sample data correspond to the same sampling time period, and the difference is that the attribute sets of the samples are different, which will not be elaborated here.

[0111] The second sample set can be specifically set by those skilled in the art according to actual needs. Preferably, the attributes possessed by each sample in the second sample set may include: whether it is a working day, time serial number, planned budget, planned activity, number of sub-plans, and step size. Among them, the second target attribute is the step size. The time serial number can take an integer between 0 and 23. Among the above attributes, the planned budget, planned activity, number of sub-plans, etc. have continuous values. When generating the second decision tree, they also need to be discretized and can take three values: low, medium, and high.

[0112] Preferably, after obtaining the second decision tree, according to the other attributes of the data object except the second target attribute, search the second decision tree, and the second target attribute of the data object can be obtained.

[0113] It should be noted that for the data object, except for the first target attribute and the second target attribute, the attributes in the other sample attribute sets are known. Therefore, in the embodiments of the present invention, based on these known attributes, query the first decision tree and the second decision tree, and the first target attribute and the second target attribute can be obtained respectively.

[0114] Step 103: The server determines the target push attribute of the data object according to the first target attribute and the second target attribute of the data object, and sends the target push attribute to the corresponding user terminal.

[0115] Preferably, considering that in practical applications, when the data object is used to represent an advertisement and the sample attribute set in the second sample set is set to: whether it is a working day, time serial number, planned budget, planned activity, number of sub-plans, and step size, the plan corresponding to the data object may be further divided into several sub-plans. At this time, it is necessary to determine the corresponding target push attribute for each sub-plan. Based on this, the following method can be adopted in this step to determine the target push attribute of the data object by distinguishing whether there are sub-plans:

[0116] If the plan to which the data object belongs has no sub-plans, calculate the product of the second target attribute of the data object and the step size unit corresponding to the plan to which it belongs to obtain the bid adjustment amount of the data object in the plan to which it belongs; use the bid adjustment amount to adjust the bid value of the data object in the plan to which it belongs in the adjustment direction matching the first target attribute, and determine the bid value of the data object in the plan to which it belongs after adjustment as the target push attribute of the data object;

[0117] If the plan to which the data object belongs has sub-plans, for each sub-plan of the plan to which the data object belongs, calculate the product of the second target attribute of the data object and the step size unit corresponding to the sub-plan to obtain the bid adjustment amount of the data object in the sub-plan; use the bid adjustment amount to adjust the bid value of the data object in the sub-plan in the adjustment direction matching the first target attribute; determine the bid value of the data object in the sub-plan after adjustment as the target push attribute of the data object.

[0118] It should be noted that in practical applications, when the data object is used to represent an advertisement and the sample attribute set in the second sample set is set to: whether it is a working day, time serial number, planned budget, planned activity, number of sub-plans, and step size, and the second target attribute is the step size, each plan or sub-plan will preset a step size unit. In this way, based on the step size unit and the second target attribute, the bid adjustment amount of the current data object in the sub-plan can be obtained. For example, the step size unit of a certain sub-plan is 0.5 yuan / step, the step size is 4, and the corresponding bid adjustment amount is 2 yuan.

[0119] In practical applications, when a data object is used to represent an advertisement, a plan (if there is no sub-plan) or a sub-plan corresponds to an ad slot. Each plan (if there is no sub-plan) or sub-plan is preset with a bid price (indicating the fee that the user needs to pay for each download brought by the plan or sub-plan). If the target push attribute is set to the bid price of the current data object in the plan or sub-plan, then by using the bid adjustment amount obtained in this step and according to the adjustment direction corresponding to the previous first target attribute, the bid price of the current data object in this sub-plan can be obtained.

[0120] Specifically, if the first target attribute is negative revenue, the corresponding adjustment direction should be to decrease, that is, to lower the bid price of the corresponding plan or sub-plan by the bid adjustment amount; conversely, if the first target attribute is positive revenue, the corresponding adjustment direction should be to increase, that is, to raise the bid price of the corresponding plan or sub-plan by the bid adjustment amount. In this way, when the data object is used to represent an advertisement, it can make the bid price of the corresponding plan or sub-plan match the real-time application scenario, effectively reducing the user's usage cost.

[0121] It can be seen from the above method embodiments that in the method embodiments of the present invention, by introducing the generation of a two-stage decision tree, the connection between the target push attribute and the corresponding usage effect is fully considered, and the influence brought by the previous decision is reflected in the target push attribute determined next time, forming a positive feedback. In this way, it can sensitively sense the changes in actual application requirements, and thus can make real-time adjustments to the target push attribute to increase the objectivity of the target push attribute. Therefore, the accuracy of pushing information to users can be improved, and further, it is beneficial for users to correctly select the data objects they use according to the received target push attribute information, effectively reducing the user's usage cost.

[0122] Specifically, when the data object is used to represent an advertisement, the following technical effects can be obtained by using the above technical solutions:

[0123] First, a two-stage decision tree is used to make phased decisions on the bid price. All attributes that may affect the bid price are divided into two parts, and two decision trees are established. The decision tree in the first stage makes a positive or negative determination on the decision result of the previous time period. Positive indicates that the decision makes the advertisement effect develop in a good direction, and negative indicates that the decision makes the advertisement effect develop in a bad direction. Then, a decision tree in the second stage is established to determine the adjustment step size of the bid price, and the final bid price is given by combining the decision results of the two stages. The decision tree avoids the defect that the linear model itself can only fit linear data. The two-stage decision enables the influence of the previous time period on the next time period to be transmitted and corresponding decisions to be made, so as to maintain a high sensitivity to market changes. Moreover, the two-stage decision tree avoids the risk of exponential explosion of the algorithm complexity caused by all attributes being piled up in one decision tree, reduces the calculation time, and lowers the complexity of the decision tree.

[0124] II. Introduce the time attribute. By assigning different weights to different time periods in the decision tree, the advertisement tends to bid more conservatively during non-active time periods, thus avoiding unreasonable budget allocation.

[0125] Figure 4 A schematic structural diagram of an information push device corresponding to the above method embodiment is shown as Figure 4 shown. The device includes:

[0126] A target attribute determination unit, configured to use a first sample set within a preset sampling time period corresponding to the current moment, generate a first decision tree according to a preset decision tree generation method, and use the first decision tree to determine a first target attribute of the current data object; the first target attribute belongs to the attributes of the samples in the first sample set; use a second sample set within the sampling time period, generate a second decision tree according to the decision tree generation method, and use the second decision tree to determine a second target attribute of the data object; the second target attribute belongs to the attributes of the samples in the second sample set;

[0127] A push unit, configured to determine a target push attribute of the data object according to the first target attribute and the second target attribute of the data object, and send the target push attribute to a corresponding user terminal.

[0128] Preferably, the target attribute determination unit, for each attribute of the samples in the current sample set used to generate the decision tree, if the value range of the attribute is continuous, perform discretization processing on the attribute, and according to the discretization processing result, convert the attribute of each sample in this sample set into a corresponding discrete value; use the root node of the decision tree as the current working node, and use all the samples of the sample set as the sample set of the root node; construct the next-level node for the current working node according to the principle of maximizing information gain; the construction includes: dividing the sample set corresponding to the current working node according to the attribute with the largest information gain, and creating a corresponding number of next-level nodes for the current working node by using the obtained sample subsets as the sample sets of the next-level nodes; where different next-level nodes correspond to different sample subsets; traverse each next-level node of the current working node, if the number of samples corresponding to the node is greater than 1, use the node as the working node, and return to the previous step for the construction, otherwise, perform the traversal of the next node until the number of samples corresponding to all leaf nodes of the decision tree is 1.

[0129] Preferably, the target attribute determination unit classifies the samples of the sample set D of the current working node according to the target attribute corresponding to the current decision tree; according to Calculate the information entropy Ent(D) of the sample set D when performing the classification based on the target attribute; where p k is the proportion of the k-th type of samples in the sample set D of the current working node, and K is the number of categories obtained after classification;

[0130] For each attribute a other than the target attribute corresponding to the sample set of the current working node, classify the samples in the sample set D of the current working node according to the attribute a; according to Calculate the information entropy Ent(D V ) of the sample set D when performing the classification based on the attribute a; where q v is the proportion of the v-th type of samples in the sample set D of the current working node, and V is the number of categories obtained after classification; use the Ent(D) and Ent(D V ) to calculate, according to the information gain Gain(D, a) obtained by partitioning the sample set D of the current working node according to the attribute a;

[0131] Determine the attribute corresponding to the maximum value among all the information gains Gain(D, a) as the attribute with the maximum information gain corresponding to the sample set of the current working node.

[0132] Preferably, the attributes of each sample in the first sample set include: exposure, download volume, activation volume, cost, download unit price, ECPM, and revenue, where the first target attribute is revenue.

[0133] Preferably, the attributes of each sample in the second sample set include: whether it is a working day, time serial number, planned budget, planned activity, number of sub-plans, and step size, where the second target attribute is the step size.

[0134] Preferably, the target attribute determination unit is configured to find the first decision tree according to other attributes of the data object except the first target attribute, and obtain the first target attribute of the data object.

[0135] Preferably, the target attribute determination unit is configured to find the second decision tree according to other attributes of the data object except the second target attribute, and obtain the second target attribute of the data object.

[0136] Preferably, the pushing unit is configured to: if the plan to which the data object belongs has no sub - plans, calculate the product of the second target attribute of the data object and the step unit corresponding to the plan to which the data object belongs, to obtain the bid adjustment amount of the data object in the plan to which it belongs; use the bid adjustment amount to correspondingly adjust the bid value of the data object in the plan to which it belongs in the adjustment direction matching the first target attribute, and determine the bid value of the data object in the plan to which it belongs after adjustment as the target pushing attribute of the data object; if the plan to which the data object belongs has sub - plans, for each sub - plan of the plan to which the data object belongs, calculate the product of the second target attribute of the data object and the step unit corresponding to the sub - plan, to obtain the bid adjustment amount of the data object in the sub - plan; use the bid adjustment amount to correspondingly adjust the bid value of the data object in the sub - plan in the adjustment direction matching the first target attribute; and determine the bid value of the data object in the sub - plan after adjustment as the target pushing attribute of the data object.

[0137] Preferably, the sampling time period is a preset time period before the current time, where the termination time serial number of the time period is the previous time serial number of the current time.

[0138] An information pushing device includes:

[0139] A memory; and a processor coupled to the memory, the processor being configured to execute the method embodiments as described above based on instructions stored in the memory.

[0140] A computer - readable storage medium, on which a computer program is stored, and when the program is executed by a processor, it implements the method embodiments as described above.

[0141] In summary, the above are only the preferred embodiments of the present invention and are not intended to limit the protection scope of the present invention. Any modifications, equivalent replacements, improvements, etc. made within the spirit and principle of the present invention shall be included in the protection scope of the present invention.

Claims

1. An information push method, characterized in that, Including: The server uses the first sample set within the preset sampling time period corresponding to the current moment, and generates a first decision tree according to the preset decision tree generation method. Using the first decision tree, it determines the first target attribute of the current data object; The first target attribute belongs to the attributes possessed by the samples in the first sample set; The attributes possessed by each sample in the first sample set include: exposure, download volume, activation volume, cost, download unit price, ECPM, and revenue; The server uses the second sample set within the sampling time period, generates a second decision tree according to the decision tree generation method, and uses the second decision tree to determine the second target attribute of the data object; the second target attribute belongs to the attributes possessed by the samples in the second sample set; the attributes possessed by each sample in the second sample set include: whether it is a working day, time serial number, planned budget, planned activity, number of sub-plans, and step size. The second target attribute is the step size, and the step size represents the multiple relationship between the plan or sub-plan to which the data object belongs and the bid adjustment amount; The server determines the target push attribute of the data object according to the first target attribute and the second target attribute of the data object, and sends the target push attribute to the corresponding user terminal; Determining the target push attribute of the data object includes: If the plan to which the data object belongs has no sub-plans, calculate the product of the second target attribute of the data object and the step size unit corresponding to the plan to obtain the bid adjustment amount of the data object in the plan to which it belongs; use the bid adjustment amount to perform corresponding adjustment on the bid value of the data object in the plan to which it belongs according to the adjustment direction matching the first target attribute, and determine the bid value of the data object in the plan to which it belongs after adjustment as the target push attribute of the data object; If the plan to which the data object belongs has sub-plans, for each sub-plan of the plan to which the data object belongs, calculate the product of the second target attribute of the data object and the step size unit corresponding to the sub-plan to obtain the bid adjustment amount of the data object in the sub-plan; use the bid adjustment amount to perform corresponding adjustment on the bid value of the data object in the sub-plan according to the adjustment direction matching the first target attribute; determine the bid value of the data object in the sub-plan after adjustment as the target push attribute of the data object.

2. The method according to claim 1, characterized in that, The decision tree generation method includes: For each attribute of the samples in the current sample set used to generate the decision tree, if the value range of the attribute is continuous, discretize the attribute, and according to the discretization result, convert the attribute of each sample in the current sample set into the corresponding discrete value; Take the root node of the decision tree as the current working node, and take all the samples in the sample set as the sample set of the root node; Construct the next-level nodes for the current working node according to the principle of maximizing information gain; the construction includes: dividing the sample set of the current working node according to the attribute with the maximum information gain corresponding to the sample set of the current working node, and creating the corresponding number of next-level nodes for this working node by using the obtained sample subsets after the division as the sample sets of the next-level nodes; wherein, different next-level nodes correspond to different sample subsets. Traverse each next-level node of the current working node. If the number of samples corresponding to this node is greater than 1, then use this node as the working node and return to the previous step to perform the above construction. Otherwise, perform the traversal of the next node until the number of samples corresponding to all leaf nodes of the decision tree is 1.

3. The method according to claim 2, characterized in that, The determination of the attribute with the maximum information gain corresponding to the sample set of the current working node includes: Classify the samples in the sample set D of the current working node according to the target attribute corresponding to the current decision tree; according to , calculate the information entropy of the sample set D when performing the classification based on the target attribute ; where is the proportion of the samples of the k-th class in the sample set D of the current working node, and K is the number of categories obtained after classification; For each attribute a other than the target attribute corresponding to the sample set of the current working node, classify the samples in the sample set D of the current working node according to the attribute a; according to , calculate the information entropy of the sample set D when classifying based on the attribute a ; where is the proportion of the samples of the v-th class in the sample set D of the current working node, and V is the number of classes obtained after classification; use the and , according to , calculate the information gain obtained by partitioning the sample set D of the current working node according to the attribute a ; Determine the attribute corresponding to the maximum value among all the information gains as the attribute with the maximum information gain corresponding to the sample set of the current working node.

4. The method according to claim 2, wherein The first target attribute is revenue.

5. The method according to claim 1, characterized in that, Determining the first target attribute of the data object includes: According to the other attributes of the data object except the first target attribute, search the first decision tree to obtain the first target attribute of the data object. Determining the second target attribute of the data object includes: According to the other attributes of the data object except the second target attribute, search the second decision tree to obtain the second target attribute of the data object.

6. The method according to claim 1, wherein The sampling time period is a preset time period before the current time, wherein the termination time serial number of the time period is the previous time serial number of the current time.

7. An information push device, characterized in that, It includes: A target attribute determination unit, configured to use the first sample set within the preset sampling time period corresponding to the current moment, generate a first decision tree according to the preset decision tree generation method, and use the first decision tree to determine the first target attribute of the current data object; The first target attribute belongs to the attributes possessed by the samples in the first sample set; The attributes possessed by each sample in the first sample set include: exposure, downloads, activations, cost, download unit price, ECPM, and revenue; use the second sample set within the sampling time period, generate a second decision tree according to the decision tree generation method, and use the second decision tree to determine the second target attribute of the data object; the second target attribute belongs to the attributes possessed by the samples in the second sample set; the attributes possessed by each sample in the second sample set include: whether it is a working day, time serial number, planned budget, planned activity, number of sub-plans, and step size, and the second target attribute is the step size, and the step size represents the multiple relationship between the plan or sub-plan to which the data object belongs and the bid adjustment amount; A push unit, configured to determine the target push attribute of the data object according to the first target attribute and the second target attribute of the data object, and send the target push attribute to the corresponding user terminal; Determining the target push attribute of the data object includes: If the plan to which the data object belongs has no sub - plans, calculate the product of the second target attribute of the data object and the step unit corresponding to the plan to which it belongs, to obtain the bid adjustment amount of the data object in the plan to which it belongs; use the bid adjustment amount to correspondingly adjust the bid value of the data object in the plan to which it belongs in the adjustment direction matching the first target attribute, and determine the bid value of the data object in the plan to which it belongs after adjustment as the target push attribute of the data object. If the plan to which the data object belongs has sub - plans, for each sub - plan of the plan to which the data object belongs, calculate the product of the second target attribute of the data object and the step unit corresponding to this sub - plan, to obtain the bid adjustment amount of the data object in this sub - plan; use the bid adjustment amount to correspondingly adjust the bid value of the data object in this sub - plan in the adjustment direction matching the first target attribute; and determine the bid value of the data object in this sub - plan after adjustment as the target push attribute of the data object.

8. The device according to claim 7, characterized in that The target attribute determination unit is configured to, for each attribute of the samples in the sample set currently used to generate the decision tree, if the value range of this attribute is continuous, perform discretization processing on this attribute, and according to the discretization processing result, convert this attribute of each sample in the sample set into the corresponding discrete value. Take the root node of the decision tree as the current working node, and take all samples of the sample set as the sample set of the root node. Construct the next - level nodes for the current working node according to the principle of maximizing information gain; the construction includes: divide the sample set of the current working node according to the attribute with the maximum information gain corresponding to the sample set of the current working node, and create the corresponding number of next - level nodes for the current working node by using the obtained sample subsets as the sample sets of the next - level nodes; where different next - level nodes correspond to different sample subsets; traverse each next - level node of the current working node, if the number of samples corresponding to this node is greater than 1, then take this node as the working node and return to the previous step for the construction, otherwise, perform the traversal of the next node until the number of samples corresponding to all leaf nodes of the decision tree is 1.

9. The device according to claim 8, characterized in that, The target attribute determination unit is configured to classify the samples in the sample set D of the current working node according to the target attribute corresponding to the current decision tree; and calculate the information entropy of the sample set D when performing the classification based on the target attribute according to ; where is the proportion of the samples of the k-th class in the sample set D of the current working node, and K is the number of classes obtained after classification; ​ For each attribute a other than the target attribute corresponding to the sample set of the current working node, classify the samples in the sample set D of the current working node according to the attribute a; according to , calculate the information entropy of the sample set D when classifying based on the attribute a ; where is the proportion of samples in the v-th class in the sample set D of the current working node, and V is the number of classes obtained after classification; using the and , according to , calculate the information gain obtained by partitioning the sample set D of the current working node according to the attribute a ; Determine the attribute corresponding to the maximum value among all the information gains as the attribute with the maximum information gain corresponding to the sample set of the current working node.

10. The device according to claim 8, wherein, The first target attribute is revenue.

11. The device according to claim 7, wherein The target attribute determination unit is configured to find the first decision tree according to the other attributes of the data object except the first target attribute, to obtain the first target attribute of the data object. Find the second decision tree according to the other attributes of the data object except the second target attribute, to obtain the second target attribute of the data object.

12. The device according to claim 7, wherein, The sampling time period is a preset time period before the current time, where the termination time serial number of the time period is the previous time serial number of the current time.

13. An information push device, characterized in that, Including: A memory; And a processor coupled to the memory, the processor is configured to execute the method according to any one of claims 1 - 6 based on the instructions stored in the memory.

14. A computer-readable storage medium having a computer program stored thereon, characterized in that, When executed by a processor, the program implements the method according to any one of claims 1-6.

Citation Information

Patent Citations

  • Classification method based on unit cost gain sensitive decision tree

    CN104850862A

  • Method and device for selecting and pushing data content to terminal

    CN106156127A