Prédiction du prix du carbone basée sur la technique de décomposition et le renforcement du gradient extrême optimisé par l’algorithme de l’optimiseur du loup gris

 Prédiction du prix du carbone basée sur la technique de décomposition et le renforcement du gradient extrême optimisé par l’algorithme de l’optimiseur du loup gris

Choix des caractéristiques

Forêt aléatoire

Après la sélection initiale de 11 métriques, la sélection des caractéristiques est effectuée. Elle peut améliorer la capacité de généralisation du modèle, réduire le risque de surajustement, réduire la complexité informatique du modèle, etc. Les méthodes courantes de sélection des caractéristiques sont la corrélation de Gray, le coefficient de corrélation de Pearson et les forêts aléatoires. La corrélation de Gray et le coefficient de corrélation de Pearson sont tous deux des méthodes basées sur des relations linéaires, tandis que les forêts aléatoires peuvent traiter des relations non linéaires plus complexes. Cela signifie que les forêts aléatoires peuvent sélectionner des caractéristiques dans un large éventail de situations. Par conséquent, dans le présent document, la méthode RF est utilisée pour sélectionner les systèmes d’indicateurs primaires du prix du carbone.

Sur la base des résultats de la méthode RF, les caractéristiques primaires sont classées en termes d’importance, puis sélectionnées. Considérons un échantillon de \(A\) et une dimension de \(m\). Fournir un ensemble d’échantillons de formation \(\left\{({x}_{1},{y}_{1}),\cdots ,({x}_{N},{y}_{N})\right\}\) et créer un ensemble d’échantillons d’auto-assistance \({C}_{t}\) de taille \(A\); \({K}_{t}\) est obtenu par un arbre de classification et de régression (CART) sur \({C}_{t}\) ; En prenant un échantillon aléatoire de \({m}_{try}=\sqrt{m}\) de chaque arbre et en sélectionnant les caractéristiques les plus significatives. \({m}_{try}\) pour le découpage des nœuds ; Analyser si \(t\) satisfait \(t\le ntree\) jusqu’à ce que la boucle ne soit pas quittée, puis en générant des \(G=Uniform\left(\left\{{K}_{t}\right\}\right)\).

Dans le calcul de l’importance des caractéristiques, l’indice de Gini est utilisé comme fonction de segmentation pour calculer « l’importance de Gini » en tant que degré d’importance d’une caractéristique. Cet indice peut être exprimé comme suit :

$$Gini(C)=1-{{\sum }_{i=1}^{\left|E\right|}\left[{F}_{i}\right]}^{2}$$

(1)

\(C\) représente l’ensemble d’échantillons ;\({F}_{i}\) représente la probabilité d’appartenir au groupe \(ith\) classe dans l’ensemble d’échantillons \(C\) ; Il existe un certain nombre de classes types dans \(E\) . L’indice de Gini de l’échantillon \(C\) est définie lorsque la caractéristique \(G\) est connu.

$$Giniindex(C,G)={\sum }_{H=1}^{H}\frac{\left|{C}^{H}\right|}{C}Gini({C}^{H})$$

(2)

\(H\) représente le nombre de caractéristiques \(G\) , c’est-à-dire, \(C\) est divisé en \(H\) sous-ensembles en fonction des caractéristiques \(G\) valeurs \(\left\{{C}^{1},{C}^{2},… {C}^{H}\right\}\)et les échantillons de chaque sous-ensemble ont les mêmes caractéristiques \(G\) valeur. \(G\) L’élément qui présente l’indice de Gini le plus faible après division est considéré comme l’élément optimal dans le processus de sélection.

Fonction d’autocorrélation partielle

La PACF est un outil statistique d’analyse des séries temporelles qui aide à déterminer la relation entre chaque observation d’une série temporelle et ses valeurs de retard. Sa fonction est de reconnaître l’ordre du modèle AR (autorégressif) dans une série temporelle, c’est-à-dire le nombre de retards à prendre en compte dans ce modèle. Le modèle PACF ajuste en fait la fonction d’autocorrélation (ACF) en éliminant la partie déjà expliquée par les retards précédents, de sorte que la partie restante reflète plus précisément la relation entre les observations et les retards à l’instant présent. \(({X}_{t},{X}_{t+v}|{X}_{t+1}|,\cdot \cdot \cdot ,{X}_{\left(t+v-1\right)}\) représente la corrélation conditionnelle entre \({X}_{t}\) et \({X}_{t+v}\) après élimination des effets des variables intermédiaires \({X}_{t+1},\cdot \cdot \cdot ,{X}_{\left(t+v-1\right)}\), c’est-à-dire l’autocorrélation partielle entre \({X}_{t}\) et \({X}_{t+v}\).

Modèle CEEMDAN

La décomposition en modes empiriques (EMD) consiste à décomposer les données brutes non linéaires et non stationnaires en fonctions de mode inhérentes (IMFS) avec différentes échelles de fluctuation. Cependant, en raison de l’intermittence des données brutes, il est facile de confondre les modes. Cela affecte l’effet de décomposition. Wu35 a proposé une méthode de décomposition en mode empirique d’ensemble (EEMD) en ajoutant un certain degré de bruit blanc gaussien aux données d’origine pour une décomposition répétée. Bien que le phénomène de chevauchement des modes puisse être résolu efficacement, un bruit blanc résiduel subsiste dans la composante de la fonction de mode propre dérivée par cette méthode, ce qui se traduit par une faible précision de la reconstruction. Partant de ce constat, Torres36 La méthode CEEMDAN (complete ensemble empirical mode decomposition with adaptive noise) permet de résoudre le problème des erreurs de reconstruction significatives dans la méthode EEMD en introduisant un bruit blanc adaptatif à chaque étape. Par conséquent, dans cet essai, la méthode CEEMDAN est utilisée pour prévoir chaque composante de la fonction de mode propre et le terme de tendance séparément.

La méthode CEEMDAN peut être décomposée comme suit :

Étape 1 L’ajout d’une séquence de bruit blanc gaussien à la séquence résiduelle permet d’obtenir une séquence actualisée avec du bruit :

$$\overline{{y}_{i}}\left(t\right)=y\left(t\right)+\sigma {n}_{i}\left(t\right),i=\mathrm{1,2}…N$$.

(3)

\(y\left(t\leright)\) est la séquence résiduelle, et \(\overline{{y}_{i}}\left(t\right)\) est la nouvelle séquence à laquelle a été ajouté un bruit blanc gaussien ; \({n}_{i}\left(t\right)\) désigne le bruit blanc ajouté aux données résiduelles ; σ est le coefficient d’adaptation.

Étape 2 La décomposition EMD est effectuée sur la nouvelle séquence avec ajout de bruit blanc pour obtenir N composantes modales, et la première composante modale du CEEMDAN est obtenue par le calcul de la moyenne globale des N composantes modales comme suit :

$$im{f}_{1}\left(t\right)=\frac{1}{N}{\sum }_{i=1}^{N}im{f}_{1i}\left(t\right)$$

(4)

A ce stade, \({R}_{1}\left(t\right)\) est la composante résiduelle.

$$ {\text{R}}_{1} \left( {\text{t}} \right) = \overline{{{{{text{y}}_{{{{text{i}}} }} \left( {\text{t} \N \Nright) – {{imf}}_{1}^{\mathrm{^{\Nprime}} \n-ft( {{t}} \n-right) $$

(5)

Étape 3 La séquence de bruit blanc adaptatif \(\sigma {n}_{i}\left(t\right)\) est ajouté à \({R}_{1}\left(t\right)\) pour former une nouvelle séquence \({R}_{1}\left(t\right)+\sigma {E}_{1}\left({n}_{i}\left(t\right)\right)\) avec bruit, où \({E}_{j}\gauche(\cdot \droite)\) est la jème composante monomodale propre obtenue après la décomposition EMD. À ce stade, la décomposition EMD est effectuée sur la nouvelle séquence et la moyenne est calculée pour obtenir la deuxième composante modale et la composante résiduelle comme suit :

$$ im{f}_{2} \left( {{t}} \leright) = \frac{1}{{\text{N}}}\mathop \sum \limits_{{{\text{i}} = 1}}^{\text{N}} {\text{E}}_{1} \left( {{{text{R}}_{1} \left( {\text{t} \right) + {\upsigma }_{1} {\text{E}}_{1} \left( {{\text{n}}_{{\text{i}}} \left( {\text{t} \right)} \right)} \right) $$

(6)

$${R}_{2}\left(t\right)={R}_{1}\left(t\right)-im{{f}_{2}}^{\mathrm{^{\prime}}}\left(t\right)$$

(7)

Étape 4 Répétez les trois étapes ci-dessus pour obtenir la (j + 1)ème composante modale et la jème composante résiduelle :

$$im{f}_{j+1}\left(t\right)=\frac{1}{N}{\sum }_{i=1}^{N}{E}_{1}\left({R}_{j}\left(t\right)+{\sigma }_{j}{E}_{j}\left({n}_{i}\left(t\right)\right)\right)$$

(8)

$${R}_{j}\left(t\right)={R}_{j-1}\left(t\right)-im{{f}_{j}}^{\mathrm{^{\prime}}}\left(t\right)$$

(9)

Étape 5 Répétez les étapes ci-dessus jusqu’à ce que le CEEMDAN ne puisse plus être décomposé par EMD. Enfin, la séquence originale \(\mathrm{y}(\mathrm{t})\) est décomposée en plusieurs composantes modales propres et en une composante tendancielle.

$$ {\text{y}}\left( {\text{t}} \right) = {{imf}}\left( {\text{t}} \right) + {\text{R}}_{{{text{es}}}} \N- \N- \N- \N- \N- \N- \N- \N- \N- \N- \N- $$

(10)

Après que le CEEMDAN a décomposé la série résiduelle, le modèle GWO-XGBOOST est appliqué à chaque composante de la fonction propre. La prévision résiduelle finale est obtenue en combinant linéairement les résultats de chaque composante.

Modèle XGBOOST

Le modèle XGBOOST (Extreme gradient boosting) a été développé par Chen et al.37 en 2016, qui intègre un solveur d’échelle linéaire avec un algorithme d’apprentissage par arbre de régression catégorique. Le modèle combine des modèles dont la précision de prédiction est faible grâce à certaines stratégies. L’objectif est de construire un modèle intégré plus précis en termes de prédiction. Au cours du processus d’apprentissage du modèle, XGBOOST optimise le processus de renforcement. Chaque itération génère un arbre de décision mis à jour pour s’adapter aux résidus générés lors de l’itération précédente. XGBOOST peut continuellement améliorer sa précision de prédiction et sa capacité de généralisation grâce à l’optimisation itérative. Alors que les méthodes traditionnelles d’arbre de décision avec renforcement du gradient (GBDT) n’utilisent que des dérivés du premier ordre, XGBOOST effectue une expansion de Taylor du deuxième ordre de la fonction de perte, contrôle la complexité du modèle en introduisant des termes de régularisation pour éviter les problèmes de surajustement, et utilise une approche d’évaluation plus raffinée lors de la division des nœuds pour mieux capturer les relations non linéaires entre les caractéristiques. Ces dernières années, le modèle XGBOOST a démontré des performances supérieures dans le contrôle des risques financiers, la santé médicale, le traitement du langage naturel et d’autres domaines. Ce modèle est basé sur les principes mathématiques suivants :

Un modèle d’intégration pour l’arbre de définition peut être décrit comme suit :

$${\widehat{y}}_{i}={\sum }_{m=1}^{M}{f}_{m}({x}_{i}),{f}_{m}\in F$$

(11)

\({\widehat{y}}_{i}\) est la valeur de prédiction ; \(M\) est le nombre d’arbres de décision ; \(F\) est l’espace de sélection des arbres ; \({x}_{i}\) est le premier \(i\) caractéristique d’entrée.

La fonction de perte de XGBOOST est la suivante :

$$Q={\sum }_{i=1}^{n}l({y}_{i},{\widehat{y}}_{i})+{\sum }_{m=1}^{M}\theta \left({f}_{m}\right)$$

(12)

La première partie de la fonction est l’erreur de prédiction entre la valeur prédite et la valeur d’apprentissage réelle du modèle XGBOOST, et la deuxième partie représente la complexité de l’arbre, qui est principalement utilisée pour contrôler la régularisation de la complexité du modèle :

$$\theta ({f}_{m})=\gamma T+\frac{1}{2}\tau {\Vert \omega \Vert }^{2}$$$

(13)

\(\gamma \) et \(\tau \) sont des facteurs de pénalité.

En ajoutant une fonction incrémentale \({f}_{t}\left({x}_{i}\right)\) à l’Eq. (13), la valeur de la fonction de perte est minimisée. La fonction objective de la \(t\) th time is

$${Q}_{\left(t\right)}={\sum }_{i=1}^{n}l({y}_{i},{\widehat{y}}_{i})+{\sum }_{m=1}^{M}\theta \left({f}_{m}\right)={\sum }_{i=1}^{n}l\left({y}_{i},{{\widehat{y}}_{i}}^{t-1}+{f}_{t}\left({x}_{i}\right)\right)+\theta \left({f}_{t}\right)$$

(14)

L’expansion de Taylor du second ordre de l’Eq. (15) est utilisée pour approximer la fonction objective, et l’ensemble d’échantillons dans chaque enfant de l’Eq. (15) est utilisé pour approximer la fonction objective. \(j\) L’arbre est défini comme suit \({I}_{j}=\left\{i\left|q\left({x}_{i}=j\right)\right.\right\}\). À ce stade, le \({Q}_{\left(t\right)}\) peut être approximé comme

$${Q}_{\left(t\right)}\cong \sum_{j=1}^{T}\left[\left({\sum }_{i\in {I}_{j}}{g}_{i}\right){\omega }_{j}+(1/2)\left({\sum }_{i\in {I}_{j}}{h}_{i}+\tau \right){{\omega }_{j}}^{2}\right]+\gamma T$$

(15)

\({g}_{i}={\partial }_{{{\widehat{y}}_{i}}^{t-1}}l\left({y}_{i},{{\widehat{y}}_{i}}^{t-1}\right)\) est la dérivée de premier ordre de la fonction de perte ; \({h}_{i}={{\partial }^{2}}_{{{\widehat{y}}_{i}}^{t-1}}l\left({y}_{i},{{\widehat{y}}_{i}}^{t-1}\right)\) est la dérivée de second ordre de la fonction de perte. En définissant \({G}_{i}=\sum i\in {I}_{j}{g}_{i}\), \({H}_{i}={\sum }_{i\in {I}_{j}}{h}_{i}\) alors nous avons :

$${Q}_{\left(t\right)}\cong {\sum }_{j=1}^{T}\left[{G}_{j}{\omega }_{j}+(1/2)\left({H}_{j}+\tau \right){{\omega }_{j}}^{2}\right]+\gamma T$$

(16)

La dérivée partielle de \(\oméga \) rendements

$${\omega }_{j}=-{G}_{j}/{(H}_{j}+\tau )$$

(17)

En incorporant les poids dans la fonction objective, nous obtenons

$${Q}_{\left(t\right)}\cong -(1/2){\sum }_{j=1}^{T}{{{G}_{j}}^{2}/({H}_{j}+\tau )+\gamma T$$

(18)

Une grande partie de la performance du modèle est déterminée par la sélection des paramètres pendant le processus de formation du modèle XGBOOST. L’algorithme XGBOOST comporte 23 hyperparamètres, principalement divisés en paramètres généraux pour le contrôle de la fonction macroscopique, en paramètres de stimulation pour le contrôle des détails de stimulation et en paramètres de cible d’apprentissage pour le contrôle de la cible de formation. Le modèle combinatoire GWO-XGBOOST combine les trois hyperparamètres qui ont un impact significatif sur les performances de XGBOOST (learning_rate, n_estimators et max_depth) avec le vecteur de position de la tête wolf \(\alpha \) dans l’algorithme GWO et les met continuellement à jour à travers les itérations de l’algorithme GWO pour trouver continuellement la position optimale jusqu’à ce que la position optimale globale soit émise en tant que paramètre final du modèle XGBOOST.

Modèle GWO

Un algorithme d’optimisation de l’intelligence de la meute, le grey wolf optimizer (GWO), basé sur le comportement prédateur des loups gris, a été proposé par Mirjalili et al.38 en 2014, inspiré par le comportement prédateur des loups gris. Le processus d’optimisation de l’algorithme GWO peut être comparé au comportement de chasse de la meute de loups gris. Parmi eux, α, \(\beta \), et \(\delta \) Les loups ayant le niveau social le plus élevé dans chaque génération de la population sont les chefs de la meute de loups gris. Un prédateur recherche, encercle et attaque une proie pour atteindre son objectif d’optimisation. La méthode GWO présente une forte capacité de convergence globale, une grande robustesse et moins de paramètres à ajuster. Elle est désormais utilisée dans de nombreux domaines pour les problèmes d’optimisation.

Tout d’abord, la définition mathématique de la manière dont une meute de loups recherche et entoure sa proie est la suivante :

$$A=\left|B\cdot {F}_{p}\left(t\right)-F\left(t\right)\right|$$$

(19)

$$F\left(t+1\droite)={F}_{p}\left(t\droite)-C\cdot A$$$

(20)

$$C=2c\cdot {r}_{1}-c$$$

(22)

$$B=2\cdot {r}_{2}$$$$$$$.

(23)

\(F\left(t\leright)\) est la position de la proie après le \(t\) ème itération ; \({F}_{P}\left(t\right)\) est la position du loup gris à l’heure de la \(t\) itération ; \(A\) est la distance entre le loup gris et la proie ; \N(F\Ngauche(t+1\Ndroite)\N) est la mise à jour de la position du loup gris ; \(C\) et \(B\) sont les vecteurs de coefficient ;\(c\) est le facteur de convergence dont la valeur diminue linéairement de 2 à 0 avec le nombre d’itérations, \(D\) est le nombre d’itérations précédentes, et \(E\) est le nombre maximum d’itérations ; \(r_{1}\) et \(r_{2}\) sont les nombres aléatoires entre [0,1].

Deuxièmement, la proie est finalement déterminée en mettant constamment à jour les positions des trois loups optimaux α, \(\beta \), et \(\delta \). La définition mathématique du processus de chasse de la meute de loups gris est la suivante

$${A}_{\alpha }=\left|{B}_{1}\cdot {F}_{\alpha }\left(t\right)-F\left(t\right)\right|$$$

(24)

$${A}_{\beta }=\left|{B}_{2}\cdot {F}_{\beta }\left(t\right)-F\left(t\right)\right|$$$

(25)

$${A}_{\delta }=\left|{B}_{3}\cdot {F}_{\delta }\left(t\right)-F\left(t\right)\right|$$$

(26)

$${F}_{1}\left(t+1\right)={F}_{\alpha }\left(t\right)-{C}_{1}\cdot {A}_{\alpha }$$$

(27)

$${F}_{2}\left(t+1\right)={F}_{\beta }\left(t\right)-{C}_{2}\cdot {A}_{\beta }$$$

(28)

$${F}_{3}\left(t+1\right)={F}_{\delta }\left(t\right)-{C}_{3}\cdot {A}_{\delta }$$$

(29)

$$F\left(t+1\right)=({F}_{1}\left(t+1\right)+{F}_{2}\left(t+1\right)+{F}_{3}\left(t+1\right))/3$$

(30)

\({F}_{\alpha }\left(t\right)\), \({F}_{\beta }\left(t\right)\) et \({F}_{\delta }\left(t\right)\) sont les positions de \(\alpha \), \(\beta \) et \(\delta \) lorsque la population est itérée jusqu’à la génération t ; \(F\left(t\right)\) est la position des loups gris individuels dans la génération t ; \({C}_{1}\) et \({B}_{1}\), \({C}_{2}\) et \({B}_{2}\), \({C}_{3}\) et \({B}_{3}\) sont les vecteurs de coefficients de \(\alpha \), \(\beta \) et \(\delta \) respectivement ; \({F}_{1}\left(t+1\right)\),\( {F}_{2}\left(t+1\right)\) et \({F}_{3}\left(t+1\right)\) sont les positions de \(\alpha \), \(\beta \) et \(\delta \) wolves after \(\N- gauche (t+1\Ndroite)\N) itérations, respectivement ; \N(F\Ngauche(t+1\Ndroite)\N) est la position de la prochaine génération de loups gris.

Modèle GWO-XGBOOST-CEEMDAN

Pour améliorer la prévision du prix du carbone, nous proposons de combiner les modèles CEEMDAN, XGBOOST et GWO pour construire le modèle GWO-XGBOOST-CEEMDAN. L’idée générale est la suivante : Premièrement, le modèle GWO-XGBOOST est établi et l’algorithme GWO est utilisé pour optimiser les paramètres du modèle XGBOOST. Ensuite, la méthode CEEMDAN est appliquée pour décomposer les séries résiduelles du modèle GWO-XGBOOST afin d’établir le modèle hybride GWO-XGBOOST-CEEMDAN. Enfin, les valeurs prédites et les valeurs cumulées des prédictions résiduelles sont additionnées pour obtenir les résultats de prédiction finaux du modèle. La figure 1 illustre le processus spécifique.

Figure 1
figure 1

Processus de prédiction du modèle GWO-XGBOOST-CEEMDAN.


Source de l’article

A découvrir