Anglais
Le nom chinois de ce cours est Artificial Intelligence System , qui explique principalement la conception de systèmes informatiques prenant en charge l'intelligence artificielle. Le nom du cours anglais correspondant est System for AI . Les termes suivants seront utilisés de manière interchangeable dans ce cours : système d'intelligence artificielle , système d'IA et système pour l'IA .
Ce cours est l'un des didacticiels liés à l'intelligence artificielle prévus dans la communauté Microsoft Artificial Intelligence Education and Co-construction. Sous le module de didacticiel de base, le numéro et le nom du cours sont A6-Artificial Intelligence System .
Bienvenue pour visiter le module Tutoriel A-Basic de la communauté Microsoft d'éducation et de co-construction sur l'intelligence artificielle pour accéder à du contenu plus connexe.
Ces dernières années, l'intelligence artificielle, en particulier la technologie d'apprentissage profond, s'est développée rapidement, ce qui est indissociable du progrès continu du matériel informatique et des systèmes logiciels. Dans un avenir prévisible, le développement de la technologie de l’intelligence artificielle reposera toujours sur le modèle d’innovation conjointe combinant systèmes informatiques et intelligence artificielle. Il convient de noter que les systèmes informatiques renforcent désormais l’intelligence artificielle à plus grande échelle et plus complexe, ce qui nécessite non seulement davantage d’innovation système, mais également une réflexion et une méthodologie systématiques. Parallèlement, l’intelligence artificielle soutient également la conception de systèmes complexes.
Nous avons remarqué que la plupart des cours actuels liés à l'intelligence artificielle, en particulier les cours liés au deep learning et au machine learning, se concentrent principalement sur les théories, les algorithmes ou les applications connexes, et que les cours liés aux systèmes sont rares. Nous espérons que le cours sur les systèmes d'intelligence artificielle rendra l'enseignement lié à l'intelligence artificielle plus complet et approfondi, afin de promouvoir conjointement le développement des talents à l'intersection de l'intelligence artificielle et des systèmes.
Ce cours s'adresse principalement aux étudiants seniors du premier cycle et des cycles supérieurs afin d'aider les étudiants à :
Comprendre parfaitement l'architecture du système informatique qui prend en charge l'apprentissage en profondeur et apprendre la conception de systèmes dans le cadre du cycle de vie complet de l'apprentissage en profondeur à travers des problèmes pratiques.
Présente des travaux de recherche de pointe combinant les systèmes et l'intelligence artificielle, y compris l'IA pour les systèmes et les systèmes pour l'IA, pour aider les étudiants de premier cycle et les étudiants des cycles supérieurs à mieux trouver et définir des questions de recherche significatives.
Concevoir des cours expérimentaux dans la perspective d’une recherche systématique. Encouragez les étudiants à mettre en œuvre et à optimiser les modules système en exploitant et en appliquant des cadres, plates-formes et outils courants et les plus récents pour améliorer leur capacité à résoudre des problèmes pratiques plutôt que de simplement comprendre l'utilisation des outils.
Cours prérequis : C/C++/Python, architecture informatique, introduction aux algorithmes
Le cours comprend principalement les trois modules suivants :
La première partie est la connaissance de base de l'intelligence artificielle et un aperçu complet des systèmes d'intelligence artificielle ainsi que la conception et la méthodologie systématiques des systèmes d'apprentissage profond ;
La deuxième partie est un cours avancé, incluant les domaines de recherche les plus pointus à l’intersection des systèmes et de l’intelligence artificielle.
La troisième partie concerne les cours expérimentaux de soutien, comprenant les frameworks, plates-formes et outils les plus courants, ainsi qu'une série de projets expérimentaux.
Le contenu de la première partie se concentrera sur les connaissances de base, tandis que le contenu des deux autres parties sera ajusté de manière dynamique aux progrès technologiques du monde universitaire et de l'industrie. Le contenu des deux dernières parties sera organisé sous forme modulaire pour faciliter l'ajustement ou la combinaison avec d'autres cours CS (comme les principes de compilation, etc.) sous forme de notes de cours avancées ou de projets de stage.
La conception de ce cours s'appuiera également sur les résultats de recherche et l'expérience de Microsoft Research Asia à l'intersection de l'intelligence artificielle et des systèmes, y compris certaines plates-formes et outils développés par Microsoft et l'institut de recherche. Le cours encourage également d'autres écoles et enseignants à ajouter et à ajuster des sujets plus avancés ou d'autres expériences en fonction de leurs propres besoins.
cours de base
Numéro de cours | Nom du document | Remarque |
1 | Introduction au cours | Aperçu du cours et principes fondamentaux du système/IA |
2 | Présentation du système d'intelligence artificielle | Historique du développement des systèmes d'intelligence artificielle, bases des réseaux de neurones, bases des systèmes d'intelligence artificielle |
3 | Bases du cadre informatique des réseaux neuronaux profonds | Rétropropagation et dérivation automatique, tenseurs, graphes acycliques dirigés, papiers et systèmes graphiques d'exécution : PyTorch, TensorFlow |
4 | Opérations matricielles et architecture informatique | Opérations matricielles, CPU/SIMD, GPGPU, ASIC/TPU Papiers et systèmes : Blas, TPU |
5 | Algorithme de formation distribué | Parallélisme des données, parallélisme des modèles, SGD distribué Papiers et systèmes : PipeDream |
6 | Système de formation distribué | MPI, serveurs de paramètres, all-reduce, RDMA Papiers et systèmes : Horovod |
7 | Système de planification de clusters informatiques hétérogènes et de gestion de ressources | Exécution de tâches DNN sur un cluster : conteneurs, allocation de ressources, planification de documents et systèmes : Kubeflow, OpenPAI, Gandiva |
8 | Système de dérivation d'apprentissage profond | Efficacité, latence, débit, documents et systèmes de déploiement : TensorRT, TensorFlowLite, ONNX |
Cours avancés
Numéro de cours | Nom du document | Remarque |
9 | Compilation et optimisation de graphiques informatiques | Documents et systèmes IR, correspondance de motifs de sous-graphes, multiplication matricielle et optimisation de la mémoire : XLA, MLIR, TVM, NNFusion |
10 | Optimisation de la compression et de la sparsification des réseaux de neurones | Compression du modèle, sparsification, élagage |
11 | Système d'apprentissage automatique automatique | Réglage des hyperparamètres, recherche de structure de réseau neuronal (NAS) Papiers et systèmes : Hyperband, SMAC, ENAX, AutoKeras, NNI |
12 | système d'apprentissage par renforcement | Théorie RL, articles et systèmes du système RL : AC3, RLlib, AlphaZero |
13 | Sécurité et confidentialité | Documents et systèmes d'apprentissage fédéré, de sécurité, de confidentialité : DeepFake |
14 | Utiliser l’intelligence artificielle pour optimiser les systèmes informatiques | L'intelligence artificielle est appliquée aux problèmes de système traditionnels, l'intelligence artificielle est appliquée aux documents et systèmes d'algorithmes de système : systèmes multimédias en streaming, indexation de bases de données, réglage des paramètres du système, conception de puces, planification prédictive des ressources. |
Expérience de base
Numéro d'expérience | Nom de l'expérience | Remarque |
Expérience 1 | Exemples de démarrage avec des frameworks et des outils | |
Expérience 2 | Personnaliser une nouvelle opération tensorielle | |
Expérience 3 | Implémentation et optimisation de CUDA | |
Expérience 4 | Implémentation ou optimisation d’AllReduce | |
Expérience 5 | Configurer le conteneur pour la formation cloud ou la préparation d'inférences | |
Expériences avancées
Expérience 6 | Apprendre à utiliser le système de gestion des plannings | |
Expérience 7 | Exercice de tâches de formation distribuées | |
Expérience 8 | Exercices sur le système d'apprentissage automatique automatique | |
Expérience 9 | Exercices du système d’apprentissage par renforcement | |
Le manuel « Artificial Intelligence System » est l'un des manuels liés à l'intelligence artificielle prévus dans la communauté Microsoft Artificial Intelligence Education and Co-construction. Nous avons remarqué que la plupart des manuels actuels liés à l'intelligence artificielle, en particulier les cours liés à l'apprentissage profond et à l'apprentissage automatique, se concentrent principalement sur les théories, les algorithmes ou les applications connexes, et que les manuels liés aux systèmes sont rares. Nous espérons que les manuels sur les systèmes d'intelligence artificielle pourront rendre l'enseignement des systèmes d'intelligence artificielle plus systématique et universel, afin de promouvoir conjointement le développement des talents à l'intersection de l'intelligence artificielle et des systèmes.
La version papier du manuel « Deep Learning System Design : Theory and Practice » a été publiée. Bienvenue pour le lire !
<à déterminer>
Ce projet accueille les contributions et les suggestions. La plupart des contributions nécessitent que vous acceptiez un contrat de licence de contributeur (CLA) déclarant que vous avez le droit de nous accorder et que vous nous accordez effectivement le droit d'utiliser votre contribution. Pour plus de détails, visitez https://. cla.opensource.microsoft.com.
Lorsque vous soumettez une pull request, un bot CLA déterminera automatiquement si vous devez fournir un CLA et décorera le PR de manière appropriée (par exemple, vérification du statut, commentaire). Il vous suffit de suivre les instructions fournies par le bot. une fois sur tous les dépôts en utilisant notre CLA.
Ce projet a adopté le code de conduite Microsoft Open Source. Pour plus d'informations, consultez la FAQ sur le code de conduite ou contactez [email protected] pour toute question ou commentaire supplémentaire.
Microsoft et tous les contributeurs vous accordent une licence sur la documentation Microsoft et les autres contenus de ce référentiel sous la licence publique internationale Creative Commons Attribution 4.0, consultez le fichier LICENSE et vous accordent une licence sur tout code du référentiel sous la licence MIT, voir le fichier LICENSE-CODE.
Microsoft, Windows, Microsoft Azure et/ou d'autres produits et services Microsoft référencés dans la documentation peuvent être des marques commerciales ou des marques déposées de Microsoft aux États-Unis et/ou dans d'autres pays. Les licences de ce projet ne vous accordent aucun droit d'utilisation. Les noms, logos ou marques Microsoft sont disponibles sur https://go.microsoft.com/fwlink/?LinkID=254653.
Les informations de confidentialité peuvent être trouvées sur https://privacy.microsoft.com/en-us/
Microsoft et tous les contributeurs se réservent tous les autres droits, que ce soit en vertu de leurs droits d'auteur, brevets ou marques respectifs, que ce soit par implication, préclusion ou autre.