angle-uparrow-clockwisearrow-counterclockwisearrow-down-uparrow-leftatcalendarcard-listchatcheckenvelopefolderhouseinfo-circlepencilpeoplepersonperson-fillperson-plusphoneplusquestion-circlesearchtagtrashx

Améliorer un peu les traductions DeepL API automatiques

On ne peut pas s'attendre à de bonnes traductions d'une machine si elle ne connaît pas le contexte.

31 août 2019 Mise à jour 12 septembre 2019
post main image
unsplash.com/@danielkorpai

Bien sûr, rien n'est comparable à une traduction par un traducteur professionnel. La traduction automatique est difficile. DeepL essaie d'améliorer les traductions par apprentissage automatique, mais elles sont encore loin d'utiliser le bon contexte.

Permettez-moi de vous donner un exemple. Ce site Web est à propos de Python, Flask,, réseau informatique, etc DeepL ne le sait pas parce que nous ne pouvons pas le dire. Mais il devrait savoir ! Le terme " ' 'Flask" peut être traduit en allemand par " Flasche " (bouteille). Le terme "Python a des roues " peut être traduit en machine : "Python chapeau Räder". Le terme " ' 'port 25" peut être traduit en français par " machine " : Hafen 25'. Tous ont tort. n'aurait pas DeepL dû les traduire, mais comment peut-il le savoir ?

Contexte de la traduction

Il n'y a qu'un seul moyen d'obtenir une meilleure traduction, c'est de fournir un contexte de traduction à. Dans ce cas par exemple : translate_for_context : 'Python, 'Flask. Une autre façon serait de donner DeepL quelques pages du site Web et de le laisser déterminer le contexte lui-même. Malheureusement, les deux ne sont pas possibles pour le moment.

J'ai lu des articles sur des gens qui comparent DeepL la traduction à Google Translate. Oui, cela DeepL semble être un meilleur traducteur de contexte (parfois) mais est-ce toujours une bonne idée d'essayer de traduire dans un contexte ? Et quel est le contexte dans ce cas ? Et un traducteur humain sait-il encore quelle est l'intention du texte original ?

De meilleures traductions

Alors, comment pouvons-nous éviter les problèmes ci-dessus et obtenir une meilleure traduction, ou pas de traduction du tout ? DeepL suggère que vous mettez les mots que vous ne voulez pas traduire entre les balises, par exemple <x> et </x>, et puis ajouter cette balise aux paramètres ignore_tags. Cela fonctionnera, mais c'est beaucoup de travail. Dans chaque texte, nous devons insérer des balises pour les mots que nous ne voulons pas traduire. Je ne veux pas polluer mes textes avec des balises ne traduisant pas.

Ce site Web contient des articles de blog sur Python, Flasketc. Ainsi, au lieu de mettre des balises dans tous les messages du blog, nous pouvons créer une liste de mots réservés, ce qui signifie : ne pas traduire ces mots. C'est encore beaucoup de travail parce que nous devons aussi vérifier le texte de notre blog pour les mots que nous ne voulons pas être traduits. Mais cela semble une façon raisonnable d'obtenir une première version d'un texte traduit. Et le travail que nous faisons maintenant n'a pas besoin d'être fait avec les prochains billets de blog.

Une liste de mots réservés

J'ai créé une liste de mots réservés et je les ai remplacés par des balises intraduisibles avant d'alimenter le texte en texte, ce qui m'a obligé à revoir phrase par phrase, mot par mot, les textes de la langue par défaut (anglais) DeepL API. De cette façon, j'ai créé une liste d'une centaine de mots réservés, de termes, y compris ' 'many-to-many, ' 'port 25, ' ', ' 'multistage, ' ''netmask, etc. Je devais aussi m'assurer que je n'avais pas de versions différentes de ces termes, comme MariaDBMariadb, MariaDb. Les traductions qui en résultent sont maintenant bien meilleures, mais les textes sont encore loin d'être acceptables. Ce dont j'ai vraiment besoin, ce sont des listes. Une liste qui contient tous les mots-clés pour Python, une liste qui contient tous les mots-clés pour Flask, une liste qui contient tous les mots-clés pour les termes de réseaux informatiques, et certaines de ces listes doivent également avoir des traductions car tous les termes ne sont pas nécessairement en anglais dans une autre langue. Et puis je dois encore exclure des mots moi-même parce qu'ils sont liés au billet de blog lui-même et ne sont pas dans une liste.

Résumé

Les résultats de la traduction automatique peuvent être acceptables pour la parole naturelle, mais ils ne sont certainement pas assez bons pour des textes techniques comme sur ce site Web. Ce serait bien si nous pouvions fournir DeepL un contexte (Python, Flaskréseautage, etc.) ou être capables de laisser DeepL déterminer ce contexte par lui-même, par exemple en fournissant quelques pages web connexes. Bien que mon site web soit plutôt une vitrine, je veux certainement que les traductions soient acceptables. Pour les prochains billets de blog, je continuerai d'ajouter des mots réservés à ma liste, mais je suivrai aussi les DeepL conseils pour mettre des balises autour des mots que je ne veux pas être traduit. Mais pas trop.

Liens / crédits

DeepL
https://www.deepl.com/home

En savoir plus...

DeepL

Laissez un commentaire

Commentez anonymement ou connectez-vous pour commenter.

Commentaires

Laissez une réponse

Répondez de manière anonyme ou connectez-vous pour répondre.