Programme des enseignements
Présentation générale
La formation d’ingénieur de l’ENSAI inclut 6 filières de spécialisation. Toutes ces filières forment aux métiers de la Data Science, avec une maîtrise des outils permettant l’extraction, l’analyse et la fouille de données et une capacité à choisir les modalités de traitements des données massives et des techniques d’apprentissage automatique (machine learning). Selon les spécialisations, ces compétences sont spécifiques à un domaine ou transversales. Ces compétences sont renforcées pour la filière Statistique et Ingénierie des Données (SID), qui s’est concentré sur ces thématiques depuis plusieurs années. L’ensemble des filières continue à former aux compétences transversales (soft skills) et à la valorisation des travaux menés dans un contexte professionnel et international. Lors des cours et du projet méthodologique en anglais, les élèves travaillent toutes les compétences linguistiques et communicationnelles et approfondissent leurs connaissances liées au monde de l’entreprise et de la recherche. La séquence de Tronc Commun mêlant enseignements scientifiques, projets et anglais conclut la formation à l’autonomie et la capacité à mettre en œuvre des analyses de données en situation complexe. Un stage de fin d’études est à réaliser à l’issue de la scolarité, qui permet de mettre en œuvre dans un cadre professionnel une démarche scientifique autour d’une problématique en lien avec les enseignements de la filière.
Les enseignements spécifiques de la filière se divisent en deux, les enseignements informatiques et les enseignements liés à l’ingénierie des données.
Le développement de grandes applications informatiques nécessite d’utiliser des méthodes d’aide à la conception. Elles peuvent être purement techniques, comme la maîtrise de patron de conception ou l’architecture multi-tiers ou organisationnel comme les méthodes de gestions de projet, aussi bien pour la spécification d’un besoin que le suivi. L’unité s’enseignement (UE) développement d’application apportera aux élèves ces compétences essentielles à de futurs chefs de projet informatique. L’UE de système et réseaux quant à elle se concentrera sur la conception, la mise en place et l’administration des systèmes complexes pour traiter des données.
En parallèle, le rôle du statisticien – informaticien est d’analyser des données à l’aide de méthodes statistiques et de l’outil informatique. Nous pouvons définir 4 phases dans le traitement informatique des données : la récupération, le stockage, l’analyse et la visualisation des résultats. L’UE de Big Data va présenter les 3 dernières phases. Ils apprendront à manipuler de très grands volumes de données, à créer des entrepôts de données et à effectuer une analyse multi-dimensionnelle de ces données. Les cours de machine learning leur permettront d’extraire de la connaissance à partir de ces données. Ils découvriront comment inventer de nouvelles technologies de stockage et de gestion des données, dans le cadre du Big Data. Ils aborderont également les problèmes de sécurité associés à la diffusion de données.
Plusieurs projets sont réalisés au cours de l'année afin de mettre en pratique les divers enseignements dispensés au cours de cette année. Ils sont réalisés individuellement ou en groupe, permettant aux étudiants de vivre la réalité d’un développement d’application. Les projets sont de nature très diverse et peuvent être réalisés en partenariat avec des industriels ou des chercheurs. Ils ont tous pour but de mettre les étudiants en situation de statisticien ayant de bonnes compétences en informatique, ils sont aussi l’occasion de mettre en œuvre les compétences générales suivantes :
- Connaître les fondements des architectures distribuées, des réseaux aux systèmes répartis, des architectures logicielles big Data ;
- Avoir une ouverture sur les nouvelles technologies et savoir veiller à leurs évolutions ;
- Maîtriser les outils permettant l'extraction, l'intégration, l'analyse et la fouille de données (datamining);
- Maîtriser les outils permettant de manipuler de grands volumes de données et de créer des entrepôts de données ; • Capacité à choisir et mettre en place le meilleur modèle de machine learning pour réaliser le traitement souhaité ;
- Capacité à concevoir et implémenter des systèmes de traitement de l’information ;
- Capacité à choisir, mettre en place et administrer la technologie de stockage la plus adaptée à un besoin précis (bases de données relationnelles, multidimensionnelles ou non relationnelles) ;
- Capacité à mobiliser les techniques de sécurisation des données à tous les niveaux, stockage, échange et diffusion ;
- Capacité à concevoir et mettre en œuvre un projet de développement d’applications informatiques (connaissances de base en architecture des systèmes, en réseaux, en sécurité, en méthodes de conduite de projet, méthodes de développement d’application).