5 | | En el marco de la definición de un modelo regresivo |
6 | | unos datos (el output) vienen dados como la suma |
7 | | de unos efectos aditivos (relativos a los inputs) |
8 | | más una componente de error (el noise). |
9 | | Esta componente del ruido contiene el efecto residual |
10 | | o efecto no explicado, junto a la componente debida |
11 | | a la estructura del ruido en el caso de los modelos ARIMA |
12 | | que puede representar un valor de referencia, una tendencia |
13 | | y unos ciclos. |
14 | | |
15 | | De modo que el modelo: |
16 | | {{{ |
17 | | output = Suma(parámetros*inputs) + noise |
18 | | }}} |
19 | | se puede escribir como una descomposición: |
20 | | {{{ |
21 | | output = Suma(efectos) + ef.noise |
22 | | }}} |
23 | | |
24 | | La componente del error se considera valor base, |
25 | | de modo que podemos escribir la ecuación: |
26 | | {{{ |
27 | | output = base* + Suma(efectos) |
28 | | }}} |
29 | | En el caso de existir extructura ARIMA, el noise se podría |
30 | | subdividir en dos: una componente base pura (con el efecto |
31 | | del valor de referencia, tendencia o ciclos) y una componente residual, quedando: |
32 | | |
33 | | output = base + Suma(efectos) + ef.residual |
34 | | |
35 | | donde: {{{base = noise - residual y ef.residual = residual}}}. |
36 | | |
37 | | == Descomposición DueTo == |
38 | | |
39 | | Los informes DueTo, pretenden comparar dos instantes |
40 | | de una serie output, generalmente separados por la |
41 | | periodicidad del modelo. |
42 | | La descomposición se hace refiriendo los valores de |
43 | | un instante a los de otro anterior, del modo siguiente: |
44 | | {{{ |
45 | | output_0 = base_0 + Suma(efectos_0) + ef.residual_0 |
46 | | output_1 = base_1 + Suma(efectos_1) + ef.residual_1 |
47 | | }}} |
48 | | {{{ |
49 | | output_1 = output_0 + Dif:base + Sum(Dif:efectos) + Dif:ef.residual |
50 | | }}} |
51 | | donde: {{{Dif:x = x_1 - x_0}}} |
52 | | |
53 | | Esta descomposición, puede expresarse en porcentaje respecto a output_0 como: |
54 | | {{{ |
55 | | Dif:output/output_0 % = Dif:base/output_0 % + |
56 | | Sub(Dif:efectos/output_0 %) + Dif:resid/output_0 % |
57 | | }}} |
58 | | |
59 | | == Descomposición Canónica == |
| 21 | En el marco de la definición de un modelo regresivo, unos datos (el output) |
| 22 | vienen dados como la suma de unos efectos aditivos (relativos a los términos |
| 23 | explicativos) más una componente de error (el noise). |
| 24 | Esta componente del ruido contiene el efecto residual o efecto no explicado, |
| 25 | junto a la estructura del ruido, que en el caso de los modelos ARIMA |
| 26 | puede representar un valor de referencia, una tendencia y unos ciclos. |
| 27 | |
| 28 | De este modo, el submodelo o modelo de observaciones se puede escribir |
| 29 | como una descomposición de la forma: |
| 30 | {{{ |
| 31 | output = noise + Sum(exp.terms) |
| 32 | }}} |
| 33 | |
| 34 | === Descomposición simple === |
| 35 | |
| 36 | La descomposición más simple que podemos hacer de un modelo de observaciones |
| 37 | es aquélla en la que el output se describe como la suma de dos sumandos, |
| 38 | la componente del ruido (noise) y la suma de los efectos aditivos (filter): |
| 39 | {{{ |
| 40 | output = noise + filter |
| 41 | }}} |
| 42 | |
| 43 | === Descomposiciones personalizadas === |
| 44 | |
| 45 | Agrupando los sumandos de acuerdo a un determinado criterio, podemos obtener |
| 46 | descomposiciones personalizadas. |
| 47 | |
| 48 | === Otras descomposiciones === |
| 49 | |
| 50 | Si hacemos uso del concepto de residuos (residuals) podemos crear otras |
| 51 | descomposiciones diviendo la componente de error en una componente |
| 52 | residual y una componente predictiva: |
| 53 | {{{ |
| 54 | noise = noise.prediction + residuals |
| 55 | }}} |
| 56 | De este modo podemos encontrar descomposiciones como ésta: |
| 57 | {{{ |
| 58 | output = noise.prediction + filter + residuals = prediction + residuals |
| 59 | }}} |
| 60 | |
| 61 | == Descomposición aditiva de submodelos multiplicativos == |
66 | | En esos casos, la descomposición aditiva del output ya no es natural, |
67 | | y es necesario definir adecuadamente cómo obtenerla. |
68 | | |
69 | | Cómo el caso más común es la transformación logarítmica, nos centraremos |
70 | | en ésta, aunque los conceptos son aplicables a cualquier transformación. |
71 | | {{{ |
72 | | output = Log(observation) = Suma(parámetros*inputs) + noise |
73 | | }}} |
74 | | |
75 | | |
76 | | |
77 | | |
| 77 | En estos casos, la descomposición aditiva de las observaciones |
| 78 | ya no es trivial, y es necesario definir adecuadamente cómo obtenerla. |
| 79 | |
| 80 | El caso más común es la transformación logarítmica, y nos referiremos |
| 81 | a ésta por comodidad, aunque los conceptos son aplicables a cualquier |
| 82 | transformación. |
| 83 | {{{ |
| 84 | output = Log(observations) = noise + Suma(exp.terms) |
| 85 | }}} |
| 86 | |
| 87 | === Descomposición secuencial === |
| 88 | |
| 89 | Dada una descomposición del output podemos obtener una descomposición |
| 90 | aditiva de las observaciones introduciendo uno a uno los sumandos |
| 91 | y determinando el efecto aditivo que les corresponde. |
| 92 | |
| 93 | Sea una descomposición (ordenada) del output: |
| 94 | {{{ |
| 95 | output = Sum(contributions) |
| 96 | }}} |
| 97 | podemos encontrar una descomposición de las observaciones como una |
| 98 | suma de efectos de las contribuciones (effects): |
| 99 | {{{ |
| 100 | observations = Transformation.Inverse(output) = Sum(effects) |
| 101 | }}} |
| 102 | de modo que el efecto de la contribución i-ésima sea: |
| 103 | {{{ |
| 104 | effect.sequential_i = Transformation.Inverse(Sum(contributions,1,i)) |
| 105 | - Transformation.Inverse(Sum(contributions,1,i-1)) |
| 106 | }}} |
| 107 | |
| 108 | A este tipo de descomposición se le conoce como "descomposición secuencial" |
| 109 | ya que depende del orden de las contribuciones de la descomposición de partida |
| 110 | (descomposición del output). |
| 111 | |
| 112 | === Descomposición canónica === |
| 113 | |
| 114 | Para evitar la dependencia con el orden de las contribuciones, se propone |
| 115 | con el nombre de descomposición canónica a la descomposición media sobre |
| 116 | el conjunto de premutaciones de las contribuciones: |
| 117 | {{{ |
| 118 | effect.canonical_i = < effect.sequential_i >_permutations |
| 119 | }}} |
| 120 | |
| 121 | === Descomposiciones inexactas === |
| 122 | |
| 123 | Otro modo de descomponer las observaciones evitando la necesidad de definir |
| 124 | un orden en las contribuciones es determinar el efecto de cada contribución |
| 125 | como si fuera la primera: |
| 126 | {{{ |
| 127 | effect.firstIn_i = Transformation.Inverse(contribution_i) |
| 128 | }}} |
| 129 | Sin embargo esta "descomposición de contribuciones primeras" no es exacta |
| 130 | dejando una diferencia conocida como sinergía: |
| 131 | {{{ |
| 132 | synergy = observations - Sum(effects.firstIn) |
| 133 | }}} |
| 134 | |
| 135 | Del mismo modo que podemos tomar el efecto como si fuese la primera, podemos |
| 136 | tomar el efecto marginal (o efecto en el caso de que fuese la última): |
| 137 | {{{ |
| 138 | effect.marginal_i = observations - Transformation.Inverse(output-contribution_i) |
| 139 | }}} |
| 140 | Del mismo modo que la anterior la "descomposición de contribuciones marginales" |
| 141 | presenta sinergía: |
| 142 | {{{ |
| 143 | synergy = observations - Sum(effects.marginal) |
| 144 | }}} |
| 145 | |
| 146 | === Descomposiciones mixtas === |
| 147 | |
| 148 | Además de las descomposiciones anteriores, podemos definir descomposiciones mixtas |
| 149 | dónde el efecto de cada contribución pueda ser calculado con un criterio diferente. |
| 150 | |
| 151 | Una de las descomposiciones mixtas más comunes, es aquélla en la que hay una |
| 152 | contribución principal (que habitualmente recoge la mayor parte de la descomposición) |
| 153 | y sobre la que se quieren referir los efectos de las demás contribuciones. |
| 154 | El efecto de esta contribución principal (conocida como base) se determina como si |
| 155 | fuese una contribución primera, y el resto de contribuciones se calculan mediante |
| 156 | otra descomposición (normalmente una libre de sinergía como la descomposición canónica). |
| 157 | |
| 158 | Sea una descomposición (con contribución principal) del output: |
| 159 | {{{ |
| 160 | output = base + Sum(contributions) |
| 161 | }}} |
| 162 | la descomposición de las observaciones: |
| 163 | {{{ |
| 164 | observations = effect.base + Sum(effects) |
| 165 | }}} |
| 166 | vendrá dada por: |
| 167 | {{{ |
| 168 | effect.base = Transformation.Inverse(base) |
| 169 | }}} |
| 170 | y los efectos obtenidos sobre una descomposición de las contribuciones restantes: |
| 171 | {{{ |
| 172 | (output-base) = Sum(contributions) |
| 173 | }}} |
| 174 | |
| 175 | == Descomposición DueTo == |
| 176 | |
| 177 | Los informes o descomposiciones DueTo, pretenden comparar dos instantes |
| 178 | de las observaciones, generalmente correlativos. |
| 179 | |
| 180 | La descomposición se hace refiriendo los valores de un instante a los de |
| 181 | otro anterior, del modo siguiente: |
| 182 | {{{ |
| 183 | observations_0 = Sum(effects_0) |
| 184 | observations_1 = Sum(effects_1) |
| 185 | }}} |
| 186 | {{{ |
| 187 | observations_1 = observations_0 + Sum(Dif:effects) |
| 188 | }}} |
| 189 | donde: {{{Dif:x = x_1 - x_0}}} |
| 190 | |
| 191 | O utilizando polinomios de retardos: |
| 192 | {{{ |
| 193 | observations = B:observations + Sum((1-B):effects) |
| 194 | }}} |
| 195 | |
| 196 | === Informe de DueTo porcentual === |
| 197 | |
| 198 | Una descomposición DueTo puede expresarse en porcentajes respecto al |
| 199 | valor anterior como: |
| 200 | {{{ |
| 201 | (1-B):observations/B:observations % = Sub((1-B):effects/B:observations %) |
| 202 | }}} |
| 203 | |
| 204 | === Cambio del dominio temporal de una descomposición === |
| 205 | |
| 206 | Sin embargo, en modelos con estacionalidades, el interés suele estar |
| 207 | en comparar los valores correspondientes a dos ciclos o periodos correlativos |
| 208 | y no a dos instantes correlativos. |
| 209 | |
| 210 | Para conseguir obtener un descomposición DueTo sobre los valores correspondientes |
| 211 | a estos ciclos o periodos es necesario hacer un cambio previo del dominio temporal |
| 212 | de la descomposición. |
| 213 | |
| 214 | === Otras descomposiciones DueTo === |
| 215 | |
| 216 | Además de hacer una descomposición de las observaciones comparándolas |
| 217 | con un instante anterior, podemos obtener otras descomposiciones |
| 218 | comparando cada contribución con su valor inicial o su valor medio: |
| 219 | {{{ |
| 220 | observations = S:observations + Sum((1-S):effects) |
| 221 | }}} |
| 222 | donde {{{S}}} sea sería un estadístico sobre la serie |
| 223 | como su primer valor o su valor medio. |
| 224 | |
| 225 | |
| 226 | |
| 227 | |