Une palette d’idées pour étoffer les outils linguistiques

Publié le 15 juin 2023

Recourir à l’IA pour sous-titrer automatiquement une vidéo en luxembourgeois, évaluer votre prononciation des termes luxembourgeois, étendre les fonctionnalités de lod.lu : voici quelques idées menées à bien lors de l’édition 2023 du Hackathon Open Data. Résumé de ces deux journées en vidéo.

English version

Le Hackathon Open Data x '{"lang":"lb"}' s’est déroulé les jeudi 8 et vendredi 9 juin. Vingt-cinq développeurs, UX designers, chefs de projet et data scientists ont répondu présent et se sont retrouvés au GovTech Lab, dans le but de développer des outils innovants.

Co-création et multidisciplinarité ont été au cœur de deux jours intenses, émaillés d’échanges fructueux, loin de tout esprit de compétition. Six projets ont été présentés et discutés. Leur point commun : ils sont tous alimentés par la base linguistique du Zenter fir d’Lëtzebuerger Sprooch (ZLS), dont le dictionnaire luxembourgeois LOD et les données collectées par le projet schreifmaschinn.lu. Voici les travaux résumés, et présentés en vidéo par chaque équipe. Un projet vous a conquis ? Vous souhaitez le porter plus loin ? Retrouvez une sélection des réutilisations au pied de cet article.

L’IA pour sous-titrer une vidéo en langue luxembourgeoise

Proposer une traduction automatique, ainsi que l’offre aujourd’hui YouTube, mais pour des contenus en langue luxembourgeoise : voilà l’idée. Pour arriver à ses fins, l’équipe a développé un programme Python qui accepte un fichier audio – ou récupère la piste audio d’un fichier vidéo – et le soumet à l’API schreifmaschinn, qui délivre une première transcription.

Cette transcription est alors transmise à ChatGPT, qui la traduit en d’autres langues. Les textes sont découpés en blocs de trois secondes, un séquençage adapté aux besoins de sous-titrage. ChatGPT livre les sous-titres dans des fichiers prêts à l’emploi, au format srt. La vidéo, enrichie de sous-titres en quatre langues, est ensuite automatiquement publiée sur YouTube.

ChatGPT propose une traduction acceptable sans pour autant connaître le luxembourgeois. Il se base sur des similarités, selon la langue pivot utilisée. Cette approche ne peut se priver d’une vérification manuelle. L’idée est perfectible et très prometteuse.

L’IA pour évaluer votre prononciation du luxembourgeois

Ici, le principe consiste à afficher un mot, au hasard, parmi ceux disponibles dans le dictionnaire LOD. Grâce à l’API du dictionnaire, la page présente le mot, sa phonétique, ses traductions en français et anglais. Un bouton invite à enregistrer sa voix. L’audio est converti en phonétique, puis cette dernière en syllabes. L’affichage de la phonétique du mot enregistré permet de voir si la comparaison est un succès ou, au contraire, de constater sur quels phonèmes une différence a été détectée.

Ce programme a une visée ludique et éducative. Il demande à être perfectionné, mais présente un grand potentiel, susceptible de séduire à terme des équipes pédagogiques.

Le « Petit bac » à la sauce luxembourgeoise

Toujours dans le domaine ludo-éducatif, une troisième équipe a fait le pari de s’inspirer du jeu du « Baccalauréat » ou « Petit bac », consistant à trouver, dans un temps limité, une série de mots appartenant à une catégorie prédéfinie (un animal, une profession, un nom de ville…) et commençant par la même lettre. L’API lod.lu fournit fort à propos, pour chaque mot, une catégorie. Plusieurs indices sont proposés à l’utilisateur qui « sèche » : une traduction d’un mot possible en anglais, un synonyme (mais dont la première lettre n’est pas celle recherchée), une phrase où le mot (caché) se trouve en contexte, une image récupérée depuis un service en ligne auquel le système soumet la traduction anglaise du mot, enfin la transcription audio du mot à renseigner. Le système pondère le score en fonction des indices utilisés.

Un développement de ce prototype encourageant aurait tout son sens au côté des apps existantes ayant pour but l’apprentissage de la langue luxembourgeoise.

Des pages parsemées de mots luxembourgeois

Dans la même veine pédagogique, mais cette fois-ci selon une mode plus invasif, une équipe s’est penchée sur une amélioration de l’extension de navigateur LëtzRead. Elle remplace automatiquement, sur une page web en langue anglaise, certains mots par leurs équivalents en langue luxembourgeoise.

La sélection des mots à remplacer s’opère selon leur complexité. L’idée sous-jacente consiste à ne traduire que des mots jugés difficiles. Plusieurs paramètres permettent de déterminer cette complexité, en tenant compte de la longueur du mot, du nombre fois où la traduction d’un terme a été demandée, de la multiplicité des significations que possède un même terme, de son appartenance au vocabulaire de base ou encore de la ressemblance d’un mot luxembourgeois avec son équivalent dans la langue du lecteur.

Lors du hackathon, les développements ont d’enrichir les informations fournies dans l’infobulle : la prononciation (phonétique et audio) et la catégorie du mot (verbe, substantif, etc.). Par ailleurs, la fonctionnalité inverse a également été testée, consistant à remplacer certains mots sur une page en langue luxembourgeoise par leurs équivalents anglais. Une fenêtre de personnalisation permet d’ajuster le niveau de difficulté attendu. C’est donc avec hâte que nous attendons la publication de cette mise à jour.

Une nouvelle fonctionnalité pour lod.lu : la recherche d’antonymes

Si le dictionnaire en ligne propose la recherche de synonymes, rien n’existe à l’heure actuelle pour trouver les antonymes d’un terme. C’est le pari que s’est lancé un duo de développeurs – et il n’est pas simple de prime abord : il faut aller chercher la donnée ailleurs, en l’occurrence auprès de WordNet, une base de données lexicale pour l’anglais. La traduction anglaise, extraite de lod.lu, est soumise à WordNet, qui fournit l’antonyme. Ce dernier est, enfin, soumis à lod.lu, afin d’obtenir sa traduction en luxembourgeois. Cela ne fonctionne malheureusement pas dans tous les cas, la base de LOD étant aujourd’hui limitée à 30.000 mots. Au total, 3.110 antonymes ont été trouvés. Comme pour d’autres projets impliquant l’IA, des vérifications humaines méritent d’être conduites, afin de s’assurer de la pertinence de l’antonyme proposé. Des homonymes inadéquats peuvent par exemple se glisser dans les propositions.

Cette méthode innovante, basée sur le procédé de « data augmentation », est une proposition pertinente qui a le mérite de poser la question des chemins à emprunter pour offrir, à l’avenir, aux utilisateurs de lod.lu cette fonctionnalité.

À la recherche du radical pour faciliter les concordances

Indispensable dans le cadre des applications de traitement automatique des langues, la racinisation permet de retrouver la racine, soit le radical commun à toutes les formes grammaticales d’un mot. Cela ne correspond généralement pas à un mot réel. Ainsi, le radical de « chercher » est « cherch ». Selon les cas de figure, on peut préférer récupérer le lemme, qui est le mot de base non conjugué et non accordé. « Jouer » est un lemme possédant différentes flexions (« jouera », « jouons », « ont joué », etc.)

L’intérêt de cette approche est de limiter les mots différents qui présentent un sens relativement proche, dans le cadre d’une recherche sémantique par exemple. L’un des cas pratiques présentés lors du hackathon consisterait à évaluer la similarité entre les offres d’emploi ou classifier les compétences requises dans une offre d’emploi, grâce au traitement automatique des langues.

Le langage R et les données du LOD ont été mis à contribution, afin d’extraire de contenus luxembourgeois les lemmes. Le résultat, très fécond, pourrait être mis à profit dans le cadre de moteurs de recherche qualifiés pour la langue luxembourgeoise.

Un double objectif pour le Zenter fir d’Lëtzebuerger Sprooch

Le ZLS, représenté par Alexandre Ecker et Sven Collette, a accompagné les différentes équipes au cours de ces deux journées très actives. L’intention était double : d’abord faire connaître les possibilités et derniers développements des sites lod.lu et schreifmaschinn.lu, mais aussi comprendre quelles peuvent être les attentes spécifiques en termes de développement, quelles nouvelles sources l’API lod.lu pourrait proposer et, enfin et surtout, comprendre quelles réutilisations proposées au cours de ces deux journées pourraient, un jour ou l’autre, être transformées en vrais produits ou compléments des plateformes déjà en ligne.

C’est en effet l’un des intérêts de ces journées : faire en sorte que l’innovation née de ces séances de développement dans le cadre du GovTech Lab puisse être poursuivie, finalisée en produit grand public.

À peine cette session clôturée, se pose la question du hackathon 2024 : 2022 s’était centrée sur la thématique du logement, 2023 sur celle de la langue. En 2024, autour de quelle thématique aimeriez-vous nous retrouver ? Dites-le nous sans plus tarder.

Jeux de données 6