| Abstract [eng] |
When processing non-stationary time series data by statistical methods, they must be stationarized. However, hereby not only important data features are lost, but also the likelihood of forecast uncertainty is underestimated. Recurrent neural networks can analyze non-stationary data, but it is not clear which of the three most commonly used networks — SRNN, LSTM, or GRU — is best suited for each specific case of non-stationary time series data. This master’s thesis describes the design and development of software for nonstationary time series analysis using three types of recurrent neural networks, presents the software and the results of the study of 50 non-stationary time series data sets. Hypothesis: SRNN, LSTM and GRU recurrent neural networks predict nonstationary time series data without their stationaryization.The problem of the work: how to forecast non-stationary time series data without stationarization using three types of recurrent neural networks. Object of the work: design and development of software for non-stationary time series analysis. Aim of the work: to design and to program software for estimating the accuracy of non-stationary time series prediction when using three types of neural networks. Tasks of the work: to formulate requirements for software for non-stationary time series analysis and to define its architecture; to write a code for software for non-stationary time series analysis; perform a computer experiment with the data of the selected data sets using the selected software settings. Results: Using the default neural network hyperparameters, the financial data analyzed are most accurately predicted by the LSTM neural network and worst by the SRNN. Mean sMAPE values using the default hyperparameters are LSTM: 0.53 (53%), GRU: 0.77 (77%), SRNN: 1.43 (143%). By adjusting the neural set hyperparameters individually for each data set, the prediction accuracy can be improved by 70% - 90%. Mean sMAPE values using individually determined hyperparameters are LSTM: 0.16 (16%), GRU: 0.06 (6%), SRNN: 0.28 (28%). The best results for all three neural networks were obtained by changing the following hyperparameters: using the adagrad optimization function in combination with shuffle = true, increasing the number of epochs to 100 or 200 (Epochs = 200), and reducing the packet size to 10-20 (Batch size = 20). Changing the packet size to a multiple of 5 improved the prediction of the analyzed financial data because the neural network weight matrix is updated by providing the neural network with the number of data samples described by the batch size hyperparameter and all data used for analysis were collected on weekdays. |