LSTM-lag

LSTM-lag er et type recurrent neural network lag der anvender gating-mekanismer til at styre informationsflowet og håndtere langtidsafhængigheder.

Kort fortalt

Et LSTM-lag er et neuralt netværkslag, der kan huske information i lang tid og undgår problemer med forsvindende gradienter.

Kategori
arkitektur
Niveau
øvet

Betydninger

1
  1. 1

    Et lag i et neuralt netværk bestående af LSTM-enheder, der anvender gating-mekanismer til at regulere informationsflowet og bevare langtidsafhængigheder.

    • Netværket består af et indlejringslag efterfulgt af to LSTM-lag med 256 enheder hver.Konstrueret eksempel
    • LSTM-lag er særligt velegnede til at modellere længere tidsafhængigheder i sekvensdata.Konstrueret eksempel

Hvornår bruges det

LSTM-lag bruges typisk i sekvensmodellering, f.eks. inden for naturlig sprogbehandling, talegenkendelse og tidsserieanalyse. De er især effektive når der er længerevarende afhængigheder i dataene. LSTM-lag kan stables for at danne dybere netværk.

Formel

c_t = f_t * c_{t-1} + i_t * tanh(W_c·[h_{t-1}, x_t] + b_c), hvor i_t = σ(W_i·[h_{t-1}, x_t] + b_i), f_t = σ(W_f·[h_{t-1}, x_t] + b_f), o_t = σ(W_o·[h_{t-1}, x_t] + b_o) og h_t = o_t * tanh(c_t).

Kodeeksempel

from tensorflow.keras.layers import LSTM
model.add(LSTM(units=64, return_sequences=True))

Opretter et LSTM-lag med 64 enheder, der returnerer hele sekvensen (velegnet til stacking).

Oprindelse

LSTM står for 'Long Short-Term Memory'. LSTM-lag er opkaldt efter den originale LSTM-enhed, introduceret af Sepp Hochreiter og Jürgen Schmidhuber i 1997.

Kilder

2