La parole est aux speakers : Mathias Arlaud

Publié le

Jusqu’au Forum PHP 2022, retrouvez nos interviews de speakers pour mieux comprendre leur parcours et le sujet qu’ils ou elles aborderont lors de leur conférence !

La conférence

De l'humain à l'ordinateur, ou découvrir le sens d'un texte avec ElasticSearch.

En y réfléchissant un peu, un texte, des phrases, des mots, ne sont que de simples suites de caractères, tout comme une image n'est qu'une simple matrice de pixels. Cependant, notre cerveau est capable d'interpréter cet enchaînement de caractères, et de l'associer à des concepts, en d'autres termes de lui donner du sens. Si on prend un peu de recul là-dessus, on peut se dire que notre cerveau est sur bien des aspects clairement impressionnant.

Un enjeu de ces dernières années, c'est entre autres de permettre aux ordinateurs d'imiter cet aspect notre cerveau, en leur donnant la capacité de trouver le sens de la donnée avec laquelle ils travaillent. C'est par exemple ce que tente de faire l'intelligence artificielle.

Je vous rassure tout de suite, on ne va pas du tout parler d'intelligence artificielle (même si cela serait extrêmement intéressant). On va cependant réduire notre champ de travail et essayer de comprendre comment il est possible d'attribuer un score de corrélation entre un texte donné et une multitude d'autres. Et pour cela, on va se pencher sur la manière dont se prend ElasticSearch (ou plutôt Apache Lucene) pour répondre à cette problématique.

Bienvenue en terminale, vous avez deux heures. Cette équation (simplifiée) représente une manière de calculer ce fameux score de corrélation, et c'est exactement ce que nous allons décortiquer.

Dans un second temps, nous verrons comment nettoyer un texte "humain" afin de faciliter sa compréhension par un ordinateur. Char filters, tokenizers, token filters, tant d'outils qui permettront de réduire un texte à son sens profond, de réduire son "bruit" afin d'optimiser les scores de corrélation.

Et petit bonus, vous pourrez même briller en société en étant en mesure de placer dans vos soirées mondaines des termes comme "Term frequency", "Inverse document frequency", "Coordination factor", "Inverted index"...

Ballroom GHJKLM - Katherine Johnson
13/10/2022
09:45-10:25

Tu as donné cette conférence une première fois à l’AFUP Day 2022 Lille. Comment abordes-tu cette conférence devant un public plus nombreux ?

Je l’aborde exactement de la même manière que la conférence de Lille, ou du moins la préparation est strictement identique.
C’est-à-dire en effectuant de multiples répétitions devant une audience différente à chaque fois.
Cela étant dit, je ne cache pas qu’un public plus important implique nécessairement plus de pression.
Cependant, j’ai déjà eu la chance de donner une conférence au Forum PHP l’année dernière, je sais donc à quoi m’attendre, ce qui est, sans nul doute, très rassurant.

Nous avons pu constater lors de tes conférences précédentes que tu sais vulgariser des sujets complexes. Quels conseils donnerais-tu à ce propos ?

Cela me fait extrêmement plaisir que vous l’ayez remarqué ! En effet, les conférences que j’aime donner sont sans doute les conférences de vulgarisation.
Pour être en mesure de vulgariser des sujets complexes, je commence d’abord par considérer le sujet dans sa globalité.
Puis, j’essaie de le découper en sous-parties logiques, parties sur lesquelles je vais m’attarder en prenant des exemples et en faisant un maximum de parallèles avec notre vie à tous.
Enfin, je recolle ces différentes parties en traçant un chemin, en racontant une histoire.
Car pour moi, les deux points clés pour entretenir l’envie d’apprendre du public sont à la fois de faire des parallèles avec ce que le public expérimente dans sa vie de tous les jours, et de raconter une belle histoire qui donne envie d’être écoutée.

Tu as récemment réalisé plusieurs contributions à Symfony. Peux-tu nous les présenter ainsi que ton expérience de contribution ?

En effet, je me suis penché ces derniers temps sur le composant Serializer de Symfony.
J’ai par exemple récemment contribué à l’ajout du panel de profilage du Serializer.
Ce tout nouveau panel, permet aux devs de voir d’un simple coup d’œil tout ce qui s’est passé durant le processus de sérialisation, permettant de savoir quels normaliseurs ont été appelés, quel encoder a été utilisé, ou encore combien de temps ces derniers ont pris.
Quant à mon expérience de contribution à Symfony, elle est comme à son habitude excellente.
Toute la communauté est toujours extrêmement bienveillante, prête à accompagner et à l’écoute de nouvelles propositions.
Je ne peux donc que conseiller à celles et ceux qui hésiteraient à contribuer à se lancer !

Une conférence présentée par

Mathias ARLAUD
Mathias ARLAUD
Développeur Symfony chez Les-Tilleuls.coop, Mathias est un aficionado de l'open source. Il contribue principalement à Symfony, API Platform et il est l'auteur de quelques packages en lien avec cet écosystème.

Autres interviews

En poursuivant votre navigation sur ce site, vous acceptez l’utilisation des cookies pour améliorer votre navigation. plus d'infos

1. Qu’est-ce qu’un cookie?

Un Cookie est un petit fichier texte enregistré sur votre terminal (ordinateur, tablette, smartphone, etc.), à l’occasion de la consultation d’un service en ligne grâce à votre logiciel de navigation. Il permet à son émetteur d’identifier le terminal dans lequel il est enregistré, pendant la durée de validité ou d’enregistrement du Cookie. Lors de la consultation de notre site Internet, des informations relatives à la navigation de votre terminal sont susceptibles d'être enregistrées dans ces fichiers dits "Cookies". Ces derniers sont installés sur votre terminal, sous réserve des choix que vous auriez exprimés concernant les Cookies et que vous pouvez modifier à tout moment.

2. A quoi servent les cookies émis sur notre site ?

Seul l’émetteur d’un cookie est susceptible de lire ou de modifier les informations qui y sont contenues.
Les cookies utilisés sur notre site permettent :

3. Vos choix concernant les cookies

Vous disposez de différents moyens pour gérer les cookies. Tout paramétrage que vous pouvez entreprendre sera susceptible de modifier votre navigation sur notre site et sur Internet en général et vos conditions d'accès à certains services de notre site nécessitant l'utilisation de cookies. Vous pouvez à tout moment exprimer et modifier vos souhaits en matière de cookies, par les moyens décrits ci-dessous. L'accord sur les cookies L'enregistrement d'un cookie dans un terminal est essentiellement subordonné à la volonté de l'utilisateur du terminal, que celui-ci peut exprimer et modifier à tout moment et gratuitement à travers les choix qui lui sont offerts par son logiciel de navigation. Si vous avez accepté dans votre logiciel de navigation l'enregistrement de cookies dans votre terminal, les cookies intégrés dans les pages et contenus que vous avez consultés pourront être stockés temporairement dans un espace dédié de votre terminal. Ils y seront lisibles uniquement par leur émetteur.

Le refus des cookies Si vous refusez l'enregistrement de cookies dans votre terminal, ou si vous supprimez ceux qui y sont enregistrés, vous ne pourrez plus bénéficier d'un certain nombre de fonctionnalités qui sont néanmoins nécessaires pour naviguer dans certains espaces de notre site. Tel serait le cas si vous tentiez d'accéder à votre compte ou à votre abonnement qui nécessite de vous identifier. Tel serait également le cas lorsque nous, ou nos prestataires, ne pourrions pas reconnaître, à des fins de compatibilité technique, le type de navigateur utilisé par votre terminal, ses paramètres de langue et d'affichage ou le pays depuis lequel votre terminal semble connecté à Internet. Le cas échéant, nous déclinons toute responsabilité pour les conséquences liées au fonctionnement dégradé de nos services résultant de l'impossibilité pour nous d'enregistrer ou de consulter les cookies nécessaires à leur fonctionnement et que vous auriez refusés ou supprimés. Les choix offerts par votre logiciel de navigation Vous pouvez configurer votre logiciel de navigation de manière à ce que des cookies soient enregistrés dans votre terminal ou, au contraire, qu'ils soient rejetés, soit systématiquement, soit selon leur émetteur. Vous pouvez également configurer votre logiciel de navigation de manière à ce que l'acceptation ou le refus des cookies vous soient proposés ponctuellement, avant qu'un cookie soit susceptible d'être enregistré dans votre terminal. Pour la gestion des cookies et de vos choix, la configuration de chaque navigateur est différente. Elle est décrite dans le menu d'aide de votre navigateur, qui vous permettra de savoir de quelle manière modifier vos souhaits en matière de cookies. Selon votre navigateur, consultez le lien ci-dessous pour configurer votre navigateur et refuser les cookies :