Paisagem de serviços de tradução automática em nuvem. Palestra em Yandex

Este é o último relatório do sexto Hyperbaton , que publicaremos no Habré. Grigory Sapunov, da Intento, compartilhou uma abordagem para avaliar a qualidade dos serviços de tradução em máquina na nuvem, falou sobre os resultados da avaliação e as principais diferenças entre os serviços disponíveis.


- Meu nome é Grigory Sapunov, vou falar sobre o cenário dos serviços de tradução automática em nuvem. Medimos esse cenário há mais de um ano, é muito dinâmico e interessante.



Vou lhe dizer o que é, por que é útil entender o que está acontecendo lá, sobre soluções acessíveis, que são bastante numerosas, sobre a comparação de modelos de ações, modelos de tradução automática pré-treinados, sobre modelos personalizados que começaram a aparecer ativamente no último ano e darei minhas recomendações sobre seleção de modelos.

A tradução automática se tornou uma ferramenta muito útil que ajuda a automatizar muitas tarefas diferentes. Ele substitui uma pessoa apenas em alguns tópicos, mas pelo menos pode reduzir bastante os custos. Se você precisar traduzir muitas descrições ou revisões de produtos em um grande serviço da Web, a pessoa aqui simplesmente não poderá lidar com um grande fluxo, e a tradução automática será realmente boa. E já existem muitas soluções prontas no mercado. Esses são alguns modelos pré-treinados, geralmente chamados de modelos de estoque e modelos com adaptação de domínio, que vêm se desenvolvendo fortemente recentemente.

Ao mesmo tempo, criar sua própria solução de tradução automática é bastante difícil e caro. As modernas tecnologias de tradução automática, tradução automática de redes neurais, exigem muitas coisas para decolar por dentro. Precisamos de talentos que farão isso, precisamos de muitos dados para treiná-lo e tempo para fazê-lo. Além disso, a tradução automática de rede neural requer significativamente mais recursos de máquina do que as versões anteriores de traduções automáticas, como SMT ou baseadas em regras.

Ao mesmo tempo, a tradução automática, disponível na nuvem, é muito diferente. E a escolha certa de tradução automática permite simplificar bastante sua vida, economizar tempo, dinheiro e, finalmente, resolver seu problema ou não resolvê-lo. A disseminação da qualidade, nas métricas baseadas em referência que medimos, pode ser quatro vezes.



Ao mesmo tempo, a preços, o spread pode ser geralmente 200 vezes. Esta é uma situação completamente anormal. Serviços de mais ou menos a mesma qualidade podem diferir 200 vezes. É uma maneira fácil de economizar ou gastar dinheiro extra.

Ao mesmo tempo, os serviços diferem significativamente nas características do produto. Pode ser suporte para formatos, suporte para arquivos, presença de um modo em lote ou sua ausência, é a quantidade máxima de texto que um serviço pode traduzir por vez e muito mais. E tudo isso deve ser entendido ao escolher um serviço. Se você escolher o serviço errado, precisará refazê-lo ou não obterá a qualidade que gostaria de receber. Como resultado, tudo se resume ao fato de você trazer algo para o mercado mais rapidamente, economizar dinheiro e fornecer a melhor qualidade para o seu produto. Ou não forneça.



Compare esses serviços para entender o que é certo para você, longo e caro. Se você fizer isso sozinho, deverá integrar-se a todos os serviços de tradução automática em nuvem, escrever essas integrações, firmar acordos, primeiro organizar faturamento separado, integrar-se a todos. Em seguida, percorra todos esses serviços e avalie alguns dos seus dados. É proibitivamente caro. O orçamento desse projeto pode exceder o orçamento do projeto principal para o qual você está fazendo isso.

Portanto, este é um tópico importante, mas é difícil fazê-lo por conta própria, e neste local nos ajudamos a entender o que é o quê.



Há uma gama de tecnologias no mercado. Quase todos os serviços mudaram para tradução automática de rede neural ou algum tipo de híbrido. Ainda existem vários tradutores de máquina estatísticos no mercado.



Cada um tem suas próprias características. Os BDCs parecem ser uma boa tecnologia mais moderna, mas também existem sutilezas.

Em geral, a tradução automática de rede neural funciona melhor que os modelos anteriores, mas você também precisa segui-la, há resultados completamente inesperados. Como um verdadeiro Yoda, ele pode permanecer calado, dar uma resposta vazia a alguma linha, e você precisa capturá-la e entender que ele se comporta assim nos seus dados. Ou um exemplo maravilhoso do comércio eletrônico, quando uma grande descrição dos produtos foi enviada para tradução automática, e ele simplesmente disse que era uma mochila e é isso. E foi o comportamento estável desse serviço de máquina, que é bom e funciona bem com dados gerais, dados de notícias. Mas o comércio eletrônico não funciona bem nessa área em particular. E você precisa entender isso, é necessário executar todos esses serviços nos seus dados para escolher o que melhor se adequa aos seus dados. Este não é um serviço que funcione melhor nas notícias ou em outra coisa. Esse é o que deve funcionar melhor no seu caso particular. Isso deve ser entendido em cada caso.



Existem muitos níveis de personalização. Nível zero - sua ausência. Existem modelos de estoque pré-treinados, todos esses que são implantados na nuvem agora em diferentes fornecedores. Existe uma opção com modelos totalmente personalizados nos seus casos, quando você, condicionalmente, faz um pedido em alguma empresa envolvida em tradução automática, ele treina o modelo para você, a partir de seus dados, do zero. Mas leva um longo, caro, requer grandes gabinetes. Há um grande fornecedor que receberá US $ 5.000 de você para esse experimento, números dessa ordem. Coisas caras para tentar. E isso não garante nada a você. Você pode treinar o modelo, e ele será pior do que o disponível no mercado, e o dinheiro será jogado fora. Essas são duas opções extremas. O modelo de estoque ou personalizado no seu caso.

Existem casos intermediários. Existem glossários, uma coisa muito boa que ajuda a melhorar os modelos atuais de tradução automática. E há uma adaptação de domínio que agora está se desenvolvendo ativamente, uma espécie de transferência de aprendizado, qualquer coisa oculta por trás dessas palavras, que permite treinar algum modelo geral ou mesmo um modelo especial para treinar seus dados, e a qualidade de um modelo desse tipo será melhor do que apenas um modelo geral. Esta é uma boa tecnologia, está funcionando, agora está em desenvolvimento ativo. Siga-a, eu vou lhe contar mais sobre ela.



Há outra dimensão importante: criar em casa ou usar a nuvem. Há um equívoco popular neste local, as pessoas ainda pensam que os serviços de tradução em máquina na nuvem, se você os usar, pegarão seus dados e treinarão seus modelos neles. Isso não é verdade nos últimos dois anos. Todos os principais serviços recusaram isso, declararam claramente em termos de serviço que não usamos seus dados para treinar nossos modelos. Isso é importante. Isso remove várias barreiras para adaptar a tradução automática da nuvem. Agora você pode usar esses serviços com segurança e ter certeza de que o serviço não usará seus dados para treinar seus modelos e não se tornará um concorrente para você ao longo do tempo. Está seguro.

Esta é a primeira vantagem das nuvens em comparação com o que era há dois anos.

A segunda vantagem, se você implantar uma tradução de rede neural dentro de si, precisará elevar uma infraestrutura bastante pesada com aceleradores gráficos para treinar todas essas redes neurais. E mesmo após o treinamento para inferência, você ainda precisa usar placas gráficas de alto desempenho para que isso funcione. Acontece caro. O custo de propriedade dessa solução é realmente alto. E uma empresa que não fornecerá API profissionalmente ao mercado não precisa fazer isso, você precisa de um serviço em nuvem pronto e usá-lo. Nesse local, você economiza dinheiro, tempo e há uma garantia de não uso de seus dados para as necessidades do serviço.

Sobre a comparação.



Estamos lidando com esse tópico há muito tempo, um ano e meio medimos regularmente a qualidade. Escolhemos métricas de referência automáticas, elas permitem que isso seja feito de maneira massiva e obtenham determinados intervalos de confiança. Sabemos mais ou menos a quantidade de métricas de qualidade de dados estabelecida e podemos fazer uma escolha adequada entre diferentes serviços. Mas devemos lembrar que métricas automáticas e humanas se complementam. As métricas automáticas são boas para a realização de uma análise preliminar, a escolha de locais em que as pessoas devem prestar especial atenção e, em seguida, linguistas ou especialistas em domínio devem examinar essas opções de tradução e escolher o que melhor combina com você.



Vou falar sobre quais sistemas estão no mercado, como todos nós o analisamos, como eles se comparam a preços e como os resultados de nossas análises, o que é importante aqui em termos de qualidade e o que é importante fora da qualidade na escolha de um serviço.



Antes de tudo, já existe um grande número de serviços de tradução automática em nuvem; consideramos apenas aqueles em que existem modelos pré-treinados que você pode usar e começar a usar, e eles têm uma API pública.

Ainda existem vários serviços que não possuem uma API pública ou são implantados internamente; não os consideramos em nosso estudo. Porém, mesmo entre esses serviços, já existe um grande número deles, medimos e avaliamos 19 deles. A prática mostra que a pessoa média conhece vários líderes de mercado, mas não sabe o resto. E eles são, e em alguns lugares eles são bons.



Pegamos a popularidade dos idiomas na web e os dividimos em quatro grupos. Os mais populares, mais de 2% dos sites, menos populares e até menos. Existem quatro grupos de idiomas para os quais analisamos mais detalhadamente e, com tudo isso, focamos no primeiro grupo, nos idiomas mais populares, e um pouco no segundo.



O apoio nos três primeiros grupos é quase 100%. Se você precisar de um idioma que não seja super exótico, será obtido na nuvem. E se você precisar de um casal exótico, pode acontecer que alguns dos idiomas não sejam suportados por nenhum serviço de tradução em nuvem de máquina. Mas mesmo com todas as restrições, aproximadamente metade de todos os pares possíveis é suportada. Isso não é ruim.



Fora disso, testamos 48 pares, constituídos por uma matriz, selecionados principalmente inglês e todos os idiomas do primeiro grupo, parcialmente idiomas no primeiro grupo e um pouco de inglês e idiomas do segundo grupo. Isso cobre mais ou menos os cenários típicos de uso, mas muitas outras coisas interessantes permanecem do lado de fora. Avaliamos esses pares, medimos e informamos o que está acontecendo lá. O relatório completo está aqui, é grátis, nós o atualizamos regularmente, vou fazer uma campanha para você usá-lo.



Números e eixos não são visíveis neste gráfico, mas trata-se de oferecer suporte a diferentes idiomas com diferentes sistemas de tradução automática. Existem diferentes sistemas de tradução automática ao longo do eixo X, ao longo do eixo Y na escala logarítmica, o número de pares suportados em geral e exclusivo. Nesta foto, o vermelho é único, o azul é tudo. Pode-se observar que, se você tiver uma combinação muito exótica de idiomas, pode ser que, devido à sua singularidade, você precise usar sete provedores diferentes, porque apenas um deles suporta o par muito específico de que você precisa.



Para avaliar a qualidade, escolhemos edifícios de notícias, edifícios de domínio geral. Isso não garante que a situação seja a mesma nos seus dados específicos de outra área, provavelmente não a mesma, mas é uma boa demonstração de como abordar esse estudo em geral, como escolher o serviço certo que mais lhe convém. Vou mostrar o exemplo das áreas de notícias. Transfere facilmente para qualquer outra área sua.



Escolhemos a métrica hLEPOR, que é quase a mesma que a BLEU, mas, no nosso sentido intuitivo, fornece uma melhor impressão de como os serviços se relacionam. Para simplificar, considere que uma métrica de 0 a 1, 1 é uma correspondência completa para uma determinada tradução de referência, 0 é uma discrepância completa. O hLEPOR oferece uma sensação intuitiva melhor, o que significa uma diferença de 10 unidades em comparação com o BLEU. Você pode ler sobre a métrica separadamente, tudo está descrito na metodologia de pesquisa. Essa é uma métrica normal, uma métrica proxy, não perfeita, mas transmite bem a essência.



A diferença de preço é enorme. Nós compilamos uma matriz para o preço em que você pode obter uma tradução de 1 milhão de caracteres. Você pode baixar e ver, a diferença é enorme, de US $ 5 a US $ 1.000 por milhão de caracteres. Escolher o serviço errado simplesmente aumenta enormemente seus custos, ou escolher o caminho certo pode ajudá-lo a economizar muito nesse local. O mercado é opaco, você precisa entender o que vale e onde está a qualidade. Mantenha essa matriz em mente. É difícil comparar todos os serviços, pelo preço, os preços geralmente não são muito transparentes, a política não é muito clara, há algumas notas. É tudo complicado, esta tabela ajuda a tomar uma decisão.



Reduzimos os resultados de nossa análise para fotos tão engraçadas. Esta imagem mostra qual é a qualidade máxima disponível para os pares que medimos, mais ecológica - quanto maior a qualidade, qual é a concorrência nesses pares, existe realmente algo para escolher, condicionalmente, algo em torno de 8 fornecedores fornecem isso a qualidade mais acessível, em algum lugar apenas 2, e também há um ícone de dólar, trata-se do preço pelo qual você obtém a máxima qualidade. O spread é grande, em algum lugar barato você pode obter uma qualidade aceitável, em algum lugar que não seja muito aceitável e caro, são possíveis combinações diferentes. A paisagem é complexa, não há um super jogador melhor em todos os lugares, barato, bom e assim por diante. Em todo lugar existe uma escolha, e em todo lugar deve ser feito razoavelmente.



Aqui, desenhamos os melhores sistemas para esses pares de idiomas. Pode-se ver que não existe um sistema melhor, serviços diferentes são melhores em pares diferentes nessa área em particular - notícias, em outras áreas a situação mudará. Em algum lugar, o Google é bom, em algum lugar bom, é um novo tradutor europeu, sobre o qual poucas pessoas sabem, é uma pequena empresa que luta com sucesso com o Google e o derrota, com uma qualidade muito boa. O Yandex é sempre bom no par russo-inglês. Amazon apareceu recentemente, conectado o idioma russo e outros, e também não é ruim. Estas são novas mudanças. Há um ano, muito disso não era, havia menos líderes. Agora a situação é muito dinâmica.



Conhecer o melhor sistema nem sempre é importante. Mais frequentemente, é importante conhecer o sistema ideal. Se você observar os 5% principais dos sistemas para obter essa qualidade, entre esses 5% serão os mais baratos, oferecendo boa qualidade. Nesse local, a situação é significativamente diferente. Google deixa essa comparação, a Microsoft sobe muito, torna-se mais Yandex, a Amazon sai ainda mais, mais provedores exóticos aparecem. A situação está se tornando diferente.



Se você olhar para todos os fornecedores de tradução automática, horizontalmente - diferentes fornecedores, verticalmente - com que frequência o fornecedor está em um desses topos, nos 5% principais, quase todos estarão mais cedo ou mais tarde. O melhor deles para alguns pares medidos específicos são 7 provedores, os ótimos também são 7. Isso significa que, se você tiver um conjunto de idiomas que precisa traduzir e deseja garantir a qualidade máxima ou ideal, precisará de um provedor não basta, você precisa conectar o portfólio desses fornecedores e obter a máxima qualidade, a máxima eficiência monetária e assim por diante. Não existe um jogador que seja melhor. Se você tem tarefas complexas, precisa de muitos pares diferentes, tem uma maneira direta de usar provedores diferentes, é melhor do que usar um.



O mercado é muito dinâmico, o número de ofertas está crescendo rapidamente. Começamos a medir no início do 17º ano, uma nova referência foi publicada em julho. O número de serviços disponíveis está crescendo, alguns deles ainda estão em pré-visualização, eles não têm uma lista de preços pública, estão em algum tipo de alfa ou beta que você pode usar, mas as condições não são muito claras.



A qualidade está crescendo mais lentamente, mas também está crescendo. O principal interesse ocorre em pares de idiomas específicos.



Por exemplo, a situação no par de idiomas inglês-russo é muito dinâmica. A Yandex nos últimos seis meses melhorou bastante sua qualidade. A Amazon apareceu, é representada por um ponto à direita e também não fica muito atrás do Yandex. O fornecedor da GTCom apresentou um bom desempenho, o que quase ninguém sabe, é um fornecedor chinês, traduz bem do chinês para o inglês e o russo, e o inglês-russo também lida bem.

Uma imagem semelhante ocorre mais ou menos em todos os pares de idiomas. Onde quer que algo esteja mudando, novos jogadores estão aparecendo constantemente, sua qualidade está mudando, modelos estão sendo treinados novamente. Veja bem, existem provedores estáveis ​​cuja qualidade não muda. Nesse caso, os estáveis ​​são mais provavelmente mortos, porque existem outros instáveis ​​cuja qualidade está mais ou menos melhorando. Esta é uma boa história, eles estão melhorando quase constantemente.



Se você considerar uma métrica mais complexa sobre a qualidade dos preços, haverá melhorias estáveis. Isso significa que o custo da tradução automática de alta qualidade diminui constantemente; a cada mês, a cada ano, mais e mais traduções automáticas de alta qualidade estão disponíveis por menos dinheiro. Isso é bom


Link do slide

Além dos preços e da qualidade, há uma enorme camada de questões que também são importantes na escolha de um provedor específico. Esses são todos os tipos de recursos do produto, suporte a html, xml, suporte a formatos complicados e não muito, modo a granel, detecção automática de um idioma - um tópico popular, suporte a glossários, personalização e confiabilidade do serviço. E também o que chamamos de felicidade do desenvolvedor, você pode ler o que queremos dizer com link.



Isso é para criar um desastre de carro. DX , , , HTTP, , API, , , . , API, . , , API , - . .

, . , , SDK, , , . . .

, , API NDA. . . , - .

, . , , , . - , , .

— , . , , .



- . , , . , - , Google, Microsoft, IBM, - , , , .



? , , , . — , . 10 . 1 . 2 . , 2 . . 50 .

hLEPOR, , , , , , . , . — . , . , , - , . , . , , , . .



, . Microsoft, 3 API. , , , Microsoft . . , , . , , 10 . Microsoft . , . , , .



IBM, , . , . 2% — .



Google AutoML , , 10 100 . .



, Microsoft, Google, - — , Deepl, Amazon, Google, Microsoft. , . ? , - , - . , Google Deepl, , , . . , . .

, , , , . . , , . , , . . , . , .

?



. . , , .

, . , - . . , , , -. , , , . , , , - , , . — .

- , , . -, . , , . , , , . . — , , .


: , , , ,

? . , . , , , . , .

, , . API . , , . SDK NodeJS, .NET, CLI. , API, . . , , . , , , — .

web tools . , , , API. . , , .

, . -, , . Isto não é verdade. , . . , , , , . , , , , . Deepl? , Google .

, , , , . , , , , , . Obrigada

Source: https://habr.com/ru/post/pt430266/


All Articles