Pub

Au cœur du Moteur Criteo

Franck Le Ouay -Criteo © Viuz

Depuis sa création le succès de Criteo repose sur une technologie unique qui traite 25.000 publicités par seconde et a généré plus d'1,5 milliard de clics en 2012 pour plus de 4 000 clients.

L’objectif tel que décrit par Jean-Baptiste Rudelle, CEO de Criteo lors de son introduction au Nasdaq : offrir les performances du search au display, à l’échelle mondiale.

Au début, Criteo était un pari un peu fou indique Franck le Ouay, un ancien de Microsoft et d’Electronic Arts, Chief Scientist et Co-fondateur de la société. On s’est dit on n’est pas plus bêtes que les autres et si on travaille dur et qu’on exécute nos idées, on peut faire mieux que les autres, quels que soient nos concurrents.

En réalité, l’idée de départ : un site de recommandation cinématographique avec un système de vote explicite est un flop « Nous avions une technologie prometteuse sur un mauvais marché, avec les mauvais clients» explique Franck Le Ouay, âgé de 27 ans à l’époque.

La construction de ce qui deviendra le moteur Criteo est le fruit d’un long cheminement. La deuxième tentative de la petite équipe consiste à réaliser un moteur de recommandation (avec un vote implicite cette fois) pour les sites d’E-Commerce... C’est un nouvel échec. Mais le premier bloc historique du Moteur Criteo est constitué. « À chaque itération, on a appris quelque chose» rappelle Franck Le Ouay.

Fin 2007, ayant constaté que le vrai marché consiste à faire venir les clients sur les sites, les fondateurs de Criteo décident de placer la recommandation «hors du site» et effectuent un premier test pour PriceMinister avec un achat d’inventaire sur les sites de blogs de Skyrock.

Le problème « Avec 10.000 Euros d’achat d’espace, on a généré 3.000 euros de revenu…» précise Franck Le Ouay. Le test livre pourtant son premier enseignement historique à Criteo : 80% de ses revenus ont été générés par 15% des utilisateurs, clients de PriceMinister.

« Nous avons donc décortiqué les comportements de ces 15% et fait des tests sur des bannières standards puis sur des bannières personnalisées et là nous avons constaté une augmentation des taux de clic de 500% ». Criteo était lancé, « On a foncé tête baissé pour signer avec le maximum d’éditeurs et faire la meilleur techno possible »

Aujourd’hui le Moteur Criteo est composée de 4 blocs : La prédiction et la recommandation, les opérations et achats en temps réel, les process informatiques (traitement des gros volumes en HPC) et la personnalisation et la création dynamique (DCO).

À chaque étape d’affichage d’une publicité, se déroule en quelques millisecondes une séquence d’événements clés pour le succès de la publicité auprès des annonceurs, des éditeurs qui l’affichent et aussi de Criteo.

Plongée au cœur du Moteur Criteo, cette machine à distiller de l’intentionniste.

Les temps et les volumes

Loïc Chambard -Criteo ©Viuz

En amont du moteur Criteo, le traitement des volumes et du temps.

Le métier de Loïc Chambard, ancien de Google et Engineering program Manager chez Criteo depuis plus de 4 ans est de veiller à ce que Criteo serve le plus rapidement possible plus de 2,5 milliards de publicités par jour sur les sites des éditeurs.

Pour faire face à des volumes multipliés par trois en un an et qui génèrent parfois des besoins de calculs multipliés par 10, Criteo possède 6 Data Centers hébergeant plus de 6000 serveurs. Mais la puissance n’est pas tout, l’ensemble des équipes Criteo veillent à «paralléliser» au moyen de codes sans cesse plus sophistiqués les traitements informatiques pour délivrer en moins de 100 millisecondes la bonne publicité, chez le bon éditeur, au bon emplacement.

« On prend un risque à chaque opération, si l’utilisateur ne clique pas on perd de l’argent » souligne Loïc Chambard. Son équipe a ainsi passé 6 mois pour augmenter de 8 fois la vitesse de calcul sur une application de RTA (Real Time Audience) destinée à l’achat d’espaces publicitaires chez les éditeurs premium.

À la clé plusieurs millions d’Euros économisés.

Le Prix et la Recommandation

Nicolas Le Roux -Criteo © Viuz

Continuons la séquence... Soumis à l’impératif maximum des 100 millisecondes d’affichage, il s’agit alors pour le Moteur Criteo de déterminer le juste prix pour l’emplacement et de recommander le meilleur produit à l’utilisateur qui visite le site de l’éditeur.

Le juste prix et la juste recommandation, c’est le métier de Nicolas Le Roux, ingénieur Centralien, spécialiste français du Machine Learning qui a peaufiné ses algorithmes dans les laboratoires de Yoshua Bengio à Montréal, de Microsoft Research à Cambridge et de Francis Bach à l’Inria.

Pour Nicolas, la contrainte du temps est encore plus sévère. Dans cette seconde séquence la précision est vitale. Car Criteo se fait payer les publicités au clic et achète ses espaces sur les éditeurs au CPM. Le Moteur Criteo gère donc un risque majeur au quotidien.

La première mission de Nicolas est de bien acheter dans un temps rétréci de l’ordre de 5 à 10 millisecondes. Bien acheter suppose ainsi d’être capable au moyen de formules mathématiques et de calculs de probabilité sophistiqués de déduire l’espérance de gain d’une publicité. En bref, évaluer ce que le marchand paye à Criteo pour chaque Clic, multiplié par la probabilité du clic. Pour ce faire il va analyser une foule de variables dont le comportement passé de l’utilisateur, le site Web qu’il visite ou encore sa relation avec le marchand.

Au sein de cette séquence, la marge de manœuvre est infiniment mince. Si Nicolas « sur- prédit» la probabilité du Clic, Criteo va payer l’enchère trop cher, s’il « sous-prédit » Criteo risque de perdre l’enchère au profit d’un concurrent et ne pas afficher l’annonce. La clé du succès de la séquence enchère : Des maths, des maths et des maths, insiste Nicolas…

Une fois l’enchère remportée…Il reste alors moins de 90 millisecondes pour afficher le bon produit…Là encore Nicolas et les équipes Machine Learning vont jongler avec des milliers de variables historiques pour trouver le bon produit à afficher dans la publicité qui déclenchera le graal tant espéré : le clic de l’utilisateur.
Pour Nicolas, cette course contre la montre se gagne de trois façons, une réflexion approfondie sur les variables à prendre en compte et la capacité de l’équipe à bâtir des algorithmes qui apprennent assez vite (généralement en moins de trois jours). Le dernier volet est lié à la qualité des données collectées chez les marchands qui, en matière de produits affichés, peuvent constituer un véritable avantage compétitif. «Dans l’efficience de nos modèles, les données sont souvent plus importantes que les algos» souligne Nicolas Le Roux.

Chaque jour, l’équipe affine son modèle de recommandation et répond à des questions complexes que sanctionnera impitoyablement le clic ou l’absence de clic de l’utilisateur : Faut-il afficher le dernier produit vu (retargeting) ? Un produit adjacent ou complémentaire au produit acheté ? Mais dans ce cas qu’est-ce qu’un produit semblable ? Qu’est-ce qu’un produit complémentaire ?

Les prochains défis de Nicolas ? Évaluer les modèles sans avoir à les mettre «en production». Avec une question récurrente : Comment savoir si l'affichage d'un nouveau produit jamais présenté va générer un clic ? Une problématique connue sous le nom d'exploration/exploitation qui n'est toujours pas résolue.

Et toujours, chaque jour, maximiser les gains du moteur Criteo en balançant la complexité croissante des algorithmes et les contraintes de latence. Avec une seule certitude : le moteur Criteo est une formidable machine à apprendre et chaque jour son historique la rend plus puissante….

L’infrastructure

Matthieu Blumberg -Criteo © Viuz

Garantir «l’ uptime» du Moteur Criteo c’est le métier de Matthieu Blumberg, Infrastructure et Production Manager chez Criteo. Sa mission : faire grandir à l’échelle mondiale une plateforme en hyper croissance tout en l’optimisant. Une illustration exemplaire de la capacité du monde physique à supporter le virtuel.

« Je parle vraiment d’une croissance violente » précise Matthieu arrivé chez Criteo début 2011 en provenance de Dailymotion. La plateforme qui comptait 300 machines à l’époque tourne maintenant sur plus de 6000 serveurs.

« Avec 500 serveurs, nos déploiement sont tellement massifs que lorsque l’on arrive sur un Data Center, il fait 10 à 15 degrés de plus dans la salle, heureusement qu’ils sont conçus pour gérer une température plus élevée.»

Il faut dire qu’en trois ans le nombre de publicités display servies par Criteo sont passées de 600 millions à plus de 2,5 milliards par jour.

Son travail quotidien consiste à gérer 6 data centers hébergeant des serveurs, et 5 POP (Points de Présence) purement réseau, sur la planète, avec une équipe de 20 personnes et de s’assurer de la livraison et de la logistique de plus de 500 machines (soit 15 à 20 tonnes de matériel) à chaque extension de capacité.

«Notre empreinte physique est passée de 56 racks en 2011 à plus de 720 racks en 2013. Dans le même temps nous avons dû optimiser cette empreinte en arrivant à mettre 24 serveurs sur une capacité énergétique de 5 à 6 KWatt»

Parallèlement l’intégration de clusters Hadoop en 2011 a révolutionné notre capacité de stockage et nous a permis d’optimiser la collecte d’événements utilisateurs, nous sommes ainsi passés d’une base de données relationnelle de 40 Tera à 700 Tera de stockage distribué pour atteindre 16 Peta aujourd’hui. Nous visons une capacité totale de plus de 50 Petabytes d’ici la fin de l’année »

Son prochain défi, la Chine continentale, après être passé de 14 à 120 racks à Tokyo en trois ans.

Sa fierté, le design particulier de ses racks et l’urbanisation optimale des salles, au point que l’on réclame aujourd’hui dans les Data Center de New York un «câblage à la Française ».

Autre signe flagrant de la rareté de ces métiers et de la taille des investissements : «Au début de ma carrière à la fin du siècle dernier , on dormait dans les cartons et les polystyrènes dans les Data Centers, aujourd’hui ils sont équipés de chambres dignes d’un trois étoiles, de douches et de canapés» s’amuse Matthieu.

Nous n’avons pas encore atteint le stade où l’on construit nos propres Data Centers conclut-il mais nous avons dépassé le stade où le cloud est intéressant : « il nous coûte 2 fois plus cher que l’achat de machines. Et une fois allumées elles me coûteraient 12 à 15 fois plus cher.»

Le futur du Moteur Criteo

De l’aveu même de Franck le Ouay, le moteur Criteo n’en est qu’à ses débuts. Il compte sur les dernières évolutions du Deep Learning pour libérer les données et leurs relations intrinsèques.

L’enjeu futur : la détection des signaux faibles - «Plus on a de données, plus on gagne en capacité de zoomer sur des cas particuliers et de discerner des patterns d’achat.»

Avec plus de 100 variables Franck Le Ouay vise la prochaine étape du Moteur Criteo : améliorer la prédiction pour prévoir le comportement d’achat «Le clic est un événement rare mais le clic plus achat est bien plus précieux. Le graal des annonceurs en matière d’attribution!"

«Mon ambition c’est que le client nous donne son cost of sales sur une catégorie de produit et qu’on s’engage sur ce cost of sales pour maximiser les achats générés…Ce qui est un risque bien plus grand quand on sait que le client mesure le cost of sales à 30 jours. Mais il faut savoir s’exposer à la chance» conclut Franck le Ouay dans un sourire désarmant.

Plus d'articles Pub

+ TOUS LES ARTICLES Pub
  • Geoffroy Martin (Ogury) : la publicité sans cookie et sans identifiant articule le respect des utilisateurs et les performances à grande échelle

    Fondé en France, Ogury est un champion de la publicité en ligne, présent aujourd’hui dans 17 pays. Nous avons interviewé Geoffroy Martin, ...

  • Endineering : un nouveau concept marketing ?

    ...

  • Annonceurs, l’allumage de la fusée CTV est réussi, ne ratez pas son décollage

    Une tribune de Jérôme Cauchard, directeur général de Making Science France L’activation de campagnes sur la TV connectée suscite un in...