Spiegazione intuitiva della media mobile esponenziale |  di Vyacheslav Efimov |  Dicembre 2023

 | Intelligenza-Artificiale

Comprendere la logica alla base dell’algoritmo fondamentale utilizzato nella discesa del gradiente

In Nell’analisi delle serie temporali, spesso è necessario comprendere la direzione del trend di una sequenza tenendo conto dei valori precedenti. L’approssimazione dei valori successivi in ​​una sequenza può essere eseguita in diversi modi, compreso l’utilizzo di semplici linee di base o la costruzione di modelli avanzati di apprendimento automatico.

UN media mobile esponenziale (ponderata). è un robusto compromesso tra questi due metodi. Avere un semplice metodo ricorsivo dietro le quinte rende possibile implementare in modo efficiente l’algoritmo. Allo stesso tempo, è molto flessibile e può essere adattato con successo alla maggior parte dei tipi di sequenze.

Questo articolo illustra la motivazione alla base del metodo, una descrizione del suo flusso di lavoro e la correzione dei bias: una tecnica efficace per superare un ostacolo ai bias nell’approssimazione.

Immagina un problema di approssimazione di un dato parametro che cambia nel tempo. Ad ogni iterazione, siamo consapevoli di tutti i suoi valori precedenti. L’obiettivo è prevedere il valore successivo che dipende dai valori precedenti.

Una delle strategie ingenue è semplicemente prendere la media degli ultimi valori. Ciò potrebbe funzionare in alcuni casi, ma non è molto adatto per scenari in cui un parametro dipende maggiormente dai valori più recenti.

Uno dei modi possibili per superare questo problema è distribuire pesi più elevati ai valori più recenti e assegnare meno pesi ai valori precedenti. La media mobile esponenziale è esattamente una strategia che segue questo principio. Si basa sul presupposto che i valori più recenti di una variabile contribuiscono maggiormente alla formazione del valore successivo rispetto ai valori precedenti.

Per capire come funziona la media mobile esponenziale, esaminiamo la sua equazione ricorsiva:

Formula della media mobile esponenziale
  • vₜ è una serie temporale che approssima una determinata variabile. Il suo indice t corrisponde al timestamp t. Poiché questa formula è ricorsiva, è necessario il valore v₀ per il timestamp iniziale t = 0. In pratica, v₀ viene solitamente considerato pari a 0.
  • θ è l’osservazione sull’iterazione corrente.
  • β è un iperparametro compreso tra 0 e 1 che definisce come dovrebbe essere distribuita l’importanza del peso tra un valore medio precedente vₜ-₁ e l’osservazione attuale θ

Scriviamo questa formula per i primi diversi valori dei parametri:

Ottenimento della formula per il t-esimo timestamp

Di conseguenza, la formula finale è simile alla seguente:

Media mobile esponenziale per il t-esimo timestamp

Possiamo vedere che l’osservazione più recente θ ha peso pari a 1, la penultima osservazione — β, la terzultima — β², ecc. Poiché 0 < β < 1, il termine di moltiplicazione βᵏ diminuisce esponenzialmente all’aumentare di k, quindi più vecchie sono le osservazioni, meno importanti sono. Infine, ogni termine somma viene moltiplicato per (1 —β).

In pratica, il valore di β viene solitamente scelto vicino a 0,9.

Distribuzione del peso per timestamp diversi (β = 0,9)

Utilizzando il famoso secondo meraviglioso limite dell’analisi matematica, è possibile dimostrare il seguente limite:

Effettuando una sostituzione β = 1 – Xpossiamo riscriverlo nella forma seguente:

Sappiamo anche che nell’equazione per la media mobile esponenziale, ogni valore di osservazione viene moltiplicato per un termine βᵏ dove k indica quanti timestamp fa è stata calcolata l’osservazione. Poiché la base β è uguale in entrambi i casi, possiamo uguagliare gli esponenti di entrambe le formule:

Utilizzando questa equazione, per un valore scelto di β, possiamo calcolare un numero approssimativo di timestamp t necessari affinché i termini di peso raggiungano il valore di 1 / e ≈ 0,368). Ciò significa che le osservazioni calcolate nelle ultime iterazioni hanno un termine di peso maggiore di 1 / e e quelle più precedenti calcolate dall’ultimo intervallo di timestamp t restituiscono pesi inferiori a 1 / e con un significato molto inferiore.

In realtà, pesi inferiori a 1/e hanno un impatto minimo sulla media ponderata in modo esponenziale. Ecco perché si dice così per un dato valore di β, la media esponenziale ponderata prende in considerazione le ultime t = 1 / (1 – β) osservazioni.

Per avere un’idea migliore della formula, inseriamo diversi valori per β:

Ad esempio, prendendo β = 0,9 indica che approssimativamente in t = 10 iterazioni, il peso decade a 1 / e, rispetto al peso dell’osservazione corrente. In altre parole, la media ponderata esponenziale dipende principalmente solo dalle ultime t = 10 osservazioni.

Il problema comune con l’utilizzo della media ponderata esponenziale è che nella maggior parte dei problemi non è possibile approssimare bene i valori della prima serie. Si verifica a causa dell’assenza di una quantità sufficiente di dati nelle prime iterazioni. Ad esempio, immagina che ci venga fornita la seguente sequenza di serie temporali:

L’obiettivo è approssimarlo con la media ponderata esponenziale. Tuttavia, se usiamo la formula normale, i primi valori daranno un grande peso a v₀ che è 0 mentre la maggior parte dei punti sul grafico a dispersione sono superiori a 20. Di conseguenza, una sequenza delle prime medie ponderate sarà troppo bassa per approssimare esattamente la sequenza originale.

Una delle soluzioni ingenue è assumere un valore per v₀ vicino alla prima osservazione θ₁. Sebbene questo approccio funzioni bene in alcune situazioni, non è ancora perfetto, soprattutto nei casi in cui una determinata sequenza è volatile. Ad esempio, se θ₂ differisce troppo da θ₁, allora durante il calcolo del secondo valore v₂, la media ponderata normalmente attribuirà molta più importanza alla tendenza precedente v₁ rispetto all’osservazione attuale θ₂. Di conseguenza, l’approssimazione sarà molto scarsa.

Una soluzione molto più flessibile consiste nell’utilizzare una tecnica chiamata “correzione dei pregiudizi”. Invece di utilizzare semplicemente i valori calcolati vₖ, vengono divisi per (1 —βᵏ). Supponendo che β sia scelto vicino a 0,9–1, questa espressione tende ad essere vicina a 0 per le prime iterazioni in cui k è piccolo. Pertanto, invece di accumulare lentamente i primi valori in cui v₀ = 0, ora vengono divisi per un numero relativamente piccolo scalandoli in valori più grandi.

Esempio di calcolo della media mobile esponenziale con e senza correzione del bias

In generale, questo ridimensionamento funziona molto bene e adatta con precisione i primi termini. Quando k diventa più grande, il denominatore si avvicina gradualmente a 1, omettendo così gradualmente l’effetto di questo ridimensionamento che non è più necessario, perché a partire da una certa iterazione, l’algoritmo può fare affidamento con elevata confidenza sui suoi valori recenti senza alcun ulteriore ridimensionamento.

In questo articolo abbiamo trattato una tecnica estremamente utile per approssimare una sequenza di serie temporali. La robustezza dell’algoritmo della media ponderata esponenziale è ottenuta principalmente dal suo iperparametro β che può essere adattato per un particolare tipo di sequenza. Oltre a ciò, il meccanismo di correzione del bias introdotto rende possibile approssimare in modo efficiente i dati anche sui timestamp iniziali quando le informazioni sono troppo poche.

La media ponderata esponenziale ha un ampio ambito di applicazione nell’analisi delle serie temporali. Inoltre, è utilizzato nelle variazioni dell’algoritmo di discesa del gradiente per l’accelerazione della convergenza. Uno dei più popolari è l’ottimizzatore Momentum nel deep learning che rimuove le oscillazioni non necessarie di una funzione ottimizzata allineandola più precisamente verso un minimo locale.

Tutte le immagini, se non diversamente specificato, sono dell’autore

Fonte: towardsdatascience.com

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *