
Provavelmente, em todas as épocas, houve tradutores literários e pensadores livres. O último sentiu-se completamente autorizado a alterar o texto, reeditá-lo, descartar algumas peças e anexar outras. E os pesquisadores modernos são confrontados com uma pergunta típica: “O que aconteceu em detalhes durante a transformação do original? O que é riscado, o que é salvo, o que é refeito, o que é adicionado? ”
Antes de ler os textos com todo cuidado, eu queria tentar entregá-los aos robôs para estudo preliminar. Tínhamos poucas esperanças em relação aos robôs, mas recebemos uma ajuda substancial deles. Sobre como fizemos o Google Translate e o Yandex.Translator competirem no trabalho do texto grego de Invisible Battle, lido abaixo.
Material de trabalho
" Abuso invisível " - um tratado ascético, originalmente escrito em italiano, depois traduzido para o grego no século 18, editado de acordo com a prática ascética cristã oriental e depois traduzido para o russo. Mas também não literalmente, mas com mudanças significativas. Descrevendo os princípios de seu trabalho na tradução para o russo, São Teófano, o Recluso, escreveu:
Não traduzo [este livro], mas uso livremente meu discurso ... adicionando, diminuindo e alterando o original.
Uma visão geral das mudanças editoriais está no trabalho do ep. Feoktista , mas eu queria obter exatamente uma diff detalhada ao longo do texto.
Método de correspondência
Para isso, os dois textos (grego moderno e russo) foram divididos em parágrafos. Foram publicados aproximadamente 700 parágrafos cada.
Traduzimos o texto grego para o russo duas vezes - uma vez usando o Yandex.Translator, outra vez usando o Google Translate. Eles simplesmente criaram páginas grandes com texto completo e as abriram através dos focinhos correspondentes da web. Era quase impossível ler o texto traduzido: aparentemente o original era muito complicado, mas algo poderia ser aprendido com esse horror. As palavras-chave em algum lugar deveriam ter coincidido, os números também.
Não havia uma variedade particular de ferramentas para encontrar duplicatas nebulosas, elas se agarraram fuzzywuzzy
, que considera a distância de Levenshtein . Das quatro funções: ratio
, token_sort_ratio
, token_sort_ratio
, token_set_ratio
- a última foi selecionada, não relacionada à ordem das palavras ou às suas repetições. E, como se viu depois, a escolha estava certa.
Para todos os pares de parágrafos (russo x grego), foram calculados os graus de semelhança do token_set_ratio
tradução Feofanov com Yandex e Google. Decidimos não confiar em nenhum deles individualmente, mas em sua soma (à cesta de duas moedas - e essa também foi a decisão certa) e, em seguida, os candidatos com grandes valores dessa quantia examinaram e verificaram com seus olhos e canetas, além dos vizinhos casais verificados.
Como resultado, durante várias horas de trabalho, foi possível comparar 2/3 parágrafos; do restante, apenas as unidades podem ser comparadas manualmente.
Métodos de verificação
Após o trabalho realizado e o resultado obtido, foi interessante retornar e examinar novamente quais funções fuzzywuzzy
e qual dos tradutores é mais adequado para essa tarefa.
O cálculo de partial_ratio
consome muito tempo (demorou 120 horas para conduzir o computador em uma linha), mas as três funções restantes foram calculadas em cerca de uma hora: ratio
, token_sort_ratio
e token_set_ratio
nas traduções Yandex e Google. Um total de seis funções de texto de proximidade e a sétima - nossa "cesta de moedas duplas".
Agora você pode dar uma olhada nos seguintes tablets. O primeiro responde à pergunta: "Se, para um determinado parágrafo russo, procurarmos o grego correspondente, considerando os parágrafos em ordem decrescente de similaridade (calculada por essa função), qual é a probabilidade de ver o parágrafo certo, observando apenas os três primeiros candidatos ?"
função | probabilidade de encontrar com três tentativas |
---|
google_set_ratio + yandex_set_ratio | 66,5% |
google_ratio | 65,0% |
google_set_ratio | 64,8% |
yandex_ratio | 62,0% |
google_sort_ratio | 61,8% |
yandex_set_ratio | 56,2% |
yandex_sort_ratio | 54,6% |
Ou seja, em cerca de 2/3 dos casos, quase imediatamente encontramos o parágrafo desejado. E no terço restante dos casos, você precisa sofrer muito. Portanto, dê uma olhada na segunda placa, que responde à pergunta: "Quantos candidatos terão que procurar em média até ver o parágrafo certo?"
função | número médio de tentativas |
---|
google_set_ratio + yandex_set_ratio | 36,7 |
google_set_ratio | 37,6 |
yandex_set_ratio | 47,0 |
google_sort_ratio | 65,9 |
yandex_sort_ratio | 69,7 |
google_ratio | 71,7 |
yandex_ratio | 75,3 |
Veja 40 parágrafos ou mais - isso é triste tristeza e, nesse caso, o carro não parece uma pista razoável. Como resultado, a estratégia ideal para comparar textos é “desnatar o creme”, observando apenas os candidatos mais prováveis e fazer o restante da comparação com base na estrutura e em alguns outros fatores.
Elogio à própria intuição
Foi surpreendente para nós que a “cesta de duas moedas” google_set_ratio + yandex_set_ratio
tirada “do teto” funcionou melhor, ainda melhor do que cada uma dessas funções individualmente. Além disso, os valores nas duas tabelas mostram que, em todos os aspectos, o Google Translate lida com essa tarefa melhor que o Yandex.Translator. Portanto, os robôs domésticos têm espaço para crescer.
PS Não há conhecimento especial nos scripts usados, mas se alguém precisar, podemos publicá-lo. O próprio resultado da comparação está aqui .
PPS Se você estiver interessado, a imagem no título é um fragmento de uma página da “ Primer of the Slavic-Greek-Latin ” de Fyodor Polikarpov-Orlov (1701).
PPPS Talvez exista uma revista científica em que este texto, devidamente dublado, deva ser oferecido para publicação?