My PhD in 180s: regional finalist

I reached regional finals in the French contest “My PhD in 180s” (MT180), where PhD students explain their own research to a crowd of 450 people in exactly 180 seconds. The video is available on YouTube.

Script (translated to English)

1 egg, 80 grams of sugar, 160 grams of flour, 80 grams of butter, chocolate chips, baking powder. This is the cookie recipe as found on Marmiton. But if I ask each of you for your favorite recipe, I will probably get very different answers: pecans, vanilla, or large chocolate chunks… So, what is the best cookie recipe? And above all, starting from a basic recipe, how can we find its best version?

In artificial intelligence, improving a recipe is what we call learning. The role of an AI is to choose what to do in each situation, much like the instructions in a recipe, and in computer science, we represent it with an artificial neural network. A neural network is just a program that acts like a large black box, with many parameters that determine its behavior. We use them in autonomous cars, where the neural network is what determines whether to turn right or left depending on the state of the road and pedestrians.

The goal of learning is to find the neural network that drives the car best, using a simulator to avoid scratching the paint—much like finding the recipe that produces the best cookies. My work is not just about finding the best autonomous car, nor eating cookies all day: what interests me is improving this learning process and understanding how we can learn.

Let’s go back to our cookies. A good method for improving a recipe is to make a batch by changing something small in each cookie: a bit more sugar, less butter, adding vanilla… and even, why not, let’s be crazy, leeks?

We bake these cookies, we taste them, we keep the best ones, and we look for common points in the recipes: if the best ones all contain vanilla, we keep that idea for next time, and if the ones with leeks were bad… well, we forget about those. The following week, we start again with the new recipe, with vanilla in all the cookies, but changing something small in each one again. Every week, the recipe improves until we find the best version.

I also apply this approach to autonomous cars, for those neural networks that decide whether to turn right or left. I start with a base network, test several small changes to its parameters, see what works best, and repeat the process until I have a car that drives itself correctly. It is this optimization method—this learning method—that I am trying to improve in my thesis.

For example, what happens if I am no longer the one tasting all the cookies, but each of you tastes one? If you like vanilla but someone else prefers them without, how do we get an accurate idea of the recipe that will please the most people without having to prepare 400 cookies of each kind and having everyone taste every single one?

Similarly, an autonomous car will not drive the same way in the city center of Toulouse as it does in the countryside, but we aren’t going to travel around the world to verify that it can drive everywhere.

Instead, I try to mathematically determine this uncertainty regarding the cookies—the possibility that some people like them and others do not—in order to test the “borderline” versions multiple times and ensure we only keep the best cookies at each iteration.

And that is how we find the best recipe.

Script (Original)

1 œuf, 80 grammes de sucre, 160 grammes de farine, 80 grammes de beurre, des pépites de chocolat, de la levure chimique. C’est la recette des cookies telle qu’on la trouve sur Marmiton. Mais si je demande à chacun d’entre vous sa recette préférée, j’aurai probablement des réponses très différentes : des noix de pécan, de la vanille, ou des gros morceaux de chocolat… Alors, quelle est la meilleure recette de cookies ? Et surtout, à partir d’une recette basique, comment peut-on trouver sa meilleure version ?

En intelligence artificielle, améliorer une recette c’est ce que l’on appelle l’apprentissage. Le rôle d’une Intelligence Artificielle, c’est de choisir ce qu’il faut faire dans chaque situation, un peu comme les instructions d’une recette, et en informatique on la représente avec un réseau de neurones artificiel. Un réseau de neurones, c’est juste un programme qui est comme une grosse boite noire, avec beaucoup de paramètres qui déterminent son comportement. On en utilise dans les voitures autonomes, où le réseau de neurones est ce qui détermine si on tourne à droite, ou à gauche selon l’état de la route et les piétons.

Le but de l’apprentissage, c’est de trouver le réseau de neurones qui conduit le mieux la voiture, dans un simulateur pour éviter de rayer la peinture, un peu comme trouver la recette qui donne les meilleurs cookies. Et mon travail, ce n’est pas juste de trouver la meilleure voiture autonome, ni de manger des cookies toute la journée : ce qui m’intéresse, c’est d’améliorer ce processus d’apprentissage, et de comprendre comment on peut apprendre.

Revenons à nos cookies. Une bonne méthode pour améliorer une recette, c’est de faire une fournée en changeant une petit quelque chose dans chaque cookie : un peu plus de sucre, moins de beurre, ajouter de la vanille… et même, pourquoi pas soyons fous, du poireau?

On cuit ces cookies, on les goûte, on garde les meilleurs, et on regarde les points communs des recettes : si les meilleurs sont tous à la vanille, on va garder l’idée pour la prochaine fois, et si ceux aux poireaux étaient mauvais… bah on va oublier ça. Et la semaine suivante, on recommence, avec la nouvelle recette, avec de la vanille dans tous les cookies, mais en changeant à nouveau un petit quelque chose dans chacun. Chaque semaine, la recette va s’améliorer jusqu’à trouver la meilleure recette.

Cette approche, je l’applique aussi aux voitures autonomes, pour ces fameux réseaux de neurones qui décident si l’on tourne à droite ou à gauche. Je pars d’un réseau de base, je teste plusieurs petits changements dans ses paramètres, je regarde ce qui marche le mieux et je recommence, jusqu’à avoir une voiture qui conduit toute seule correctement. Et c’est cette méthode d’optimisation, cette méthode d’apprentissage que j’essaie d’améliorer dans ma thèse.

Par exemple, que se passe-t-il si ce n’est plus moi qui goûte tous les cookies, mais si chacun d’entre vous en goûte un ? Si vous vous aimez la vanille alors que vous préférez sans, comment avoir une idée juste de la recette qui plaira au plus de monde possible, sans avoir à préparer 400 cookies de chaque sorte et faire goûter chacun à tout le monde ?

De la même manière, une voiture autonome ne conduira pas pareil dans le centre-ville de Toulouse et dans la campagne, mais on ne va pas faire le tour du monde pour vérifier qu’elle sait conduire partout.

A la place, j’essaie de déterminer mathématiquement cette incertitude sur les cookies, cette possibilité que certains les aiment et d’autres non, pour faire goûter plusieurs fois ceux qui sont à la limite, et être sûr de ne garder que les meilleurs cookies à chaque itération.

Et c’est comme ça qu’on trouve la meilleure recette.