0
$\begingroup$

As suggested by Tim, gung, whuber I am editing this question and narrowing down the problem.

For hotels, I want to forecast number of room bookings that will happen x days before the day of check-in. So my data will be

  1. x days before check-in

  2. what happened in past, x days before the day of check-in.

  3. air traffic data, to test if it has an impact.

What I need help for is: For demand forecasting purpose, is there any methodology which is 'one size fits all' type and has following features.

  1. Creates a model by itself when fed input data and determines mathematical equation or learns from data.

  2. Works for any and every situation. To give context a client in Europe might have same data structure in their sql database in terms of name, variable type in comparison to sql database of a client who is based in Singapore. However, Singapore data might have different trend, seasonality and pattern in comparison to data in Europe. Is there any technique which can work in all such situations.

  3. It adjusts to new trends/patterns that appear over time which might not have been captured in the existing model.

$\endgroup$
  • 3
    $\begingroup$ Related stats.stackexchange.com/questions/160146/… , but in my opinion this question is too broad since it asks how to build whole system from the scratch and does not focus on any specific problem. $\endgroup$ – Tim Dec 13 '15 at 13:31
  • $\begingroup$ You might be interested in reinforcement learning and online learning. But this is an open area of research and as of yet we're a long long way away from having a drop-in general solution. Some companies claim to offer one, like Context Relevant, but they charge an arm and a leg to Fortune 500 companies; not something an average user can get their hands on. $\endgroup$ – shadowtalker Dec 13 '15 at 15:29
  • $\begingroup$ But I think you're also overthinking this problem, and probably also getting caught up by some buzzwords like "Deep Learning." You can build fairly general models or modeling procedures, without appealing specifically to machine learning, to handle seasonality and trends that vary between clients. $\endgroup$ – shadowtalker Dec 13 '15 at 15:33
  • $\begingroup$ @ssdecontrol can you please elaborate on the second part of your second comment? can you provide me hint for published papers/books or further reading on how to build general models or modeling procedures, to handle seasonality and trends that vary between clients? If i understood correctly, there is some kind of 'one size fits all' kind of regression models? so once built, it can be used for multiple clients without any editing or re-modelling. $\endgroup$ – Enthusiast Dec 13 '15 at 15:40
  • 1
    $\begingroup$ @MdAzimulHaque no, I don't mean "one size fits all." I mean "one size fits more than you might think." Take a look at Seasonal ARIMA models, and trend-cycle decomposition. The Census publishes a software package, X-13ARIMA-SEATS, devoted to seasonal adjustment $\endgroup$ – shadowtalker Dec 13 '15 at 16:25
1
$\begingroup$

Neural networks:

  1. Learn from data and create an internal model. Don't easily give you reasons why they made those particular predictions. There are ways to figure out why it did by ranking input features.

  2. Work for any type of seasonal data, provided it is in the same format and the pre-processing is the same in all accounts. The more variety in your data, the better it will be at generalizing over other geographical areas (predicting everywhere). I believe in your case the optimal choice would be an ensemble of several networks.

  3. Stochastic gradient descent is an online training method that causes the model to adapt to new data, without having to repeat the training from the start. It adapts to new data. Anything that the model hasn't seen before, it can't predict. Similar things can be predicted, not completely unknown.

$\endgroup$
  • $\begingroup$ point1: did you refer to neural nets? or any other technique? point2: did you suggest that i collect data for singapore and europe and put it in model so that it learns region specific variation? if yes this is not practical as firstly, i don't know if tomorrow i will have a client from korea and one from south africa next day! secondly, even within a single country seasonality tends to differ. $\endgroup$ – Enthusiast Dec 17 '15 at 2:48
  • $\begingroup$ point3: thanks. can it be applied for both supervised and unsupervised learning? do you have any tutorial material or r code for this? $\endgroup$ – Enthusiast Dec 17 '15 at 2:54
  • $\begingroup$ All points are about neural networks, in principle can be applied to any gradient based learning algorithm. As I understand you want to forecast the number of bookings. I don't understand your statement of why that approach is not practical. Why does it matter where the client comes from? That can be another feature you add to your model when you train it, location. Seasonality is not a problem. The main question is: is the seasonality correlated or not. If not, there is not much gained from a single model. $\endgroup$ – shuriken x blue Dec 17 '15 at 5:11
  • $\begingroup$ point 3: SGD requires an objective function. this measures how far you are from your target. If you can define one for unsupervised learning, then yes it can also be applied in that case. The wikipedia article is quite good and also has links for popular libraries en.wikipedia.org/wiki/Stochastic_gradient_descent you might want to look into libraries like theano, torch, tensor flow and caffe (for neural networks). these algorithms have already been implemented. no need to re-invent the wheel. good luck! $\endgroup$ – shuriken x blue Dec 17 '15 at 5:14

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.