facebook / prophet

Tool for producing high quality forecasts for time series data that has multiple seasonality with linear or non-linear growth.
https://facebook.github.io/prophet
MIT License
18.26k stars 4.51k forks source link

Minimum number of data points in time series #783

Closed sophia-wright-blue closed 5 years ago

sophia-wright-blue commented 5 years ago

I hope this question makes sense:

I have time series usage data for about 1000 users. I'm able to run prophet on the entire dataset, and get very good results.

But I'm also interested in individual user analysis. The problem I'm facing is that some of the users are very light users, and I only have a few data points for them. Hence, the question - Is there a minimum number of data points required to be able to accurately fit a Prophet model?

I hope my query is clear. Please let me know if I can add any information that'd help with understanding the problem better.

Any guidance on this or even links to related articles/posts would be very helpful.

Thanks,

dhanashreearole commented 5 years ago

Hi, That is good question. In my experience of monthly predictions, I have seen that prophet needs atleast 18 months to predict for 12 months, else it complains of not having enough datapoints. You will have to play with the input dataset and future dataframe parameters to conclude the minimum size of input dataset for how much in future you can predict. Hope that addresses your question! Thanks, Dhanashree

sophia-wright-blue commented 5 years ago

thanks for replying @dhanashreearole , i'm mostly interested in week ahead forecasts, and i have sparse data for the last few months, i'll experiment with fitting Prophet models. thanks again,

bletham commented 5 years ago

+1 for @dhanashreearole's comment, it really depends on the sort of structure that you need to capture, and how far you want to forecast. If you want to capture yearly seasonality, then you need at least a year of data, if you only care about weekly seasonality then a couple weeks would suffice. How far you can forecast out based on the size of your history also depends on how stable the time series is, but you could try using the cross validation on some of the longer ones to see what the forecast horizon looks like (that is, how far out can you get reasonable prediction error).

If you have some users that have more data that you think are examplars of typical usage, you could consider including their timeseries/forecast as an extra regressor for an individual user with less data. That user's forecast would then be biased towards the forecast for the user with more data, which could be useful shrinkage and reduce variance.

sophia-wright-blue commented 5 years ago

thanks for the clarification @bletham ; i'm clear about the duration of the data required for forecasting out;

my problem is that I need to be able to capture the usage patterns of sparse users with a fair amount of confidence; i'll try your idea of add heavy user data as an extra regressor;

greatly appreciate your response and all of the work you put in to help the users of this amazing library! looking forward to more features in 2019!

sushmit86 commented 5 years ago

@sophia-wright-blue were you able to do the user level analysis. I am trying to do a similar thing

dhanashreearole commented 5 years ago

I am not sure what you mean by user level analysis?

From: Sushmit Roy notifications@github.com Sent: Thursday, May 9, 2019 3:32 PM To: facebook/prophet prophet@noreply.github.com Cc: Arole, Dhanashree DArole@national.aaa.com; Mention mention@noreply.github.com Subject: [EXTERNAL] Re: [facebook/prophet] Minimum number of data points in time series (#783)

@sophia-wright-bluehttps://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_sophia-2Dwright-2Dblue&d=DwMCaQ&c=rlZAUarxv0HOJXjDdf7mE9Es74rYvd5gG3lFJaIo-yg&r=3WRKkWAw3ra4jUDWD6vVxsOCc2zM1Jkf6Lk2r_aULgo&m=0OpwsXaZDxMYQmXRsyg7OETi78ZPxduxLirKuDbyGHQ&s=hjMRs-nagJY1aU7orfP8C2xRfHygRT4hTSaDP-QrdWk&e= were you able to do the user level analysis. I am trying to do a similar thing

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHubhttps://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_facebook_prophet_issues_783-23issuecomment-2D491035986&d=DwMCaQ&c=rlZAUarxv0HOJXjDdf7mE9Es74rYvd5gG3lFJaIo-yg&r=3WRKkWAw3ra4jUDWD6vVxsOCc2zM1Jkf6Lk2r_aULgo&m=0OpwsXaZDxMYQmXRsyg7OETi78ZPxduxLirKuDbyGHQ&s=SF9_gWccWYi8LhncqK8MN4BpN8VqA_kVR8JAyP3RQ0M&e=, or mute the threadhttps://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_notifications_unsubscribe-2Dauth_AKODXHRTZLLPYN7G6F2ILCLPUR34HANCNFSM4GMFCKQA&d=DwMCaQ&c=rlZAUarxv0HOJXjDdf7mE9Es74rYvd5gG3lFJaIo-yg&r=3WRKkWAw3ra4jUDWD6vVxsOCc2zM1Jkf6Lk2r_aULgo&m=0OpwsXaZDxMYQmXRsyg7OETi78ZPxduxLirKuDbyGHQ&s=GTpp-4fmcT5qbwla22AtmDrsQEwzFL20j_xDl5dbNSA&e=.


EXTERNAL - This email originated from an external source


[AAA] Get the AAA Mobile app! [http://www.aaa.com/AAA/images/applebadge.png]http://www.aaa.com/configuration/SEM/AAAEmailMobileAppDownload.html?app=IOS[http://www.aaa.com/AAA/images/googlebadge.png]http://www.aaa.com/configuration/SEM/AAAEmailMobileAppDownload.html?app=ANDROID

AAA Disclaimer Communication This communication (including all attachments) is intended solely for the use of the person(s) to whom it is addressed and should be treated as a confidential AAA communication. If you are not the intended recipient, any use, distribution, printing, or copying of this email is strictly prohibited. If you received this email in error, please immediately delete it from your system and notify the originator. Your cooperation is appreciated.