I am working on a request prediction problem in which I have to predict which object will be requested in the near future and how many times. This is like a basic internet traffic request pattern on a proxy cache. What I am doing is categorizing the new object in categories like "rare event", "moderatly requested", "frequently requested" etc. For each of the group, I have modelled the requested pattern by different log-normal interarrival distributions. This grouping is done based on few features like, type of object, age of object,etc.

Now I am trying to predict the next occurrence using their respective distribution.

I am using Gradient Boosting trees for the classification purpose.

I want to know, how can I update my model if my classification is going wrong. As I will have the exact information about the frequency of the object request only after some requests have occurred.

Is there a better way to model this problem ?

My other concern is, the object's popularity can change with time. How do deal with that?



Reinforcement learning is your best bet to solve this kind of problem. The logic behind reinforcement learning is that you will start off with an initial belief (such as how much time will pass before an event's next occurrence).

As you observe what is happening, that belief will either change or stay the same based on the observed results. So, for example, if you initially believe that an event will happen in 10 seconds, but it happens in 20, maybe now you will believe it will happen in 15 seconds.

Reinforcement learning will automatically allow you to change your classifications over time as if the popularity changes, you will see a change in your predicted results.


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.