Moderación multilingüe: por qué traducir no basta para detectar la toxicidad
La traducción literal elimina justo las señales que necesitas. Por qué ganan los modelos en el idioma original y qué se rompe cuando tomas atajos.
Toda plataforma que crece acaba recibiendo la misma propuesta del equipo de ingeniería: "¿No podemos traducir primero los mensajes de los usuarios al inglés, pasar el modelo de moderación y volver a traducir si hace falta?". Suena eficiente. También es una forma estupenda de construir un sistema de moderación que deja pasar justo lo que necesitas detectar.
Lo que se pierde al traducir
La traducción automática está pensada para conservar el significado. La moderación necesita conservar la señal, y no es lo mismo.
- Jerga e insultos. Un insulto en catalán puede traducirse por la palabra literal en inglés ("donkey", "goat") y perder por completo su carga ofensiva. Entonces el modelo ve un texto inocente.
- Registro y tono. El sarcasmo, las amenazas y la escalada dependen a menudo de formas verbales, diminutivos y partículas que la traducción borra.
- Ofuscación intencionada. Los usuarios esquivan los filtros cambiando caracteres, metiendo espacios y mezclando alfabetos. La traducción "limpia" la ofuscación de camino al inglés, y la señal se va con ella.
- Daño que depende del contexto. Las amenazas que codifican un contexto político o étnico local acaban traducidas, una y otra vez, como frases genéricas.
Si lo mides con tu propio tráfico, sale siempre lo mismo: un modelo solo en inglés detrás de un traductor funciona bastante peor con el texto traducido que con el inglés, y peor que un modelo que lee el idioma original.
Por qué ganan los modelos en el idioma original
Los modelos de moderación en el idioma original se entrenan con datos etiquetados en ese idioma, por anotadores nativos. Eso les permite aprender:
- Las normas propias del idioma. Lo que cuenta como "desacuerdo educado" frente a "insulto" varía. El portugués de Brasil y el de Portugal no coinciden. Tampoco el español de México y el de Argentina.
- La morfología. Idiomas como el finés, el turco o el ruso meten mucho significado en las terminaciones de las palabras. Los tokenizadores entrenados con inglés pierden la mitad por el camino.
- El alfabeto y la ortografía. El árabe, el tailandés y el chino no usan los espacios como las lenguas romances. Los patrones de ofuscación son distintos.
Enrutar por idioma
Lo que recomendamos:
- Detectar primero el idioma. Barato y rápido (menos de un milisegundo con los detectores modernos).
- Enviarlo a un modelo específico del idioma. Pesos de modelo distintos para los N idiomas principales que atiendes. Un modelo multilingüe de respaldo para la larga cola de idiomas minoritarios.
- Mantener una red de seguridad multilingüe. Para el contenido que mezcla idiomas (spanglish, hinglish) y para los idiomas con muy pocos datos de entrenamiento, un modelo multilingüe se ocupa del último 5 % a 10 % del tráfico.
Así la inferencia cara solo se lanza donde está justificada, y la latencia se mantiene baja porque cada modelo especializado puede ser mucho más pequeño que un megamodelo "uno para gobernarlos a todos".
La versión de ToxicFilter es más sencilla, y conviene decirlo claro: las comprobaciones instantáneas llevan listas de palabras para ocho idiomas (inglés, español, portugués, francés, italiano, alemán, catalán y neerlandés), y el modelo, cuando lee un texto, lee muchos más que esos ocho. Fuera de ellos, una respuesta limpia de las comprobaciones instantáneas no es prueba de nada. La página de idiomas detalla qué cubre cada parte.
Contexto cultural no es lo mismo que idioma
Ni siquiera con modelos en el idioma original está todo resuelto. Tonto es una palabra suave para "bobo" en España, pero un insulto más duro en partes de Latinoamérica. Chunga es un adjetivo coloquial en el español peninsular, pero en otros sitios puede tomarse al pie de la letra. Los dialectos regionales importan.
Lo tratamos en detalle en nuestro artículo sobre el problema del contexto cultural, pero en resumen: detectar el idioma no basta. También conviene una puntuación que tenga en cuenta la región o el dialecto cuando importa.
Qué preguntarle a un proveedor
Si estás evaluando API de moderación para un producto multilingüe, estas son las preguntas:
- ¿Qué idiomas tienen modelos nativos (no flujos con traducción)?
- ¿Cuál es el F1 en conjuntos de prueba en el propio idioma, no traducidos?
- ¿Cómo gestionan el cambio de idioma y los alfabetos mezclados?
- ¿Hay un parámetro de región, o es un modelo por idioma para todo el mundo?
- ¿De dónde salen y cómo se etiquetan los datos de los idiomas minoritarios (ahí es donde se esconden los sesgos)?
Si un proveedor no sabe responder a esto, lo más probable es que traduzca por debajo. Lo cual está bien para algunos casos de uso, pero no para la moderación.
Sigue leyendo
Precisión, exhaustividad y F1 explicadas a equipos de producto (no solo a los de ML)
No hace falta haber estudiado estadística para opinar sobre la calidad de un modelo. Una guía sin tecnicismos...
Falsos positivos en moderación: cómo medirlos y reducirlos
Marcar por error el mensaje de un usuario fiel es peor que dejar pasar un spam. Una guía práctica para medir,...
Spam, toxicidad y NSFW: cómo clasificar y tratar cada tipo de contenido
Estos tres problemas se parecen, pero exigen estrategias de detección y respuestas distintas. Te explicamos có...