I/ Introduction à Python
Fondamentaux de Python
- Découverte des différentes variables, listes et Tuples
- Présentation des divers opérateurs et structures de contrôle
- Initiation au concept de boucle et ses différents types
- Introduction aux fonctions et leurs documentations
- Instanciation de classes et utilisation de modules
Numpy
- Création et manipulation d’un NumPy Array
- Présentation des opérations matricielles et manipulation d’un NumPy Array
- Création d’un indicateur statistique et opérations sur le NumPy Array
Pandas
- Introduction à la bibliothèque Pandas
- Chargement et première exploration d’un jeu de données
- Introduction au Data Cleaning
- Introduction au Data Processing
Data quality (Optionnel)
- Présentation des principes essentiels à la Data Quality
- Traitement des variables numériques et textuelles
- Introduction au nettoyage de données
- Initiation à la gestion des valeurs manquantes
II/ Data Visualisation
Matplotlib
- Présentation de différents types de graphes
- Introduction à la personnalisation de graphique
Seaborn
- Maîtrise de l’analyse de distribution
- Mise en place de l’analyse statistique
- Initiation à l’analyse multivariée
Bokeh (Optionnel)
- Formation à tous types de graphiques interactifs et intégrables sur page Web
- Visualisation de données géographiques
- Découverte des Widgets et création
III/ Machine Learning
A. Machine Learning Supervisé
Classification simple de modèles
- Introduction à SciKit Learn
- Présentation de la Classification SVM
- Application de la méthode K-Nearest neighbors
Classification avancée de modèles
- Sélection de modèles
- Classification semi-supervisée
B. Machine Learning Non Supervisé
Méthodes de Clustering
- Présentation des algorithmes K-moyenne
- Découvertes des algorithmes de mean shift
Méthdode de Régression
- Introduction à la régression linéaire simple et multiple
- Introduction à la régression linéaire régularisé
Méthodes de réduction de dimension
- Feature selection process
- Initiation aux analyses en composantes principales
- Application de l’approche Manifold Learning
IV/ Machine Learning Avancé
Séries temporelles avec Statsmodels
- Découverte des modèles de base
- Découverte des modèles ARIMA
Text Mining
- Introduction aux expressions régulières
- Gestion de données textuelles
- Création de Worldclouds
Machine Learning et théorie des graphes avec Network X o Introduction à la théorie des graphes
- Application des algorithmes fondamentaux : Krustal et Dijkstra o Détection de communautés
- Application de l’algorithme PageRank au classement de page Web
V Big Data/Database
Introduction au Data Engineering et Big Data
- Introduction aux 3V du Big Data (Volume, variété, vélocité) o Présentation des bases de données et Architectures
- Mise en production de données
Data Processing et Machine Learning sur des grandes bases de données
- Introduction à PySpark
- Découverte des différentes fonctions de PySpark
▪ Le Data Processing
▪ Les Data Frames
▪ La Régression avec PySpark
▪ Le ML pipelines
▪ Le Model Turning
VI/ Deep Learning
Deep Learning avec le framework Keras
- Découverte des concepts fondamentaux :
▪ Dense Neural Networks
▪ Convolutional Neural Networks
▪ Architecture LeNet
▪ Transfer Learning
Introduction à Tensorflow 2.0
- Mise en relation de Tensorlfow et Keras
- Application du Word Embedding avec Word2vec
- Présentation du Recurent Neural Network
- Présentation du Generative adversial Network
VII/ Système complexe et IA
Introduction au reinforcement learning
- Définition des éléments de l’apprentissage par renforcement
- Mise au point sur les fondamentaux mathématiques pour le reinforcement learning
- Présentation de la principale famille d’algorithmes de reinforcement learning : Monte Carlo o Application des algorithmes d’apprentissage par différence temporelle : SARSA
- Application des algorithmes d’apprentissage par différence temporelle : Q-Learning
- Comparaison entre Temporal Difference Learning et Monte Carlo
Deep Reinforcement Learning
- Introduction au Deep Reinforcement Learning
- Compréhension des fondements des méthodes basées sur la valeur
- Compréhension des problèmes de variances élevés, des risques de surestimations et application des méthodes de résolution
- Introduction à la méthode de Policy Gradient
- Compréhension des principes fondamentaux de la structure Acteur-Critique utilisée dans l’apprentissage en Deep Reinforcement Learning
- Application à des Business Cases
VIII/ Programmation Avancée
Webscrapping
- Introduction au langage web (HTML, CSS)
- Extraction de contenu Web avec BeautifulSoup
- Application du scrapping sur Google
Système Linux & Script Bash
- Présentation des Systèmes Linux
- Prise en main et utilisation d’un terminal
- Mise en place de scripts Bash
Git
- Introduction au système de gestion de version Git
- Initialisation d’un dépôt Git
- Présentation et approfondissement des concepts git :
▪ Branches
▪ Tag
▪ Merge
Github
- Découverte de la plateforme Github pour le travail collaboratif sur Git
- Présentation des fonctionnalités majeures de GitHub :
▪ Fork
▪ Pull Request
▪ Issues
- Partager ses modifications avec pull et push
- Participation à l’amélioration de projet public (open source)
- Présentation des principaux workflows git
IX DataOps – Isolation
APIs
- Introduction aux APIs et découverte des architectures micro-services
- Présentation des différentes méthodes HTTP et de leurs fonctions
- Utilisation des librairies FastAPI et Flask pour développer des API RESTful
- Documentation d’une API avec la spécification OpenAPI
- Gestion des erreurs et des performances d’une API
Docker
- Présentation de la conteneurisation et de son utilité par rapport à la virtualisation o Initiation au fonctionnement de Docker
- Manipulation des images et des conteneurs
- Communication avec les conteneurs
- Persistance des données grâce aux volumes
- Création d’une image Docker via un Dockerfile
- Partage des images sur le Dockerhub
- Utilisation de dockercompose
X/ DataOps – Orchestration
Kubernetes
- Déployer et gérer des conteneurs
APIs
- Découverte des concepts d’Airflow :
▪ Présentation des principes de l’orchestration et utilité
▪ Graphe orienté acycliques ou DAG (Directed Acyclic Graphs)
▪ Opérateurs
- Gestion de tâches par le biais d’Operators spécifiques
- Monitoring des DAGs via l’interface graphique d’Airflow
XI/ ModelOps
MLflow
- MLflow tracking
▪ Chargement du projet
▪ Importation des données à tracker
▪ Automatisation et UI
- Mlflow projects
▪ Empaqueter le code qui entraîne le modèle dans un format de modèle réutilisable et reproductible
▪ Git et collaboration
- MLflow models
▪ Déployer le modèle localement
▪ Déployer le modèle dans un serveur http simple
- MLflow Registery
▪ Création du répertoire
▪ Enregistrement du meilleur modèle
▪ Archivage et annotation du modèle
- Intégration
▪ Système de stockage
▪ API, Spark