EMDANNhybrid

Application of Empirical Mode Decomposition based Artificial Neural Network

Authors

Pankaj Das (https://orcid.org/0000-0003-1672-2502)

Achal Lama

Girish Kumar Jha

Introduction

The EMDANN R package is designed for application of Empirical Mode Decomposition based Artificial Neural Network for univariate time series forecasting. It also provide you with accuracy measures along with an option to select the proportion of training and testing data sets. Users can choose among the available choices of parameters of Empirical Mode Decomposition for fitting the ANN Models. In this package we have modelled the dependency of the study variable assuming first order autocorrelation. This package will help the researchers working in the area of hybrid machine learning models.

Function in the R package

EMDANNhybrid- The EMDANNhybrid function helps to fit the Empirical Mode Decomposition based Artificial Neural Network (Time Delay Neural Network Model).

Background

Empirical mode decomposition (EMD) is one of the latest signal decomposition techniques, first proposed by Huang et al. (1996). It assumes that the data have many coexisting oscillatory modes of significantly distinct frequencies and these modes superimpose on each other and form an observable time series. EMD decomposes original non-stationary and nonlinear data into a finite and small number of independent sub-series (including intrinsic mode functions and a final residue). Further Artificial Neural network (ANN) applied to each decomposed items to forecast them. Finally all forecasted values are aggregated to produce final forecast value (Das et al., 2019, 2020, 2022, 2023).

Reference

Dragomiretskiy, K. and Zosso, D.(2014). Variational Mode Decomposition. IEEE Transactions on Signal Processing, 62(3):531-544.(doi: 10.1109/TSP.2013.2288675).

Das, P., Jha, G. K., Lama, A., Parsad, R. and Mishra, D. (2020). Empirical Mode Decomposition based Support Vector Regression for Agricultural Price Forecasting. Indian Journal of Extension Education, 56(2):7-12.(http://krishi.icar.gov.in/jspui/handle/123456789/44138).

Das, P. Jha, G. K. and Lama, A. (2023). Empirical Mode Decomposition Based Ensemble Hybrid Machine Learning Models for Agricultural Commodity Price Forecasting. Statistics and Applications, 21(1),99-112.(http://krishi.icar.gov.in/jspui/handle/123456789/77772).

Das, P., Jha, G. K., Lama, A. and Bharti (2022). EMD-SVR Hybrid Machine Learning Model and its Application in Agricultural Price Forecasting. Bhartiya Krishi Anusandhan Patrika. (DOI: 10.18805/BKAP385)

Das, P. (2019). Study On Machine Learning Techniques Based Hybrid Model for Forecasting in Agriculture. Published Ph.D. Thesis.

Choudhury, K., Jha, G. K., Das, P. and Chaturvedi, K. K. (2019). Forecasting Potato Price using Ensemble Artificial Neural Networks. Indian Journal of Extension Education, 55(1):71-77.(http://krishi.icar.gov.in/jspui/handle/123456789/44873).

Das, P., Lama, A. and Jha, G. K. (2022). Variational Mode Decomposition based Machine Learning Models Optimized with Genetic Algorithm for Price Forecasting. Journal of the Indian Society of Agricultural Statistics, 76(3), 141-150. (http://krishi.icar.gov.in/jspui/handle/123456789/76648)


##Example how the package works
library(EMDANNhybrid)
#> Loading required package: EMD
#> Loading required package: fields
#> Loading required package: spam
#> Spam version 2.9-1 (2022-08-07) is loaded.
#> Type 'help( Spam)' or 'demo( spam)' for a short introduction 
#> and overview of this package.
#> Help for individual functions is also obtained by adding the
#> suffix '.spam' to the function name, e.g. 'help( chol.spam)'.
#> 
#> Attaching package: 'spam'
#> The following objects are masked from 'package:base':
#> 
#>     backsolve, forwardsolve
#> Loading required package: viridisLite
#> 
#> Try help(fields) to get started.
#> Loading required package: locfit
#> locfit 1.5-9.8    2023-06-11
#> Loading required package: forecast
#> Registered S3 method overwritten by 'quantmod':
#>   method            from
#>   as.zoo.data.frame zoo

#Application
# A Random time series dataset generation
set.seed(6)
data <- rnorm(300,6.6,0.36)

#Parameter setting
k <-  0.7
l <-  1
n <- 5
r <- 20
m <- 120

#Application of EMDANN model
EMDANNhybrid(data,k,l,n,r,m)
#> $Prediction_Accuracy_EMDANN
#>      RMSE_out  MAD_out MAPE_out
#> [1,] 6.626062 6.612592 1.004985
#> 
#> $Final_Prediction_EMDANN
#>  [1]  0.1198426750 -0.0612146004  0.0111487216  0.2486487592 -0.0267702026
#>  [6] -0.2794732331  0.1136882225 -0.0334757179  0.3443486631  0.2903510689
#> [11] -0.0114754180 -0.1395007186 -0.1360011414 -0.1417414378  0.3241868330
#> [16]  0.3438534342  0.0047184424  0.0056433868 -0.2056699400 -0.3099684317
#> [21]  0.1863526478  0.1744607873  0.0874342816  0.1717065539 -0.1515306731
#> [26] -0.3122245303  0.1216543023  0.2099809825  0.1257006281  0.1693920341
#> [31] -0.3337081407 -0.6018966660 -0.2620864501 -0.1771582247 -0.0832318834
#> [36]  0.1903623170 -0.1711856093 -0.3480453870 -0.1020227141 -0.2298917808
#> [41]  0.1663870774  0.3244180451 -0.2368956329 -0.4114146644 -0.2736093236
#> [46] -0.6735418656 -0.1765198128  0.0562053473 -0.1856811551 -0.2559898943
#> [51] -0.2323945734 -0.5999947824 -0.2800131450  0.2674720813 -0.1887131432
#> [56] -0.0821959120 -0.2587736015 -0.5048492193 -0.1621081693  0.2861467952
#> [61]  0.1943025042  0.2214607199  0.3434320977 -0.3273812132  0.0043746787
#> [66] -0.0378819191 -0.2604952659 -0.0005790591 -0.1165144636 -0.3419978382
#> [71] -0.0792257029  0.5097951977  0.1464608700  0.2997635777 -0.0124861431
#> [76] -0.3441036983  0.0645127078  0.1546378159 -0.0332857033 -0.0336170914
#> [81]  0.1153939765 -0.2456742660 -0.1343149712  0.3070111006 -0.0302535570
#> [86]  0.2625423400  0.2144533505 -0.0109779617  0.3155735035  0.2356158883