Descente de gradient stochastique et par mini-batch

Comment les modèles apprennent réellement, de la descente de gradient classique à Adam

La descente de gradient en batch complet utilise chaque exemple d'entraînement pour calculer chaque mise à jour ; la descente de gradient stochastique va à l'autre extrême et n'en utilise qu'un seul. La descente de gradient par mini-batch se situe entre les deux, avec un petit batch, et c'est ce compromis qui fait réellement tourner le deep learning.

Un gradient de mini-batch est une estimation bruyante du gradient complet. Il est moins coûteux et souvent plus utile que le gradient complet exact, car il permet de nombreuses mises à jour rapides et son bruit peut favoriser l'exploration.

Le contrôle qualité de boîtes de céréales use du même compromis. Ouvrir chaque boîte est précis mais lent. Vérifier une seule boîte est bruyant. Vérifier un plateau de boîtes donne une estimation utile rapidement. Les mini-batches, ce sont ces plateaux. La figure ci-dessous rend la statistique visible : appuyez sur Lancer et regardez une moyenne glissante se stabiliser à mesure que les échantillons arrivent. Un gradient de mini-batch est le même type d'objet, une moyenne qui se stabilise à mesure que le batch grandit.

Où cela apparaît en MLPresque tous les réseaux de neurones sont entraînés par mini-batches, car ils s'adaptent bien au matériel accélérateur et fournissent un flux utile de gradients approximatifs. La taille de batch, le taux d'apprentissage et le planning sont généralement réglés ensemble.
▶ Descente de gradient stochastique et par mini-batch
← AdamLa convexité en pratique →