Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Non-EPF Example #3

Open
georgeblck opened this issue May 31, 2021 · 4 comments
Open

Non-EPF Example #3

georgeblck opened this issue May 31, 2021 · 4 comments

Comments

@georgeblck
Copy link

Thank you for this paper and the code. I am excited to try out the NBEATSx.

Would it be possible for you to share a minimal notebook that applies the method not to the price forecasting task but some more general time-series problem? I tried doing this but don't understand the specific hyperparameter settings from your nbeatsx_example.ipynb. In particular what idx_to_sample_freq specifies and how the lag dict works:

include_var_dict = {'y': [-8,-4,-3,-2],
                    'Exogenous1': [-8,-2,-1],
                    'Exogenous2': [-8,-2,-1],
                    'week_day': [-1]}

I prepared some code that downloads a dataset that is frequently used in time-series examples. It is the Jena Climate dataset recorded by the Max Planck Institute for Biogeochemistry. The dataset consists of 14 features such as temperature, pressure, humidity etc, recorded once per 10 minutes. Data is available for 8 years.
So it has a more unusual time structure but also a very simple task: predict the future temperature (with exogenous variables).
Example settings could be

window_sampling_limit=365*4*24*6, input_size=7*24*6, output_size=24*6

Please let me know if this would be possible for you; it would help me a lot in understanding NBEATSx.


# Code that downloads the Jena Climate dataset
from zipfile import ZipFile
from urllib.request import urlopen
from io import BytesIO
import pandas as pd

r = urlopen("https://storage.googleapis.com/tensorflow/tf-keras-datasets/jena_climate_2009_2016.csv.zip").read()
zip_data = ZipFile(BytesIO(r))
csv_path  = zip_data.open("jena_climate_2009_2016.csv")
df = pd.read_csv(csv_path, parse_dates = ["Date Time"])
@cchallu
Copy link
Owner

cchallu commented Jul 6, 2021

Hello,

We are developing a new library with several models, including NBEATSx, in another repository: https://github.com/Nixtla/nixtlats

Please refer to the documentation (https://nixtla.github.io/nixtlats/) for usage examples.

@whut-lxy
Copy link

Did you succeed in your attempt? I also want to do this recently. There are too many changes to change the dataset code.@georgeblck

@georgeblck
Copy link
Author

Hi,
I never got around to trying the nixtla package because I've been having good success with another top forecasting method/package (TFT from the pytorch forecasting package)

However, I have some time right now and I'm still interested in trying out NBEATSx at least once. If I succeed in writing up an example I will mention it here

@whut-lxy
Copy link

Thank you for your reply. Unfortunately, I also used TFT before, but the prediction effect is not very good. The final result is a straight line. I may have made a mistake. I'll try again. By the way, I wish you all the best.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants