Performing Multivariate Time Series Forecasting Using a 3D Transformation

By transforming the two-dimensional multivariate time series data into three-dimensional time tensors and using deep volume 3D CNN for training, the problem that the multivariate time series prediction method based on statistical assumptions in the prior art cannot effectively capture the nonlinear features of the data and the high consumption of computing resources is achieved, and efficient and accurate multivariate time series prediction is achieved.

CN112215390BActive Publication Date: 2025-03-11INTERNATIONAL BUSINESS MACHINE CORPORATION
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202010661458.7
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2019-07-12
Filing Date
2020-07-10
Publication Date
2025-03-11
Estimated Expiration
2040-07-10

AI Technical Summary

Technical Problem

The existing multivariate time series prediction methods are based on statistical assumptions, requiring manual preprocessing and feature engineering, and cannot fully capture the nonlinear features of the data, and consume large computing resources, especially when the data features and time dimensions are large.

Method used

The historical two-dimensional multivariate time series data is transformed into three-dimensional time tensors and trained using deep volume 3D convolutional neural network (CNN) to predict future values ​​of multivariate time series data.

Benefits of technology

通过三维变换和深度学习方法,简化了特征提取和预处理过程,减少了计算资源的消耗,提高了多元时间序列预测的准确性和效率。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN112215390B_ABST
    Figure CN112215390B_ABST
Patent Text Reader

Abstract

A computer-implemented method according to one embodiment includes: receiving historical two-dimensional (2D) multivariate time series data; transforming the historical 2D multivariate time series data into a three-dimensional (3D) time tensor; training one or more deep volumetric 3D convolutional neural networks (CNNs) using the 3D time tensor; and predicting future values ​​of additional multivariate time series data using the one or more trained deep volumetric 3D CNNs.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to temporal data analysis, and more particularly, the present invention relates to performing time series forecasting using transformed data. Background Art

[0002] Multivariate time series forecasting involves predicting future values ​​of a multivariate variable based on its historical values ​​over a period of time. This allows discovering new trends, detecting anomalies, and improving predictions of future signals for use in different domains. However, current methods for performing such forecasting are based on statistical assumptions, such as that the data is stationary (i.e., has a consistent mean and variance). As a result of these assumptions, additional manual preprocessing and feature engineering are required to perform forecasting, which may not adequately capture certain nonlinearities of the data. Also, many current forecasting methods require significant computational resources. This becomes a challenge when the input data provided has large feature and time dimensions. Summary of the invention

[0003] According to one embodiment, a computer-implemented method includes: receiving historical two-dimensional (2D) multivariate time series data; transforming the historical 2D multivariate time series data into a three-dimensional (3D) time tensor; using the 3D time tensor to train one or more deep volumetric 3D convolutional neural networks (CNNs); and using the one or more trained deep volumetric 3D CNNs to predict future values ​​of additional multivariate time series data.

[0004] According to another embodiment, a computer program product for performing multivariate time series prediction with the aid of a three-dimensional transformation includes a computer-readable storage medium having program instructions embodied therein, wherein the program instructions can be executed by a processor to cause the processor to: utilize the processor to receive historical two-dimensional (2D) multivariate time series data; utilize the processor to transform the historical 2D multivariate time series data into a three-dimensional (3D) time tensor; utilize the processor to train one or more deep volumetric 3D convolutional neural networks (CNNs) using the 3D time tensor; and utilize the processor and the one or more trained deep volumetric 3D CNNs to predict future values ​​of additional multivariate time series data.

[0005] According to another embodiment, a system includes a processor; and logic integrated with the processor, logic capable of being executed by the processor, or logic integrated with the processor and capable of being executed by the processor, wherein the logic is configured to receive historical two-dimensional (2D) multivariate time series data; transform the historical 2D multivariate time series data into a three-dimensional (3D) time tensor; train one or more deep volumetric 3D convolutional neural networks (CNNs) using the 3D time tensor; and predict future values ​​of additional multivariate time series data using the one or more trained deep volumetric 3D CNNs.

[0006] Other aspects and embodiments of the present invention will become apparent from the following detailed description, which, taken in conjunction with the accompanying drawings, illustrates by way of example the principles of the invention. BRIEF DESCRIPTION OF THE DRAWINGS

[0007] Figure 1 A network architecture according to an embodiment of the present invention is shown.

[0008] Figure 2 It shows that the Figure 1 A representative hardware environment associated with a server and / or client.

[0009] Figure 3 A method for performing multivariate time series prediction with the aid of a three-dimensional transformation according to an embodiment of the present invention is shown.

[0010] Figure 4 An exemplary temporal tensor transformation according to one embodiment of the present invention is shown.

[0011] Figure 5 An exemplary deep learning environment for performing multivariate time series forecasting with 3D transformations according to one embodiment of the present invention is shown. DETAILED DESCRIPTION

[0012] The following description is for the purpose of illustrating the general principles of the present invention and is not meant to limit the inventive concepts claimed herein.In addition, the specific features described herein can be used in combination with other described features in each of the various possible combinations and permutations.

[0013] Unless expressly defined otherwise herein, all terms should be given their broadest possible interpretations, including the meanings implied from the specification and as understood by those skilled in the art and / or as defined in dictionaries, treatises, and the like.

[0014] It must also be noted that, as used in the specification and the appended claims, the singular forms "a", "an" and "the" include plural references unless otherwise indicated. It will also be understood that when the terms "include" and / or "comprise" are used in this specification, they specify the presence of stated features, integers, steps, operations, elements and / or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components and / or combinations thereof.

[0015] The following description discloses several preferred embodiments of systems, methods, and computer program products for performing multivariate time series forecasting with the aid of three-dimensional transforms.

[0016] In a general embodiment, a computer-implemented method includes: receiving historical two-dimensional (2D) multivariate time series data; transforming the historical 2D multivariate time series data into a three-dimensional (3D) time tensor; using the 3D time tensor to train one or more deep volumetric 3D convolutional neural networks (CNNs); and using the one or more trained deep volumetric 3D CNNs to predict future values ​​of additional multivariate time series data.

[0017] In another general embodiment, a computer program product for performing multivariate time series forecasting with the aid of a three-dimensional transformation includes a computer-readable storage medium having program instructions embodied therein, wherein the program instructions are executable by a processor to cause the processor to: receive historical two-dimensional (2D) multivariate time series data using the processor; transform the historical 2D multivariate time series data into a three-dimensional (3D) time tensor using the processor; train one or more deep volumetric 3D convolutional neural networks (CNNs) using the 3D time tensor using the processor; and predict future values ​​of additional multivariate time series data using the processor and the one or more trained deep volumetric 3D CNNs.

[0018] In another general embodiment, a system includes a processor; and logic integrated with the processor, logic capable of being executed by the processor, or logic integrated with the processor and capable of being executed by the processor, wherein the logic is configured to receive historical two-dimensional (2D) multivariate time series data; transform the historical 2D multivariate time series data into a three-dimensional (3D) time tensor; train one or more deep volumetric 3D convolutional neural networks (CNNs) using the 3D time tensor; and predict future values ​​of additional multivariate time series data using the one or more trained deep volumetric 3D CNNs.

[0019] Figure 1 An architecture 100 according to one embodiment is shown. Figure 1 As shown, a plurality of remote networks 102 are provided including a first remote network 104 and a second remote network 106. A gateway 101 may be coupled between the remote network 102 and the adjacent network 108. In the context of the present architecture 100, each of the networks 104, 106 may take any form, including but not limited to: a local area network (LAN), a wide area network (WAN) such as the Internet, a public switched telephone network (PSTN), an internal telephone network, etc.

[0020] In use, gateway 101 acts as an entry point from remote network 102 to neighboring network 108. As such, gateway 101 may act as both a router capable of directing a given data packet arriving at gateway 101, as well as a switch providing the actual path in and out of gateway 101 for a given data packet.

[0021] Also included is at least one data server 114, which is coupled to the adjacent network 108 and can be accessed from the remote network 102 through the gateway 101. It should be noted that the data server 114 may include any type of computing device / groupware. Each data server 114 is coupled to a plurality of user devices 116. The user devices 116 may also be directly connected through one of the networks 104, 106, 108. Such user devices 116 may include desktop computers, laptop computers, handheld computers, printers, or any other type of logic. It should be noted that in one embodiment, the user devices 111 may also be directly coupled to any network.

[0022] A peripheral device 120 or a series of peripheral devices 120, such as a fax machine, a printer, a networked and / or local storage unit or system, etc., may be coupled to one or more of the networks 104, 106, 108. It should be noted that the database and / or additional components may be used with or integrated into any type of network element coupled to the networks 104, 106, 108. In the context of this specification, a network element may refer to any component of a network.

[0023] According to some approaches, the methods and systems described herein may be implemented with and / or on a virtual system and / or a system that emulates one or more other systems, such as a UNIX system that emulates an IBM z / OS environment, a UNIX system that virtually hosts a MICROSOFT WINDOWS environment, a MICROSOFT WINDOWS system that emulates an IBM z / OS environment, etc. In some embodiments, such virtualization and / or emulation may be enhanced by using VMWARE software.

[0024] In further approaches, one or more networks 104, 106, 108 may represent a cluster of systems often referred to as a "cloud." In cloud computing, shared resources such as processing power, peripherals, software, data, servers, etc. are provided to any system in the cloud on an on-demand basis, allowing access and distribution of services across many computing systems. Cloud computing typically involves Internet connections between systems running in the cloud, but other technologies for connecting systems may also be used.

[0025] Figure 2 According to one embodiment, Figure 1 1 and 12. The diagram shows a representative hardware environment associated with a user device 116 and / or server 114. The diagram shows a typical hardware configuration of a workstation having a central processing unit 210 such as a microprocessor, and numerous other units interconnected via a system bus 212.

[0026] Figure 2The workstation shown includes: random access memory (RAM) 214, read only memory (ROM) 216, an input / output (I / O) adapter 218 for connecting peripheral devices such as a disk storage unit 220 to the bus 212, a user interface adapter 222 for connecting a keyboard 224, a mouse 226, a speaker 228, a microphone 232 and / or other user interface devices (such as a touch screen and a digital camera (not shown)) to the bus 212, a communications adapter 234 for connecting the workstation to a communications network 235 (e.g., a data processing network), and a display adapter 236 for connecting the bus 212 to a display device 238.

[0027] The workstation may host an operating system such as Microsoft Operating system (OS), MACOS, UNIX OS, etc. It should be understood that the preferred embodiment can also be implemented on platforms and operating systems other than those mentioned. The preferred embodiment can be written using extensible markup language (XML), C and / or C++ language, or other programming languages, and object-oriented programming methods. Object-oriented programming (OOP) can be used, which has been increasingly used to develop complex applications.

[0028] Reference now Figure 3 , shows a flow chart of a method 300 according to one embodiment. In various embodiments, among other things, the method 300 may be implemented according to the present invention. Figure 1 , 2 , 4 and 5. Of course, as those skilled in the art will appreciate when reading this specification, it is more convenient to use the system in the embodiment of the present invention than in Figure 3 More or fewer of the operations specifically described in may be included in method 300 .

[0029] Each step of method 300 may be performed by any suitable component of an operating environment. For example, in various embodiments, method 300 may be performed in part or in whole by one or more servers, computers, or some other device having one or more processors therein. A processor (e.g., a processing circuit, chip, and / or module implemented in hardware and / or software, and preferably having at least one hardware component) may be used in any device to perform one or more steps of method 300. Illustrative processors include, but are not limited to, a central processing unit (CPU), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA), etc., combinations thereof, or any other suitable computing device known in the art.

[0030] like Figure 3As shown, method 300 may begin with operation 302, in which historical two-dimensional (2D) multivariate time series data is received. In one embodiment, the historical 2D multivariate time series data includes 2D multivariate time series data that has been recorded before the current time and date. In another embodiment, the time series data may include data values ​​recorded at each time interval in a plurality of different time intervals.

[0031] Additionally, in one embodiment, the multivariate time series data may include a plurality of different data values ​​for a plurality of different features, the plurality of different features being recorded at each of a plurality of predetermined time intervals occurring within a predetermined time period. For example, the multivariate time series data may be obtained from one or more sensors at each time interval (e.g., as part of an Internet of Things (IoT) environment, etc.). In another example, the data variables may include one or more of the following: temperature values, humidity values, power consumption values, water consumption values, etc.

[0032] In addition, in one embodiment, the 2D multivariate time series data may include time series data having two dimensions. For example, the first dimension of the 2D multivariate time series data may include a time dimension (e.g., recording the value of the historical time of the second dimension, etc.). In another example, the second dimension of the 2D multivariate time series data may include a feature dimension (e.g., the values ​​of multiple features at the associated predetermined historical time).

[0033] In addition, method 300 may proceed to operation 304, wherein the historical 2D multivariate time series data is transformed into a three-dimensional (3D) time tensor. In one embodiment, the transformation may include dividing the historical 2D multivariate time series data into a plurality of 2D time slices. For example, the historical 2D multivariate time series data may be recorded within a predetermined time period.

[0034] Furthermore, in one embodiment, the predetermined time period may be divided into a plurality of time-based portions. The multivariate time series data may then be divided into a plurality of slices based on the plurality of time-based portions. For example, historical 2D multivariate time series data recorded over a one-minute time period may be divided into six ten-second slices. The first time slice may include all time series data for the first ten-second portion / slice. The second time slice may include all time series data for the second ten-second portion / slice, and so on.

[0035] In addition, in one embodiment, the transformation may include stacking multiple time slices to create a 3D time tensor. For example, the tensor may include a three-dimensional geometric object representing the stacked 2D slices. In another embodiment, the historical 2D multivariate time series data may be viewed as a video (e.g., a series of frames presented over time). For example, each frame may constitute a single time-based portion. In another example, the frames may be separated and stacked to create a 3D time tensor.

[0036] Furthermore, in one embodiment, a 3D temporal tensor may include a tensor having three dimensions. For example, a temporal tensor may include a time-based geometric object represented by an array of components as a function of spatial coordinates. In another example, a first dimension may include a time dimension, a second dimension may include a feature dimension, and a third dimension may include a depth dimension (e.g., a value representing the depth of a temporal slice within the tensor, etc.).

[0037] In addition, method 300 may proceed to operation 306, in which one or more deep volumetric 3D convolutional neural networks (CNNs) are trained using the 3D temporal tensor. In one embodiment, each of the deep volumetric 3D CNNs may include a residual network-based module for extracting nonlinear features-temporal and autocorrelation features.

[0038] In addition, in one embodiment, the deep volumetric 3D CNN can discover local dependencies and autocorrelation patterns between dimension values ​​of a 3D tensor. During training, the volumetric convolutions of the one or more deep volumetric 3D CNNs can learn three-dimensional kernels (e.g., instead of separate feature-wise kernels). This can result in jointly learning feature-dependent and time-dependent correlations from 3D time tensor data.

[0039] Additionally, method 300 may proceed to operation 308, in which the one or more trained deep volumetric 3D CNNs are used to predict future values ​​of additional multivariate time series data. In one embodiment, the additional multivariate time series data may include incomplete 2D multivariate time series data. For example, the incomplete multivariate time series data may include a time dimension, and a missing or incomplete feature dimension. The time dimension may include a predetermined time period in the future (e.g., a time period that has not yet occurred, etc.).

[0040] Furthermore, in one embodiment, the additional multivariate time series data may be transformed into a three-dimensional (3D) time tensor using the process detailed above. In another embodiment, the 3D time tensor may be input into the one or more trained deep volumetric 3D CNNs. In yet another embodiment, the deep volumetric 3D CNN may be located within a deep volumetric residual network.

[0041] In addition, in one embodiment, the deep volumetric 3D CNN can utilize the identified local dependencies and autocorrelation patterns between dimension values ​​learned during training to determine one or more feature maps for additional multivariate time series data. In one embodiment, the feature map is passed through a recursive neural network to output future value predictions. In another embodiment, stacked average pooling can also be performed on the outputs (e.g., feature maps) of the 3D convolutions from the one or more trained deep volumetric 3D CNNs. For example, stacked average pooling can produce a 2D feature map output. The 2D feature map output can then be input into a sequential network.

[0042] Additionally, in one embodiment, the sequential network may include a CNN feature map and one or more recursive neural networks (e.g., one or more instances of a long short-term memory (LSTM), etc.). In another embodiment, the sequential network may output predicted future values ​​of additional multivariate time series data. In yet another embodiment, an adaptive hyperparameter adjustment may be applied to the 3D time tensor to determine optimal parameters required for the time tensor transformation. For example, an adaptive hyperparameter optimizer may select optimal parameters required for the time tensor transformation by propagating prediction errors.

[0043] In this manner, a neural network may be trained to perform multivariate time series prediction / forecasting with nonlinear data in an efficient manner by transforming 2D data into 3D tensors used as input to the neural network. This may simplify the manner in which training of the neural network is performed, which may reduce the amount of processing resources required of a computing device performing such training. This in turn may improve the performance of such a computing device.

[0044] Deep Learning for Multivariate Time Series Forecasting with 3D Transformations

[0045] Multivariate time series forecasting is the task of predicting a series of future values ​​based on historical values ​​of multiple variables. Modeling these temporal phenomena allows discovering new trends, detecting anomalies, and predicting future signals that can be used in different fields such as finance, mobile, IoT, cloud services, meteorology, and medical fields. Therefore, the development of improved modeling of temporal phenomena helps analysts, clients, and companies make better decisions based on historical data. Time series forecasting has been widely used in various fields across different sectors. The forecast is useful for developing temporal dynamic models that can help critical decision-making processes.

[0046] One exemplary improvement to multivariate time series forecasting is the performance of the time tensor transform, where a time series feature representation is created by stacking multiple subsampled 2D sliding windows into a 3D tensor structure. Another exemplary improvement to multivariate time series forecasting is a volumetric convolutional neural network architecture that includes a volumetric 3D convolution operation that discovers local temporal dependencies and autocorrelation patterns between multidimensional input variables.

[0047] An exemplary use case for multivariate time series forecasting is the Internet of Things (IoT) smart home monitoring and control system. For example, modern IoT infrastructure provides various tools for measuring parameters in the home environment through different sensors that record information such as temperature, humidity, and electricity usage. By implementing a 3D transformation and using a volumetric convolutional neural network architecture, improved feature extraction can be achieved by capturing nonlinear features from the sensor information - both temporal and autocorrelation features.

[0048] In addition, an end-to-end solution can be made available that avoids manual feature engineering or preprocessing to closely follow statistical assumptions. In addition, fully automatic tuning can be implemented for automatic hyperparameter selection for time tensor transformations. Still further, adaptive training (e.g., online training as a cycle, etc.) can be implemented to enable the model to adaptively learn new patterns, which can allow for mitigation of sudden changes in data distribution, seasonal changes in data distribution, etc.

[0049] Time Tensor Transformation

[0050] In one embodiment, a time series data representation is created by stacking multiple 2D sliding windows into a 3D tensor structure. This representation allows the volumetric CNN to extract autocorrelation features from the time series.

[0051] The transformation is defined as the following function:

[0052]

[0053] in, and n is equal to the number of features in the time series, m is equal to the number of time steps in the original input sampled time series, w is equal to the window size of the sliding window, and o is equal to the total number of subsampled window stacks generated by the transform.

[0054] In one embodiment, given several different key parameters, o can be deterministically calculated by the following equation:

[0055]

[0056] Where p is padding, d is dilation, and s is the window stride.

[0057] Figure 4An exemplary time tensor transformation 400 according to an exemplary embodiment is shown. As shown, the 2D multivariate time series data 402 is divided into a plurality of time window slices 404A-N using a sliding window 406 having a predetermined size. These time window slices 404A-N are stacked to create a tensor 408. The tensor 408 has three dimensions - a time dimension 410, a feature dimension 412, and a height / depth dimension 414. As a result, the 2D multivariate time series data 402 is transformed into a 3D tensor 408.

[0058] Autocorrelation characteristics

[0059] In time series modeling, autocorrelation is a type of correlation that occurs when a signal within a certain interval reappears at a delayed time period. Linear regression models assume that the error terms are independent. However, in time series, such errors can be autocorrelated. For example, autocorrelation can be found in seasonal time series data.

[0060] Adaptive Hyperparameter Tuning Process

[0061] In order to provide an end-to-end solution that still allows flexibility, a hyperparameter tuning process can be used for the above parameters. For example, errors from the model can be propagated to actively select and optimize each parameter in the transformation. In one embodiment, a black box optimization strategy such as Bayesian optimization can be applied on a user-defined search space.

[0062] Deep Volumetric Residual Networks

[0063] In one embodiment, the prediction architecture may include one or more residual network based modules. For example, residual network (ResNet) based modules are used to extract nonlinear features - temporal and autocorrelation features. Depending on the available computing resources and training and testing performance, these operations can be repeated in a deep manner as needed. During training, volumetric convolution learns a three-dimensional kernel (rather than a kernel separated by feature). This allows feature-dependent and time-dependent correlations to be jointly learned from the data.

[0064] Figure 5 An exemplary deep learning environment 500 for performing multivariate time series prediction with 3D transformations is shown according to one embodiment. As shown, historical 2D multivariate time series data 502 is transformed by a temporal tensor transformation module 504 to create a 3D tensor 506, which is then used as input to a deep volumetric residual network 508 including a volumetric residual network block 510. In one embodiment, the deep volumetric residual network 508 may include multiple volumetric residual network blocks 510.

[0065] Additionally, the volumetric residual network block 510 performs a 3D convolution on the 3D tensor 506 to create an output, which is then pooled using a stacked average pooling module 512 of the deep volumetric residual network 508. The output is then sent to a sequential network 514 comprising a CNN feature map 516 and a recurrent neural network 518, which produces an output prediction 520.

[0066] In one embodiment, a system and method for predicting future values ​​of a multivariate time series is provided, wherein (1) a historical time series is transformed into a 3D time tensor by stacking multiple 2D sliding windows, the 2D sliding window consisting of time and feature dimensions; (2) the 3D time tensor is passed through a deep volumetric 3D convolutional neural network (CNN), which discovers local dependencies and autocorrelation patterns between variables; (3) the CNN feature map is passed through a recurrent neural network to output a prediction; and (4) an adaptive hyperparameter optimizer selects the optimal parameters required for the time tensor transformation by propagating prediction errors.

[0067] In addition, in one embodiment, historical parameters may be received for a device. For example, the device may include a household appliance, a computing device, a node in a distributed computing system, etc. In another example, historical parameters may be received for a predetermined application running in the device. In yet another example, the historical parameters may include historical power consumption of the device, historical temperature data of the device (e.g., device operating temperature), historical data usage of applications running on the device (e.g., network data usage, bandwidth, etc.), historical processor utilization of applications running on the device, etc.

[0068] Furthermore, in one embodiment, the historical parameters of the device may be transformed into a three-dimensional (3D) time tensor. For example, the transformation may include dividing the historical device parameters into a plurality of 2D time slices, and stacking the plurality of 2D time slices to create a 3D time tensor.

[0069] Furthermore, in one embodiment, the 3D temporal tensor may be utilized to train one or more deep volumetric 3D convolutional neural networks (CNNs). In another embodiment, the one or more trained deep volumetric 3D CNNs may be utilized to predict future values ​​of a device.

[0070] For example, one or more future times and / or dates may be input to the deep volumetric 3D CNN, and the deep volumetric 3D CNN may output predicted values ​​for the device at those future times / dates. These predicted values ​​may include predicted processor usage for applications running on the device, predicted data usage for applications running on the device, etc. These predicted values ​​may be used to allocate bandwidth and processor resources to applications running on the device, and thus may improve the performance of the device and applications.

[0071] At any possible technical detail combination level, the present invention may be a system, method and / or computer program product. The computer program product may include a computer-readable storage medium carrying computer-readable program instructions for causing a processor to implement various aspects of the present invention.

[0072] A computer-readable storage medium may be a tangible device that can hold and store instructions used by an instruction execution device. A computer-readable storage medium may be, for example, but not limited to, an electrical storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the foregoing. More specific examples of computer-readable storage media (a non-exhaustive list) include: a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), a static random access memory (SRAM), a portable compact disk read-only memory (CD-ROM), a digital versatile disk (DVD), a memory stick, a floppy disk, a mechanical encoding device, such as a punch card or a raised structure in a groove on which instructions are stored, and any suitable combination of the foregoing. As used herein, a computer-readable storage medium is not to be interpreted as a transient signal per se, such as a radio wave or other freely propagating electromagnetic wave, an electromagnetic wave propagating through a waveguide or other transmission medium (e.g., a light pulse through a fiber optic cable), or an electrical signal transmitted through a wire.

[0073] The computer-readable program instructions described herein can be downloaded from a computer-readable storage medium to each computing / processing device, or downloaded to an external computer or external storage device via a network, such as the Internet, a local area network, a wide area network, and / or a wireless network. The network can include copper transmission cables, optical fiber transmissions, wireless transmissions, routers, firewalls, switches, gateway computers, and / or edge servers. The network adapter card or network interface in each computing / processing device receives the computer-readable program instructions from the network and forwards the computer-readable program instructions for storage in the computer-readable storage medium in each computing / processing device.

[0074] The computer program instructions for performing the operation of the present invention may be assembler instructions, instruction set architecture (ISA) instructions, machine instructions, machine-dependent instructions, microcode, firmware instructions, state setting data, integrated circuit configuration data, or source code or object code written in any combination of one or more programming languages, including object-oriented programming languages, such as Smalltalk, C++, etc., and procedural programming languages, such as "C" language or similar programming languages. Computer-readable program instructions may be executed entirely on a user's computer, partially on a user's computer, as an independent software package, partially on a user's computer, partially on a remote computer, or entirely on a remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer via any type of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computer (e.g., using an Internet service provider to connect via the Internet). In some embodiments, an electronic circuit, such as a programmable logic circuit, a field programmable gate array (FPGA), or a programmable logic array (PLA), may be personalized by utilizing the state information of the computer-readable program instructions, and the electronic circuit may execute the computer-readable program instructions, thereby realizing various aspects of the present invention.

[0075] Various aspects of the present invention are described herein with reference to the flow chart and / or block diagram of the method, device (system) and computer program product according to the embodiment of the present invention. It should be understood that each square frame of the flow chart and / or block diagram and the combination of each square frame in the flow chart and / or block diagram can be implemented by computer-readable program instructions.

[0076] These computer-readable program instructions can be provided to a processor of a computer or other programmable data processing device, thereby producing a machine, so that when these instructions are executed by the processor of the computer or other programmable data processing device, a device that implements the functions / actions specified in one or more boxes in the flowchart and / or block diagram is generated. These computer-readable program instructions can also be stored in a computer-readable storage medium, and these instructions cause the computer, programmable data processing device and / or other equipment to work in a specific manner, so that the computer-readable medium storing the instructions includes a manufactured product, which includes instructions for implementing various aspects of the functions / actions specified in one or more boxes in the flowchart and / or block diagram.

[0077] Computer-readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other device so that a series of operating steps are performed on the computer, other programmable data processing apparatus, or other device to produce a computer-implemented process, thereby causing the instructions executed on the computer, other programmable data processing apparatus, or other device to implement the functions / actions specified in one or more boxes in the flowchart and / or block diagram.

[0078] The flow chart and block diagram in the accompanying drawings show the possible architecture, function and operation of the system, method and computer program product according to multiple embodiments of the present invention. In this regard, each square box in the flow chart or block diagram can represent a part of a module, program segment or instruction, and a part of the module, program segment or instruction contains one or more executable instructions for realizing the specified logical function. In some alternative implementations, the functions marked in the square box can also occur in a different order from the order marked in the accompanying drawings. For example, two continuous square boxes can actually be completed in one step, executed in parallel, substantially parallel, in a way that part or all of the time overlaps, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each square box in the block diagram and / or flow chart, and the combination of the square boxes in the block diagram and / or flow chart can be implemented with a dedicated hardware-based system that performs a specified function or action, or can be implemented with a combination of dedicated hardware and computer instructions.

[0079] In addition, the system according to various embodiments may include a processor and logic integrated with the processor and / or executable by the processor, which is configured to perform one or more processing steps described herein. The processor may have any configuration described herein, such as a discrete processor or a processing circuit including many components (e.g., processing hardware, memory, I / O interface, etc.). Integrated means that the processor has logic embedded therein as hardware logic, such as an application-specific integrated circuit (ASIC), FPGA, etc. Executable by the processor means that the logic is hardware logic; software logic, such as firmware, part of an operating system, part of an application; etc., or a combination of hardware and software logic that the processor can access and is configured to cause the processor to perform certain functions when executed by the processor. As known in the art, software logic can be stored on local and / or remote memory of any memory type. Any processor known in the art, such as a software processor module and / or a hardware processor, such as an ASIC, FPGA, a central processing unit (CPU), an integrated circuit (IC), a graphics processing unit (GPU), etc., can be used.

[0080] It will be apparent that the various features of the foregoing systems and / or methods may be combined in any manner, thereby creating multiple combinations from the description presented above.

[0081] It will be further appreciated that embodiments of the present invention may be provided as a service deployed on behalf of a client to provide services on demand.

[0082] The embodiments of the present invention have been described above, and the above description is exemplary, not exhaustive, and is not limited to the disclosed embodiments. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the described embodiments. The terms used herein are selected to best explain the principles of the embodiments, practical applications, or technical improvements to the technology in the market, or to enable other persons of ordinary skill in the art to understand the embodiments disclosed herein.

Claims

1. A computer-implemented method comprising: Receive historical 2D multivariate time series data; Transforming the historical 2D multivariate time series data into a three-dimensional 3D time tensor; Training one or more deep volumetric 3D convolutional neural networks (CNNs) using the 3D temporal tensor; as well as predicting future values ​​of additional multivariate time series data using the one or more trained deep volumetric 3D CNNs, The transformation is defined as the following function: in, n is equal to the number of features in the historical 2D multivariate time series data, m is equal to the number of time steps in the original input sample time series, w is equal to the window size of the sliding window, and o is equal to the total number of sub-sampling window stacks generated by the transformation.

2. The computer-implemented method of claim 1 , wherein: The historical 2D multivariate time series data includes: 2D multivariate time series data that has been recorded before the current time and date.

3. The computer-implemented method of claim 1 , wherein: The first dimension of the historical 2D multivariate time series data includes a time dimension, and the second dimension of the historical 2D multivariate time series data includes a feature dimension.

4. The computer-implemented method of claim 1 , further comprising: Stacked average pooling is performed on outputs of the 3D convolutions from the one or more trained deep volumetric 3D CNNs.

5. The computer-implemented method of claim 1 , further comprising: Adaptive hyperparameter tuning is applied to the 3D time tensor to determine the optimal parameters required for the time tensor transformation through propagation of prediction errors.

6. The computer-implemented method of claim 1 , wherein: The 3D time tensor includes: a time-based geometric object represented by an array of components as a function of spatial coordinates.

7. The computer-implemented method of claim 1 , wherein: Each of the one or more deep volumetric 3D CNNs includes a residual network based module for extracting non-linear features - temporal and autocorrelation features.

8. The computer-implemented method of claim 1 , wherein: The one or more deep volumetric 3D CNNs discover local dependencies and autocorrelation patterns between dimension values ​​of the 3D time tensor.

9. The computer-implemented method of claim 1 , wherein: During training, the volumetric convolutions of the one or more deep volumetric 3D CNNs learn three-dimensional kernels.

10. The computer-implemented method of claim 1, wherein: The additional multivariate time series data includes incomplete 2D multivariate time series data.

11. The computer-implemented method of claim 1 , wherein: The one or more trained deep volumetric 3D CNNs utilize the identified local dependencies and autocorrelation patterns between dimension values ​​learned during training to determine one or more feature maps for the additional multivariate time series data.

12. The computer-implemented method of claim 11, wherein: The feature map is passed through a trained recurrent neural network to output the future value.

13. The computer-implemented method of claim 1, wherein: The transformation includes: dividing the historical 2D multivariate time series data into a plurality of 2D time slices.

14. The computer-implemented method of claim 13, wherein: The transforming includes stacking the plurality of 2D time slices to create the 3D time tensor.

15. A computer program product for performing multivariate time series prediction with the aid of a three-dimensional transformation, the computer program product comprising a computer-readable storage medium, wherein the computer-readable storage medium embodies program instructions, wherein the program instructions are executable by a processor to cause the processor to perform a method according to any one of claims 1-14.

16. A system comprising: processor; as well as Logic integrated with the processor, logic executable by the processor, or logic integrated with the processor and executable by the processor, the logic being configured to perform the method according to any one of claims 1-14.

17. A non-transitory computer-readable medium comprising instructions which, when read by a processor, cause the processor to perform the method according to any one of claims 1-14.

Citation Information

Patent Citations

  • Urban human traffic prediction method and system

    CN108108844A

  • Dynamic STKNN model-based short-time traffic prediction method

    CN109598936A

  • Multi-dimensional time series event prediction via convolutional neural network(s)

    US20180260704A1