Ultralytics YOLO27: Trag dich in die Warteliste ein.
YOLO lizenzieren
Zurück zum Ultralytics-Glossar

One-Shot Learning

One-Shot-Learning erkennt eine neue Klasse anhand eines einzigen beschrifteten Beispiels, meist durch den Vergleich von Embeddings. Behandelt werden Siamese-Netzwerke, Anwendungsbereiche und Code.

One-Shot-Lernen bezeichnet die Aufgabe, eine neue Klasse anhand eines einzigen beschrifteten Beispiels zu erkennen. Ein herkömmliches Modell zur Bildklassifizierung benötigt Hunderte beschriftete Bilder pro Klasse und muss bei jeder neuen Klasse erneut trainiert werden. Ein Mensch kann dagegen ein neues Gesicht oder Produkt meist nach einmaligem Ansehen erkennen. One-Shot-Systeme nähern sich dieser Fähigkeit, indem sie Wissen aus vielen zuvor gelernten Klassen wiederverwenden: Ein auf diesen Klassen trainiertes Netzwerk bildet Bilder auf Einbettungen ab, in denen Bilder desselben Objekts nahe beieinander liegen. So genügt ein einziges Beispiel, um die Position einer neuen Klasse zu bestimmen. Gesichtserkennung, Signaturprüfung und Produkterkennung funktionieren auf diese Weise. Bei großen Sprachmodellen (LLMs) gibt eine One-Shot-Eingabeaufforderung dem Modell in der Eingabeaufforderung ein einziges ausgearbeitetes Beispiel für eine Aufgabe.

So funktioniert One-Shot-Lernen#

Die meisten One-Shot-Systeme ersetzen die Klassifizierung durch einen Vergleich. Ein neuronales Netz führt eine Merkmalsextraktion für das gespeicherte Beispiel und jede neue Abfrage durch. Ein Abstand zwischen den beiden Einbettungen, etwa der euklidische Abstand oder die Kosinusähnlichkeit, entscheidet, ob sie übereinstimmen. Ein siamesisches neuronales Netz formalisiert dies mit zwei Zweigen, die dieselben Gewichte verwenden. Jane Bromley, Yann LeCun und Kollegen setzten 1993 ein solches Netz zur Signaturprüfung ein. Gregory Koch und Kollegen trainierten 2015 ein solches Netz, um handgeschriebene Zeichen aus neuen Alphabeten nach dem Betrachten eines Beispiels pro Zeichen zu klassifizieren:

Das Einbettungsnetz wird zuvor mit vielen anderen Klassen und kontrastiven oder Triplet-Verlustfunktionen trainiert. Diese ziehen Bilder derselben Klasse zusammen und drücken Bilder verschiedener Klassen auseinander, sodass sich der gelernte Abstand auf Klassen verallgemeinert, die erst später hinzukommen. Meta-Learning-Verfahren wie Matching Networks werden mit Tausenden simulierten One-Shot-Aufgaben trainiert. Jede dieser Aufgaben enthält ein Beispiel aus mehreren Klassen, sodass das Modell genau die Aufgabe übt, der es später begegnet.

One-Shot-Klassifizierung mit Einbettungen#

Ultralytics YOLO26-Klassifizierungsmodelle geben über embed() Bildeinbettungen zurück. Dabei wird die Ausgabe der Schicht vor dem Klassifizierungs-Head zu einem Vektor pro Bild zusammengefasst. Dieses Beispiel erstellt aus diesen Einbettungen einen One-Shot-Klassifizierer mit zehn Klassen für CIFAR-10: Ein gespeichertes Bild pro Klasse ist die einzige beschriftete Datenquelle, und jede Abfrage erhält die Bezeichnung des ähnlichsten gespeicherten Bildes:

from pathlib import Path

import torch
import torch.nn.functional as F
from torchvision.datasets.utils import download_and_extract_archive
from ultralytics import YOLO

# CIFAR-10 test images, one folder per class
download_and_extract_archive("https://github.com/ultralytics/assets/releases/download/v0.0.0/cifar10.zip", "data")
images = [sorted(folder.glob("*.png")) for folder in sorted(Path("data/cifar10/test").iterdir()) if folder.is_dir()]
model = YOLO("yolo26n-cls.pt")

# Support set: the first image of each class is its only labeled example (one shot)
shots = torch.stack([model.embed(paths[0], verbose=False)[0] for paths in images])

# Query set: the next 50 images of each class, each labeled with the class of its most similar shot
correct = 0
for label, paths in enumerate(images):
    for path in paths[1:51]:
        query = model.embed(path, verbose=False)[0]
        correct += F.cosine_similarity(shots, query.unsqueeze(0)).argmax().item() == label
print(f"10-way 1-shot accuracy: {correct / 500:.1%} (random guessing: 10%)")

Das Modell wird nie mit CIFAR-10 trainiert. Die ausgegebene Genauigkeit zeigt daher, wie gut ein Beispiel pro Klasse diese Klasse im Einbettungsraum von YOLO26 definiert. Für eine elfte Klasse müsste lediglich eine weitere Einbettung gespeichert werden.

Anwendungen#

  • Gesichtsüberprüfung: Automatisierte Grenzkontrollen vergleichen ein Live-Kamerabild mit dem einzelnen Foto auf einem Passchip. Mobiltelefone und Zutrittskontrollsysteme gleichen jeden Versuch mit dem bei der Registrierung erfassten Gesicht ab.
  • Produkterkennung im Einzelhandel: Geschäfte nehmen ständig neue Produkte auf, und ein einziges Katalogfoto pro Artikel reicht einem System, um das Produkt im Regal ohne erneutes Training zu erkennen.
  • Imitationslernen mit einem Beispiel: Trainiert Roboter darauf, eine neue Variante einer Aufgabe auszuführen, etwa Bausteine in einer neuen Reihenfolge zu stapeln, nachdem sie eine einzige Demonstration gesehen haben.

Herausforderungen#

Ein einzelnes Beispiel kann nicht zeigen, wie stark eine Klasse variiert. Daher ist ein Referenzfoto bei schlechtem Licht, aus einem ungewöhnlichen Winkel oder mit teilweise verdecktem Objekt eine schlechte Grundlage für alle späteren Vergleiche. Der Übereinstimmungsschwellenwert legt das Verhältnis zwischen fälschlich akzeptierten und fälschlich abgelehnten Ergebnissen fest und muss für jede Anwendung anhand von Validierungspaaren abgestimmt werden. Eine in einem Bereich wie Alltagsfotos trainierte Einbettung trennt Klassen in einem anderen Bereich wie medizinischen Bildern weniger gut.

  • Few-Shot-Lernen: Bezeichnet allgemein das Lernen anhand weniger beschrifteter Beispiele pro Klasse. One-Shot-Lernen ist der Sonderfall mit genau einem Beispiel, in der N-Way-K-Shot-Notation als 1-Shot bezeichnet.
  • Zero-Shot-Lernen: Erkennt Klassen ganz ohne Beispiele anhand einer Text- oder Attributbeschreibung.
  • Transferlernen: Verwendet ein vortrainiertes Modell für eine neue Aufgabe erneut, meist durch Feinabstimmung anhand vieler beschrifteter Beispiele. One-Shot-Systeme nutzen ebenfalls übertragene Merkmale, vergleichen sie jedoch direkt, ohne Gewichte zu aktualisieren.
  • Anomalieerkennung: Lernt, wie Normalität aussieht, und markiert alles, was stark davon abweicht. Sie beantwortet die Frage, ob ein Element ungewöhnlich ist, statt zu bestimmen, zu welcher Klasse es gehört.

Lösungen entdecken

Computer Vision im Sport

Computer Vision im Sport

Entdecke, wie Ultralytics YOLO die Sportbildanalyse voranbringt – mit Spieler- und Ballverfolgung, Leistungsanalysen, Erkenntnissen für das Coaching und der Rehabilitation von Athleten.
Mehr erfahren
Computer Vision für Luftbilder

Computer Vision für Luftbilder

Verwandle Drohnen- und Luftbilder mit Ultralytics YOLO in Echtzeit-Erkenntnisse für Landwirtschaft, Aquakultur, Naturschutz und Geodatenanalyse.
Mehr erfahren
Computer Vision in der Luft- und Raumfahrt

Computer Vision in der Luft- und Raumfahrt

Setze Computer Vision in der Luft- und Raumfahrt mit Ultralytics YOLO ein – für Flugzeuginspektionen, die Erkennung von Fremdkörpern auf Start- und Landebahnen, den Bodenbetrieb am Flughafen und die Erkennung von Verbundwerkstofffehlern.
Mehr erfahren
Computer Vision im Sicherheitsbereich

Computer Vision im Sicherheitsbereich

Schütze jeden Standort mit Ultralytics YOLO-Modellen. Vision-KI ermöglicht die Überwachung von Grundstücksgrenzen, die Erkennung von Bedrohungen, die Kennzeichenerkennung und die Sicherheit am Arbeitsplatz.
Mehr erfahren
Computer Vision in der Robotik

Computer Vision in der Robotik

Mach Maschinen mit Ultralytics YOLO-Modellen leistungsfähiger. Vision-KI in der Robotik ermöglicht autonome Navigation, Wahrnehmung, Objektverfolgung und Steuerung in Echtzeit.
Mehr erfahren
Bildverarbeitung in der Logistik

Bildverarbeitung in der Logistik

Optimiere die Logistik mit Ultralytics YOLO-Modellen. Vision AI ermöglicht die Paketprüfung, Sortierung und Fahrzeugverfolgung sowie die Sicherheitsüberwachung von Lagerhäusern in Echtzeit.
Mehr erfahren
Bildverarbeitung im Einzelhandel

Bildverarbeitung im Einzelhandel

Gestalte den Einzelhandel mit Ultralytics YOLO-Modellen neu. Vision AI ermöglicht Bestandsverfolgung, Regalüberwachung und Warteschlangenmanagement und liefert bessere Einblicke in das Kundenverhalten.
Mehr erfahren
Bildverarbeitung im Gesundheitswesen

Bildverarbeitung im Gesundheitswesen

Entwickle Lösungen für das Gesundheitswesen mit Ultralytics YOLO-Modellen. Vision AI ermöglicht im Gesundheitswesen schnellere medizinische Bildgebung, bessere Diagnostik und die Überwachung von Patienten.
Mehr erfahren
Computer Vision in der Fertigung

Computer Vision in der Fertigung

Optimiere die Fertigung mit Ultralytics-YOLO-Modellen. Vision AI ermöglicht Qualitätskontrolle, Fehlererkennung, die Überprüfung der Einhaltung von Vorgaben zu persönlicher Schutzausrüstung und die Automatisierung von Montagelinien.
Mehr erfahren
Computer Vision in der Automobilbranche

Computer Vision in der Automobilbranche

Setze Computer Vision in der Automobilbranche mit Ultralytics-YOLO-Modellen ein. Vision AI verbessert die Verkehrssicherheit, Fahrerassistenz und Fahrzeugautomatisierung – für intelligentere Straßen.
Mehr erfahren
Computer Vision in der Landwirtschaft

Computer Vision in der Landwirtschaft

Setze mit Ultralytics YOLO-Modellen KI für Bildverarbeitung in der intelligenten Landwirtschaft ein. Ermögliche die Überwachung von Nutzpflanzen, die Verfolgung von Nutztieren und Präzisionslandwirtschaft für höhere und nachhaltigere Erträge.
Mehr erfahren

Lass uns gemeinsam die Zukunft der KI gestalten!

Starte deine Reise in die Zukunft des maschinellen Lernens