3 dépôts
Low-level systems including memory managers, serialization, and data pipelines optimized for deep learning.
Distinct from Memory-Efficient Deep Learning: No candidate covers the broad architectural infrastructure (memory, I/O, pipelines) as a unified capability.
Explore 3 awesome GitHub repositories matching artificial intelligence & ml · Deep Learning Infrastructure. Refine with filters or upvote what's useful.
Flashlight est une bibliothèque de machine learning en C++ et un framework de deep learning conçu pour construire et entraîner des réseaux de neurones. Il fonctionne comme une bibliothèque de manipulation de tenseurs et un moteur de différenciation automatique qui suit les opérations pour calculer les gradients via la rétropropagation pour l'optimisation des modèles. Le projet se distingue par son rôle de framework d'entraînement distribué, utilisant la synchronisation de gradient all-reduce et des environnements distribués pour mettre à l'échelle les charges de travail de machine learning sur plusieurs nœuds et appareils. Il dispose d'une interface mémoire agnostique au backend et d'une gestion basée sur RAII pour découpler les opérations sur tenseurs du matériel physique. Le framework couvre une large surface de capacités, incluant la construction d'architectures de réseaux de neurones avec des couches convolutionnelles, linéaires et récurrentes. Il fournit des utilitaires étendus pour l'algèbre tensorielle, la gestion et le batching de jeux de données, la sérialisation binaire versionnée pour les états de modèle, et des outils de surveillance pour suivre les métriques d'entraînement et l'utilisation de la mémoire.
Implements custom memory managers and data loading pipelines optimized for efficient machine learning workloads.
Ce projet est un boilerplate et framework d'entraînement PyTorch conçu pour standardiser le développement d'expériences de deep learning. Il fournit une structure de répertoire et un ensemble de classes de base pour amorcer de nouveaux projets, garantissant un flux de travail cohérent, de la construction du pipeline de données à l'exécution du modèle. Le framework se distingue par un gestionnaire de configuration centralisé pour les hyperparamètres qui prend en charge les surcharges en ligne de commande et une couche d'accélération matérielle pour distribuer les tâches de calcul sur plusieurs unités de traitement graphique (GPU). Il implémente également une couche d'orchestration de classe de base pour automatiser le mélange des jeux de données, la génération de lots (batchs) et la séparation pour validation. Le système couvre un large éventail de capacités d'entraînement, incluant la journalisation automatisée des métriques, la sérialisation d'état basée sur des checkpoints pour reprendre l'entraînement, et le déterminisme des résultats via la synchronisation des graines (seeds). Il inclut en outre des outils pour surveiller la progression de l'entraînement et implémenter l'arrêt précoce (early stopping) basé sur des benchmarks de performance.
Implements a base-class orchestration layer for automating batch generation and dataset splitting.
AI-System est une ressource éducative et une boîte à outils conçue pour apprendre les fondements matériels et logiciels des systèmes d'apprentissage profond. Il fournit un programme et des exercices pratiques pour construire une infrastructure IA, allant du développement de noyaux CUDA bas niveau à la gestion système haut niveau. Le projet inclut une boîte à outils pour développer des opérations sur tenseurs et optimiser les performances GPU via la programmation matérielle directe. Il dispose également d'un framework pour l'entraînement distribué, se concentrant sur la planification des ressources et les protocoles de communication pour gérer des modèles à grande échelle sur plusieurs nœuds de calcul. Le système couvre l'analyse de sécurité de l'IA pour identifier les vulnérabilités de confidentialité et les attaques adverses, ainsi que l'optimisation des performances via la compilation consciente du matériel, la compression pilotée par la sparsité et les graphes de calcul basés sur des tenseurs. Il fournit en outre des outils pour gérer l'infrastructure IA et coordonner les stratégies de déploiement pour des environnements d'inférence haute performance.
Implements tools and strategies for resource scheduling and deployment tailored for high-performance inference environments.