Skip to content

Add SOFTSSharp model#1516

Merged
marcopeix merged 10 commits into
Nixtla:mainfrom
hljubic:add-softssharp
May 28, 2026
Merged

Add SOFTSSharp model#1516
marcopeix merged 10 commits into
Nixtla:mainfrom
hljubic:add-softssharp

Conversation

@hljubic

@hljubic hljubic commented May 11, 2026

Copy link
Copy Markdown
Contributor

This PR adds SOFTSSharp, an extension of SOFTS that introduces stochastic variable-position encoding inside the STAD aggregation-redistribution component.

SOFTSSharp is intended as an incremental improvement over SOFTS while preserving linear computational complexity.

Reference implementation and ongoing research:
https://github.com/hljubic/SOFTSsharp

Changes:

  • Adds the SOFTSSharp model implementation.
  • Exposes SOFTSSharp through neuralforecast.models.
  • Registers softssharp in the model filename mapping.
  • Adds a minimal model test using the existing check_model AirPassengers workflow.

@CLAassistant

CLAassistant commented May 11, 2026

Copy link
Copy Markdown

CLA assistant check
All committers have signed the CLA.

@marcopeix

Copy link
Copy Markdown
Contributor

Thanks for the contribution. Please, refer to these PRs to see how to contribute a new model to the repository:

In its current state, we cannot accept this PR. Thanks!

@review-notebook-app

Copy link
Copy Markdown

Check out this pull request on  ReviewNB

See visual diffs & provide feedback on Jupyter Notebooks.


Powered by ReviewNB

@hljubic

hljubic commented May 16, 2026

Copy link
Copy Markdown
Contributor Author

@marcopeix Thanks for the guidance. I updated the PR following the patterns in #1445 and #1469.

The PR now adds:

  • AutoSOFTSSharp
  • save/load support through MODEL_FILENAME_DICT
  • model documentation and docs navigation entry
  • capabilities overview entry
  • tests for SOFTSSharp and AutoSOFTSSharp

Local checks passed.

@marcopeix

Copy link
Copy Markdown
Contributor

Hi @hljubic. Looking good! A couple of things:

  • Can you add an image as in [FEAT] Add XLinear #1445. A .png file that is included in the documentation.
  • Can you also add a small comment to this PR to compare the results achieved between the paper and the implementation in neuralforecast, like in [FEAT] Add XLinear #1445. It helps validate the implementation. Small differences in the results are okay.
  • Update the branch with the latest changes so we can merge.

Thanks a lot!

@marcopeix marcopeix left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

See comments above.

@hljubic

hljubic commented May 25, 2026

Copy link
Copy Markdown
Contributor Author

@marcopeix Sorry for late response.

I added the requested PNG figure to the SOFTSSharp documentation and ran a paper-like ETTh1 96/96 reproducibility check for SOFTSSharp.

For ETTh1, I used h=96, input_size=96, the standard ETTh1 train/validation/test split, five random seeds [1, 2, 3, 4, 5], and the same main SOFTSSharp configuration across all runs.

Seed MSE MAE
1 0.393 0.407
2 0.391 0.406
3 0.391 0.407
4 0.385 0.404
5 0.387 0.407

Average across five seeds:

Model MSE MAE
SOFTSSharp 0.389 0.406

The results are consistent with the paper-level results, with slightly lower average errors in this implementation.

@marcopeix

Copy link
Copy Markdown
Contributor

@hljubic sorry, some work was merged and the branch has a conflict in the auto version. Should be a simple fix, let me know if you need help! Otherwise, looks good!

@hljubic

hljubic commented May 28, 2026

Copy link
Copy Markdown
Contributor Author

@marcopeix done, it should be okay now.

@marcopeix marcopeix left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@hljubic
The linter check didn't pass. Make sure to install and run pre-commit hooks. Refer to our CONTRIBUTING.md.

Comment thread neuralforecast/auto.py
@hljubic

hljubic commented May 28, 2026

Copy link
Copy Markdown
Contributor Author

@marcopeix sorry, I added a new commit and double-checked it. I hope it’s okay now.

@marcopeix marcopeix merged commit b5bca21 into Nixtla:main May 28, 2026
14 checks passed
@hljubic hljubic deleted the add-softssharp branch May 28, 2026 14:20
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

Successfully merging this pull request may close these issues.

3 participants