Automated deep learning architecture selection for time series prediction with user interaction
A system and method for automatically generating deep neural network architectures for time series prediction. The system includes a processor for: receiving a prediction context associated with a current use case; based on the associated prediction context, selecting a prediction model network configured for a current use case time series prediction task; replicating the selected prediction model network to create a plurality of candidate prediction model networks; inputting a time series data to each of the plurality of the candidate prediction model network; train, in parallel, each respective candidate prediction model network of the plurality with the input time series data; modifying each of the plurality of the candidate prediction model network by applying a respective different set of one or more model parameters while being trained in parallel; and determine a fittest modified prediction model network for solving the current use case time series prediction task.
1 . A computer-implemented method for automatically synthesizing optimized deep neural network architectures for time series prediction, the method comprising:
receiving, at a hardware processor, a prediction context associated with a current use case time series prediction task;
obtaining, using the hardware processor, characteristic features of a multivariate time series data to be used as input for the current use case time series prediction task, said multivariate time series data comprising two or more parallel input time series with each series having observations at same time steps and an output time series that is dependent on an input time series;
identifying, using the hardware processor, a similarity of the multivariate characteristic features of the multivariate input time series data and the data features of data used as input to an existing prediction model network architecture; and
based on said associated prediction context and said identified similarity, using the hardware processor to select an existing prediction model network architecture configured for a similar use case time series prediction task;
replicating said selected existing prediction model network architecture to create a plurality of candidate prediction model network architectures;
inputting, using the hardware processor, the multivariate time series data to each of the plurality of said candidate prediction model network architectures;
receiving, at the hardware processor, via a user interface, one or more run time constraints for performing the use case time series prediction task, said one or more run-time constraints comprising a run time ratio indicating a ratio of an additional gain accuracy gain over a determined run time to determine if a candidate prediction model network architecture should further run or exit;
training, in parallel, using the hardware processor, each respective candidate prediction model network architecture of said plurality of candidate prediction model network architectures with said input time series data;
modifying, using the hardware processor, each of the plurality of said candidate prediction model network architectures by applying a respective different set of one or more model parameters while being trained in parallel; and
determining, using the hardware processor, from said plurality, a fittest modified prediction model network architecture for solving the current use case time series prediction task that meet said one or more run-time constraints; and
using said fittest modified prediction model network architecture for the time-series prediction task, wherein each of the plurality of candidate prediction model network architectures being trained comprises an individuum block structure, an individuum block structure comprising at least a multilayer perceptron and one or more of: a convolution neural network or a recurrent neural network; and said method further comprising:
generating, using the hardware processor, multiple individuum block structures,
wherein said modifying each of the plurality of said candidate prediction model network architectures while being trained in parallel is performed for each individuum block structure.
2 . The computer-implemented method according to claim 1 , wherein the selecting of a prediction model network architecture for the current use case comprises: searching a library of existing prediction model network architectures previously generated for a historical use case related to the current prediction context.
3 . The computer-implemented method according to claim 1 , wherein a set of said one or more model parameters applied at a respective candidate prediction model network architecture comprises: a different look back time window length parameter, a different window overlap parameter.
4 . The computer-implemented method according to claim 1 , further comprising:
receiving, at the hardware processor, via the user interface, user constraints for performing said current use case time series prediction task, said one or more user constraints comprising at least one or more of: a specific prediction model network architecture, or a prediction accuracy.
5 . The computer-implemented method according to claim 4 , further comprising:
outputting, via said user interface, the fittest prediction model network architecture, and
presenting, via said user interface, an explanation of one or more most significant characteristics of the fittest prediction model network architecture.
6 . The computer-implemented method according to claim 1 , further comprising:
selecting, using the hardware processor, a random set of individuums;
determining, using the hardware processor, a fittest individuum from said random set; and
applying, using the hardware processor, random mutations to one or more candidate prediction model network architectures of the determined fittest individuum.
7 . A computer-implemented system for automatically synthesizing optimized deep neural network architectures for time series prediction, the system comprising:
a memory storage device for storing a computer-readable program, and
at least one processor adapted to run said computer-readable program to configure the at least one processor to:
receive a prediction context associated with a current use case time series prediction task;
obtain characteristic features of a multivariate time series data to be used as input for the current use case time series prediction task, said multivariate time series data comprising two or more parallel input time series with each series having observations at same time steps and an output time series that is dependent on an input time series;
identify a similarity of the multivariate characteristic features of the multivariate input time series data and the data features of data used as input to an existing prediction model network architecture; and
based on said associated prediction context and said identified similarity, select an existing prediction model network architecture configured for a similar use case time series prediction task;
replicate said selected existing prediction model network architecture to create a plurality of candidate prediction model network architectures;
input a multivariate time series data to each of the plurality of said candidate prediction model network architectures, said multivariate time series data comprising two or more parallel input time series with each series having observations at same time steps and an output time series that is dependent on an input time series;
receive via a user interface one or more run time constraints for performing the use case time series prediction task, said one or more run-time constraints comprising a run time ratio indicating a ratio of an additional gain accuracy gain over a determined run time to determine if a candidate prediction model network architecture should further run or exit;
train, in parallel, each respective candidate prediction model network architecture of said plurality of candidate prediction model network architectures with said input time series data;
modify each of the plurality of said candidate prediction model network architectures by applying a respective different set of one or more model parameters while being trained in parallel;
determine, from said plurality, a fittest modified prediction model network architecture for solving the current use case time series prediction task that meet said one or more run-time constraints; and
using said fittest modified prediction model network architecture for the time-series prediction task, wherein each of the plurality of candidate prediction model network architectures being trained comprises an individuum block structure, an individuum block structure comprising at least a multilayer perceptron and one or more of: a convolution neural network or a recurrent neural network, said at least one processor further configured to:
generate multiple individuum block structures,
wherein said modifying each of the plurality of said candidate prediction model network architectures while being trained in parallel is performed for each individuum block structure; and
concatenate at least one block structure for the input data set to generate a single deep neural network architecture having at least a convolution neural network and multilayer perceptron for solving the current use case time series prediction task.
8 . The computer-implemented system according to claim 7 , wherein to select a prediction model network architecture for the current use case, the at least one processor is further configured to:
search a library of existing prediction model network architectures previously generated for a historical use case related to the current prediction context.
9 . The computer-implemented system according to claim 7 , wherein a set of said one or more model parameters applied at a respective candidate prediction model network architecture comprises: a different look back time window length parameter, a different window overlap parameter.
10 . The computer-implemented system according to claim 7 , wherein the at least one processor is further configured to:
receive, via the user interface, user constraints for performing said current use case time series prediction task, said one or more user constraints comprising at least one or more of: a specific prediction model network architecture, or a prediction accuracy.
11 . The computer-implemented system according to claim 10 , wherein the at least one processor is further configured to:
output, via said user interface, the fittest prediction model network architecture, and
present, via said user interface, an explanation of one or more most significant characteristics of the fittest prediction model network architecture.
12 . The computer-implemented system according to claim 7 , wherein the at least one processor is further configured to:
select a random set of individuums;
determine a fittest individuum from said random set; and
apply random mutations to one or more candidate prediction model network architectures of the determined fittest individuum.
13 . A computer program product, the computer program product comprising a computer-readable storage medium having a computer-readable program stored therein, wherein the computer-readable program, when executed on a computer including at least one processor, causes the at least one processor to:
receive a prediction context associated with a current use case time series prediction task;
obtain characteristic features of a multivariate time series data to be used as input for the current use case time series prediction task, said multivariate time series data comprising two or more parallel input time series with each series having observations at same time steps and an output time series that is dependent on an input time series;
identify a similarity of the multivariate characteristic features of the multivariate input time series data and the data features of data used as input to an existing prediction model network architecture; and
based on said associated prediction context and said identified similarity, select an existing prediction model network architecture configured for a similar use case time series prediction task;
replicate said selected existing prediction model network architecture to create a plurality of candidate prediction model network architectures;
input a multivariate time series data to each of the plurality of said candidate prediction model network architectures, said multivariate time series data comprising two or more parallel input time series with each series having observations at same time steps and an output time series that is dependent on an input time series;
receive via a user interface one or more run time constraints for performing the use case time series prediction task, said one or more run-time constraints comprising a run time ratio indicating a ratio of an additional gain accuracy gain over a determined run time to determine if a candidate prediction model network architecture should further run or exit;
train, in parallel, each respective candidate prediction model network architecture of said plurality of candidate prediction model network architectures with said input time series data;
modify each of the plurality of said candidate prediction model network architectures by applying a respective different set of one or more model parameters while being trained in parallel;
determine, from said plurality, a fittest modified prediction model network architecture for solving the current use case time series prediction task that meet said one or more run-time constraints; and
using said fittest modified prediction model network architecture for the time-series prediction task, wherein each of the plurality of candidate prediction model network architectures being trained comprises an individuum block structure, an individuum block structure comprising at least a multilayer perceptron and one or more of: a convolution neural network or a recurrent neural network, said computer-readable program further causing said at least one processor to:
generate multiple individuum block structures,
wherein said modifying each of the plurality of said candidate prediction model network architectures while being trained in parallel is performed for each individuum block structure.
14 . The computer program product according to claim 13 , wherein to select a prediction model network architecture for the current use case, the computer-readable program causes the at least one processor to:
search a library of existing prediction model network architectures previously generated for a historical use case related to the current prediction context.
15 . The computer program product according to claim 13 , wherein a set of said one or more model parameters applied at a respective candidate prediction model network architecture comprises: a different look back time window length parameter, a different window overlap parameter.
16 . The computer program product according to claim 13 , wherein the computer-readable program causes the at least one processor to:
output, via said user interface, the fittest prediction model network architecture, and
present, via said user interface, an explanation of one or more most significant characteristics of the fittest prediction model network architecture.
17 . The computer program product according to claim 13 , wherein the computer-readable program causes the at least one processor to:
select a random set of individuums;
determine a fittest individuum from said random set; and
apply random mutations to one or more candidate prediction model network architectures of the determined fittest individuum.
18 . The computer-implemented method according to claim 1 , wherein said characteristic features of a multivariate time series data comprises one or more of: variation, skewness, kurtosis, trend, seasonality, and a Hurst parameter.
19 . The computer-implemented system according to claim 7 , wherein said characteristic features of a multivariate time series data comprises one or more of: variation, skewness, kurtosis, trend, seasonality, and a Hurst parameter.
20 . The computer program product according to claim 13 , wherein the characteristic features of a multivariate time series data comprises one or more of: variation, skewness, kurtosis, trend, seasonality, and a Hurst parameter.