vendredi 10 février 2017

Un exemple de réussite sur un challenge de Machine Learning


INTRODUCTION


Ces derniers mois, j'ai choisi d'étoffer mes connaissances en Machine Learning et en langage Python en m'essayant à plusieurs challenges, principalement sur Kaggle. Je pense que c'est un excellent medium pour apprendre, principalement par le biais des forums et des kernels, où les meilleurs spécialistes mondiaux du domaine partagent leur savoir de manière très altruiste. Ainsi, généralement lorsqu'une compétition est terminée, plusieurs compétiteurs ayant fini au sommet viennent partager leurs méthodes sur le forum, et parfois même directement leur code source en postant un lien vers leur repo GitHub correspondant.

Toutefois, il est bien difficile aujourd'hui de finir parmi les meilleurs sur une compétition Kaggle, bien plus qu'il n'y a ne serait-ce que 2 ou 3 ans (au regard des articles que l'on peut lire sur les solutions gagnantes de cette époque). Il faut désormais un espace de stockage énorme car les datasets deviennent gigantesques, et une puissance de calcul rarement disponible sur des PCs standards pour pouvoir faire tourner des GridSearches pendant plusieurs jours, ou bien entraîner des réseaux de neurones (via Keras pas exemple) sur des GPUs dernier cri. Les meilleurs empilent bien souvent plusieurs dizaines de modèles sur du stacking à 3 niveaux, parfois plus. C'est pour ça que quand j'ai entendu parler du ChallengeData ENS (merci Laurae), ça m'a intéressé : des datasets qui ne nécessitent pas d'accès au cloud pour être étudiés, et des compétiteurs qui ne sont pas forcément l'élite de l'élite mondiale, mais (pour la plupart) “simplement” des étudiants des meilleurs écoles de France (Polytechnique, ENS Cachan etc), ainsi que certains passionnés dans mon genre.

Au moment où j'écris cet article, je suis 1er sur 71 sur le Challenge “Oze Energies” et 2e sur 20 sur le Challenge “PlumeLabs”. Ce sont les 2 seuls challenges sur lesquels j'ai travaillé. Les compétitions se terminent en Juin, et j'imagine sans peine que certains vont me dépasser d'ici là, vu que je ne compte plus vraiment continuer à travailler dessus. Accessoirement, peut-être certains tomberont-ils sur cet article et y trouveront quelques idées (si c'est votre cas, un petit merci dans les commentaires me ferait un grand plaisir). J'aurais bien posté l'article sur le site du Challenge pour un souci d'équité d'accès à l'information, mais il n'y a à l'heure actuelle aucun forum. Je vais me concentrer ici sur le Challenge “Oze Energies”.