Adam-mini : Utilisez moins de taux d'apprentissage pour en tirer davantageAdam-mini: Use Fewer Learning Rates To Gain More
Nous proposons Adam-mini, un optimiseur qui atteint des performances équivalentes ou supérieures à AdamW tout en réduisant l'empreinte mémoire de 45% à 50%. Adam-mini réduit la mémoire en diminuant les ressources dédiées au taux d'apprentissage dans Adam (c'est-à-dire 1/v). Nous constatons que geq 90% de ces taux d'apprentissage dans v peuvent être supprimés sans conséquence si nous (1) partitionnons soigneusement les paramètres en blocs selon notre principe proposé sur la structure du Hessien ; (2) attribuons un seul mais bon taux d'apprentissage à chaque bloc de paramètres. Nous découvrons en outre que, pour chacun de ces blocs de paramètres, il existe un seul taux d'apprentissage de haute qualité qui peut surpasser Adam, à condition que des ressources suffisantes soient disponibles pour le trouver. Nous proposons ensuite une méthode rentable pour identifier de bons taux d'apprentissage et introduisons Adam-mini. Empiriquement, nous vérifions qu'Adam-mini performe au moins aussi bien qu'AdamW sur divers modèles de langage allant de 125M à 7B pour le pré-entraînement, le fine-tuning supervisé et le RLHF. La réduction de l'empreinte mémoire d'Adam-mini atténue également les surcharges de communication entre les GPU et les CPU, augmentant ainsi le débit. Par exemple, Adam-mini atteint un débit 49,6% plus élevé qu'AdamW lors du pré-entraînement de Llama2-7B sur 2 fois des GPU A800-80GB, ce qui permet d'économiser 33% du temps réel pour le pré-entraînement.