Package 'EEML'

Title: Ensemble Explainable Machine Learning Models
Description: We introduced a novel ensemble-based explainable machine learning model using Model Confidence Set (MCS) and two stage Technique for Order of Preference by Similarity to Ideal Solution (TOPSIS) algorithm. The model combined the predictive capabilities of different machine-learning models and integrates the interpretability of explainability methods. To develop the proposed algorithm, a two-stage Technique for Order of Preference by Similarity to Ideal Solution (TOPSIS) framework was employed. The package has been developed using the algorithm of Paul et al. (2023) <doi:10.1007/s40009-023-01218-x> and Yeasin and Paul (2024) <doi:10.1007/s11227-023-05542-3>.
Authors: Dr. Md Yeasin [aut], Dr. Ranjit Kumar Paul [aut, cre], Dr. Dipanwita Haldar [aut]
Maintainer: Dr. Ranjit Kumar Paul <[email protected]>
License: GPL-3
Version: 0.1.1
Built: 2025-02-17 03:13:51 UTC
Source: https://github.com/cran/EEML

Help Index


Ensemble Explainable Machine Learning Models

Description

Ensemble Explainable Machine Learning Models

Usage

EEML(df, Weight)

Arguments

df

List of dataframes containing various explainable scores for each model

Weight

Ensemble weights of the models (from weight function)

Value

  • ImpScore: Final variable important score of EEML model

References

  • Paul, R.K., Das, T. and Yeasin, M., 2023. Ensemble of time series and machine learning model for forecasting volatility in agricultural prices. National Academy Science Letters, 46(3), pp.185-188.

  • Yeasin, M. and Paul, R.K., 2024. OptiSembleForecasting: optimization-based ensemble forecasting using MCS algorithm and PCA-based error index. The Journal of Supercomputing, 80(2), pp.1568-1597.

Examples

library("EEML")
df1<- as.data.frame(matrix(rnorm(50) , nrow = 10) )
df2<- as.data.frame(matrix(rnorm(50) , nrow = 10) )
df3<- as.data.frame(matrix(rnorm(50) , nrow = 10) )
rownames(df1)<- rownames(df2)<-rownames(df3)<-paste0("Var", seq(1,10,1))
colnames(df1)<- colnames(df2)<-colnames(df3)<-paste0("Exp", seq(1,5,1))
DF<- list(df1, df2, df3)
EEML<-EEML(df=DF,Weight=NULL)

Selection of Superior Models Using MSC Algorithm

Description

Selection of Superior Models Using MSC Algorithm

Usage

ModelSel(df, Alpha, K)

Arguments

df

Dataframe of predicted values of models with first column as actual values

Alpha

Confidence level of MCS tests

K

Resampling length

Value

  • SelModel: Name of the selected models

References

  • Paul, R.K., Das, T. and Yeasin, M., 2023. Ensemble of time series and machine learning model for forecasting volatility in agricultural prices. National Academy Science Letters, 46(3), pp.185-188.

  • Yeasin, M. and Paul, R.K., 2024. OptiSembleForecasting: optimization-based ensemble forecasting using MCS algorithm and PCA-based error index. The Journal of Supercomputing, 80(2), pp.1568-1597.

  • Hansen PR, Lunde A, Nason JM, 2011. The model confidence set. Econometrica, 79(2), 453-497

Examples

library("EEML")
Actual<- as.ts(rnorm(200,100,50))
Model1<- as.ts(rnorm(200,100,50))
Model2<- as.ts(rnorm(200,100,50))
Model3<- as.ts(rnorm(200,100,50))
Model4<- as.ts(rnorm(200,100,50))
Model5<- as.ts(rnorm(200,100,50))
DF <- cbind(Actual, Model1,Model2,Model3,Model4,Model5)
SelModel<-ModelSel(df=DF, Alpha=0.2, K=1000)

Selection of Superior Models Using MSC Algorithm

Description

Selection of Superior Models Using MSC Algorithm

Usage

Weight(ModelSel, Optim = "PSO")

Arguments

ModelSel

Dataframe of predicted values of selected models with first column as actual values

Optim

Optimisation technique

Value

  • WeightEn: Ensemble weight of the candidate models

References

  • Paul, R.K., Das, T. and Yeasin, M., 2023. Ensemble of time series and machine learning model for forecasting volatility in agricultural prices. National Academy Science Letters, 46(3), pp.185-188.

  • Yeasin, M. and Paul, R.K., 2024. OptiSembleForecasting: optimization-based ensemble forecasting using MCS algorithm and PCA-based error index. The Journal of Supercomputing, 80(2), pp.1568-1597.

Examples

library("EEML")
Actual<- as.ts(rnorm(200,100,50))
Model1<- as.ts(rnorm(200,100,50))
Model2<- as.ts(rnorm(200,100,50))
Model3<- as.ts(rnorm(200,100,50))
DF <- cbind(Actual, Model1,Model2,Model3)
SelModel<-Weight(ModelSel=DF,Optim="PSO")