Como você corrige frases de execução?

Publicados: 2018-11-08

Em algum momento de sua vida, você pode ter tido um professor que criticou um erro específico na escrita em inglês: frases corridas.

Run-ons são um tipo comum de erro. Entre os estudantes universitários nos Estados Unidos, as sentenças corridas são o décimo oitavo erro mais frequente cometido por falantes nativos de inglês e o oitavo erro mais frequente cometido por alunos que não são falantes nativos de inglês.

Confuso sobre sentenças de execução?
Grammarly pode ajudar.
Escreva com Grammarly

A capacidade de detectar e corrigir automaticamente esse tipo de erro obviamente seria útil para os escritores. Mas há aplicações ainda mais amplas. Quando você dita uma mensagem de texto, por exemplo, você precisa dizer “ponto final” no final de sua frase antes de iniciar uma nova, ou então sua transcrição se transforma em uma longa execução. Um sistema de IA que pode descobrir automaticamente onde uma frase deve começar e parar pode inserir automaticamente a pontuação adequada, liberando seu cérebro para se concentrar nas informações que você está tentando comunicar.

O trabalho da Grammarly sobre sentenças corridas é o assunto de um novo artigo que apresentamos no 4º Workshop sobre Noisy User-generated Text na semana passada na conferência EMNLP em Bruxelas. Estamos orgulhosos de dizer que ganhou um dos dois prêmios de melhor trabalho no workshop! Continue lendo para ver como o Grammarly está enfrentando o desafio de corrigir frases corridas.

O que é uma sentença de execução?

A definição de uma sentença de execução varia um pouco de pessoa para pessoa. Algumas pessoas consideram as emendas de vírgulas um tipo de frase corrida. Para outros, uma sentença de execução é simplesmente uma sentença muito longa. O comprimento por si só, no entanto, não faz de uma frase um verdadeiro run-on.

Essencialmente, uma sentença de execução é apenas duas ou mais sentenças completas que foram incorretamente compactadas juntas. Veja um exemplo de execução:

Viva a vida ao máximo, não tome nada como garantido.

Existem duas cláusulas independentes aqui: Viva a vida ao máximo e não tome nada como garantido . Tradicionalmente, quando você deseja unir duas cláusulas independentes, você precisa vinculá-las de alguma forma. Uma opção é usar uma vírgula e uma conjunção:

Viva a vida ao máximo, e não tome nada como garantido.

Outra opção é usar um ponto e vírgula:

Viva a Vida ao máximo; não tome nada como garantido.

A terceira opção é dividir as cláusulas em frases separadas:

Viva a Vida ao máximo. Não tome nada como garantido.

O problema com frases corridas é que elas são difíceis de entender. Conjunções, ponto e vírgula e pontos finais atuam como sinalizadores dentro de uma frase para ajudar os leitores a seguir o que o escritor está dizendo. Quando esses sinais estão ausentes, é provável que os leitores precisem voltar atrás e reler para entender a frase.

Por que é difícil corrigir automaticamente run-ons

Grammarly já corrige erros de pontuação e erros gramaticais. Então, o que há de diferente em ensinar um sistema de IA a corrigir sentenças de execução? Por que é tão difícil?

Muitos erros de pontuação ou gramaticais afetam apenas uma parte isolada de uma frase. Isso significa que seu sistema de IA precisa processar apenas uma parte específica da frase para identificar e corrigir o problema. Um run-on, no entanto, é um problema de nível de sentença. Requer que sua IA processe uma sequência de texto muito mais longa e complexa.

A correção automática de run-ons também é difícil porque existem várias maneiras de fazer isso. Como no exemplo acima, você pode adicionar pontuação, uma conjunção ou dividir o run-on em várias frases. Sua IA precisará aprender a identificar a melhor maneira de corrigir um run-on em uma situação específica.

Além disso, não há muitos dados existentes para treinar sistemas de IA para essa finalidade. Embora as sentenças de execução sejam erros comuns, não havia corpus existente que incluísse sentenças de execução rotuladas suficientes para usar como dados de treinamento. (Um corpus é uma grande coleção de texto que foi rotulado de uma maneira que os algoritmos de computador podem aprender.)

O que fizemos

A primeira ordem do dia foi criar uma coleção de sentenças corridas. Geramos artificialmente sentenças run-on removendo a pontuação entre pares de sentenças de um corpus de artigos de notícias. (Veja nosso artigo para uma explicação completa de nosso processo e como selecionamos frases candidatas.)

Em seguida, usamos nossas sentenças de run-on recém-criadas para treinar os dois modelos de aprendizado de máquina que construímos para identificar e corrigir run-ons. O aprendizado de máquina é uma área da IA ​​que envolve ensinar um algoritmo a executar tarefas automaticamente, mostrando muitos exemplos, em vez de fornecer uma série de etapas rigidamente predefinidas.

Corrigindo sentenças corridas: o que encontramos

Uma vez que os modelos foram treinados, nós os testamos em um novo conjunto de sentenças de execução artificialmente criadas, bem como em um pequeno conjunto de sentenças de execução natural de um corpus de pesquisa existente.

Descobrimos que ambos superaram os principais modelos para restauração de pontuação e correção de erros gramaticais nesta tarefa. Houve também outra descoberta empolgante: nossos modelos, que foram treinados em sentenças geradas artificialmente, foram capazes de identificar sentenças repetidas escritas por escritores reais tão bem quanto identificaram sentenças corridas artificiais.

É claro que há mais trabalho a ser feito aqui. Nossos dados de treinamento foram gerados usando texto “limpo”, o que significa que o texto não continha erros gramaticais além dos que inserimos. No mundo real, sentenças de execução podem conter problemas gramaticais adicionais que tornam mais difícil para os algoritmos identificar e corrigir a execução. No entanto, este é um passo empolgante em direção à nossa visão de criar um assistente de comunicação abrangente que o ajude a escrever mensagens que serão entendidas exatamente como você pretendia.

Como você corrige sentenças de execução não é tão fácil quanto parece é um novo artigo de Junchao Zheng, Courtney Napoles, Joel Tetreault e Kostiantyn Omelianchuk. Foi apresentado no Quarto Workshop sobre Noisy User-Generated Text co-localizado com o EMNLP 2018. O artigo aparece nos Anais do 2018 EMNLP Workshop W-NUT: The Fourth Workshop on Noisy User-generated Text.

Mais da nossa série Under the Hood at Grammarly:

  • Detectando escrita desorganizada com IA
  • Transformando o estilo de escrita com IA