{"about":{"site":"https://codewithpapers.app","non_affiliation":"Code with Papers and Syntology are not affiliated with, endorsed by, or sponsored by Papers with Code, Meta, or the pwc-archive mirror.","licence":"CC BY-SA 4.0","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","attribution":"https://codewithpapers.app/attribution","modified":"archive material modified by Syntology; see the attribution page"},"url":"/paper/neuralprophet-explainable-forecasting-at","title":"NeuralProphet: Explainable Forecasting at Scale","arxiv_id":"2111.15397","date":"2021-11-29","proceeding":null,"authors":["Oskar Triebe","Hansika Hewamalage","Polina Pilyugina","Nikolay Laptev","Christoph Bergmeir","Ram Rajagopal"],"abstract":"We introduce NeuralProphet, a successor to Facebook Prophet, which set an industry standard for explainable, scalable, and user-friendly forecasting frameworks. With the proliferation of time series data, explainable forecasting remains a challenging task for business and operational decision making. Hybrid solutions are needed to bridge the gap between interpretable classical methods and scalable deep learning models. We view Prophet as a precursor to such a solution. However, Prophet lacks local context, which is essential for forecasting the near-term future and is challenging to extend due to its Stan backend. NeuralProphet is a hybrid forecasting framework based on PyTorch and trained with standard deep learning methods, making it easy for developers to extend the framework. Local context is introduced with auto-regression and covariate modules, which can be configured as classical linear regression or as Neural Networks. Otherwise, NeuralProphet retains the design philosophy of Prophet and provides the same basic model components. Our results demonstrate that NeuralProphet produces interpretable forecast components of equivalent or superior quality to Prophet on a set of generated time series. NeuralProphet outperforms Prophet on a diverse collection of real-world datasets. For short to medium-term forecasts, NeuralProphet improves forecast accuracy by 55 to 92 percent.","url_abs":"https://arxiv.org/abs/2111.15397v1","url_pdf":"https://arxiv.org/pdf/2111.15397v1.pdf","source":{"archive":"pwc-archive (Hugging Face), CC BY-SA 4.0","snapshot":"2025-07-28","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","row_kind":"abstracts"},"code_links":[{"paper_slug":"neuralprophet-explainable-forecasting-at","repo_url":"https://github.com/ourownstory/neural_prophet","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"decision-making","task_name":"Decision Making"},{"task_slug":"philosophy","task_name":"Philosophy"},{"task_slug":"time-series-1","task_name":"Time Series"},{"task_slug":"time-series","task_name":"Time Series Analysis"},{"task_slug":"regression-1","task_name":"regression"}],"methods":[{"method_slug":"linear-regression","method_name":"Linear Regression"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2111.15397","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2111.15397"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-24T18:15:14+00:00","read_at_is":"when the build read Syntology's graph, not when any sample ran","claim":"Per-sample execution status on synthesized fixtures; not a correctness claim about the paper. Samples come from repositories linked to the paper, official or community; repo_kind says which.","repos":[{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/ourownstory/neural_prophet","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"unverified":7},"by_repo_kind":{"official":{"samples":7,"ran":0,"repositories":1}},"repo_kind_vocabulary":{"official":"The archive marks this repository official for the paper","named_in_paper":"The archive records that the paper mentions this repository; it is not marked official","listed":"In the archive's code links for this paper, not marked official and not recorded as mentioned in the paper","found_in_text":"Syntology found this repository in the paper's own text; whether it is the authors' implementation is not asserted","community":"Not in the archive's code links for this paper; a community repository Syntology harvested"},"n_pointer_only_for_licence":0,"samples":[{"code_sha256_prefix":"55e6b51a2099a219","entry":"check_multiple_series_id","repo":"ourownstory/neural_prophet","repo_kind":"official","path":"neuralprophet/df_utils.py","file_url":"https://github.com/ourownstory/neural_prophet/blob/HEAD/neuralprophet/df_utils.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"55e6b51a2099a219"}},{"code_sha256_prefix":"d5206169f97f06b2","entry":"get_dynamic_axis_range","repo":"ourownstory/neural_prophet","repo_kind":"official","path":"neuralprophet/plot_model_parameters_plotly.py","file_url":"https://github.com/ourownstory/neural_prophet/blob/HEAD/neuralprophet/plot_model_parameters_plotly.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"d5206169f97f06b2"}},{"code_sha256_prefix":"39145a33caa43e9b","entry":"merge_dataframes","repo":"ourownstory/neural_prophet","repo_kind":"official","path":"neuralprophet/df_utils.py","file_url":"https://github.com/ourownstory/neural_prophet/blob/HEAD/neuralprophet/df_utils.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"39145a33caa43e9b"}},{"code_sha256_prefix":"2974b74148d37c5d","entry":"plot_components","repo":"ourownstory/neural_prophet","repo_kind":"official","path":"neuralprophet/torch_prophet.py","file_url":"https://github.com/ourownstory/neural_prophet/blob/HEAD/neuralprophet/torch_prophet.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"2974b74148d37c5d"}},{"code_sha256_prefix":"7092508fed578b4b","entry":"plot_trend","repo":"ourownstory/neural_prophet","repo_kind":"official","path":"neuralprophet/plot_model_parameters_matplotlib.py","file_url":"https://github.com/ourownstory/neural_prophet/blob/HEAD/neuralprophet/plot_model_parameters_matplotlib.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"7092508fed578b4b"}},{"code_sha256_prefix":"d2efabb8afef33ab","entry":"plot_trend_change","repo":"ourownstory/neural_prophet","repo_kind":"official","path":"neuralprophet/plot_model_parameters_matplotlib.py","file_url":"https://github.com/ourownstory/neural_prophet/blob/HEAD/neuralprophet/plot_model_parameters_matplotlib.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"d2efabb8afef33ab"}},{"code_sha256_prefix":"5294cedc2a2b165a","entry":"return_df_in_original_format","repo":"ourownstory/neural_prophet","repo_kind":"official","path":"neuralprophet/df_utils.py","file_url":"https://github.com/ourownstory/neural_prophet/blob/HEAD/neuralprophet/df_utils.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"5294cedc2a2b165a"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}