Stage : Chargé.e de projet Recherche

3 sujets de stages sont à pourvoir au sein du service Recherche

  • Neural Architecture Search : Battle Royale
  • Étude des méthodes de modélisation et de résolution non-linéaire pour des données de processus physiques
  • Élagage de jeux de données pour optimiser le temps d’apprentissage d’un algorithme de machine learning

Caractéristiques

  • Location : Issoire (63)
  • Durée : 4 à 6 mois selon le sujet
  • Début : à partir d’avril 2021

Les atouts du stagiaire Braincube

  • Flexibilité : nous recherchons avant tout des personnes ouvertes d’esprit et capables de s’adapter
  • Curiosité : vous aimez les jolis algorithmes, parlez couramment http, testez des technos ou langages que personne ne connait encore
  • Passion : vous aimez résoudre des problèmes complexes, vous êtes créatif
  • Esprit d’équipe : vous aimez travailler en équipe et partager vos idées

Pourquoi faire un stage chez Braincube ?

Nous avons à coeur d’intégrer pleinement les stagiaires à la vie de l’entreprise, tout en leur permettant de s’épanouir en se dépassant et en progressant. Au programme pour les Trainee Braincubers :

  • Un tuteur dédié pour toute la durée de votre stage
  • Une intégration pleine et entière à votre squad et à la team R&D
  • L’utilisation de technologies innovantes
  • Une équipe Braincube qui vous attend, dans la joie et la bonne humeur !

Neural Architecture Search: Battle Royale

Braincube travaille avec de nombreux industriels et leur fournit des outils permettant de suivre, d’étudier et d’améliorer leurs processus de production à partir des larges quantités de données qui sont récupérées. L’intelligence artificielle arrive à des résultats probants dans certains domaines (reconnaissance d’images, calcul de stratégies au go…). Braincube s’est lancé depuis plusieurs années dans l’adaptation de ces technologies aux besoins de ses clients.

Les réseaux de neurones (NN) sont une technologie très utilisée pour la prédiction et la classification. Le design d’un NN est une tâche qui n’obéit à aucune règle bien définie et utilise l’expérience de celui qui le construit. Ce travail prend beaucoup de temps car il faut généralement faire de nombreux essais avant de trouver un NN qui donne des résultats satisfaisants. À partir de ce constat, plusieurs approches tentent d’automatiser le design de NN. Ce champ de la recherche s’appelle Neural Architecture Search (NAS). Braincube utilise principalement les algorithmes génétiques mais d’autres approches existent (en particulier le reinforcement learning) : nous souhaitons les comparer (les principaux indicateurs de cette comparaison étant le temps, le nombre d’opérations et la précision de la prédiction).

Le stage comporte trois parties

  1. Vous améliorerez les algorithmes génétiques déjà utilisés avec les nouvelles idées de la littérature scientifique (en particulier, l’utilisation de l’âge et l’asynchronisme). 
  2. Vous utiliserez archai (outil développé en python par microsoft) et pyTorch (librairie de machine learning développée en python par facebook) pour apprendre les meilleurs NN par des méthodes de reinforcement learning (RL). Il faudra comprendre les différents algorithmes de RL et leur paramétrage. 
  3. Vous comparerez les deux approches (génétique et RL) sur un ensemble de datasets. Les deux premières parties du stage peuvent être menées en parallèle.

Étude des méthodes de modélisation et de résolution non-linéaire pour des données de processus physiques

Braincube travaille avec de nombreux industriels et leur fournit des outils permettant de suivre, d’étudier et d’améliorer leurs processus de production à partir des larges quantités de données qui sont récupérées. Braincube s’est lancé depuis plusieurs années dans l’adaptation des technologies récentes aux besoins de ses clients.

Les procédés mis en œuvre sur une chaîne de production continue, comme la production de papier ou de verre, sont des transformations physico-chimiques pour lesquelles il existe un corpus de loi bien connues et utilisant généralement des fonctions simples comme des polynômes, du logarithme, des fonctions rationnelles ou des fonctions trigonométriques. Une chaîne de production est complexe et il est difficile de connaître la succession des lois physiques qui s’appliquent, de plus il existe différents phénomènes non contrôlés qui perturbent la sortie (qu’on peut assimiler à du bruit). Cependant, une mesure en sortie du processus peut être modélisée comme une fonction simple des mesures réalisées en entrée (toutes ou une partie).

Le stage comporte deux parties

  1. Vous devez trouver une fonction multivariée simple f qui prend les entrées et approche la sortie. Cette modélisation est évidemment sujette au bruit qui existe dans toute modélisation d’un processus physique. L’objectif est d’essayer plusieurs types de fonctions et d’essayer de réduire le bruit. 
  2. Vous devrez résoudre l’équation f(x) = y en utilisant différentes méthodes d’optimisation numérique (en particulier, les algorithmes de type Broyden-Fletcher-Goldfarb-Shanno)

Élagage de jeux de données pour optimiser le temps d’apprentissage d’un algorithme de machine learning

Chez Braincube, nous travaillons pour permettre aux entreprises de tirer le meilleur parti des données collectées sur leurs sites de production. Un des services que nous proposons est la prédiction de la qualité d’un produit à partir des variables mesurées par différents capteurs sur une ligne de production.

Quelque soit l’algorithme utilisé pour prédire, la qualité des prédictions dépend de taille de l’historique de données utilisées pour l’entraîner. Malheureusement rien n’est gratuit, cette qualité gagnée vient au prix d’une utilisation de ressources plus importante et d’un temps d’entraînement plus long. L’objectif de ce stage sera de mettre en place un système de réduction des données pour ne garder que les plus pertinentes.

Le stage se déroulera en plusieurs étapes

  1. Il faudra comparer différentes métriques tels l’information mutuelle, le rank (algorithme interne à braincube), etc. afin de trouver celle qui quantifie au mieux la puissance prédictive des variables et ainsi sélectionner les meilleures. 
  2. Il faudra mettre en place des outils statistiques de comparaison des lignes d’un jeu de données afin de pouvoir regrouper celles statistiquement similaires.  
  3. A terme, le but sera de produire une librairie python utilisant la réduction du nombre de variables et de lignes pour diminuer la taille d’un jeu de données en conservant un maximum d’information.

Ce stage demande un minimum de connaissance du langage python et d’être capable d’utiliser les librairies usuelles de “machine learning” tel que scikit-learn. Une connaissance des bases en théorie de l’information pourra aussi être utile.

Merci de préciser le nom du sujet de stage dans votre candidature.

Apply

Transformez vos données.
Accélérez vos performances.

Parler avec un expert