Le nombre de paramètres d’un réseau est un indicateur clé de sa capacité et de son coût d’entraînement. On note :
\(d\) : dimension de l’entrée \(x_t\),
\(h\) : dimension de l’état caché,
\(p\) : dimension de la sortie \(y_t\).
Chaque architecture possède une couche de sortie linéaire \(y_t = W_y h_t + b_y\).
Rappel des architectures.
RNN simple : \[h_t = \tanh(W_x x_t + W_h h_{t-1} + b_h)\]
LSTM — quatre portes, chacune de la forme \(W x_t + U h_{t-1} + b\) : \[f_t, \quad i_t, \quad \tilde{c}_t, \quad o_t\]
GRU — trois portes : \[\begin{align*} r_t &= \sigma(W_r x_t + U_r h_{t-1} + b_r) & &\text{(porte de réinitialisation)}\\ z_t &= \sigma(W_z x_t + U_z h_{t-1} + b_z) & &\text{(porte de mise à jour)}\\ \tilde{h}_t &= \tanh(W_h x_t + U_h (r_t \odot h_{t-1}) + b_h) & &\text{(candidat)}\\ h_t &= (1 - z_t) \odot h_{t-1} + z_t \odot \tilde{h}_t \end{align*}\]
Justifier que le nombre de paramètres du RNN simple (hors couche de sortie) est \(N_{\text{RNN}} = h(d + h + 1)\). Détailler la contribution de chaque matrice et biais.
Montrer que le nombre de paramètres de la LSTM (hors couche de sortie) est \(N_{\text{LSTM}} = 4h(d + h + 1)\). Pourquoi ce facteur \(4\) ?
Montrer que le nombre de paramètres du GRU (hors couche de sortie) est \(N_{\text{GRU}} = 3h(d + h + 1)\).
Ajouter la contribution de \(W_y \in \mathbb{R}^{p \times h}\) et \(b_y \in \mathbb{R}^p\). Écrire le nombre total de paramètres \(N_{\text{total}}\) pour chacune des trois architectures.
Application numérique : \(d = 10\), \(h = 64\), \(p = 5\). Compléter le tableau suivant.
| Architecture | Paramètres (hors sortie) | Paramètres (avec sortie) |
|---|---|---|
| RNN simple | ||
| GRU | ||
| LSTM |
La LSTM a davantage de paramètres que le GRU, mais est-elle toujours plus performante ? Dans quel cas préférerait-on le GRU ?