Habr AI→ original

Développeur a Optimisé la Bibliothèque ML lancetnic pour l'Entraînement sur 16 GB de RAM

Le développeur de la bibliothèque ML open-source lancetnic a découvert que lors de l'entraînement sur de grands ensembles de données textuelles, elle consommait une RAM excessive : sur un ordinateur portable avec 16 GB de RAM le modèle ne pouvait pas s'entraîner même sur 25 mille lignes. En enquêtant sur le problème, l'auteur a trouvé plusieurs raisons de la consommation excessive critique de mémoire.

Traité par IA depuis Habr AI ; édité par Hamidun News
Développeur a Optimisé la Bibliothèque ML lancetnic pour l'Entraînement sur 16 GB de RAM
Source : Habr AI. Collage: Hamidun News.
◐ Écouter l'article

Un développeur a optimisé la bibliothèque ML lancetnic pour l'entraînement sur 16 GB de RAM

Le développeur de la bibliothèque ML ouverte lancetnic a découvert que lors de l'entraînement sur de grands ensembles de données textuelles elle surchargeait la RAM de l'ordinateur : sur un ordinateur portable avec 16 GB de RAM le modèle ne pouvait pas s'entraîner même sur 25 mille lignes de texte. En enquêtant sur le problème, l'auteur a trouvé plusieurs raisons du dépassement critique de la mémoire.

Quel était le problème

La bibliothèque lancetnic est conçue pour l'entraînement de modèles sur des données textuelles, mais lors du travail avec de grands ensembles de données le processus d'entraînement se heurtait à la limite physique de la RAM bien avant l'achèvement. Sur un ordinateur portable typique avec 16 GB de RAM une tentative d'entraînement d'un modèle même sur un ensemble de données relativement modeste de 25 mille lignes se terminerait par une surcharge mémoire. L'auteur décrit cela comme un problème auquel il s'est heurtée personnellement en travaillant sur la bibliothèque elle-même, plutôt que comme un scénario théorique.

Ce que l'auteur a trouvé

L'auteur décrit qu'il a commencé à enquêter sur les causes du crash et découvert quelques sources spécifiques du dépassement critique de la mémoire dans le code de la bibliothèque. C'est le type de problème que tout développeur d'outils ML rencontre lors de la construction d'outils destinés à fonctionner sans matériel serveur coûteux : l'entraînement doit tenir dans la mémoire d'un ordinateur portable ordinaire, pas seulement sur des stations de travail GPU spécialisées.

Pour les bibliothèques travaillant avec des données textuelles, une source typique de dépassement de la mémoire est le stockage inefficace des représentations intermédiaires de l'ensemble de données : si tout le corpus et toutes ses transformations vectorielles sont conservées en RAM simultanément au lieu d'un traitement en flux par lots, la consommation de mémoire croît linéairement avec la taille de l'ensemble de données et atteint rapidement la limite physique même sur des quantités relativement petites de texte comme 25 mille lignes.

Pourquoi cela préoccupe plus que juste l'auteur

Les problèmes de mémoire lors de l'entraînement sur des données textuelles sont un goulot d'étranglement typique pour les petites bibliothèques ML open-source écrites par des enthousiastes sans accès à des clusters informatiques industriels. Les causes du dépassement de la mémoire trouvées dans de tels cas sont généralement universelles et apparaissent de manière similaire chez d'autres développeurs résolvant le même problème sur leur propre matériel.

  • Bibliothèque — lancetnic, un outil open-source pour l'entraînement des modèles ML sur texte
  • Matériel de test — un ordinateur portable avec 16 GB de RAM
  • Ensemble de données où le crash s'est produit — 25 mille lignes de texte
  • L'auteur a trouvé plusieurs causes spécifiques du dépassement critique de la mémoire

Pourquoi l'entraînement sur un ordinateur portable a de l'importance

Tous les développeurs qui expérimentent avec des bibliothèques ML n'ont pas accès à un serveur avec des dizaines de gigaoctets de mémoire vidéo ou une instance GPU en nuage. Pour les enthousiastes, les étudiants et les petites équipes un ordinateur portable avec 16 GB de RAM est un équipement de travail standard, et c'est sur cette machine que la bibliothèque doit se comporter de manière prévisible. Lorsque l'entraînement échoue déjà sur un ensemble de données de 25 mille lignes — ce n'est pas un cas exotique marginal, mais un scénario qu'une partie significative des utilisateurs potentiels de lancetnic rencontreront déjà à leur première exécution.

Ce que cela signifie

L'histoire de lancetnic est un exemple caractéristique de la façon dont le développement d'outils ML ouverts procède souvent en identifiant les goulots d'étranglement sur du matériel faible : si une bibliothèque ne fonctionne pas sur l'ordinateur portable d'un développeur ordinaire, sa valeur pratique pour la communauté est considérablement réduite indépendamment de la qualité du modèle lui-même. L'analyse publique d'un tel problème est utile aux autres auteurs d'outils ML open-source similaires — elle aide à établir le traitement des données en flux au lieu de charger l'ensemble du jeu de données en mémoire à l'avance.

ZK
Hamidun News
Actualités IA sans bruit. Sélection éditoriale quotidienne de plus de 50 sources. Produit de Zhemal Khamidun, Head of AI chez Alpina Digital.

Besoin d'une IA qui travaille dans votre entreprise — pas seulement dans votre fil d'actualité?

Je construis de l'IA en production pour les entreprises — CRM sur mesure, outils internes, agents autonomes, automatisation des processus. Vous en êtes propriétaire, adaptée à votre processus, sans coût par utilisateur. Réalisé par Zhemal Khamidun, CPO d'AlpinaGPT (plateforme IA, 6 000+ utilisateurs).

Qu'en pensez-vous ?
Chargement des commentaires…