Os objetivos da etapa de identificação e extração de atributos linguísticos das sentenças foram dois: em primeiro lugar, a tarefa ajudou a compreender o fenômeno que está sendo descrito; em segundo lugar, os atributos foram utilizados como entrada para o treinamento dos algoritmos de AM descritos no Capítulo 6. Os atributos (ou features), para esta pesquisa, são características das sentenças que independem da presença ou ausência de desvios sintáticos, e que estão positivamente correlacionadas com a ocorrência de desvios, ou seja, que podem estar trazendo mais dificuldades aos produtores de textos.
Assim, a partir da anotação linguística, identificaram-se alguns atributos específicos desta pesquisa, que se juntaram a outros atributos clássicos na literatura, formando o conjunto de 17 atributos linguísticos extraídos automaticamente. Na literatura, os trabalhos que propõem classificadores para avaliar as redações, como descrito no Capítulo 3, muitas vezes consideram atributos que vão além do nível da sentença, uma vez que a entrada para os algoritmos é o texto todo. Aqui, foi preciso limitar-se apenas àqueles considerados relevantes e que poderiam ser extraídos de sentenças. Para complementar esse conjunto, utilizaram-se as características
observadas na anotação como possivelmente importantes para a ocorrência de desvios. Os atributos extraídos com os respectivos códigos utilizados no arquivo do AM são os seguintes:
1 – n_tokens: número de tokens da sentença;
2 – sent_type: tipo de sentença – simples (apenas um verbo finito) ou composta (mais de um verbo finito);
3 – n_tokens_root: número de tokens à esquerda da raiz da sentença; 4 – n_vfin: número de verbos finitos;
5 – n_vinf: número de verbos infinitos (infinitivo, gerúndio e particípio); 6 – n_commas: número de vírgulas;
7 – copula: presença de cópula (ser e estar); 8 – subjuntivo: presença de subjuntivo; 9 – voice_pass: presença de voz passiva;
10 – vinf: presença de formas verbais infinitas (infinitivo, gerúndio e particípio); 11 – pron_rel: presença de pronome relativo;
12 – rel_bef_vfin: presença de pronome relativo à esquerda de um verbo finito; 13 – que_conj: presença de que com POS de conjunção;
14 – relativa: presença de oração relativa;
15 – relat_in_subj: presença de relativa dentro do sujeito; 16 – tree_depth: profundidade da árvore sintática;
17 – av_dep_length: distância média entre elementos dependentes.
O arquivo a partir do qual foi feita a extração automática dos atributos foi a saída do parser, em formato CONLL-U. As identificações e extrações foram possíveis em função da diversidade de informações linguísticas que o parser e o POS tagger e analisador morfológico embutidos no UDPipe ofereciam. Assim, essa ferramenta se mostrou vantajosa em função de ter uma riqueza linguística, em termos de etiquetas, que facilitou o processo extração automática dos atributos. Os atributos foram salvos em formato de planilha composta por 20 colunas. Nas duas primeiras constam a ID e a sentença a que se referem os atributos (uma sentença por linha), nas demais constam as informações extraídas, em termos numéricos e em termos de presença (1) ou ausência (0), e a última coluna indica a classe de cada sentença (D para sentenças com desvio, N para as sem desvio).
Para o AM, utilizou-se o Weka, citado na Seção 2.6 (p. 38), em função da sua facilidade de uso e interface amigável para pessoas sem experiência em Computação. Para preparar os arquivos para o AM, o arquivo com os atributos foi convertido automaticamente conforme as exigências do formato ARFF, que é aceito pelo Weka. O objetivo da etapa de AM era explicitar
correlações entre os atributos e a presença de desvios. Assim, a tarefa consistiu em uma classificação binária (com e sem desvio), em que os atributos são independentes entre si, e não se tentam predizer os tipos de desvios.
Para a classificação, buscou-se testar algoritmos clássicos de diferentes paradigmas. Os algoritmos testados no Weka foram MultiLayer Perceptron (MLP) no paradigma conexionista; SMO, Logistic Regression, e Naïve Bayes no paradigma matemático (probabilístico); One-R, J48, JRip e Random Forrest no paradigma simbólico. Também foram testados dois algoritmos de seleção de informações, a fim de verificar quais foram os atributos considerados mais relevantes: o InfoGainAttributeEval e o CfsSubsetEval. Essa etapa consistiu em dois experimentos de classificação e um de seleção de atributos. No primeiro experimento de classificação, o corpus de treino foi balanceado com o número idêntico de sentenças com e sem desvio (2.307 sentenças). No segundo experimento, utilizou-se o total de sentenças (2.307 sem desvio e 6.347 com desvio). A partir dos resultados, os três melhores classificadores foram selecionados, treinados e aplicados no corpus de teste. O terceiro experimento foi o da seleção de informações. Os resultados dessa etapa são apresentados no Capítulo 6.
De forma a sistematizar os conjuntos de sentenças que foram utilizados em cada uma das etapas da pesquisa, a Figura 10 mostra um esquema de divisão dos corpora que resume o que se descreveu neste capítulo. O próximo capítulo realiza uma análise linguística dos fenômenos a partir de uma abordagem qualitativa, buscando analisar e sistematizar os fenômenos, independentemente da sua frequência de ocorrência. Essa subdivisão e sistematização em fenômenos linguísticos nos quais os desvios ocorrem é interessante para permitir uma maior compreensão sobre os tipos de estruturas em que os desvios sintáticos ocorrem.
5 ANÁLISES LINGUÍSTICAS QUALITATIVAS DOS DESVIOS
Para compreender melhor os fenômenos nos quais os desvios sintáticos ocorrem, foi preciso analisar os dados anotados e descrevê-los a partir de análises linguísticas. Essa descrição é relevante para o desenvolvimento de ferramentas de PLN e para a compreensão das dificuldades dos estudantes. A partir da identificação dos fenômenos nos quais os desvios ocorrem, pode-se, por exemplo, reforçar o aprendizado dessas construções no ensino de produção textual.
Este capítulo faz algumas referências à frequência dos fenômenos, mas não se propõe a apresentar sistematicamente as suas contagens. Sabe-se também que pode haver mais de um fenômeno envolvido na ocorrência de um desvio, e que alguns casos analisados cabem em mais de uma das seções propostas. Porém, os exemplos trazidos servem como ilustração dos fenômenos considerados relevantes para a ocorrência de desvios, e as sobreposições complexificam, mas não invalidam as análises individuais de cada fenômeno.
Dessa forma, o capítulo traz primeiramente os fenômenos gerais que ocorreram em mais de uma subcategoria de maneira semelhante e, em seguida, os específicos por categoria. Como algumas das subcategorias apresentavam muito mais desvios do que outras e os fenômenos iam se repetindo no decorrer da análise, optou-se por selecionar uma amostra. Para definir o tamanho dessa amostra, somou-se o número de desvios de todas as subcategorias, excluindo-se a majoritária (pont-aus) e a minoritária (determ-desv), e dividiu-se o número obtido (5.400) pelo número de subcategorias (26). Assim, chegou-se ao resultado de 208 exemplos. Apenas nove subcategorias continham mais desvios do que o tamanho definido para a amostra; logo, as demais tiveram todos os seus exemplos analisados. Nessas subcategorias com número excedente de exemplos, buscou-se selecionar a amostra de maneira aleatória.