Pré-processamento de dados

Origem: Wikipédia, a enciclopédia livre.
(Redirecionado de Pré-processamento de texto)

O pré-processamento é um passo importante no processo de mineração de texto. A frase "garbage in, garbage out" é particularmente aplicável a projetos de data mining e machine learning. Os métodos de coleta de dados geralmente são frouxamente controlados, resultando em valores de intervalo out-of-range (por exemplo, renda: −100), combinações de dados impossíveis (por exemplo, sexo: masculino, grávidas: sim), missing values, etc. A análise de dados que não foram cuidadosamente selecionados para tais problemas pode produzir resultados enganosos. Assim, a representação e a qualidade dos dados são antes de tudo uma análise.[1]

Muitas vezes, o pré-processamento de dados é a fase mais importante de um projeto de aprendizado de máquina, especialmente em biologia computacional.[2]

É nessa etapa que os documentos são transformados para a forma numérica. O conteúdo de cada documento é decomposto em termos e a frequência de cada um. Os termos menos significativos são descartados e os que estão presentes em um grande número de documentos da coleção são desvalorizados. O resultado do pré-processamento é a geração da Bag of Words, mas conhecida como BOW, que é uma representação numérica da coleção de documentos.

A BOW é uma matriz esparsa, onde cada linha representa um documento (Di) e cada coluna representa um termo (Tj). E o valor do campo DiTj é o valor da frequência do termo Tj no documento Di.

Para gerar uma BOW são necessárias quatro etapas: leitura e conversão, extração e limpeza dos termos, contagem de termos e cálculo de frequência.

  • Leitura: Nessa etapa é definida uma coleção de documentos e cada documento pertencente a essa coleção terá seu conteúdo carregado na memória e seguirá pelas etapas seguintes.
  • Extração e limpeza dos termos: Cada documento da coleção vai ter o seu conteúdo dividido em termos, ou seja, cada palavra significante presente no documento. É composto por 3 sub-etapas.
    • Tokenização: A tokenização é utilizada para decompor o documento em cada termo que o compõe. Os delimitadores utilizados para tokenização geralmente são: o espaço em branco entre os termos, quebras de linhas, tabulações, e alguns caracteres especiais.
    • Limpeza: Depois de fazer a tokenização cada termo obtido passa pela etapa de limpeza. Primeiro são removidos as stop words, depois é verificada a existência do sinônimo do mesmo no dicionário e por último é realizado o stemming do termo. Stop words é uma lista de termos não representativos para um documento, geralmente essa lista é composta por: preposições, artigos, advérbios, números, pronomes e pontuação.
    • Stemming: Stemming é o método para redução de um termo ao seu radical, removendo as desinências, afixos, e vogais temáticas. Com sua utilização, os termos derivados de um mesmo radical serão contabilizados como um único termo.
  • Contagem dos termos: Depois de extrair os termos representativos de cada documento, será calculado o número de ocorrências de cada termo num documento. Depois de concluída a contagem é criada uma lista com duas colunas: termo e quantidade de ocorrência.
  • Cálculo da Frequência: Após concluída a etapa de contagem de termos para cada documento da coleção, será calculada a frequência dos termos. A medida escolhida para calcular a frequência dos termos é a tf-idf. O tf-idf define a importância do termo dentro da coleção de documentos. O tf-idf atribui um peso ao termo para cada documento da BOW. O peso é o número de ocorrências do termo no documento (Di), modificada por uma escala de importância do termo (Tj), chamada de frequência inversa do documento.

Referências

  1. Pyle, D., 1999. Data Preparation for Data Mining. Morgan Kaufmann Publishers, Los Altos, California.
  2. Chicco D (dezembro de 2017). «Ten quick tips for machine learning in computational biology». BioData Mining. 10 (35): 1-17. PMC 5721660Acessível livremente. PMID 29234465. doi:10.1186/s13040-017-0155-3