Glossário

Pré-processamento de dados

Pré-processamento de dados principais para aprendizagem automática. Aprende técnicas como limpeza, dimensionamento e codificação para aumentar a precisão e o desempenho do modelo.

Treina os modelos YOLO simplesmente
com Ultralytics HUB

Aprende mais

O pré-processamento de dados refere-se às etapas cruciais tomadas para limpar, transformar e organizar os dados brutos num formato adequado antes de os introduzir num modelo de aprendizagem automática (ML). Os dados brutos recolhidos no mundo real são frequentemente incompletos, inconsistentes e contêm erros ou ruído. O pré-processamento visa resolver estes problemas, melhorando significativamente a qualidade dos dados e, consequentemente, o desempenho, a precisão e a fiabilidade dos modelos de aprendizagem automática treinados com base nos mesmos. É uma fase fundamental em qualquer projeto orientado por dados, incluindo os de Inteligência Artificial (IA) e Visão por Computador (CV).

Porque é que o pré-processamento de dados é importante?

Os modelos de aprendizagem automática aprendem padrões a partir dos dados. Se os dados tiverem falhas, o modelo aprenderá padrões incorrectos, conduzindo a previsões e decisões erradas. Dados de alta qualidade e bem preparados são essenciais para criar modelos robustos como o Ultralytics YOLO para tarefas como a deteção de objectos. Um pré-processamento de dados eficaz ajuda a:

  • Melhora a precisão do modelo: Dados limpos conduzem a modelos mais precisos.
  • Reduz o tempo de treinamento: A remoção de dados irrelevantes ou redundantes pode acelerar o processo de formação.
  • Evita erros: O tratamento de inconsistências evita que os modelos aprendam correlações espúrias.
  • Melhora a generalização: Os dados corretamente pré-processados ajudam os modelos a ter um melhor desempenho em dados não vistos, reduzindo o sobreajuste.

Técnicas comuns de pré-processamento de dados

São utilizadas várias técnicas durante o pré-processamento de dados:

  • Limpeza de dados: Envolve a identificação e o tratamento de erros, inconsistências, valores em falta (imputação) e valores anómalos no conjunto de dados. Garante que os dados são exactos e consistentes.
  • Transformação de dados: Inclui técnicas como:
    • Normalização / Escala: Ajusta o intervalo ou a distribuição de caraterísticas numéricas (por exemplo, dimensiona os valores de pixel em imagens de 0-255 para 0-1). Isto assegura que as caraterísticas com valores maiores não influenciam desproporcionadamente o modelo.
    • Codificação de variáveis categóricas: Converte dados não numéricos (como categorias ou rótulos) num formato numérico que os modelos possam compreender, utilizando métodos como a codificação de um ponto.
  • Engenharia de recursos: Cria caraterísticas novas e potencialmente mais informativas a partir das existentes para melhorar o desempenho do modelo.
  • Extração de caraterísticas: Obtém automaticamente novas caraterísticas de dimensão inferior a partir dos dados originais, frequentemente utilizadas no processamento de imagens.
  • Redução da dimensionalidade: Reduz o número de caraterísticas de entrada, preservando informações importantes, o que pode simplificar os modelos e reduzir o custo computacional. Técnicas como a análise de componentes principais (PCA) são comuns.
  • Pré-processamento de imagens: Específico da visão por computador, inclui o redimensionamento de imagens para um tamanho uniforme, a conversão de espaços de cor (por exemplo, RGB para Escala de cinzentos) e a aplicação de filtros para redução de ruído. Podes encontrar mais detalhes no guiaUltralytics sobre o pré-processamento de dados anotados.

Aplicações no mundo real

  1. Visão computacional para veículos autónomos: Os dados de imagem das câmaras necessitam de um pré-processamento extensivo. Isso inclui redimensionar as imagens, normalizar as intensidades dos pixels, corrigir a distorção da lente e aplicar técnicas de aumento de dados, como rotações aleatórias ou ajustes de brilho, para tornar os modelos de deteção de objetos robustos a condições variáveis. Plataformas como o Ultralytics HUB podem ajudar a gerir estes conjuntos de dados.
  2. Manutenção preditiva na indústria transformadora: Os dados dos sensores (temperatura, vibração, pressão) das máquinas são frequentemente ruidosos e podem conter leituras em falta. O pré-processamento envolve a limpeza destes dados através da filtragem do ruído, da imputação de valores em falta utilizando métodos estatísticos e da normalização das leituras dos sensores antes de os alimentar com um modelo de ML para prever a falha do equipamento, tal como referido em AI in Manufacturing.

Pré-processamento de dados vs. conceitos relacionados

  • Limpeza de dados vs. Pré-processamento de dados: A limpeza de dados é um subconjunto do pré-processamento de dados, especificamente centrado no tratamento de erros, valores em falta e inconsistências. O pré-processamento de dados é mais abrangente, englobando a limpeza, a transformação e a manipulação de caraterísticas.
  • Etiquetagem de dados vs. Pré-processamento de dados: A rotulagem de dados envolve a adição de etiquetas informativas ou anotações (como caixas delimitadoras para deteção de objectos) a dados em bruto, fornecendo a verdade fundamental para a aprendizagem supervisionada. Normalmente, isso acontece antes do pré-processamento de dados, que prepara os dados rotulados para o treinamento do modelo. Consulte o guia Coleta e anotação de dados para obter mais contexto.
  • Aumento de dados vs. Pré-processamento de dados: O aumento de dados aumenta artificialmente o tamanho e a diversidade do conjunto de dados de treino, criando cópias modificadas dos dados existentes (por exemplo, inverter imagens, adicionar ruído). Embora esteja intimamente relacionado e seja frequentemente aplicado juntamente com os passos de pré-processamento, o seu principal objetivo é melhorar a generalização do modelo e não apenas limpar ou formatar os dados. Explora sugestões para a formação de modelos que envolvem frequentemente o aumento.

Ferramentas e recursos

Várias bibliotecas e ferramentas facilitam o pré-processamento de dados:

  • Pandas: Uma biblioteca Python popular para manipulação e análise de dados, excelente para limpar e transformar dados tabulares.
  • Scikit-learn: Oferece uma vasta gama de ferramentas de pré-processamento, incluindo scalers, codificadores e métodos de imputação no seu preprocessing módulo.
  • OpenCV: Uma biblioteca chave para tarefas de visão computacional, fornecendo funções extensivas para o pré-processamento de imagens.
  • NumPy: Pacote fundamental para a computação numérica em Python, frequentemente utilizado para manipulações de matrizes durante o pré-processamento.
  • DocumentaçãoUltralytics : Fornece guias e exemplos relacionados com o tratamento de dados para modelos YOLO .

Em resumo, o pré-processamento de dados é um passo indispensável no fluxo de trabalho da aprendizagem automática, garantindo que os dados se encontram no melhor estado possível para o treino do modelo, conduzindo a sistemas de IA mais fiáveis e precisos.

Lê tudo