DETAILED ACTION
Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
This action is responsive to the Application filed on January 5, 2024. Claims 1-20 are pending in the case. Claims 1, 11, and 17 are the independent claims.
This action is non-final.
Claim Rejections – 35 USC § 101
35 U.S.C. 101 reads as follows:
Whoever invents or discovers any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof, may obtain a patent therefor, subject to the conditions and requirements of this title.
Claims 1-20 are rejected under 35 U.S.C. 101 because the claimed invention is directed to an abstract idea (mental steps) without significantly more. This judicial exception is not integrated into a practical application because any additional elements amount to implementing the abstract idea on a generic computer. The claim(s) does/do not include additional elements that are sufficient to amount to significantly more than the judicial exception.
Regarding independent claims 1, 11, and 17, and relying on the evaluation flowchart in MPEP 2106:
Step 1 (Is the claim to a process, machine, manufacture, or composition of matter?): Yes. Claim 1 is a system (machine). Claim 11 is a method (process). Claim 17 is a storage medium (article of manufacture).
Step 2a Prong One (Does the claim recite an abstract idea?): Yes. Claims 1, 11, and 17 recite:
obtaining a target time series (a mental process, such as a human mentally observing a target time series);
obtaining at least one reference time series associated with the target time series (a mental process, such as a human mentally observing a reference time series);
generating a self-similarity vector for the reference time series by determining a similarity between a current time window of the reference time series and one or more subsequences of the reference time series, different from the current time window (a mental process, including a mental process performing mathematical calculations and performed using a physical aid such as pen and paper, such as a human mentally calculating/generating a self-similarity vector for the reference time series by determining similarities between a current window of the reference time series and at least one different subsequence of the reference time series);
based on the self-similarity vector, identifying one or more historic timestamps of the reference time series with similarity values above a threshold similarity value (a mental process of determination, such as a human mentally identifying/determining the historic timestamps of the reference series based on a similarity threshold comparison);
generating one or more future projections of the target time series based on the identified timestamps (a mental process, including a mental process performing mathematical calculations and performed using a physical aid such as pen and paper, such as a human mentally determining/generating a future projection of the target time series based on a timestamp); and
generating a forecasting of the target time series using a read-out function (a mental process, such as a human mentally predicting/generating a forecast for the target time series).
Under the broadest reasonable interpretation, these steps may be performed mentally, using mental observation and mental determination, including by a human using a physical aid such as pen and paper, including a human mentally performing observations and mentally performing mathematical calculations, and therefore correspond to the Mental Processes grouping.
Step 2a Prong Two (Does the claim recite additional elements that integrate the judicial exception into a practical application?): No. Claims 1, 11, and 17 additionally recite:
that the forecasting is generating using a read-out function (mere instructions to apply the exception using generic computer components as discussed in MPEP 2106.05(f));
(in claim 1) a system for time series forecasting using a pattern matching-based machine learning model, the system comprising: at least one computer hardware processor; and at least one non-transitory computer-readable storage medium storing processor-executable instructions that, when executed by the at least one computer hardware processor, causes the at least one computer hardware processor to perform a method (mere instructions to apply the exception using generic computer components as discussed in MPEP 2106.05(f));
(in claim 17) at least one non-transitory computer-readable storage medium storing processor-executable instructions that, when executed by at least one computer hardware processor, causes the at least one computer hardware processor to perform a method (mere instructions to apply the exception using generic computer components as discussed in MPEP 2106.05(f));
(in claim 11) A method for time series forecasting using a pattern matching-based machine learning model (mere instructions to apply the exception using generic computer components as discussed in MPEP 2106.05(f)).
Moreover, to the extent that the steps of obtaining the target and reference time series are to be performed in the context of a computer-based implementation, these limitations may also be considered to be insignificant extra-solution activity as discussed in MPEP 2106.05(g).
Therefore, in view of the considerations set forth in MPEP 2106.04(d), 2106.05(a)-(c) and (e)-(h), the additional elements as disclosed above alone or in combination do not integrate the judicial exception into a practical application as they are mere insignificant extra solution activity, combined with implementing the abstract idea using generic computer components.
Step 2b (Does the claim recite additional elements that amount to siqnificantly more than the judicial exception): No. Relying on the same analysis as Step 2a Prong Two (see MPEP 2106.05.I.A: Limitations that the courts have found not to be enough to qualify as “significantly more” when recited in a claim with a judicial exception include:…Adding the words “apply it” (or an equivalent) with the judicial exception, or mere instructions to implement an abstract idea on a computer, e.g., a limitation indicating that a particular function such as creating and maintaining electronic records is performed by a computer, as discussed in Alice Corp., 573 U.S. at 225-26, 110 USPQ2d at 1984 (see MPEP 2106.05(f));…Simply appending well-understood, routine, conventional activities previously known to the industry, specified at a high level of generality, to the judicial exception...; Adding insignificant extra-solution activity to the judicial exception, as discussed in MPEP 2106.05(g);…)), claims 1, 11, and 17 do not recite any additional elements that amount to significantly more than the abstract idea. As discussed above, Claims 1, 11, and 17 recite:
that the forecasting is generating using a read-out function (mere instructions to apply the exception using generic computer components as discussed in MPEP 2106.05(f));
(in claim 1) a system for time series forecasting using a pattern matching-based machine learning model, the system comprising: at least one computer hardware processor; and at least one non-transitory computer-readable storage medium storing processor-executable instructions that, when executed by the at least one computer hardware processor, causes the at least one computer hardware processor to perform a method (mere instructions to apply the exception using generic computer components as discussed in MPEP 2106.05(f));
(in claim 17) at least one non-transitory computer-readable storage medium storing processor-executable instructions that, when executed by at least one computer hardware processor, causes the at least one computer hardware processor to perform a method (mere instructions to apply the exception using generic computer components as discussed in MPEP 2106.05(f));
(in claim 11) A method for time series forecasting using a pattern matching-based machine learning model (mere instructions to apply the exception using generic computer components as discussed in MPEP 2106.05(f)).
Moreover, to the extent that the steps of obtaining the target and reference time series are to be performed in the context of a computer-based implementation, these limitations may also be considered to be insignificant extra-solution activity as discussed in MPEP 2106.05(g), such as necessary data gathering and outputting, and may be further evaluated under Step 2B as reciting well-understood, routine, conventional activity, such as receiving or transmitting data over a network, storing and retrieving information in memory, etc.
The additional elements as discussed above, in combination with the abstract idea, are not sufficient to amount to significantly more than the judicial exception as they are well, understood, routine and conventional activity as disclosed in combination with generic computer functions and components used to implement the abstract idea.
Regarding dependent claim 2:
Step 2a Prong One: incorporates the rejection of claim 1. The claim further recites wherein the forecasting of the target time series comprises a forecasting of future timestamps of the target time series and a confidence score (a mental process of evaluation, such as a human mentally predicting/forecasting future timestamps and a confidence score).
Step 2a Prong Two: the claims do not recite any other limitations in addition to the abstract idea discussed above.
Step 2b: the claims do not recite any other limitations in addition to the abstract idea discussed above.
Regarding dependent claim 3:
Step 2a Prong One: incorporates the rejection of claims 1. The claim further recites wherein the forecasting of the target time series comprises a future distribution of the target time series (a mental process of evaluation, such as a human mentally predicting/forecasting a future distribution of the target time series).
Step 2a Prong Two: the claims do not recite any other limitations in addition to the abstract idea discussed above.
Step 2b: the claims do not recite any other limitations in addition to the abstract idea discussed above.
Regarding dependent claim 4:
Step 2a Prong One: incorporates the rejection of claim 1. The claim further recites wherein the at least one computer hardware processor is further caused to perform: determining whether a decision should be taken based on the forecasting of the target time series (a mental process of determination, such as a human mentally determining whether a decision should be taken based on forecasting of the time series).
Step 2a Prong Two: the claims do not recite any other limitations in addition to the abstract idea discussed above.
Step 2b: the claims do not recite any other limitations in addition to the abstract idea discussed above.
Regarding dependent claim 5:
Step 2a Prong One: incorporates the rejection of claim 1. The claim further recites wherein obtaining the at least one reference time series comprises: transforming the target time series into the at least one reference time series (a mental process of calculation, including a human performing a mathematical calculation mentally, and further including using a physical aid such as pen and paper, to transform a target time series into a reference time series).
Step 2a Prong Two: the claims do not recite any other limitations in addition to the abstract idea discussed above.
Step 2b: the claims do not recite any other limitations in addition to the abstract idea discussed above.
Regarding dependent claim 6:
Step 2a Prong One: incorporates the rejection of claim 1.
Step 2a Prong Two: the claims additionally recite wherein obtaining the at least one reference time series comprises obtaining the at least one reference time series from a data source external to the system, or obtaining the at least one reference time series from storage of the system (insignificant extra-solution activity as discussed in MPEP 2106.05(g)).
Step 2b: the claims additionally recite wherein obtaining the at least one reference time series comprises obtaining the at least one reference time series from a data source external to the system, or obtaining the at least one reference time series from storage of the system (insignificant extra-solution activity as discussed in MPEP 2106.05(g), such as necessary data gathering and outputting, which may be further evaluated under Step 2B as reciting well-understood, routine, conventional activity, such as receiving or transmitting data over a network, storing and retrieving information in memory, etc.).
Regarding dependent claims 7, 13, and 19:
Step 2a Prong One: incorporates the rejection of claims 1, 11, and 17. The claims further recite wherein the at least one reference time series comprises a plurality of reference time series, generating the self-similarity vector comprises generating a respective plurality of self-similarity vectors (a mental process, including a mental process performing mathematical calculations and performed using a physical aid such as pen and paper, such as a human mentally calculating/generating at least two respective self-similarity vectors for corresponding reference time series), and:
assigning respective weights to each of the plurality self-similarity vectors (a mental process, such as a human mentally determining/providing assigned respective weights to self-similarity vectors); and
integrating the plurality of self-similarity vectors using an integration function (a mental process, including a mental process performing mathematical calculations and performed using a physical aid such as pen and paper, such as a human mentally integrating/combining self-similarity vectors using a corresponding function),
wherein the one or more historic timestamps are determined based on the integrated self-similarity vectors (a mental process, such as a human mentally determining historic timestamps based on the integrated self-similarity vectors).
Step 2a Prong Two: the claims additionally recite wherein the at least one computer hardware processor is further configured to perform (mere instructions to apply the exception using generic computer components as discussed in MPEP 2106.05(f)).
Step 2b: the claims additionally recite wherein the at least one computer hardware processor is further configured to perform (mere instructions to apply the exception using generic computer components as discussed in MPEP 2106.05(f)).
Regarding dependent claims 8 and 14:
Step 2a Prong One: incorporates the rejection of claims 1 and 11. The claims further recite:
determining one or more historic time points from the target time series; and for each of the one or more historic time points (a mental process, such as a human mentally determining historic time points from a target time series):
determining respective relevant time points from the target time series, based on a plurality of parameters, wherein each of the relevant time points occur earlier in the time series than the historic time point (a mental process, such as a human mentally determining relevant time points from a target time series based on parameters);
comparing a portion of the target time series following the historic time point to a portion of the target time series following each of the relevant time points (a mental process, such as a human mentally comparing a portion of the time series following the historic time point to a portion of the time series following relevant time points); and
based on the comparing, updating one or more of the plurality of parameters (a mental process, such as a human mentally determining/calculating how to update the parameters).
Step 2a Prong Two: the claims additionally recite wherein the at least one computer hardware processor is further configured to perform: training a machine learning model, wherein the training comprises (mere instructions to apply the exception using generic computer components as discussed in MPEP 2106.05(f) and a field of use and technological environment as discussed in MPEP 2106.05(h)).
Step 2b: the claims additionally recite wherein the at least one computer hardware processor is further configured to perform: training a machine learning model, wherein the training comprises (mere instructions to apply the exception using generic computer components as discussed in MPEP 2106.05(f) and a field of use and technological environment as discussed in MPEP 2106.05(h)).
Regarding dependent claims 9 and 15:
Step 2a Prong One: incorporates the rejection of claims 8 and 14.
Step 2a Prong Two: the claims additionally recite wherein the plurality of parameters comprises: a subsequence length for generating the self-similarity vector, self-similarity vector weights, and read-out function parameters (a field of use and technological environment as discussed in MPEP 2106.05(h)).
Step 2b: the claims additionally recite wherein the plurality of parameters comprises: a subsequence length for generating the self-similarity vector, self-similarity vector weights, and read-out function parameters (a field of use and technological environment as discussed in MPEP 2106.05(h)).
Regarding dependent claim 20:
Step 2a Prong One: incorporates the rejection of claim 17. The claim further recites:
determining one or more historic time points from the target time series; and for each of the one or more historic time points (a mental process, such as a human mentally determining historic time points from a target time series):
determining respective relevant time points from the target time series, based on a plurality of parameters, wherein each of the relevant time points occur earlier in the time series than the historic time point (a mental process, such as a human mentally determining relevant time points from a target time series based on parameters);
comparing a portion of the target time series following the historic time point to a portion of the target time series following each of the relevant time points (a mental process, such as a human mentally comparing a portion of the time series following the historic time point to a portion of the time series following relevant time points); and
based on the comparing, updating one or more of the plurality of parameters (a mental process, such as a human mentally determining/calculating how to update the parameters).
Step 2a Prong Two: the claims additionally recite:
wherein the at least one computer hardware processor is further configured to perform: training a machine learning model, wherein the training comprises (mere instructions to apply the exception using generic computer components as discussed in MPEP 2106.05(f) and a field of use and technological environment as discussed in MPEP 2106.05(h));
wherein the plurality of parameters comprises: a subsequence length for generating the self-similarity vector, self-similarity vector weights, and read-out function parameters (a field of use and technological environment as discussed in MPEP 2106.05(h)).
Step 2b: the claims additionally recite:
wherein the at least one computer hardware processor is further configured to perform: training a machine learning model, wherein the training comprises (mere instructions to apply the exception using generic computer components as discussed in MPEP 2106.05(f) and a field of use and technological environment as discussed in MPEP 2106.05(h));
wherein the plurality of parameters comprises: a subsequence length for generating the self-similarity vector, self-similarity vector weights, and read-out function parameters (a field of use and technological environment as discussed in MPEP 2106.05(h)).
Regarding dependent claims 10 and 16:
Step 2a Prong One: incorporates the rejection of claims 1 and 11; the claims further recite wherein generating the self-similarity vector comprises:
for each of the one or more subsequences: determining a distance between the current time window and the subsequence (a mental process, including a mental process performing mathematical calculations and performed using a physical aid such as pen and paper, such as a human mentally determining/calculating a distance between a current time window and a subsequence); and
concatenating the distance into a self-similarity vector (a mental process, including a mental process performing mathematical calculations and performed using a physical aid such as pen and paper, such as a human mentally concatenating/calculating the distance into a self-similarity vector).
Step 2a Prong Two: the claims do not recite any other limitations in addition to the abstract idea discussed above.
Step 2b: the claims do not recite any other limitations in addition to the abstract idea discussed above.
Regarding dependent claims 12 and 18:
Step 2a Prong One: incorporates the rejection of claims 11 and 17 the claims further recite wherein obtaining the at least one reference time series comprises: transforming the target time series into the at least one reference time series (a mental process of calculation, including a human performing a mathematical calculation mentally, and further including using a physical aid such as pen and paper, to transform a target time series into a reference time series).
Step 2a Prong Two: the claims further recite obtaining the at least one reference time series from a data source external to a system containing the at least one computer hardware processor, or obtaining the at least one reference time series from storage of the system (insignificant extra-solution activity as discussed in MPEP 2106.05(g)).
Step 2b: the claims further recite obtaining the at least one reference time series from a data source external to a system containing the at least one computer hardware processor, or obtaining the at least one reference time series from storage of the system (insignificant extra-solution activity as discussed in MPEP 2106.05(g), such as necessary data gathering and outputting, which may be further evaluated under Step 2B as reciting well-understood, routine, conventional activity, such as receiving or transmitting data over a network, storing and retrieving information in memory, etc.).
Therefore, in view of the considerations set forth in MPEP 2106.04(d), 2106.05(a)-(c) and (e)-(h), the additional elements as recited in the dependent claims discussed above alone or in combination do not integrate the judicial exception into a practical application as they are mere insignificant extra solution activity, combined with implementing the abstract idea using generic computer components, and limitations describing a field of use or technological environment. The additional elements as discussed above, in combination with the abstract idea, are not sufficient to amount to significantly more than the judicial exception as they are well, understood, routine and conventional activity as disclosed in combination with generic computer functions and components used to implement the abstract idea, and limitations describing a field of use or technological environment.
Claim Rejections – 35 USC § 103
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
The factual inquiries set forth in Graham v. John Deere Co., 383 U.S. 1, 148 USPQ 459 (1966), that are applied for establishing a background for determining obviousness under 35 U.S.C. 103 are summarized as follows:
1. Determining the scope and contents of the prior art.
2. Ascertaining the differences between the prior art and the claims at issue.
3. Resolving the level of ordinary skill in the pertinent art.
4. Considering objective evidence present in the application indicating obviousness or nonobviousness.
Claims 1, 5-7, 10-13, and 16-19 are rejected under 35 U.S.C. 103 as being unpatentable over Borkar et al. (US 20230108916 A1) in view of Yeh et al. (US 20240273095 A1).
With respect to claims 1, 11, and 17, Borkar teaches a system for time series forecasting using a pattern matching-based machine learning model, the system comprising: at least one computer hardware processor; and at least one non-transitory computer-readable storage medium storing processor-executable instructions that, when executed by the at least one computer hardware processor, causes the at least one computer hardware processor to perform a method; at least one non-transitory computer-readable storage medium storing processor-executable instructions that, when executed by at least one computer hardware processor, causes the at least one computer hardware processor to perform the method (e.g. paragraph 0044, invention implemented in numerous ways, including apparatus/system, computer readable storage medium with program instructions, etc.; paragraph 0047, operations/processes of computer that manipulates and transforms data represented within registers/memories etc.; information in storage medium that store instruction to perform operations/processes); and the method for time series forecasting using a pattern matching-based machine learning model, the method comprising:
obtaining a target time series (e.g. paragraph 0063, Fig. 1, newly arriving data points for real-time consumption; i.e. as shown in Fig. 1,real-time time-series data is obtained);
obtaining at least one reference time series associated with the target time series (e.g. paragraph 0064, Fig. 1, all observations collected in sequence up to time (n-1), referred to as historical time-series; i.e. as shown in Fig. 1, historical time-series data is obtained);
generating a self-similarity vector for the reference time series by determining a similarity between a current time window of the reference time series and one or more subsequences of the reference time series, different from the current time window (e.g. paragraph 0064, partitioning historical time series into clusters of time-segments, each cluster representing a regime of the time series; paragraph 0095-0099, describing processing the historical time-series to output a collection of time-series segments; paragraph 0101-0106, describing generation of time-frequency images/scalograms from time-series segments; paragraphs 0107-0116, describing extraction of numerical vectors from each scalogram image, and reducing the dimensionality of the resulting numerical vectors to output a collection of two-dimensional embedding vectors; paragraphs 0117-0118, describing performing clustering and regime mapping with the two-dimensional embedding vectors to obtain cluster-based groupings of the feature vectors; paragraph 0122, each point of the 2-dimensional feature vector collection is originally a time-series segment of window length w; hence clustering over the 2D points identifies a cluster for each time segment, where each cluster represents a regime; paragraph 0147, the regime-based model of the present invention is able to extract structural similarities present in different windows in the time series and fuse the windows with similar behaviors together; i.e. the historical time-series is divided into subsequences/windows, which are transformed into vectors and then clustered into clusters of vectors (i.e. based on distance/similarity), analogous to at least one self-similarity vector (i.e. a clustered set of vectors which are similar to one another based on a similarity/distance measure));
based on the self-similarity vector, identifying one or more historic times of the reference time series with similarity values above a threshold similarity value (e.g. paragraph 0064, partitioning historical time series into clusters of time-segments, each cluster representing a regime of the time series; paragraphs 0117-0118, describing performing clustering and regime mapping with the two-dimensional embedding vectors to obtain cluster-based groupings of the feature vectors; paragraph 0122, each point of the 2-dimensional feature vector collection is originally a time-series segment of window length w; hence clustering over the 2D points identifies a cluster for each time segment, where each cluster represents a regime; paragraph 0147, the regime-based model of the present invention is able to extract structural similarities present in different windows in the time series and fuse the windows with similar behaviors together; i.e. time-series segment vectors identified as being sufficiently similar are clustered into respective regimes, analogous to, based on self-similarity vectors, identifying historic time points of the reference time series with similarity values above a threshold similarity value (i.e. within sufficient similarity/distance to be clustered));
generating one or more future projections of the target time series based on the identified times (e.g. paragraph 0067, any new real-time observation at time t passes through regime detection module and gets mapped to appropriate regime; paragraph 0068, upon identification of the regime, the corresponding regime-specific forecasting model is used to generate forecasts up to t+h for pre-specified time horizon h in the future; paragraph 0160, considering window length segment of the time-series backwards from t to generate time frequency image and using it to identify the matching cluster, identify the corresponding cluster specific model, and forecasting h future values using the selected cluster-specific model); and
generating a forecasting of the target time series using a read-out function (e.g. paragraph 0068, upon identification of the regime, the corresponding regime-specific forecasting model is used to generate forecasts up to t+h for pre-specified time horizon h in the future).
Borkar does not explicitly disclose that the identified times are timestamps. However, Yeh teaches that the identified times are timestamps (e.g. paragraph 0032, time dependent event represented by value and timestamp; paragraph 0050, generating random time series by generating values and assigning timestamp for each value; paragraph 0080, retrieving starting index, a timestamp corresponding to a subsequence; removing similar subsequences from matrix profile; trivial matches to retrieved subsequence; paragraph 0081, determining novel subsequence in time series from processed matrix profile using index associated with best candidate).
In addition, assuming arguendo that Borkar does not explicitly disclose a self-similarity vector, Yeh further teaches generating a self-similarity vector for the reference time series by determining a similarity between a current time window of the reference time series and one or more subsequences of the reference time series, different from the current time window (e.g. paragraph 0035, a “matrix profile” may be a matrix of distances of a time series, i.e. a vector of distances or similarities between each pair in time series; paragraph 0048, matrix profile can be time series data mining tool to solve a variety of problems, including using an intra-similarity join (commonly known as a self-joint) capturing a nearest neighbor relationship among subsequences within a given time series).
Accordingly, it would have been obvious to one of ordinary skill in the art before the effective filing date of the invention having the teachings of Borkar and Yeh in front of him to have modified the teachings of Borkar (directed to forecasting non-stationary time series), to incorporate the teachings of Yeh (directed to error-bounded approximate time series join using compact dictionary representation of time series) to include the capability to identify historic times with above-threshold similarity values (i.e. where these are clustered based on similarity in Borkar), where the identified times are in the form of a timestamp. One of ordinary skill would have been motivated to perform such a modification in order to utilize similarity join within or between time series in order to help users discover conserved or anomalous structures and segment time series into semantically meaningful regimes while improving computation speed and efficiency as described in Yeh (paragraph 0002).
With respect to claim 5, Borkar in view of Yeh teaches all of the limitations of claim 1 as previously discussed, and Borkar further teaches wherein obtaining the at least one reference time series comprises: transforming the target time series into the at least one reference time series (e.g. paragraph 0063, Fig. 1, newly arriving data points for real-time consumption; paragraph 0064, Fig. 1, all observations collected in sequence up to time (n-1), referred to as historical time-series, subject to a series of data transformations leading to partitioning historical time series into clusters of time-segments, each cluster representing a regime of the time series; paragraph 0095-0099, describing processing the historical time-series to output a collection of time-series segments; paragraph 0101-0106, describing generation of time-frequency images/scalograms from time-series segments; paragraphs 0107-0116, describing extraction of numerical vectors from each scalogram image, and reducing the dimensionality of the resulting numerical vectors to output a collection of two-dimensional embedding vectors; i.e. where the target time series is a time series which is received in real-time, and past data points (including current time points as time continues to pass) of this target time series are then utilized to form a historical time-series, which undergoes a series of data transformations as shown in Fig. 1 and cited above, this is analogous to transforming the target time series into the reference time series).
With respect to claim 6, Borkar in view of Yeh teaches all of the limitations of claim 1 as previously discussed, and Yeh further teaches wherein obtaining the at least one reference time series comprises obtaining the at least one reference time series from a data source external to the system, or obtaining the at least one reference time series from storage of the system (e.g. paragraph 0041, memory storing time series data; paragraph 0045, time series data formed from time dependent events received by server computer from external device; paragraph 0074, server computer receiving data of time-dependent events).
Accordingly, it would have been obvious to one of ordinary skill in the art before the effective filing date of the invention having the teachings of Borkar and Yeh in front of him to have modified the teachings of Borkar (directed to forecasting non-stationary time series), to incorporate the teachings of Yeh (directed to error-bounded approximate time series join using compact dictionary representation of time series) to include the capability to obtain the reference time series from a data source external to the system and/or from the storage of the system. One of ordinary skill would have been motivated to perform such a modification in order to utilize similarity join within or between time series in order to help users discover conserved or anomalous structures and segment time series into semantically meaningful regimes while improving computation speed and efficiency as described in Yeh (paragraph 0002).
With respect to claims 7, 13, and 19, Borkar in view of Yeh teaches all of the limitations of claims 1, 11, and 17 as previously discussed, and Yeh further teaches wherein the at least one reference time series comprises a plurality of reference time series, generating the self-similarity vector comprises generating a respective plurality of self-similarity vectors (e.g. paragraph 0055, distance profile is a vector of the distances or similarities between a query (subsequence) and each subsequence in an all-subsequences set of time series T; distance profile computed using distance with each subsequence, and used to store result distances; paragraph 0056, Fig. 4, subsequence of time series used as query and it is compared to every subsequence of the time series, and the resultant comparison is stored as the distance profile; paragraph 0063, computing inter-similarity matrix profile using first and second time series, by selecting a query from first time series and comparing it to each subsequence of the second time series to produce a distance profile for the query, and performing similar process for every possible choice of the query in the first time series to calculate the distance profile of each query; paragraph 0076, computing intra-similarity matrix profile of the time series by forming distance profiles for every subsequence in the time series; i.e. a time series may be comprised of a plurality of time series (either different time series or separate subseries within a single time series), and distance profiles (similarity vectors) may be generated for each of the plurality of time series, such as in order to form a matrix profile), and wherein the at least one computer hardware processor is further configured to perform:
assigning respective weights to each of the plurality self-similarity vectors (e.g. paragraph 0064, annotating time series with each subsequence’s nearest neighbor distance; matrix profile reveals similarity and differences from perspective of time series; discord identifies a subsequences in time series that is most significantly different; paragraph 0078, comparing subsequences of time series; subsequence that is less similarity to subsequence in dictionary has higher value in the distance profile); and
integrating the plurality of self-similarity vectors using an integration function (e.g. paragraph 0035, matrix profile is a matrix of distances of time series; vector of distances or similarities between each pair; paragraph 0063, using the distance profiles of all the queries combined to form the matrix profile, combining distance profiles of all the queries using element-wise minimum function; paragraph 0076, using the distance profiles of each subsequence to form the matrix profile; paragraph 0092, Fig. 9, approximate matrix profile 916 of time series generated by combining the matrix profiles of all subsequences of a dictionary; i.e. a plurality of distance profiles (distance/similarity vectors) can be combined/integrated to form a matrix profile; in addition, a plurality of matrix profiles (including multiple distance/similarity vectors) can be combined/integrated to form an approximate matrix profile),
wherein the one or more historic timestamps are determined based on the integrated self-similarity vectors (e.g. paragraph 0055, distance profile stores distances between query subsequences and each other subsequence; paragraph 0057-0058, join function which returns true for nearest neighbor subsequence of a given subsequence; paragraph 0064, matrix profile annotates time series with each subsequence’s nearest neighbor distance and reveals the similarity and differences from the perspective of the time series; paragraph 0078, comparing candidate subsequences of time series to dictionary to determine level of similarity to dictionary subsequence; paragraph 0099, using approximate matrix profile to find anomaly in time series; i.e. the various distance profiles (distance/similarity vectors), which are integrated/combined to form a matrix profile, and the various matrix profiles (collections of distance/similarity vectors), which are integrated/combined to form an approximate matrix profile, are used to determine whether historic time series subsequences are similar to, or different from, a query time series subsequence (such as by finding at least one most similar subsequence, i.e. a nearest neighbor, a matching dictionary sequence, etc., or non-similar subsequence/anomaly, analogous to determining at least one historic timestamp)).
Accordingly, it would have been obvious to one of ordinary skill in the art before the effective filing date of the invention having the teachings of Borkar and Yeh in front of him to have modified the teachings of Borkar (directed to forecasting non-stationary time series), to incorporate the teachings of Yeh (directed to error-bounded approximate time series join using compact dictionary representation of time series) to include the capability to generate a plurality of self-similarity vectors of the time series, including associated annotations such as regarding nearest neighbor distance and/or value, and to combine/integrate the plurality of self-similarity vectors, where the plurality of self-similarity vectors (i.e. which are also used in the combination/integration) are used to determine one or more similar, or different, time series subsequences with respect to a query subsequence (i.e. similar to finding an appropriate cluster/group for the subsequence as taught by Borkar). One of ordinary skill would have been motivated to perform such a modification in order to utilize similarity join within or between time series in order to help users discover conserved or anomalous structures and segment time series into semantically meaningful regimes while improving computation speed and efficiency as described in Yeh (paragraph 0002).
With respect to claims 12 and 18, Borkar in view of Yeh teaches all of the limitations of claims 11 and 17 as previously discussed, and Borkar and Yeh further teaches wherein obtaining the at least one reference time series comprises: transforming the target time series into the at least one reference time series, obtaining the at least one reference time series from a data source external to a system containing the at least one computer hardware processor, or obtaining the at least one reference time series from storage of the system (e.g. Borkar paragraph 0063, Fig. 1, newly arriving data points for real-time consumption; paragraph 0064, Fig. 1, all observations collected in sequence up to time (n-1), referred to as historical time-series, subject to a series of data transformations leading to partitioning historical time series into clusters of time-segments, each cluster representing a regime of the time series; paragraph 0095-0099, describing processing the historical time-series to output a collection of time-series segments; paragraph 0101-0106, describing generation of time-frequency images/scalograms from time-series segments; paragraphs 0107-0116, describing extraction of numerical vectors from each scalogram image, and reducing the dimensionality of the resulting numerical vectors to output a collection of two-dimensional embedding vectors; i.e. where the target time series is a time series which is received in real-time, and past data points (including current time points as time continues to pass) of this target time series are then utilized to form a historical time-series, which undergoes a series of data transformations as shown in Fig. 1 and cited above, this is analogous to transforming the target time series into the reference time series; Yeh paragraph 0041, memory storing time series data; paragraph 0045, time series data formed from time dependent events received by server computer from external device; paragraph 0074, server computer receiving data of time-dependent events).
Accordingly, it would have been obvious to one of ordinary skill in the art before the effective filing date of the invention having the teachings of Borkar and Yeh in front of him to have modified the teachings of Borkar (directed to forecasting non-stationary time series), to incorporate the teachings of Yeh (directed to error-bounded approximate time series join using compact dictionary representation of time series) to include the capability to obtain the reference time series from a data source external to the system and/or from the storage of the system. One of ordinary skill would have been motivated to perform such a modification in order to utilize similarity join within or between time series in order to help users discover conserved or anomalous structures and segment time series into semantically meaningful regimes while improving computation speed and efficiency as described in Yeh (paragraph 0002).
With respect to claims 10 and 16, Borkar in view of Yeh teaches all of the limitations of claims 1 and 11 as previously discussed, and Yeh further teaches wherein generating the self-similarity vector comprises: for each of the one or more subsequences: determining a distance between the current time window and the subsequence; and concatenating the distance into a self-similarity vector (e.g. paragraph 0035, a “matrix profile” may be a matrix of distances of a time series, i.e. a vector of distances or similarities between each pair in time series; paragraph 0048, matrix profile can be time series data mining tool to solve a variety of problems, including using an intra-similarity join (commonly known as a self-joint) capturing a nearest neighbor relationship among subsequences within a given time series; paragraph 0055, distance profile S is a vector of the distances/similarities between query (time series segment/current window) and each subsequence in an all-subsequences set of time series; distance profile computed given time series of length m and computing its distance with each subsequence, and used to store result distances; most common distance function is z-normalized Euclidean distance, but other distance functions also used; paragraph 0056, subsequence of the time series used as the query, which is compared to every subsequence of the times, and the resultant comparison is stored as the distance profile; paragraph 0076, using intra-similarity join to compute matrix profile using time series; subsequence of the time series applied to the data in the time series to produce matrix profile, such as determining first subsequence in time series, and applying it to the time series to form a distance profile of the first subsequence; repeating for each subsequence in the time series and forming matrix profile using the distance profiles of each subsequence; i.e. the matrix profile, which is a vector of distances/similarities in time series, may be formed by determining distances between each subsequence and every other subsequence in the time series, and then joining/concatenating them to form the matrix profile/self-similarity vector).
Accordingly, it would have been obvious to one of ordinary skill in the art before the effective filing date of the invention having the teachings of Borkar and Yeh in front of him to have modified the teachings of Borkar (directed to forecasting non-stationary time series), to incorporate the teachings of Yeh (directed to error-bounded approximate time series join using compact dictionary representation of time series) to include the capability to form the matrix profile/self-similarity vector by determining distances between each subsequence and every other subsequence in the time series, and then joining/concatenating them to form the matrix profile/self-similarity vector. One of ordinary skill would have been motivated to perform such a modification in order to utilize similarity join within or between time series in order to help users discover conserved or anomalous structures and segment time series into semantically meaningful regimes while improving computation speed and efficiency as described in Yeh (paragraph 0002).
Claims 2-4 are rejected under 35 U.S.C. 103 as being unpatentable over Borkar in view of Yeh, further in view of McNair (US 11544603 B1).
With respect to claim 2, Borkar in view of Yeh teaches all of the limitations of claim 1 as previously discussed. Borkar and Yeh do not explicitly disclose wherein the forecasting of the target time series comprises a forecasting of future timestamps of the target time series and a confidence score
However, McNair teaches wherein the forecasting of the target time series comprises a forecasting of future timestamps of the target time series and a confidence score (e.g. col. 2 lines 4-22, detecting probability of emergency department (ED) crowding occurring over future time interval and forecasting ED congestion; analyzing time series of consecutive ED arrivals timestamps to determine presence or absence of positive autocorrelation or self-similarity and estimate Hurst exponent values to generate a forecast model that can be utilized to predict future ED demand; col. 14 lines 3-26, determining quantiles of smoothed Hurst exponent n epochs into the future, such as in sets of 5-minute intervals; comparison of forecast future quantile, such as comparison of upper confidence limit of the quantile to control limit to determine that risk of future congestion is likely or sufficiently probable; col. 15 lines 13-15, patient arrival events with associated date-time stamp; col. 15 lines 55-58, future values of Hust exponents forecast future patient arrival events; i.e. future events/timestamps are forecasted, including at least one confidence score, such as an upper confidence limit associated with the forecasted values).
Accordingly, it would have been obvious to one of ordinary skill in the art before the effective filing date of the invention having the teachings of Borkar, Yeh, and McNair in front of him to have modified the teachings of Borkar (directed to forecasting non-stationary time series) and Yeh (directed to error-bounded approximate time series join using compact dictionary representation of time series), to incorporate the teachings of McNair (directed to a decision support tool for mitigating emergency department congestion, i.e. using time series forecasting) to include the capability to forecast both future timestamps and associated confidence scores for the time series. One of ordinary skill would have been motivated to perform such a modification in order to provide a decision support tool for resources management to prevent overcrowding and long waiting times as described in McNair (abstract).
With respect to claim 3, Borkar in view of Yeh teaches all of the limitations of claim 1 as previously discussed. Borkar and Yeh do not explicitly disclose wherein the forecasting of the target time series comprises a future distribution of the target time series.
However, McNair teaches wherein the forecasting of the target time series comprises a future distribution of the target time series (e.g. col. 1 lines 3-22, determining forecast quantiles for future values of Hurst exponent of event arrival process, such as 75th percentile Hurst exponent distributions for 15-minute future interval; col. 18, lines 60-63, forecast values include statistical quantiles of the predicted probability distribution of future values of the smoothed self-similarity measure).
Accordingly, it would have been obvious to one of ordinary skill in the art before the effective filing date of the invention having the teachings of Borkar, Yeh, and McNair in front of him to have modified the teachings of Borkar (directed to forecasting non-stationary time series) and Yeh (directed to error-bounded approximate time series join using compact dictionary representation of time series), to incorporate the teachings of McNair (directed to a decision support tool for mitigating emergency department congestion, i.e. using time series forecasting) to include the capability to forecast a future distribution of the time series. One of ordinary skill would have been motivated to perform such a modification in order to provide a decision support tool for resources management to prevent overcrowding and long waiting times as described in McNair (abstract).
With respect to claim 4, Borkar in view of Yeh teaches all of the limitations of claim 1 as previously discussed, and Borkar further teaches wherein the at least one computer hardware processor is further caused to perform: determining whether a decision should be taken based on the forecasting of the target time series (e.g. paragraph 0070, generated forecasts consumed by any downstream application, including a planning system that uses the forecast time series).
Assuming arguendo that Borkar does not explicitly disclose determining whether a decision should be taken, McNair teaches wherein the at least one computer hardware processor is further caused to perform: determining whether a decision should be taken based on the forecasting of the target time series (e.g. col. 2 lines 4-15, providing decision support tool for resources management to prevent overcrowding and long wait times and mitigating congestion by warning hospital managers that a significant likelihood exists of congestion over a future time frame and automatically initiating, recommending, or facilitating initiation of mitigative actions to enhance throughput and prevent congestion, crowding, or excessive waiting times; i.e. the forecasting is used to determine whether a decision should be taken such as by automatically initiating, recommending, or facilitating one or more actions corresponding to decisions to be made).
Accordingly, it would have been obvious to one of ordinary skill in the art before the effective filing date of the invention having the teachings of Borkar, Yeh, and McNair in front of him to have modified the teachings of Borkar (directed to forecasting non-stationary time series) and Yeh (directed to error-bounded approximate time series join using compact dictionary representation of time series), to incorporate the teachings of McNair (directed to a decision support tool for mitigating emergency department congestion, i.e. using time series forecasting) to include the capability to utilize the forecasting in a decision support tool, such that the forecasting of the time series provides a basis for determining whether a decision should be taken. One of ordinary skill would have been motivated to perform such a modification in order to provide a decision support tool for resources management to prevent overcrowding and long waiting times as described in McNair (abstract).
Claims 8, 9, 14, 15, and 20 are rejected under 35 U.S.C. 103 as being unpatentable over Borkar in view of Yeh, further in view of Yanchenko (US 20240211835 A1).
With respect to claim 8 and 14, Borkar in view of Yeh teaches all of the limitations of claims 1 and 11 as previously discussed, and Borkar further teaches wherein the at least one computer hardware processor is further configured to perform: training a machine learning model (e.g. paragraph 0065, clusters sent to training model which generates cluster specific forecast models).
Borkar and Yeh do not explicitly disclose wherein the training comprises:
determining one or more historic time points from the target time series; and for each of the one or more historic time points:
determining respective relevant time points from the target time series, based on a plurality of parameters, wherein each of the relevant time points occur earlier in the time series than the historic time point;
comparing a portion of the target time series following the historic time point to a portion of the target time series following each of the relevant time points; and
based on the comparing, updating one or more of the plurality of parameters.
However, Yanchenko teaches wherein the training comprises:
determining one or more historic time points from the target time series (e.g. paragraph 0081, historical hierarchical data and forecast data obtained and dataset generated in which each data point comprises a combination of the historical hierarchical data and the forecast data for the horizon; historically, for each point in time, there may be forecast for values at that point in time based on data collected up to some previous time, as well as actual time series values at that time which were the values that were being predicted by the forecast; thus the historical hierarchical data my include both the previous forecasts and the actual observed data, such that the actual observed data may serve as a ground truth for machine learning training; paragraph 0082, data point comprising specific past and future information, possibly restricted to time windows, around the time point corresponding to that data point, along with the information in those time periods; data point defined for each second comprising historic information (including information related to values measured prior to and including that second) and future information (information about future values relevant to that point in time); forecasts for based time series available as additional values to include for each time point, including forecasts made at prior time points; paragraph 0083, windowing the time series to create an ML data point for each time point in the time series; dataset of examples of historical values and target values, each example based on a specified time point in the time series; paragraph 0088, performing model training on historical data during training state of operation; obtaining historical data; paragraph 0089, data points obtained during runtime operation which include forecasts for future unseen values; paragraph 0091, reperforming training operation using newly received data; i.e. a first time point is determined, such as a most recent timepoint in a dataset of timepoints or a newly received timepoint); and for each of the one or more historic time points:
determining respective relevant time points from the target time series, based on a plurality of parameters, wherein each of the relevant time points occur earlier in the time series than the historic time point (e.g. paragraphs 0081-0082, indicating that a plurality of time points are provided in the dataset, including time points which are at earlier points in time within the time series; paragraph 0083, extracted features used as a basis for grouping; each example in the dataset is based on a specific time point in the time series; paragraph 0084, features extracted from historical data/time points in the dataset are grouped; group mapping function learned/generated from features of data points to group or cluster membership; based on derived features, model is learned that can output cluster membership from the features; paragraph 0088, grouping historical data; when runtime data is received it too can be grouped; paragraph 0089, extracted features used as basis for generating grouping operation; paragraph 0090, the received data is classified into a corresponding group; groups learned during model training serve as predetermined set of groups into which newly received data during runtime operation is classified; paragraph 0091, reperforming training operation using newly received data; i.e. the first time point is determined as belonging to a particular group of time points, where the other time points in the group/cluster may be time points which occur earlier in the time series, and which are indicated as relevant to the first time point by the fact that they are a part of the existing group which the first time point is determined to belong to);
comparing a portion of the target time series following the historic time point to a portion of the target time series following each of the relevant time points (e.g. paragraph 0069, ground truth data is accurate forecast data compared to generated forecast data to determine loss or error which may be used to modify operational parameters of model; paragraph 0075, fitting of reconciliation model to training dataset includes applying model to forecast data corresponding to time periods to generate forecast data which is then analyzed, including using comparison to corresponding ground truth data to generate a loss or error in accordance with a loss formula; paragraphs 0081-0083, indicating that each time point in the time series (including a first/historic time point and additional relevant time points) includes not only information for the particular point in time but also for a portion of the time series which follows each respective time point (i.e. forecasted and actual values for times after the time point); paragraph 0085, fitting model to group, using the set of data points/time points that fall within each group; fitting done by executing algorithm to set model parameters for the subset of data points included in each group; finding parameters that minimize forecast error for the group of data points in each group; paragraph 0088, training or learning to fit model to groups based on ground truth data such as by comparing reconciled forecast data generated by models on the training data to reconciled forecast data specified in the ground truth; fitting the reconciliation models to each group; paragraph 0091, reperforming training operation using newly received data; i.e. a generated forecast for time points following the first/historic time point may be compared to ground truth data (i.e. including actual time series values/accurate forecast data following other time points in the dataset corresponding to the relevant group) to determine loss/error and how to update model parameters for the group/cluster); and
based on the comparing, updating one or more of the plurality of parameters (e.g. paragraph 0075, determining, based on the loss/error, adjustment to operational parameters of the ML model to reduce the loss/error; paragraph 0085, indicating that model fitting includes setting of model parameters/finding parameters that minimize forecast error for the group; paragraph 0091, based on the features of the newly received data during runtime operation, the grouping features may be updated so as to update the learning of the groupings; this may involve adding the new data to the training data and reperforming the training operation; this way the training may be dynamically updated such that the system continues to learn over time the best performing reconciliation models; i.e. based on comparison (such as using the loss/error resulting from the comparison), model parameters and grouping parameters are updated).
Accordingly, it would have been obvious to one of ordinary skill in the art before the effective filing date of the invention having the teachings of Borkar, Yeh, and Yanchenko in front of him to have modified the teachings of Borkar (directed to forecasting non-stationary time series) and Yeh (directed to error-bounded approximate time series join using compact dictionary representation of time series), to incorporate the teachings of Yanchenko (directed to automatic and dynamic adaptation of hierarchical reconciliation for time series forecasting) to include the capability to train the models (of Borkar) by a portion of the time series following a historic time point to a portion of the time series following a group/cluster of relevant time points prior to the historic time point, and update parameters based on the comparison (as taught by Yanchenko). One of ordinary skill would have been motivated to perform such a modification in order to provide an improved method/operation for automatically and dynamically adapting a hierarchical reconciliation process for time series forecasting as described in Yanchenko (paragraph 0001).
With respect to claims 9 and 15, Borkar in view of Yeh, further in view of Yanchenko teaches all of the limitations of claims 8 and 14 as previously discussed, and Yanchenko further teaches wherein the plurality of parameters comprises: a subsequence length for generating the self-similarity vector, self-similarity vector weights, and read-out function parameters (e.g. paragraph 0071, operational parameters such as hyperparameters, weights, etc.; paragraph 0093, adjusting parameters of model, where the model fitting defines state vector update equation/function encoding how to update the state vector given an observation as well as the output equation/function, that encodes how to output reconciliation matrix or mapping, given the current state; paragraph 0099, tunable hyperparameter lambda providing weighting for reconciliation matrices/terms; paragraph 0117, number of clusters as a tunable hyperparameter; assignment vectors and reconciliation matrices are parameters/variables of model/optimization problem; finding parameters that minimize loss; paragraph 0125, current model parameters; calculating reconciled forecast error for given parameters of the model and then optimizing the parameters to minimize error over historical data; exponential decay parameter alpha for defining how to weight previous matrices to get new matrix; paragraph 0127, hyperparameter specifying how many past time points to use; weight given to past time point reconciliation matrix; hyperparameters controlling strength of regularization in objective; paragraph 0128, parameters of the model are reconciliation matrices for each historical time point, along with weights that define update equation for predicting future matrix given past ones; paragraph 0136, weights and biases of neural networks making up model parameters fit with machine learning process; fixed size recent window of time points used to characterize current state of time series based on recent window of observations; size of history time window is hyperparameter that is tuned via hyperparameter tuning; i.e. the training/model fitting may include the setting/tuning of various parameters, including at least parameters for a window size (analogous to subsequence length), weights (i.e. of the model, but also weightings to be applied to past matrices/terms, etc.), and output functions).
Accordingly, it would have been obvious to one of ordinary skill in the art before the effective filing date of the invention having the teachings of Borkar, Yeh, and Yanchenko in front of him to have modified the teachings of Borkar (directed to forecasting non-stationary time series) and Yeh (directed to error-bounded approximate time series join using compact dictionary representation of time series), to incorporate the teachings of Yanchenko (directed to automatic and dynamic adaptation of hierarchical reconciliation for time series forecasting) to include the capability to train the models (of Borkar) by a portion of the time series following a historic time point to a portion of the time series following a group/cluster of relevant time points prior to the historic time point, and update parameters based on the comparison, where these parameters include parameters for a window size, various weightings and weights, and output functions (as taught by Yanchenko). One of ordinary skill would have been motivated to perform such a modification in order to provide an improved method/operation for automatically and dynamically adapting a hierarchical reconciliation process for time series forecasting as described in Yanchenko (paragraph 0001).
With respect to claim 20, Borkar in view of Yeh teaches all of the limitations of claim 17 as previously discussed, and Borkar further teaches wherein the method further comprises: training a machine learning model (e.g. paragraph 0065, clusters sent to training model which generates cluster specific forecast models).
Borkar does not explicitly disclose wherein the training comprises:
determining one or more historic time points from the target time series; and for each of the one or more historic time points:
determining respective relevant time points from the target time series, based on a plurality of parameters, wherein each of the relevant time points occur earlier in the time series than the historic time point;
comparing a portion of the target time series following the historic time point to a portion of the target time series following each of the relevant time points; and
based on the comparing, updating one or more of the plurality of parameters,
wherein the plurality of parameters comprises: a subsequence length for generating the self-similarity vector, self-similarity vector weights, and read- out function parameters.
However, Yanchenko teaches wherein the training comprises:
determining one or more historic time points from the target time series (e.g. paragraph 0081, historical hierarchical data and forecast data obtained and dataset generated in which each data point comprises a combination of the historical hierarchical data and the forecast data for the horizon; historically, for each point in time, there may be forecast for values at that point in time based on data collected up to some previous time, as well as actual time series values at that time which were the values that were being predicted by the forecast; thus the historical hierarchical data my include both the previous forecasts and the actual observed data, such that the actual observed data may serve as a ground truth for machine learning training; paragraph 0082, data point comprising specific past and future information, possibly restricted to time windows, around the time point corresponding to that data point, along with the information in those time periods; data point defined for each second comprising historic information (including information related to values measured prior to and including that second) and future information (information about future values relevant to that point in time); forecasts for based time series available as additional values to include for each time point, including forecasts made at prior time points; paragraph 0083, windowing the time series to create an ML data point for each time point in the time series; dataset of examples of historical values and target values, each example based on a specified time point in the time series; paragraph 0088, performing model training on historical data during training state of operation; obtaining historical data; paragraph 0089, data points obtained during runtime operation which include forecasts for future unseen values; paragraph 0091, reperforming training operation using newly received data; i.e. a first time point is determined, such as a most recent timepoint in a dataset of timepoints or a newly received timepoint); and for each of the one or more historic time points:
determining respective relevant time points from the target time series, based on a plurality of parameters, wherein each of the relevant time points occur earlier in the time series than the historic time point (e.g. paragraphs 0081-0082, indicating that a plurality of time points are provided in the dataset, including time points which are at earlier points in time within the time series; paragraph 0083, extracted features used as a basis for grouping; each example in the dataset is based on a specific time point in the time series; paragraph 0084, features extracted from historical data/time points in the dataset are grouped; group mapping function learned/generated from features of data points to group or cluster membership; based on derived features, model is learned that can output cluster membership from the features; paragraph 0088, grouping historical data; when runtime data is received it too can be grouped; paragraph 0089, extracted features used as basis for generating grouping operation; paragraph 0090, the received data is classified into a corresponding group; groups learned during model training serve as predetermined set of groups into which newly received data during runtime operation is classified; paragraph 0091, reperforming training operation using newly received data; i.e. the first time point is determined as belonging to a particular group of time points, where the other time points in the group/cluster may be time points which occur earlier in the time series, and which are indicated as relevant to the first time point by the fact that they are a part of the existing group which the first time point is determined to belong to);
comparing a portion of the target time series following the historic time point to a portion of the target time series following each of the relevant time points (e.g. paragraph 0069, ground truth data is accurate forecast data compared to generated forecast data to determine loss or error which may be used to modify operational parameters of model; paragraph 0075, fitting of reconciliation model to training dataset includes applying model to forecast data corresponding to time periods to generate forecast data which is then analyzed, including using comparison to corresponding ground truth data to generate a loss or error in accordance with a loss formula; paragraphs 0081-0083, indicating that each time point in the time series (including a first/historic time point and additional relevant time points) includes not only information for the particular point in time but also for a portion of the time series which follows each respective time point (i.e. forecasted and actual values for times after the time point); paragraph 0085, fitting model to group, using the set of data points/time points that fall within each group; fitting done by executing algorithm to set model parameters for the subset of data points included in each group; finding parameters that minimize forecast error for the group of data points in each group; paragraph 0088, training or learning to fit model to groups based on ground truth data such as by comparing reconciled forecast data generated by models on the training data to reconciled forecast data specified in the ground truth; fitting the reconciliation models to each group; paragraph 0091, reperforming training operation using newly received data; i.e. a generated forecast for time points following the first/historic time point may be compared to ground truth data (i.e. including actual time series values/accurate forecast data following other time points in the dataset corresponding to the relevant group) to determine loss/error and how to update model parameters for the group/cluster); and
based on the comparing, updating one or more of the plurality of parameters (e.g. paragraph 0075, determining, based on the loss/error, adjustment to operational parameters of the ML model to reduce the loss/error; paragraph 0085, indicating that model fitting includes setting of model parameters/finding parameters that minimize forecast error for the group; paragraph 0091, based on the features of the newly received data during runtime operation, the grouping features may be updated so as to update the learning of the groupings; this may involve adding the new data to the training data and reperforming the training operation; this way the training may be dynamically updated such that the system continues to learn over time the best performing reconciliation models; i.e. based on comparison (such as using the loss/error resulting from the comparison), model parameters and grouping parameters are updated);
wherein the plurality of parameters comprises: a subsequence length for generating the self-similarity vector, self-similarity vector weights, and read-out function parameters (e.g. paragraph 0071, operational parameters such as hyperparameters, weights, etc.; paragraph 0093, adjusting parameters of model, where the model fitting defines state vector update equation/function encoding how to update the state vector given an observation as well as the output equation/function, that encodes how to output reconciliation matrix or mapping, given the current state; paragraph 0099, tunable hyperparameter lambda providing weighting for reconciliation matrices/terms; paragraph 0117, number of clusters as a tunable hyperparameter; assignment vectors and reconciliation matrices are parameters/variables of model/optimization problem; finding parameters that minimize loss; paragraph 0125, current model parameters; calculating reconciled forecast error for given parameters of the model and then optimizing the parameters to minimize error over historical data; exponential decay parameter alpha for defining how to weight previous matrices to get new matrix; paragraph 0127, hyperparameter specifying how many past time points to use; weight given to past time point reconciliation matrix; hyperparameters controlling strength of regularization in objective; paragraph 0128, parameters of the model are reconciliation matrices for each historical time point, along with weights that define update equation for predicting future matrix given past ones; paragraph 0136, weights and biases of neural networks making up model parameters fit with machine learning process; fixed size recent window of time points used to characterize current state of time series based on recent window of observations; size of history time window is hyperparameter that is tuned via hyperparameter tuning; i.e. the training/model fitting may include the setting/tuning of various parameters, including at least parameters for a window size (analogous to subsequence length), weights (i.e. of the model, but also weightings to be applied to past matrices/terms, etc.), and output functions).
Accordingly, it would have been obvious to one of ordinary skill in the art before the effective filing date of the invention having the teachings of Borkar, Yeh, and Yanchenko in front of him to have modified the teachings of Borkar (directed to forecasting non-stationary time series) and Yeh (directed to error-bounded approximate time series join using compact dictionary representation of time series), to incorporate the teachings of Yanchenko (directed to automatic and dynamic adaptation of hierarchical reconciliation for time series forecasting) to include the capability to train the models (of Borkar) by a portion of the time series following a historic time point to a portion of the time series following a group/cluster of relevant time points prior to the historic time point, and update parameters based on the comparison, where these parameters include parameters for a window size, various weightings and weights, and output functions (as taught by Yanchenko). One of ordinary skill would have been motivated to perform such a modification in order to provide an improved method/operation for automatically and dynamically adapting a hierarchical reconciliation process for time series forecasting as described in Yanchenko (paragraph 0001).
It is noted that any citation to specific pages, columns, lines, or figures in the prior art references and any interpretation of the references should not be considered to be limiting in any way. “The use of patents as references is not limited to what the patentees describe as their own inventions or to the problems with which they are concerned. They are part of the literature of the art, relevant for all they contain,” In re Heck, 699 F.2d 1331, 1332-33, 216 USPQ 1038, 1039 (Fed. Cir. 1983) (quoting in re Lemelson, 397 F.2d 1006, 1009, 158 USPQ 275, 277 (GCPA 1968)). Further, a reference may be relied upon for all that it would have reasonably suggested to one having ordinary skill the art, including nonpreferred embodiments. Merck & Co, v. Biocraft Laboratories, 874 F.2d 804, 10 USPQ2d 1843 (Fed. Cir.), cert, denied, 493 U.S. 975 (1989). See also Upsher-Smith Labs. v. Pamlab, LLC, 412 F,3d 1319, 1323, 75 USPQ2d 1213, 1215 (Fed. Cir, 2005): Celeritas Technologies Ltd. v. Rockwell International Corp., 150 F.3d 1354, 1361, 47 USPQ2d 1516, 1522-23 (Fed. Cir. 1998).
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant’s disclosure.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to JEREMY L STANLEY whose telephone number is (469)295-9105. The examiner can normally be reached on Monday-Friday from 9:00 AM to 5:00 PM CST.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Abdullah Al Kawsar, can be reached at telephone number (571) 270-3169. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of an application may be obtained from Patent Center and the Private Patent Application Information Retrieval (PAIR) system. Status information for published applications may be obtained from Patent Center or Private PAIR. Status information for unpublished applications is available through Patent Center and Private PAIR for authorized users only. Should you have questions about access to the Private PAIR system, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free).
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) Form at https://www.uspto.gov/patents/uspto-automated- interview-request-air-form.
/JEREMY L STANLEY/
Primary Examiner, Art Unit 2127