I am new to machine learning.

I'm having a task of predicting whether a user will churn in March, given February feature data and the churn result. However, March data is leaked and now I'm assigned to predict for April.

My strategy is to train the model with February data and perform cross validation with March data. Then I will try to predict April data using model trained with February data.

Here are my questions:

  • Is my strategy good?
  • Or should I append both February data and March data to predict April data?

You might want to check out my answer to a related question here.

If you want to cross-validate time series data, I would suggest creating some sort of sliding window on which you train your model and predict the next month following that window.

For example, you could train your model on February data and then predict the data of the first week of March. Then slide your window to include data from the second week of February through the first week of March and then predict the data of the second week in March. The length of the windows that you use to train and test on are parameters that you will need to play around with yourself to see what gets you the best results.

Once you feel like you are getting good results from your cross-validation, I would try training a new model on all of the data you have and see how it performs on the new data coming in. Depending on the data and model you are using, this may provide better results having trained on more data. Of course, this depends on the problem you are trying to solve, the nature of your data and your choice of model.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.