Entraînement et lois d'échelle¶
L'objectif : la perte d'entropie croisée¶
Entraîner un modèle de langage, c'est ajuster ses paramètres \(\theta\) pour qu'il attribue une probabilité élevée aux jetons réellement observés dans le corpus. On minimise la log-vraisemblance négative, dite entropie croisée :
Intuition
Si le modèle donne 90 % au bon jeton, la perte locale vaut \(-\log(0{,}9) = 0{,}105\). S'il ne lui donne que 1 %, elle vaut \(-\log(0{,}01) = 4{,}6\). La perte punit très fort la confiance mal placée.
Une perte de 2,0 correspond à une perplexité de \(e^{2} \approx 7{,}4\) : « en moyenne, le modèle hésite entre 7,4 jetons ». C'est la métrique de base des courbes de loi d'échelle.
La descente de gradient¶
- Prendre un lot (batch) de séquences.
- Calculer la perte : la passe avant (forward).
- Calculer \(\nabla_\theta \mathcal{L}\), la dérivée de la perte par rapport à chaque paramètre : la passe arrière (backward), par rétropropagation.
- Déplacer chaque paramètre dans la direction opposée au gradient.
- Recommencer, des centaines de milliers de fois.
Erreur fréquente
« La passe arrière coûte autant que la passe avant. » Elle coûte en réalité environ deux fois plus, car il faut calculer les gradients par rapport aux entrées et par rapport aux poids. La règle empirique usuelle est \(C \approx 6ND\) FLOPs pour \(N\) paramètres et \(D\) jetons (2 pour l'avant, 4 pour l'arrière).
Les activations : le vrai coût mémoire¶
Pour calculer les gradients, il faut conserver les valeurs intermédiaires de la passe avant. Sur 93 couches et des séquences longues, ces activations occupent bien plus de mémoire que les poids eux-mêmes.
Trois techniques, toutes utilisées par Kimi K3 et unifiées par son gestionnaire d'activations :
- Recalcul (recomputation / checkpointing) : ne rien garder, tout recalculer pendant la passe arrière. On échange du calcul contre de la mémoire.
- Quantification : stocker les activations en FP8 au lieu de BF16.
- Déchargement (offload) : les envoyer en mémoire CPU, voire sur la mémoire d'un autre GPU, et les rapatrier au bon moment.
Les optimiseurs¶
L'étape 4 ci-dessus est plus subtile qu'une simple soustraction.
AdamW, le standard¶
où \(\hat{m}\) est une moyenne mobile du gradient (momentum) et \(\hat{v}\) une moyenne mobile de son carré. La division par \(\sqrt{\hat{v}}\) adapte le pas à chaque paramètre. Le terme \(\lambda\theta\) est le weight decay, qui tire les poids vers zéro (Kimi K3 : \(\lambda = 0{,}1\)).
Coût : deux états (\(m\) et \(v\)) par paramètre. Pour 2,8 T de paramètres, cela représente des téraoctets d'états d'optimiseur — d'où l'importance du partitionnement ZeRO (voir chapitre 11).
Muon, l'optimiseur de la série Kimi¶
Muon traite les paramètres matriciels comme des matrices, pas comme des listes de nombres. À chaque pas, il orthogonalise la matrice de momentum par itérations de Newton–Schulz avant de l'appliquer.
Intuition
Un gradient matriciel est souvent dominé par quelques directions (valeurs singulières élevées) : la mise à jour privilégie ces directions et néglige les autres. L'orthogonalisation égalise les valeurs singulières, donc répartit la mise à jour uniformément dans toutes les directions.
Per-Head Muon, la variante introduite par Kimi K3, applique l'orthogonalisation tête par tête plutôt qu'à la matrice de projection entière. Motif : sur une matrice \(Q\) de 96 têtes traitée en bloc, les têtes à gradient élevé dominent la direction commune, et les têtes plus faibles reçoivent une mise à jour mal normalisée. Voir Per-Head Muon.
Le calendrier de taux d'apprentissage¶
Le taux \(\eta\) n'est pas constant :
- Échauffement (warmup) : montée progressive depuis 0. Kimi K3 utilise un warmup linéaire sur 1 % du budget total.
- Décroissance : puis une descente jusqu'à un minimum.
Deux calendriers dominent :
| Calendrier | Forme | Avantage revendiqué |
|---|---|---|
| Cosinus | Décroissance en \(\cos\) sur tout l'entraînement | Le classique |
| WSD (Warmup-Stable-Decay) | Plateau long, puis chute rapide à la fin | Permet d'arrêter à n'importe quel moment |
Le résultat de Kimi K3, et sa méthodologie
L'équipe rapporte que le cosinus bat systématiquement WSD, contrairement à plusieurs travaux antérieurs. Leur argument méthodologique mérite d'être retenu : les deux calendriers ont des hyperparamètres optimaux très différents (taux de pointe, taille de lot). Les comparer avec des réglages partagés favorise mécaniquement celui auquel ces réglages conviennent. Ils ont donc conduit une recherche de loi d'échelle indépendante pour chaque calendrier, et comparé chacun à son optimum.
C'est un exemple utile de rigueur expérimentale — et un rappel que beaucoup de comparaisons publiées ne la respectent pas.
Les lois d'échelle¶
Une loi d'échelle relie la perte finale aux ressources investies. Sous forme usuelle :
| Symbole | Signification |
|---|---|
| \(N\) | Nombre de paramètres |
| \(D\) | Nombre de jetons d'entraînement |
| \(\mathcal{L}_\infty\) | Perte irréductible (l'entropie intrinsèque du langage) |
| \(A, B, \alpha, \beta\) | Constantes ajustées empiriquement |
Usage pratique : on entraîne une dizaine de petits modèles à budgets variés, on ajuste la courbe, puis on extrapole pour choisir la configuration du gros modèle. C'est ainsi qu'on décide de la taille, de la forme, du taux d'apprentissage et du ratio jetons-par-paramètre (TPP) avant de dépenser des millions en calcul.
L'affirmation « 2,5× d'efficacité d'échelle »¶
C'est le chiffre le plus repris de la communication autour de Kimi K3. Il faut en comprendre le sens exact.
Ce que le chiffre veut dire — et ce qu'il ne veut pas dire
Ce qu'il dit : à perte égale sur des données de validation hors distribution, Kimi K3 nécessite environ 2,5 fois moins de calcul que Kimi K2. Autrement dit, les courbes de loi d'échelle des deux modèles sont décalées d'un facteur 2,5 sur l'axe du calcul.
Ce qu'il ne dit pas :
- Ce n'est pas un gain de 2,5× sur les scores de benchmarks.
- Ce n'est pas attribué à une innovation en particulier : le rapport dit explicitement que KDA, AttnRes, Stable LatentMoE et les recettes de données et d'entraînement y contribuent collectivement. Aucune ablation ne ventile la contribution de chacun.
- Le chiffre repose sur une figure sans axes chiffrés dans le rapport (Fig. 3) et sur un jeu de validation interne non publié. Il n'est pas reproductible par un tiers.
Voir Affirmations à vérifier.
Le curriculum de contexte¶
Entraîner directement sur 1 M de jetons serait ruineux. Kimi K3 procède en quatre étapes croissantes :
| Phase | Longueur de contexte |
|---|---|
| Pré-entraînement, début | 8 K |
| Pré-entraînement, suite | 64 K |
| Cooldown, début | 256 K |
| Cooldown, fin | 1 M |
Intuition
Le calcul long est concentré dans une petite fraction du budget total. Le modèle apprend le langage sur des séquences courtes et bon marché, puis apprend à gérer la distance sur des séquences longues et rares.
Une subtilité importante : la longueur seule ne confère pas la capacité longue portée. Un document de 500 K jetons dont chaque phrase ne dépend que des précédentes n'apprend rien de plus qu'un document court. Kimi K3 synthétise donc des données longues en permutant et concaténant documents et sous-tâches, de sorte que la réponse ne soit accessible qu'en attirant l'attention sur des éléments dispersés dans tout le contexte. Détail en Extension du contexte.
Vérification de compréhension¶
Pourquoi un échauffement (warmup) est-il nécessaire ?
Au début, les paramètres sont aléatoires et les gradients sont énormes et peu informatifs. Un taux d'apprentissage élevé dès le premier pas déplacerait les poids dans des directions arbitraires, parfois de façon irrécupérable (divergence). Le warmup laisse les statistiques de l'optimiseur (\(m\), \(v\)) se stabiliser d'abord.
Si la loi d'échelle prédit une perte, comment sait-on que le modèle sera « bon » ?
On ne le sait pas directement — et c'est une limite réelle. La perte corrèle bien avec les capacités générales, mais mal avec des capacités spécifiques (raisonnement en plusieurs étapes, usage d'outils, respect d'instructions). Ces capacités-là sont surtout façonnées par le post-entraînement, qui n'apparaît dans aucune loi d'échelle.
Chapitre précédent : Mixture-of-Experts · Chapitre suivant : Post-entraînement : SFT, RL, distillation