-
Die Erfindung betrifft ein Verfahren zum automatischen Klassifizieren einer Eingangsgröße, ein Messsystem und ein Aktorsteuerungssystem in dem das Verfahren eingesetzt wird, ein Computerprogramm, und ein maschinenlesbares Speichermedium.
-
Stand der Technik
-
Aus „Matching Networks for One Shot Learning“, arXiv preprint arXiv:1606.04080v1, 2016, Oriol Vinyals, Charles Blundell, Timothy Lillicrap, Koray Kavukcuoglu, Daan Wierstra ist ein Verfahren zum Anlernen von neuronalen Netzen bekannt, das eine kleine, gelabelte Unterstützungsmenge (Englisch: support set) und ein ungelabeltes Beispiel auf sein Label abbildet, wodurch die Notwendigkeit einer Feinabstimmung zur Anpassung an neue Klassentypen entfällt.
-
Vorteil der Erfindung
-
Das Verfahren mit den Merkmalen des unabhängigen Anspruch 1 hat demgegenüber dem Vorteil, dass es ein maschinelles Lernsystem besonders effizient auf neue Klassentypen, zu denen nur wenige Beispiele vorliegen, anpassbar macht.
-
Vorteilhafte Weiterbildungen sind Gegenstand der unabhängigen Ansprüche.
-
Offenbarung der Erfindung
-
In einem ersten Aspekt betrifft die Erfindung ein Verfahren zum automatischen Klassifizieren einer Eingangsgröße abhängig von einer Unterstützungsmenge von Eingangsgrößen und jeweils zugehöriger Klassifikation in einer Klassifikationsphase mittels eines maschinellen Lernsystems, wobei das maschinelle Lernsystem einen ersten parametrierbaren probabilistischen Kodierer p(z|x) und einen zweiten probabilistischen Kodierer p(ZS|XS) und einen parametrierbaren probabilistischen Klassifikator p(ylz, ZS , YS ) umfasst, wobei mittels des ersten parametrierbaren probabilistischen Kodierers p(z|x)) probabilistisch von der Eingangsgröße auf mindestens eine latente Variable geschlossen wird und mittels des zweiten parametrierbaren probabilisischen Kodierers p(ZS|XS) probabilistisch von den Eingangsgrößen Xs der Unterstützungsmenge S auf zugehörige latente Variablen Zs der Unterstützungsmenge S geschlossen wird, und wobei mittels des parametrierbaren probabilistischen Klassifikators p(ylz, Zs, Ys) von der mindestens einen latenten Variable z, den latenten Variablen Zs der Unterstützungsmenge S und den jeweils zugehörigen Klassifikationen Ys der Unterstützungsmenge S auf die Klassifikation y der Eingangsgröße x geschlossen wird.
-
D.h. der erste bzw. zweite parametrierbare probabilistische Kodierer sowie der parametrierbare probabilistische Klassifikator p(ylz, Zs, Ys) sind jeweils durch Wahrscheinlichkeitsfunktionen gegeben. Durch die Verwendung der Unterstützungsmenge (S) lässt sich insbesondere ein Anlernen des maschinellen Lernsystems mit wenigen Versuchen (Englisch: few-shot learning) erfolgreich realisieren. Durch die Verwendung probabilistischer Funktionen lässt sich hierbei die Klassifikationsgenauigkeit erhöhen.
-
Ein Gedanke hinter der Erfindung wird im Folgenden ausgeführt: In einem Klassifikationsproblem wird von einem Trainingsdatensatz {(
xi ,
y1 )}
i=1,...N mit Eingangsgrößen
xi und Labeln
yi ausgegangen. Die Menge der Eingangsgrößen wird auch mit
X, die der zugehörigen Label mit
Y bezeichnet. Für gewöhnlich wird angenommen, dass die gemeinsame bedingte Klassifizierungswahrscheinlichkeit (Englisch: joint conditional class probability) faktorisiert:
-
Ein von Parametern ϑ abhängiges Modell p(y
i|x
i; θ) wird dann durch Optimierung einer Kostenfunktion
ermittelt. Dieser Ansatz heißt auch empirische Risikominimierung (Englisch: Empirical Risk Minimization ERM).
-
Geht man davon aus, dass die Eingangsgrößen nicht unabhängig und identisch verteilt (Englisch: independent identically distributed i.i.d.) sind, gilt die Faktorisierung wie in Gleichung (1) nicht mehr. Gleichung (1) kann dann ersetzt werden durch den allgemeineren Ausdruck
wobei Y
\i,X
\i = Y\{x
i},X\{x
i}. Mangels Faktorisierung wie in (1) ist es nicht möglich, ERM durchzuführen.
-
Daher kann vorgesehen werden, eine sogenannte Pseudo-Likelihood-Funktion p(y
i|x
i,X
S,Y
S) vorzusehen, mit der die gemeinsame bedingte Klassifizierungswahrscheinlichkeit näherungsweise faktorisiert:
-
Die Mengen
XS ,
YS umfassen hierbei diejenigen Elemente der Mengen
X,
Y, deren Datenpunkte in der Unterstützungsmenge S liegen. Durch die Einführung latenter Variablen
zi für jede Eingangsgröße
xi lässt sich die pseudo-Likelihood-Funktion p(y|x,X
S,Y
S) dann schreiben als
-
Die Menge ZS umfasst hierbei diejenigen latenten Variablen zi , deren entsprechende Datenpunkte in der Unterstützungsmenge S liegen. Insbesondere kann nun vorgesehen sein, dass auch abhängig von einer parametrierbaren Näherungsfunktion q(z|x) des ersten parametrierbaren probabilistischen Kodierers p(z|x) auf die Klassifikation y der Eingangsgröße x geschlossen wird.
-
Da das Integral in Gleichung (5) in vielen Fällen nicht vollständig lösbar ist, kann vorgesehen sein, dass erste Parameter θ die das Verhalten des ersten parametrierbaren probabilistischen Kodierers p(z|x) und/oder des zweiten parametrierbaren probabilistischen Kodierers p(ZS|XS) und/oder des parametrierbaren probabilistischen Klassifikators p(ylz, ZS , YS ) charakterisieren und zweite Parameter ϕ die das Verhalten einer parametrierbaren Näherungsfunktion q(z|x) charakterisieren angepasst werden, um eine Kostenfunktion zu optimieren, welche abhängig von einem Erwartungswert einer a-posteriori-Wahrscheinlichkeit p(y|x,XS,YS) der Klassifikation y gegeben die Eingangsgröße x, die Eingangsgrößen Xs der Unterstützungsmenge S und die zugehörige Klassifikationen Ys der Unterstützungsmenge S bei Verteilung der latenten Variablen z gemäß der parametrierbaren Näherungsfunktion q(z|x) gegeben die Eingangsgröße x und bei Verteilung einer Menge der latenten Variablen Z gemäß der parametrierbaren Näherungsfunktion q(Z|X) gegeben die Menge der Eingangsgrößen X ist.
-
Dem liegt zu Grunde, dass die zu ermittelnde a-posteriori-Wahrscheinlichkeit p(y|x,X
S,Y
S) durch eine variationelle untere Schranke (Englisch: Variational Lower Bound) ELBO begrenzt ist.
mit
-
Durch Variation der ersten Parameter θ und/oder der zweiten Parameter ϕ kann eine Kostenfunktion L = ELBO maximiert werden. Im Maximum sind linke und rechte Seite der Gleichung (6) näherungsweise gleich, sodass auf diese Weise der parametrierbare probabilistische Klassifikator p(ylz, Zs, Ys) näherungsweise ermittelt werden kann.
-
In einer besonders einfachen Ausgestaltung ist der erste parametrierbare probabilistische Kodierer p(z|x) und/oder der zweite parametrierbare probabilistische Kodierer p(ZS|XS) jeweils durch eine differenzierbar reparametrierbare Verteilung, also eine Funktion, gegeben. Damit ist der Reparametrierungs-Trick anwendbar.
-
Beispielsweise kann diese Funktion durch eine Normalverteilungsfunktion gegeben.
-
In einer alternativen Ausgestaltung kann vorgesehen sein, dass der mit dem parametrierbaren probabilistischen Klassifikator p(y|z,
Zs ,
YS ) assoziierte Verlustterm durch ein generatives Modell ergänzt wird. Mit einem generativen Model
ergibt sich die mit der unteren variationelle unteren Schranke ELBO
gen assoziierte Kostenfunktion L
gen zu
-
Als zu maximierende Kostenfunktion kann dann vorteilhafterweise
herangezogen werden. Vorzugsweise werden hier die Näherungsfunktionen q(z
j|x
j) als diagonale Gaußverteilungen parametriert, deren Parameter vorzugsweise durch ein neuronales Netz abhängig von der Eingangsgröße x ermittelt werden.
-
Es ist möglich, dass die Näherungsfunktion q(z|x) gleich dem ersten parametrierbaren probabilistische Kodierer p(z|x) gewählt wird. Dann ist es insbesondere auch möglich, dass erste Parameter θ und zweite Parameter ϕ identisch gewählt werden. Dies macht die Optimierung besonders effizient.
-
Die a-priori-Wahrscheinlichkeitsfunktion p(z) in Gleichung (9) kann vorzugsweise als Normalverteilung mit Mittelwert 0 und Standardabweichung 1 gegeben sein. Der Dekodierer p(x|z, ZS , YS ) kann beispielsweise durch p(x|z) näherungsweise ermittelt werden.
-
Des Weiteren ist es besonders vorteilhaft, wenn der parametrierbare probabilistische Klassifikator p(ylz, ZS , YS ) durch einen Nächste-Nachbarn-Klassifikator (Englisch: Nearest Neighbor classifier kNN) gegeben ist, bei dem die latenten Variablen Zs der Unterstützungsmenge S und die zugehörigen Klassifikationen YS die nächsten Nachbarn darstellen. Ein solcher Klassifikator erhöht die Flexibilität und die Robustheit gegen Überanpassung (Englisch: overfitting).
-
Insbesondere kann vorgesehen sein, dass der parametrierbare probabilistische Klassifikator p(ylz,
ZS ,
YS ) abhängig von den jeweiligen Abständen der latenten Variablen
ZS der Unterstützungsmenge S von der entsprechenden latenten Variable z ist, insbesondere mittels einer softmax-Funktion
-
Vorteilhafterweise wird die Unterstützungsmenge S in der Klassifikationsphase derart gewählt, dass sie nur Datenpunkte enthält, zu deren zugehöriger Klassifikation Ys es beim Training des maschinellen Lernsystems keine Trainingsbeispiele, gab. Dies macht die Klassifikation dieser seltenen Trainingsbeispiele besonders robust.
-
Insbesondere kann weiter vorgesehen sein, dass die Unterstützungsmenge S in der Klassifikationsphase derart gewählt wird, dass sie auch all jene Datenpunkte enthält, zu deren zugehöriger Klassifikation Ys es beim Training des maschinellen Lernsystems keine Trainingsbeispiele gab. Hierdurch können möglichst viele Klassen mit jeweils nur wenigen Trainingsbeispielen gelernt werden.
-
Alternativ oder zusätzlich wird vor der Klassifikationsphase in einer Trainingsphase das maschinelle Lernsystem trainiert, wobei in jeder Episode der Trainingsphase die Unterstützungsmenge S derart gewählt, dass die Unterstützungsmenge S zu jeder der möglichen Klassifikationen nicht mehr als eine vorgebbare Anzahl an Trainingsbeispielen, insbesondere nur ein einziges Trainingsbeispiel, enthält. Vorzugsweise wird die Unterstützungsmenge S in der Trainingsphase genau so groß gewählt wie in der Klassifikationsphase. Auf diese Weise werden die Parameter des maschinellen Lernsystems derart angepasst, dass sie besonders flexibel auf die wenigen Trainingsbeispiele der seltenen Trainingsbeispiele anpassbar werden, was die Klassifikationsgenauigkeit der seltenen Trainingsbeispiele weiter erhöht.
-
Besonders gut ist das Verfahren geeignet, wenn die Eingangsgröße x mittels eines Sensors, insbesondere eines bildgebenden Sensors, ermittelt wurde.
-
Nachfolgend werden Ausführungsformen der Erfindung unter Bezugnahme auf die beiliegenden Zeichnungen näher erläutert. In den Zeichnungen zeigen:
- 1 schematisch einen Aufbau von Ausführungsformen der Erfindung;
- 2 schematisch einen Aufbau weiterer Ausführungsformen der Erfindung;
- 3 in einem Flussdiagramm den Ablauf eines Verfahrens gemäß eines Aspekts der Erfindung;
- 4 in einem Flussdiagramm einen Ablauf eines Verfahrens zum Klassifizieren gemäß eines Aspekts der Erfindung;
- 5 in einem Flussdiagramm einen Ablauf eines Trainingsverfahrens gemäß eines Aspekts der Erfindung.
-
Beschreibung der Ausführungsbeispiele
-
1 illustriert einen Aufbau mögliche Ausführungsformen der Erfindung. 1 zeigt in einer Ausführungsform einen Aktor 10 in seiner Umgebung 20 in Interaktion mit einem Aktorsteuerungssystem 40. Aktor 10 und Umgebung 20 werden gemeinschaftlich nachfolgend auch als Aktorsystem bezeichnet. In beispielsweise regelmäßigen zeitlichen Abständen wird ein Zustand des Aktorsystems mit einem Sensor 30 erfasst, der auch durch eine Mehrzahl von Sensoren gegeben sein kann. Je ein Sensorsignal S des Sensors 30 wird an das Aktorsteuerungssystem 40 übermittelt. Das Aktorsteuerungssystem 40 empfängt somit eine Folge von Sensorsignalen S. Das Aktorsteuerungssystem 40 ermittelt hieraus eine Folge von Ansteuersignalen A, welches der Aktor 10 empfängt.
-
Bei dem Aktor 10 kann es sich beispielsweise um einen (teil-)autonomen Roboter, beispielsweise ein (teil-)autonomes Kraftfahrzeug handeln, oder um einen Roboter, der gezielt erkanntes Unkraut in einem Feld bekämpft, beispielsweise ausreißt oder mit entsprechenden Chemikalien besprüht.
-
Bei dem Sensor 30 kann es sich beispielsweise um einen oder mehrere Videosensoren und/oder einen oder mehrere Radarsensoren und/oder einen oder mehrere Ultraschallsensoren und/oder einen oder mehrere Positionssensoren (beispielsweise GPS) handeln. Alternativ oder zusätzlich kann der Sensor 30 auch ein Informationssystem umfassen, das eine Information über einen Zustand des Aktorsystems ermittelt, wie beispielsweise ein Wetterinformationssystem, das einen aktuellen oder zukünftigen Zustand des Wetters in der Umgebung 20 ermittelt.
-
In einem anderen Ausführungsbeispiel kann es sich bei dem Aktor 10 um einen Fertigungsroboter handeln, und bei dem Sensor 30 dann beispielsweise um einen optischen Sensor handeln, der Eigenschaften von Fertigungserzeugnissen des Fertigungsroboters erfasst.
-
In einem weiteren Ausführungsbeispiel kann es sich bei dem Aktor 10 um ein Freigabesystem handeln, welches eingerichtet ist, die Aktivität eines Geräts freizugeben oder nicht. Bei dem Sensor 30 kann es sich beispielsweise um einen optischen Sensor (beispielsweise zur Erfassung von Bild- oder Videodaten) handeln, der eingerichtet ist, ein Gesicht zu erfassen. Der Aktor 10 ermittelt abhängig von der Folge von Ansteuersignalen A ein Freigabesignal, das benutzt werden kann, um abhängig vom Wert des Freigabesignals das Gerät freizugeben. Bei dem Gerät kann es sich beispielsweise um eine physische oder logische Zugangskontrolle handeln. Abhängig vom Wert des Ansteuersignals A kann die Zugangskontrolle dann vorsehen, dass Zugang gewährt wird, oder nicht.
-
In einem weiteren Ausführungsbeispiel kann es sich bei dem Aktor 10 um einen Teil einer Gebäudesteuerung handeln, beispielsweise um einen Regler einer Heizung.
-
Das Aktorsteuerungssystem 40 empfängt die Folge von Sensorsignalen S des Sensors in einer optionalen Empfangseinheit 50, die die Folge von Sensorsignalen S in eine Folge von Eingangsgrößen x umwandelt (alternativ kann auch unmittelbar je das Sensorsignal S als Eingangsgröße x übernommen werden). Die Eingangsgröße x kann beispielsweise ein Ausschnitt oder eine Weiterverarbeitung des Sensorsignals S sein. Die Eingangsgröße x wird einem maschinellen Lernsystem 60 zugeführt, dessen Funktionsweise unten im Zusammenhang mit 4 näher erläutert wird.
-
Das maschinelle Lernsystem 60 ermittelt aus den Eingangsgrößen x Klassifikationen y. Die Klassifikationen y werden einer optionalen Umformeinheit 80 zugeführt, die hieraus Ansteuersignale A ermittelt, welche dem Aktor 10 zugeführt werden.
-
Beispielsweise ist es möglich, dass das maschinelle Lernsystem 60 eingerichtet ist, Verkehrsschilder zu identifizieren und zu klassifizieren und als Klassifikationen y auszugeben, sodass dann abhängig von den identifizierten und klassifizierten Verkehrsschildern ein gewünschtes Verhalten des Aktors 10 geplant werden kann, insbesondere eine gewünschte Trajektorie eines (teil-)autonomen Kraftfahrzeugs, und der Aktor 10 dann entsprechend dieser geplanten Trajektorie angesteuert wird.
-
Mit einer Ausführungsform des erfindungsgemäßen Verfahrens können auch Schilder, die im Trainingsdatensatz selten vorkommen, sicher erkannt werden und dementsprechend der Aktor 10 besonders sicher angesteuert werden.
-
Dies kann beispielsweise genutzt werden, um das maschinelle Lernsystem 60 zunächst zu trainieren Schilder eines Landes, beispielsweise Deutschland, zu erkennen. Anschließend kann dann das maschinelle Lernsystem 60 trainiert werden, auch Verkehrsschilder aus anderen Ländern sicher zu erkennen. Hierzu sind mit einer Ausführungsform des erfindungsgemäßen Verfahrens nur jeweils wenige Trainingsbeispiele nötig.
-
Auch ist es möglich, mit dem maschinellen Lernsystem 60 Objekte in Straßenszenarien zu detektieren, wobei aufgrund des offenen Kontextes einer Navigation auf einer Straße eine neue relevante Objektklassen dazukommen können, die in einem Trainingsdatensatz mit nur wenigen Beispielen, insbesondere nur je einem Beispiel, vorhanden sind. Mit einer Ausführungsform des erfindungsgemäßen Verfahrens ist es auch möglich, ein vortrainiertes maschinelles Lernsystem 60 mit diesen wenigen Beispielen neuer Objektklassen nachzutrainieren. Das maschinelle Lernsystem 60 ist dann in der Lage, auch diese neuen Objektklassen sicher zu erkennen.
-
Ferner ist es möglich, dass die Klassifikation y des maschinellen Lernsystems 60 eine semantische Segmentierung einer in der Eingangsgröße x kodierten Straßenszene ist. Auch hier ist es möglich, ein vortrainiertes maschinelles Lernsystem 60 mit einigen wenigen Beispielen, insbesondere nur je einem Beispiel, neuer Segmentierungskategorien nachzutrainieren. Dies ist besonders vorteilhaft, da der Aufwand für das Labeln von Bild- oder Videodaten bei der semantischen Segmentierung besonders hoch ist.
-
Ein Kraftfahrzeug kann dann entsprechend der so erkannten Klassifikation y z.B. auf eine erkannte Geschwindigkeitsbegrenzung abbremsen, einem erkannten Fußgänger ausweichen, oder einen Blinker setzen. Eine Vielzahl weiterer Handlungen ist selbstverständlich möglich.
-
Ist der Aktor 10 ein Roboter, der gezielt erkanntes Unkraut in einem Feld bekämpft, so kann das maschinelle Lernsystem 60 in der Eingangsgröße x Unkrautarten identifizieren und klassifizieren und als Klassifikation y ausgeben. Auch hier ist es möglich, das maschinelle Lernsystem 60 zunächst vorzutrainieren und dann mit wenigen Beispielen, insbesondere nur je einem Beispiel, neuer Unkrautarten nachzutrainieren.
-
Ist der Aktor 10 ein Teil der Gebäudesteuerung, so kann der Sensor 30 eingerichtet sein, das Nutzerverhalten zu erfassen. Beispielsweise kann es sich bei dem Sensor 30 um einen Bewegungsmelder handeln. Das maschinelle Lernsystem 60 kann dann eingerichtet sein, abhängig von einer das Nutzerverhalten charakterisierenden Größe als Eingangsgröße x zu ermitteln, welcher Betriebsmodus der Gebäudesteuerung auf Basis dieses Nutzerverhaltens vom Nutzer gewünscht ist. Die Gebäudesteuerung, insbesondere die Heizung, kann dann entsprechend angesteuert werden.
-
In einer weiteren Ausführungsform betrifft die Erfindung ein Messsystem 41. Dies ist ebenfalls in 1 dargestellt. Dieses unterscheidet sich vom Aktorsteuerungssystem 40 lediglich dadurch, dass die optionale Umformeinheit 80 kein Ansteuersignal A ermittelt. Sie kann beispielsweise die Klassifikation y speichern oder darstellen, beispielsweise als visuelles oder auditives Signal.
-
Beispielsweise ist es möglich, dass der Sensor 30 ein optischer Sensor ist, und das maschinelle Lernsystem 60 in einem ihm als Eingangsgröße x zugeführten Bild Personen erkennen soll. Erneut ist es möglich, das maschinelle Lernsystem 60 zunächst vorzutrainieren und dann beispielsweise mit nur einem einzigen Beispiel einer zu identifizierenden Person nachzutrainieren.
-
Selbstverständlich ist es wie oben beschrieben in einem solchen Szenario auch denkbar, abhängig von der Klassifikation y, also abhängig von der erkannten Person, ein Freigabesystem entsprechend anzusteuern.
-
Es ist auch möglich, dass der Sensor 30 Eigenschaften eines Fertigungserzeugnisses einer Produktionsanlage erfasst, und das maschinelle Lernsystem 60 beispielsweise eingerichtet ist, Fehler zu identifizieren und zu klassifizieren. Auch hier ist es möglich, das maschinelle Lernsystem 60 zunächst vorzutrainieren und dann beispielsweise mit nur einem einzigen Beispiel eines neu hinzuzufügenden Fehlerbeispiels nachzutrainieren.
-
Das ist vor allem dann sinnvoll, wenn ein neues Produkt gefertigt wird. Das maschinelle Lernsystem 60 kann dann mit den Fehlerbeispielen des bisherigen Produkts vortrainiert werden, und mit nur wenigen, insbesondere nur je einem einzigen, Beispielen von Fehlern des neuen Produkts nachtrainiert werden.
-
Die so erzeugte Information über Fehler von Fertigungserzeugnissen kann beispielsweise benutzt werden, um auf ihrer Basis die Produktionsanlage zu überwachen.
-
Hierbei ist es selbstverständlich optional auch möglich, dass ein als fehlerhaft klassifiziertes Fertigungserzeugnis von der Produktionsanlage automatisiert aussortieren zu lassen.
-
Alternativ oder zusätzlich ist es selbstverständlich auch möglich, abhängig von den identifizierten Fehlerklassen Parameter, die das Verhalten der Produktionsanlage bestimmen, zu variieren, um so die Fehlerrate der Fertigungserzeugnisse zu reduzieren.
-
Es ist auch möglich, dass der Sensor 30 ein Bild eines menschlichen oder tierischen Körpers oder eines Teils davon erfasst. Beispielsweise kann dies mittels eines optischen Signals erfolgen, oder mittels eines Ultraschallsignals, oder mittels eines MRT-Verfahrens. Das maschinelle Lernsystem 60 kann dann trainiert sein, abhängig von der Eingangsgröße x als Klassifikation y auszugeben, welches Krankheitsbild auf Basis diese Eingangsgröße x möglicherweise vorliegt. Das maschinelle Lernsystem 60 kann dann vortrainiert werden, und mit nur wenigen, insbesondere nur je einem einzigen, Beispielen von neuen Krankheitsbildern nachtrainiert werden.
-
In weiteren Ausführungsformen umfasst das Aktorsteuerungssystem 40 und/oder das Messsystem 41 den Sensor 30.
-
In noch weiteren Ausführungsformen umfasst das Aktorsteuerungssystem 40 alternativ oder zusätzlich auch den Aktor 10.
-
In weiteren bevorzugten Ausführungsformen umfasst das Aktorsteuerungssystem 40 und/oder das Messsystem 41 eine Ein- oder Mehrzahl von Prozessoren 45 und wenigstens ein maschinenlesbares Speichermedium 46, auf dem Anweisungen gespeichert sind, die dann, wenn sie auf den Prozessoren 45 ausgeführt werden, das Aktorsteuerungssystem 40 und/oder das Messsystem 41 veranlassen, das erfindungsgemäße Verfahren 8 auszuführen.
-
2 zeigt schematisch ein Ausführungsbeispiel eines Systems 140 zum Trainieren des maschinellen Lernsystems 60. Eine Trainingsdateneinheit 150 ermittelt geeignete Eingangsgrößen x, die dem maschinellen Lernsystem 60 zugeführt werden. Beispielsweise greift die Trainingsdateneinheit 150 auf eine computerimplementierte Datenbank zu, in dem ein Satz von Trainingsdaten gespeichert ist, und wählt z.B. zufällig aus dem Satz von Trainingsdaten Eingangsgrößen x aus. Optional ermittelt die Trainingsdateneinheit 150 auch zu den Eingangsgrößen x zugeordnete gewünschte Klassifikation ys , die einer Bewertungseinheit 180 zugeführt werden.
-
Das künstliche neuronale Netz x ist eingerichtet, aus den ihm zugeführten Eingangsgrößen x zugehörige Klassifikationen y zu ermitteln. Diese Klassifikationen y werden der Bewertungseinheit 180 zugeführt.
-
Eine Modifikationseinheit 160 ermittelt neue erste Parameter θ' und neue zweite Parameter ϕ' z.B. mit dem in 3 illustrierten Verfahren und führt diese dem ersten Parameterspeicher Q und dem zweiten Parameterspeicher P zu, wo sie die ersten Parameter θ und die zweiten Parameter ϕ ersetzen.
-
Die Bewertungseinheit
180 kann beispielsweise mittels einer von den Klassifikationen y und den gewünschten Klassifikationen
ys abhängigen Kostenfunktion (Englisch: loss function) eine Kenngröße
ermitteln, die eine Leistungsfähigkeit des maschinellen Lernsystems
60 charakterisiert. Erste Parameter
θ und zweite Parameter ϕ können abhängig von der Kenngröße
optimiert werden.
-
Das System 140 kann beispielsweise ein Computer oder eine Mehrzahl von Computer umfassen und es umfasst im Ausführungsbeispiel ein maschinenlesbares Speichermedium 200, auf dem das Computerprogramm 210 gespeichert ist, das eingerichtet ist, das erfindungsgemäße Verfahren auszuführen.
-
3 illustriert in einem Flussdiagramm den Ablauf eines Verfahrens gemäß eines Aspekts der Erfindung. Zunächst wird in das maschinelle Lernsystem 60 in einer Trainingsphase 1000 trainiert. Hierzu wird das maschinelle Lernsystem 60 zunächst beispielsweise mit dem in 5 illustrierten Verfahren trainiert. Vorzugsweise werden in diesem Schritt Trainingsbeispiele trainiert, zu deren gewünschter Klassifikation ys es jeweils eine große Zahl an Trainingsbeispielen gibt, beispielsweise jeweils mehr als eine Mindestanzahl, z.B. mehr als 10.
-
Dann (1200) ermittelt das trainierte maschinelle Lernsystem 60 in einer Klassifikationsphase beispielsweise mittels des in 4 illustrierten Verfahrens aus Eingangsgrößen x eine jeweils zugehörige Klassifikation y und steuert dann optional abhängig von der Klassifikation y den Aktor 10 an.
-
Das Verfahren kann beispielsweise durch ein Computerprogramm implementiert sein, das auf dem maschinenlesbaren Speichermedium 46 und/oder dem maschinenlesbaren Speichermedium 210 gespeichert ist und vom Aktorsteuerungssystem 40 und/oder dem Messsystem 41 und/oder dem Lernsystem 140 ausgeführt wird. In einer bevorzugten Ausführungsform werden die Schritte der Trainingsphase 1000 vom Lernsystem 140 ausgeführt, die Klassifikationsphase 1200 vom Aktorsteuerungssystem 40 und/oder dem Messsystem 41.
-
4 illustriert in einem Flussdiagramm einen Ablauf einer Ausführungsform des Verfahrens zum Ermitteln der Klassifikation y gemäß eines weiteren Aspekts der Erfindung. Zunächst (2000) werden aus einer Datenbank diejenigen Beispiele ausgelesen, zu denen es in einer vorhergehenden Trainingsphase 1000 des maschinellen Lernsystems 60 keine Trainingsbeispiele gab.
-
Anschließend wird die Unterstützungsmenge S bereitgestellt (2010). Die Unterstützungsmenge S wird dabei so gewählt, dass sie nur solche, vorzugsweise auch all jene, Beispiele enthält, zu deren zugehöriger Klassifikation es beim Training des maschinellen Lernsystems 60 keine Trainingsbeispiele gab.
-
Dann (2020) wird die aktuell am maschinellen Lernsystem 60 anliegende Eingangsgröße x erfasst und diejenige Klassifikation y ermittelt zu der die zugehörige a-posteriori-Wahrscheinlichkeit p(y|x,XS,YS) maximal wird. Dies kann beispielsweise durch direkte Auswertung von Gleichung (5) an einzelnen diskreten Punkten der Klassifikation y geschehen. Vorzugsweise wird jedoch angenommen, dass die Ungleichheitsrelation aus Gleichung (6) näherungsweise einer Gleichheitsrelation entspricht, und die a-posteriori-Wahrscheinlichkeit p(y|x,XS,YS) näherungsweise durch die variationelle untere Schranke ELBO (Gleichung (7)) bestimmt. Dann kann die Maximierung beispielsweise mit einem Gradientenaufstiegsverfahren erfolgen. Diejenige Klassifikation y, die die a-posteriori-Wahrscheinlichkeit p(y|x,XS,YS) maximiert, wird vom maschinellen Lernsystem 60 als die ermittelte Klassifikation y ausgegeben, abhängig von der dann der Aktor 10 entsprechend angesteuert werden kann.
-
Das Verfahren kann beispielsweise durch ein Computerprogramm implementiert sein, das auf dem maschinenlesbaren Speichermedium 46 gespeichert ist und vom Aktorsteuerungssystem 40 und/oder dem Messsystem 41 ausgeführt wird.
-
5 illustriert in einem Flussdiagramm einen Ablauf einer Ausführungsform des Verfahrens zum Training des maschinellen Lernsystems 60. Zunächst (3000) werden die ersten Parameter θ und die zweiten Parameter ϕ auf vorgebbare Initialwerte initialisiert. Ferner werden gelabelte Trainingsdaten umfassend die Menge X von Eingangsgrößen x und die Menge Y von zugehörigen gewünschten Klassifikationen ys zur Verfügung gestellt, beispielsweise, indem sie aus einer Datenbank ausgelesen werden. Es ist möglich, dass nur solche Trainingsdaten bereitgestellt werden, zu deren gewünschter Klassifikation ys es mehr als eine vorgebbare Mindestanzahl an Trainingsbeispielen gibt.
-
Dann (3010) wird aus der Menge ein Stapel (Englisch: batch) von Eingangsgrößen x und zugehörigen gewünschten Klassifikationen ys ausgewählt. Die Auswahl des Stapels erfolgt vorzugsweise derart, dass es möglich ist, aus dem Stapel die Unterstützungsmenge S derart auszuwählen, dass die Unterstützungsmenge S zu jeder der möglichen Klassifikationen nicht mehr als die erste vorgebbare Anzahl an Trainingsbeispielen, insbesondere nur ein einziges Trainingsbeispiel, enthält.
-
Anschließend (3020) wird aus dem Stapel die Unterstützungsmenge S derart ausgewählt, dass die Unterstützungsmenge S zu jeder der möglichen Klassifikationen nicht mehr als die erste vorgebbare Anzahl an Trainingsbeispielen, insbesondere nur ein einziges Trainingsbeispiel, enthält.
-
Dann (
3030) werden die ersten Parameter θ und die zweiten Parameter ϕ derart angepasst, dass sie die rechte Seite von Gleichung (7) bzw. (9) maximieren. Dies kann beispielsweise mittels eines Gradientenaufstiegsverfahrens erfolgen. Die dabei notwendige Ableitung der Erwartungswertbildung
nach den ersten Parametern θ und den zweiten Parametern ϕ kann dabei mittels des Reparametrierungs-Tricks wie aus „Auto-Encoding Variational Bayes “, arXiv preprint arXiv:1312.6114v10, 2014, Diederik P Kingma, Max Welling bekannt ermittelt werden.
-
Anschließend (3040) wird überprüft, ob ein Abbruchkriterium erfüllt ist, beispielsweise, ob alle Trainingsbeispiele verwendet wurden oder ob ein Konvergenzkriterium für die ersten Parameter θ und die zweiten Parameter ϕ Erfüllt ist. Ist dies nicht der Fall, wird eine neue Trainingsepisode gestartet (3010), andernfalls werden die so ermittelten ersten Parameter θ und zweiten Parameter ϕ als neue erste Parameter θ' und neue zweite Parameter ϕ' übernommen, und das Verfahren endet (3050).
-
Es versteht sich, dass das Verfahren nicht nur wie beschrieben vollständig in Software implementiert sein kann. Es kann auch in Hardware implementiert sein, oder in einer Mischform aus Software und Hardware.