EITC/AI/DLPP Deep Learning avec Python et PyTorch est le programme européen de certification informatique sur les principes fondamentaux de la programmation du deep learning en Python avec la bibliothèque d'apprentissage automatique PyTorch.
Le programme du Deep Learning EITC/AI/DLPP avec Python et PyTorch se concentre sur les compétences pratiques en programmation Python d'apprentissage en profondeur avec la bibliothèque PyTorch organisée dans la structure suivante, englobant un contenu didactique vidéo complet comme référence pour cette certification EITC.
L'apprentissage profond (également connu sous le nom d'apprentissage structuré profond) fait partie d'une famille plus large de méthodes d'apprentissage automatique basées sur des réseaux de neurones artificiels avec apprentissage par représentation. L'apprentissage peut être supervisé, semi-supervisé ou non supervisé. Des architectures d'apprentissage en profondeur telles que les réseaux de neurones profonds, les réseaux de croyances profondes, les réseaux de neurones récurrents et les réseaux de neurones convolutifs ont été appliquées à des domaines tels que la vision par ordinateur, la vision par ordinateur, la reconnaissance vocale, le traitement du langage naturel, la reconnaissance audio, le filtrage des réseaux sociaux, la traduction automatique, la bioinformatique , la conception de médicaments, l'analyse d'images médicales, l'inspection des matériaux et les programmes de jeux de société, où ils ont produit des résultats comparables et, dans certains cas, surpassant les performances des experts humains.
Python est un langage de programmation interprété, de haut niveau et polyvalent. La philosophie de conception de Python met l'accent sur la lisibilité du code avec son utilisation notable d'espaces blancs importants. Ses constructions de langage et son approche orientée objet visent à aider les programmeurs à écrire un code clair et logique pour les projets à petite et grande échelle. Python est souvent décrit comme un langage «batteries incluses» en raison de sa bibliothèque standard complète. Python est couramment utilisé dans les projets d'intelligence artificielle et les projets d'apprentissage automatique à l'aide de bibliothèques telles que TensorFlow, Keras, Pytorch et Scikit-learn.
Python est typé dynamiquement (exécutant au moment de l'exécution de nombreux comportements de programmation courants que les langages de programmation statiques exécutent lors de la compilation) et récupéré (avec gestion automatique de la mémoire). Il prend en charge plusieurs paradigmes de programmation, y compris la programmation structurée (en particulier, procédurale), orientée objet et fonctionnelle. Il a été créé à la fin des années 1980 et publié pour la première fois en 1991 par Guido van Rossum en tant que successeur du langage de programmation ABC. Python 2.0, sorti en 2000, a introduit de nouvelles fonctionnalités, telles que la compréhension de liste et un système de récupération de place avec comptage de références, et a été interrompu avec la version 2.7 en 2020. Python 3.0, publié en 2008, était une révision majeure du langage qui est pas complètement rétrocompatible et une grande partie du code Python 2 ne fonctionne pas sans modification sur Python 3. Avec la fin de vie de Python 2 (et pip ayant abandonné le support en 2021), seuls Python 3.6.x et les versions ultérieures sont pris en charge, avec les anciennes versions toujours prenant en charge par exemple Windows 7 (et les anciens installateurs non limités à Windows 64 bits).
Les interpréteurs Python sont pris en charge pour les systèmes d'exploitation traditionnels et disponibles pour quelques autres (et dans le passé pris en charge beaucoup plus). Une communauté mondiale de programmeurs développe et maintient CPython, une implémentation de référence gratuite et open source. Une organisation à but non lucratif, la Python Software Foundation, gère et dirige les ressources pour le développement Python et CPython.
En janvier 2021, Python se classe troisième dans l'index TIOBE des langages de programmation les plus populaires, derrière C et Java, après avoir remporté la deuxième place et leur prix pour le gain de popularité le plus élevé pour 2020. Il a été sélectionné Langage de programmation de l'année en 2007, 2010 et 2018.
Une étude empirique a révélé que les langages de script, tels que Python, sont plus productifs que les langages conventionnels, tels que C et Java, pour les problèmes de programmation impliquant la manipulation de chaînes et la recherche dans un dictionnaire, et a déterminé que la consommation de mémoire était souvent «meilleure que Java et non bien pire que C ou C ++ ». Les grandes organisations qui utilisent Python comprennent notamment Wikipedia, Google, Yahoo !, CERN, NASA, Facebook, Amazon, Instagram.
Au-delà de ses applications d'intelligence artificielle, Python, en tant que langage de script avec une architecture modulaire, une syntaxe simple et des outils de traitement de texte riches, est souvent utilisé pour le traitement du langage naturel.
PyTorch est une bibliothèque d'apprentissage automatique open source basée sur la bibliothèque Torch, utilisée pour des applications telles que la vision par ordinateur et le traitement du langage naturel, principalement développée par le laboratoire de recherche AI de Facebook (FAIR). Il s'agit d'un logiciel gratuit et open-source publié sous la licence BSD modifiée. Bien que l'interface Python soit plus raffinée et soit l'objectif principal du développement, PyTorch dispose également d'une interface C ++. Un certain nombre de logiciels d'apprentissage en profondeur sont construits sur PyTorch, notamment Tesla Autopilot, Uber's Pyro, HuggingFace's Transformers, PyTorch Lightning et Catalyst.
- Tensor computing (comme NumPy) avec une forte accélération via des unités de traitement graphique (GPU)
- Réseaux de neurones profonds construits sur un système de différenciation automatique (informatique) basé sur bande
Facebook exploite à la fois PyTorch et l'architecture convolutionnelle pour l'intégration rapide des fonctionnalités (Caffe2), mais les modèles définis par les deux frameworks étaient incompatibles entre eux. Le projet Open Neural Network Exchange (ONNX) a été créé par Facebook et Microsoft en septembre 2017 pour convertir des modèles entre frameworks. Caffe2 a été fusionné avec PyTorch fin mars 2018.
PyTorch définit une classe appelée Tensor (torch.Tensor) pour stocker et opérer sur des tableaux rectangulaires multidimensionnels homogènes de nombres. Les Tensors PyTorch sont similaires aux tableaux NumPy, mais peuvent également être utilisés sur un GPU Nvidia compatible CUDA. PyTorch prend en charge divers sous-types de tenseurs.
Il existe peu de modules importants pour Pytorch. Ceux-ci inclus:
- Module Autograd: PyTorch utilise une méthode appelée différenciation automatique. Un enregistreur enregistre les opérations effectuées, puis il les rejoue en arrière pour calculer les dégradés. Cette méthode est particulièrement puissante lors de la construction de réseaux de neurones pour gagner du temps sur une époque en calculant la différenciation des paramètres au passage aller.
- Module Optim: torch.optim est un module qui implémente divers algorithmes d'optimisation utilisés pour la construction de réseaux de neurones. La plupart des méthodes couramment utilisées sont déjà prises en charge, il n'est donc pas nécessaire de les créer à partir de zéro.
- module nn: l'autogradation PyTorch facilite la définition de graphes de calcul et la prise de gradients, mais l'autogradation brute peut être un peu trop bas pour définir des réseaux de neurones complexes. C'est là que le module nn peut vous aider.
Pour vous familiariser en détail avec le programme de certification, vous pouvez développer et analyser le tableau ci-dessous.
Le programme d'apprentissage en profondeur EITC/AI/DLPP avec Python et PyTorch fait référence à du matériel didactique en libre accès sous forme de vidéo par Harrison Kinsley. Le processus d'apprentissage est divisé en une structure étape par étape (programmes -> leçons -> sujets) couvrant les parties pertinentes du programme. Des conseils illimités avec des experts du domaine sont également fournis.
Pour plus de détails sur la procédure de certification, consultez Comment ça fonctionne.
Téléchargez le matériel préparatoire complet d'auto-apprentissage hors ligne pour le programme EITC/AI/DLPP Deep Learning avec Python et PyTorch dans un fichier PDF.
Documents préparatoires EITC/AI/DLPP – version standard
Documents préparatoires EITC/AI/DLPP – version étendue avec questions de révision