DE202017007641U1 - Training von maschinellen Lernmodellen auf mehrere maschinelle Lernaufgaben - Google Patents

Training von maschinellen Lernmodellen auf mehrere maschinelle Lernaufgaben Download PDF

Info

Publication number
DE202017007641U1
DE202017007641U1 DE202017007641.1U DE202017007641U DE202017007641U1 DE 202017007641 U1 DE202017007641 U1 DE 202017007641U1 DE 202017007641 U DE202017007641 U DE 202017007641U DE 202017007641 U1 DE202017007641 U1 DE 202017007641U1
Authority
DE
Germany
Prior art keywords
machine learning
parameters
learning model
task
values
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
DE202017007641.1U
Other languages
English (en)
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
DeepMind Technologies Ltd
Original Assignee
DeepMind Technologies Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by DeepMind Technologies Ltd filed Critical DeepMind Technologies Ltd
Publication of DE202017007641U1 publication Critical patent/DE202017007641U1/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/20Ensemble learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/09Supervised learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/092Reinforcement learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/0464Convolutional networks [CNN, ConvNet]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Mathematical Physics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Feedback Control In General (AREA)

Abstract

System, umfassend einen oder mehrere Computer und ein oder mehrere Speichergeräte, die Anweisungen speichern, die, wenn sie von dem einen oder den mehreren Computern ausgeführt werden, den einen oder die mehreren Computer veranlassen, ein maschinelles Lernmodell zu trainieren, das eine Vielzahl von Parametern aufweist,
wobei das maschinelle Lernmodell auf eine erste maschinelle Lernaufgabe trainiert worden ist, um erste Werte der Parameter des maschinellen Lernmodells zu bestimmen, und
wobei die Anweisungen konfiguriert sind, um den einen oder die mehreren Computer zu Folgendem zu steuern:
Bestimmen, für jeden der Vielzahl von Parametern, eines jeweiligen Maßes einer Wichtigkeit des Parameters für das maschinelle Lernmodell, das eine akzeptable Leistung bei der ersten maschinellen Lernaufgabe erreicht;
Erzielen von Trainingsdaten zum Trainieren des maschinellen Lernmodells auf eine zweite, unterschiedliche maschinelle Lernaufgabe; und
Trainieren des maschinellen Lernmodells auf die zweite maschinelle Lernaufgabe durch Trainieren des maschinellen Lernmodells auf die Trainingsdaten, um die ersten Werte der Parameter so anzupassen, dass das maschinelle Lernmodell ein akzeptables Leistungsniveau bei der zweiten maschinellen Lernaufgabe erreicht, während es gleichzeitig ein akzeptables Leistungsniveau bei der ersten maschinellen Lernaufgabe beibehält,
wobei, während des Trainings des maschinellen Lernmodells auf die zweite maschinelle Lernaufgabe, Werte von Parametern, die bei dem maschinellen Lernmodell, das eine akzeptable Leistung bei der ersten maschinellen Lernaufgabe erreicht, wichtiger waren, stärker darauf beschränkt werden, nicht von den ersten Werten abzuweichen, als Werte von Parametern, die bei dem maschinellen Lernmodell, das eine akzeptable Leistung bei der ersten maschinellen Lernaufgabe erreicht, weniger wichtig waren;
wobei das maschinelle Lernmodell ein tiefes neuronales Netzmodell umfasst, das eine Eingabeschicht und eine oder mehrere versteckte Schichten einschließt, die jeweils eine nichtlineare Transformation auf eine empfangene Eingabe anwenden, um eine Ausgabe zu erzeugen, wobei das maschinelle Lernmodell die Ausgabe auf der Grundlage der empfangenen Eingabe und der Werte der Parameter des Modells erzeugt; und
wobei die erste maschinelle Lernaufgabe und die zweite maschinelle Lernaufgabe unterschiedliche überwachte Lernaufgaben sind.

Description

  • HINTERGRUND
  • Diese Spezifikation bezieht sich auf das Training von maschinellen Lernmodellen.
  • Maschinelle Lernmodelle erhalten eine Eingabe und erzeugen eine Ausgabe, z. B. eine vorhergesagte Ausgabe, basierend auf der empfangenen Eingabe. Einige maschinelle Lernmodelle sind parametrische Modelle und erzeugen die Ausgabe auf der Grundlage der empfangenen Eingabe und von Werten der Parameter des Modells.
  • Bei einigen maschinellen Lernmodellen handelt es sich um tiefe Modelle, die mehrere Modellschichten verwenden, um eine Ausgabe für eine empfangene Eingabe zu erzeugen. Ein tiefes neuronales Netz ist zum Beispiel ein tiefes maschinelles Lernmodell, das eine Ausgabeschicht und eine oder mehrere versteckte Schichten einschließt, die jeweils eine nichtlineare Transformation auf eine empfangene Eingabe anwenden, um eine Ausgabe zu erzeugen. Maschinelle Lernmodelle können jedoch dem „katastrophalen Vergessen“ unterliegen, wenn sie auf mehrere Aufgaben trainiert werden, d. h., wenn eine neue Aufgabe gelernt wird, geht das Wissen über eine vorherige Aufgabe verloren. Einige neuronale Netze sind rekurrente neuronale Netze. Ein rekurrentes neuronales Netz ist ein neuronales Netz, das eine Eingabesequenz empfängt und aus der Eingabesequenz eine Ausgabesequenz erzeugt. Insbesondere verwendet ein rekurrentes neuronales Netz einen Teil oder den gesamten internen Zustand des Netzes, nach der Verarbeitung einer vorherigen Eingabe in der Eingabesequenz, bei der Erzeugung einer Ausgabe aus der aktuellen Eingabe in der Eingabesequenz.
  • Li und Hoiem, „Learning Without Forgetting", Network and Parallel Computing, 29. Juni 2016, Springer, Bd. 9908, Seiten 614-629, beschreibt ein Verfahren, bei dem zwei separate, vollständig verbundene Schichten mit jeweils aufgabenspezifischen Parametern an Merkmalen eines neuronalen Faltungsnetzes arbeiten. French, „Catastrophic forgetting in connectionist networks", Trends In Cognitive Sciences, Bd. 3, Nr. 4, 1. April 1999, Seiten 128-135, stellt einen allgemeinen Überblick über katastrophale Inferenz/katastrophales Vergessen in künstlichen neuronalen Netzen und im Gehirn bereit.
  • ZUSAMMENFASSUNG
  • Diese Spezifikation beschreibt, wie ein System, das als Computerprogramme auf einem oder mehreren Computern an einem oder mehreren Orten implementiert ist, ein maschinelles Lernmodell auf mehrere maschinelle Lernaufgaben trainieren kann.
  • Die Erfindung ist in Anspruch 1 dargelegt; weitere Aspekte sind in den abhängigen Ansprüchen dargelegt.
  • Im Allgemeinen kann ein innovativer Aspekt in einem Verfahren zum Trainieren eines maschinellen Lernmodells, das mehrere Parameter aufweist, ausgeführt werden. Das maschinelle Lernmodell wurde auf eine erste maschinelle Lernaufgabe trainiert, um erste Werte der Parameter des maschinellen Lernmodells zu bestimmen. Das Verfahren schließt Folgendes ein: Bestimmen, für jeden der Vielzahl von Parametern, eines jeweiligen Maßes einer Wichtigkeit des Parameters für das maschinelle Lernmodell, das eine akzeptable Leistung bei der ersten maschinellen Lernaufgabe erreicht; Erzielen von Trainingsdaten zum Trainieren des maschinellen Lernmodells auf eine zweite, unterschiedliche maschinelle Lernaufgabe; und Trainieren des maschinellen Lernmodells auf die zweite maschinelle Lernaufgabe durch Trainieren des maschinellen Lernmodells auf die Trainingsdaten, um die ersten Werte der Parameter so anzupassen, dass das maschinelle Lernmodell ein akzeptables Leistungsniveau bei der zweiten maschinellen Lernaufgabe erreicht, während es gleichzeitig ein akzeptables Leistungsniveau bei der ersten maschinellen Lernaufgabe beibehält, bei der, während des Trainings des maschinellen Lernmodells auf die zweite maschinelle Lernaufgabe, Werte von Parametern, die in dem maschinellen Lernmodell, das eine akzeptable Leistung bei der ersten maschinellen Lernaufgabe erreicht, wichtiger waren, stärker darauf beschränkt werden, nicht von den ersten Werten abzuweichen, als Werte von Parametern, die in dem maschinellen Lernmodell, das eine akzeptable Leistung bei der ersten maschinellen Lernaufgabe erreicht, weniger wichtig waren.
  • Das Trainieren des maschinellen Lernmodells auf die Trainingsdaten kann Folgendes einschließen: Anpassen der ersten Werte der Parameter, um eine Zielfunktion zu optimieren, insbesondere zu minimieren, die Folgendes einschließt: (i) einen ersten Term, der eine Leistung des maschinellen Lernmodells bei der zweiten maschinellen Lernaufgabe misst, und (ii) einen zweiten Term, der eine Strafe für Parameterwerte auferlegt, die von den ersten Parameterwerten abweichen, wobei der zweite Term Abweichungen von den ersten Werten stärker für Parameter bestraft, die für das Erreichen einer akzeptablen Leistung bei der ersten maschinellen Lernaufgabe wichtiger waren als für Parameter, die für das Erreichen einer akzeptablen Leistung bei der ersten maschinellen Lernaufgabe weniger wichtig waren. Der zweite Term kann für jeden der Vielzahl von Parametern von einem Produkt aus dem jeweiligen Maß der Wichtigkeit des Parameters und einem Unterschied zwischen dem aktuellen Wert des Parameters und dem ersten Wert des Parameters abhängen.
  • In einigen Implementierungen kann das Training eine „elastische Gewichtskonsolidierung“ (EWC) implementieren, bei der, während des Trainings auf die zweite Aufgabe, die Parameter durch eine elastische Strafe, d. h. eine Strafe für das Anpassen eines Parameters, die mit zunehmender Entfernung vom ersten Wert des Parameters zunimmt, auf ihren ersten Werten verankert werden. Die Steifigkeit oder der Grad der elastischen Strafe kann von einem Maß der Wichtigkeit des Parameters für die erste Aufgabe oder allgemeiner für alle zuvor gelernten Aufgaben abhängen. So kann die elastische Gewichtskonsolidierung als weiche Beschränkung implementiert werden, z. B. quadratisch mit zunehmender Entfernung, sodass jedes Gewicht in Richtung seines alten Wertes/ seiner alten Werte um einen Betrag zurückgezogen wird, der von einem Maß seiner Wichtigkeit für eine zuvor durchgeführte Aufgabe oder Aufgaben abhängt, z. B. proportional dazu. Grob gesagt, werden die Parameter durch einen Prior gemildert, der die A-posteriori-Verteilung der Parameter ist, die aus der/den vorherigen Aufgabe(n) abgeleitet wurde.
  • Im Allgemeinen umfasst das maschinelle Lernmodell ein neuronales Netz wie z.B. ein neuronales Faltungsnetz oder ein rekurrentes neuronales Netz, und die Parameter umfassen Gewichte des neuronalen Netzes. Die Wichtigkeit von einzelnen Parametern („Gewichten“) kann auf unterschiedliche Weise bestimmt werden, wie weiter unten beschrieben. Optional kann die Wichtigkeit von einzelnen Parametern (Gewichten) neu berechnet werden, bevor das Training auf eine neue Aufgabe beginnt.
  • Das Trainieren des maschinellen Lernmodells auf die Trainingsdaten kann für jedes Trainingsbeispiel in den Trainingsdaten Folgendes einschließen: Verarbeiten des Trainingsbeispiels unter Verwendung des maschinellen Lernmodells in Übereinstimmung mit aktuellen Werten von Parametern des maschinellen Lernmodells, um eine Modellausgabe zu bestimmen; Bestimmen eines Gradienten der Zielfunktion unter Verwendung der Modellausgabe, einer Zielausgabe für das Trainingsbeispiel, der aktuellen Werte der Parameter des maschinellen Lernmodells und der ersten Werte der Parameter des maschinellen Lernmodells; und Anpassen der aktuellen Werte der Parameter unter Verwendung des Gradienten, um die Zielfunktion zu optimieren.
  • Das Bestimmen eines jeweiligen Maßes einer Wichtigkeit des Parameters für das maschinelle Lernmodell, das eine akzeptable Leistung bei der ersten maschinellen Lernaufgabe erreicht, für jeden der Vielzahl von Parametern, kann Folgendes einschließen: Bestimmen einer Annäherung an eine Wahrscheinlichkeit, dass ein aktueller Wert des Parameters ein korrekter Wert des Parameters ist, für jeden der Vielzahl von Parametern, bei gegebenen ersten Trainingsdaten, die zum Trainieren des maschinellen Lernmodells auf die erste Aufgabe verwendet werden.
  • Eine Möglichkeit, für jeden der Vielzahl von Parametern ein jeweiliges Maß einer Wichtigkeit des Parameters für das maschinelle Lernmodell zu bestimmen, das eine akzeptable Leistung bei der ersten maschinellen Lernaufgabe erreicht, kann Folgendes einschließen: Bestimmen einer Fisher-Informationsmatrix (FIM) der Vielzahl von Parametern des maschinellen Lernmodells in Bezug auf die erste maschinelle Lernaufgabe, in der für jeden der Vielzahl von Parametern das jeweilige Maß der Wichtigkeit des Parameters ein entsprechender Wert auf einer Diagonale der FIM ist. Dies ist rechnerisch bequem, da die FIM aus Ableitungen erster Ordnung berechnet werden kann. Zum Beispiel kann die FIM anhand der Kovarianz der Log-Wahrscheinlichkeiten des Modells in Bezug auf seine Parameter bestimmt werden.
  • Die Verwendung der Diagonalenwerte der FIM als ein Wichtigkeitsmaß verringert die Rechenkomplexität, während gleichzeitig eine Punktschätzung der Varianz eines Parameters, d. h. der Unsicherheit eines Gewichts, berechnet wird. In einigen Implementierungen kann eine Schätzung von Mittelwert und der Standardabweichung (oder Varianz) von Gewichten durch Anwendung eines Bayes by Backprop-Verfahrens erzielt werden, wie in „Weight Uncertainty in Neural Networks“, Blundell et al., ICML (2015) beschrieben. Dies kann unter Verwendung einer Variation des Rückpropagationsverfahrens erfolgen.
  • In einigen Implementierungen sind die erste maschinelle Lernaufgabe und die zweite maschinelle Lernaufgabe unterschiedliche überwachte Lernaufgaben.
  • In einigen anderen Implementierungen handelt es sich bei der ersten maschinellen Lernaufgabe und der zweiten maschinellen Lernaufgabe um unterschiedliche Verstärkungslernaufgaben. Bei einer Verstärkungslernaufgabe kann die Zielfunktion einen diskontierten Belohnungsterm einschließen, der von einer erwarteten Belohnung für das Vornehmen einer Aktion in einem Zustand abhängt. Das maschinelle Lernmodell kann beispielsweise auf einem Deep Q-Network (DQN), einem Double-DQN, einem Advantage Actor Critic(A3C)-Netzwerk oder anderen Architekturen basieren.
  • In einigen Implementierungen, insbesondere, aber nicht ausschließlich in einem System mit verstärktem Lernen (RL), können die maschinellen Lernaufgaben identifiziert werden. Sie können zum Beispiel explizit gekennzeichnet oder automatisch identifiziert werden, indem ein Modell zum Ableiten einer Aufgabe verwendet wird. Dann können ein oder mehrere Strafterme für die Zielfunktion in Abhängigkeit von der identifizierten Aufgabe ausgewählt werden. Wenn ein Aufgabenwechsel identifiziert wird, können der eine oder die mehreren Strafterme so ausgewählt werden, dass das Parameterlemen so beschränkt wird, dass es nahe bei Werten erfolgt, die für eine oder mehrere frühere Aufgaben gelernt wurden (entsprechend ihrer Wichtigkeit für die frühere(n) Aufgabe(n), wie zuvor beschrieben). Der Wechsel kann zu einer neuen, vorher nicht gesehenen Aufgabe oder zu einer Rückkehr zu einer früheren Aufgabe erfolgen. Die Strafterme können Beschränkungen für alle zuvor gesehenen Aufgaben mit Ausnahme einer aktuellen Aufgabe einschließen. Bei den Beschränkungen kann es sich um quadratische Beschränkungen handeln. Optional kann die Wichtigkeit einzelner Parameter (Gewichte) neu berechnet werden, wenn von einer Lernaufgabe zu einer anderen gewechselt wird.
  • Das Verfahren kann ferner Folgendes einschließen: nach dem Trainieren des maschinellen Lernmodells auf die zweite maschinelle Lernaufgabe, um zweite Werte der Parameter des maschinellen Lernmodells zu bestimmen: Erzielen von dritten Trainingsdaten zum Trainieren des maschinellen Lernmodells auf eine dritte, unterschiedliche maschinelle Lernaufgabe; und Trainieren des maschinellen Lernmodells auf die dritte maschinelle Lernaufgabe durch Trainieren des maschinellen Lernmodells auf die dritten Trainingsdaten, um die zweiten Werte der Parameter so anzupassen, dass das maschinelle Lernmodell ein akzeptables Leistungsniveau bei der dritten maschinellen Lernaufgabe erreicht, während es gleichzeitig ein akzeptables Leistungsniveau bei der ersten maschinellen Lernaufgabe und der zweiten maschinellen Lernaufgabe beibehält, wobei, während des Trainings des maschinellen Lernmodells auf die dritte maschinelle Lernaufgabe, Werte von Parametern, die bei dem maschinellen Lernmodell, das eine akzeptable Leistung bei der ersten maschinellen Lernaufgabe und der zweiten maschinellen Lernaufgabe erreicht, wichtiger waren, stärker darauf beschränkt werden, nicht von den zweiten Werten abzuweichen als Werte von Parametern, die bei dem maschinellen Lernmodell, das eine akzeptable Leistung bei der ersten maschinellen Lernaufgabe und der zweiten maschinellen Lernaufgabe erreicht, weniger wichtig waren.
  • Das Verfahren kann dann ferner Folgendes umfassen: Bestimmen eines jeweiligen Maßes einer Wichtigkeit des Parameters für das maschinelle Lernmodell, um eine akzeptable Leistung bei der zweiten maschinellen Lernaufgabe zu erreichen, für jeden der Vielzahl von Parametern. Das Trainieren des maschinellen Lernmodells auf die dritten Trainingsdaten kann dann das Anpassen der zweiten Werte der Parameter einschließen, um eine Zielfunktion zu optimieren, die einen ersten Term einschließt, der eine Leistung des maschinellen Lernmodells bei der dritten maschinellen Lernaufgabe misst, und einen zweiten Term, der eine Strafe für Parameterwerte auferlegt, die von den zweiten Parameterwerten abweichen. Ähnlich wie zuvor beschrieben, kann der zweite Term Abweichungen von den zweiten Werten für Parameter, die für das Erreichen einer akzeptablen Leistung bei der ersten maschinellen Lernaufgabe und dem zweiten maschinellen Lernen wichtiger waren, stärker bestrafen als für Parameter, die für das Erreichen einer akzeptablen Leistung bei der ersten maschinellen Lernaufgabe und der zweiten maschinellen Lernaufgabe weniger wichtig waren. Der zweite Term der Zielfunktion kann zwei separate Strafterme umfassen, einen für jede vorherige Aufgabe, oder einen kombinierten Strafterm. Umfassen die Strafterme beispielsweise jeweils eine quadratische Strafe, wie z. B. das Quadrat des Unterschieds zwischen einem Parameter und seinem vorherigen Wert, kann die Summe zweier solcher Strafen selbst als quadratische Strafe geschrieben werden.
  • Die oben genannten Aspekte können in jeder beliebigen zweckdienlichen Form umgesetzt werden. Beispielsweise können Aspekte und Implementierungen durch geeignete Computerprogramme implementiert werden, die auf geeigneten Trägermedien, die materielle Trägermedien (z. B. Disketten) oder immaterielle Trägermedien (z. B. Kommunikationssignale) sein können, getragen werden können. Aspekte können ebenfalls durch geeignete Vorrichtungen implementiert werden, welche die Form von programmierbaren Computern haben können, auf denen Computerprogramme laufen.
  • Besondere Ausführungsformen des in dieser Beschreibung beschriebenen Gegenstands können so implementiert werden, dass einer oder mehrere der folgenden Vorteile realisiert werden. Durch das Trainieren desselben maschinellen Lernmodells auf mehrere Aufgaben, wie in dieser Spezifikation beschrieben, kann das Modell, sobald es trainiert wurde, für jede der mehreren Aufgaben mit einem akzeptablen Leistungsniveau verwendet werden. Folglich können Systeme, die in der Lage sein müssen, eine akzeptable Leistung bei mehreren Aufgaben zu erreichen, dies tun, während sie gleichzeitig weniger ihrer Speicherkapazität verwenden und eine geringere Systemkomplexität aufweisen. Indem man beispielsweise eine einzige Instanz eines Modells beibehält, anstatt mehrere verschiedene Instanzen eines Modells, die jeweils unterschiedliche Parameterwerte aufweisen, muss nur ein Parametersatz gespeichert werden anstatt mehrere verschiedener Parametersätze, was den erforderlichen Speicherplatz reduziert und gleichzeitig eine akzeptable Leistung bei jeder Aufgabe beibehält. Zusätzlich wird das Modell auf eine neue Aufgabe trainiert, indem Werte von Parametern des Modells angepasst werden, um eine Zielfunktion zu optimieren, die zum Teil davon abhängt, wie wichtig die Parameter für (eine) zuvor gelernte Aufgabe(n) sind. So kann das Modell effektiv neue Aufgaben nacheinander lernen und gleichzeitig das Wissen über frühere Aufgaben schützen.
  • Die Einzelheiten einer oder mehrerer Ausführungsformen des Gegenstands dieser Beschreibung sind in den beigefügten Zeichnungen und der nachfolgenden Beschreibung dargelegt. Weitere Merkmale, Aspekte und Vorteile des Gegenstands werden aus der Beschreibung, den Zeichnungen und den Ansprüchen ersichtlich.
  • KURZBESCHREIBUNG DER ZEICHNUNGEN
    • ist ein Blockdiagramm eines Beispiels für ein maschinelles Lernsystem, das ein maschinelles Lernmodell trainiert
    • ist ein Flussdiagramm eines Beispielprozesses für das Training eines maschinellen Lernmodells, das mehrere Parameter für mehrere Aufgaben aufweist.
    • ist ein Flussdiagramm eines Beispielprozesses zum Trainieren des maschinellen Lernmodells auf eine dritte maschinelle Lernaufgabe, nachdem das maschinelle Lernmodell auf eine erste und eine zweite maschinelle Lernaufgabe trainiert wurde.
    • Gleiche Bezugsnummern und Bezeichnungen in den verschiedenen Zeichnungen bezeichnen gleiche Elemente.
  • DETAILLIERTE BESCHREIBUNG
  • Diese Spezifikation beschreibt, wie ein System, beispielsweise ein maschinelles Lemsystem, das als Computerprogramme auf einem oder mehreren Computern an einem oder mehreren Orten implementiert ist, ein maschinelles Lernmodell auf mehrere maschinelle Lernaufgaben trainieren kann.
  • In einigen Fällen handelt es sich bei den mehreren maschinellen Lernmodellen um unterschiedliche überwachte Lernaufgaben. Beispielsweise können die überwachten Lernaufgaben verschiedene Klassifizierungsaufgaben einschließen, wie z. B. Bildverarbeitungsaufgaben, Spracherkennungsaufgaben, Aufgaben zur Verarbeitung natürlicher Sprache oder Aufgaben zur optischen Zeichenerkennung. Die Bildverarbeitungsaufgaben können zum Beispiel verschiedene Bilderkennungsaufgaben einschließen, worin jede Bilderkennungsaufgabe die Erkennung eines anderen Objekts oder einer anderen Struktur in einem Bild erfordert. Als ein anderes Beispiel können die Spracherkennungsaufgaben mehrere Aufgaben zur Erkennung von Aktivierungswörtern einschließen, worin jede Aufgabe die Erkennung eines unterschiedlichen Aktivierungsworts oder einer unterschiedlichen Sequenz von Aktivierungswörtern erfordert.
  • In einigen Fällen handelt es sich bei den mehreren maschinellen Lernaufgaben um verschiedene Verstärkungslernaufgaben. Beispielsweise können die Verstärkungslernaufgaben mehrere Aufgaben einschließen, bei denen ein Agent mit verschiedenen Umgebungen interagiert oder mit der gleichen Umgebung interagiert, um ein unterschiedliches Ziel zu erreichen. Zum Beispiel können die Verstärkungslernaufgaben mehrere Aufgaben einschließen, bei denen ein computergesteuerter Agent mit mehreren verschiedenen simulierten oder virtualisierten Umgebungen interagiert. Als ein anderes Beispiel können die Verstärkungslernaufgaben mehrere Aufgaben einschließen, bei denen ein Roboteragent mit einer realen Umgebung interagiert, um zu versuchen, verschiedene Ziele zu erreichen. Ein solcher Roboteragent kann in einer statischen oder sich bewegenden Maschine oder in einem statischen oder sich bewegenden Fahrzeug ausgeführt sein.
  • zeigt ein Beispiel für ein maschinelles Lernsystem 100. Das maschinelle Lernsystem 100 ist ein Beispiel für ein System, das als Computerprogramme auf einem oder mehreren Computern an einem oder mehreren Standorten implementiert ist, und in dem die unten beschriebenen Systeme, Komponenten und Techniken implementiert sind.
  • Das maschinelle Lernsystem 110 ist so konfiguriert, dass es ein maschinelles Lernmodell 110 auf mehrere aufeinanderfolgende maschinelle Lernaufgaben trainiert. Das maschinelle Lernmodell 110 kann eine Eingabe empfangen und eine Ausgabe, z. B. eine vorhergesagte Ausgabe, basierend auf der empfangenen Eingabe erzeugen.
  • In einigen Fällen ist das maschinelle Lernmodell 110 ein parametrisches Modell, das mehrere Parameter aufweist. In diesen Fällen erzeugt das maschinelle Lernmodell 110 die Ausgabe basierend auf der empfangenen Eingabe und auf Werten der Parameter des Modells 110.
  • In einigen anderen Fällen ist das maschinelle Lernmodell 110 ein tiefes maschinelles Lernmodell, das mehrere Schichten des Modells einsetzt, um eine Ausgabe für eine empfangene Eingabe zu erzeugen. Ein tiefes neuronales Netz ist zum Beispiel ein tiefes maschinelles Lernmodell, das eine Ausgabeschicht und eine oder mehrere versteckte Schichten einschließt, die jeweils eine nichtlineare Transformation auf eine empfangene Eingabe anwenden, um eine Ausgabe zu erzeugen.
  • Im Allgemeinen trainiert das maschinelle Lernsystem 100 das maschinelle Lernmodell 110 auf eine bestimmte Aufgabe, d. h., um die bestimmte Aufgabe zu lernen, indem es die Werte der Parameter des maschinellen Lernmodells 110 anpasst, um die Leistung des Modells 110 für die bestimmte Aufgabe zu optimieren, z. B. durch Optimieren einer Zielfunktion 118 des Modells 110.
  • Das System 100 kann das Modell 110 trainieren, um eine Sequenz von mehreren maschinellen Lernaufgaben zu lernen. Um es dem maschinellen Lernmodell 110 zu ermöglichen, neue Aufgaben zu lernen, ohne frühere Aufgaben zu vergessen, trainiert das System 100 das Modell 110 im Allgemeinen so, dass es die Leistung des Modells 110 bei einer neuen Aufgabe optimiert und gleichzeitig die Leistung bei früheren Aufgaben schützt, indem es die Parameter so einschränkt, dass sie in einem Bereich akzeptabler Leistung (z. B. einem Bereich mit geringem Fehler) bei früheren Aufgaben auf der Grundlage von Informationen über die früheren Aufgaben bleiben.
  • Das System 100 bestimmt die Informationen über frühere Aufgaben unter Verwendung einer Maschine zur Berechnung von Wichtigkeitsgewichten 112. Insbesondere bestimmt die Maschine 112 für jede Aufgabe, für die das Modell 110 zuvor trainiert wurde, einen Satz von Wichtigkeitsgewichten, die dieser Aufgabe entsprechen. Der Satz von Wichtigkeitsgewichten für eine gegebene Aufgabe schließt im Allgemeinen ein jeweiliges Gewicht für jeden Parameter des Modells 110 ein, das ein Maß einer Wichtigkeit des Parameters für das Erreichen einer akzeptablen Leistung des Modells 110 bei der Aufgabe darstellt. Das System 100 verwendet dann die Sätze von Wichtigkeitsgewichten, die früheren Aufgaben entsprechen, um das Modell 110 auf eine neue Aufgabe zu trainieren, sodass das Modell 110 ein akzeptables Leistungsniveau bei der neuen Aufgabe erreicht, während es gleichzeitig ein akzeptables Leistungsniveau bei den früheren Aufgaben beibehält.
  • Wie in gezeigt, bestimmt die Maschine zur Berechnung von Wichtigkeitsgewichten 112 einen Satz von Wichtigkeitsgewichten 120, die der Aufgabe A entsprechen, wenn das Modell 110 auf eine erste maschinelle Lernaufgabe, z. B. Aufgabe A, trainiert wurde, wobei erste Trainingsdaten verwendet werden, um erste Werte der Parameter des Modells 110 zu bestimmen. Insbesondere bestimmt die Maschine 112 für jeden der Parameter des Modells 110 ein jeweiliges Wichtigkeitsgewicht, das ein Maß einer Wichtigkeit des Parameters für das Modell 110 darstellt, das eine akzeptable Leistung bei Aufgabe A erreicht. Das Bestimmen eines jeweiligen Wichtigkeitsgewichts für jeden der Parameter schließt das Bestimmen einer Annäherung an eine Wahrscheinlichkeit ein, für jeden der Parameter, dass ein aktueller Wert des Parameters ein korrekter Wert des Parameters ist, wenn die ersten Trainingsdaten verwendet werden, um das maschinelle Lernmodell 110 auf Aufgabe A zu trainieren.
  • Beispielsweise kann die Maschine 112 eine A-posteriori-Verteilung über mögliche Werte der Parameter des Modells 110 bestimmen, nachdem das Modell 110 auf frühere Trainingsdaten aus (einer) früheren maschinellen Lernaufgabe(n) trainiert worden ist. Für jeden der Parameter weist die A-posteriori-Verteilung dem aktuellen Wert des Parameters einen Wert zu, bei dem der Wert eine Wahrscheinlichkeit darstellt, dass der aktuelle Wert ein korrekter Wert des Parameters ist.
  • In einigen Implementierungen kann die Maschine 112 die A-posteriori-Verteilung unter Verwendung einer Näherungsmethode approximieren, beispielsweise unter Verwendung einer Fisher-Informationsmatrix (FIM). Die Maschine 112 kann eine FIM der Parameter des Modells 110 in Bezug auf Aufgabe A bestimmen, in der für jeden der Parameter das jeweilige Wichtigkeitsgewicht des Parameters ein entsprechender Wert auf einer Diagonale der FIM ist. Das heißt, jeder Wert auf der Diagonale der FIM entspricht einem unterschiedlichen Parameter des maschinellen Lernmodells 110.
  • Die Maschine 112 kann die FIM bestimmen, indem sie die zweite Ableitung der Zielfunktion 118 bei den Werten von Parametern berechnet, welche die Zielfunktion 118 in Bezug auf die Aufgabe A optimieren. Die FIM kann auch allein aus Ableitungen erster Ordnung berechnet werden und ist daher selbst für große maschinelle Lernmodelle leicht zu berechnen. Die FIM ist garantiert positiv semidefinit. Die Berechnung einer FIM wird in Pascanu R, Bengio Y (2013) „Revisiting natural gradient for deep networks.“ arXiv:1301.3584 ausführlicher beschrieben.
  • Nachdem die Maschine 112 den Satz von Wichtigkeitsgewichten 120 entsprechend Aufgabe A bestimmt hat, kann das System 100 das Modell 110 auf neue Trainingsdaten 114 trainieren, die einer neuen maschinellen Lernaufgabe, z. B. Aufgabe B, entsprechen.
  • Damit das Modell 118 Aufgabe B lernen kann, ohne Aufgabe A zu vergessen, verwendet das System 100 während des Trainings des Modells 110 auf Aufgabe B den Satz von Wichtigkeitsgewichten 120, welcher Aufgabe A entspricht, um einen Strafterm in der Zielfunktion 118 zu bilden, der darauf abzielt, eine akzeptable Leistung bei der Aufgabe A aufrechtzuerhalten. Das heißt, das Modell 110 wird trainiert, um trainierte Parameterwerte 116 zu bestimmen, welche die Zielfunktion 118 in Bezug auf Aufgabe B optimieren, und, da die Zielfunktion 118 den Strafterm einschließt, behält das Modell 110 eine akzeptable Leistung bei Aufgabe A bei, selbst nachdem es auf Aufgabe B trainiert wurde. Das Verfahren zum Trainieren des Modells 110 und die Zielfunktion 118 werden im Folgenden unter Bezugnahme auf näher beschrieben.
  • Wenn es mehr als zwei Aufgaben in der Sequenz von maschinellen Lernaufgaben gibt, z. B. wenn das Modell 110 noch auf eine dritte Aufgabe, z. B. Aufgabe C, trainiert werden muss, nachdem es auf Aufgabe B trainiert wurde, nachdem die trainierten Parameterwerte 116 für Aufgabe B bestimmt wurden, stellt das maschinelle Lernsystem 100 die trainierten Parameterwerte 116 der Maschine 112 bereit, sodass die Maschine 112 einen neuen Satz von Wichtigkeitsgewichten bestimmen kann, der Aufgabe B entspricht.
  • Beim Trainieren des Modells 110 auf Aufgabe C kann das System 100 das Modell 110 so trainieren, dass es den Satz von Wichtigkeitsgewichten, der Aufgabe A entspricht, und den neuen Satz von Wichtigkeitsgewichten, der Aufgabe B entspricht, verwendet, um einen neuen Strafterm in der Zielfunktion 118 zu bilden, die von dem Modell 110 in Bezug auf Aufgabe C zu optimieren ist. Der Prozess zum Trainieren des maschinellen Lernmodells 110 auf Aufgabe C wird im Folgenden unter Bezugnahme auf ausführlicher beschrieben. 3. Dieser Trainingsprozess kann wiederholt werden, bis das Modell 110 alle Aufgaben in der Sequenz von maschinellen Lernaufgaben gelernt hat.
  • ist ein Flussdiagramm eines Beispielprozesses 200 zum Trainieren eines maschinellen Lernmodells mit mehreren Parametern für mehrere aufeinanderfolgende Aufgaben.
  • Der Einfachheit halber wird der Prozess 200 so beschrieben, dass er von einem System aus einem oder mehreren Computern an einem oder mehreren Orten durchgeführt wird. Zum Beispiel kann ein maschinelles Lemsystem, z. B. das maschinelle Lernsystem 100 von , das gemäß dieser Beschreibung in geeigneter Weise programmiert ist, den Prozess 200 durchführen.
  • Das maschinelle Lernmodell ist ein Modell, das auf eine erste maschinelle Lernaufgabe trainiert wurde, um erste Werte der Parameter des maschinellen Lernmodells zu bestimmen.
  • Um das maschinelle Lernmodell auf eine andere Aufgabe zu trainieren, bestimmt das System zunächst für jeden der Vielzahl von Parametern ein jeweiliges Maß einer Wichtigkeit des Parameters (z. B. ein Wichtigkeitsgewicht des Parameters) für das maschinelle Lernmodell, das eine akzeptable Leistung bei der ersten maschinellen Lernaufgabe erreicht (Schritt 202).
  • Das Bestimmen eines jeweiligen Maßes einer Wichtigkeit des Parameters schließt das Bestimmen einer Annäherung an eine Wahrscheinlichkeit ein, dass ein aktueller Wert des Parameters ein korrekter Wert des Parameters ist, wenn die ersten Trainingsdaten verwendet werden, um das maschinelle Lernmodell für die erste maschinelle Lernaufgabe zu trainieren.
  • So kann das System beispielsweise eine A-posteriori-Verteilung über mögliche Werte der Parameter des Modells bestimmen, nachdem das Modell anhand früherer Trainingsdaten aus (einer) früheren maschinellen Lernaufgabe(n) trainiert worden ist. Für jeden der Parameter weist die A-posteriori-Verteilung dem aktuellen Wert des Parameters einen Wert zu, bei dem der Wert eine Wahrscheinlichkeit darstellt, dass der aktuelle Wert ein korrekter Wert des Parameters ist.
  • In einigen Implementierungen kann das System die A-posteriori-Verteilung unter Verwendung eines Näherungsverfahrens annähern, z. B. untere Verwendung einer Fisher-Informationsmatrix (FIM). Insbesondere bestimmt das System eine Fisher-Informationsmatrix (FIM) der Parameter des maschinellen Lernmodells in Bezug auf die erste maschinelle Lernaufgabe, in der für jeden der Parameter das jeweilige Maß einer Wichtigkeit des Parameters ein entsprechender Wert auf einer Diagonale der FIM ist. Das heißt, jeder Wert auf der Diagonale der FIM entspricht einem unterschiedlichen Parameter des maschinellen Lernmodells.
  • Anschließend erzielt das System neue Trainingsdaten für das Training des maschinellen Lernmodells auf eine zweite, unterschiedliche maschinelle Lernaufgabe (Schritt 204). Die neuen Trainingsdaten schließen mehrere Trainingsbeispiele ein. Jedes Trainingsbeispiel schließt ein Paar aus einem Eingabebeispiel und einer Zielausgabe für das Eingabebeispiel ein.
  • In einigen Implementierungen sind die erste maschinelle Lernaufgabe und die zweite maschinelle Lernaufgabe unterschiedliche überwachte Lernaufgaben. In einigen anderen Implementierungen handelt es sich bei der ersten maschinellen Lernaufgabe und der zweiten maschinellen Lernaufgabe um unterschiedliche Verstärkungslernaufgaben.
  • Das System trainiert dann das maschinelle Lernmodell auf die zweite maschinelle Lernaufgabe, indem es das maschinelle Lernmodell auf die neuen Trainingsdaten trainiert (Schritt 206).
  • Um es dem maschinellen Lernmodell zu ermöglichen, die zweite Aufgabe zu erlernen, ohne die erste Aufgabe zu vergessen (z. B. durch Beibehalten der Erinnerung an die erste Aufgabe), trainiert das System das maschinelle Lernmodell auf die neuen Trainingsdaten, indem es die ersten Werte der Parameter anpasst, um eine Zielfunktion zu optimieren, die zum Teil von einem Strafterm abhängt, der auf den bestimmten Maßen der Wichtigkeit der Parameter für das maschinelle Lernmodell in Bezug auf die erste Aufgabe basiert.
  • Der Strafterm bestraft Abweichungen von den ersten Werten bei Parametern, die für das Erreichen einer akzeptablen Leistung bei der ersten maschinellen Lernaufgabe wichtiger waren, stärker als bei Parametern, die für das Erreichen einer akzeptablen Leistung bei der ersten maschinellen Lernaufgabe weniger wichtig waren. Indem die ersten Werte des Parameters angepasst werden, um die Zielfunktion zu optimieren, beispielsweise zu minimieren, stellt das maschinelle Lernmodell sicher, dass Werte von Parametern, die in dem maschinellen Lernmodell, das eine akzeptable Leistung bei der ersten maschinellen Lernaufgabe erreicht, wichtiger waren, stärker darauf beschränkt werden, nicht von den ersten Werten abzuweichen als Werte von Parametern, die in dem maschinellen Lernmodell, das eine akzeptable Leistung bei der ersten maschinellen Lernaufgabe erreicht, weniger wichtig waren.
  • In einigen Implementierungen kann die Zielfunktion wie folgt ausgedrückt werden: L ( θ ) = L B ( θ ) + i λ 2 F i ( θ i θ A , i ) 2 .
    Figure DE202017007641U1_0001
  • Die Zielfunktion, die in Gl. 1 gezeigt ist, schließt zwei Terme ein. Der erste Term, LB (θ), misst eine Leistung des maschinellen Lernmodells bei der zweiten maschinellen Lernaufgabe. Der erste Term kann eine beliebige Zielfunktion sein, die für das zweite maschinelle Lernmodell geeignet ist, z. B. Kreuzentropieverlust, mittlerer quadratischer Fehler, maximale Wahrscheinlichkeit, Ziel eines tiefen Q-Netzes (DQN) und so weiter. Der zweite Term, i λ 2 F i ( θ i θ A , i ) 2 ,
    Figure DE202017007641U1_0002
    ist ein Strafterm, der eine Strafe für Parameterwerte auferlegt, die von den ersten Parameterwerten abweichen. Insbesondere hängt der Strafterm für jeden Parameter i der mehreren Parameter des maschinellen Lernmodells von einem Produkt aus (i) dem jeweiligen Maß der Wichtigkeit Fi des Parameters für das maschinelle Lernmodell, das ein akzeptables Leistungsniveau bei der ersten maschinellen Lernaufgabe erreicht, und (ii) einem Unterschied zwischen dem aktuellen Wert des Parameters θi und dem ersten Wert des Parameters θ A , i
    Figure DE202017007641U1_0003
    ab. Der zweite Term hängt ebenfalls von
    Figure DE202017007641U1_0004
    ab, das angibt, wie wichtig die alte Aufgabe (z. B. die erste maschinelle Lernaufgabe) im Vergleich zur neuen Aufgabe (z. B. der zweiten maschinellen Lernaufgabe) ist. Die Fi -Werte können Gewichtsunsicherheiten des neuronalen Netzes darstellen und können aus den FIM-Diagonalwerten oder auf andere Weise abgeleitet werden.
  • Bei einem Ansatz zum Anpassen der ersten Werte der Parameter führt das System die folgende Iteration für jedes von mehreren Trainingsbeispielen in den neuen Trainingsdaten durch.
  • Für jedes Trainingsbeispiel verarbeitet das System das Eingabebeispiel unter Verwendung des maschinellen Lernmodells in Übereinstimmung mit aktuellen Werten von Parametern des maschinellen Lernmodells, um eine Modellausgabe zu bestimmen.
  • Für die erste Iteration sind die aktuellen Werte der Parameter gleich den ersten Werten von Parametern, die bestimmt wurden, nachdem das maschinelle Lernmodell auf die erste maschinelle Lernaufgabe trainiert wurde.
  • Als nächstes bestimmt das System einen Gradienten der Zielfunktion unter Verwendung der Modellausgabe, einer Zielausgabe für das Eingabebeispiel, der aktuellen Werte der Parameter des maschinellen Lernmodells und der ersten Werte der Parameter des maschinellen Lernmodells.
  • Das System passt dann die aktuellen Werte der Parameter unter Verwendung des ermittelten Gradienten an, um die Zielfunktion zu optimieren. Die angepassten Werte der Parameter werden dann als aktuelle Werte der Parameter in der nächsten Iteration verwendet.
  • In einigen Fällen verarbeitet das System die mehreren Trainingsbeispiele in Batches. In diesen Fällen werden für jeden Batch die aktuellen Werte für jedes Trainingsbeispiel in dem Batch festgelegt. Genauer gesagt, verarbeitet das System Eingabebeispiele von Trainingsbeispielen in jedem Batch unter Verwendung des maschinellen Lernmodells in Übereinstimmung mit aktuellen Werten von Parametern des maschinellen Lernmodells, um Modellausgaben zu bestimmen. Das System bestimmt dann einen Gradienten der Zielfunktion unter Verwendung der Modellausgaben, der Zielausgaben für die Eingabebeispiele im Batch, der aktuellen Werte der Parameter des maschinellen Lernmodells und der ersten Werte der Parameter des maschinellen Lernmodells. Das System passt dann die aktuellen Werte der Parameter unter Verwendung des bestimmten Gradienten an, um die Zielfunktion zu optimieren. Die angepassten Werte der Parameter werden dann als aktuelle Werte der Parameter im nächsten Batch verwendet.
  • Nachdem das System die obige Iteration für alle Trainingsbeispiele in den neuen Trainingsdaten durchgeführt hat, beendet das System das Training des maschinellen Lernmodells auf die neuen Trainingsdaten für die zweite maschinelle Lernaufgabe. Die aktuellen Werte der in der letzten Iteration erzielten Parameter werden als die trainierten Parameter des maschinellen Lernmodells in Bezug auf die zweite maschinelle Lernaufgabe bestimmt. Das Training des Modells auf diese Weise führt zu trainierten Parameterwerten, die es dem maschinellen Lernmodell ermöglichen, ein akzeptables Leistungsniveau bei der zweiten maschinellen Lernaufgabe zu erreichen und gleichzeitig ein akzeptables Leistungsniveau bei der ersten maschinellen Lernaufgabe beizubehalten.
  • Sobald das System das maschinelle Lernmodell auf die zweite maschinelle Lernaufgabe trainiert hat, kann das System das maschinelle Lernmodell weiter trainieren, um ein akzeptables Leistungsniveau bei neuen maschinellen Lernaufgaben zu erreichen und gleichzeitig eine akzeptable Leistung bei Aufgaben beizubehalten, auf die das Modell bereits trainiert wurde.
  • Zum Beispiel kann das System, nach dem Training des maschinellen Lernmodells auf die zweite maschinelle Lernaufgabe, um zweite Werte der Parameter des maschinellen Lernmodells zu bestimmen, das maschinelle Lernmodell weiter auf eine dritte, unterschiedliche maschinelle Lernaufgabe trainieren.
  • ist ein Flussdiagramm eines Beispielprozesses 300 zum Trainieren des maschinellen Lernmodells auf eine dritte maschinelle Lernaufgabe, nachdem das maschinelle Lernmodell auf eine erste und eine zweite maschinelle Lernaufgabe trainiert wurde.
  • Der Einfachheit halber wird der Prozess 300 so beschrieben, dass er von einem System aus einem oder mehreren Computern an einem oder mehreren Orten durchgeführt wird. Zum Beispiel kann ein maschinelles Lemsystem, z. B. das maschinelle Lernsystem 100 von , das gemäß dieser Beschreibung in geeigneter Weise programmiert ist, den Prozess 300 durchführen.
  • Das System kann optional für jeden der Vielzahl von Parametern ein jeweiliges Maß einer Wichtigkeit des Parameters für das maschinelle Lernmodell bestimmen, das eine akzeptable Leistung bei der zweiten maschinellen Lernaufgabe erreicht (Schritt 302).
  • Das System erzielt dritte Trainingsdaten zum Trainieren des maschinellen Lernmodells auf die dritte maschinelle Lernaufgabe (Schritt 304).
  • Das System trainiert dann das maschinelle Lernmodell auf die dritte maschinelle Lernaufgabe, indem es das maschinelle Lernmodell auf die dritten Trainingsdaten trainiert, um die zweiten Werte der Parameter so anzupassen, dass das maschinelle Lernmodell ein akzeptables Leistungsniveau bei der dritten maschinellen Lernaufgabe erreicht, während es gleichzeitig ein akzeptables Leistungsniveau bei der ersten maschinellen Lernaufgabe und der zweiten maschinellen Lernaufgabe beibehält (Schritt 306). Während des Trainings des maschinellen Lernmodells auf die dritte maschinelle Lernaufgabe werden Werte von Parametern, die bei dem maschinellen Lernmodell, das bei der ersten maschinellen Lernaufgabe und der zweiten maschinellen Lernaufgabe eine akzeptable Leistung erreicht, wichtiger waren, stärker darauf beschränkt, nicht von den zweiten Werten abzuweichen, als Werte von Parametern, die bei dem maschinellen Lernmodell, das bei der ersten maschinellen Lernaufgabe und der zweiten maschinellen Lernaufgabe eine akzeptable Leistung erreicht hat, weniger wichtig waren.
  • In einigen Fällen trainiert das System das maschinelle Lernmodell, um die zweiten Werte der Parameter anzupassen, um dritte Werte der Parameter zu erzielen, die eine neue Zielfunktion optimieren, die zum Teil von einem Strafterm abhängt, der auf den Maßen einer Wichtigkeit der Parameter für das maschinelle Lernmodell, das eine akzeptable Leistung bei der ersten maschinellen Lernaufgabe erreicht, und auf den Maßen einer Wichtigkeit der Parameter für das maschinelle Lernmodell, das eine akzeptable Leistung bei der zweiten maschinellen Lernaufgabe erreicht, basiert.
  • Zum Beispiel schließt die neue Zielfunktion Folgendes ein: (i) einen ersten Term, der eine Leistung des maschinellen Lernmodells bei der dritten maschinellen Lernaufgabe misst, (ii) einen zweiten Term, der eine Strafe für Parameterwerte auferlegt, die von den ersten Parameterwerten abweichen, wobei der zweite Term Abweichungen von den ersten Werten stärker für Parameter bestraft, die für das Erreichen einer akzeptablen Leistung bei der ersten maschinellen Lernaufgabe wichtiger waren als für Parameter, die für das Erreichen einer akzeptablen Leistung bei der ersten maschinellen Lernaufgabe weniger wichtig waren, und (iii) einen dritten Term, der eine Strafe für von den zweiten Parameterwerten abweichende Parameterwerte auferlegt, wobei der dritte Term Abweichungen von den zweiten Werten stärker für Parameter bestraft, die für das Erreichen einer akzeptablen Leistung bei der zweiten maschinellen Lernaufgabe wichtiger waren als für Parameter, die für das Erreichen einer akzeptablen Leistung bei der zweiten maschinellen Lernaufgabe weniger wichtig waren.
  • Der zweite Term der neuen Zielfunktion kann für jeden der Vielzahl von Parametern von einem Produkt aus (i) dem jeweiligen Maß der Wichtigkeit des Parameters für das maschinelle Lernmodell, das eine akzeptable Leistung bei der ersten maschinellen Lernaufgabe erreicht, und (ii) einem Unterschied zwischen dem aktuellen Wert des Parameters und dem ersten Wert des Parameters abhängen.
  • Der dritte Term der neuen Zielfunktion kann für jeden der Vielzahl von Parametern von einem Produkt aus (i) dem jeweiligen Maß der Wichtigkeit des Parameters für das maschinelle Lernmodell, das eine akzeptable Leistung bei der zweiten maschinellen Lernaufgabe erreicht, und (ii) einem Unterschied zwischen dem aktuellen Wert des Parameters und dem zweiten Wert des Parameters abhängen.
  • Die erzielten dritten Parameterwerte ermöglichen es dem maschinellen Lernmodell, ein akzeptables Leistungsniveau bei der dritten maschinellen Lernaufgabe zu erreichen, während gleichzeitig ein akzeptables Leistungsniveau bei der ersten maschinellen Lernaufgabe und der zweiten maschinellen Lernaufgabe beibehalten wird.
  • In einigen Fällen kann die Zielfunktion wie folgt ausgedrückt werden: L ( θ ) = L B ( θ ) + i λ 2 F A , i ( θ i θ A , i ) 2 + i λ 2 F B , i ( θ i θ B , i ) 2 ,
    Figure DE202017007641U1_0005
    worin i λ 2 F A , i ( θ i θ A , i ) 2
    Figure DE202017007641U1_0006
    ein Strafterm ist, der eine Strafe für Parameterwerte auferlegt, die von den ersten Parameterwerten abweichen, und für jeden Parameter i der mehreren Parameter des maschinellen Lernmodells von einem Produkt aus (i) dem jeweiligen Maß der Wichtigkeit FA,i des Parameters für das maschinelle Lernmodell, das ein akzeptables Leistungsniveau bei der ersten maschinellen Lernaufgabe erreicht, und (ii) einem Unterschied zwischen dem aktuellen Wert des Parameters θi und dem ersten Wert des Parameters θ A , i
    Figure DE202017007641U1_0007
    abhängt. i λ 2 F B , i ( θ i θ B , i ) 2
    Figure DE202017007641U1_0008
    ist ein anderer Strafterm, der eine Strafe für Parameterwerte auferlegt, die von den zweiten Parameterwerten abweichen, und für jeden Parameter i der mehreren Parameter des maschinellen Lernmodells von einem Produkt aus (i) dem jeweiligen Maß der Wichtigkeit FB,i des Parameters für das maschinelle Lernmodell, das ein akzeptables Leistungsniveau bei der zweiten maschinellen Lernaufgabe erreicht, und (ii) einem Unterschied zwischen dem aktuellen Wert des Parameters θi und dem zweiten Wert des Parameters θ B , i
    Figure DE202017007641U1_0009
    abhängt.
  • Ein maschinelles Lernsystem, das den obigen Ansatz umsetzt, z. B. ein RL-System, kann ein System zum automatischen Erkennen von Wechseln zwischen Aufgaben einschließen. Dieses kann einen Online-Algorithmus zur Clusterbildung implementieren, der ohne Überwachung trainiert wird. Dies kann beispielsweise durch Modellieren einer aktuellen Aufgabe als kategorischer Kontext c geschehen, der als verborgene Variable eines Hidden-Markov-Modells behandelt wird, das eine aktuelle Beobachtung erklärt. Der Aufgabenkontext c kann ein generatives Modell bedingen, das die Beobachtungswahrscheinlichkeit vorhersagt, und neue generative Modelle können hinzugefügt werden, wenn sie aktuelle Daten besser erklären als der bestehende Pool generativer Modelle. Zum Beispiel kann am Ende jedes aufeinander folgenden Zeitfensters das Modell ausgewählt werden, das der aktuellen Aufgabe am besten entspricht, und ein nicht initialisiertes Modell (Gleichverteilung) kann zur Auswahl bereitgestellt werden, um ein neues generatives Modell und einen neuen Aufgabenkontext zu erstellen.
  • Ein RL-System, das den obigen Ansatz umsetzt, kann mit oder ohne Regeln arbeiten; bei einem Betrieb ohne Regeln kann ein separater Erfahrungspuffer für jede identifizierte oder abgeleitete Aufgabe geführt werden. Optional können Verstärkungen und Verzerrungen des neuronalen Netzes aufgabenspezifisch sein.
  • In dieser Spezifikation wird der Begriff „konfiguriert“ im Zusammenhang mit Systemen und Komponenten von Computerprogrammen verwendet. Wenn ein System aus einem oder mehreren Computern so konfiguriert ist, dass es bestimmte Vorgänge oder Aktionen ausführt, bedeutet dies, dass das System Software, Firmware, Hardware oder eine Kombination davon darauf installiert hat, die im Betrieb das System veranlassen, die Schritte oder Aktionen auszuführen. Damit ein oder mehrere Computerprogramme so konfiguriert sind, dass sie bestimmte Vorgänge oder Aktionen durchführen, müssen das eine oder die mehreren Programme Anweisungen einschließen, die, wenn sie von einer Datenverarbeitungsvorrichtung ausgeführt werden, die Vorrichtung veranlassen, die Vorgänge oder Aktionen durchzuführen.
  • Ausführungsformen des in dieser Spezifikation beschriebenen Gegenstands und der funktionalen Vorgänge können in digitalen elektronischen Schaltkreisen, in greifbar ausgeführter Computersoftware oder Firmware, in Computerhardware, einschließlich der in dieser Spezifikation offengelegten Strukturen und ihrer strukturellen Äquivalente, oder in Kombinationen aus einer oder mehreren davon implementiert werden. Ausführungsformen des in dieser Spezifikation beschriebenen Gegenstands können als ein oder mehrere Computerprogramme implementiert werden, d. h. als ein oder mehrere Module von Computerprogrammanweisungen, die auf einem greifbaren, nichtflüchtigen Speichermedium codiert sind, um von einer Datenverarbeitungsvorrichtung ausgeführt zu werden oder den Betrieb einer solchen zu steuern. Bei dem Computerspeichermedium kann es sich um ein maschinenlesbares Speichergerät, ein maschinenlesbares Speichersubstrat, eine Speichervorrichtung mit wahlfreiem oder seriellem Zugriff oder eine Kombination aus einem oder mehreren davon handeln. Alternativ oder zusätzlich können die Programmanweisungen auf einem künstlich erzeugten, fortgepflanzten Signal codiert werden, z. B., einem maschinell erzeugten elektrischen, optischen oder elektromagnetischen Signal, das erzeugt wird, um Informationen zur Übertragung an eine geeignete Empfangsvorrichtung zur Ausführung durch eine Datenverarbeitungsvorrichtung zu codieren.
  • Der Begriff „Datenverarbeitungsvorrichtung“ bezieht sich auf Datenverarbeitungshardware und schließt alle Arten von Vorrichtungen, Geräten, und Maschinen für das Verarbeiten von Daten ein, einschließlich beispielsweise einen programmierbaren Prozessor, einen Computer oder mehrere Prozessoren oder Computer. Die Vorrichtung kann ebenfalls Folgendes sein oder dieses ferner einschließen: eine spezielle Logikschaltung, z. B. eine FPGA-Anordnung (Field Programmable Gate Array) oder eine ASIC-Schaltung (Application Specific Integrated Circuit). Die Vorrichtung kann optional, zusätzlich zu Hardware, Code einschließen, der eine Ausführungsumgebung für Computerprogramme schafft, z. B. Code, der eine Prozessor-Firmware, einen Protokollstapel, ein Datenbankverwaltungssystem, ein Betriebssystem oder eine Kombination aus einem oder mehreren von diesen bildet.
  • Ein Computerprogramm, das ebenfalls als Programm, Software, Softwareanwendung, App, Modul, Softwaremodul, Skript oder Code bezeichnet oder beschrieben werden kann, kann in jeder beliebigen Programmiersprache geschrieben werden, einschließlich kompilierter oder interpretierter Sprachen oder deklarativer oder prozeduraler Sprachen; und es kann in jeder beliebigen Form eingesetzt werden, einschließlich als eigenständiges Programm oder als Modul, Komponente, Unterprogramm oder andere Einheit, der/die/das zur Verwendung in einer Computerumgebung geeignet ist. Ein Programm kann, muss aber nicht, einer Datei in einem Dateisystem entsprechen. Ein Programm kann in einem Teil einer Datei gespeichert werden, die andere Programme oder Daten enthält, z. B. ein oder mehrere Skripte, die in einem Auszeichnungssprachdokument gespeichert sind, in einer einzelnen Datei, die nur dem betreffenden Programm gewidmet ist, oder in mehreren koordinierten Dateien, z. B. Dateien, die ein oder mehrere Module, Unterprogramme oder Teile von Code speichern. Ein Computerprogramm kann zur Ausführung auf einem Computer oder auf mehreren Computern eingesetzt werden, die sich an einem Standort befinden oder über mehrere Standorte verteilt und über ein Datenkommunikationsnetz miteinander verbunden sind.
  • In dieser Spezifikation wird der Begriff „Maschine“ im weitesten Sinne verwendet und bezieht sich auf ein softwarebasiertes System, Teilsystem oder einen Prozess, das/der so programmiert ist, dass es/ er eine oder mehrere spezifische Funktionen durchführt. Im Allgemeinen wird eine Maschine als ein oder mehrere Softwaremodule oder Komponenten implementiert, die auf einem oder mehreren Computern an einem oder mehreren Orten installiert sind. In einigen Fällen sind ein oder mehrere Computer einer bestimmten Maschine gewidmet; in anderen Fällen können mehrere Maschinen auf demselben Computer oder denselben Computern installiert sein und laufen.
  • Die in dieser Spezifikation beschriebenen Prozesse und logischen Abläufe können von einem oder mehreren programmierbaren Computern durchgeführt werden, die ein oder mehrere Computerprogramme ausführen, um Funktionen durchzuführen, indem sie auf Eingabedaten arbeiten und eine Ausgabe erzeugen. Die Prozesse und logischen Abläufe können ebenfalls von speziellen Logikschaltungen, z. B. einer FPGA oder einer ASIC, oder von einer Kombination aus speziellen Logikschaltungen und einem oder mehreren programmierten Computern durchgeführt werden.
  • Computer, die für die Ausführung eines Computerprogramms geeignet sind, können auf allgemeinen oder speziellen Mikroprozessoren oder auf beiden oder auf jeder anderen Art von zentraler Verarbeitungseinheit basieren. In der Regel empfängt eine zentrale Verarbeitungseinheit Anweisungen und Daten aus einem Festwertspeicher oder einem Speicher mit wahlfreiem Zugriff oder aus beiden. Die wesentlichen Elemente eines Computers sind eine zentrale Verarbeitungseinheit zum Durchführen oder Ausführen von Anweisungen und ein oder mehrere Speichergeräte zum Speichern von Anweisungen und Daten. Die zentrale Verarbeitungseinheit und der Speicher können durch spezielle Logikschaltungen ergänzt werden oder in diese integriert sein. Im Allgemeinen schließt ein Computer ebenfalls ein oder mehrere Massenspeichergeräte zum Speichern von Daten ein oder ist funktionsfähig damit gekoppelt, um Daten von einem oder mehreren Massenspeichergeräten, z. B. magnetischen, magnetooptischen Platten oder optischen Platten, zu empfangen oder Daten an diese zu übertragen oder beides. Ein Computer muss jedoch keine solchen Geräte aufweisen. Darüber hinaus kann ein Computer in ein anderes Gerät eingebettet sein, z. B. in ein Mobiltelefon, einen persönlichen digitalen Assistenten (PDA), einen mobilen Audio- oder Videoplayer, eine Spielkonsole, einen Global Positioning Sytem-Empfänger (GPS) oder eine tragbare Speichervorrichtung, z. B. einen Universal System Bus-Stick (USB), um nur einige zu nennen.
  • Computerlesbare Medien, die zum Speichern von Computerprogrammanweisungen und -daten geeignet sind, schließen alle Formen von nichtflüchtigen Speichern, Medien und Speichergeräten ein, einschließlich z. B. Halbleiterspeichergeräte, z. B. EPROM, EEPROM und Flash-Speichergeräte, Magnetplatten, z. B. interne Festplatten oder abnehmbare Platten; magnetooptische Platten sowie CD-ROM- und DVD-ROM-Platten.
  • Um die Interaktion mit einem Benutzer zu ermöglichen, können Ausführungsformen des in dieser Spezifikation beschriebenen Gegenstands auf einem Computer implementiert werden, der ein Anzeigegerät, z. B. einen CRT- (Kathodenstrahlröhre) oder LCD- (Flüssigkristallanzeige)-Monitor, zum Anzeigen von Informationen für den Benutzer sowie eine Tastatur und ein Zeigegerät, z. B. eine Maus oder einen Trackball, aufweist, mit denen der Benutzer Eingaben in den Computer machen kann. Es können auch andere Arten von Geräten verwendet werden, um die Interaktion mit einem Benutzer zu ermöglichen; so kann ein Feedback, das dem Benutzer bereitgestellt wird, jede Form von sensorischem Feedback sein, z. B. visuelles Feedback, auditives Feedback oder taktiles Feedback; und Eingaben von dem Benutzer können in jeder Form empfangen werden, einschließlich akustischer, sprachlicher oder taktiler Eingaben. Darüber hinaus kann ein Computer mit einem Benutzer interagieren, indem er Dokumente an ein vom Benutzer verwendetes Gerät sendet und von diesem empfängt, z. B. durch Senden von Webseiten an einen Webbrowser auf einem Gerät eines Benutzers als Reaktion auf vom Webbrowser empfangene Anfragen. Ebenfalls kann ein Computer mit einem Benutzer interagieren, indem er Textnachrichten oder andere Formen von Nachrichten an ein persönliches Gerät sendet, z. B. ein Smartphone, auf dem eine Nachrichtenanwendung läuft, und im Gegenzug Antwortnachrichten vom Benutzer empfängt.
  • Datenverarbeitungsvorrichtung für das Implementieren von maschinellen Lernmodellen können beispielsweise ebenfalls spezielle Hardware-Beschleunigungseinheiten für das Verarbeiten allgemeiner und rechenintensiver Teile von maschinellen Lerntraining oder Produktion, d. h. Inferenz, Arbeitslasten einschließen.
  • Maschinelle Lernmodelle können unter Verwendung eines maschinellen Lem-Frameworks implementiert und eingesetzt werden, z. B. eines TensorFlow-Framework, eines Microsoft Cognitive Toolkit-Framework, eines Apache Singa-Framework oder eines Apache MXNet-Framework.
  • Ausführungsformen des in dieser Spezifikation beschriebenen Gegenstands können in einem Computersystem implementiert werden, das eine Backend-Komponente, z. B. als Datenserver, einschließt, oder das eine Middleware-Komponente, z. B. einen Anwendungsserver, einschließt, oder das eine Frontend-Komponente, z. B. einen Client-Computer mit einer grafischen Benutzeroberfläche, einem Webbrowser oder einer App, über die ein Benutzer mit einer Implementierung des in dieser Spezifikation beschriebenen Gegenstands interagieren kann, oder eine beliebige Kombination aus einer oder mehreren solcher Backend-, Middleware- oder Frontend-Komponenten einschließt. Die Komponenten des Systems können über eine beliebige Form oder ein beliebiges Medium digitaler Datenkommunikation, z. B. ein Kommunikationsnetz, miteinander verbunden werden. Beispiele für Kommunikationsnetze schließen ein lokales Netz (LAN) und ein Weitverkehrsnetz (WAN), z. B. das Internet, ein.
  • Das Computersystem kann Clients und Server einschließen. Ein Client und ein Server sind im Allgemeinen voneinander entfernt und interagieren typischerweise über ein Kommunikationsnetz. Die Beziehung zwischen Client und Server entsteht dadurch, dass Computerprogramme auf den jeweiligen Computern laufen und eine Client-Server-Beziehung zueinander aufweisen. In einigen Ausführungsformen überträgt ein Server Daten, z. B. eine HTML-Seite, an ein Benutzergerät, z. B. zum Anzeigen von Daten und zum Empfangen von Benutzereingaben von einem Benutzer, der mit dem Gerät interagiert, das als Client fungiert. Die auf dem Benutzergerät erzeugten Daten, z. B. ein Ergebnis der Benutzerinteraktion, können von dem Gerät auf dem Server empfangen werden.
  • Diese Spezifikation enthält viele spezifische Implementierungsdetails, die jedoch nicht als Beschränkungen des Umfangs jeglicher Erfindung oder des Umfangs der Ansprüche ausgelegt werden sollten, sondern als Beschreibungen von Merkmalen, die für bestimmte Ausführungsformen bestimmter Erfindungen spezifisch sein können. Bestimmte Merkmale, die in dieser Beschreibung im Zusammenhang mit einzelnen Ausführungsformen beschrieben werden, können ebenfalls in Kombination in einer einzigen Ausführungsform implementiert werden. Umgekehrt können verschiedene Merkmale, die im Zusammenhang mit einer einzigen Ausführungsform beschrieben werden, ebenfalls in mehreren Ausführungsformen separat oder in jeder geeigneten Unterkombination implementiert werden. Darüber hinaus kann/können, obwohl oben Merkmale als in bestimmten Kombinationen wirkend beschrieben werden und sogar ursprünglich als solche beansprucht werden, ein oder mehrere Merkmale einer beanspruchten Kombination in einigen Fällen aus der Kombination herausgenommen werden, und die beanspruchte Kombination kann auf eine Unterkombination oder eine Variation einer Unterkombination gerichtet sein.
  • Ähnlich sind Vorgänge in den Zeichnungen zwar in einer bestimmten Reihenfolge abgebildet und in den Ansprüchen aufgeführt, dies ist jedoch nicht so zu verstehen, dass derartige Vorgänge in der gezeigten bestimmten Reihenfolge oder aufeinanderfolgend durchgeführt werden müssen, oder dass alle abgebildeten Vorgänge durchgeführt werden müssen, um gewünschte Ergebnisse zu erzielen. Unter bestimmten Umständen können Multitasking und Parallelverarbeitung vorteilhaft sein. Darüber hinaus ist die Trennung verschiedener Systemmodule und -komponenten in den oben beschriebenen Ausführungsformen nicht so zu verstehen, dass eine solche Trennung in allen Ausführungsformen erforderlich ist, und es ist davon auszugehen, dass die beschriebenen Programmkomponenten und Systeme im Allgemeinen in ein einziges Softwareprodukt integriert oder in mehreren Softwareprodukten verpackt sein können.
  • Besondere Ausführungsformen des Gegenstandes sind beschrieben worden. Andere Ausführungsformen fallen in den Anwendungsbereich der folgenden Ansprüche. Zum Beispiel können die in den Ansprüchen genannten Handlungen in einer anderen Reihenfolge durchgeführt werden und dennoch zu den gewünschten Ergebnissen führen. Als ein Beispiel sei angeführt, dass die in den beigefügten Figuren abgebildeten Prozesse nicht unbedingt in der gezeigten Reihenfolge ablaufen müssen, um die gewünschten Ergebnisse zu erzielen. In einigen Fällen können Multitasking und Parallelverarbeitung von Vorteil sein.
  • 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 Nicht-Patentliteratur
    • Li und Hoiem, „Learning Without Forgetting“, Network and Parallel Computing, 29. Juni 2016, Springer, Bd. 9908, Seiten 614-629 [0004]
    • French, „Catastrophic forgetting in connectionist networks“, Trends In Cognitive Sciences, Bd. 3, Nr. 4, 1. April 1999, Seiten 128-135 [0004]

Claims (45)

  1. System, umfassend einen oder mehrere Computer und ein oder mehrere Speichergeräte, die Anweisungen speichern, die, wenn sie von dem einen oder den mehreren Computern ausgeführt werden, den einen oder die mehreren Computer veranlassen, ein maschinelles Lernmodell zu trainieren, das eine Vielzahl von Parametern aufweist, wobei das maschinelle Lernmodell auf eine erste maschinelle Lernaufgabe trainiert worden ist, um erste Werte der Parameter des maschinellen Lernmodells zu bestimmen, und wobei die Anweisungen konfiguriert sind, um den einen oder die mehreren Computer zu Folgendem zu steuern: Bestimmen, für jeden der Vielzahl von Parametern, eines jeweiligen Maßes einer Wichtigkeit des Parameters für das maschinelle Lernmodell, das eine akzeptable Leistung bei der ersten maschinellen Lernaufgabe erreicht; Erzielen von Trainingsdaten zum Trainieren des maschinellen Lernmodells auf eine zweite, unterschiedliche maschinelle Lernaufgabe; und Trainieren des maschinellen Lernmodells auf die zweite maschinelle Lernaufgabe durch Trainieren des maschinellen Lernmodells auf die Trainingsdaten, um die ersten Werte der Parameter so anzupassen, dass das maschinelle Lernmodell ein akzeptables Leistungsniveau bei der zweiten maschinellen Lernaufgabe erreicht, während es gleichzeitig ein akzeptables Leistungsniveau bei der ersten maschinellen Lernaufgabe beibehält, wobei, während des Trainings des maschinellen Lernmodells auf die zweite maschinelle Lernaufgabe, Werte von Parametern, die bei dem maschinellen Lernmodell, das eine akzeptable Leistung bei der ersten maschinellen Lernaufgabe erreicht, wichtiger waren, stärker darauf beschränkt werden, nicht von den ersten Werten abzuweichen, als Werte von Parametern, die bei dem maschinellen Lernmodell, das eine akzeptable Leistung bei der ersten maschinellen Lernaufgabe erreicht, weniger wichtig waren; wobei das maschinelle Lernmodell ein tiefes neuronales Netzmodell umfasst, das eine Eingabeschicht und eine oder mehrere versteckte Schichten einschließt, die jeweils eine nichtlineare Transformation auf eine empfangene Eingabe anwenden, um eine Ausgabe zu erzeugen, wobei das maschinelle Lernmodell die Ausgabe auf der Grundlage der empfangenen Eingabe und der Werte der Parameter des Modells erzeugt; und wobei die erste maschinelle Lernaufgabe und die zweite maschinelle Lernaufgabe unterschiedliche überwachte Lernaufgaben sind.
  2. System nach Anspruch 1, wobei die überwachten Lernaufgaben Klassifikationsaufgaben umfassen.
  3. System nach einem der Ansprüche 1 bis 2, wobei die überwachten Lernaufgaben unterschiedliche Bildverarbeitungs- oder optische Zeichenerkennungsaufgaben umfassen.
  4. System nach einem der Ansprüche 1 bis 2, wobei die überwachten Lernaufgaben unterschiedliche Spracherkennungsaufgaben umfassen.
  5. System nach Anspruch 4, wobei die Spracherkennungsaufgaben Aufgaben zur Erkennung von Aktivierungswörtern einschließen, worin jede Aufgabe die Erkennung eines anderen Aktivierungsworts oder einer anderen Sequenz von Aktivierungswörtern erfordert.
  6. System nach einem der Ansprüche 1 bis 2, wobei die überwachten Lernaufgaben unterschiedliche Aufgaben zur Verarbeitung natürlicher Sprache umfassen.
  7. System nach einem der Ansprüche 1 bis 2, wobei die überwachten Lernaufgaben eine Kombination von zwei oder mehr Aufgaben umfassen, die aus der Gruppe ausgewählt sind, bestehend aus Foglendem: Bildverarbeitungsaufgaben, Spracherkennungsaufgaben, Aufgaben zur Verarbeitung natürlicher Sprache und Aufgaben zur optischen Zeichenerkennung.
  8. System nach einem der Ansprüche 1 bis 2, wobei die überwachten Lernaufgaben Bildverarbeitungsaufgaben und Aufgaben zur Verarbeitung natürlicher Sprache umfassen.
  9. System nach einem der Ansprüche 1 bis 2, wobei die überwachten Lernaufgaben Bildverarbeitungsaufgaben und Spracherkennungsverarbeitungsaufgaben umfassen.
  10. System nach einem der Ansprüche 1 bis 2, wobei die überwachten Lernaufgaben Spracherkennungsverarbeitungsaufgaben und Aufgaben zur Verarbeitung natürlicher Sprache umfassen.
  11. System nach einem der Ansprüche 1 bis 10, wobei die Anweisungen, die so konfiguriert sind, dass sie den einen oder die mehreren Computer steuern, um das maschinelle Lernmodell auf die Trainingsdaten zu trainieren, Anweisungen zu Folgendem umfassen: Anpassen der ersten Werte der Parameter, um eine Zielfunktion zu optimieren, die Folgendes einschließt: (i) einen ersten Term, der eine Leistung des maschinellen Lernmodells bei der zweiten maschinellen Lernaufgabe misst, und (ii) einen zweiten Term, der eine Strafe für Parameterwerte auferlegt, die von den ersten Parameterwerten abweichen, wobei der zweite Term Abweichungen von den ersten Werten stärker für Parameter bestraft, die beim Erreichen einer akzeptablen Leistung bei der ersten maschinellen Lernaufgabe wichtiger waren als für Parameter, die beim Erreichen einer akzeptablen Leistung bei der ersten maschinellen Lernaufgabe weniger wichtig waren.
  12. System nach Anspruch 11, wobei die Anweisungen, die so konfiguriert sind, dass sie den einen oder die mehreren Computer steuern, um das maschinelle Lernmodell auf die Trainingsdaten zu trainieren, Anweisungen zu Folgendem umfassen, für jedes Trainingsbeispiel in den Trainingsdaten: Verarbeiten des Trainingsbeispiels unter Verwendung des maschinellen Lernmodells in Übereinstimmung mit aktuellen Werten von Parametern des maschinellen Lernmodells, um eine Modellausgabe zu bestimmen; Bestimmen eines Gradienten der Zielfunktion unter Verwendung der Modellausgabe, einer Zielausgabe für das Trainingsbeispiel, der aktuellen Werte der Parameter des maschinellen Lernmodells und der ersten Werte der Parameter des maschinellen Lernmodells; und Anpassen der aktuellen Werte der Parameter unter Verwendung des Gradienten, um die Zielfunktion zu optimieren.
  13. System nach einem der Ansprüche 11 oder 12, wobei der zweite Term für jeden der Vielzahl von Parametern von einem Produkt aus dem jeweiligen Maß der Wichtigkeit des Parameters und einem Unterschied zwischen dem aktuellen Wert des Parameters und dem ersten Wert des Parameters abhängt.
  14. System nach einem der Ansprüche 1 bis 13, wobei die Anweisungen, die so konfiguriert sind, dass sie den einen oder die mehreren Computer so steuern, dass sie für jeden der Vielzahl von Parametern ein jeweiliges Maß einer Wichtigkeit des Parameters für das maschinelle Lernmodell, das eine akzeptable Leistung bei der ersten maschinellen Lernaufgabe erreicht, bestimmen, Anweisungen zu Folgendem umfassen: Bestimmen, für jeden der Vielzahl von Parametern, einer Annäherung an eine Wahrscheinlichkeit, dass ein aktueller Wert des Parameters ein korrekter Wert des Parameters ist, wenn erste Trainingsdaten verwendet werden, um das maschinelle Lernmodell auf die erste Aufgabe zu trainieren.
  15. System nach einem der Ansprüche 1 bis 14, wobei die Anweisungen, die so konfiguriert sind, dass sie den einen oder die mehreren Computer so steuern, dass sie für jeden der Vielzahl von Parametern ein jeweiliges Maß einer Wichtigkeit des Parameters für das maschinelle Lernmodell, das eine akzeptable Leistung bei der ersten maschinellen Lernaufgabe erreicht, bestimmen, Anweisungen zu Folgendem umfassen: Bestimmen einer Fisher-Informationsmatrix (FIM) der Vielzahl von Parametern des maschinellen Lernmodells in Bezug auf die erste maschinelle Lernaufgabe, wobei für jeden der Vielzahl von Parametern das jeweilige Maß der Wichtigkeit des Parameters ein entsprechender Wert auf einer Diagonale der FIM ist.
  16. System nach einem der Ansprüche 1 bis 15, ferner umfassend Anweisungen zu Folgendem: nach dem Trainieren des maschinellen Lernmodells auf die zweite maschinelle Lernaufgabe, zum Bestimmen von zweiten Werten der Parameter des maschinellen Lemmodells: Erzielen dritter Trainingsdaten zum Trainieren des maschinellen Lernmodells auf eine dritte, unterschiedliche maschinelle Lernaufgabe; und Trainieren des maschinellen Lernmodells auf die dritte maschinelle Lernaufgabe durch Trainieren des maschinellen Lernmodells auf die dritten Trainingsdaten, um die zweiten Werte der Parameter so anzupassen, dass das maschinelle Lernmodell ein akzeptables Leistungsniveau bei der dritten maschinellen Lernaufgabe erreicht, während es gleichzeitig ein akzeptables Leistungsniveau bei der ersten maschinellen Lernaufgabe und der zweiten maschinellen Lernaufgabe beibehält, wobei, während des Trainings des maschinellen Lernmodells auf die dritte maschinelle Lernaufgabe Werte von Parametern, die bei dem maschinellen Lernmodell, das bei der ersten maschinellen Lernaufgabe und der zweiten maschinellen Lernaufgabe eine akzeptable Leistung erreicht, wichtiger waren, stärker darauf beschränkt werden, nicht von den zweiten Werten abzuweichen, als Werte von Parametern, die bei dem maschinellen Lernmodell, das bei der ersten maschinellen Lernaufgabe und der zweiten maschinellen Lernaufgabe eine akzeptable Leistung erreicht, weniger wichtig waren.
  17. System nach Anspruch 16, ferner umfassend Anweisungen zu Folgendem: Bestimmen, für jeden der Vielzahl von Parametern, eines jeweiligen Maßes einer Wichtigkeit des Parameters für das maschinelle Lernmodell, das eine akzeptable Leistung bei der zweiten maschinellen Lernaufgabe erreicht; und wobei die Anweisungen, die konfiguriert sind, um den einen oder die mehreren Computer zu steuern, um das maschinelle Lernmodell auf die dritten Trainingsdaten zu trainieren, Anweisungen einschließen, um die zweiten Werte der Parameter anzupassen, um eine Zielfunktion zu optimieren, die Folgendes einschließt: (i) einen ersten Term, der eine Leistung des maschinellen Lernmodells bei der dritten maschinellen Lernaufgabe misst, und (ii) einen zweiten Term, der eine Strafe für Parameterwerte auferlegt, die von den ersten Parameterwerten abweichen, wobei der zweite Term Abweichungen von den ersten Werten stärker für Parameter bestraft, die beim Erreichen einer akzeptablen Leistung bei der ersten maschinellen Lernaufgabe wichtiger waren als für Parameter, die beim Erreichen einer akzeptablen Leistung bei der ersten maschinellen Lernaufgabe weniger wichtig waren. (iii) einen dritten Term, der eine Strafe für Parameterwerte auferlegt, die von den zweiten Parameterwerten abweichen, wobei der dritte Term Abweichungen von den zweiten Werten stärker für Parameter bestraft, die beim Erreichen einer akzeptablen Leistung bei der zweiten maschinellen Lernaufgabe wichtiger waren als für Parameter, die beim Erreichen einer akzeptablen Leistung bei der zweiten maschinellen Lernaufgabe weniger wichtig waren.
  18. System nach Anspruch 17, wobei der zweite Term für jeden der Vielzahl von Parametern von einem Produkt aus (i) dem jeweiligen Maß der Wichtigkeit des Parameters für das maschinelle Lernmodell, das eine akzeptable Leistung bei der ersten maschinellen Lernaufgabe erreicht, und (ii) einem Unterschied zwischen dem aktuellen Wert des Parameters und dem ersten Wert des Parameters abhängt.
  19. System nach Anspruch 17, wobei der dritte Term für jeden der Vielzahl von Parametern von einem Produkt aus (i) dem jeweiligen Maß der Wichtigkeit des Parameters für das maschinelle Lernmodell, das eine akzeptable Leistung bei der zweiten maschinellen Lernaufgabe erreicht, und (ii) einem Unterschied zwischen dem aktuellen Wert des Parameters und dem zweiten Wert des Parameters abhängt.
  20. System nach einem der Ansprüche 11 bis 15 in Abhängigkeit von Anspruch 11, ferner umfassend Anweisungen zum Erkennen, wenn von einer maschinellen Lernaufgabe zu einer anderen gewechselt wird, und zum Aktualisieren des zweiten Terms der Zielfunktion als Reaktion darauf, wobei die Anweisungen zum Erkennen, wenn von einer maschinellen Lernaufgabe zu einer anderen gewechselt wird, Anweisungen zum Ableiten, welche Aufgabe durchgeführt wird, aus einem oder mehreren Modellen, umfassen.
  21. System, umfassend einen oder mehrere Computer und ein oder mehrere Speichergeräte, die Anweisungen speichern, die, wenn sie von dem einen oder den mehreren Computern ausgeführt werden, den einen oder die mehreren Computer veranlassen, ein maschinelles Lernmodell zu trainieren, das eine Vielzahl von Parametern aufweist, wobei das maschinelle Lernmodell auf eine erste maschinelle Lernaufgabe trainiert worden ist, um erste Werte der Parameter des maschinellen Lernmodells zu bestimmen, und wobei die Anweisungen konfiguriert sind, um den einen oder die mehreren Computer zu Folgendem zu steuern: Bestimmen, für jeden der Vielzahl von Parametern, eines jeweiligen Maßes einer Wichtigkeit des Parameters für das maschinelle Lernmodell, das eine akzeptable Leistung bei der ersten maschinellen Lernaufgabe erreicht; Erzielen von Trainingsdaten zum Trainieren des maschinellen Lernmodells auf eine zweite, unterschiedliche maschinelle Lernaufgabe; und Trainieren des maschinellen Lernmodells auf die zweite maschinelle Lernaufgabe durch Trainieren des maschinellen Lernmodells auf die Trainingsdaten, um die ersten Werte der Parameter so anzupassen, dass das maschinelle Lernmodell ein akzeptables Leistungsniveau bei der zweiten maschinellen Lernaufgabe erreicht, während es gleichzeitig ein akzeptables Leistungsniveau bei der ersten maschinellen Lernaufgabe beibehält, wobei, während des Trainings des maschinellen Lernmodells auf die zweite maschinelle Lernaufgabe, Werte von Parametern, die bei dem maschinellen Lernmodell, das eine akzeptable Leistung bei der ersten maschinellen Lernaufgabe erreicht, wichtiger waren, stärker darauf beschränkt werden, nicht von den ersten Werten abzuweichen, als Werte von Parametern, die bei dem maschinellen Lernmodell, das eine akzeptable Leistung bei der ersten maschinellen Lernaufgabe erreicht, weniger wichtig waren. wobei das maschinelle Lernmodell ein tiefes neuronales Netzmodell umfasst, das eine Eingabeschicht und eine oder mehrere versteckte Schichten einschließt, die jeweils eine nichtlineare Transformation auf eine empfangene Eingabe anwenden, um eine Ausgabe zu erzeugen, wobei das maschinelle Lernmodell die Ausgabe auf der Grundlage der empfangenen Eingabe und der Werte der Parameter des Modells erzeugt; und wobei die erste und die zweite maschinelle Lernaufgabe jeweils eine Verstärkungslernaufgabe umfassen, bei der ein Roboteragent mit einer realen Umgebung interagiert, um die Aufgabe auszuführen.
  22. System nach Anspruch 21, wobei der Roboteragent eine statische oder sich bewegende Maschine oder ein statisches oder sich bewegendes Fahrzeug umfasst.
  23. Computerspeichermedium, das mit Anweisungen codiert ist, die, wenn sie von einem oder mehreren Computern ausgeführt werden, den einen oder die mehreren Computer veranlassen, die Vorgänge zum Implementieren eines computerimplementierten Verfahrens zum Trainieren eines maschinellen Lernmodells, das eine Vielzahl von Parametern aufweist, durchzuführen, wobei das maschinelle Lernmodell auf eine erste maschinelle Lernaufgabe trainiert worden ist, um erste Werte der Parameter des maschinellen Lernmodells zu bestimmen, und wobei das Verfahren Folgendes umfasst: Bestimmen, für jeden der Vielzahl von Parametern, eines jeweiligen Maßes einer Wichtigkeit des Parameters für das maschinelle Lernmodell, das eine akzeptable Leistung bei der ersten maschinellen Lernaufgabe erreicht; Erzielen von Trainingsdaten zum Trainieren des maschinellen Lernmodells auf eine zweite, unterschiedliche maschinelle Lernaufgabe; und Trainieren des maschinellen Lernmodells auf die zweite maschinelle Lernaufgabe durch Trainieren des maschinellen Lernmodells auf die Trainingsdaten, um die ersten Werte der Parameter so anzupassen, dass das maschinelle Lernmodell ein akzeptables Leistungsniveau bei der zweiten maschinellen Lernaufgabe erreicht, während es gleichzeitig ein akzeptables Leistungsniveau bei der ersten maschinellen Lernaufgabe beibehält, wobei, während des Trainings des maschinellen Lernmodells auf die zweite maschinelle Lernaufgabe, Werte von Parametern, die bei dem maschinellen Lernmodell, das eine akzeptable Leistung bei der ersten maschinellen Lernaufgabe erreicht, wichtiger waren, stärker darauf beschränkt werden, nicht von den ersten Werten abzuweichen, als Werte von Parametern, die bei dem maschinellen Lernmodell, das eine akzeptable Leistung bei der ersten maschinellen Lernaufgabe erreicht, weniger wichtig waren. wobei das maschinelle Lernmodell ein tiefes neuronales Netzmodell umfasst, das eine Eingabeschicht und eine oder mehrere versteckte Schichten einschließt, die jeweils eine nichtlineare Transformation auf eine empfangene Eingabe anwenden, um eine Ausgabe zu erzeugen, wobei das maschinelle Lernmodell die Ausgabe auf der Grundlage der empfangenen Eingabe und der Werte der Parameter des Modells erzeugt; und wobei die erste maschinelle Lernaufgabe und die zweite maschinelle Lernaufgabe unterschiedliche überwachte Lernaufgaben sind.
  24. Computerspeichermedium nach Anspruch 23, wobei die überwachten Lernaufgaben Klassifikationsaufgaben umfassen.
  25. Computerspeichermedium nach einem der Ansprüche 23 bis 24, wobei die überwachten Lernaufgaben unterschiedliche Bildverarbeitungs- oder optische Zeichenerkennungsaufgaben umfassen.
  26. Computerspeichermedium nach einem der Ansprüche 23 bis 24, wobei die überwachten Lernaufgaben unterschiedliche Spracherkennungsaufgaben umfassen.
  27. Computerspeichermedium nach Anspruch 26, wobei die Spracherkennungsaufgaben Aufgaben zur Erkennung von Aktivierungswörtern einschließen, worin jede Aufgabe die Erkennung eines anderen Aktivierungsworts oder einer anderen Sequenz von Aktivierungswörtern erfordert.
  28. Computerspeichermedium nach einem der Ansprüche 23 bis 24, wobei die überwachten Lernaufgaben unterschiedliche Aufgaben zur Verarbeitung natürlicher Sprache umfassen.
  29. Computerspeichermedium nach einem der Ansprüche 23 bis 24, wobei die überwachten Lernaufgaben eine Kombination von zwei oder mehr Aufgaben umfassen, die aus der Gruppe ausgewählt sind, bestehend aus Folgendem: Bildverarbeitungsaufgaben, Spracherkennungsaufgaben, Aufgaben zur Verarbeitung natürlicher Sprache und Aufgaben zur optischen Zeichenerkennung.
  30. Computerspeichermedium nach einem der Ansprüche 23 bis 24, wobei die überwachten Lernaufgaben Bildverarbeitungsaufgaben und Aufgaben zur Verarbeitung natürlicher Sprache umfassen.
  31. Computerspeichermedium nach einem der Ansprüche 23 bis 24, wobei die überwachten Lernaufgaben Bildverarbeitungsaufgaben und Spracherkennungsverarbeitungsaufgaben umfassen.
  32. Computerspeichermedium nach einem der Ansprüche 23 bis 24, wobei die überwachten Lernaufgaben Spracherkennungsverarbeitungsaufgaben und Aufgaben zur Verarbeitung natürlicher Sprache umfassen.
  33. Computerspeichermedium nach einem der Ansprüche 23 bis 32, wobei die Anweisungen, die so konfiguriert sind, dass sie den einen oder die mehreren Computer steuern, um das maschinelle Lernmodell auf die Trainingsdaten zu trainieren, Anweisungen zu Folgendem umfassen: Anpassen der ersten Werte der Parameter, um eine Zielfunktion zu optimieren, die Folgendes einschließt: (i) einen ersten Term, der eine Leistung des maschinellen Lernmodells bei der zweiten maschinellen Lernaufgabe misst, und (ii) einen zweiten Term, der eine Strafe für Parameterwerte auferlegt, die von den ersten Parameterwerten abweichen, wobei der zweite Term Abweichungen von den ersten Werten stärker für Parameter bestraft, die beim Erreichen einer akzeptablen Leistung bei der ersten maschinellen Lernaufgabe wichtiger waren als für Parameter, die beim Erreichen einer akzeptablen Leistung bei der ersten maschinellen Lernaufgabe weniger wichtig waren.
  34. Computerspeichermedium nach Anspruch 33, wobei die Anweisungen, die so konfiguriert sind, dass sie den einen oder die mehreren Computer steuern, um das maschinelle Lernmodell auf die Trainingsdaten zu trainieren, Anweisungen zu Folgendem umfassen, für jedes Trainingsbeispiel in den Trainingsdaten: Verarbeiten des Trainingsbeispiels unter Verwendung des maschinellen Lernmodells in Übereinstimmung mit aktuellen Werten von Parametern des maschinellen Lernmodells, um eine Modellausgabe zu bestimmen; Bestimmen eines Gradienten der Zielfunktion unter Verwendung der Modellausgabe, einer Zielausgabe für das Trainingsbeispiel, der aktuellen Werte der Parameter des maschinellen Lernmodells und der ersten Werte der Parameter des maschinellen Lernmodells; und Anpassen der aktuellen Werte der Parameter unter Verwendung des Gradienten, um die Zielfunktion zu optimieren.
  35. Computerspeichermedium nach einem der Ansprüche 33 oder 34, wobei der zweite Term für jeden der Vielzahl von Parametern von einem Produkt aus dem jeweiligen Maß der Wichtigkeit des Parameters und einem Unterschied zwischen dem aktuellen Wert des Parameters und dem ersten Wert des Parameters abhängt.
  36. Computerspeichermedium nach einem der Ansprüche 23 bis 35, wobei die Anweisungen, die so konfiguriert sind, dass sie den einen oder die mehreren Computer so steuern, dass sie für jeden der Vielzahl von Parametern ein jeweiliges Maß einer Wichtigkeit des Parameters für das maschinelle Lernmodell, das eine akzeptable Leistung bei der ersten maschinellen Lernaufgabe erreicht, bestimmen, Anweisungen zu Folgendem umfassen: Bestimmen, für jeden der Vielzahl von Parametern, einer Annäherung an eine Wahrscheinlichkeit, dass ein aktueller Wert des Parameters ein korrekter Wert des Parameters ist, wenn erste Trainingsdaten verwendet werden, um das maschinelle Lernmodell auf die erste Aufgabe zu trainieren.
  37. Computerspeichermedium nach einem der Ansprüche 23 bis 36, wobei die Anweisungen, die so konfiguriert sind, dass sie den einen oder die mehreren Computer so steuern, dass sie für jeden der Vielzahl von Parametern ein jeweiliges Maß einer Wichtigkeit des Parameters für das maschinelle Lernmodell, das eine akzeptable Leistung bei der ersten maschinellen Lernaufgabe erreicht, bestimmen, Anweisungen zu Folgendem umfassen: Bestimmen einer Fisher-Informationsmatrix (FIM) der Vielzahl von Parametern des maschinellen Lernmodells in Bezug auf die erste maschinelle Lernaufgabe, wobei für jeden der Vielzahl von Parametern das jeweilige Maß der Wichtigkeit des Parameters ein entsprechender Wert auf einer Diagonale der FIM ist.
  38. Computerspeichermedium nach einem der Ansprüche 23 bis 37, ferner umfassend Anweisungen zu Folgendem: nach dem Trainieren des maschinellen Lernmodells auf die zweite maschinelle Lernaufgabe, zum Bestimmen von zweiten Werten der Parameter des maschinellen Lemmodells: Erzielen dritter Trainingsdaten zum Trainieren des maschinellen Lernmodells auf eine dritte, unterschiedliche maschinelle Lernaufgabe; und Trainieren des maschinellen Lernmodells auf die dritte maschinelle Lernaufgabe durch Trainieren des maschinellen Lernmodells auf die dritten Trainingsdaten, um die zweiten Werte der Parameter so anzupassen, dass das maschinelle Lernmodell ein akzeptables Leistungsniveau bei der dritten maschinellen Lernaufgabe erreicht, während es gleichzeitig ein akzeptables Leistungsniveau bei der ersten maschinellen Lernaufgabe und der zweiten maschinellen Lernaufgabe beibehält, wobei, während des Trainings des maschinellen Lernmodells auf die dritte maschinelle Lernaufgabe, Werte von Parametern, die bei dem maschinellen Lernmodell, das bei der ersten maschinellen Lernaufgabe und der zweiten maschinellen Lernaufgabe eine akzeptable Leistung erreicht, wichtiger waren, stärker darauf beschränkt werden, nicht von den zweiten Werten abzuweichen, als Werte von Parametern, die bei dem maschinellen Lernmodell, das bei der ersten maschinellen Lernaufgabe und der zweiten maschinellen Lernaufgabe eine akzeptable Leistung erreicht, weniger wichtig waren.
  39. Computerspeichermedium nach Anspruch 38, ferner umfassend Anweisungen zu Folgendem: Bestimmen, für jeden der Vielzahl von Parametern, eines jeweiligen Maßes einer Wichtigkeit des Parameters für das maschinelle Lernmodell, das eine akzeptable Leistung bei der zweiten maschinellen Lernaufgabe erreicht; und wobei die Anweisungen, die konfiguriert sind, um den einen oder die mehreren Computer zu steuern, um das maschinelle Lernmodell auf die dritten Trainingsdaten zu trainieren, Anweisungen einschließen, um die zweiten Werte der Parameter anzupassen, um eine Zielfunktion zu optimieren, die Folgendes einschließt: (i) einen ersten Term, der eine Leistung des maschinellen Lernmodells bei der dritten maschinellen Lernaufgabe misst, und (ii) einen zweiten Term, der eine Strafe für Parameterwerte auferlegt, die von den ersten Parameterwerten abweichen, wobei der zweite Term Abweichungen von den ersten Werten stärker für Parameter bestraft, die für das Erreichen einer akzeptablen Leistung bei der ersten maschinellen Lernaufgabe wichtiger waren als für Parameter, die für das Erreichen einer akzeptablen Leistung bei der ersten maschinellen Lernaufgabe weniger wichtig waren. (iii) einen dritten Term, der eine Strafe für Parameterwerte auferlegt, die von den zweiten Parameterwerten abweichen, wobei der dritte Term Abweichungen von den zweiten Werten stärker für Parameter bestraft, die für das Erreichen einer akzeptablen Leistung bei der zweiten maschinellen Lernaufgabe wichtiger waren als für Parameter, die für das Erreichen einer akzeptablen Leistung bei der zweiten maschinellen Lernaufgabe weniger wichtig waren.
  40. Computerspeichermedium nach Anspruch 39, wobei der zweite Term für jeden der Vielzahl von Parametern von einem Produkt aus (i) dem jeweiligen Maß der Wichtigkeit des Parameters für das maschinelle Lernmodell, das eine akzeptable Leistung bei der ersten maschinellen Lernaufgabe erreicht, und (ii) einem Unterschied zwischen dem aktuellen Wert des Parameters und dem ersten Wert des Parameters abhängt.
  41. Computerspeichermedium nach Anspruch 39, wobei der dritte Term für jeden der Vielzahl von Parametern von einem Produkt aus (i) dem jeweiligen Maß der Wichtigkeit des Parameters für das maschinelle Lernmodell, das eine akzeptable Leistung bei der zweiten maschinellen Lernaufgabe erreicht, und (ii) einem Unterschied zwischen dem aktuellen Wert des Parameters und dem zweiten Wert des Parameters abhängt.
  42. Computerspeichermedium nach einem der Ansprüche 33 bis 37 in Abhängigkeit von Anspruch 33, ferner umfassend Anweisungen zum Erkennen, wenn von einer maschinellen Lernaufgabe zu einer anderen gewechselt wird, und zum Aktualisieren des zweiten Terms der Zielfunktion als Reaktion darauf, wobei die Anweisungen zum Erkennen, wenn von einer maschinellen Lernaufgabe zu einer anderen gewechselt wird, Anweisungen zum Ableiten, welche Aufgabe durchgeführt wird, aus einem oder mehreren Modellen, umfassen.
  43. Computerspeichermedium, das mit Anweisungen codiert ist, die, wenn sie von einem oder mehreren Computern ausgeführt werden, den einen oder die mehreren Computer veranlassen, die Vorgänge zum Implementieren eines computerimplementierten Verfahrens zum Trainieren eines maschinellen Lernmodells, das eine Vielzahl von Parametern aufweist, durchzuführen, wobei das maschinelle Lernmodell auf eine erste maschinelle Lernaufgabe trainiert worden ist, um erste Werte der Parameter des maschinellen Lernmodells zu bestimmen, und wobei das Verfahren Folgendes umfasst: Bestimmen, für jeden der Vielzahl von Parametern, eines jeweiligen Maßes einer Wichtigkeit des Parameters für das maschinelle Lernmodell, das eine akzeptable Leistung bei der ersten maschinellen Lernaufgabe erreicht; Erzielen von Trainingsdaten zum Trainieren des maschinellen Lernmodells auf eine zweite, unterschiedliche maschinelle Lernaufgabe; und Trainieren des maschinellen Lernmodells auf die zweite maschinelle Lernaufgabe durch Trainieren des maschinellen Lernmodells auf die Trainingsdaten, um die ersten Werte der Parameter so anzupassen, dass das maschinelle Lernmodell ein akzeptables Leistungsniveau bei der zweiten maschinellen Lernaufgabe erreicht, während es gleichzeitig ein akzeptables Leistungsniveau bei der ersten maschinellen Lernaufgabe beibehält, wobei, während des Trainings des maschinellen Lernmodells auf die zweite maschinelle Lernaufgabe, Werte von Parametern, die bei dem maschinellen Lernmodell, das eine akzeptable Leistung bei der ersten maschinellen Lernaufgabe erreicht, wichtiger waren, stärker darauf beschränkt werden, nicht von den ersten Werten abzuweichen, als Werte von Parametern, die bei dem maschinellen Lernmodell, das eine akzeptable Leistung bei der ersten maschinellen Lernaufgabe erreicht, weniger wichtig waren. wobei das maschinelle Lernmodell ein tiefes neuronales Netzmodell umfasst, das eine Eingabeschicht und eine oder mehrere versteckte Schichten einschließt, die jeweils eine nichtlineare Transformation auf eine empfangene Eingabe anwenden, um eine Ausgabe zu erzeugen, wobei das maschinelle Lernmodell die Ausgabe auf der Grundlage der empfangenen Eingabe und der Werte der Parameter des Modells erzeugt; und wobei die erste und die zweite maschinelle Lernaufgabe jeweils eine Verstärkungslernaufgabe umfassen, bei der ein Roboteragent mit einer realen Umgebung interagiert, um die Aufgabe durchzuführen.
  44. Computerspeichermedium nach Anspruch 43, wobei der Roboteragent eine statische oder sich bewegende Maschine oder ein statisches oder sich bewegendes Fahrzeug umfasst.
  45. Computerspeichermedium nach Anspruch 43 oder 44, wobei die Anweisungen, die so konfiguriert sind, dass sie den einen oder die mehreren Computer steuern, um das maschinelle Lernmodell auf die Trainingsdaten zu trainieren, Anweisungen zu Folgendem einschließen, für jedes Trainingsbeispiel in den Trainingsdaten: Verarbeiten des Trainingsbeispiels unter Verwendung des maschinellen Lernmodells in Übereinstimmung mit aktuellen Werten von Parametern des maschinellen Lernmodells, um eine Modellausgabe zu bestimmen; Bestimmen eines Gradienten einer Zielfunktion unter Verwendung der Modellausgabe, einer Zielausgabe für das Trainingsbeispiel, der aktuellen Werte der Parameter des maschinellen Lernmodells und der ersten Werte der Parameter des maschinellen Lernmodells; und Anpassen der aktuellen Werte der Parameter unter Verwendung des Gradienten zum Optimieren der Zielfunktion; und wobei die Zielfunktion einen diskontierten Belohnungsterm einschließt, der von einer erwarteten Belohnung seitens des Roboteragenten abhängt, der eine Aktion in einem Zustand vornimmt.
DE202017007641.1U 2016-07-18 2017-07-18 Training von maschinellen Lernmodellen auf mehrere maschinelle Lernaufgaben Active DE202017007641U1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201662363652P 2016-07-18 2016-07-18
US62/363,652 2016-07-18

Publications (1)

Publication Number Publication Date
DE202017007641U1 true DE202017007641U1 (de) 2024-01-24

Family

ID=59416834

Family Applications (1)

Application Number Title Priority Date Filing Date
DE202017007641.1U Active DE202017007641U1 (de) 2016-07-18 2017-07-18 Training von maschinellen Lernmodellen auf mehrere maschinelle Lernaufgaben

Country Status (7)

Country Link
US (1) US20190236482A1 (de)
EP (2) EP4231197B1 (de)
JP (1) JP6824382B2 (de)
KR (1) KR102242516B1 (de)
CN (1) CN109690576A (de)
DE (1) DE202017007641U1 (de)
WO (1) WO2018017546A1 (de)

Families Citing this family (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180314805A1 (en) * 2017-04-26 2018-11-01 International Business Machines Corporation Constraint-aware health management
US11604997B2 (en) * 2017-06-09 2023-03-14 Deepmind Technologies Limited Training action selection neural networks using leave-one-out-updates
US11741354B2 (en) * 2017-08-25 2023-08-29 Ford Global Technologies, Llc Shared processing with deep neural networks
US10573295B2 (en) * 2017-10-27 2020-02-25 Salesforce.Com, Inc. End-to-end speech recognition with policy learning
US11562287B2 (en) 2017-10-27 2023-01-24 Salesforce.Com, Inc. Hierarchical and interpretable skill acquisition in multi-task reinforcement learning
US20210117786A1 (en) * 2018-04-18 2021-04-22 Deepmind Technologies Limited Neural networks for scalable continual learning in domains with sequentially learned tasks
US11544617B2 (en) 2018-04-23 2023-01-03 At&T Intellectual Property I, L.P. Network-based machine learning microservice platform
US10565475B2 (en) * 2018-04-24 2020-02-18 Accenture Global Solutions Limited Generating a machine learning model for objects based on augmenting the objects with physical properties
US11887003B1 (en) * 2018-05-04 2024-01-30 Sunil Keshav Bopardikar Identifying contributing training datasets for outputs of machine learning models
US11645509B2 (en) 2018-09-27 2023-05-09 Salesforce.Com, Inc. Continual neural network learning via explicit structure learning
US11922323B2 (en) * 2019-01-17 2024-03-05 Salesforce, Inc. Meta-reinforcement learning gradient estimation with variance reduction
KR20200100302A (ko) * 2019-02-18 2020-08-26 삼성전자주식회사 신경망 기반의 데이터 처리 방법, 신경망 트레이닝 방법 및 그 장치들
CN111985637A (zh) * 2019-05-21 2020-11-24 苹果公司 具有多个处理任务的条件执行的机器学习模型
CN112054863B (zh) * 2019-06-06 2021-12-21 华为技术有限公司 一种通信方法及装置
KR20210010284A (ko) 2019-07-18 2021-01-27 삼성전자주식회사 인공지능 모델의 개인화 방법 및 장치
CN113811895A (zh) * 2019-07-18 2021-12-17 三星电子株式会社 用于人工智能模型个性化的方法和装置
US11823058B2 (en) * 2019-09-20 2023-11-21 Google Llc Data valuation using reinforcement learning
US11531831B2 (en) * 2019-09-30 2022-12-20 Meta Platforms, Inc. Managing machine learning features
US20210150345A1 (en) * 2019-11-14 2021-05-20 Qualcomm Incorporated Conditional Computation For Continual Learning
US11475239B2 (en) * 2019-11-21 2022-10-18 Paypal, Inc. Solution to end-to-end feature engineering automation
CN112836714B (zh) * 2019-11-22 2024-05-10 杭州海康威视数字技术股份有限公司 一种智能模型的训练方法及装置
CN111079938B (zh) * 2019-11-28 2020-11-03 百度在线网络技术(北京)有限公司 问答阅读理解模型获取方法、装置、电子设备及存储介质
US11562203B2 (en) 2019-12-30 2023-01-24 Servicenow Canada Inc. Method of and server for training a machine learning algorithm for estimating uncertainty of a sequence of models
WO2021137100A1 (en) * 2019-12-30 2021-07-08 Element Ai Inc. Method of and server for training a machine learning algorithm for estimating uncertainty of a sequence of models
CN113132765A (zh) * 2020-01-16 2021-07-16 北京达佳互联信息技术有限公司 码率决策模型训练方法、装置、电子设备及存储介质
KR20210096342A (ko) 2020-01-28 2021-08-05 주식회사 딥바이오 뉴런-레벨 가소성 제어를 통해 파국적인 망각을 극복하기 위한 방법 및 이를 수행하는 컴퓨팅 시스템
US11631030B2 (en) * 2020-02-11 2023-04-18 International Business Machines Corporation Learning with moment estimation using different time constants
CN111814462B (zh) * 2020-07-09 2021-02-09 四川大学 基于动态正则化的高效终身关系提取方法及系统
CN112001181B (zh) * 2020-07-17 2024-02-13 北京百度网讯科技有限公司 多语言语义表示模型的训练方法、装置、设备及存储介质
US11694038B2 (en) * 2020-09-23 2023-07-04 Capital One Services, Llc Systems and methods for generating dynamic conversational responses through aggregated outputs of machine learning models
US20220114439A1 (en) * 2020-10-08 2022-04-14 Here Global B.V. Method, apparatus, and system for generating asynchronous learning rules and/architectures
CN112698933A (zh) * 2021-03-24 2021-04-23 中国科学院自动化研究所 在多任务数据流中持续学习的方法及装置
WO2023199479A1 (ja) * 2022-04-14 2023-10-19 日本電信電話株式会社 学習装置、学習方法、および、学習プログラム
KR102510756B1 (ko) * 2022-09-07 2023-03-16 서울대학교병원 수술 중 또는 수술 후 뇌졸중 예측 장치 및 방법
WO2024071845A1 (ko) * 2022-09-28 2024-04-04 주식회사 메디컬에이아이 의료용 인공지능 모델의 구축 방법, 프로그램 및 장치
CN115952851A (zh) * 2022-11-04 2023-04-11 电子科技大学 一种基于信息丢失机制的自监督连续学习方法

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1173405A (ja) * 1997-08-27 1999-03-16 Nippon Telegr & Teleph Corp <Ntt> 神経回路網型逐次学習方法、神経回路網型逐次学習装置および神経回路網型逐次学習プログラムを記録した記録媒体
US7444310B2 (en) 2002-04-19 2008-10-28 Computer Associates Think, Inc. Automatic model maintenance through local nets
US9146546B2 (en) * 2012-06-04 2015-09-29 Brain Corporation Systems and apparatus for implementing task-specific learning using spiking neurons
US9031897B2 (en) * 2012-03-23 2015-05-12 Nuance Communications, Inc. Techniques for evaluation, building and/or retraining of a classification model
US9104961B2 (en) * 2012-10-08 2015-08-11 Microsoft Technology Licensing, Llc Modeling a data generating process using dyadic Bayesian models
US10289962B2 (en) * 2014-06-06 2019-05-14 Google Llc Training distilled machine learning models
US10002329B2 (en) * 2014-09-26 2018-06-19 Facebook, Inc. Selection and modification of features used by one or more machine learned models used by an online system
US20170132528A1 (en) * 2015-11-06 2017-05-11 Microsoft Technology Licensing, Llc Joint model training

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
French, „Catastrophic forgetting in connectionist networks", Trends In Cognitive Sciences, Bd. 3, Nr. 4, 1. April 1999, Seiten 128-135
Li und Hoiem, „Learning Without Forgetting", Network and Parallel Computing, 29. Juni 2016, Springer, Bd. 9908, Seiten 614-629

Also Published As

Publication number Publication date
KR20190028531A (ko) 2019-03-18
US20190236482A1 (en) 2019-08-01
EP3485432B1 (de) 2023-05-31
CN109690576A (zh) 2019-04-26
JP2019525329A (ja) 2019-09-05
WO2018017546A1 (en) 2018-01-25
EP4231197A1 (de) 2023-08-23
EP4231197B1 (de) 2024-04-24
EP3485432A1 (de) 2019-05-22
JP6824382B2 (ja) 2021-02-03
KR102242516B1 (ko) 2021-04-20

Similar Documents

Publication Publication Date Title
DE202017007641U1 (de) Training von maschinellen Lernmodellen auf mehrere maschinelle Lernaufgaben
DE202017106132U1 (de) Neuronale Netze zum Auswählen von durch einen Roboteragenten auszuführenden Aktionen
DE102017125256A1 (de) Suche nach einer neuronalen Architektur
DE202017106697U1 (de) Umgebungsnavigation unter Verwendung von Verstärkungslernen
DE112018004223T5 (de) Trainieren künstlicher neuronaler Netze
DE202019106182U1 (de) Neuronenarchitektursuche mit faktorisiertem hierarchischem Suchraum
DE202016008253U1 (de) Komprimierte rekurrente neuronale Netzwerkmodelle
DE102018009243A1 (de) Abstrahierendes Zusammenfassen langer Dokumente unter Nutzung des Deep-Learning strukturierter Dokumente
DE202018101330U1 (de) Transportieren von Matrizen neuronaler Netze in Hardware
DE112018005227T5 (de) Merkmalsextraktion mithilfe von multi-task-lernen
DE112020005610T5 (de) Identifizieren von optimalen gewichtungen zum verbessern einervorhersagegenauigkeit bei methoden für maschinelles lernen
DE112016003350T5 (de) Kontinuierliche steuerung mit tiefem bestärkendem lernen
DE112020000584T5 (de) Verfahren für unüberwachte bild-zu-bild-übersetzung mit wenigen aufnahmen
DE112018002822T5 (de) Klassifizieren neuronaler netze
DE102019122935A1 (de) Verfahren und vorrichtungen zum zuweisen einer arbeitslast an einen beschleuniger unter verwendung von maschinenlernen
DE102012009502A1 (de) Verfahren zum Trainieren eines künstlichen neuronalen Netzes
DE112018005205T5 (de) Komprimierung von vollständig verbundenen / wiederkehrenden Schichten von einem oder mehreren tiefen Netzen durch Durchsetzen von räumlicher Lokalität für Gewichtsmatrizen und erwirken von Frequenzkomprimierung
DE112019005048T5 (de) Hyperparameteroptimierungsverfahren, -vorrichtung und -programm
DE102016222814A1 (de) Verfahren zum berechnen einer ausgabe eines neuronalen netzes
DE102021109382A1 (de) System und verfahren eines monotonen neuronalen operatornetzes technisches gebiet
DE112020003050T5 (de) Fehlerkompensation in analogen neuronalen netzen
DE102018127802A1 (de) Hybrider klassifikator eines gepulsten neuronalen netzwerks und einer support-vektor-maschine
WO2021008836A1 (de) Vorrichtung und computerimplementiertes verfahren für die verarbeitung digitaler sensordaten und trainingsverfahren dafür
DE102021107510A1 (de) Training eines neuronalen netzwerks unter speicherbeschränkung
DE112020002547T5 (de) Rausch- und signalverwaltung für rpu-array

Legal Events

Date Code Title Description
R207 Utility model specification