Playing around with automatic translation

DeepL is great. Can we break it in a fun way?

Mathias Sablé Meyer

Forward foreword for words

Despite their biological inspiration and performance achievements, [deep neural networks] systems differ from human intelligence in crucial ways.

Building Machines That Learn and Think Like People Lake, Brenden M., Tomer D. Ullman, Joshua B. Tenenbaum, and Samuel J. Gershman. “Building machines that learn and think like people.” Behavioral and Brain Sciences (2016): 1-101.

Remark

Disclaimers, thanks, and other remarks:

This is intended to be good fun. I really appreciate DeepL’s translations and I think the work of people behind it is brilliant. These edge cases are unfair to the real world capacities of this tool.

Counting is hard

Counting is, was I told, known to be hard for NN. Let’s see.

The number of “brother’s” in the translated version is not an monotonous, let alone linear, function of the number of “frère du”.

On the other hand, we reached a sensible limit for humans too: give a random human this very task, you’ll get some Weber’s law, some subitizing, etc.

No insult will be tolerated

Finding cycles — no Tortoise nor Hare were harmed

Detecting cycles of sn + 1 = fn(sn) where s0 is the given sentence and fn is the translation function that cycles through a given list of languages.

We stop as soon as a sentence is not new, and surprisingly enough I’ve only seen it diverge once — by not being able to count and having sentences’ size go to .

Our target text: TINTINOPHILE in Anthologie de l’OuLiPo de OuLiPo. It’s is a long list of curses in the style of Tintin’s Captain Haddock, with the additional constraint of having one for each letter, sorted alphabetically.

FR -> EN -> FR’s cycle

  1. Anthropopithèques ! Bachi-Bouzouks ! Coléoptères ! Doryphores ! Ectoplasmes ! Flibustiers ! Garnements ! Hurluberlus ! iconoclastes ! Jocrisses ! Khroumirs ! Logarithmes ! Macaques ! Naufrageurs ! Olibrius ! Paltoquets ! Quadrumanes ! Rhyzopodes ! Sapajous ! Technocrates ! Uzbeks ! Végétariens ! Wisigoths ! Xylographes ! Yéménites ! Zouaves !
  2. Anthropopitheques! Bachi-Bouzouks! Beetles! Coleopteres! Beetles! Doripphores! Ectoplasmas! Freebooters! Gurgling! Iconoclasts! Iconoclasts! Crushers! Khroumirs! Logarithms! Macaques! Shipwrecks! Shipwreckers! Olibrius! Paltoquets! Quadrumanes! Rhyzopods! Sapajous! Technologos!
  3. Anthropopitheques! Bachi-Bouzouks! Beetles! Coleopteres! Coleopteres! Beetles! Doripphores! Ectoplasmas! Freebooters! Gurgling! Iconoclasts! Iconoclasts! Crushers! Crushers! Khroumirs! Logarithms! Macaques! Shipwrecks! Shipwreckers! Olibrius! Palto!
  4. Anthropopithèques! Bachi-Bouzouks! Coccinelles! Coléoptères! Coleopteres! Coléoptères! Coccinelles! Doripphores! Ectoplasmes! Bottes libres! Gargouillis! Iconoclastes! Iconoclastes! Iconoclastes! Concasseurs! Broyeurs! Broyeurs! Khroumirs! Logarithmes! Macaques! Épaves! Navires! Bateaux!
  5. Beetles! Beetles! Beetles! Beetles! Beetles! Beetles! Beetles! Beetles! Beetles! Doripphorns! Ectoplasmas! Free boots! Gurgling! Iconoclasts! Iconoclasts! Iconoclasts! Crushers! Crushers! Shredders! Khroumirs! Logar!
  6. Coccinelles, coccinelles, coléoptères! Coccinelles, coléoptères! coccinelles, coléoptères! coccinelles, coléoptères, doripphornes, ectoplasmes, bottes gratuites, gargouillis, iconoclastes, iconoclastes, iconoclastes, écraseurs, broyeurs, broyeurs, broyeurs, khroumirs, logarithromes!
  7. Ladybugs, ladybugs, ladybugs, beetles, beetles! ladybugs, beetles, beetles! ladybugs, ladybugs, beetles, beetles, beetles, ectoplasmas, free boots, gurgling, iconoclasts, iconoclasts, iconoclasts, iconoclasts, crusher, crushers, crushers, crushers, grinders, grinders.
  8. Coccinelles, coccinelles, coccinelles, coccinelles, coléoptères! coccinelles, coccinelles, coléoptères! coccinelles, coccinelles, coccinelles, coléoptères! coccinelles, coccinelles, coccinelles, coléoptères, coccinelles, coléoptères, coccinelles, coléoptères, etc.
  9. Beetles, ladybirds, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, beetles! ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, beetles.
  10. Coccinelles, coccinelles, coccinelles, coccinelles, coccinelles, coccinelles, coccinelles, coccinelles, coccinelles, coccinelles, coccinelles, coccinelles, coccinelles, coccinelles, coccinelles, coccinelles, coccinelles, coccinelles, coccinelles, coccinelles!
  11. Ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs!
  12. Coccinelles, coccinelles, coccinelles, coccinelles, coccinelles, coccinelles, coccinelles, coccinelles, coccinelles, coccinelles, coccinelles, coccinelles, coccinelles, coccinelles, coccinelles, coccinelles, coccinelles, coccinelles, coccinelles, coccinelles, coccinelles, coccinelles, coccinelles, coccinelles, coccinelles.
  13. Ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs, ladybugs.
  14. Coccinelles, coccinelles, coccinelles, coccinelles, coccinelles, coccinelles, coccinelles, coccinelles, coccinelles, coccinelles, coccinelles, coccinelles, coccinelles, coccinelles, coccinelles, coccinelles, coccinelles, coccinelles, coccinelles, coccinelles, coccinelles, coccinelles, coccinelles, coccinelles, coccinelles.

FR -> EN -> DE -> ES -> IT -> NL -> PL -> FR’s cycle

  1. FR : Flibustiers ! Garnements ! Hurluberlus ! iconoclastes ! Jocrisses ! Khroumirs ! Logarithmes ! Macaques ! Naufrageurs ! Olibrius ! Paltoquets ! Quadrumanes ! Rhyzopodes ! Sapajous ! Technocrates ! Uzbeks ! Végétariens ! Wisigoths ! Xylographes ! Yéménites ! Zouaves !
  2. EN : Anthropopitheques! Bachi-Bouzouks! Beetles! Coleopteres! Beetles! Doripphores! Ectoplasmas! Freebooters! Gurgling! Iconoclasts! Iconoclasts! Crushers! Khroumirs! Logarithms! Macaques! Shipwrecks! Shipwreckers! Olibrius! Paltoquets! Quadrumanes! Rhyzopods! Sapajous! Technologos!
  3. DE : Käfer! Käfer! Käfer! Käfer! Doripphores! Ektoplasmen! Freibeuter! Gurgling! Ikonoklasten! Ikonoklasten! Ikonoklasten! Zerstörer! Khroumiren! Logarithmen! Makaken! Schiffswracks! Schiffbrüchige! Olibrius! Paltoquets!
  4. ES : Iconoclastos, iconoclastas, iconoclastas, iconoclastas, iconoclastas, destructores, khroumires, logaritmos, macacos, naufragios, náufragos, olibríes, paltoquets.
  5. IT : Iconoclasti, iconoclasti, iconoclasti, iconoclasti, iconoclasti, iconoclasti, distruttori, khroumires, logaritmi, macachi, naufraghi, relitti, relitti, olibríes, paltoquets.
  6. NL : Iconoclasten, beeldenstormers, beeldenstormers, beeldenstormers, beeldenstormers, beeldenstormers, beeldenstormers, beeldenstormers, vernielaars, vernietigers, khroumires, logaritmen, makaken, makaken, scheepswrakken, wrakken, wrakken, wrakken, olibríes, paltoquetten.
  7. PL : Ikonoklastry, obrazoburcy, obrazoburcy, obrazoburcy, obrazoburcy, obrazoburcy, obrazoburcy, obrazoburcy, obrazoburcy, obrazoburcy, obrazoburcy, obrazoburcy, obrazoburcy, niszczyciele, niszczyciele, eksterminatorzy, ochraniacze, logarytmy, makaki, makaki, wraki, wraki statków.
  8. FR : Iconoclastes, iconoclastes, iconoclastes, iconoclastes, iconoclastes, iconoclastes, iconoclastes, iconoclastes, iconoclastes, iconoclastes, iconoclastes, iconoclastes, iconoclastes, iconoclastes, iconoclastes, iconoclastes, iconoclastes, iconoclastes, iconoclastes, iconoclastes, iconoclastes, iconoclastes, iconoclastes, iconoclastes
  9. EN : Iconoclasts, iconoclasts, iconoclasts, iconoclasts, iconoclasts, iconoclasts, iconoclasts, iconoclastes, iconoclasts, iconoclasts, iconoclastes, iconoclasts, iconoclasts, iconoclasts, iconoclastes, iconoclasts, iconoclasts, iconoclasts, iconoclasts, iconoclasts, iconoclasts, iconoclasts, iconoclasts, iconoclasts, iconoclasts, iconoclasts, iconoclasts
  10. DE : Ikonoklasten, Ikonoklasten, Ikonoklasten, Ikonoklasten, Ikonoklasten, Ikonoklasten, Ikonoklasten, Ikonoklasten, Ikonoklasten, Ikonoklasten, Ikonoklasten, Ikonoklasten, Ikonoklasten, Ikonoklasten, Ikonoklasten, Ikonoklasten, Ikonoklasten, Ikonoklasten, Ikonoklasten, Ikonoklasten, Ikonoklasten, Ikonoklasten, Ikonoklasten
  11. ES : Iconoclasts, iconoclasts, iconoclasts, iconoclasts, iconoclasts, iconoclasts, iconoclasts, iconoclasts, iconoclasts, iconoclasts, iconoclasts, iconoclasts, iconoclasts, iconoclasts, iconoclasts, iconoclasts, iconoclasts, iconoclasts, iconoclasts, iconoclasts, iconoclasts, iconoclasts.
  12. IT : Iconoclasti, iconoclasti, iconoclasti, iconoclasti, iconoclasti, iconoclasti, iconoclasti, iconoclasti, iconoclasti, iconoclasti, iconoclasti, iconoclasti, iconoclasti, iconoclasti, iconoclasti, iconoclasti, iconoclasti, iconoclasti, iconoclasti, iconoclasti, iconoclasti, iconoclasti, iconoclasti, iconoclasti, iconoclasti.
  13. NL : Iconoclasten, beeldenstormers, beeldenstormers, beeldenstormers, beeldenstormers, beeldenstormers, beeldenstormers, beeldenstormers, beeldenstormers, beeldenstormers, beeldenstormers, beeldenstormers, beeldenstormers, beeldenstormers, beeldenstormers, beeldenstormers, beeldenstormers, beeldenstormers, beeldenstormers, beeldenstormers, beeldenstormers, beeldenstormers, beeldenstormers en beeldenstormers.
  14. PL : Ikonoklastry, obrazoburcy, obrazoburcy, obrazoburcy, obrazoburcy, obrazoburcy, obrazoburcy, ikonoklastrzy, obrazoburcy, obrazoburcy, obrazoburcy, obrazoburcy, obrazoburcy, obrazoburcy, obrazoburcy, obrazoburcy, obrazoburcy, obrazoburcy, obrazoburcy, obrazoburcy, obrazoburcy, obrazoburcy,
  15. FR : Iconoclastes, iconoclastes, iconoclastes, iconoclastes, iconoclastes, iconoclastes, iconoclastes, iconoclastes, iconoclastes, iconoclastes, iconoclastes, iconoclastes, iconoclastes, iconoclastes, iconoclastes, iconoclastes, iconoclastes, iconoclastes, iconoclastes, iconoclastes, iconoclastes, iconoclastes, iconoclastes, iconoclastes, icoclastes
  16. EN : Iconoclasts, iconoclasts, iconoclasts, iconoclasts, iconoclasts, iconoclasts, iconoclasts, iconoclastes, iconoclasts, iconoclasts, iconoclastes, iconoclasts, iconoclasts, iconoclasts, iconoclastes, iconoclasts, iconoclasts, iconoclasts, iconoclasts, iconoclasts, iconoclasts, iconoclasts, iconoclasts, iconoclasts, iconoclasts, iconoclasts, iconoclasts

I have no intuition about why one word takes over all the others. But this is a hard test case, most words are extremely uncommon and untranslatable anyway.

It does indicate, however, that some structural strength of the “!” is entirely lost in translation, to the point where one single word can leak over and replace all others.

Hypothetical worlds

This is a sentence used to think about embedded hypothetical worlds. Remark how the word “actually” takes you back not to reality, but instead shifts you up one world in the hierarchySomething something metaprogramming, escape, Lisp’s unquote

I first heard this sentence in a great talk from Peter Pagin, “Shifting Parameters and Propositions”.

I put it here because I’m amazed by DeepL’s result. It stabilises immediately and the result is the starting point minus “actually” — which happens to be the reason this sentence was forged.

  1. If you had written novels and there were rumors that you didn’t write any of the novels you actually wrote then you would be upset.
  2. Si vous aviez écrit des romans et qu’il y avait des rumeurs selon lesquelles vous n’écriviez aucun des romans que vous avez écrits, vous seriez contrarié.
  3. If you had written novels and there were rumours that you didn’t write any of the novels you wrote, you would be upset.
  4. Si vous aviez écrit des romans et qu’il y avait des rumeurs selon lesquelles vous n’écriviez aucun des romans que vous avez écrits, vous seriez contrarié.

Misinterpretation

Some sentences are inherently ambiguous. Here’s one that is not but that the translators manages to misinterpret and yet find a super small cycle:

  1. FR : Il mange un bon avocat.
  2. EN : He eats a good lawyer.
  3. FR : Il mange un bon avocat.

“Avocat” in French is both “lawyer” and “avocado”, guess which one I meant here.

Let’s play a bit more on the ambiguity and see what it gives.

  1. FR : Il aime les avocats mûres.
  2. IT : Gli piace l’ avocado maturo.
  3. DE : Er mag reife Avocado.
  4. ES : Le gusta el aguacate maduro.
  5. EN : He likes ripe avocado.
  6. NL : Hij houdt van rijpe avocado.
  7. PL : Uwielbia dojrzałe awokado.
  8. FR : Il adore les avocats matures.
  9. IT : Ama gli avvocati maturi.
  10. DE : Er liebt reife Anwälte.
  11. ES : Le encantan los abogados maduros.
  12. EN : He loves mature lawyers.
  13. NL : Hij houdt van volwassen advocaten.
  14. PL : Kocha dojrzałych prawników.
  15. FR : Elle adore les avocats matures.
  16. IT : Ama gli avvocati maturi.

The first few translation assume the fruit, but then not only does it moves on to the person, but it changes the sex of the subject. The last French sentence would be translated to “She {loves, adores, worships}as opposed to "aimer" which would be "love" alone

mature lawyers.”

Context sensitivity level over 9000

The Internationale, Eugène Pottier. Early version, published by Robert Brécy.

Here’s the first couplet being cycled through FR -> EN -> FR.

  1. Debout ! l’âme du prolétaire

    Travailleurs, groupons-nous enfin.

    Debout ! les damnés de la terre !

    Debout ! les forçats de la faim !

    Pour vaincre la misère et l’ombre

    Foule esclave, debout ! debout !

    C’est nous le droit, c’est nous le nombre :

    Nous qui n’étions rien, soyons tout :

     

    C’est la lutte finale

    Groupons-nous et demain

    L’Internationale

    Sera le genre humain.

  2. Wake up! the soul of the proletarian Workers, let’s finally group together. Wake up! the damned of the earth! Wake up! the hungry! to overcome misery and the shadow Slave Crow, stand up! stand up! It’s us the right, it’s us the number: We who were nothing, let’s be everything: It’s the final struggle Group us and tomorrow the International will be the kind of thing!
  3. Réveillez-vous! l’âme des Travailleurs prolétariens, rassemblons-nous enfin. Réveillez-vous! les damnés de la terre! Réveillez-vous! les affamés! pour vaincre la misère et l’ombre du Corbeau des Esclaves, levez-vous! levez-vous! c’est nous le droit, c’est nous le numéro: Nous qui n’étions rien, soyons tout: c’est la lutte finale, groupons nous et demain l’Internationale sera le genre de chose.
  4. Wake up! the souls of the Proletarian Workers, let us come together at last! Wake up! the damned of the earth! Wake up! the hungry! to overcome the misery and the shadow of the Raven of the Slaves, rise up! rise up! it is us the right, we are the number: We who were nothing, let us be everything: it is the final struggle, it is the final struggle.
  5. Réveillons-nous enfin, réveillons les âmes des ouvriers prolétariens, rassemblons-nous enfin! réveillons-nous! réveillons les damnés de la terre! réveillons-nous! les affamés! pour vaincre la misère et l’ombre du Corbeau des esclaves, lève-toi! lève-toi! c’est nous qui avons raison, nous sommes le nombre: Nous qui n’étions rien, soyons tout: c’est la lutte finale, c’est la lutte finale.
  6. Let us awake at last, let us awake the souls of the proletarian workers, let us come together at last. Let us awake! let us awake the damned of the earth! let us awake! let us awake! let us awaken the hungry! to overcome the misery and the shadow of the Raven of slaves, let us rise up! it is we who are right, we are the number: We who were nothing, let us be everything: get up!
  7. Réveillons-nous enfin, réveillons enfin les âmes des ouvriers prolétariens, réveillons-nous enfin ensemble, réveillons-nous enfin, réveillons les âmes des ouvriers prolétariens, réveillons les damnés de la terre, réveillons-nous! réveillons les affamés, réveillons-nous! pour vaincre la misère et l’ombre du Corbeau des esclaves, réveillons-nous! réveillons les affamés! pour vaincre la misère et l’ombre du Corbeau des esclaves!
  8. Let us awake at last, let us awaken the souls of the proletarian workers, let us awaken together, let us awaken at last, let us awaken the souls of the proletarian workers, let us awaken the damned of the earth, let us awaken the hungry, let us awaken! to overcome the misery and the shadow of the Raven of slaves, let us awaken!
  9. Réveillons-nous enfin, réveillons enfin les âmes des ouvriers prolétariens, réveillons-nous ensemble, réveillons enfin les âmes des ouvriers prolétariens, réveillons enfin les damnés de la terre, éveillons les affamés, réveillons nous! pour vaincre la misère et l’ombre du Corbeau des esclaves, réveillons nous!
  10. Let us awake at last, let us awaken the souls of the proletarian workers, let us awaken together, let us awaken the souls of the proletarian workers, let us awaken the damned of the earth, let us awaken the hungry, let us awaken together! to overcome the misery and the shadow of the Raven of Slaves, let us awaken!
  11. Réveillons-nous enfin, réveillons enfin les âmes des ouvriers prolétariens, réveillons-nous ensemble, éveillons les âmes des ouvriers prolétariens, réveillons les damnés de la terre, éveillons les affamés, réveillons ensemble! pour vaincre la misère et l’ombre du Corbeau des Esclaves, réveillons nous!
  12. Let us awake at last, let us awaken the souls of the proletarian workers, let us awaken together, let us awaken the souls of the proletarian workers, let us awaken the damned of the earth, let us awaken the hungry, let us awaken together! to overcome the misery and the shadow of the Raven of the Slaves, let us awaken!
  13. Réveillons-nous enfin, réveillons enfin les âmes des ouvriers prolétariens, réveillons-nous ensemble, éveillons les âmes des ouvriers prolétariens, réveillons les damnés de la terre, éveillons les affamés, réveillons ensemble! pour vaincre la misère et l’ombre du Corbeau des Esclaves, réveillons nous!

What. Re-read 1. and notice how “Slave Crow” popped in. Roughly translated I would expect, instead, “Enslaved masses”. Now, the only link I can see between a capitalised “Crow” and “Slaves” are the Jim Crow Laws? Or is it just “Slave crowds” that got messed up with?

But then it becomes a “Raven”?

We argue that these machines should build causal models of the world that support explanation and understanding, rather than merely solving pattern recognition problems.

Building Machines That Learn and Think Like People Lake, Brenden M., Tomer D. Ullman, Joshua B. Tenenbaum, and Samuel J. Gershman. “Building machines that learn and think like people.” Behavioral and Brain Sciences (2016): 1-101.

I’m open to suggestions!