O que é pré-processamento de dados? 4 passos cruciais para fazer certo
Publicados: 2021-08-06Os dados do mundo real são, na maioria dos casos, incompletos, ruidosos e inconsistentes.
Com a geração de dados em crescimento exponencial e o número crescente de fontes de dados heterogêneas, a probabilidade de coleta de dados anômalos ou incorretos é bastante alta.
Mas apenas dados de alta qualidade podem levar a modelos precisos e, em última análise, previsões precisas. Portanto, é crucial processar os dados para obter a melhor qualidade possível. Essa etapa de processamento de dados é chamada de pré- processamento de dados e é uma das etapas essenciais da ciência de dados, aprendizado de máquina e inteligência artificial.
O que é pré-processamento de dados?
O pré- processamento de dados é o processo de transformar dados brutos em um formato útil e compreensível. Os dados do mundo real ou brutos geralmente têm formatação inconsistente, erros humanos e também podem estar incompletos. O pré-processamento de dados resolve esses problemas e torna os conjuntos de dados mais completos e eficientes para realizar a análise de dados.
É um processo crucial que pode afetar o sucesso de projetos de mineração de dados e aprendizado de máquina. Ele torna a descoberta de conhecimento de conjuntos de dados mais rápida e pode afetar o desempenho dos modelos de aprendizado de máquina.
45%
do tempo de um cientista de dados é gasto em tarefas de preparação de dados.
Fonte: Datanami
Em outras palavras, o pré-processamento de dados está transformando os dados em um formato no qual os computadores podem trabalhar facilmente. Ele facilita a análise ou visualização de dados e aumenta a precisão e a velocidade dos algoritmos de aprendizado de máquina que treinam nos dados.
Por que o pré-processamento de dados é necessário?
Como você sabe, um banco de dados é uma coleção de pontos de dados. Os pontos de dados também são chamados de observações, amostras de dados, eventos e registros.
Cada amostra é descrita usando características diferentes, também conhecidas como características ou atributos . O pré-processamento de dados é essencial para construir efetivamente modelos com esses recursos.
Inúmeros problemas podem surgir durante a coleta de dados. Você pode ter que agregar dados de diferentes fontes de dados, levando a formatos de dados incompatíveis, como inteiro e flutuante.
Dica: Use os recursos de automação do software de aprendizado de máquina e diga adeus a essas tarefas tediosas.
Se você estiver agregando dados de dois ou mais conjuntos de dados independentes, o campo de gênero poderá ter dois valores diferentes para homens: homem e homem. Da mesma forma, se você estiver agregando dados de dez conjuntos de dados diferentes, um campo presente em oito deles pode estar ausente nos dois restantes.
Ao pré-processar os dados, facilitamos a interpretação e o uso. Esse processo elimina inconsistências ou duplicatas nos dados, que podem afetar negativamente a precisão de um modelo. O pré-processamento de dados também garante que não haja valores incorretos ou ausentes devido a erros humanos ou bugs. Em suma, empregar técnicas de pré-processamento de dados torna o banco de dados mais completo e preciso.
Características dos dados de qualidade
Para algoritmos de aprendizado de máquina, nada é mais importante do que a qualidade dados de treinamento. Seu desempenho ou precisão depende de quão relevantes, representativos e abrangentes são os dados.
Antes de analisar como os dados são pré-processados, vejamos alguns fatores que contribuem para a qualidade dos dados.
- Precisão: Como o nome sugere, precisão significa que a informação está correta. Informações desatualizadas, erros de digitação e redundâncias podem afetar a precisão de um conjunto de dados.
- Consistência: Os dados não devem ter contradições. Dados inconsistentes podem fornecer respostas diferentes para a mesma pergunta.
- Completude: O conjunto de dados não deve ter campos incompletos ou falta de campos vazios. Essa característica permite que os cientistas de dados realizem análises precisas, pois têm acesso a uma imagem completa da situação que os dados descrevem.
- Validade: Um conjunto de dados é considerado válido se as amostras de dados aparecerem no formato correto, estiverem dentro de um intervalo especificado e forem do tipo correto. Conjuntos de dados inválidos são difíceis de organizar e analisar.
- Tempestividade: Os dados devem ser coletados assim que o evento que representam ocorrer. Com o passar do tempo, cada conjunto de dados se torna menos preciso e útil, pois não representa a realidade atual. Portanto, a atualidade e relevância dos dados é uma característica crítica da qualidade dos dados.
Os quatro estágios do pré-processamento de dados
Para modelos de aprendizado de máquina, os dados são forragem.
Um conjunto de treinamento incompleto pode levar a consequências não intencionais, como viés, levando a uma vantagem ou desvantagem injusta para um determinado grupo de pessoas. Dados incompletos ou inconsistentes também podem afetar negativamente o resultado de projetos de mineração de dados. Para resolver tais problemas, utiliza-se o processo de pré-processamento de dados.
Existem quatro estágios de processamento de dados: limpeza, integração, redução e transformação.
1. Limpeza de dados
A limpeza ou limpeza de dados é o processo de limpeza de conjuntos de dados contabilizando valores ausentes, removendo valores discrepantes, corrigindo pontos de dados inconsistentes e suavizando dados ruidosos. Em essência, o motivo por trás da limpeza de dados é oferecer amostras completas e precisas para modelos de aprendizado de máquina.
As técnicas usadas na limpeza de dados são específicas às preferências do cientista de dados e ao problema que ele está tentando resolver. Aqui está uma rápida olhada nos problemas que são resolvidos durante a limpeza de dados e as técnicas envolvidas.
Valores ausentes
O problema de valores de dados ausentes é bastante comum. Isso pode acontecer durante a coleta de dados ou devido a alguma regra específica de validação de dados. Nesses casos, você precisa coletar amostras de dados adicionais ou procurar conjuntos de dados adicionais.
O problema de valores ausentes também pode surgir quando você concatena dois ou mais conjuntos de dados para formar um conjunto de dados maior. Se nem todos os campos estiverem presentes em ambos os conjuntos de dados, é melhor excluir esses campos antes de mesclar.
Aqui estão algumas maneiras de contabilizar dados ausentes:
- Preencha manualmente os valores ausentes. Essa pode ser uma abordagem tediosa e demorada e não é recomendada para grandes conjuntos de dados.
- Faça uso de um valor padrão para substituir o valor de dados ausentes. Você pode usar uma constante global como “desconhecido” ou “N/A” para substituir o valor ausente. Embora seja uma abordagem direta, não é infalível.
- Preencha o valor ausente com o valor mais provável. Para prever o valor provável, você pode usar algoritmos como regressão logística ou árvores de decisão.
- Use uma tendência central para substituir o valor ausente. A tendência central é a tendência de um valor se agrupar em torno de sua média, moda ou mediana.
Se 50% dos valores de qualquer uma das linhas ou colunas do banco de dados estiverem ausentes, é melhor excluir a linha ou coluna inteira, a menos que seja possível preencher os valores usando qualquer um dos métodos acima.
Dados barulhentos
Uma grande quantidade de dados sem sentido é chamada de ruído . Mais precisamente, é a variação aleatória em uma variável medida ou dados com valores de atributo incorretos. O ruído inclui pontos de dados duplicados ou semiduplicados, segmentos de dados sem valor para um processo de pesquisa específico ou campos de informação indesejados.
Por exemplo, se você precisar prever se uma pessoa pode dirigir, informações sobre a cor do cabelo, altura ou peso serão irrelevantes.
Um outlier pode ser tratado como ruído, embora alguns o considerem um ponto de dados válido. Suponha que você esteja treinando um algoritmo para detectar tartarugas em imagens. O conjunto de dados de imagem pode conter imagens de tartarugas erroneamente rotuladas como tartarugas. Isso pode ser considerado ruído.
No entanto, pode haver uma imagem de tartaruga que se pareça mais com uma tartaruga do que com uma tartaruga. Essa amostra pode ser considerada um outlier e não necessariamente um ruído. Isso ocorre porque queremos ensinar ao algoritmo todas as maneiras possíveis de detectar tartarugas e, portanto, o desvio do grupo é essencial.
Para valores numéricos, você pode usar um gráfico de dispersão ou um gráfico de caixa para identificar valores discrepantes.
A seguir estão alguns métodos usados para resolver o problema do ruído:
- Regressão: A análise de regressão pode ajudar a determinar as variáveis que têm impacto. Isso permitirá que você trabalhe apenas com os recursos essenciais em vez de analisar grandes volumes de dados. Tanto a regressão linear quanto a regressão linear múltipla podem ser usadas para suavizar os dados.
- Binning: Os métodos de binning podem ser usados para uma coleção de dados classificados. Eles suavizam um valor classificado observando os valores ao redor dele. Os valores classificados são então divididos em “bins”, o que significa classificar os dados em segmentos menores do mesmo tamanho. Existem diferentes técnicas para binning, incluindo suavização por meio de bin e suavização por medianas de bin.
- Clustering: algoritmos de clustering, como o clustering k-means, podem ser usados para agrupar dados e detectar discrepâncias no processo.
2. Integração de dados
Como os dados são coletados de várias fontes, a integração de dados é uma parte crucial da preparação de dados. A integração pode levar a vários pontos de dados inconsistentes e redundantes, levando a modelos com precisão inferior.

Aqui estão algumas abordagens para integrar dados:
- Consolidação de dados: os dados são reunidos fisicamente e armazenados em um único local. Ter todos os dados em um só lugar aumenta a eficiência e a produtividade. Esta etapa geralmente envolve o uso de software de armazenamento de dados.
- Virtualização de dados: nessa abordagem, uma interface fornece uma visão unificada e em tempo real dos dados de várias fontes. Em outras palavras, os dados podem ser vistos de um único ponto de vista.
- Propagação de dados: Envolve a cópia de dados de um local para outro com a ajuda de aplicativos específicos. Esse processo pode ser síncrono ou assíncrono e geralmente é orientado a eventos.
3. Redução de dados
Como o nome sugere, a redução de dados é usada para reduzir a quantidade de dados e, assim, reduzir os custos associados à mineração de dados ou análise de dados.
Ele oferece uma representação condensada do conjunto de dados. Embora esta etapa reduza o volume, ela mantém a integridade dos dados originais. Essa etapa de pré-processamento de dados é especialmente crucial ao trabalhar com big data, pois a quantidade de dados envolvida seria gigantesca.
A seguir estão algumas técnicas usadas para redução de dados.
Redução de dimensionalidade
A redução de dimensionalidade , também conhecida como redução de dimensão, reduz o número de recursos ou variáveis de entrada em um conjunto de dados.
O número de recursos ou variáveis de entrada de um conjunto de dados é chamado de dimensionalidade. Quanto maior o número de recursos, mais problemático é visualizar o conjunto de dados de treinamento e criar um modelo preditivo.
Em alguns casos, a maioria desses atributos está correlacionada, portanto redundante; portanto, algoritmos de redução de dimensionalidade podem ser usados para reduzir o número de variáveis aleatórias e obter um conjunto de variáveis principais.
Existem dois segmentos de redução de dimensionalidade: seleção de recursos e extração de recursos.
Na seleção de recursos , tentamos encontrar um subconjunto do conjunto original de recursos. Isso nos permite obter um subconjunto menor que pode ser usado para visualizar o problema usando modelagem de dados. Por outro lado, a extração de características reduz os dados de um espaço de alta dimensão para um espaço de dimensão inferior, ou seja, um espaço com menor número de dimensões.
A seguir estão algumas maneiras de realizar a redução de dimensionalidade:
- Análise de componentes principais (PCA): Uma técnica estatística usada para extrair um novo conjunto de variáveis de um grande conjunto de variáveis. As variáveis recém-extraídas são chamadas de componentes principais. Este método funciona apenas para recursos com valores numéricos.
- Filtro de alta correlação: Uma técnica usada para encontrar recursos altamente correlacionados e removê-los; caso contrário, um par de variáveis altamente correlacionadas pode aumentar a multicolinearidade no conjunto de dados.
- Proporção de valores ausentes: esse método remove atributos com valores ausentes maiores que um limite especificado.
- Filtro de baixa variação: envolve a remoção de atributos normalizados com variação inferior a um valor limite, pois pequenas alterações nos dados se traduzem em menos informações.
- Floresta aleatória: Essa técnica é usada para avaliar a importância de cada recurso em um conjunto de dados, permitindo manter apenas os principais recursos mais importantes.
Outras técnicas de redução de dimensionalidade incluem análise fatorial, análise de componentes independentes e análise discriminante linear (LDA).
Seleção de subconjunto de recursos
A seleção de subconjunto de recursos é o processo de selecionar um subconjunto de recursos ou atributos que mais contribuem ou são os mais importantes.
Suponha que você esteja tentando prever se um aluno será aprovado ou reprovado analisando dados históricos de alunos semelhantes. Você tem um conjunto de dados com quatro recursos: número do rolo, notas totais, horas de estudo e atividades extracurriculares.
Nesse caso, os números de rolo não afetam o desempenho dos alunos e podem ser eliminados. O novo subconjunto terá apenas três recursos e será mais eficiente que o conjunto original.
Essa abordagem de redução de dados pode ajudar a criar modelos de aprendizado de máquina mais rápidos e econômicos. A seleção do subconjunto de atributos também pode ser realizada na etapa de transformação de dados.
Redução de numerosidade
A redução de numerosidade é o processo de substituição dos dados originais por uma forma menor de representação de dados. Existem duas maneiras de fazer isso: métodos paramétricos e não paramétricos.
Os métodos paramétricos usam modelos para representação de dados. Métodos log-lineares e de regressão são usados para criar tais modelos. Em contraste, os métodos não paramétricos armazenam representações de dados reduzidas usando clustering, histogramas, agregação de cubos de dados e amostragem de dados.
4. Transformação de dados
A transformação de dados é o processo de conversão de dados de um formato para outro. Em essência, envolve métodos para transformar dados em formatos apropriados que o computador pode aprender com eficiência.
Por exemplo, as unidades de velocidade podem ser milhas por hora, metros por segundo ou quilômetros por hora. Portanto, um conjunto de dados pode armazenar valores da velocidade de um carro em diferentes unidades como tal. Antes de alimentar esses dados em um algoritmo, precisamos transformar os dados na mesma unidade.
A seguir estão algumas estratégias para transformação de dados.
Suavização
Essa abordagem estatística é usada para remover o ruído dos dados com a ajuda de algoritmos. Ele ajuda a destacar os recursos mais valiosos em um conjunto de dados e a prever padrões. Também envolve a eliminação de outliers do conjunto de dados para tornar os padrões mais visíveis.
Agregação
A agregação refere-se a agrupar dados de várias fontes e apresentá-los em um formato unificado para mineração ou análise de dados. Agregar dados de várias fontes para aumentar o número de pontos de dados é essencial, pois somente assim o modelo de ML terá exemplos suficientes para aprender.
Discretização
A discretização envolve a conversão de dados contínuos em conjuntos de intervalos menores. Por exemplo, é mais eficiente colocar as pessoas em categorias como “adolescente”, “jovem adulto”, “meia-idade” ou “idoso” do que usar valores de idade contínuos.
Generalização
A generalização envolve a conversão de recursos de dados de baixo nível em recursos de dados de alto nível. Por exemplo, atributos categóricos, como endereço residencial, podem ser generalizados para definições de nível superior, como cidade ou estado.
Normalização
A normalização refere-se ao processo de conversão de todas as variáveis de dados em um intervalo específico. Em outras palavras, é usado para dimensionar os valores de um atributo para que ele caia em um intervalo menor, por exemplo, 0 a 1. Escala decimal, normalização mín-máxima e normalização de pontuação z são alguns métodos de normalização de dados.
Construção do recurso
A construção de recursos envolve a construção de novos recursos a partir de um determinado conjunto de recursos. Esse método simplifica o conjunto de dados original e facilita a análise, mineração ou visualização dos dados.
Geração de hierarquia de conceito
A geração de hierarquia de conceito permite criar uma hierarquia entre os recursos, embora não seja especificada. Por exemplo, se você tiver um conjunto de dados de endereço residencial contendo dados sobre a rua, cidade, estado e país, esse método pode ser usado para organizar os dados em formulários hierárquicos.
Dados precisos, resultados precisos
Algoritmos de aprendizado de máquina são como crianças. Eles têm pouca ou nenhuma compreensão do que é favorável ou desfavorável. Assim como as crianças começam a repetir a linguagem chula dos adultos, dados imprecisos ou inconsistentes influenciam facilmente os modelos de ML. A chave é alimentá-los com dados precisos e de alta qualidade, para os quais o pré-processamento de dados é uma etapa essencial.
Os algoritmos de aprendizado de máquina geralmente são chamados de trabalhadores esforçados. Mas há um algoritmo que muitas vezes é rotulado como preguiçoso. É chamado de algoritmo k-vizinho mais próximo e é um excelente algoritmo de classificação.
