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
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- Long Short-Term Memory (Hochreiter & Schmidhuber, 1997)
- Deep Learning (Goodfellow, Bengio, Courville, 2016)