Au sein du département « R&D Information System », vous rejoindrez l’équipe R&D Data Science qui est en charge de la spécification, du développement, de la mise en production et de la maintenance d’un système décisionnel permettant d’aider l’équipe DevOps dans la supervision et l’optimisation de notre chaine de production : intégration continue et déploiement continu. Vous travaillerez également en collaboration étroite avec l’équipe Data Science et les autres équipes du département pour l’aspect collecte de données et plus particulièrement les équipes : SI, BI, développeurs et architectes.
Dans l’approche DevOps, l’équipe prend en charge les parties Continuous Monitoring and Learning soit :
Pendant la phase de validation de nos logiciels, l'analyse statique du code source permet de révéler des erreurs de programmation ou de conception facilitant ainsi la maintenance du code.
Vos missions
L'objectif de cet apprentissage est d'utiliser les données issues des analyses statistiques du code source tels que les pattern d'erreur/ pattern de correction pour développer des algorithmes de Deep Learning robustes qui peuvent assister les développeurs dans la correction de ces erreurs. Les approches de correction automatique de code, également connues sous le terme d'Automatic Program Repair (APR), visent à proposer automatiquement des corrections aux erreurs de code, avec un minimum ou aucune intervention humaine. Ces dernières années, le domaine de l'APR a connu d'importantes évolutions avec notamment l'utilisation croissante d'algorithmes de Deep Learning, tels que les modèles sequence-tosequence (seq-2-seq) combinés avec d'autres techniques comme la tokenization du code, l'exploitation de représentations adaptées aux données code et l'utilisation de mécanismes d'attention pour améliorer la qualité des corrections.
Cependant, ces modèles ont rapidement montré des limitations comprenant la difficulté à gérer des dépendances complexes, la sensibilité à la longueur des séquences, le besoin de données d'entraînement volumineuses, la spécificité au langage de programmation et les temps d'entraînement et prédiction relativement longs en raison de la nature séquentielle de ces modèles.
Récemment, des modèles basés sur l'architecture des Transformers [1], tels que BERT [2] et ses variantes, Codex [3], CodeGen [4] ont montré des performances impressionnantes dans diverses tâches de traitement du langage naturel (NLP), y compris la complétion de code et la génération de code. Cependant, reposant principalement sur la représentation textuelle du code, les approches actuelles peuvent être améliorées pour la tâche de correction de code en considérant, par exemple, d'autres représentations pertinentes permettant de mieux capturer les caractéristiques syntaxiques, structurelles et sémantiques du code.
Dans ce contexte, vous aurez pour mission la réalisation des objectifs suivants :
Références bibliographique: [1] Vaswani, A., Shazeer, N., Parmar, N., Uszkoreit, J., Jones, L., Gomez, A. N., Kaiser, L., & Polosukhin, I. (2017). Attention is All You Need. In Advances in Neural Information Processing Systems (NeurIPS). [2] Devlin, J., Chang, M. W., Lee, K., & Toutanova, K. (2019). BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding. In Proceedings of the 2019 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies (NAACL-HLT). [3] Chen, X., Xu, L., Zhang, Z., Li, Y., Li, C., & Zhang, D. S. (2020). Codex: Multilingual Code Representations from Pre-trained Transformers. In Proceedings of the 34th Conference on Neural Information Processing Systems (NeurIPS). [4] Nijkamp, E., Pang, B., Hayashi, H. et al. Codegen: An open large language model for code with multi-turn program synthesis. arXiv preprint arXiv:2203.13474, 2022.
Vos qualifications
Etudiant(e) en cursus universitaire ou Ecole d’ingénieurs, vous recherchez un contrat d'apprentissage.
Spécialité(s) / Option(s) souhaitée(s): Data Science, Machine/Deep Learning, Big Data, Statistiques
Compétences techniques attendues :
Nous rejoindre c'est aussi
Intégrer une entreprise scientifique au cœur de l’innovation technologique, portée par une forte croissance depuis plus de 40 ans.
Join Dassault Systèmes, The 3DEXPERIENCE Company Everything becomes possible with Dassault Systèmes’ 3DEXPERIENCE virtual universes! Serving 230,000 customers in 11 industries, from high-tech to life sciences, fashion to transportation, we help businesses and people around the world to create sustainable innovations for today and tomorrow. Get on board a leading and fast-growing company of 20,000 talented professionals.