Technologie

Como a Tradução de Máquina se Adapta a Idiomas de Byte Duplo

UTF-8 juntamente com redes neurais aumentam o desempenho da tradução de máquina ao lidar com idiomas de Byte Duplo e Multi-Byte.
Thalita Lima
8 minutes, 48 seconds
Tabela de conteúdos

Cada idioma do mundo pertence a uma família que explica sua origem e disseminação, mas você sabia que, de acordo com os parâmetros do sistema de dados, todos os idiomas falados podem ser separados em dois grupos: Línguas de byte único e byte duplo?

Linguagens de byte duplo referem-se a sistemas de codificação de caracteres em que um caractere é representado por 2 bytes (16 bits) para representar um caractere.

Isso acontece porque essas linguagens têm um grande conjunto de caracteres, exigindo mais espaço para armazená-las do que os sistemas de codificação de byte único (8 bits).

Os idiomas de byte duplo incluem chinês (simplificado e tradicional), japonês, coreano, vietnamita (em algumas codificações mais antigas) e muitos outros em todo o mundo.

Sistemas de suporte como UTF-16 e UTF-8 que podem alternar entre um, dois ou até mais bytes são necessários para linguagens de byte duplo e multibyte.

Importante: As linguagens Double Byte (DBCS) são frequentemente identificadas erroneamente como Multi-Byte Character Set (MBCS) porque têm conceitos semelhantes.

Vamos analisar os detalhes neste artigo, focando na relação dessa diferença de codificação na tradução de máquina!

1. Sistemas de mapeamento de caracteres para linguagens de byte duplo

O processo de codificação tornou-se mais fácil após a invenção do UTF (o Unicode Transformation Format).

1.1) Os sistemas que surgiram antes do Unicode se tornar popular – DBCS (Double-Byte Character Set) 

A criação do DBCS foi para idiomas que precisam de muitos caracteres, principalmente chinês, japonês e coreano (CJK). 

Exemplos: Shift JIS (japonês), Big5 (chinês tradicional), EUC-KR (coreano). 

Com 2 bytes (16 bits), pode representar até 65.536 caracteres (2¹⁶). 

Imagem por Wikimedia Commons

 

1.2) Sistemas Avançados: UTF-16 e UTF-8

UTF é um esquema de codificação que converte caracteres Unicode em formatos binários; assim, computadores e sistemas de software podem efetivamente apresentar e compartilhar texto de vários idiomas e scripts. 

É um padrão internacional sob o qual cada caractere recebe um número único (ponto de código), independentemente de pertencer a qualquer idioma ou sistema de escrita.

UTF descreve o processo de conversão desses números de ponto de código em um fluxo de bytes que é compreensível por um computador.

Imagem por Wikimedia Commons

Exemplos de UTF:

UTF-16: 2 ou 4 bytes para cada caractere.

Ainda está em uso em sistemas específicos que lidam com caracteres asiáticos.

Por exemplo, algumas versões do Windows usam UTF-16 internamente.

UTF-8: cada caractere vale de 1 a 4 bytes, dependendo do símbolo. 

alfabetos latinos (inglês, espanhol, português) - 1 byte; caracteres especiais e idiomas asiáticos - 2-4 bytes. 

Além disso, UTF-8 é a codificação mais usada hoje em dia, na web, em bancos de dados e em aplicativos modernos.  

1.3 O SBCS não funciona para idiomas de byte duplo. Por quê?

SBCS (Single-Byte Character Set) é um sistema que possui no máximo 256 caracteres (1 byte = 8 bits = 2⁸ = 256 possibilidades). É bom para idiomas com alfabetos menores, como o inglês, por exemplo, o espanhol ou o francês, que podem ser representados dentro desse limite.

Com idiomas que usam mil caracteres, o SBCS não tem espaço para idiomas de byte duplo!


O chinês tem mais de 50.000 caracteres, embora 3.000-5.000 deles sejam de uso diário;

O japonês combina kanji (logogramas chineses) com hiragana e katakana e requer muito mais caracteres do que o SBCS pode conter. 

Então essa é a razão pela qual os idiomas de byte duplo precisam de sistemas apropriados.

2. Línguas de Byte Duplo em Tradução de Máquina

Existem algumas características marcantes que essas línguas possuem, que as máquinas precisam superar:

2.1) Suporte para codificação

A grande maioria das ferramentas de linguagem disponíveis atualmente pode funcionar de forma eficiente com UTF-8 e UTF-16, pois são versáteis e representam caracteres altamente complexos.

O UTF-8 é mais aceito do que os outros formatos de codificação porque permite falantes de inglês (que usam 1 byte), assim como falantes de japonês e chinês (que exigem vários bytes).

Isso é ideal quando se considera o competitivo mundo dos negócios, dominado por países de língua inglesa e falantes de mandarim

2.2) Segmentação de texto

Em espanhol ou português, os espaços são usados para segmentar cada palavra, tornando muito fácil isolar as palavras em uma frase.

Em alemão ou japonês, a delimitação de palavras, ou segmentação de texto, onde as unidades lexicais são demarcadas, é realizada por máquinas antes que qualquer tradução seja feita, porque os espaços como delimitadores estão ausentes.

2.3) Ambiguidade e Contexto

Um caractere em várias línguas asiáticas pode ter várias definições contextuais à situação.

Tomemos, por exemplo, "银行", em chinês, mais especificamente "yínháng", que se traduz em "banco", podendo significar uma instituição financeira ou a margem de um rio.

Imagem do autor

Sistemas hoje em dia como DeepL, Google Translator, Microsoft Translator e Papago (Naver) usam redes neurais* para prever o contexto e, em seguida, decidir a melhor frase entre as opções existentes.

*Redes neurais artificiais são modelos computacionais que imitam o cérebro humano. Os dados massivos são processados por meio de camadas de neurônios artificiais, procurando padrões e aprendendo a tomar decisões com ou sem regras predeterminadas.

Na tradução de máquina, redes neurais consideram o contexto no nível da sentença em vez de tradução palavra por palavra, o que está alinhado com nosso objetivo de fazer traduções mais naturais e melhores.

2.4) Ordem das palavras

As diferenças nas estruturas gramaticais entre as línguas são enormes...

Exemplo:

Eu como uma maçã.

Japonês:「I apple eat」 (「リンゴ を 食む)

A tradução de máquina precisa rearranjar as palavras corretamente para que o significado da frase não seja perdido.

2.5) Tradução de expressões frasais de expressões idiomáticas nativas

Expressões idiomáticas podem ser difíceis de traduzir diretamente.

Eg: "Até os macacos caem das árvores" se traduz naturalmente para o idioma japonês:猿も木から落ちる ("Até os especialistas cometem erros").

Imagem do autor

3. DBCS e MBCS são a mesma coisa?

Double-Byte (DBCS) e Multi-Byte (MBCS) devem ser diferenciados um do outro.

DBCS (Conjunto de Caracteres de Byte Duplo) → No início, os sistemas de codificação que gerenciam byte duplo ou 16 bits para um caractere são o DBCS (Conjunto de Caracteres de Byte Duplo).

Exemplo: Big5 (chinês tradicional), Shift JIS (japonês), EUC-JP (coreano)

Esses tinham que ser sistemas que exploravam paradigmas pré-unicode.

Conjunto de Caracteres Multibyte (MBCS) → (qualquer codificação com a partir de dois bytes por caractere)

Ex: (UTF-8, pode usar até 1, 2, 3 ou 4 bytes por caractere)

Antes do Unicode, o DBCS (conjunto de caracteres de byte duplo) era normalmente usado para muitos D's como CJK (chinês, japonês, coreano) com uma restrição de dois bytes por caractere.

Alguns idiomas diferentes de tailandês, vietnamita, hindi e árabe (conjunto de caracteres multibytes) normalmente serão codificados neste sistema de Unicode.

Por causa do UTF-8 e do UTF-16, o DBCS está morrendo e muitos idiomas são ou em breve serão representados como 'Multibyte' ou melhor, sob seus respectivos nomes (por exemplo, chinês, japonês, coreano, suaíli e outros).

Conclusão: Para a Tradução de Máquina de idiomas de byte duplo, as semelhanças são mais fortes do que nunca. Hoje, os sistemas podem lidar com dados para a maioria dos idiomas (dois ou mais bytes).

Linguagens de byte duplo ainda é um termo em uso e é bastante popular, mas agora você sabe que o alcance é maior.

4. Idiomas de byte duplo (DBCS) e multibyte em todo o mundo

Falamos sobre chinês e japonês, mas há muitos outros idiomas de byte duplo para incluir também. Então, vamos fazer um tour pelo mundo para aprender todos esses idiomas...

4.1 Idiomas DBCS Historicamente Mais Antigos

DBCS é usado principalmente por idiomas CJK (chinês, japonês, coreano) no Leste Asiático.

  • Chinês simplificado (China, Cingapura) – Codificação antiga: GB2312, GBK  
  • Chinês tradicional (Taiwan, Hong Kong, Macau) — Codificação antiga: Big5 
  • Japonês – Codificação antiga: Shift JIS, EUC-JP
  • Korean – Codificação antiga: EUC-KR 

Essas linguagens têm um grande número de caracteres, necessitando de codificação de byte duplo em sistemas pré-Unicode.

Teclado coreanoImagem por Wikimedia Commons

4.2 Compatível com os padrões - Idiomas que usam multibyte (MBCS)

Nos dias atuais, os sistemas de codificação nesses idiomas podem exigir dois, três ou até quatro bytes por caractere. Eles geralmente são simbolizados como UTF-8 ou UTF-16 hoje.

  • Idiomas do Sudeste Asiático:

→ Vietnamita — Usa o alfabeto latino com muitos diacríticos que podem ocupar mais de um byte em codificações mais antigas.

→ Tailandês – algumas combinações de caracteres precisam de mais de 1 byte para representá-las corretamente. 

→ Laos — (assim como o tailandês) Um byte, mais apropriado para caracteres de 1 byte no contexto relevante. 

→ Khmer (Camboja) – tem um grande conjunto de caracteres que precisa de vários bytes.

→ Mianmar (birmanês) – Contém caracteres complexos que necessitam de codificação de vários bytes.

  • Idiomas do sul da Ásia: 

→ hindi e outros devanágari como hindi (marata), nepalês / sânscrito, tâmil, telugu, kannada, bengali, gurmukhi (punjabi), gujarati, malaiala, cingalês.

Os scripts são muito complexos e precisam ser representados em um formato chamado codificação Multi-Byte com suas várias combinações.

Imagem por Freepik
  • Idiomas do Oriente Médio: Vários bytes

→ árabe, persa – esses idiomas geralmente são codificados usando codificação de caracteres contextualizada, o que significa que o mesmo caractere pode ser representado por mais de um byte, dependendo do contexto, pois possuem alfabetos relativamente pequenos.

→ hebraico: Como o árabe, dependendo do que você usa para codificá-lo, ele ocupa mais de um byte.

  • Tibetano, georgiano e armênio: Pode precisar de muitos bytes para obtê-los em determinadas codificações.

A maioria das escritas originais das línguas indígenas africanas e americanas (vários bytes, a maioria delas).

5. Por que é importante para a tradução de máquina lidar com idiomas de byte duplo e multi-byte?

5.1) Acessibilidade global

É uma grande oportunidade para muitos idiomas asiáticos como chinês, japonês e coreano, bem como alguns idiomas do Sudeste Asiático - o que significa que o requisito de codificação é de vários bytes.

Se os sistemas de tradução não conseguirem lidar adequadamente com a codificação de byte duplo e multibyte em palavras, isso resultará em erros de codificação, falhas do sistema e tradução incorreta.


À medida que o comércio e a comunicação internacionais se desenvolvem cada vez mais, fornecer traduções para esses idiomas é um aspecto crítico da expansão do mercado e de uma melhor comunicação global.

Shenzhen Airport, Shenzhen, ChinaImage by Andy Beales in Unsplash

5.2) Competitividade no Mercado Mundial

Apoiar idiomas que tradicionalmente têm sido difíceis de traduzir em serviços de tradução de máquina de alta qualidade pode abrir uma base para usuários adicionais também.

Isso não apenas melhora a experiência do usuário, mas também permite que muitos outros recebam e usem conteúdo em seus idiomas.

Clientes em mercados vitais, como a Ásia, precisam ser protegidos de perder suas vendas se os sistemas de tradução de máquina tiverem dificuldade com idiomas de múltiplos bytes.

5.3) Interoperabilidade e Fluxos de Dados

A tradução de máquina deve funcionar bem com idiomas de muitos bytes, caso contrário, as informações corretas não podem ser transferidas para dispositivos e plataformas que possuem idiomas baseados em múltiplos bytes.

Essa capacidade permite que as informações sejam tratadas corretamente, seja sua localização original ou o formato da codificação, auxiliando assim no uso de dados multilíngues em sistemas globais como aplicativos, sites e bancos de dados. Em suma, a interoperabilidade e os fluxos de dados garantem que diferentes sistemas com diferentes formatos de codificação possam trocar informações de forma eficaz, especialmente em contextos multilíngues.

6. Pontos Principais para Concluir

Existem muitos desafios na tradução de máquina para idiomas de byte duplo, como segmentação, gramática e significados contextuais.

Para os sistemas mais antigos, como Shift JIS para japonês, Big5 para chinês tradicional, EUC-KR para coreano, os termos de conjuntos de caracteres de byte duplo (DBCS) eram como uma tarefa difícil.

Com o advento das redes neurais, aprendizado profundo e processamento de linguagem natural (NLP) avançando de forma contagiante, os sistemas de armazenamento de caracteres se tornarão mais precisos nas traduções — melhores e mais rápidos. UTF-8 é uma marca e mudou o cenário para lidar com essas linguagens de múltiplos caracteres.

O suporte a caracteres de byte duplo e multibyte é indispensável para tradução de máquina; e essencial para garantir precisão, contexto e interoperabilidade.

A ausência dessa capacidade deixa um gosto ruim na maioria dos sistemas de tradução e distorce a experiência do usuário, diminuindo assim o desempenho dos sistemas de tradução.


Então, a maneira mais eficiente seria otimizar a tradução de máquina de idiomas de byte duplo usando sistemas modernos existentes.

A boa notícia é que já temos suporte para isso, devemos continuar melhorando esses modelos.

Desbloqueie o poder da glocalização com nosso Sistema de Gerenciamento de Tradução.

Desbloqueie o poder da

com nosso Sistema de Gerenciamento de Tradução.

Comece agora
Thalita Lima
photography | writing | communication for socio-environmental impact | art
Traduza duas vezes mais rápido de forma impecável
Comece
Nossos eventos online!
Join our community

Experimente a Bureau Works gratuitamente por 14 dias.

Integração com ChatGPT
Comece agora mesmo
Os primeiros 14 dias são por nossa conta
Suporte básico gratuito