A streaming update method for conversion rate model based on delayed time sampling
By using weight model and delay time sampling methods in conversion rate prediction, the conversion rate prediction model is updated in real time, and the model is stale and stalemate caused by delay feedback is solved, and the accuracy and real-timeness of the model are improved.
Patent Information
- Application Number
- CN202111254303.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-10-27
- Publication Date
- 2025-04-11
- Estimated Expiration
- 2041-10-27
AI Technical Summary
In the conversion rate prediction, the model cannot be updated in real time due to delay feedback problems, which affects the accuracy and real-timeness of the model.
By collecting user click and purchase data, constructing initial training sets, training weight models and conversion rate prediction models, and updating conversion rate prediction models in real time using weight models and delay time sampling methods in streaming data.
While ensuring real-time, the accuracy of the model is improved and the problem of outdated model caused by delayed feedback is solved.
Smart Images

Figure CN113988922B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to a conversion rate model streaming update method based on delayed time sampling, and the technical field of personalized search and recommendation. Background Art
[0002] At present, personalized search and recommendation technologies have been widely used in e-commerce and advertising. In order to better optimize the profits of advertisers, advertising service providers are required not only to make more users browse advertisements, but also to optimize the number of conversion behaviors. This requires advertising service providers to be able to predict the probability of a specific user performing a conversion behavior after browsing a specific advertisement, that is, the conversion rate. Conversion behavior here usually refers to user behavior that can directly or indirectly benefit advertisers, such as users paying to buy goods, or users downloading software in advertisements. In conversion rate estimation, user feedback often occurs after a delay. For example, users often do not buy a product immediately after clicking it, but collect it or add it to the shopping cart first, and then pay after a period of time. This phenomenon is called delayed feedback.
[0003] The existence of the delayed feedback problem makes it impossible to obtain the user's conversion status information in real time in the conversion rate prediction. In order to obtain accurate conversion label data, you must wait for a long time. Waiting too long will lead to a large difference between the distribution of training data and the current data distribution, which will make the model outdated and unable to make accurate predictions on new data. Since in the recommendation system, the change of data distribution is often at the hourly level, the real-time requirements of the data are high. Simply waiting for a long time will have a great impact on the accuracy of the model. Special methods are needed to deal with the delayed feedback problem, so as to improve the real-time performance while ensuring the accuracy of the model.
[0004] There are already some methods to solve the delayed feedback problem in conversion rate prediction. However, the existing methods still have the following shortcomings:
[0005] (1) The method of increasing the delay window and then performing correction requires a longer delay time, which results in poor real-time performance of the model.
[0006] (2) The method of using data immediately to increase real-time performance will introduce a large number of inaccurate samples, resulting in a decrease in model accuracy. Summary of the invention
[0007] Purpose of the invention: In view of the problems and shortcomings existing in the prior art, the present invention provides a streaming update method for a conversion rate model based on delayed time sampling. Specifically, the user's click and purchase data over a long period of time are first collected, and the initial training set D1 is constructed using these data. Then, the data set D1 is used to train the weight models Fdp and Frn and the conversion rate prediction model F. Finally, the weight model and the delayed time sampling method are used in the streaming data to update the conversion rate prediction model F in real time, thereby improving the accuracy of the model while ensuring real-time performance.
[0008] Technical solution: A streaming update method for a conversion rate model based on delayed time sampling, including training data collection and construction steps, weight model and conversion rate model training steps, and streaming conversion rate model update steps.
[0009] In the training data collection step, user information, product information, and user transaction information are added to the data set D1, the average transaction time E(item) of various products is counted, the features of user information and product information are encoded, and then spliced with numerical features to form sample features; samples with transaction time greater than the average transaction time are marked as false negative examples, and a corresponding delayed positive example is inserted, samples with transaction time less than or equal to the average transaction time are marked as positive examples, and samples without transactions are marked as true negative examples.
[0010] The weight model and conversion rate model training steps include: sampling a portion of data from data set D1, training the weight model and conversion rate model; the weight model includes Frn and Fdp, wherein the weight model Frn is a true negative example weight model, and the weight model Frn predicts the probability of an input negative labeled sample being a true negative example, and the negative labeled sample includes a false negative example and a true negative example; the weight model Fdp is a delayed positive example weight model, and predicts the probability of an input positive labeled sample being a delayed positive example, and the positive labeled sample includes a positive example and a delayed positive example.
[0011] The training data collection steps are specifically as follows:
[0012] Step 101, in order to collect initial data, first randomly recommend product information to the user.
[0013] Step 102, collect the user's transaction information, the transaction information records whether the product is sold, and if so, the transaction time information is also required to be recorded.
[0014] Step 103: Add the user information, product information, and user transaction information to the data set D1.
[0015] Step 104, determine whether the data volume reaches a preset amount, if yes, end the training data collection step, otherwise repeat steps 101 to 104.
[0016] Step 105, count the average transaction time E(item) of various commodities, and process features and labels. The features include user features and commodity features; the discrete features of users and commodities are encoded using a one-hot method, and then concatenated with numerical features to form sample features. Samples whose transaction time is greater than the average transaction time are marked as false negative examples, and a corresponding delayed positive example is inserted. Samples whose transaction time is less than or equal to the average transaction time are marked as positive examples, and samples without transactions are marked as true negative examples. End the data collection step.
[0017] The weight model and conversion rate model training steps include:
[0018] Step 200, initialize the weight models Frn and Fdp, where the weight model Frn is a true negative example weight model, which predicts the probability of an input negative labeled sample (including false negative examples + true negative examples) being a true negative example; the weight model Fdp is a delayed positive example weight model, which predicts the probability of an input positive labeled sample (including positive examples + delayed positive examples) being a delayed positive example. Initialize the conversion rate prediction model F, which predicts the probability of a transaction for an input sample.
[0019] Step 201: Sample a portion of data from the data set D1.
[0020] Step 202, calculate the weight model loss function F1 and the conversion rate prediction model loss function F2 for the sampled data.
[0021] Step 203: Use the gradient descent method to update the weight model Fdp, Frn and the conversion rate prediction model F.
[0022] Step 204, determine whether the weight model and the conversion rate model have converged, if so, proceed to step 205, otherwise, repeat steps 201 to 204.
[0023] Step 205, save the weight model Frn, Fdp and the conversion rate prediction model F, and end the training.
[0024] The streaming conversion rate model updating step comprises:
[0025] Step 300, load the true negative example weight model Frn, the delayed positive example weight model Fdp and the conversion rate prediction model F obtained in the training step.
[0026] Step 301 , using the conversion rate prediction model F to estimate the product transaction rate as a basis to recommend product information to users, collect sample features and tags, and the processing method is the same as step 105 .
[0027] Step 302, for the click data of the product item, wait for the time E(item)+T and then enter step 303; T is the custom delay time.
[0028] Step 303: If the click data has been traded at time E(item), it is marked as a positive example, otherwise it is marked as a negative example; if the click is traded at time E(item)+t after time E(item), a sample is inserted at time E(item)+t (when the transaction data has been observed) and marked as a delayed positive example, where t is less than or equal to T. The weight model and the mark are used to update the conversion rate prediction model F according to the loss function F3.
[0029] Step 304: determine whether the current model needs to be used to provide services. For example, when the model effect decreases or the model structure needs to be updated, the streaming update process needs to be stopped. If yes, the streaming training phase ends, otherwise, steps 301 to 304 are repeated.
[0030] In the training data collection step: first, randomly recommend product information to the user, save the product information and user information. Then wait for a sufficiently long time (usually set to 14 days or 30 days) to collect the user's transaction information; the transaction information includes whether the user has purchased the product, and if so, the corresponding transaction time h must be recorded. The product information, user information and the user's transaction information are recorded as samples, and the samples are added to the data set D1. After the data collection is completed, the average transaction time E(item) of each product item is counted in all the data; the collected product information, user information and the user's transaction information construct the data set D1, where the product information and user information constitute the sample feature x, and the transaction information constitutes the sample label y. If there is a transaction, that is, y=1, the corresponding transaction time is recorded as h; in addition, a true negative example mark y1 is constructed, which is marked as 1 for true negative examples and 0 for false negative examples, where true negative examples refer to samples without transactions, and false negative examples refer to samples with transaction times greater than E(item); a delayed transaction mark y2 is constructed, which is marked as 1 for delayed transactions and 0 for non-delayed transactions, where delayed transactions refer to samples with transaction times greater than E(item), and non-delayed transactions refer to samples with transaction times less than or equal to E(item).
[0031] The training process of the weight model and conversion rate model is as follows: randomly initialize the parameters θ of the weight model Frn and Fdp w , and the parameter θ of the conversion rate prediction model F p ; Sample a part of the data from the data set D1, calculate the weight model loss function according to formula F1, calculate the conversion rate prediction model loss function according to formula F2, and then use the gradient descent method to update the model Frn, Fdp and F; Repeat the above steps until the model converges.
[0032]
[0033] F2(x,y)=-(yln(F(x))+(1-y)ln(1-F(x))
[0034] In the above formula is the negative example indicator function. If the sample appears as a negative example in the training sample, is 1, otherwise is 0; is the transaction indication function. If the sample is a transaction sample, then is 1, otherwise is 0. Fdp and Frn are the delayed positive example weight model and the true positive example weight model respectively, and F is the conversion rate prediction model. All three models are implemented using feedforward neural networks. ln represents the natural logarithm, that is, the logarithmic function with e as the base.
[0035] The process of updating the streaming conversion rate prediction model is as follows: after deploying the conversion rate prediction model F in the training process, collect the data stream generated online by the recommendation system, that is, use the conversion rate prediction model to recommend products to users, and then collect transaction information to construct a data batch. According to the statistical product transaction delay time E(item), the samples in the batch are delayed for the corresponding time; when the predetermined waiting time E(item) is reached, record whether the current sample is traded as the mark y* of the training batch, if the transaction is completed and the time is less than or equal to E(item), it is marked as a positive example; if there is no transaction at present, it is marked as a negative example; if the transaction is completed but the time is greater than E(item), it is first marked as a negative example, and when the transaction occurs, that is, at E(item)+t, it is marked as a delayed positive example and inserted into the training batch. Note that in the streaming training process, a delayed positive example corresponds to two training samples, namely a false negative example and a delayed positive example, and their marks y* are negative and positive examples respectively. The weight model Fdp, Frn is used to calculate the streaming conversion rate estimation loss function F3, and the model F is updated using gradient descent. Repeat the above streaming update steps until the end.
[0036] F3(x,y)=-{y * [1+Fdp(x)]ln(F(x))+(1-y * )[1+Fdp(x)]Frn(x)ln(1-F(x))}
[0037] A conversion rate model streaming update system based on delayed time sampling, comprising a training data collection and construction module, a weight model and conversion rate model training module, and a streaming conversion rate model update module;
[0038] The training data collection module adds user information, product information, and user transaction information to the data set D1, calculates the average transaction time E(item) of various products, encodes the features of user information and product information, and then concatenates them with numerical features to form sample features; marks samples with transaction time greater than the average transaction time as false negative examples, and inserts a corresponding delayed positive example, marks samples with transaction time less than or equal to the average transaction time as positive examples, and marks samples without transactions as true negative examples;
[0039] The weight model and conversion rate model training module: a portion of data is sampled from the data set D1 to train the weight model and the conversion rate model; the weight model includes Frn and Fdp, wherein the weight model Frn is a true negative example weight model, and the weight model Frn predicts the probability of an input negative labeled sample being a true negative example, and the negative labeled sample includes a false negative example and a true negative example; the weight model Fdp is a delayed positive example weight model, and predicts the probability of an input positive labeled sample being a delayed positive example, and the positive labeled sample includes a positive example and a delayed positive example;
[0040] The streaming conversion rate model update module loads the true negative example weight model Frn, the delayed positive example weight model Fdp and the conversion rate prediction model F obtained in the training step, uses the conversion rate prediction model F to estimate the commodity transaction rate as a basis to recommend commodity information to users, collects sample features and tags, and constructs a small batch of data.
[0041] A computer device includes a memory, a processor, and a computer program stored in the memory and executable on the processor. When the processor executes the computer program, the conversion rate model streaming update method based on delayed time sampling as described above is implemented.
[0042] A computer-readable storage medium stores a computer program for executing the above-mentioned delayed time sampling-based conversion rate model streaming update method.
[0043] Beneficial effect: Compared with the prior art, the conversion rate prediction technology based on delayed time sampling provided by the present invention can use a certain amount of historical data to learn the weight models Fdp and Frn for weighting biased samples, and then use the corresponding weights to correct the streaming sample labels during the update of the streaming conversion rate model, that is, add weight items controlled by Fdp and Frn to the loss. The introduction of weight items can effectively increase the real-time performance of the model while reducing errors, thereby improving the accuracy of the conversion rate prediction model while ensuring real-time performance. Compared with the current conversion rate estimation method, this method has good compatibility and can be directly applied; the computational overhead is small, that is, only the appropriate weight items need to be calculated during streaming training, and the calculation of weight items can be efficiently implemented using the two neural network models of Fdp and Frn; applying the above method to the recommendation system can effectively improve the accuracy of the online product recommendation system. BRIEF DESCRIPTION OF THE DRAWINGS
[0044] Figure 1 A flowchart of the data collection process according to an embodiment of the present invention;
[0045] Figure 2 A flow chart of training a weight model and a conversion rate prediction model according to an embodiment of the present invention;
[0046] Figure 3 This is a flow chart of updating the streaming conversion rate prediction model according to an embodiment of the present invention. DETAILED DESCRIPTION
[0047] The present invention is further explained below in conjunction with specific embodiments. It should be understood that these embodiments are only used to illustrate the present invention and are not used to limit the scope of the present invention. After reading the present invention, various equivalent forms of modifications to the present invention by those skilled in the art all fall within the scope defined by the claims attached to this application.
[0048] In the following description, samples and data both refer to collected data information. A sample or a piece of data corresponds to the data generated when a product is displayed to a user. The data may take many forms depending on the stage of processing. The specific stage of processing of the data referred to in the text can be known from the context.
[0049] like Figure 1As shown, in order to train the weight model and conversion rate model required for online updating, it is necessary to first collect a part of the initial data, which is the data collection and processing process. Specifically, first initialize the recommendation and data collection system (step 100); then randomly recommend some product information to users (step 101); collect user feedback data on these recommended product information, the feedback data indicates whether to buy and when to buy, that is, purchase information (step 102); add a set of <product information, user information, transaction information> as a sample to the data set D1 (step 103); determine whether a preset number of training samples have been obtained, if not enough, repeat steps 101-103, otherwise go to step 105 (step 104); process the data (step 105), including feature processing for each sample and required labeling processing, wherein user features include user age, gender, purchasing power and other information; product features include category, price, recent sales and other information. The discrete features of users and products are encoded using the one-hot method, and then spliced with the numerical features to form sample features. Mark the samples whose transaction time is greater than the average transaction time as false negative examples, and insert a corresponding delayed positive example. Mark the samples whose transaction time is less than or equal to the average transaction time as positive examples, and mark the samples without transaction as true negative examples, and end the data collection step.
[0050] The product information and user information are used as sample features x, and the transaction information is used as the sample mark y. If there is a transaction, the transaction time is recorded as h, and the transaction delay time E(item) of each product is counted, that is, the average transaction time E(item) of each product item is counted. If there is a transaction, y=1, if there is no transaction, y=0; in addition, a true negative example mark y1 is constructed, which is marked as 1 for true negative examples and 0 for false negative examples, where true negative examples refer to samples without transactions, and false negative examples refer to transaction samples with transaction time greater than E(item); a delayed transaction mark y2 is constructed, which is marked as 1 for delayed transactions and 0 for non-delayed transactions, where delayed transactions refer to transaction samples with transaction time greater than E(item), and non-delayed transactions refer to samples with transaction time less than or equal to E(item).
[0051] The training process of the weight model and conversion rate model is as follows Figure 2As shown. Specifically, first initialize the weight model Fdp, Frn and the conversion rate model F (step 200); then sample a portion of data from the data set D1 (step 201); calculate the weight model loss function F1 and the conversion rate prediction loss function F2 for the current sampled data (step 202); use the gradient descent method to update the weight model Fdp, Frn and the conversion rate model F (step 203); step 204, determine whether the model converges, if so, exit the loop and go to step 205, otherwise repeat steps 201-204. Step 205, save the weight model and the conversion rate prediction model and output them, and the training process ends.
[0052] The workflow of the streaming conversion rate model update phase is as follows: Figure 3 Specifically, the conversion rate model and the weight model are first initialized (step 300); new data in the online recommendation system often appear continuously in a streaming manner, and a small batch (a part of the data) is sampled from the streaming data (step 301); the waiting time corresponding to the item is obtained according to E(item) obtained from statistics during data collection and processing, and then the corresponding waiting time is waited (step 302); the conversion rate model F is updated according to the user transaction information obtained after waiting and the loss function F3 (step 303); it is determined whether to end the streaming update (step 304), if so, it is ended, otherwise jump to step 301.
[0053] A conversion rate model streaming update system based on delayed time sampling, including a training data collection and construction module, a weight model and conversion rate model training module, and a streaming conversion rate model update module;
[0054] The training data collection module adds user information, product information, and user transaction information to the data set D1, calculates the average transaction time E(item) of various products, encodes the features of user information and product information, and then concatenates them with numerical features to form sample features; marks samples with transaction time greater than the average transaction time as false negative examples, and inserts a corresponding delayed positive example; marks samples with transaction time less than or equal to the average transaction time as positive examples, and marks samples without transactions as true negative examples;
[0055] Weight model and conversion rate model training module: a portion of data is sampled from the data set D1 to train the weight model and conversion rate model; the weight model includes Frn and Fdp, wherein the weight model Frn is a true negative example weight model, and the weight model Frn predicts the probability of an input negative labeled sample being a true negative example, and the negative labeled sample includes a false negative example and a true negative example; the weight model Fdp is a delayed positive example weight model, and predicts the probability of an input positive labeled sample being a delayed positive example, and the positive labeled sample includes a positive example and a delayed positive example;
[0056] The streaming conversion rate model update module loads the true negative example weight model Frn, the delayed positive example weight model Fdp and the conversion rate prediction model F obtained in the training step, uses the conversion rate prediction model F to estimate the product transaction rate as the basis to recommend product information to users, collects sample features and labels, and constructs data mini-batches.
[0057] Obviously, those skilled in the art should understand that the various steps of the conversion rate model streaming update method based on delay time sampling or the various modules of the conversion rate model streaming update system based on delay time sampling of the above-mentioned embodiments of the present invention can be implemented by a general computing device, they can be concentrated on a single computing device, or distributed on a network composed of multiple computing devices, optionally, they can be implemented by a program code executable by a computing device, so that they can be stored in a storage device and executed by the computing device, and in some cases, the steps shown or described can be executed in a different order from that here, or they can be made into individual integrated circuit modules respectively, or multiple modules or steps therein can be made into a single integrated circuit module for implementation. In this way, the embodiments of the present invention are not limited to any specific combination of hardware and software.
Claims
1. A streaming update method for a conversion rate model based on delayed time sampling, characterized in that: It includes training data collection and construction steps, weight model and conversion rate model training steps, and streaming conversion rate model update steps; In the training data collection step, user information, product information, and user transaction information are added to the data set D1, the average transaction time E(item) of various products is counted, the features of user information and product information are encoded, and then spliced with numerical features to form sample features; Mark the samples whose transaction time is greater than the average transaction time as false negative examples, and insert a corresponding delayed positive example. Mark the samples whose transaction time is less than or equal to the average transaction time as positive examples, and mark the samples without transaction as true negative examples. The weight model and conversion rate model training step comprises: sampling a portion of data from the data set D1, training the weight model and the conversion rate model; the weight model comprises Frn and Fdp, wherein the weight model Frn is a true negative example weight model, and the weight model Frn predicts the probability of an input negative labeled sample being a true negative example, and the negative labeled sample comprises a false negative example and a true negative example; the weight model Fdp is a delayed positive example weight model, and predicts the probability of an input positive labeled sample being a delayed positive example, and the positive labeled sample comprises a positive example and a delayed positive example; In the streaming conversion rate model updating step, the true negative example weight model Frn, the delayed positive example weight model Fdp and the conversion rate prediction model F obtained in the training step are loaded, and the product transaction rate estimated by the conversion rate prediction model F is used as a basis to recommend product information to users, collect sample features and tags, and construct a small batch of data; The streaming conversion rate model updating step comprises: Step 300, loading the true negative example weight model Frn, the delayed positive example weight model Fdp and the conversion rate prediction model F obtained in the training step; Step 301, using the conversion rate prediction model F to estimate the product transaction rate as a basis to recommend product information to users, collect sample features and tags, and the processing method is the same as step 105; Step 302, for the click data of the product item, enter step 303 after waiting for time E(item)+T; T is a custom delay time; Step 303: if the click data has been traded at time E(item), it is marked as a positive example, otherwise it is marked as a negative example; if the click is traded at time E(item)+t after time E(item), a sample is inserted at time E(item)+t and marked as a delayed positive example; the conversion rate prediction model F is updated according to the loss function F3 using the weight model and the mark; Step 304, determine whether it is necessary to continue using the current model to provide services, if so, end the streaming training phase, otherwise repeat steps 301 to 304.
2. The method for streaming update of conversion rate model based on delayed time sampling according to claim 1, characterized in that: The training data collection steps are specifically as follows: Step 101, randomly recommending product information to the user; Step 102, collect the transaction information of the user; the transaction information records whether the product has been sold, and if so, the transaction time information is also recorded; Step 103, adding the user information, product information, and user transaction information to the data set D1; Step 104, determining whether the data volume reaches a preset amount, if yes, then ending the training data collection step, otherwise repeating steps 101 to 104; Step 105, the average transaction time E(item) of various commodities is counted, the user and commodity features are encoded using a one-hot method, and then concatenated with the numerical features to form sample features; Mark the samples whose transaction time is greater than the average transaction time as false negative examples, and insert a corresponding delayed positive example; mark the samples whose transaction time is less than or equal to the average transaction time as positive examples, and mark the samples without transaction as true negative examples; end the data collection step.
3. The method for updating the conversion rate model based on delayed time sampling according to claim 1, characterized in that: The weight model and conversion rate model training steps include: Step 200, initialize the weight models Frn and Fdp, where the weight model Frn is a true negative example weight model, and the weight model Frn predicts the probability of an input negative labeled sample being a true negative example; the weight model Fdp is a delayed positive example weight model, and predicts the probability of an input positive labeled sample being a delayed positive example; initialize the conversion rate prediction model F, and the model predicts the probability of a transaction being completed for an input sample; Step 201, sampling a portion of data from the data set D1; Step 202, calculating the weight model loss function F1 and the conversion rate prediction model loss function F2 for the sampled data; Step 203, using the gradient descent method to update the weight model Fdp, Frn and the conversion rate prediction model F; Step 204, determining whether the weight model and the conversion rate model have converged, if so, proceeding to step 205, otherwise, repeating steps 201 to 204; Step 205, save the weight model Frn, Fdp and the conversion rate prediction model F, and end the training.
4. The method for updating the conversion rate model based on delayed time sampling according to claim 1, characterized in that: In the training data collection step: product information and user information constitute sample features x, and transaction information constitutes sample mark y; if there is a transaction, that is, y=1, then the corresponding transaction time is recorded as h; in addition, a true negative example mark y1 is constructed, which is marked as 1 for true negative examples and 0 for false negative examples, wherein true negative examples refer to samples without transactions, and false negative examples refer to samples with transaction times greater than E(item); a delayed transaction mark y2 is constructed, which is marked as 1 for delayed transactions and 0 for non-delayed transactions, wherein delayed transactions refer to samples with transaction times greater than E(item), and non-delayed transactions refer to samples with transaction times less than or equal to E(item).
5. The method for updating the conversion rate model based on delayed time sampling according to claim 4 is characterized in that: In the weight model and conversion rate model training process: randomly initialize the parameters θ of the weight model Frn and Fdp w , and the parameter θ of the conversion rate prediction model F p ; Sample a portion of data from the data set D1, calculate the weight model loss function according to formula F1, calculate the conversion rate prediction model loss function according to formula F2, and then use the gradient descent method to update the model Frn, Fdp and F; repeat the above steps until the model converges; F2(x,y)=-(yln(F(x))+(1-y)ln(1-F(x)) In the above formula is the negative example indicator function. If the sample appears as a negative example in the training sample, is 1, otherwise is 0; is the transaction indication function. If the sample is a transaction sample, then is 1, otherwise is 0; Fdp and Frn are the delayed positive example weight model and the true positive example weight model respectively, F is the conversion rate prediction model, and all three models are implemented using a feedforward neural network; ln represents the natural logarithm, that is, the logarithmic function with e as the base.
6. The method for streaming update of conversion rate model based on delayed time sampling according to claim 1, characterized in that: The process of updating the streaming conversion rate prediction model is as follows: after the conversion rate prediction model F in the training process is deployed, the data stream generated online by the recommendation system is collected, that is, the conversion rate prediction model is used to recommend products to users, and then transaction information is collected to construct a data mini-batch; according to the statistical product transaction delay time E(item), the samples in the mini-batch are delayed for a corresponding time; whether the current sample is traded is recorded as the mark y* of the training mini-batch, if the transaction is completed and the time is less than or equal to E(item), it is marked as a positive example; if there is no transaction at present, it is marked as a negative example; if the transaction is completed but the time is greater than E(item), it is first marked as a negative example, and when the transaction occurs, that is, at the time E(item)+t, it is marked as a delayed positive example and inserted into the training mini-batch; in the streaming training process, a delayed positive example corresponds to two training samples, namely a false negative example and a delayed positive example, and their marks y* are negative and positive examples respectively; the weight model Fdp, Frn is used to calculate the streaming conversion rate estimation loss function F3, and the model F is updated using gradient descent; the above streaming update steps are repeated until the end; F3(x,y)=-{y * [1+Fdp(x)]ln(F(x)) +(1-y * )[1+Fdp(x)]Frn(x)ln(1-F(x))}。 7. A conversion rate model streaming update system based on delayed time sampling, characterized in that: It includes training data collection and construction module, weight model and conversion rate model training module, and streaming conversion rate model update module; The training data collection module adds user information, product information, and user transaction information to the data set D1, calculates the average transaction time E(item) of various products, encodes the features of user information and product information, and then concatenates them with numerical features to form sample features; Mark the samples whose transaction time is greater than the average transaction time as false negative examples, and insert a corresponding delayed positive example. Mark the samples whose transaction time is less than or equal to the average transaction time as positive examples, and mark the samples without transaction as true negative examples. The weight model and conversion rate model training module: a portion of data is sampled from the data set D1 to train the weight model and the conversion rate model; the weight model includes Frn and Fdp, wherein the weight model Frn is a true negative example weight model, and the weight model Frn predicts the probability of an input negative labeled sample being a true negative example, and the negative labeled sample includes a false negative example and a true negative example; the weight model Fdp is a delayed positive example weight model, and predicts the probability of an input positive labeled sample being a delayed positive example, and the positive labeled sample includes a positive example and a delayed positive example; The streaming conversion rate model update module loads the true negative example weight model Frn, the delayed positive example weight model Fdp and the conversion rate prediction model F obtained in the training step, uses the conversion rate prediction model F to estimate the commodity transaction rate as a basis to recommend commodity information to users, collects sample features and tags, and constructs a small batch of data; The implementation steps of the streaming conversion rate model update module are as follows: Step 300, loading the true negative example weight model Frn, the delayed positive example weight model Fdp and the conversion rate prediction model F obtained in the training step; Step 301, using the conversion rate prediction model F to estimate the product transaction rate as a basis to recommend product information to users, collect sample features and tags, and the processing method is the same as step 105; Step 302, for the click data of the product item, enter step 303 after waiting for time E(item)+T; T is a custom delay time; Step 303: if the click data has been traded at time E(item), it is marked as a positive example, otherwise it is marked as a negative example; if the click is traded at time E(item)+t after time E(item), a sample is inserted at time E(item)+t and marked as a delayed positive example; the conversion rate prediction model F is updated according to the loss function F3 using the weight model and the mark; Step 304, determine whether it is necessary to continue using the current model to provide services, if so, end the streaming training phase, otherwise repeat steps 301 to 304.
8. A computer device, characterized in that: The computer device includes a memory, a processor, and a computer program stored in the memory and executable on the processor. When the processor executes the computer program, the conversion rate model streaming update method based on delayed time sampling as described in any one of claims 1 to 6 is implemented.
9. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program for executing the conversion rate model streaming update method based on delayed time sampling as described in any one of claims 1-6.
Citation Information
Patent Citations
A method and apparatus for predict transaction conversion
CN109308538A
Model performance optimization method and device, equipment and storage medium
CN111368903A