-
INFORMATION ÜBER EINE ZUGEHÖRIGE ANMELDUNG
-
Diese Anmeldung beansprucht die Priorität der provisorischen
US-Patentanmeldung Ser. Nr. 62/291,025 , eingereicht am 4. Februar 2016, die hierin in ihrer Gesamtheit durch Bezugnahme enthalten ist.
-
HINTERGRUND
-
Technisches Gebiet
-
Die vorliegende Erfindung betrifft ein Computerlernen und, genauer gesagt, ein Verbessern eines Lernens einer Abstandsmetrik mit einem N-Paar-Verlust.
-
Beschreibung des zugehörigen Standes der Technik
-
Ein tiefes Lernen von Metrik ist auf viele Arten in Angriff genommen worden, aber vor allem sind kontrastiver Verlust und Dreiergruppen-Verlust zum Trainieren von Zielsetzungen eines tiefen Lernens verwendet worden. Frühere Ansätze berücksichtigten eine paarweise Beziehung zwischen zwei unterschiedlichen Klassen und litten an langsamer Konvergenz zu einem nicht zufriedenstellenden lokalen Minimum. Somit gibt es eine Notwendigkeit für ein verbessertes Lernen von Metrik.
-
ZUSAMMENFASSUNG
-
Gemäß einem Aspekt der vorliegenden Erfindung wird ein computerimplementiertes Verfahren zur Verfügung gestellt. Das Verfahren enthält ein Empfangen, durch einen Prozessor, von N Paaren von Trainingsbeispielen und Klassenlabels für die Trainingsbeispiele, die einer Vielzahl von Klassen entsprechen. Jedes der N Paare enthält ein jeweiliges Ankerbeispiel und enthält weiterhin ein jeweiliges Nicht-Ankerbeispiel, die ein positives Trainingsbeispiel oder ein negatives Trainingsbeispiel sein können. Das Verfahren enthält weiterhin ein Extrahieren, durch den Prozessor, von Merkmalen der N Paare durch Anwenden eines tiefen faltenden neuronalen Netzes auf die N Paare und auf die Klassenlabel. Das Verfahren enthält auch ein Berechnen, durch den Prozessor für jedes der N Paare basierend auf den Merkmalen, eines jeweils ähnlichen Maßes zwischen dem jeweiligen Ankerbeispiel und dem jeweiligen Nicht-Ankerbeispiel. Das Verfahren enthält zusätzlich ein Berechnen, durch den Prozessor, eines Ähnlichkeitswerts basierend auf dem jeweiligen Ähnlichkeitsmaß für jedes der N Paare. Der Ähnlichkeitswert stellt eine oder mehrere Ähnlichkeiten zwischen allen Ankerpunkten und allen positiven Trainingsbeispielen in den N Paaren relativ zu einer oder mehreren Ähnlichkeiten zwischen allen der Ankerpunkte und allen negativen Trainingsbeispielen in den N Paaren dar. Das Verfahren enthält weiterhin ein Maximieren, durch den Prozessor, des Ähnlichkeitswerts für das jeweilige Ankerbeispiel für jedes der N Paare, um die Trainingsbeispiele von einer selben der Vielzahl von Klassen in einem Verteilungsraum zusammenzuziehen, während die Trainingsbeispiele von unterschiedlichen der Vielzahl von Klassen im Verteilungsraum weg voneinander gestoßen werden.
-
Gemäß einem weiteren Aspekt der vorliegenden Erfindung wird ein System zur Verfügung gestellt. Das System enthält einen Prozessor. Der Prozessor ist konfiguriert, um N Paare von Trainingsbeispielen und Klassenlabels für die Trainingsbeispiele, die einer Vielzahl von Klassen entsprechen, zu empfangen. Jeds der N Paare enthält ein jeweiliges Ankerbeispiel und enthält weiterhin ein jeweiliges Nicht-Ankerbeispiel, die ein positives Trainingsbeispiel oder ein negatives Trainingsbeispiel sein können. Der Prozessor ist weiterhin konfiguriert, um Merkmale der N Paare durch Anwenden eines tiefen faltenden neuronalen Netzes auf die N Paare und auf die Klassenlabel zu extrahieren. Der Prozessor ist auch konfiguriert, um für jedes der N Paare basierend auf den Merkmalen ein jeweiliges ähnliches Maß zwischen dem jeweiligen Ankerbeispiel und dem jeweiligen Nicht-Ankerbeispiel zu berechnen. Der Prozessor ist zusätzlich konfiguriert, um einen Ähnlichkeitswert basierend auf dem jeweiligen Ähnlichkeitsmaß für jedes der N Paare zu berechnen. Das Ähnlichkeitsmaß stellt eine oder mehrere Ähnlichkeiten zwischen allen Ankerpunkten und allen positiven Trainingsbeispielen in den N Paaren relativ zu einer oder mehreren Ähnlichkeiten zwischen allen der Ankerpunkte und allen negativen Trainingsbeispielen in den N Paaren dar. Der Prozessor ist weiterhin konfiguriert, um den Ähnlichkeitswert für das jeweilige Ankerbeispiel für jedes der N Paare zu maximieren, um die Trainingsbeispiele von einer selben der Vielzahl von Klassen in einem Verteilungsraum zusammenzuziehen, während die Trainingsbeispiele von unterschiedlichen der Vielzahl von Klassen im Verteilungsraum weg voneinander gestoßen werden.
-
Diese und andere Merkmale und Vorteile werden aus der folgenden detaillierten Beschreibung ihrer illustrativen Ausführungsbeispiele ersichtlich werden, welche in Verbindung mit den beigefügten Zeichnungen zu lesen ist.
-
Figurenliste
-
Die Offenbarung wird Details in der folgenden Beschreibung bevorzugter Ausführungsformen unter Bezugnahme auf die folgenden Figuren zur Verfügung stellen, wobei:
- 1 ein Blockdiagramm eines beispielhaften Verarbeitungssystems 100, auf welches die vorliegende Erfindung angewendet werden kann, gemäß einer Ausführungsform der vorliegenden Erfindung zeigt;
- 2 eine beispielhafte Umgebung 200, auf welche die vorliegende Erfindung angewendet werden kann, gemäß einer Ausführungsform der vorliegenden Erfindung zeigt;
- 3 ein Block/Ablauf-Diagramm hoher Ebene eines beispielhaften Systems/Verfahrens 300 für ein tiefes Lernen einer Metrik mit einem N-Paar-Verlust gemäß einer Ausführungsform der vorliegenden Erfindung zeigt;
- 4 weiterhin einen Schritt 310 des Verfahrens 300 der 3 gemäß einer Ausführungsform der vorliegenden Erfindung zeigt. Insbesondere zeigt 4 weiterhin ein Lernen einer Abstandsmetrik mit einem N-Paar-Verlust 400 gemäß einer Ausführungsform der vorliegenden Erfindung;
- 5 ein Diagramm ist, das graphisch den N-Paar-Verlust 400 der 4 gemäß einer Ausführungsform der vorliegenden Erfindung gegenüber einem herkömmlichen Dreiergruppen-Verlust 599 gemäß dem Stand der Technik zeigt; und
- 6-8 ein Ablaufdiagramm eines Verfahrens 600 für ein tiefes Lernen einer Metrik mit einem N-Paar-Verlust gemäß einer Ausführungsform der vorliegenden Erfindung zeigen.
-
DETAILLIERTE BESCHREIBUNG BEVORZUGTER AUSFÜHRUNGSFORMEN
-
Die vorliegende Erfindung ist auf ein Verbessern eines Lernens einer Abstandsmetrik mit einem N-Paar-Verlust gerichtet.
-
Die vorliegende Erfindung löst das grundsätzliche Maschinenlernproblem eines Lernens einer Abstandsmetrik, wenn die Anzahl von ausgegebenen Klassen extrem groß ist, die Gesamtanzahl von ausgegebenen Klassen unbekannt ist oder die Verteilung von ausgegebenen Klassen über die Zeit variabel ist, unter Verwendung eines tiefen Lernens.
-
Bei einer Ausführungsform und gegensätzlich zu Ansätzen nach dem Stand der Technik berücksichtigt die vorliegende Erfindung N Paare von Beispielen von N unterschiedlichen Klassen auf einmal.
-
Bei einer Ausführungsform führt die vorliegende Erfindung eine neue Zielfunktion für ein tiefes Lernen einer Metrik ein. Die Zielfunktion lässt eine schnellere Konvergenz zu einem besseren lokalen Optimum zu.
-
Die vorliegende Erfindung stellt einen N-Paar-Verlust für ein tiefes Lernen einer Metrik zur Verfügung. Die vorliegende Erfindung lässt ein Trainieren von tiefen neuronalen Netzen zu, so dass sie trainiert, Beispiele aus derselben Klasse zusammenzuziehen, während sie diejenigen von unterschiedlichen Klassen voneinander wegstößt. Die vorliegende Erfindung stößt nicht nur ein negatives Beispiel bei jedem Update weg, sondern N - 1 negative Beispiele von allen unterschiedlichen Klassen basierend auf ihren relativen Abständen zum Referenzbeispiel.
-
1 zeigt ein Blockdiagramm eines beispielhaften Verarbeitungssystems 100, auf welches die Erfindungsprinzipien angewendet werden können, gemäß einer Ausführungsform der vorliegenden Erfindung. Das Verarbeitungssystem 100 enthält wenigstens einen Prozessor (CPU) 104, der betriebsmäßig mit anderen Komponenten über einen Systembus 102 gekoppelt ist. Ein Cache 106, ein Nurlesespeicher (ROM) 108, ein Direktzugriffsspeicher (RAM) 110, ein Eingabe/Ausgabe-(I/O-)Adapter 120, ein Klangadapter 130, ein Netzwerkadapter 140, ein Anwenderschnittstellenadapter 150 und ein Anzeigeadapter 160 sind betriebsmäßig mit dem Systembus 102 gekoppelt.
-
Eine erste Speichervorrichtung 122 und eine zweite Speichervorrichtung 124 sind betriebsmäßig mit dem Systembus 102 durch den I/O-Adapter 120 gekoppelt. Die Speichervorrichtungen 122 und 124 können irgendetwas von einer Plattenspeichervorrichtung (z.B. einer magnetischen oder optischen Plattenspeichervorrichtung), einer Festkörper-Magnetvorrichtung und so weiter sein. Die Speichervorrichtungen 122 und 124 können derselbe Typ von Speichervorrichtung oder unterschiedliche Typen von Speichervorrichtungen sein.
-
Ein Lautsprecher 132 ist betriebsmäßig mit dem Systembus 102 durch den Klangadapter 130 gekoppelt. Ein Transceiver 142 ist betriebsmäßig mit dem Systembus 102 durch den Netzwerkadapter 140 gekoppelt. Eine Anzeigevorrichtung 162 ist betriebsmäßig mit dem Systembus 102 durch den Anzeigeadapter 160 gekoppelt.
-
Eine erste Anwendereingabevorrichtung 152, eine zweite Anwendereingabevorrichtung 154 und eine dritte Anwendereingabevorrichtung 156 sind betriebsmäßig mit dem Systembus 102 durch den Anwenderschnittstellenadapter 150 gekoppelt. Die Anwendereingabevorrichtungen 152, 154 und 156 können irgendetwas von einer Tastatur, einer Maus, einer Kleintastatur bzw. einer Folientastatur, einer Bilderfassungsvorrichtung, einer Bewegungserfassungsvorrichtung, einem Mikrophon, einer Vorrichtung, die die Funktionalität von wenigstens zwei der vorangehenden Vorrichtung enthält, und so weiter sein. Natürlich können andere Typen von Eingabevorrichtungen auch verwendet werden, während der Sinngehalt der vorliegenden Erfindung beibehalten wird. Die Anwendereingabevorrichtungen 152, 154 und 156 können derselbe Typ von Anwendereingabevorrichtung oder unterschiedliche Typen von Anwendereingabevorrichtungen sein. Die Anwendereingabevorrichtungen 152, 154 und 156 werden verwendet, um Information zu dem System 100 einzugeben und von diesem auszugeben.
-
Natürlich kann das Verarbeitungssystem 100 auch andere Elemente (nicht gezeigt) enthalten, wie es von einem Fachmann auf dem Gebiet ohne weiteres in Erwägung gezogen wird, sowie gewisse Elemente weglassen. Beispielsweise können verschiedene andere Eingabevorrichtungen und/oder Ausgabevorrichtungen im Verarbeitungssystem 100 enthalten sein, und zwar in Abhängigkeit von der bestimmten Implementierung desselben, wie es von einem Fachmann auf dem Gebiet ohne weiteres verstanden wird. Beispielsweise können verschiedene Typen von drahtlosen und/oder verdrahteten Eingabe- und/oder Ausgabevorrichtungen verwendet werden. Darüber hinaus können auch zusätzliche Prozessoren, Steuerungen, Speicher und so weiter in verschiedenen Konfigurationen verwendet werden, wie es von einem Fachmann auf dem Gebiet ohne weiteres wahrgenommen wird. Diese und andere Variationen des Verarbeitungssystems 100 werden von einem Fachmann auf dem Gebiet ohne weiteres in Erwägung gezogen, dem die Lehren der hierin zur Verfügung gestellten vorliegenden Erfindung übergeben werden.
-
Darüber hinaus ist es wahrzunehmen, dass eine nachstehend in Bezug auf 2 beschriebene Umgebung 200 eine Umgebung zum Implementieren jeweiliger Ausführungsformen der vorliegenden Erfindung ist. Ein Teil oder das Gesamte des Verarbeitungssystems 100 kann in einem oder mehreren der Elemente der Umgebung 200 implementiert sein.
-
Weiterhin ist es wahrzunehmen, dass das Verarbeitungssystem 100 wenigstens einen Teil des hierin beschriebenen Verfahrens durchführen kann, einschließlich beispielsweise wenigstens eines Teils eines Verfahrens 300 der 3 und/oder wenigstens eines Teils des Verfahrens 400 der 4 und/oder wenigstens eines Teils eines Verfahrens 600 der 6-8. Gleichermaßen kann ein Teil oder die Gesamtheit der Umgebung 200 verwendet werden, um wenigstens einen Teil des Verfahrens 300 der 3 und/oder wenigstens einen Teil des Verfahrens 400 der 4 und/oder wenigstens einen Teil des Verfahrens 600 der 6-8 durchzuführen.
-
2 zeigt eine beispielhafte Umgebung 200, auf welche die vorliegende Erfindung angewendet werden kann, gemäß einer Ausführungsform der vorliegenden Erfindung. Die Umgebung 200 stellt ein Computernetzwerk dar, auf welches die vorliegende Erfindung angewendet werden kann. Die in Bezug auf 2 gezeigten Elemente sind der Darstellung halber dargelegt. Jedoch ist es wahrzunehmen, dass die vorliegende Erfindung auf andere Netzwerkkonfigurationen angewendet werden kann, wie es von einem Fachmann auf dem Gebiet ohne weiteres in Erwägung gezogen wird, dem die Lehren der hierin zur Verfügung gestellten vorliegenden Erfindung übergeben werden, während der Sinngehalt der vorliegenden Erfindung beibehalten wird.
-
Die Umgebung 200 enthält wenigstens eine Gruppe von Computerverarbeitungssystemen 210. Die Computerverarbeitungssysteme 210 können irgendein Typ von Computerverarbeitungssystem sein, einschließlich, aber nicht darauf beschränkt, Server, Desktops, Laptops, Tablets, Smartphones, Medienabspielvorrichtungen und so weiter. Der Darstellung halber enthalten die Computerverarbeitungssysteme 210 einen Server 210A, einen Server 210B und einen Server 210C.
-
Bei einer Ausführungsform verbessert die vorliegende Erfindung ein Lernen einer Abstandsmetrik mit einem N-Paar-Verlust. Die vorliegende Erfindung kann irgendeines der Computerverarbeitungssysteme 210 verwenden, um ein Lernen einer Abstandsmetrik mit einem tiefen Lernen durchzuführen, wie es hierin beschrieben ist. Bei einer Ausführungsform kann eines der Computerverarbeitungssysteme 210 Information klassifizieren, die durch andere der Computerverarbeitungssysteme empfangen ist.
-
Bei der in 2 gezeigten Ausführungsform sind die ihre Elemente durch ein Netzwerk (Netzwerke) 201 miteinander verbunden. Jedoch können bei anderen Ausführungsformen auch andere Typen von Verbindungen verwendet werden. Zusätzlich können ein oder mehrere Elemente in 2 durch eine Vielfalt von Vorrichtungen implementiert sein, die folgendes enthalten, aber nicht darauf beschränkt sind: Digitalsignalverarbeitungs-(DSP-)Schaltungen, programmierbare Prozessoren, anwendungsspezifische integrierte Schaltungen (ASICs), feldprogrammierbare Gate-Arrays (FPGAs), komplexe programmierbare Logikvorrichtungen (CPLDs), und so weiter. Diese und andere Variationen der Elemente der Umgebung 200 werden von einem Fachmann auf dem Gebiet ohne weiteres bestimmt, dem die Lehren der hierin zur Verfügung gestellten vorliegenden Erfindung übergeben werden, während der Sinngehalt der vorliegenden Erfindung beibehalten wird.
-
3 zeigt ein Block/Ablauf-Diagramm hoher Ebene eines beispielhaften Systems/Verfahrens 300 für tiefes Lernen einer Metrik mit einem N-Paar-Verlust gemäß einer Ausführungsform der vorliegenden Erfindung.
-
Bei einem Schritt 310 wird ein Lernen einer Abstandsmetrik mit einem tiefen Lernen durchgeführt.
-
Bei einer Ausführungsform enthält der Schritt 310 Schritte 310A, 310B und 310C.
-
Beim Schritt 310A erfolgt ein Bereitstellen von Bildern zu einem tiefen faltenden neuronalen Netz 350. Die Bilder enthalten N Paare von Beispielen aus N unterschiedlichen Klassen auf einmal.
-
Beim Schritt 310B erfolgt ein Extrahieren von Merkmalen aus den Bildern.
-
Beim Schritt 310C erfolgt ein Durchführen eines Lernens einer Abstandsmetrik mit einem N-Paar-Verlust an den Merkmalen und ein Ausbilden eines Klassifizierers 370.
-
Bei einem Schritt 320 erfolgt ein Testen des Systems auf eine Bildverifizierung.
-
Bei einer Ausführungsform enthält der Schritt 320 Schritte 320A, 320B, 320C, 320D, 320E und 320F.
-
Beim Schritt 320A erfolgt ein Empfangen eines ersten Bilds (Bild 1).
-
Beim Schritt 320B erfolgt ein Empfangen eines zweiten Bilds (Bild 2).
-
Beim Schritt 320C erfolgt ein Extrahieren von Merkmalen unter Verwendung eines trainierten tiefen faltenden neuronalen Netzes 350A. Das tiefe faltende neuronale Netz 350 wird trainiert, um ein trainiertes tiefes faltendes neuronales Netz 350A zu werden.
-
Beim Schritt 320D erfolgt ein Ausgeben eines ersten Merkmals (Merkmal 1)
-
Beim Schritt 320E erfolgt ein Ausgeben eines zweiten Merkmals (Merkmal 2)
-
Beim Schritt 320F erfolgt ein Eingeben der Merkmale (Merkmal 1 und Merkmal 2) und in den Klassifizierer 370.
-
Der Klassifizierer 370 kann verwendet werden, um Vorhersagen zu erzeugen, basierend auf welchen gewisse Aktionen vorgenommen werden können (z.B. siehe 6).
-
In Bezug auf den Schritt 310 ist wahrzunehmen, dass dieser selbe sich von früheren Ansätzen bezüglich wenigstens eines Verwendens von N Paaren von Beispielen aus N unterschiedlichen Klassen auf einmal unterscheidet.
-
In Bezug auf den Schritt 320 ist wahrzunehmen, dass der N-Paar-Verlust als eine Form von Nachbarschaftskomponentenanalyse angesehen werden kann.
-
4 zeigt weiterhin den Schritt 310 des Verfahrens 300 der 3 gemäß einer Ausführungsform der vorliegenden Erfindung. Insbesondere zeigt
-
4 weiterhin ein Lernen einer Abstandsmetrik mit einem N-Paar-Verlust 400 gemäß einer Ausführungsform der vorliegenden Erfindung.
-
Das tiefe faltende neuronale Netz 350 empfängt N Paare von Bildern 421 aus N unterschiedlichen Klassen auf einmal. In 4 zeigt das Bezugszeichen 401 Merkmale vor einem Trainieren mit einem N-Paar-Verlust und zeigt das Bezugszeichen 402 das Merkmal nach einem Trainieren mit einem N-Paar-Verlust.
-
In 4 gelten folgende Bezeichnungen:
- x:
- eingegebenes Bild;
- f:
- ausgegebenes Merkmal;
- fi:
- Beispiel vom i-ten Paar;
- fi +:
- positives Beispiel vom i-ten Paar; wobei
fi's unterschiedliche Klassenlabel haben.
-
Bei einer Ausführungsform kann ein N-Paar-Verlust wie folgt definiert werden:
-
5 ist ein Diagramm, das den N-Paar-Verlust 400 der 4 gemäß einer Ausführungsform der vorliegenden Erfindung gegenüber einem herkömmlichen Dreiergruppen-Verlust 599 gemäß dem Stand der Technik graphisch zeigt.
-
Der herkömmliche Dreiergruppen-Verlust 599 ist äquivalent zu einem 2-Paar-Verlust.
-
Der 2-Paar-Verlust ist eine Verallgemeinerung für einen N-Paar-Verlust für N>2.
-
Es gelten die folgenden Gleichungen:
-
Die 6-8 zeigen ein Ablaufdiagramm eines Verfahrens 600 für ein tiefes Lernen einer Metrik mit einem N-Paar-Verlust gemäß einer Ausführungsform der vorliegenden Erfindung.
-
Bei einem Schritt 610 erfolgt ein Empfangen von N Paaren von Trainingsbeispielen und Klassenlabels für die Trainingsbeispiele, die einer Vielzahl von Klassen entsprechen. Jedes der N Paare enthält ein jeweiliges Ankerbeispiel und enthält weiterhin ein jeweiliges Nicht-Ankerbeispiel, die ein positives Trainingsbeispiel oder ein negatives Trainingsbeispiel sein können. Bei einer Ausführungsform kann jedes der N Paare der Trainingsbeispiele einer unterschiedlichen der Vielzahl von Klassen entsprechen. Bei einer Ausführungsform kann die Vielzahl von Klassen zufällig als eine Untergruppe aus einer Gruppe von Klassen ausgewählt werden, wobei die Gruppe von Klassen die Vielzahl von Klassen und eine oder mehrere andere Klassen enthält. Bei einer Ausführungsform gilt für die Gesamtanzahl der Vielzahl von Klassen wenigstens eines von folgendem: (i) sie ändert sich im Verlauf der Zeit, (ii) sie ist größer als ein Schwellenausmaß und (iii) sie ist unbekannt.
-
Bei einem Schritt 620 erfolgt ein Extrahieren von Merkmalen der N Paare durch Anwenden eines tiefen faltenden neuronalen Netzes auf die N Paare und auf die Klassenlabel.
-
Bei einem Schritt 630 erfolgt ein Berechnen, für jedes der N Paare basierend auf den Merkmalen, eines jeweiligen ähnlichen Maßes zwischen dem jeweiligen Ankerbeispiel und dem jeweiligen Nicht-Ankerbeispiel.
-
Bei einem Schritt 640 erfolgt ein Berechnen eines Ähnlichkeitswerts basierend auf dem jeweiligen Ähnlichkeitsmaß für jedes der N Paare. Der Ähnlichkeitswert stellt eine oder mehrere Ähnlichkeiten zwischen allen Ankerpunkten und allen positiven Trainingsbeispielen in den N Paaren relativ zu einer oder mehreren Ähnlichkeiten zwischen allen der Ankerpunkte und allen negativen Trainingsbeispielen in den N Paaren dar.
-
Bei einer Ausführungsform enthält der Schritt 640 einen oder mehrere von Schritten 640A, 640B und 640C.
-
Beim Schritt 640A erfolgt ein Begrenzen einer Variablen (pi), die verwendet wird, um den jeweiligen Ähnlichkeitswert von jedem der N Paare von Trainingsbeispielen zu berechnen, durch wenigstens eine einer unteren Grenze und einer oberen Grenze, wobei die Variable eine relative Ähnlichkeit zwischen dem Ankerpunkt und den positiven Trainingsbeispielen in Bezug auf den Ankerpunkt und die negativen Trainingsbeispiele darstellt.
-
Beim Schritt 640B erfolgt ein Berechnen eines Gradienten eines Logarithmus des Ähnlichkeitswerts.
-
Beim Schritt 640C erfolgt ein Maximieren einer Zielfunktion für ein tiefes Lernen einer Metrik.
-
Bei einer Ausführungsform enthält der Schritt 640C einen Schritt 640C1.
-
Beim Schritt 640C1 erfolgt ein Maximieren eines Teilbereichs der Zielfunktion, der sich auf die Ankerpunkte bezieht, wobei die Zielfunktion den Teilbereich in Bezug auf die Ankerpunkte und wenigstens einen anderen Teilbereich in Bezug auf die Nicht-Ankerpunkte enthält.
-
Bei einem Schritt 650 erfolgt ein Maximieren des Ähnlichkeitswerts für das jeweilige Ankerbeispiel für jedes der N Paare, um die Trainingsbeispiele aus derselben der Vielzahl von Klassen in einem Verteilungsraum zusammenzuziehen, während die Trainingsbeispiele von unterschiedlichen der Vielzahl von Klassen im Verteilungsraum voneinander weggestoßen werden. Bei einer Ausführungsform kann der Schritt 650 N-1 Beispiele gleichzeitig von einer einzigen Referenzprobe unter den N Paaren von Trainingsbeispielen im Verteilungsraum wegstoßen. Bei einer Ausführungsform kann der Schritt 650 gleichzeitig N-1 Beispiele in Richtung zu einer einzigen Referenzprobe unter den N Paaren von Trainingsbeispielen im Verteilungsraum wegstoßen.
-
Bei einem Schritt 660 erfolgt ein Erzeugen einer Vorhersage unter Verwendung des tiefen faltenden neuronalen Netzes. Beispielsweise erfolgt ein Erzeugen einer Gesichtserkennungsvorhersage, einer Spracherkennungsvorhersage, einer Sprechererkennungsvorhersage und so weiter.
-
Bei einem Schritt 670 erfolgt ein Durchführen einer Aktion in Reaktion auf die Vorhersage. Wie es von einem Fachmann auf dem Gebiet in Erwägung gezogen wird, hängt die vorgenommene Aktion von der Implementierung ab. Beispielsweise kann ein Zugang zu einer Entität bzw. Einheit, einschließlich, aber nicht darauf beschränkt, einer Vorrichtung, einem System oder einer Anlage, in Reaktion auf die Vorhersage gewährt werden. Es ist wahrzunehmen, dass die vorangehenden Aktionen lediglich illustrativ sind und somit auch andere Aktionen durchgeführt werden können, wie es von einem Fachmann auf dem Gebiet ohne weiteres wahrgenommen wird, während der Sinngehalt der vorliegenden Erfindung beibehalten wird.
-
Bei einer Ausführungsform enthält der Schritt 670 einen Schritt 670A.
-
Beim Schritt 670A erfolgt ein Verifizieren eines Anwenders und eines Bereitstellens des Anwenderzugangs zu einer Entität basierend auf der Vorhersage.
-
Nun wird eine Beschreibung in Bezug auf ein überwachtes tiefes Lernen einer Metrik gemäß einer Ausführungsform der vorliegenden Erfindung angegeben werden.
-
Die Beschreibung in Bezug auf ein überwachtes tiefes Lernen einer Metrik wird mit einer Beschreibung in Bezug auf einen kontrastiven Verlust und einen Dreiergruppen-Verlust beginnen.
-
Ein überwachtes tiefes Lernen einer Metrik zielt auf ein Lernen einer Einbettungsvektordarstellung der Daten unter Verwendung von tiefen neuronalen Netzen ab, die den Abstand zwischen Beispielen aus derselben Klassen klein und denjenigen aus unterschiedlichen Klassen groß erhält. Die Funktionen für kontrastiven Verlust und Dreiergruppen- bzw. Triple-Verlust sind verwendet worden, um tiefe einbettende Netze zu trainieren:
wobei f(·;θ): χ → ℝ
K ein Einbettungskernel ist, der durch tiefe neuronale Netze definiert ist, und y
i ∈{1, ..., L}'s die Label der Daten x
i ∈ χ sind. Hierin werden x
+ und x
-verwendet, um jeweils positive und negative Beispiele von x darzustellen, d.h. y
+ = y und y
- ≠ y. [d]+ = max{0; d} und m > 0 ist ein Abstimmparameter für einen Spielraum. Der Einfachheit halber wird f = f(x) verwendet, um eine Einbettungsvektordarstellung von x zu bezeichnen, während sie alle hochgestellten und tiefgestellten Indizes übernimmt, wenn sie existieren. Zwei Zielfunktionen sind ähnlich in dem Sinne, dass sie beide Einbettungskernel optimieren, um den Abstand zwischen Beispielen im Labelraum zu dem Einbettungsraum zu erhalten, aber der Dreiergruppen-Verlust kann als eine Entspannung bzw. Lockerung des kontrastiven Verlusts angesehen werden, da er nur für den relativen Spielraum von Abständen zwischen positiven und negativen Paaren sorgt, aber nicht ihre Absolutwerte. Die Verlustfunktionen sind in Bezug auf die Kernelparameter θ unterscheidbar und sie können daher ohne weiteres als eine Zielfunktion zum Trainieren tiefer neuronaler Netze verwendet werden.
-
Obwohl es einfach klingt, ist ein Anwenden von Funktionen eines kontrastiven Verlusts oder eines Dreiergruppen-Verlusts, um tiefe neuronale Netze zu trainieren, die einen stark unterscheidbaren Einbettungsvektor zur Verfügung stellen können, nicht trivial, weil die Spielraum- bzw. Randbeschränkungen der obigen Verlustfunktionen für die meisten der Trainingspaare oder Dreiergruppen nach einigen Epochen bzw. Zeiträumen eines Trainierens auf einfache Weise erfüllt werden können. Um schlechte lokale Minima zu vermeiden, sind unterschiedliche Datenauswahlverfahren erforscht worden, wie beispielsweise ein Online-Dreiergruppenauswahlalgorithmus, der (semi-)harte negative, aber insgesamt positive Beispiele innerhalb jedes Mini-Batchs auswählt, der einige tausende von Exemplaren enthält. Obwohl der Datenauswahlschritt wesentlich ist, wird er uneffizienter für ein tiefes Lernen einer Metrik, da jede Datenprobe durch den Vorwärtsverlauf von tiefen neuronalen Netzen gehen sollte, um den Abstand zu berechnen.
-
Nun wird eine Beschreibung in Bezug auf einen N-Paar-Verlust für ein tiefes Lernen einer Metrik gemäß einer Ausführungsform der vorliegenden Erfindung angegeben. Ebenso wird ein theoretischer Einblick in Bezug darauf zur Verfügung gestellt, warum ein N-Paar-Verlust besser als andere existierende Verlustfunktionen für ein tiefes Lernen einer Metrik sind, indem Beziehungen zu diesen Verlustfunktionen gezeigt werden, wie beispielsweise einen Dreiergruppen-Verlust und einen Softmax-Verlust.
-
Nun wird eine Beschreibung eines N-Paar-Verlusts angegeben werden. Es sollen N Paare von Trainingsbeispielen
und Labels
betrachtet werden. Per Definition gilt
und es wird vorausgesetzt, dass keines der Paare von Beispielen von derselben Klasse ist, d.h. y
i ≠ y
j ∀i ≠ j. Das Ähnlichkeitsmaß zwischen dem Ankerpunkt x
i und den positiven oder negativen Punkten
ist definiert wie folgt:
und der Wert
ist eine normalisierte Eigenähnlichkeit d.h.
-
Es ist zu beachten, dass p
i durch (
0,
1) begrenzt ist und es die relative Ähnlichkeit zwischen einem Anker und positiven Punkten zu den Ähnlichkeiten zwischen Anker und negativen Punkten darstellt. Ein Maximieren des Werts von allen Ankerpunkten in einer N-Paar-Trainingsuntergruppe zieht die Beispiele aus derselben Klasse zusammen, aber gleichzeitig stößt es die Beispiele aus unterschiedlichen Klassen basierend auf ihrer relativen Unähnlichkeit weg, d.h. negative Beispiele in der Nähe eines Ankerpunkts werden weggestoßen werden, außer diejenigen, die bereits weit genug weg sind, wie es in
4 dargestellt ist. Nach allem wird der N-Paar-Verlust wie folgt definiert:
-
Der Gradient von log p
i w.r.t. f
i, f
i +, f
j können wie folgt abgeleitet werden:
und der Gradient in Bezug auf θ kann durch eine Kettenregel berechnet werden.
-
TABELLE
1 zeigt einen Vergleich von Verlustfunktionen für ein tiefes Lernen einer Metrik. Ein 2-Paar-Verlust ist äquivalent zu einem Dreiergruppen-Verlust unter ∈ Konvergenzkriterien, während seine Wertfunktion eine Annäherung an diejenige eines N-Paar-Verlusts für N>2 ist.
TABELLE 1
Dreiergruppen-Verlust | |
2-Paar -Verlust | |
N-Paar-Verlust | |
-
Nun wird eine Beschreibung in Bezug auf einen Vergleich eines N-Paar-Verlusts mit einem Dreiergruppen-Verlust angegeben werden.
-
Um die vorliegende Erfindung darzustellen, wird ein N-Paar-Verlust in Bezug auf einen Dreiergruppen-Verlust und einen Softmax-Verlust beschrieben.
-
In Bezug auf den Vergleich eines N-Paar-Verlusts mit einem Dreiergruppen-Verlust wird nun eine Beschreibung eines Dreiergruppen-Verlusts und eines 2-Paar-Verlusts angegeben werden.
-
Eine Beziehung zwischen Verlustfunktionen kann durch Zeigen der Äquivalenz zwischen zwei Gruppen von optimalen Einbettungskerneln in Bezug auf jede Verlustfunktion demonstriert werden (obwohl die optimalen Gruppen von Einbettungskerneln für zwei Verlustfunktionen äquivalent sind). Um fortzufahren, sind Optimalitätsbedingungen für Verlustfunktionen wie folgt definiert:
wobei
und Einbettungskernel f sind, um eine Einheits-I2-Norm für sowohl 2-Paar- als auch Dreiergruppen-Verluste zu haben. Im Folgenden ist gezeigt, dass
äquivalent sind, wenn
Man lässt
sein und betrachtet irgendeine gültige 2-Paar-Probe
Da
eine gültige Dreiergruppen-Probe ausbildet, haben wir das Folgende:
und dies beweist ∈
-
Gleichermaßen lässt man
sein und betrachtet irgendeine gültige Dreiergruppen-Probe
Für irgendein x
2 mit
kann eine 2-Paar-Probe
gebildet werden, welches das Folgende erfüllt:
wobei Details in der Gleichung (15) weggelassen sind, da sie Gleichung (11)-(14) rückwärts wiederholt. Schließlich beweist dies
-
Nun wird eine Beschreibung in Bezug auf einen Einblick von einem Softmax-Verlust angegeben werden.
-
Der Softmax-Verlust mit L Klassen wird wie folgt geschrieben:
wobei w
I∈ℝ
K ein Gewichtungsvektor oder eine Schablone für eine Klasse I ist. Es ist oft ineffizient oder unpraktisch, die exakte Teilbereichsfunktion
beim Trainieren zu berechnen, wenn L sehr groß ist. Für solche Fälle kann die exakte Teilbereichsfunktion durch zufälliges Auswählen einer kleinen Untergruppe N Schablonen angenähert werden, einschließlich einer Ground-Truth-Schablone bzw. Bodenwahrheits-Schablone wie es folgt:
wobei S ⊂ {1, ..., L},|S| = N und y
i ∈ S. Die lokale Teilbereichsfunktion Z
S(x) ist kleiner als Z
(x) für irgendein S und die Approximation bzw. Annäherung wird genauer mit größeren N (es ist zu beachten, dass fortgeschrittene Untergruppen-Abtastverfahren, wie beispielsweise eine Wichtigkeitsabtastung und eine Hash-Bildung verwendet werden können, um Approximationsfehler mit kleinem N zu reduzieren). Dies stellt einen wertvollen Einblick zur Verfügung, wenn ein N-Paar-Verlust verglichen wird mit einem 2-Paar-Verlust (oder einem M-Paar-Verlust für M < N), da der Eigenähnlichkeitswert eines 2-Paar-Verlusts als eine Annäherung bzw. Approximation zu demjenigen eines N-Paar-Verlusts angesehen werden kann. In anderen Worten kann irgendein Eigenähnlichkeitswert von einem N-Paar-Verlust mit denjenigen eines 2-Paar-Verlusts angenähert werden, aber nichts von ihnen ist eng:
∀j ∈ {1 ,...,N}\ {i}. Dies impliziert, dass der aktuelle Wert des N-Paar-Verlusts hinter dem überbewerteten Wert des Modells versteckt werden könnte, wenn es mit einem 2-Paar-Verlust trainiert wird, und daher ist es wahrscheinlich, dass das Modell suboptimal ist. Es ist bestimmt worden, dass der 2-Paar-Verlust signifikant nicht ganz zu den Trainingsdaten passt im Vergleich mit dem N-Paar-Verlust mit N > 2 oder Softmax-Verlust-Modellen.
-
Nun wird eine Beschreibung in Bezug auf Implikationen der vorliegenden Erfindung in Bezug auf verschiedene Beziehungen angegeben werden.
-
Die Implikationen dieser Beziehungen werden nachstehend zusammengefasst:
- 1. Die optimale Gruppe von Einbettungskerneln für einen 2-Paar-Verlust und einen Dreiergruppen-Verlust sind äquivalent und die Leistungsfähigkeit der Modelle, die mit diesen Verlustfunktionen trainiert sind, würden ähnlich sein.
- 2. Der M-Paar-Verlust ist eine Annäherung eines N-Paar-Verlusts für M < N.
-
Nun wird eine Beschreibung in Bezug auf eine L2-Norm-Regelung angegeben werden.
-
Es ist zu beachten, dass die Auswertungsfunktion bzw. Wertfunktion in der Gleichung (4) nicht dazu entwickelt ist, dass sie invariant gegenüber der Norm von Einbettungsvektoren ist. Anders ausgedrückt kann die Auswertungsfunktion derart ausgebildet sein, dass sie beliebig nahe zu 1 oder 0 ist, durch erneutes Skalieren von Einbettungsvektoren. Dies impliziert, dass die Eigenähnlichkeits-Auswertungsfunktion durch Erhöhen der Norm von Einbettungsvektoren maximiert werden kann, und zwar eher als ein Finden einer richtigen Richtung, und es ist wichtig, die Norm des Einbettungsvektors zu regulieren, um eine solche Situation zu vermeiden, z.B. I2-Normalisierung an Einbettungsvektoren, um einen Dreiergruppen-Verlust zu berechnen. Jedoch macht, für einen N-Paar-Verlust, ein Anwenden einer I2-Normalisierung eine Optimierung sehr schwierig, da der Eigenähnlichkeitswert durch
nach oben begrenzt ist (beispielsweise ist die obere Grenze 0,88, wenn N = 2, aber sie erniedrigt sich auf 0,105, wenn N = 64). Stattdessen regulieren wir durch Addieren von folgendem Strafausdruck bzw. Sanktionenausdruck
zu einer Zielfunktion, die die I2-Norm von Einbettungsvektoren dahingehend fördert, klein zu sein.
-
Nun wird eine Beschreibung in Bezug auf wettbewerbliche/kommerzielle Werte der durch die vorliegende Erfindung erreichten Lösung angegeben werden.
-
Die vorliegende Erfindung lässt ein effizientes Trainieren durch (1) Entfernen von harter negativer gezielter Datensuche, (2) Entfernen von Berechnung und einer starken Softmax-Schicht eines Parameters und (3) eine schnellere Konvergenz als bei früheren Ansätzen eines tiefen Lernens einer Metrik zu.
-
Die vorliegende Erfindung ist effektiv für Technologien, wie beispielsweise eine Gesichtserkennung, wo die Anzahl von ausgegebenen Klassen (z.B. Identität) extrem groß ist.
-
Die vorliegende Erfindung ist effektiv für ein onlinemäßiges Lernen, wo die Anzahl von ausgegebenen Klassen unbekannt ist oder sich im Verlauf der Zeit ändert.
-
Eher als ein Verwenden von zwei Paaren von Beispielen mit einer harten negativen gezielten Suche werden N Paare von Beispielen aus einer zufälligen Untergruppe von Klassen verwendet, die ein Wegstoßen von Beispielen aus unterschiedlichen Klassen schnell ermöglicht.
-
Hierin beschriebene Ausführungsformen können gänzlich Hardware sein, gänzlich Software sein oder sowohl Hardware- als auch Software-Elemente enthalten. Bei einer bevorzugten Ausführungsform ist die vorliegende Erfindung in Software implementiert, die Firmware, residente Software, einen Mikrocode, etc. enthält, aber nicht darauf beschränkt ist.
-
Ausführungsformen können ein Computerprogrammprodukt enthalten, auf das von einem computernutzbaren oder computerlesbaren Medium zugreifbar ist, das einen Programmcode zur Verwendung durch oder in Verbindung mit einem Computer oder irgendeinem Anweisungsausführungssystem zur Verfügung stellt. Ein computernutzbares oder computerlesbares Medium kann irgendeine Vorrichtung enthalten, die das Programm zur Verwendung durch oder in Verbindung mit dem Anweisungsausführungssystem, der Vorrichtung oder dem Gerät speichert, kommuniziert, ausbreitet oder transportiert. Das Medium kann magnetisch, optisch, elektronisch, elektromagnetisch, Infrarot oder ein Halbleitersystem (oder eine Vorrichtung oder ein Gerät) oder ein Ausbreitungsmedium sein. Das Medium kann ein computerlesbares Speichermedium enthalten, wie beispielsweise einen Halbleiter- oder Festkörperspeicher, ein Magnetband, eine entfernbare Computerdiskette, einen Direktzugriffsspeicher (RAM), einen Nurlesespeicher (ROM), eine steife bzw. feste Magnetplatte und eine optische Platte, etc.
-
Jedes Computerprogramm kann konkret in einem maschinenlesbaren Speichermedium oder einer Vorrichtung (z.B. Programmspeicher oder Magnetplatte) gespeichert sein, das oder die durch einen allgemeinen oder speziellen programmierbaren Computer lesbar ist, zum Konfigurieren und Steuern eines Betriebs eines Computers, wenn das Speichermedium oder die Vorrichtung durch den Computer gelesen wird, um die hierin beschriebenen Prozeduren durchzuführen. Das erfinderische System kann auch derart angesehen werden, dass es in einem computerlesbaren Speichermedium verkörpert ist, das konfiguriert ist mit einem Computerprogramm, wobei das so konfigurierte Speichermedium veranlasst, dass ein Computer auf eine spezifische und vordefinierte Weise arbeitet, um die hierin beschriebenen Funktionen durchzuführen.
-
Ein Datenverarbeitungssystem, das zum Speichern und/oder Ausführen eines Programmcodes geeignet ist, kann wenigstens einen Prozessor enthalten, der direkt oder indirekt mit Speicherelementen über einen Systembus gekoppelt ist. Die Speicherelemente können eine lokalen Speicher enthalten, der während einer aktuellen Ausführung des Programmcodes verwendet wird, einen Massenspeicher und Cache-Speicher, die eine temporäre Speicherung von wenigstens etwas von einem Programmcode zur Verfügung stellen, um die Anzahl von Malen zu reduzieren, für welche ein Code aus einem Massenspeicher während einer Ausführung ausgelesen wird. Eingabe/Ausgabe- oder I/O-Vorrichtungen (einschließlich, aber nicht darauf beschränkt, Tastaturen, Anzeigen, Zeigevorrichtungen, etc.) können mit dem System entweder direkt oder durch dazwischenliegende I/O-Steuerungen gekoppelt sein.
-
Netzwerkadapter können auch mit dem System gekoppelt sein, um zu ermöglichen, dass das Datenverarbeitungssystem mit anderen Datenverarbeitungssystemen oder entfernten Druckern oder Speichervorrichtungen über intervenierende private oder öffentliche Netzwerke gekoppelt wird. Modems, ein Kabelmodem und Ethernet-Karten sind nur einige der aktuell verfügbaren Typen von Netzwerkadaptern.
-
Eine Bezugnahme in der Beschreibung auf „eine einzige Ausführungsform“ oder „eine Ausführungsform“ der vorliegenden Erfindung sowie andere Variationen davon bedeutet, dass ein bestimmtes Merkmal, eine bestimmte Struktur, eine bestimmte Charakteristik und so weiter, die in Verbindung mit der Ausführungsform beschrieben sind, in wenigstens einer Ausführungsform der vorliegenden Erfindung enthalten ist. Somit sind die Erscheinungsformen der Phrase „bei einer einzigen Ausführungsform“ oder „bei einer Ausführungsform“ sowie irgendwelche anderen Variationen, die an verschiedenen Stellen in der gesamten Beschreibung erscheinen, nicht notwendigerweise alle bezugnehmend auf dieselbe Ausführungsform.
-
Es ist wahrzunehmen, dass beabsichtigt ist, dass die Verwendung von irgendetwas von dem folgenden „/“, „und/oder“ und „wenigstens“, wie beispielsweise in den Fällen von „A/B“, „A und/oder B“ und "wenigstens eines von „A und B“ die Auswahl von nur der ersten aufgelisteten Option (A) oder die Auswahl von nur der zweiten aufgelisteten Option (B) oder die Auswahl von beiden Optionen (A und B) umfasst. Als ein weiteres Beispiel ist in den Fällen von „A, B und/oder C“ und „wenigstens eines von A, B und C“ beabsichtigt, dass eine solche Phrasierung die Auswahl von nur der ersten aufgelisteten Option (A) oder die Auswahl von nur der zweiten aufgelisteten Option (B) oder die Auswahl von nur der dritten aufgelisteten Option (C) oder die Auswahl von nur der ersten und der zweiten aufgelisteten Option (A und B) oder die Auswahl von nur der ersten und der dritten aufgelisteten Option (A und C) oder die Auswahl von nur der zweiten und der dritten aufgelisteten Option (B und C) oder die Auswahl von allen drei Optionen (A und B und C) umfasst. Dies kann, wie es von einem Fachmann davon und aus zugehörigem Stand der Technik ohne weiteres klar wird, für so viele Elemente erweitert werden, wie aufgelistet sind.
-
Das Vorangehende ist derart zu verstehen, dass es in jederlei Hinsicht illustrativ und beispielhaft ist, aber nicht beschränkend, und der Schutzumfang der hierin offenbarten Erfindung ist nicht aus der detaillierten Beschreibung zu bestimmen, sondern vielmehr aus den Ansprüchen, wie sie gemäß der vollen Breite interpretiert werden, die durch die Patentgesetze zugelassen ist. Es ist zu verstehen, dass die hierin gezeigten und beschriebenen Ausführungsformen nur illustrativ für die Prinzipien der vorliegenden Erfindung sind und dass Fachleute auf dem Gebiet verschiedene Modifikationen implementieren können, ohne vom Schutzumfang und Sinngehalt der Erfindung abzuweichen. Fachleute auf dem Gebiet könnten verschiedene andere Merkmalskombinationen implementieren, ohne vom Schutzumfang und Sinngehalt der Erfindung abzuweichen. Hat man somit Aspekte der Erfindung mit den Details und Besonderheit beschrieben, die durch die Patentgesetze erforderlich sind, ist das, was beansprucht und erwünscht geschützt durch die Buchstaben des Patentgesetzes ist, in den beigefügten Ansprüchen dargelegt.
-
ZITATE ENTHALTEN IN DER BESCHREIBUNG
-
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
-
Zitierte Patentliteratur
-