Idée
Coucher la matrice à plat en mettant ses lignes bout à bout : on obtient un long vecteur de 784 nombres au lieu d'un carré 28×28.
Pourquoi
Coucher la matrice à plat en mettant ses lignes bout à bout : on obtient un long vecteur de 784 nombres au lieu d'un carré 28×28. C'est la même donnée, juste rangée différemment — comme défaire un échiquier en alignant ses cases en une seule rangée.
Outil
Identification canonique $\mathcal{M}_{n,p}(\mathbb{R}) \simeq \mathbb{R}^{np}$ — l'isomorphisme d'aplatissement qu'on utilise en algèbre linéaire pour passer d'une matrice à un vecteur de coefficients.
Formule
Cell 5 contient X = inputs.view(60000, 28*28).T.float(). Sans regarder, expliquer pourquoi le .T est nécessaire et ce qu'il met dans quelle dimension.
Piège
Pour un batch de N images 28×28, .flatten() donné un vecteur de N×784 éléments — mauvaise forme. Il faut préserver la dimension batch : .view(N, 28*28) ou .reshape(N, 784). Conséquence du mauvais reshape : le réseau prend N×784 entrées au lieu de N exemples de 784 features → erreur de dimension fatale ou silencieuse.