1
$\begingroup$

I am working on a forecasting problem and came across this issue. How do I forecast sales of a brand new product? For example, a product has been introduced in the store and the store would like to know how the sales will look like.

I figured this would be similar to cold start problem in recommender systems. But still I would like to know if there are any standard approaches for such problems.

$\endgroup$
  • 3
    $\begingroup$ What data do you have? Which features do you have? $\endgroup$ – Martin Thoma Aug 24 '16 at 9:19
1
$\begingroup$

Without any additional data description, i would try out something along these lines:

  • Cluster the shapes of the sales curves using methods for longitudinal data clustering (K-means for longitudinal data / frechet distance...)

  • Classify your products by using the features that you have as predictors and the cluster label as response (CHAID trees / random forests...)

  • Predict class of new product will result in a probable future sales curve ?

It will highly depend on the quality of the classifier though, but I think it's worth a try. hope this helps, and let us know what did you end up doing - will be interesting to hear.

$\endgroup$
1
$\begingroup$

I will try below steps:

  1. Find similar existing products: Clustering the brand new product with existing products.
  2. Interpolate the predicted sales for this brand new product: Since we already found a cluster of existing products which are similar to this brand new product, we can apply predicting algorithm on the existing products and interpolate the predicted sales for the brand new product.

Hope this will help you.

$\endgroup$
1
$\begingroup$

You could use Bass or Gamma/Shifted Gompertz method to do that. You could use diffusion package in R.

Here an example (it is form documentation of the package) :

library(diffusion) 

fitbass <- diffusion(tsChicken[, 2], type = "bass")
fitgomp <- diffusion(tsChicken[, 2], type = "gompertz")
fitgsg <- diffusion(tsChicken[, 2], type = "gsgompertz")
# Produce some plots
plot(fitbass)

plot(fitgomp)

plot(fitgsg)

fc_bass <- predict(fitbass,h=20)

fc_gomp <- predict(fitgomp,h=20)

fc_gsg <- predict(fitgsg,h=20)

plot(fc_bass)

plot(fc_gomp)

plot(fc_gsg)

The only disadvantage of the methods is that they do not take care of seasonality of the sales of the products.

$\endgroup$

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.