Conference Paper

OPERA, a R package for online aggregation of experts

To read the full-text of this research, you can request a copy directly from the authors.


We present a R package for prediction of time series based on online robust aggregation of a finite set of forecasts (machine learning method, statistical model, physical model, human expertise…). More formally, we consider a sequence of observation y(1),…,y(t) to be predicted element by element. At each time instance t, a finite set of experts provide prediction x(k,t) of the next observation y(t). Several methods are implemented to combine these expert forecasts according to their past performance (several loss functions are implemented to measure it). These combining methods satisfy robust finite time theoretical performance guarantees. We demonstrate on different examples from energy markets (electricity demand, electricity prices, solar and wind power time series) the interest of this approach both in terms of forecasting performance and time series analysis.

No full-text available

Request Full-text Paper PDF

To read the full-text of this research,
you can request a copy directly from the authors.

Cette thèse comporte deux objectifs. Un premier objectif concerne la prévision d’une charge totale dans le contexte des Smart Grids par des approches qui reposent sur la méthode de prévision ascendante. Le deuxième objectif repose quant à lui sur l’étude des forêts aléatoires dans le cadre d’observations dépendantes, plus précisément des séries temporelles. Nous étendons dans ce cadre les résultats de consistance des forêts aléatoires originelles de Breiman ainsi que des vitesses de convergence pour une forêt aléatoire simplifiée qui ont été tout deux jusqu’ici uniquement établis pour des observations indépendantes et identiquement distribuées. La dernière contribution sur les forêts aléatoires décrit une nouvelle méthodologie qui permet d’incorporer la structure dépendante des données dans la construction des forêts et permettre ainsi un gain en performance dans le cas des séries temporelles, avec une application à la prévision de la consommation d’un bâtiment.
The development of smart grid and new advanced metering infrastructures induces new opportunities and challenges for utilities. Exploiting smart meters information for forecasting stands as a key point for energy providers who have to deal with time varying portfolio of customers as well as grid managers who needs to improve accuracy of local forecasts to face with distributed renewable energy generation development. We propose a new machine learning approach to forecast the system load of a group of customers exploiting individual load measurements in real time and/or exogenous information like weather and survey data. Our approach consists in building experts using random forests trained on some subsets of customers then normalise their predictions and aggregate them with a convex expert aggregation algorithm to forecast the system load. We propose new aggregation methods and compare two strategies for building subsets of customers: 1) hierarchical clustering based on survey data and/or load features and 2) random clustering strategy. These approaches are evaluated on a real data set of residential Irish customers load at a half hourly resolution. We show that our approaches achieve a significant gain in short term load forecasting accuracy of around 25 percent of RMSE.
Full-text available
Short-term electricity forecasting has been studied for years at EDF and different forecasting models were developed from various fields of statistics or machine learning (functional data analysis, time series, non-parametric regression, boosting, bagging). We are interested in the forecasting of France’s daily electricity load consumption based on these different approaches. We investigate in this empirical study how to use them to improve prediction accuracy. First, we show how combining members of the original set of forecasts can lead to a significant improvement. Second, we explore how to build various and heterogeneous forecasts from these models and analyze how we can aggregate them to get even better predictions.
Full-text available
We consider the setting of sequential prediction of arbitrary sequences based on specialized experts. We first provide a review of the relevant literature and present two theoretical contributions: a general analysis of the specialist aggregation rule of Freund et al. (Proceedings of the Twenty-Ninth Annual ACM Symposium on the Theory of Computing (STOC), pp. 334–343, 1997) and an adaptation of fixed-share rules of Herbster and Warmuth (Mach. Learn. 32:151–178, 1998) in this setting. We then apply these rules to the sequential short-term (one-day-ahead) forecasting of electricity consumption; to do so, we consider two data sets, a Slovakian one and a French one, respectively concerned with hourly and half-hourly predictions. We follow a general methodology to perform the stated empirical studies and detail in particular tuning issues of the learning parameters. The introduced aggregation rules demonstrate an improved accuracy on the data sets at hand; the improvements lie in a reduced mean squared error but also in a more robust behavior with respect to large occasional errors.
We sum up the methodology of the team Tololo on the Global Energy Forecasting Competition 2014 for the electric load and electricity price forecasting tracks. During the competition, we used and tested many statistical and machine learning methods such as random forests, gradient boosting machines, or generalized additive models. In this paper, we only present the methods that have shown the best performance. For electric load forecasting, our strategy consisted first in producing a probabilistic forecast of the temperature and then plugging the obtained temperature scenarios to produce a probabilistic forecast of the load. Both steps are performed by fitting a quantile generalized additive model (quantGAM). Concerning the electricity price forecasting, we investigate three methods that we used during the competition. The first method follows the spirit of the one used for electric load. The second one is based on combining a set of individual predictors and the last one fit a sparse linear regression on a large set of covariates. We chose to present in this paper these three methods, because they all exhibit good performances and present a nice potential of improvements for future research.
caret has several functions that attempt to streamline the model building and evaluation process. The train function can be used to • evaluate, using resampling, the effect of model tuning parameters on performance • choose the “optimal ” model across these parameters • estimate model performance from a training set To optimize tuning parameters of models, train can be used to fit many predictive models over a grid of parameters and return the “best ” model (based on resampling statistics). See Table 1 for the models currently available. As an example, the multidrug resistance reversal (MDRR) agent data is used to determine a predictive model for the “ability of a compound to reverse a leukemia cell’s resistance to adriamycin” (Svetnik et al, 2003). For each sample (i.e. compound), predictors are calculated that reflect characteristics of the molecular structure. These molecular descriptors are then used to predict assay results that reflect resistance. The data are accessed using data(mdrr). This creates a data frame of predictors called mdrrDescr and a factor vector with the observed class called mdrrClass. To start, we will: • use unsupervised filters to remove predictors with unattractive characteristics (e.g. distributions or high inter–predictor correlations) spare • split the entire data set into a training and test setThe caret Package • center and scale the training and test set using the predictor means and standard deviations from the training set See the package vignette “caret Manual – Data and Functions ” for more details about these operations.> print(ncol(mdrrDescr)) [1] 342> nzv <- nearZeroVar(mdrrDescr)> filteredDescr <- mdrrDescr[,-nzv]> print(ncol(filteredDescr)) [1] 297> descrCor <- cor(filteredDescr)> highlyCorDescr <- findCorrelation(descrCor, cutoff = 0.75)> filteredDescr <- filteredDescr[,-highlyCorDescr]> print(ncol(filteredDescr)) [1] 50> set.seed(1)> inTrain <- sample(seq(along = mdrrClass), length(mdrrClass)/2)> trainDescr <- filteredDescr[inTrain,]> testDescr <- filteredDescr[-inTrain,]> trainMDRR <- mdrrClass[inTrain]> testMDRR <- mdrrClass[-inTrain]> print(length(trainMDRR)) [1] 264> print(length(testMDRR)) [1] 264> preProcValues <- preProcess(trainDescr)> trainDescr <- predict(preProcValues, trainDescr)> testDescr <- predict(preProcValues, testDescr)
Contributions à l'agrégation séquentielle robuste d'experts~: travaux sur l'erreur d'approximation et la prévision en loi. Applications à la prévision pour les marchés de l'énergie
  • P Gaillard
Gaillard, P. Contributions à l'agrégation séquentielle robuste d'experts~: travaux sur l'erreur d'approximation et la prévision en loi. Applications à la prévision pour les marchés de l'énergie