Yolo Vision Shenzhen
Shenzhen
Jetzt beitreten
Glossar

Feature Engineering

Entdecken Sie Feature Engineering, um die Modellleistung zu steigern. Lernen Sie Techniken wie Skalierung und Augmentation kennen, um Ultralytics für eine höhere Genauigkeit zu optimieren.

Feature Engineering ist der Prozess der Umwandlung von Rohdaten in aussagekräftige Eingaben, die die Leistung von Maschinellen Lernmodellen verbessern. Dabei wird Domänenwissen genutzt, um neue Variablen – sogenannte Features – auszuwählen, zu modifizieren oder zu erstellen, die Algorithmen dabei helfen, Muster in den Daten besser zu verstehen. Während moderne Deep-Learning-Architekturen wie Convolutional Neural Networks (CNNs) in der Lage sind, Merkmale automatisch zu lernen, bleibt explizites Feature Engineering in vielen Workflows ein wichtiger Schritt, insbesondere bei der Arbeit mit strukturierten Daten oder bei der Optimierung der Modelleffizienz auf Edge-Geräten. Durch die Verfeinerung der Eingabedaten können Entwickler oft mit einfacheren Modellen eine höhere Genauigkeit erzielen, wodurch der Bedarf an massiven Rechenressourcen reduziert wird.

Die Rolle des Feature Engineering in der KI

Im Zusammenhang mit künstlicher Intelligenz (KI) sind Rohdaten selten sofort verarbeitungsfähig. Bilder müssen möglicherweise in ihrer Größe angepasst werden, Text muss möglicherweise tokenisiert werden, und tabellarische Daten enthalten oft fehlende Werte oder irrelevante Spalten. Feature Engineering schließt die Lücke zwischen Rohdaten und den für Algorithmen erforderlichen mathematischen Darstellungen. Effektives Engineering kann wichtige Zusammenhänge hervorheben, die einem Modell sonst möglicherweise entgehen würden, wie beispielsweise die Kombination von „Entfernung” und „Zeit” zur Erstellung einer „Geschwindigkeits”-Funktion. Dieser Prozess ist eng mit der Datenvorverarbeitung verbunden, aber während sich die Vorverarbeitung auf die Bereinigung und Formatierung konzentriert, geht es beim Feature Engineering um kreative Verbesserungen zur Steigerung der Vorhersagekraft.

Für Computer-Vision-Aufgaben hat sich das Feature Engineering erheblich weiterentwickelt. Bei herkömmlichen Methoden wurden manuell Deskriptoren wie Scale-Invariant Feature Transform (SIFT) erstellt, um Kanten und Ecken zu identifizieren. Heute führen Deep-Learning-Modelle wie YOLO26 eine automatisierte Merkmalsextraktion innerhalb ihrer verborgenen Schichten durch. Dennoch spielt das Engineering nach wie vor eine wichtige Rolle bei der Vorbereitung von Datensätzen, beispielsweise bei der Generierung synthetischer Daten oder der Anwendung von Datenvergrößerungstechniken wie Mosaiken und Mixups, um Modelle während des Trainings robusteren Merkmalsvariationen auszusetzen.

Gängige Techniken und Anwendungen

Feature Engineering umfasst eine Vielzahl von Strategien, die auf das jeweilige Problem und den Datentyp zugeschnitten sind.

  • Dimensionsreduktion: Techniken wie die Hauptkomponentenanalyse (PCA) reduzieren die Anzahl der Variablen unter Beibehaltung wesentlicher Informationen und verhindern so eine Überanpassung in hochdimensionalen Datensätzen.
  • Kodierung kategorialer Variablen: Algorithmen erfordern in der Regel numerische Eingaben. Methoden wie die One-Hot-Kodierung wandeln kategoriale Bezeichnungen (z. B. „Rot“, „Blau“) in binäre Vektoren um, die von Modellen verarbeitet werden können.
  • Normalisierung und Skalierung: Durch die Skalierung der Merkmale auf einen Standardbereich wird sichergestellt, dass Variablen mit größeren Größenordnungen (wie Immobilienpreise) nicht diejenigen mit kleineren Bereichen (wie Zimmeranzahl) dominieren, was für die gradientenbasierte Optimierung in neuronalen Netzen von entscheidender Bedeutung ist.
  • Binning und Diskretisierung: Die Gruppierung kontinuierlicher Werte in Klassen (z. B. Altersgruppen) kann Modellen helfen, Ausreißer effektiver zu verarbeiten und nichtlineare Beziehungen zu erfassen.

Beispiele aus der Praxis

Feature Engineering wird in verschiedenen Branchen eingesetzt, um komplexe Probleme zu lösen.

  1. Vorausschauende Wartung in der Fertigung: In der intelligenten Fertigung erfassen Sensoren Rohdaten zu Vibrationen und Temperaturen von Maschinen. Ingenieure können Merkmale erstellen, die die „Änderungsrate“ der Temperatur oder den „gleitenden Durchschnitt“ der Vibrationsintensität darstellen. Diese technischen Merkmale ermöglichen es Modellen zur Erkennung von Anomalien, Ausfälle von Geräten Tage im Voraus vorherzusagen, anstatt nur auf aktuelle Sensorwerte zu reagieren.
  2. Kreditrisikobewertung: Finanzinstitute verwenden Feature Engineering, um die Kreditwürdigkeit zu bewerten. Anstatt nur die reine „Einkommenszahl“ zu betrachten, können sie beispielsweise die „Schulden-Einkommens-Quote“ oder den „Kreditauslastungsprozentsatz“ berechnen. Diese abgeleiteten Merkmale bieten einen differenzierteren Blick auf die finanzielle Situation eines Kreditnehmers und ermöglichen eine genauere Risikoklassifizierung.

Code-Beispiel: Erweiterung um benutzerdefinierte Funktionen

In der Bildverarbeitung können wir Merkmale „konstruieren“, indem wir Bilder ergänzen, um verschiedene Umgebungsbedingungen zu simulieren . Dies hilft Modellen wie YOLO26 besser verallgemeinern. Das folgende Beispiel zeigt, wie eine einfache Graustufentransformation mit ultralytics Werkzeuge, die das Modell zwingen, strukturelle Merkmale zu lernen, anstatt sich ausschließlich auf Farben zu verlassen.

import cv2
from ultralytics.data.augment import Albumentations

# Load an example image using OpenCV
img = cv2.imread("path/to/image.jpg")

# Define a transformation pipeline to engineer new visual features
# Here, we convert images to grayscale with a 50% probability
transform = Albumentations(p=1.0)
transform.transform = A.Compose([A.ToGray(p=0.5)])

# Apply the transformation to create a new input variation
augmented_img = transform(img)

# This process helps models focus on edges and shapes, improving robustness

Abgrenzung zu verwandten Begriffen

Es ist hilfreich, Feature-Engineering von ähnlichen Konzepten zu unterscheiden, um Verwirrung in Workflow-Diskussionen zu vermeiden.

  • Merkmalstechnik vs. Merkmalsextraktion: Obwohl die Begriffe oft synonym verwendet werden, gibt es eine Nuance. Feature Engineering impliziert einen manuellen, kreativen Prozess der Konstruktion neuer Inputs auf der Grundlage von Domänenwissen. Im Gegensatz dazu, bezieht sich die Merkmalsextraktion oft auf automatisierte Methoden oder mathematische Projektionen (wie PCA), die hochdimensionale Daten in eine dichte Darstellung destillieren. In Deep Learning (DL), Schichten in Faltungsneuronale Netze (CNNs) eine automatische Merkmalsextraktion, indem sie Filter für Kanten und Texturen lernen.
  • Feature Engineering vs. Einbettungen: In der modernen Verarbeitung natürlicher Sprache (NLP) wurde die manuelle Erstellung von Merkmalen (wie das Zählen der Worthäufigkeit) weitgehend durch Einbettungen. Einbettungen sind dichte Vektor Repräsentationen, die vom Modell selbst gelernt werden, um die semantische Bedeutung zu erfassen. Einbettungen sind zwar eine Form von Merkmalen, werden sie erlernt durch maschinelles Lernen (AutoML) Prozesse erlernt und nicht explizit von Hand "konstruiert".

Durch die Beherrschung des Feature Engineering können Entwickler Modelle erstellen, die nicht nur genauer, sondern auch effizienter sind und weniger Rechenleistung benötigen, um eine hohe Leistung zu erzielen. Tools wie die Ultralytics erleichtern dies durch intuitive Schnittstellen für die Datenverwaltung und das Modelltraining, sodass Benutzer ihre Feature-Strategien schnell iterieren können.

Werden Sie Mitglied der Ultralytics

Gestalten Sie die Zukunft der KI mit. Vernetzen Sie sich, arbeiten Sie zusammen und wachsen Sie mit globalen Innovatoren

Jetzt beitreten