Posted: 28 Jun 2018 15:11 EDT Last activity: 3 Jul 2018 5:06 EDT
Train the adaptive models based on the past interaction outcomes by uploading customer responses
We have a requirement to train the adaptive models based on the past interactions. We have uploaded the interactions with subjectid, outcome and interactionid into the upload responses landing page manually. This is updating the models correctly but how does this wizard takes the customer predictor values into the adaptive model predictor. I think we are missing something.
Uploading customer responses You can enhance the performance of adaptive models by uploading actual or sample historical records with customer interaction. Those records train the model and make the model more reliable.
ADM only considers positive and negative cases that correspond to the possible outcomes that are defined in the adaptive model settings. It is also possible to train models through activities.
Basically, you take the historical data, set the "outcome" (positive/negative) in a strategy and send that in bulk to adaptive. It's pretty straightforward and flexible, and allows you to train multiple models at once, something the wizard wont allow you to do.
Thanks for responding back to my question. I have seen the article which you have shared. Our requirement is like this.
We have our predictor data in our DDS when we sent our request from pega(Make Request Process). We capture the responses based on capture responses flow(using Delay Learning). Now we changed our outcome values of the existing adaptive models. Business asked us to clear the ADM models and retrain the old data with the new adaptive outcomes. We have almost 700 predictors in our case and our customer predictors changes everyday. If there any way to retrain the models with old predictors(Already in DDS as JSON) and new outcomes. We thought of using the upload responses CSV but it will not be helpful in our case. Our old predictor values are in JSON in DDS and it might have changed in the actual customer tables by now. Thanks in advance.
Interesting use case. If I understand you correctly, you have models, trained for a while and now want to create models for a different outcome, using the same historical payload. Is that correct?
So even if you extract the historical payload out of pxDecisionResults (where they are technically stored), how will you deal with the responses to those previous decisions? Where would the (simulated) outcomes come from?
What is the response rate anyway? Wouldn't new models pick up quickly? And I don't know what the predictions are now and what you want them to be, but if they are similar enough, you could also either feed the current model outputs into the new model, or even use the old model results as a proxy for the new models (and, perhaps gradually, cut over).
You are correct. We are storing the responses of every outcome in the interaction history from the beginning. This is technically not needed but we want to make sure that our responses are captured so that it will be helpful for the reporting and other requirements. We have identified two ways to solve this problem. We are still working on the pros and cons of every way.
Way 1: Create a CSV file with all the predictors and upload into the model manually using this upload wizard in adaptive model landing page.
Pros: Out of the box
Cons: We have around 500 predictors. Learning will happen on new predictor values but on the old values in the DDS. Business is ok with this.
Way 2: We are also storing the predictors into Cassandra store for supporting few features. We can create a file listener/table with a dataset(from interaction history), get the customer id from IH and open the DDS. Once the old predictor result is available, run the strategy, make decision with delay outcome and write the response immediately with the old out come from interaction history.
Pros: Learning still happens with old predictor values.
Please let me know if we are missing something. Thanks in advance.
Hi Nizam, I'm still not 100% clear on your use case and what you're trying to achieve. I'd be happy to help, but perhaps it's better to continue the conversation off-line. Feel free to drop me an e-mail and we can perhaps set up a quick call to discuss things.
You can save as the older version of Adaptive model( whose predictor data is stored in DDS) as a new Adaptive model. Use the predictor data and response to train the new model. This new model can be used in conjunction with existing models.
Thanks for responding back to my question. We have already updated the older version of adaptive models with new outcomes as new a model(Same name). But the predictors are in my DDS and I need to train using that old data as part of delay learning. I cannot get the customer attributes now(They will be changed every day).