extend_dl_continual_learning — Erweitern ein Modell für Continual Learning mit neuen Daten.
extend_dl_continual_learning( : : DLModelHandle, DLDataset, GenParam : )
extend_dl_continual_learning erweitert ein Modell für Continual Learning
DLModelHandle mit 'type' = 'classification'
mit neuen Daten, bereitgestellt von DLDataset. Die neuen Daten können
entweder neue Klassen beinhalten, die das Modell vorherzusagen lernen soll,
oder neue Samples einer bestehenden Klasse, um das Modell für diese bestimmte
Klasse zu verbessern. DLModelHandle lernt auf eine für Continual Learning
spezifische Weise aus den bereitgestellten Daten. Nach dem Aufruf von
extend_dl_continual_learning kann das Modell entweder mehr Klassen
vorhersagen oder das interne Wissen über vorhandene Klassen wurde erweitert,
je nach dem bereitgestellten Datensatz. Siehe Deep Learning / Continual Learning
für weitere Informationen.
DLDataset darf nur neue Daten enthalten, die das Modell lernen soll.
Es ist nicht erforderlich, Datensamples aus früheren Continual Learning Schritten
bereitzustellen, da das Modell zuvor gelernte Klassen beibehält. Außerdem kann
extend_dl_continual_learning mit einem für eine AI
2-Schnittstelle
optimierten DLModelHandle aufgerufen werden. Dadurch kann das Continual Learning
Modell direkt auf einem Edge-Gerät erweitert werden.
Der Operator erwartet einen Datensatz, der mit der mitgelieferten
Prozedur preprocess_dl_dataset vorverarbeitet wurde. Änderungen, die
innerhalb der Prozedur an den Pfaden der Samples vorgenommen wurden,
werden nicht unterstützt und führen zu Fehlern. extend_dl_continual_learning
ändert die ClassIDs des bereitgestellten DLDataset intern, damit sie
mit den ClassIDs des bereitgestellten Modells übereinstimmen. Neue unbekannte
Klassen erhalten eine neue und unbenutzte ClassID. Die ClassID bekannter Klassen
innerhalb von DLDataset wird in die vom Modell vorgegebene ClassID geändert.
Diese Änderungen werden sowohl auf den bereitgestellten Datensatz DLDataset
als auch auf alle vorverarbeiteten Samples auf der Festplatte angewendet.
Dies ist für eine korrekte Evaluierung erforderlich.
Das Continual Learning Model kann mit Hilfe der Prozedur
evaluate_dl_model evaluiert werden. Dabei kann ein oder
mehrere Datensätze übergeben werden, die alle Klassen enthalten,
auf denen das Modell trainiert wurde, oder nur eine Teilmenge
davon. Es wird dringend empfohlen, das Modell mit Testdaten zu evaluieren,
die allen Klassen und Continual Learning Schritten entsprechen,
damit das Evaluierungsergebnis die Fähigkeiten des Modells für alle relevanten
Daten genau widerspiegelt.
Der Operator berechnet zudem einen neuen Out-of-Distribution Schwellenwert. Ein
zuvor vom Benutzer festgelegter Schwellenwert wird dabei überschrieben. Die
Kalibrierung der Konfidenzwerte wird nur einmal durchgeführt (entweder in
init_dl_continual_learning, wenn ein Datensatz bereitgestellt wurde oder beim
ersten Aufruf von extend_dl_continual_learning) und nicht wiederholt. Mit
zunehmender Anzahl von Klassen nehmen die absoluten Konfidenzwerte im
Allgemeinen ab.
GenParam ist ein Dictionary zum Setzen generischer Parameter.
Zur Zeit werden keine generischen Parameter unterstützt.
Der Operator nimmt Änderungen an den Samples des bereitgestellten Datensatzes vor. Wenn während der Änderungen ein Fehler auftritt, wird der Datensatz unvollständig angepasst und ist somit beschädigt. Er ist damit unbrauchbar und muss dann neu eingelesen und vorverarbeitet werden. Dies wird durch eine entsprechende Fehlermeldung des Operators im Falle eines Fehlers angezeigt.
Der Operator verhält sich nicht additiv. Das Hinzufügen von Bildern derselben Klasse in mehreren Aufrufen führt nicht zu einem identischen Modell wie das Hinzufügen derselben kombinierten Bilder in einem einzigen Aufruf.
Dieser Operator modifiziert den Zustand der folgenden Eingabeparameter:
Während der Ausführung dieses Operators muss der Zugriff auf die Werte dieser Parameter synchronisiert werden, wenn er über mehrere Threads hinweg verwendet wird.
DLModelHandle (input_control, Zustand wird modifiziert) dl_model → (handle)
Handle des Deep Learning-Klassifikationsmodells, das für Continual Learning initialisiert wurde.
DLDataset (input_control, Zustand wird modifiziert) dict → (handle)
Datensatz für neuen Continual Learning Schritt.
GenParam (input_control) dict → (handle)
Dictionary für generische Parameter.
Default: []
Deep Learning Professional