Description de l'offre
L’équipe est impliquée dans le projet Deepgreen, visant à accélérer l’émergence d’une plateforme open-source nationale pour permettre l’exécution des algorithmes d’intelligence artificielle (apprentissage et inférence) sur des nœuds de calcul aux ressources contraintes (STM32, NXP iMX8). Dans le cadre de ce projet, notre équipe a pour objectif de mettre à disposition de la plateforme des algorithmes innovants en intelligence artificielle. Les contributions génériques se feront dans la plateforme AIDGE (issue de deepgreen) qui a vocation à être diffusée en open-source. Dans ce cadre vous travaillerez à l’interface entre les contributeurs du laboratoire travaillant sur des algorithmes d’IA innovants, et les contributeurs du laboratoire ayant développé notre carte électronique pour l’instrumentation, basée sur un cœur processeur NXP IMX8 plus, équipé d’un Neural Processing Unit (NPU), mais intégrant également un FPGA dans une carte auxiliaire. Votre mission spécifique sera de prendre en main certains algorithmes d’IA pour en réaliser les adaptations nécessaires à l’embarcabilité. Vos missions consisteront à :
- Prise en main des algorithmes d’IA identifiés avec les collègues afin d’en comprendre les mécanismes.
- Adapter ces algorithmes, par des mécanismes de simplification (quantification, calcul approché, …) pour en réduire l’empreinte mémoire et computationnelle.
- Contribuer si besoin aux exports de fonctions nécessaires aux opérateurs utilisés dans les algorithmes, pour les cibles visées (NPU de NXP IMX8, STM32, FPGA).
- Réaliser les benchmarks sur des jeux de données libres ou internes, afin d’évaluer les performances des implémentations.
Ces travaux se feront dans le cadre du projet Deepgreen, qui implique plusieurs membres du laboratoire. Ce projet bénéficie d’une très bonne visibilité interne et externe (projet Eclipse en cours de lancement). Une partie des développements se fera en open-source.
Profil du candidat
Master 2 ou école d’ingénieur (bac+8 sera apprécié) en mathématiques appliquées, machine learning, systèmes embarqués ou informatique
· Excellentes compétences en Python et connaissance d'un langage de programmation de bas niveau, par exemple, C ou C++.
· Connaissances étendues dans le domaine de l'apprentissage automatique et solides connaissances des réseaux de neurones et des frameworks associés (pytorch, tensorflow, keras).
· Des connaissances de la programmation bas-niveau sur des cibles spécifiques (VHDL, CUDA), par exemple pour utiliser de manière optimisée le NPU du IMX8, seront fortement appréciées.
· Capacité à comprendre et à prototyper des concepts mathématiques.
· Francophone, vous avez un très bon niveau d’anglais professionnel (lu, écrit et parlé).
En cliquant sur "JE DÉPOSE MON CV", vous acceptez nos CGU et déclarez avoir pris connaissance de la politique de protection des données du site jobijoba.com.