OpenNMT: pourquoi un spécialiste de la traduction automatique passe à l’Open Source

Dans Paris Innovation Review

Un Workshop s’est tenu sur le sujet OpenNMT (Open source initiative for Neural Machine Translation) début mars à Paris, et la totalité des slides sont mis à disposition sur GitHub.

Le CTO de l’acteur industriel de ce marché de niche, Systran, explique ci-dessous pourquoi il a mis sa technologie en Open-Source.


 

OpenNMT: pourquoi un spécialiste de la traduction automatique passe à l’Open Source

Les réseaux neuronaux sont désormais la technologie dominante dans le domaine de la traduction automatique. Or le développement de ces nouveaux outils se fait principalement au sein d’écosystèmes ouverts. Les acteurs spécialisés, qui ont longtemps veillé jalousement sur des lignes de codes qui étaient leurs principaux actifs, peuvent-ils trouver leur place dans ce nouveau monde? Systran a fait ce choix. Pourquoi et comment?

Lundi 5 mars 2018

Paris Innovation Review – Qui sont aujourd’hui les principaux acteurs dans le secteur de la traduction automatique? Et quelle est la place de spécialistes comme Systran?

Jean Senellart – Google est un acteur majeur du domaine qui, après avoir utilisé la technologie Systran dans les années 2000, a développé sa propre technologie qu’il maintient à un niveau de pointe. Il participe grandement à la démocratisation de la traduction automatique. Mais Google ne vend pas directement de la traduction automatique, en tout cas pas pour les mêmes cas d’usage que nous, c’est plutôt un service parmi beaucoup d’autres au sein de leur modèle économique fondé principalement sur la publicité.

Linguee, avec son service DeepL, est un nouveau venu, dont le modèle économique est encore incertain : apparemment, il y a une couche gratuite et des services premium. Mais pour quels utilisateurs ?

Le « secteur » proprement dit, c’est-à-dire les entreprises qui vendent des solutions de traduction automatique spécialisées à d’autres entreprises, est plutôt restreint.

La capacité à traiter des domaines spécialisés est un enjeu clé dans le secteur professionnel, tout comme la qualité et la fiabilité du résultat final. Si l’on vend de la traduction, c’est parce qu’elle est meilleure que ce qu’on peut trouver sur Google ou sur d’autres services en ligne. La traduction générique, c’est très bien et cela permet à mes enfants de faire leurs devoirs plus rapidement, mais pour les documents internes d’une multinationale, on est loin du compte. Prenez un fabricant de pneus, par exemple : la traduction générique ne convient pas, parce qu’elle ne comprend pas ce qu’est la manufacture de pneus, et tous les process impliqués. Ce type de client a besoin de la traduction spécialisée. C’est le créneau de Systran.

Les besoins des clients peuvent varier. On voit par exemple se développer des besoins dans l’investigation électronique où de très grands volumes de données multilingues doivent être comprises et analysées pour trouver l’information recherchée dans des délais très courts.

Il y a aussi les petits acteurs de niche, et la traduction humaine. Dans ce domaine de la traduction, notamment dans des champs spécialisés comme le juridique ou la défense, la question de la confiance est majeure. Est-ce que les disruptions sont possibles en la matière? Un nouveau régime de confiance peut-il s’installer, avec des paramètres totalement différents?

Oui, et c’est précisément ce qui est en train de se produire avec le passage à des technologies Open Source, qui sont profondément disruptives, notamment pour un acteur qui fait référence et « capitalise » sur cette valeur de référence.

Observons d’emblée que cette notion de référence a été fragilisée par la révolution numérique. Quand j’ai commencé à faire des conférences il y quinze ans, la traduction automatique était un monde très fermé, et ceux qui y avaient accès disaient : « On utilise tel ou tel système, mais Systran c’est notre baseline. » Nous sommes un acteur de référence, avec une présence sur trois continents et 50 ans d’histoire – une de nos particularités est d’avoir anticipé et traversé toutes les phases de développement technologique. Notre notoriété allait de pair avec cette valeur de référence. Or aujourd’hui, quand on évoque la traduction automatique, on pense d’abord à Google Translate. En se démocratisant, le champ de la traduction automatique a brouillé les références.

Mais nous ne parlons là que de l’érosion d’un ancien système de référence. Or ce qui est intéressant, et commence à peine à se jouer, c’est l’émergence d’un nouveau régime de confiance, et avec lui un autre référentiel. Dans notre domaine c’est ce qui est en train de se passer autour de l’Open Source.

S’engager dans l’open source peut paraître paradoxal, puisque cela consiste à partager des lignes de code qui sont des actifs particulièrement précieux pour un éditeur de logiciels.

Ils l’étaient encore hier. Mais plusieurs raisons plaidaient pour un changement radical.

Le nombre de lignes de code que nous avions cumulées s’élevait à 10 millions, en trente ans. C’est beaucoup. C’était sur cette propriété intellectuelle que reposait la valeur de l’entreprise. Nous avions des brevets, des codes avaient été déposés, si on nous volait ces 10 millions de lignes de code, nous étions en grand danger.

Ensuite est venue la deuxième génération de traduction automatique : la traduction statistique. C’est celle de Google Translate, par exemple. Elle est fondée sur des optimisations, des algorithmes distribués : ce sont des calculs complexes, des algorithmes de haut niveau. Pour faire un Google Translate en traduction statistique, il fallait à peu près 100 000 lignes de code mais des infrastructures de production extrêmement optimisées.

Un moteur neuronal, c’est 5000 lignes de code.

La traduction automatique se fait aujourd’hui avec une troisième génération de moteurs, les réseaux de neurones. Or un moteur neuronal, c’est 5000 lignes de code. De deux choses l’une : soit vous protégez vos 5000 lignes de code, et elles seront uniques mais isolées et potentiellement rapidement dépassées, soit vous les mettez sur la place publique, et cela vous permet, d’une part, de jouer un rôle dans un écosystème particulièrement dynamique, et, d’autre part, en les partageant avec cette communauté, d’être sûr que ces 5000 lignes sont les meilleures.

C’est notre stratégie. Elle tient à une considération très simple : on ne peut pas protéger quelque chose qu’un étudiant brillant en master pourrait faire en cinq jours. Ce n’est plus le code qui doit être protégé, c’est quelque chose de beaucoup plus subtil : les données et le savoir-faire.

Ce qui créée aujourd’hui la valeur, c’est l’entraînement de ce réseau neuronal, et donc la capacité à lui fournir des textes, des documents, de la donnée référencée et de qualité?

Oui, et avec les données qui viendront de nos différents domaines d’expertise, le savoir-faire et la persistance. Aujourd’hui, en cinq jours, vous pouvez entraîner un moteur anglais-français, mais il faut beaucoup plus pour pouvoir faire toutes les paires de langue. Et ce n’est pas parce que vous l’avez fait une fois que c’est fini : vous devez le faire évoluer. Ce sont la persistance dans le temps et le savoir-faire qui font la différence.

Le passage à l’open source représente quand même une forme de lâcher-prise. Ce n’est pas un choix fait à la légère?

Non, mais entre la simple intuition et la stratégie entièrement calculée, il y a un monde. Quand nous avons lancé la première version de notre moteur neuronal en open source, sur le framework « OpenNMT », nous nous sommes interrogés sur les risques que nous prenions. Et que souhaitions-nous exactement ? La réponse n’était pas évidente. Mais ce qui était clair, c’est que si nous n’y allions pas nous perdions un potentiel. Et aujourd’hui, plus on avance, plus cela devient une évidence.

Dès qu’on est dans l’open source, on est dans un régime de relation spécifique, avec un modèle d’écosystème. Qui sont les principaux membres de cet écosystème?

C’est un étudiant de Harvard, Yoon Kim, qui a créé la première version de notre framework, et c’est ainsi que tout a commencé. Depuis, tout a été réécrit essentiellement par Systran, mais il y a aussi une grosse communauté de recherche ajoutant des fonctionnalités plus expérimentales et publiant de nouveaux algorithmes basés sur OpenNMT. Avoir un acteur industriel actif est un enjeu crucial dans l’open source : pour qu’un écosystème vive, il faut le maintenir. Si vous arrêtez de suivre vos utilisateurs, ils vont aller ailleurs.

Maintenir et développer une communauté open source demande un investissement sur la durée : des développeurs qui se dédient à un code et répondent à toutes les questions – y compris, parfois, des questions de nos concurrents directs qui nous signalent qu’une fonctionnalité ne marche pas ou nous demandent comment procéder sur tel ou tel point. Si on joue le jeu de l’open source, on est obligé de leur répondre. Mais en répondant à toutes ces questions, nous sommes – et nous resterons – au centre du jeu.

Vous évoquiez un nouveau régime de confiance. Dans le monde des développeurs, beaucoup d’histoires circulent sur la désinvolture des grandes plateformes : elles lancent quelque chose, les gens suivent, mais tout d’un coup il n’y a plus rien, et la communauté se sent trahie, elle a l’impression d’avoir été entraînée dans une impasse. Le nouveau régime de confiance est-il fondé sur une responsabilité assumée de l’animateur de l’écosystème, un engagement dont les autres acteurs savent qu’il sera tenu?

C’est exactement ça. Mais j’ajouterais que cela ne peut se faire en solo. Harvard conserve ainsi un rôle de référent sur nos projets.

Nous sommes aussi assez proches de l’équipe de Facebook, parce que nous utilisons un framework, Torch, dont le développement est principalement animé par Facebook Research. Ce qui s’est passé l’année dernière est d’ailleurs intéressant, et permet de mieux comprendre ces nouvelles façons de travailler. Ils ont lancé une nouvelle version de Torch, PyTorch et, du jour au lendemain, ils nous ont dit qu’ils allaient réduire la voilure sur Torch et faire d’OpenNMT leur projet phare pour ce nouveau framework. Très bien ! Leurs ingénieurs ont commencé à travailler ; ils ont pris le code d’OpenNMT, et ils ont développé OpenNMT sur PyTorch. Après ce développement, ils nous ont repassé la main et nous avons décidé de le maintenir, et PyTorch est devenu un des frameworks les plus utilisé d’OpenNMT.

Facebook n’aurait pas assuré la maintenance de cette version. Ce n’est tout simplement pas leur métier. Cela ne les intéressait pas d’entraîner les modèles, de vérifier qu’ils marchaient, d’intégrer dans le framework les derniers papiers publiés. Ils ont fait le premier jet et c’était un premier jet excellent, qui leur a aussi permis de valider PyTorch.

Comme vous le voyez, chacun a sa place dans cet écosystème. Notre rôle n’est pas le plus spectaculaire : nous sommes celui qui continue, qui fait le travail sérieusement, qui anime la communauté. Systran reste focalisé sur la traduction, qui est notre ligne directrice.

Beaucoup de gens se demandent comment une entreprise peut survivre aujourd’hui – le terme de persistance, que vous avez utilisé, semble être une des clés de la survie. Il faut les moyens d’assurer cette persistance: pour conserver des clients, il faut conserver des développeurs autour de vous, et pour conserver des développeurs, il faut leur faire une promesse qui sera tenue.

Oui. C’est facile de démarrer, c’est plus compliqué de continuer. Aujourd’hui, beaucoup de société disent qu’elles utilisent OpenNMT en interne. Booking.com, par exemple, utilise OpenNMT. Pour eux la traduction est stratégique et ils ont des volumes gigantesques de données, en particulier des données générées par les utilisateurs (User Generated Content) que la traduction automatique permet de valoriser, et ils donc ont une équipe interne dédiée qui a fait le choix d’OpenNMT. Pour nous, cela ne fait pas un client, mais cela fait une référence.

Cela peut aussi générer d’autres besoins. Nous sommes par exemple en discussion avec un grand éditeur de logiciel. Ils ont une équipe de localisation interne qui utilise OpenNMT, ils ont de bons résultats, mais ils aimeraient aller plus loin, donc ils nous demandent de l’aide. Habituellement, on aurait abordé ce type de client en voulant leur vendre des licences Systran, mais ce n’est pas ce qu’ils nous demandent : ils nous demandent de les aider à aller plus loin sur OpenNMT.

C’est un nouveau modèle d’affaires, dérivé de cet effort que nous avons fourni sur l’open source ; un modèle  que nous n’avions pas vraiment anticipé, mais qui arrive tout seul, et nous permet de renforcer ce qu’on appellerait, dans d’autres secteurs, notre maîtrise industrielle.

On en revient à la question de la confiance – confiance ici dans la stabilité des algorithmes, dans la durabilité d’une solution. Celui qui garantit cette stabilité fait naturellement référence. Mais on peut aussi construire un avantage comparatif sur la capacité à expliquer, à maîtriser et communiquer les règles d’algorithmes gratuits, mais en perpétuelle évolution. C’est un positionnement nouveau: celui d’expert du fonctionnement d’un code que tout le monde peut utiliser, un expert capable de transmettre un savoir-faire nouveau, issu de la communauté open source.

Notre objectif, c’est d’expliquer pourquoi et comment ça marche. C’est de l’éducation. Nous ne sommes plus en train de vendre un produit, mais d’expliquer pourquoi vous devez faire confiance à cette technologie ; et après, éventuellement, nous pouvons vous aider à la développer davantage.

Par exemple, nous avons créé et sommes très actifs sur le forum d’OpenNMT où nous expliquons nos choix, nous donnons des résultats d’expérience, quelle est notre approche. Nous donnons nos recettes, expliquons pourquoi nous pensons que cela marche mieux, suggérons comment améliorer.

L’enjeu est aussi de mobiliser la communauté pour avancer vers cet « algorithme universel » qui est l’unde nos objectifs. Nous cultivons ce rêve d’un réseau de neurones qui serait capable de parler toutes les langues dans toutes les spécialités…

Mais il y a aussi une autre convergence qui se dessine, qu’on appelle la convergence des modalités : aujourd’hui, on voit que le traitement de la voix, du texte, et de l’image, utilisent les mêmes technologies, et sont en train de converger. C’est extraordinaire ! Des papiers ont déjà été publiés, par exemple un papier des chercheurs d’eBay où ils montrent que pour traduire les items de la plateforme, on obtient de meilleurs résultats en donnant à l’algorithme les photos que soumettent les utilisateurs. C’est d’ailleurs intuitif : par exemple si votre item s’appelle « Apple » et que sur l’image il y a un ordinateur ou un meuble en pommier, la traduction est différente. La reconnaissance d’image aide à la traduction : c’est la convergence.