IP Library › Granted Patent US 12,541,724
Granted Patent B2
US 12,541,724 · App. 17/588,032 · Granted Feb 3, 2026

Systems and methods for time-series forecasting

Inventors: Gerald Woo (Singapore, SG); Chenghao Liu (Singapore, SG); Doyen Sahoo (Singapore, SG); Chu Hong Hoi (Singapore, SG)
Assignee: Salesforce, Inc.
G06Q10/04G06N3/08
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,541,724
App. No.
17/588,032
Granted
Feb 3, 2026
Kind
B2
Abstract

A method includes receiving, via a data interface, a training dataset of time-series data samples; and generating, by an encoder of a representation training model, intermediate representations of a training data sample from the training dataset. One or more trend feature representations are generated based on the intermediate representations. One or more seasonal feature representations are generated based on the intermediate representations. The representation training model is trained, using the one or more trend feature representations and one or more seasonal feature representations, to generate a trained representation training model.

Claims (89)

1 . A method of using a machine learning (ML) model, wherein one or more hardware processors are configured to perform the method, comprising:

receiving, via a data interface, a training dataset of time-series data samples;

performing a first data augmentation on the training dataset to generate first augmented data samples;

performing a second data augmentation on the training dataset to generate second augmented data samples;

processing, with an encoder neural network including a temporal convolution network, intermediate representations for samples including the first augmented data samples and the second augmented data samples;

providing the intermediate representations to a trend feature disentangle model and a seasonality feature disentangle model of the ML model respectively;

evaluating, using a representation learning neural network of the ML model, one or more loss functions that evaluate errors between positive samples and negative samples identified in the samples including the first augmented data samples and the second augmented data samples based on the intermediate representations;

validating one or more values of one or more parameters of the encoder neural network and the representation learning neural network based at least in part on the one or more loss functions;

wherein the providing, evaluating, and validating processes further comprise:

generating, using trend feature disentangler model of the ML model, trend feature representations based on the intermediate representations, wherein the trend feature disentangler model includes:

a first autoregressive model implemented using a first causal convolution model having a first kernel size; and

a second autoregressive model implemented using a second causal convolution model having a second kernel size;

wherein the trend feature representations are generated based on outputs of the first autoregressive model and the second autoregressive model;

generating, using the seasonality feature disentangler model of the ML model including a fast Fourier Transform unit, the seasonal feature representations based on the intermediate representations;

generating, using the representation learning model of the multi-layer ML model, a time domain contrastive loss based on the trend feature representations, wherein;

generating, using the representation learning model of the ML model, a frequency domain contrastive loss based on the seasonal feature representations; and

providing a trained representation learning model by updating parameters of the representation learning model of the ML model based on a total loss including the time domain contrastive loss and the frequency domain contrastive loss.

2 . The method of claim 1 , further comprising:

generating, by the trained representation learning model, learned feature representations including disentangled trend feature representations and seasonal feature representations; and

performing a forecasting task based on the learned feature representations.

3 . The method of claim 1 , wherein the generating the one or more trend feature representations based on the intermediate representations includes:

generating, based on the intermediate representations, a plurality of representations using the plurality of autoregressive models respectively; and

generating the one or more trend feature representations by performing average pooling to the plurality of representations.

4 . The method of claim 1 , wherein the generating the one or more seasonal feature representations based on the intermediate representations includes:

transforming the intermediate representations into a frequency domain to generate frequency-domain representations;

applying a complex-valued linear layer with unique weights for each frequency to the frequency-domain representations; and

transforming the frequency-domain representations back to the time domain to generate the one or more seasonal feature representations.

5 . The method of claim 1 , further comprising:

performing a training process to update the parameters of the representation learning model based on the total loss.

6 . The method of claim 1 , wherein the frequency domain contrastive loss includes an amplitude contrastive loss and a phase contrastive loss.

7 . A non-transitory machine-readable medium comprising a plurality of machine-readable instructions which, when executed by one or more processors, are adapted to cause the one or more processors to perform a method comprising:

receiving, via a data interface, a training dataset of time-series data samples;

performing a first data augmentation on the training dataset to generate first augmented data samples;

performing a second data augmentation on the training dataset to generate second augmented data samples;

processing, with an encoder neural network including a temporal convolution network, intermediate representations for samples including the first augmented data samples and the second augmented data samples;

providing the intermediate representations to a trend feature disentangle model and a seasonality feature disentangle model of the ML model respectively;

evaluating, using a representation learning neural network of the ML model, one or more loss functions that evaluate errors between positive samples and negative samples identified in the samples including the first augmented data samples and the second augmented data samples based on the intermediate representations;

validating one or more values of one or more parameters of the encoder neural network and the representation learning neural network based at least in part on the one or more loss functions;

wherein the providing, evaluating, and validating processes further comprise:

generating, using trend feature disentangler model of the ML model, trend feature representations based on the intermediate representations, wherein the trend feature disentangler model includes:

a first autoregressive model implemented using a first causal convolution model having a first kernel size; and

a second autoregressive model implemented using a second causal convolution model having a second kernel size;

wherein the trend feature representations are generated based on outputs of the first autoregressive model and the second autoregressive model;

generating, using the seasonality feature disentangler model of the ML model including a fast Fourier Transform unit, the seasonal feature representations based on the intermediate representations;

generating, using the representation learning model of the multi-layer ML model, a time domain contrastive loss based on the trend feature representations, wherein;

generating, using the representation learning model of the ML model, a frequency domain contrastive loss based on the seasonal feature representations; and

providing a trained representation learning model by updating parameters of the representation learning model of the ML model based on a total loss including the time domain contrastive loss and the frequency domain contrastive loss.

8 . The non-transitory machine-readable medium of claim 7 , wherein the method includes:

generating, by the trained representation training model, learned feature representations including disentangled trend feature representations and seasonal feature representations; and

performing a forecasting task based on the learned feature representations.

9 . The non-transitory machine-readable medium of claim 7 , wherein the generating the one or more trend feature representations based on the intermediate representations includes:

generating, based on the intermediate representations, a plurality of representations using the plurality of autoregressive models respectively; and

generating the one or more trend feature representations by performing average pooling to the plurality of representations.

10 . The non-transitory machine-readable medium of claim 7 , wherein the generating the one or more seasonal feature representations based on the intermediate representations includes:

transforming the intermediate representations into a frequency domain to generate frequency-domain representations;

applying a complex-valued linear layer with unique weights for each frequency to the frequency-domain representations; and

transforming the frequency-domain representations back to the time domain to generate the one or more seasonal feature representations.

11 . The non-transitory machine-readable medium of claim 7 , wherein the method includes:

performing a training process to update parameters of the representation training model based on the total loss.

12 . The non-transitory machine-readable medium of claim 7 , wherein the frequency domain contrastive loss includes an amplitude contrastive loss and a phase contrastive loss.

13 . A system, comprising:

a non-transitory memory; and

one or more hardware processors coupled to the non-transitory memory and configured to read instructions from the non-transitory memory to cause the system to perform a method comprising:

receiving, via a data interface, a training dataset of time-series data samples;

performing a first data augmentation on the training dataset to generate first augmented data samples;

performing a second data augmentation on the training dataset to generate second augmented data samples;

processing, with an encoder neural network including a temporal convolution network, intermediate representations for samples including the first augmented data samples and the second augmented data samples;

providing the intermediate representations to a trend feature disentangle model and a seasonality feature disentangle model of the ML model respectively;

evaluating, using a representation learning neural network of the ML model, one or more loss functions that evaluate errors between positive samples and negative samples identified in the samples including the first augmented data samples and the second augmented data samples based on the intermediate representations;

validating one or more values of one or more parameters of the encoder neural network and the representation learning neural network based at least in part on the one or more loss functions;

wherein the providing, evaluating, and validating processes further comprise:

generating, using trend feature disentangler model of the ML model, trend feature representations based on the intermediate representations, wherein the trend feature disentangler model includes:

a first autoregressive model implemented using a first causal convolution model having a first kernel size; and

a second autoregressive model implemented using a second causal convolution model having a second kernel size;

wherein the trend feature representations are generated based on outputs of the first autoregressive model and the second autoregressive model;

generating, using the seasonality feature disentangler model of the ML model including a fast Fourier Transform unit, the seasonal feature representations based on the intermediate representations;

generating, using the representation learning model of the multi-layer ML model, a time domain contrastive loss based on the trend feature representations, wherein;

generating, using the representation learning model of the ML model, a frequency domain contrastive loss based on the seasonal feature representations; and

providing a trained representation learning model by updating parameters of the representation learning model of the ML model based on a total loss including the time domain contrastive loss and the frequency domain contrastive loss.

14 . The system of claim 13 , wherein the method includes:

generating, by the trained representation training model, learned feature representations including disentangled trend feature representations and seasonal feature representations; and

performing a forecasting task based on the learned feature representations.

15 . The system of claim 13 , wherein the generating the one or more trend feature representations based on the intermediate representations includes

generating, based on the intermediate representations, a plurality of representations using the plurality of autoregressive models respectively; and

generating the one or more trend feature representations by performing average pooling to the plurality of representations.

16 . The system of claim 13 , wherein the generating the one or more seasonal feature representations based on the intermediate representations includes:

transforming the intermediate representations into a frequency domain to generate frequency-domain representations;

applying a complex-valued linear layer with unique weights for each frequency to the frequency-domain representations; and

transforming the frequency-domain representations back to the time domain to generate the one or more seasonal feature representations.

Assignments (2)
CHANGE OF NAME Recorded Aug 4, 2026
From: SALESFORCE.COM, INC.
To: SALESFORCE, INC.
Reel/Frame 076118/0548 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 8, 2023
From: WOO, GERALD; LIU, CHENGHAO; SAHOO, DOYEN; HOI, CHU HONG
To: SALESFORCE.COM, INC.
Reel/Frame 063895/0933 →
Continuity (2)
Provisional Application 63252877 · Oct 6, 2021
Related Publication 20230105970A1 · Apr 6, 2023
References Cited (13)
US 20190354807A1 · Tsai · 2019 [cited by examiner]
US 20190379589A1 · Ryan · 2019 [cited by examiner]
US 20220058669A1 · Yin · 2022 [cited by examiner]
US 20220358356A1 · Gusat · 2022 [cited by examiner]
US 20230052540A1 · Tomsett · 2023 [cited by examiner]
WO WO2017055878A1 · 2017 [cited by examiner]
H Wang, Z Lei, X Zhang, B Zhou, J Peng et al. (A review of deep learning for renewable energy forecasting), Energy Conversion and . . . , 2019—Elsevier. (Year: 2019). [cited by examiner]
Dr. S. Chen et al. (Intelligent Nonlinear Learning Machines), 2005—School of Electronics and Computer Science—southampton.ac.uk (Year: 2005). [cited by examiner]
AM Sarroff, V Shepardson, MA Casey (Learning representations using complex-valued nets), arXiv preprint arXiv:1511.06351, 2015—arxiv.org (Year: 2015). [cited by examiner]
F Bonin, F Dell'Orletta, G Venturi, S Montemagni (A contrastive approach to multi-word term extraction from domain corpora), Proceedings of the 7th International Conference on Language Resources and . . . , 2010⋅Irec.el… [cited by examiner]
24. F Bonin, F Dell'Orletta, G Venturi, S Montemagni (A contrastive approach to multi-word term extraction from domain corpora), Proceedings of the 7th International Conference on Language Resources and . . . , 2010⋅Ire… [cited by examiner]
Zhihan Yue, Yujing Wang, Juanyong Duan, Tianmeng Yang, Congrui Huang, Yunhai Tong, and Bixiong Xu. TS2Vec: Towards Universal Representation of Time Series, 2021. [cited by applicant]
Bernhard Scholkopf, Francesco Locatello, Stefan Bauer, Nan Rosemary Ke, Nal Kalchbrenner, Anirudh Goyal, an Yoshua Bengio. Toward causal representation learning. Proceedings of the IEEE, 109(5):612-634, 2021. [cited by applicant]