Yolo Vision Shenzhen
Shenzhen
Junte-se agora
Glossário

Engenharia de Atributos

Aumente a precisão do machine learning com a engenharia de atributos especializada. Aprenda técnicas para criar, transformar e selecionar atributos impactantes.

A engenharia de caraterísticas é a arte e a ciência de tirar partido do conhecimento do domínio para transformar dados brutos em atributos informativos atributos informativos que representam o problema subjacente de forma mais eficaz para os modelos de previsão. No âmbito mais alargado da aprendizagem automática (ML), os dados em bruto raramente estão prontos para processamento imediato; muitas vezes contêm ruído, valores em falta ou formatos que os algoritmos não podem interpretar diretamente. Ao criar novas caraterísticas ou modificar as existentes, os engenheiros podem melhorar significativamente a melhorar significativamente a precisão e o desempenho do modelo, obtendo frequentemente resultados melhores do que simplesmente passar para um algoritmo mais complexo. Este processo preenche a lacuna entre a informação bruta recolhida e a representação matemática necessária para a modelação preditiva.

Técnicas fundamentais de engenharia de caraterísticas

O processo envolve normalmente várias etapas iterativas concebidas para expor os sinais mais relevantes nos dados. Embora ferramentas como a bibliotecaPandas em Python facilitem estas manipulações, a estratégia depende muito da compreensão do domínio específico do problema.

  • Imputação e limpeza: Antes de criar novas caraterísticas, os dados devem ser estabilizados. Isto implica tratamento de valores em falta através de técnicas de limpeza de dados, como o preenchimento de lacunas com com a média, mediana ou um valor previsto - um processo conhecido como imputação.
  • Transformação e escalonamento: Muitos algoritmos têm um desempenho fraco quando as variáveis de entrada têm escalas muito diferentes. Técnicas como normalização (escalonamento dos dados para um intervalo de 0 a 1) ou a normalização (centrar os dados em torno da média) asseguram que nenhuma caraterística única domina o processo de aprendizagem devido apenas à sua magnitude.
  • Codificação de dados categóricos: Os modelos requerem geralmente dados numéricos. A engenharia de caraterísticas envolve conversão de etiquetas de texto ou dados categóricos em números. Os métodos comuns incluem a codificação de etiquetas e codificação de um ponto, que cria colunas binárias para cada categoria.
  • Construção de caraterísticas: Este é o aspeto criativo em que são derivadas novas variáveis. Por exemplo, num um conjunto de dados imobiliários, em vez de utilizar "comprimento" e "largura" separadamente, um engenheiro pode multiplicá-las para criar uma caraterística de "metragem quadrada", que se correlaciona mais fortemente com o preço.
  • Seleção de caraterísticas: A adição de demasiadas caraterísticas pode levar a sobreajuste, em que o modelo memoriza o ruído. Técnicas como a eliminação recursiva de caraterísticas ou a redução da dimensionalidade ajudam a identificar e reter apenas os atributos mais impactantes.

Engenharia de caraterísticas em visão computacional

No domínio da visão por computador (CV), a engenharia de caraterísticas assume frequentemente a forma de aumento de dados. Embora os modelos modernos de aprendizagem profunda aprendem automaticamente a hierarquia e os padrões, podemos "projetar" os dados de treino para serem mais robustos simulando diferentes condições ambientais. Modificando configurações de ajuste de hiperparâmetros para incluir transformações geométricas permite que o modelo aprenda caraterísticas invariantes à orientação ou perspetiva.

O seguinte trecho de código demonstra como aplicar a engenharia de caraterísticas baseada em aumento durante o treinamento de um YOLO11 modelo. Ao ajustar argumentos como degrees e shearsintetizamos novas variações de caraterísticas a partir do conjunto de dados original.

from ultralytics import YOLO

# Load a pretrained YOLO11 model
model = YOLO("yolo11n.pt")

# Train with augmentation hyperparameters acting as on-the-fly feature engineering
# 'degrees' rotates images +/- 10 deg, 'shear' changes perspective
model.train(data="coco8.yaml", epochs=3, degrees=10.0, shear=2.5)

Aplicações no Mundo Real

O valor da engenharia de caraterísticas é melhor compreendido através da sua aplicação prática em diferentes sectores.

  1. Avaliação do risco financeiro: No sector financeiro, os registos brutos das transacções são insuficientes para avaliar a fiabilidade creditícia. Os peritos utilizam a IA nas finanças para construir rácios como "dívida/rendimento" ou "taxa de utilização do crédito". Estas caraterísticas Estas caraterísticas fornecem um sinal direto da saúde financeira, permitindo uma mais precisa do risco de crédito do que a utilização salário bruto ou números de dívida isolados.
  2. Manutenção Preditiva na Indústria Transformadora: Em IA na indústria transformadora, os sensores recolhem dados de alta frequência sobre vibração e temperatura. A introdução das leituras brutas dos sensores diretamente num modelo é frequentemente ruidosa e ineficaz. Em vez disso, os engenheiros utilizam análise de séries temporais para criar caraterísticas como "temperatura média móvel da última hora" ou "desvio padrão da vibração". Estas Estas caraterísticas agregadas captam as tendências e anomalias indicativas do desgaste da máquina muito melhor do que os valores instantâneos.

Distinção de termos relacionados

É útil distinguir a engenharia de caraterísticas de conceitos semelhantes para evitar confusões nas discussões sobre o fluxo de trabalho.

  • Engenharia de caraterísticas vs. Extração de caraterísticas: Embora muitas vezes utilizados indistintamente, existe uma nuance. A engenharia de caraterísticas implica um processo manual e criativo de construção de novas entradas com base no conhecimento do domínio. Em contrapartida, extração de caraterísticas refere-se frequentemente a métodos métodos automatizados ou projecções matemáticas (como PCA) que destilam dados de elevada dimensão para uma representação densa. Na aprendizagem profunda (DL), as camadas das Redes Neuronais Convolucionais (CNN) realizam a extração automática de caraterísticas através da aprendizagem de filtros para arestas e texturas.
  • Engenharia de caraterísticas vs. Embeddings: No moderno processamento de linguagem natural (PNL), a criação manual de caraterísticas (como a contagem da frequência de palavras) foi largamente substituída por embeddings. Os embeddings são representações vectoriais densas densas aprendidas pelo próprio modelo para captar o significado semântico. Embora os embeddings sejam uma forma de caraterísticas, são aprendidas através de aprendizagem automática de máquinas (AutoML) em vez de serem explicitamente "concebidos" à mão.

Ao dominar a engenharia de caraterísticas, os programadores podem criar modelos que não só são mais exactos como também mais eficientes, exigindo menos potência computacional para obter um elevado desempenho.

Junte-se à comunidade Ultralytics

Junte-se ao futuro da IA. Conecte-se, colabore e cresça com inovadores globais

Junte-se agora