Traitement de données volumineuses(Big Data) avec Python à AIMS Sénégal

Introduction
Dans le cadre du pilier de développement des capacités du projet de traitement des données volumineuses pour le  développement, AIMS-NEI a conçu un programme de formation basé sur les traitement des données volumineuses au service du développement (BD4D-SCP) enseigné sur l’ensemble du réseau AIMS-NEI, d’abord au Rwanda, maintenant au Sénégal et bientôt au Cameroun.

Le cours s’adresse aux personnes passionnées de la science des données en général et plus particulièrement dans l’analyse et le traitement des données volumineuses, ayant au moins quatre années d’études de premier cycle ou au moins deux à trois ans d’expériences en tant que professionnel de la statistique ou tout autre sujet lié à la science des données.

Un certain nombre de formations de courtes durées sont en cours pour atteindre nos objectifs du projet BD4D, d’augmenter le nombre d’utilisateurs des données scientifiques  en Afrique et en y associant  une plateforme permettant aux praticiens d’interagir.

Toujours dans le cadre du développement des capacités, AIMS-NEI organisera le premier atelier de formation destiné aux cadres dirigeants, intitulé : Exploiter le pouvoir du Big Data (LPBD).
L’objectif de cet atelier est de présenter aux cadres dirigeants l’ère du Big Data, démontrant à quel point ce phénomène perturbe les entreprises traditionnelles et ouvre la porte à de nouveaux produits et services.

Aperçu du cours
Les jeux de données deviennent de plus en plus volumineux au fur et à mesure que la population mondiale augmente et que les objets deviennent de plus en plus connectés. Les logiciels et techniques de traitement de données traditionnels ne peuvent pas traiter ces ensembles de données à grande échelle. Ainsi, nous avons besoin de cadres et d’outils spécialisés tels qu’Apache Spark pour gérer de grands ensembles de données. Ce cours enseigne les bases essentielles du traitement de jeux de données à grande échelle à l’aide de Python.

En outre, le cours enseigne également à effectuer des tâches informatiques courantes telles que la gestion de données et la construction de modèles d’apprentissage automatique avec Python. Ce cours adopte une approche pratique de doter aux participants des outils les plus essentiels dans les meilleurs délais.

Ce cours met l’accent sur l’apprentissage lié à la pratique, en tant que tel il comprend de nombreux exercices permettant aux participants d’avoir suffisamment de temps de s’exercer.

Approche
Ce cours adopte une approche pratique de doter  les participants des outils les plus essentiels dans les meilleurs délais. Les cours débutent par les bases fondamentales de Python et se concentrent principalement sur les structures de données, puis passent rapidement dans les bibliothèques principales pour la science des données en Python.

Ensuite, le cours passe au traitement de données volumineuses en fournissant d’abord de brefs concepts théoriques sur le sujet, puis enseigne Apache Spark, un outil de pointe pour le traitement de grands ensembles de données. Par la suite, il propose des exposés d’initiation à l’apprentissage automatique avant de passer à l’explication détaillée de la construction de ces algorithmes en Python. Ce cours favorise l’apprentissage par la méthode pratique.

Résumé des objectifs du cours

1. Comprendre les concepts avancés du langage Python: structures de données, fonctions, classes, etc.
2. Effectuer des tâches informatisées sur les données en utilisant le langage Python: ingestion de données, traitement, visualisation, récupération sur le Web, etc.
3. Traiter un ensemble de données à grande échelle (20 Go +) sur un ordinateur personnel à l’aide d’Apache Spark et utiliser des plateformes de « Cloud Computing ».
4. Familiariser avec les bases théoriques des algorithmes d’apprentissage automatique courant.
5. Être capable de construire et d’évaluer des modèles d’apprentissage machine en utilisant la bibliothèque « scikit-learn».

Programme du cours

Jour 1. Concepts avancés en Python : ce premier jour, le cours se concentrera sur le langage de programmation Python pour construire des bases solides pour le reste des supports de cours. Les participants seront initiés aux techniques pratiques de niveau intermédiaire vers un niveau avancé, telles que l’écriture de fonctions, de classes, la gestion des erreurs, le packaging de code Python, etc.

Jour 2. Python pour la science des données: au cours de la deuxième journée, l’accent est mis sur l’exécution des tâches concernant la science des données courantes à l’aide de Python. Nous allons expliquer comment utiliser les données, traiter, analyser, visualiser, « Web Scraping » et plus encore en utilisant Python, tout en introduisant des packages essentiels (Pandas, Géopandas, Numpy, Matplotlib, etc.) pour effectuer ces tâches.

Jour 3. Traitement des données volumineuses: le troisième jour, le cours porte sur la gestion des grands ensembles de données en utilisant Python.

Les sujets suivants seront abordés : introduction au Big Data, multitraitement en Python, Apache Spark, utilisation des plateformes communes de Cloud, etc.

Jour 4. Machine Learning (ML) en Python: le quatrième jour, Le cours débutera par un exposé introductif sur l’apprentissage de la machine. Le reste de la journée sera consacré à la réalisation de diverses tâches de ML (par exemple, la préparation de données, la création de modèles, l’évaluation et l’interprétation) à l’aide du package scikit-learn en Python.

Jour 5. Rassembler tous les éléments: au cours de la dernière journée, nous nous concentrerons sur l’utilisation des compétences acquises durant ce cours pour résoudre des problèmes concrets liés à la science des données en examinant des études de cas.

Les études de cas potentielles à couvrir incluent : comment traiter les images satellites de nuit (géo-spatiales), comment traiter des enregistrements d’appels volumineux depuis des téléphones portables (données mobiles) et comment créer des modèles ML pour imputer les données de capteur manquantes (données de capteur).

Conditions préalables

  • Programmation: possibilité d’écrire un programme simple en Python (niveau Python de base)
  • Maths et statistiques: une formation en statistique, en science des données ou en sciences quantitatives.

Informations pratiques
Cette formation aura lieu du 1er au 5 juillet 2019 à Dakar, au Sénégal et elle se passera en Anglais. La participation au cours est limitée à 40 personnes et est gratuite. Les déjeuners et les pause-café sont disponibles sur place au moment de l’inscription.

AIMS-NEI ne fournit aucune aide financière aux candidats retenus pour suivre cette courte formation et  encourage chaque candidat retenu à faire ses propres provisions pour couvrir tous les frais liés à sa participation à ce programme, y compris son transport.

Profil de l’instructeur
Dr. Dunstan Matekenya est un scientifique expérimenté possédant plus de 10 ans d’expérience dans les domaines des statistiques traditionnelles et des méthodes modernes d’apprentissage automatique. Il travaille actuellement en tant que Data Scientist au siège du Groupe de la Banque Mondiale (GBM) à Washington DC. Avant de rejoindre le GBM, Dr. Dunstan Matekenya a terminé son doctorat à l’Université de Tokyo en 2016. Son doctorat en recherche est axé sur l’utilisation des méthodes d’apprentissage automatique permettant d’explorer les informations tirées des données de téléphones mobiles.

Avant de réorienter sa carrière vers la science des données, Dr. Dunstan Matekenya avait auparavant travaillé comme statisticien au Bureau National de la Statistique au Malawi de 2007 à 2017, où il a activement contribué à des projets phares en 2008, tels que le Recensement de la population et du logement en tant que leader de l’unité GIS. Sa passion est de contribuer à la modernisation des statistiques officielles dans les pays en développement grâce à l’utilisation de sources de données alternatives telles que les données de la téléphonie mobile, ainsi qu’à l’amélioration des capacités en matière de la science des données.

Tous les candidats intéressés à postuler pour cette courte formation intensive du traitement de données avec Python doivent utiliser le lien en ligne  pour remplir et soumettre leur candidature avec tous les documents justificatifs à la date limite indiquée sur le site de AIMS Sénégal.

Nous informerons les candidats présélectionnés de fournir des informations supplémentaires permettant de finaliser leur candidature. Les candidats présélectionnés seront évalués pour de rassurer de leurs compétences en Python

Après une semaine de la date limite, nous informerons les candidats retenus.

Date limite de candidature: le 7 juin 2019 – 23h59 (TU). Toute demande de renseignements concernant cette courte formation doit  être envoyée à: aii@nexteinstein.org.