DE102018202497A1 - Technologien für optimiertes Maschinenlerntraining - Google Patents

Technologien für optimiertes Maschinenlerntraining Download PDF

Info

Publication number
DE102018202497A1
DE102018202497A1 DE102018202497.9A DE102018202497A DE102018202497A1 DE 102018202497 A1 DE102018202497 A1 DE 102018202497A1 DE 102018202497 A DE102018202497 A DE 102018202497A DE 102018202497 A1 DE102018202497 A1 DE 102018202497A1
Authority
DE
Germany
Prior art keywords
training
neural network
computing device
configuration parameters
network
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.)
Pending
Application number
DE102018202497.9A
Other languages
English (en)
Inventor
Lev Faivishevsky
Amitai Armon
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.)
Intel Corp
Original Assignee
Intel Corp
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 Intel Corp filed Critical Intel Corp
Publication of DE102018202497A1 publication Critical patent/DE102018202497A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • 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/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/045Combinations of networks

Landscapes

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

Abstract

Technologien zum Optimieren von Maschinenlerntraining beinhalten eine Rechenvorrichtung zum Trainieren eines Maschinenlernnetzes mit einem Trainingsalgorithmus, der mit Konfigurationsparametern konfiguriert ist. Die Rechenvorrichtung kann viele Trainingsinstanzen parallel durchführen. Die Rechenvorrichtung nimmt aus dem Training eine Zeitreihe von teilgenauen Werten auf. Jeder teilgenaue Wert gibt eine Maschinenlernnetzgenauigkeit bei einer assoziierten Trainingsiteration an. Die Rechenvorrichtung gibt die Konfigurationsparameter in ein vorwärtsgekoppeltes neuronales Netz ein zum Erzeugen einer Repräsentation und gibt die Repräsentation in ein rückgekoppeltes neuronales Netz ein. Die Rechenvorrichtung trainiert das vorwärtsgekoppelte neuronale Netz und das rückgekoppelte neuronale Netz gegen die teilgenauen Werte. Die Rechenvorrichtung optimiert das vorwärtsgekoppelte neuronale Netz und das rückgekoppelte neuronale Netz zum Bestimmen optimierter Konfigurationsparameter. Die optimierten Konfigurationsparameter können die Trainingszeit zum Erreichen eines vorbestimmten Genauigkeitsniveaus minimieren. Andere Ausführungsformen werden beschrieben und beansprucht.

Description

  • HINTERGRUND
  • Moderne Maschinenlernalgorithmen, wie etwa Faltungs-Neuronale-Netze oder andere tiefe Lernalgorithmen erfordern typischerweise involvierte Trainingsprozesse, welche berechnungsmäßig hart zu fassen sein können. Maschinenlerntraining kann mit einer Anzahl von Konfigurationsparametern abgestimmt werden, um optimale Genauigkeit der unterliegenden Maschinenlernalgorithmen zu erreichen. Abstimmen der Konfigurationsparameter erfordert typischerweise wiederholtes Ausführen des gesamten Trainingsprozesses und ist somit berechnungsmäßig teuer.
  • Figurenliste
  • Die hierin beschriebenen Konzepte sind in den beiliegenden Figuren lediglich beispielhaft und nicht beschränkend veranschaulicht. Aus Gründen der Einfachheit und Klarheit der Darstellung sind Elemente, die in den Figuren veranschaulicht werden, nicht notwendigerweise maßstabsgetreu gezeichnet. Wo es als angebracht angesehen wurde, werden Bezugszeichen unter den Figuren wiederholt, um entsprechende oder analoge Elemente zu kennzeichnen.
    • 1 ist ein vereinfachtes Blockdiagramm von mindestens einer Ausführungsform einer Rechenvorrichtung für optimiertes Maschinenlerntraining;
    • 2 ist ein vereinfachtes Blockdiagramm von mindestens einer Ausführungsform einer Umgebung der Rechenvorrichtung von 1;
    • 3 ist ein vereinfachtes Blockdiagramm von mindestens einer Ausführungsform einer Neuronalnetztopologie, die durch die Rechenvorrichtung der 1 und 2 erstellt werden kann; und
    • 4 ist ein vereinfachtes Flussdiagramm von mindestens einer Ausführungsform eines Verfahrens für optimiertes Maschinenlerntraining, das durch die Rechenvorrichtung der 1 und 2 ausgeführt werden kann.
  • AUSFÜHRLICHE BESCHREIBUNG DER ZEICHNUNGEN
  • Obwohl die Konzepte der vorliegenden Offenbarung für vielfältige Modifikationen und alternative Formen geeignet sind, wurden spezifische Ausführungsformen davon in den Zeichnungen beispielhaft gezeigt und werden hier ausführlich beschrieben werden. Es versteht sich allerdings, dass es nicht beabsichtigt ist, die Konzepte der vorliegenden Offenbarung auf die bestimmten offenbarten Formen zu beschränken; eher besteht im Gegenteil die Absicht, alle Modifikationen, Äquivalente und Alternativen, die konsistent zur vorliegenden Offenbarung und den angehängten Ansprüchen sind, abzudecken.
  • Bezugnahmen in der Beschreibung auf „eine Ausführungsform“, „Ausführungsform“, „eine veranschaulichende Ausführungsform“ usw. geben an, dass die beschriebene Ausführungsform ein besonderes Merkmal, eine besondere Struktur oder ein besonderes Charakteristikum beinhalten kann, wobei allerdings möglicherweise jede Ausführungsform dieses besondere Merkmal, diese besondere Struktur oder dieses besondere Charakteristikum enthält oder nicht notwendigerweise enthält. Darüber hinaus beziehen sich derartige Phrasen nicht notwendigerweise auf dieselbe Ausführungsform. Wenn ein besonderes Merkmal, eine besondere Struktur oder ein besonderes Charakteristikum in Verbindung mit einer Ausführungsform beschrieben wird, wird außerdem unterstellt, dass es im Kenntnisbereich einer Fachperson liegt, ein derartiges Merkmal, eine derartige Struktur oder ein derartiges Charakteristikum in Verbindung mit anderen Ausführungsformen zustande zu bringen, ob es nun explizit beschrieben wurde oder nicht. Zusätzlich versteht sich, dass Einträge in einer Liste der Form „mindestens eines von A, B und C“ Folgendes bedeuten können: (A); (B); (C); (A und B); (A und C); (B und C); oder (A, B und C). Gleichermaßen können Einträge in einer Liste der Form „mindestens eines von A, B oder C“ Folgendes bedeuten: (A); (B); (C); (A und B); (A und C); (B und C); oder (A, B und C).
  • Die offenbarten Ausführungsformen können in manchen Fällen in Hardware, Firmware, Software oder einer beliebigen Kombination davon implementiert sein. Die offenbarten Ausführungsformen können ebenfalls als Anweisungen implementiert sein, die von einem vergänglichen oder nichtvergänglichen maschinenlesbaren (z. B. computerlesbaren) Ablagemedium getragen oder in diesem gespeichert werden, das von einem oder mehreren Prozessoren ausgelesen und ausgeführt werden kann. Ein maschinenlesbares Ablagemedium kann als eine beliebige Ablagevorrichtung, ein Ablagemechanismus oder eine andere physische Struktur zum Speichern oder Übertragen von Informationen in einer von einer Maschine lesbaren Form (z. B. einem flüchtigen oder nichtflüchtigen Speicher, einer Medien-Disc oder einer anderen Medien-Vorrichtung) realisiert sein.
  • In den Zeichnungen sind gewisse strukturelle oder methodische Merkmale möglicherweise in speziellen Anordnungen und/oder Abfolgen gezeigt. Allerdings sollte zur Kenntnis genommen werden, dass derartige spezielle Anordnungen und/oder Abfolgen möglicherweise nicht nötig sind. Vielmehr sind in einigen Ausführungsformen derartige Merkmale möglicherweise auf andere Weise und/oder in anderer Reihenfolge angeordnet als in den veranschaulichenden Figuren gezeigt. Zusätzlich soll das Einschließen eines strukturellen oder methodischen Merkmals in einer speziellen Figur nicht bedeuten, dass ein derartiges Merkmal in allen Ausführungsformen erforderlich ist und in gewissen Ausführungsformen möglicherweise nicht enthalten oder mit anderen Merkmalen kombiniert sein kann.
  • Beziehen wir uns nun auf 1, wo eine veranschaulichende Rechenvorrichtung 100 für optimiertes Maschinenlerntraining gezeigt ist. Wie unten beschrieben wird, trainiert die Rechenvorrichtung 100 im Gebrauch ein Maschinenlernnetz unter Verwendung eines Algorithmus, der mit einer Menge von einem oder mehreren Konfigurationsparametern konfiguriert ist. Die Rechenvorrichtung 100 nimmt während des Trainings eine Zeitreihe von teilgenauen Werten auf. Die Rechenvorrichtung 100 kann viele Instanzen des Trainingsalgorithmus parallel ausführen, wobei jede Instanz mit einer anderen Menge von Konfigurationsparametern konfiguriert ist. Die Konfigurationsparameter werden in ein Modell eingegeben, das ein tiefes neuronales Netz und ein rückgekoppeltes neuronales Netz beinhaltet, und das Modell wird gegen die aufgenommene Zeitreihe von teilgenauen Werten trainiert. Nach dem Training kann das Modell optimiert werden zum Bestimmen einer Menge von optimierten Konfigurationsparametern, die die zum Erreichen eines vorbestimmten Genauigkeitsniveaus erforderliche Trainingszeit minimieren. Die optimierten Konfigurationsparameter können zum Trainieren des Maschinenlernmodells verwendet werden. Durch Modellieren des Trainingsverhaltens des Maschinenlernnetzes und Optimierens des Modellverwendens kann die Rechenvorrichtung 100 die Trainingskonfigurationsparameter mit signifikant verringerter Berechnungskomplexität verbessern oder anderweitig abstimmen, im Vergleich zum Abstimmen der Konfigurationsparameter unter Verwendung des unterliegenden Maschinenlernalgorithmus. Beispielsweise erreichte eine potentielle Ausführungsform der Rechenvorrichtung 100 eine 10%-ige Trainingsverschnellerung für GoogLeNet unter Verwendung der ImageNet-Trainingsdatenbank, im Vergleich zu typischem Multimodaltraining, während eine äquivalente Genauigkeit beibehalten wurde. Zusätzlich kann die Rechenvorrichtung 100 das Trainingsverhalten des Maschinenlernalgorithmus mit hoher Genauigkeit modellieren. Beispielsweise modellierte eine potentielle Ausführungsform der Rechenvorrichtung 100 Genauigkeitszeitreihen für den AlexNet-Algorithmus mit einem RMSE-Fehler von 0,08. Zusätzlich kann die Rechenvorrichtung 100 in der Lage sein zum Ausnutzen von zunehmendem Parallelismus und zum Verbessern des Ausskalierens, im Vergleich zum herkömmlichen Konfigurationsparameterabstimmen.
  • Die Rechenvorrichtung 100 kann als eine beliebige Art von Vorrichtung realisiert sein, die fähig ist zu vorhersagbarer dynamischer Adresszuweisung und anderweitiger Durchführung der hier beschriebenen Funktionen. Beispielsweise kann die Rechenvorrichtung 100 unter anderem als ein Computer, ein Server, eine Workstation, ein Laptopcomputer, ein Tabletcomputer, ein Notebookcomputer, eine mobile Rechenvorrichtung, ein Smartphone, eine anziehbare Rechenvorrichtung, ein Multiprozessorsystem und/oder eine Unterhaltungselektronikvorrichtung realisiert sein. Wie in 1 gezeigt, beinhaltet die veranschaulichende Rechenvorrichtung 100 einen Prozessor 120, ein E/A-Subsystem 122, einen Speicher 124 und eine Datenablagevorrichtung 126. Zusätzlich können in manchen Ausführungsformen eine oder mehrere der veranschaulichenden Komponenten in einer anderen Komponente verbaut sein oder anderweitig einen Teil davon bilden. Zum Beispiel kann in manchen Ausführungsformen der Speicher 124, oder Teile davon, in dem Prozessor 120 verbaut sein.
  • Der Prozessor 120 kann als irgendein Prozessortyp realisiert sein, der dazu in der Lage ist, die hier beschriebenen Funktionen durchzuführen. Der Prozessor 120 kann zum Beispiel als ein oder mehrere Einzel- oder Multi-Kern-Prozessoren, als ein digitaler Signalprozessor, Mikrocontroller oder anderer Prozessor oder Verarbeitungs-/Steuerungsschaltung realisiert sein. Gleichermaßen kann der Speicher 124 als irgendein Typ flüchtigen oder nichtflüchtigen Speichers oder einer Datenablage, die in der Lage ist, die hier beschriebenen Funktionen durchzuführen, realisiert sein. Im Betrieb kann der Speicher 124 vielfältige Daten und Software, die während des Betriebs der Rechenvorrichtung 100 verwendet werden, wie etwa Betriebssysteme, Anwendungen, Programme, Bibliotheken und Treiber, speichern. Der Speicher 124 ist kommunizierend über das E/A-Subsystem 122 mit dem Prozessor 120 gekoppelt, das als Schaltungen und/oder Komponenten realisiert sein kann, um Eingabe-/Ausgabe-Operationen mit dem Prozessor 120, dem Speicher 124 und anderen Komponenten der Rechenvorrichtung 100 zu erleichtern. Das E/A-Subsystem 122 kann zum Beispiel als Speichersteuerungs-Hubs, Eingabe-/Ausgabesteuerungs-Hubs, Sensorhubs, Hostcontroller, Firmware-Vorrichtungen, Kommunikations-Verbindungen (d.h. Punkt-zu-Punkt-Verbindungen, Bus-Verbindungen, Drähte, Kabel, Lichtleiter, Spuren auf gedruckten Leiterplatten usw.) und/oder andere Komponenten und Subsysteme realisiert sein oder diese sonstwie beinhalten, um die Eingabe-/Ausgabe-Operationen zu erleichtern. Bei manchen Ausführungsformen kann das E/A-Subsystem 122 einen Teil eines Systems-auf-Chip (SoC) bilden und zusammen mit dem Prozessor 120, dem Speicher 124 und anderen Komponenten der Rechenvorrichtung 100 auf einem einzigen Integrierte-Schaltung-Chip verbaut sein.
  • Die Datenablagevorrichtung 126 kann als ein beliebiger Typ von Vorrichtung oder Vorrichtungen realisiert sein, der zum Kurz- oder Langfrist-Speichern von Daten ausgelegt ist, wie zum Beispiel Speichervorrichtungen und Schaltungen, Speicherkarten, Festplatten, Solid-State-Drives, nichtflüchtiger Flash-Speicher oder andere Datenablagevorrichtungen. Die Rechenvorrichtung 100 kann auch ein Kommunikationssubsystem 128 beinhalten, welches als eine beliebige Kommunikationsschaltung, -vorrichtung oder eine Ansammlung davon realisiert sein kann, die in der Lage ist, Kommunikation über ein (nicht gezeigtes) Computernetzwerk zwischen der Rechenvorrichtung 100 und anderen fernen Vorrichtungen zu ermöglichen. Das Kommunikationssubsystem 128 kann dafür ausgelegt sein, eine oder mehrere beliebige Kommunikationstechnologien (z. B. drahtgebundene oder drahtlose Kommunikation) und damit assoziierte Protokolle (z. B. Ethernet, Bluetooth®, Wi-Fi®, WiMAX, 3G, 4G LTE usw.) zu verwenden, um solche Kommunikation auszuüben.
  • Wie gezeigt kann die Rechenvorrichtung 100 ferner eine oder mehrere Peripherievorrichtungen 130 beinhalten. Die Peripherievorrichtungen 130 können eine beliebige Anzahl von zusätzlichen Eingabe-/Ausgabevorrichtungen, Schnittstellenvorrichtungen und/oder anderen Peripherievorrichtungen beinhalten. Beispielsweise können die Peripherievorrichtungen 130 bei manchen Ausführungsformen eine Anzeige, einen Touchscreen, Graphikschaltungen, eine Tastatur, eine Maus, ein Lautsprechersystem, ein Mikrofon, eine Netzwerkschnittstelle und/oder andere Eingabe/Ausgabevorrichtungen, Schnittstellenvorrichtungen und/oder Peripherievorrichtungen beinhalten.
  • Nunmehr mit Bezugnahme auf die 2 erstellt die Rechenvorrichtung 100 in einer veranschaulichenden Ausführungsform während des Betriebs eine Umgebung 200. Die veranschaulichende Umgebung 200 beinhaltet einen Netztrainer 202, einen Netzmodellierer 204, einen Modelltrainer 206 und einen Optimierer 208. Die verschiedenen Komponenten der Umgebung 200 können als Hardware, Software, Firmware oder als eine Kombination davon realisiert sein. Von daher können in manchen Ausführungsformen eine oder mehrere der Komponenten der Umgebung 200 als Schaltungsanordnungen oder eine Zusammenstellung von elektrischen Vorrichtungen (z. B. Netztrainerschaltungen 202, Netzmodelliererschaltungen 204, Modelltrainerschaltungen 206 und/oder Optimiererschaltungen 208) realisiert sein. Es versteht sich, dass in derartigen Ausführungsformen die Netztrainerschaltungen 202 und/oder die Netzmodelliererschaltungen 204 und/oder die Modelltrainerschaltungen 206 und/oder die Optimiererschaltungen 208 einen Teil des Prozessors 120, des E/A-Subsystems 122 und/oder anderer Komponenten der Rechenvorrichtung 100 bilden können. Zusätzlich können in manchen Ausführungsformen eine oder mehrere der veranschaulichenden Komponenten einen Teil einer anderen Komponente ausbilden und/oder eine oder mehrere der veranschaulichenden Komponenten können unabhängig voneinander sein.
  • Der Netztrainer 202 ist ausgelegt zum Trainieren eines Maschinenlernnetzes mit einem Trainingsalgorithmus. Das Maschinenlernnetz kann beispielsweise als ein Faltungs-Neuronales-Netz realisiert sein. Der Trainingsalgorithmus ist mit einem oder mehreren Konfigurationsparametern konfiguriert. Der Netztrainer 202 ist ferner ausgelegt zum Aufnehmen einer Zeitreihe teilgenauer Werte als Reaktion auf Trainieren des Maschinenlernnetzes. Jeder teilgenaue Wert gibt eine Maschinenlernnetzgenauigkeit bei einer assoziierten Trainingsiteration an. Der Netztrainer 202 kann ferner ausgelegt sein zum Trainieren des Maschinenlernnetzes mit mehreren parallelen Instanzen des Trainingsalgorithmus. Jede parallele Instanz des Trainingsalgorithmus ist mit einer anderen Menge von einem oder mehreren Konfigurationsparametern konfiguriert. Der Netztrainer 202 kann ferner ausgelegt sein zum Aufnehmen einer Zeitreihe von teilgenauen Werten für jede parallele Instanz des Trainingsalgorithmus. Bei manchen Ausführungsformen kann der Netztrainer 202 ferner ausgelegt sein zum parallelen Trainieren des Maschinenlernnetzes mit dem Trainingsalgorithmus durch eine Vielzahl von verteilten Rechenknoten. Der Trainingsalgorithmus von jedem Rechenknoten ist mit einer anderen Menge von einem oder mehreren Konfigurationsparametern konfiguriert.
  • Der Netzmodellierer 204 ist ausgelegt zum Eingeben des einen oder der mehreren Konfigurationsparameter in ein vorwärtsgekoppeltes neuronales Netz zum Erzeugen einer Repräsentation der Konfigurationsparameter. Das vorwärtsgekoppelte neuronale Netz kann als ein tiefes neuronales Netz realisiert sein, das mehrere vollständig verbundene Schichten beinhaltet. Der Netzmodellierer 204 ist ferner ausgelegt zum Eingeben der Repräsentation der Konfigurationsparameter in ein rückgekoppeltes neuronales Netz. Das rückgekoppelte neuronale Netz kann als ein Langzeit-Kurzzeit-Speichernetz realisiert sein. Der Modelltrainer 206 ist ausgelegt zum Trainieren des rückgekoppelten neuronalen Netzes und des vorwärtsgekoppelten neuronalen Netzes gegen die Zeitreihe von teilgenauen Werten.
  • Der Optimierer 208 ist ausgelegt zum Optimieren des rückgekoppelten neuronalen Netzes und des vorwärtsgekoppelten neuronalen Netzes, um einen oder mehrere optimierte Konfigurationsparameter zu bestimmen. Der Optimierer 208 optimiert das rückgekoppelte neuronale Netz und das vorwärtsgekoppelte neuronale Netz als Reaktion auf Training des rückgekoppelten neuronalen Netzes und des vorwärtsgekoppelten neuronalen Netzes. Optimieren des rückgekoppelten neuronalen Netzes und des vorwärtsgekoppelten neuronalen Netzes kann Bestimmen eines oder mehrerer optimierter Konfigurationsparameter zum Minimieren der Trainingszeit zum Erreichen eines vorbestimmten Genauigkeitsniveaus beinhalten. Bei manchen Ausführungsformen kann der Optimierer 208 ausgelegt sein zum Optimieren des rückgekoppelten neuronalen Netzes und des vorwärtsgekoppelten neuronalen Netzes mit einem BFGS-Algorithmus. Der Netztrainer 202 kann ferner ausgelegt sein zum Trainieren des Maschinenlernnetzes mit dem mit dem einen oder den mehreren optimierten Konfigurationsparametern konfigurierten Trainingsalgorithmus.
  • Mit Bezug auf 3 kann die Rechenvorrichtung 100 im Gebrauch eine wie in Diagramm 300 gezeigte neuronale Netztopologie erstellen. Wie gezeigt erstellt die Rechenvorrichtung 100 ein unterliegendes Maschinenlernnetz 302. Beispielsweise kann das Maschinenlernnetz 302 als ein tiefes Faltungs-Neuronales-Netz für Bildklassifikation realisiert sein, wie etwa AlexNet oder GoogLeNet, oder als ein anderer tiefer Lernalgorithmus. Wie gezeigt wird das Maschinenlernnetz 302 durch einen Trainingsalgorithmus 304 trainiert. Der Trainingsalgorithmus 304 kann mit mehreren Konfigurationsparametern {H1, H2, H3, ...} konfiguriert sein, die auch Hyperparameter genannt werden. Der Trainingsalgorithmus 304 führt eine Abfolge von Trainingsiterationen mit dem Maschinenlernnetz 302 durch und produziert eine assoziierte Abfolge von teilgenauen Werten {A1, A2, A3, ... , At}. Jeder teilgenaue Wert At entspricht einer Genauigkeit des Maschinenlernnetzes 302 bei einer Trainingsiteration t.
  • Wie gezeigt werden die Konfigurationsparameter {H} in ein Modell 306 eingegeben, welches ein tiefes neuronales Netz (DNN) 308 und ein rückgekoppeltes neuronales Netz (RNN) 310 beinhaltet. Das DNN 308 ist ein vorwärtsgekoppeltes neuronales Netz und ist veranschaulichend als ein tiefes neuronales Netz mit mehreren vollständig verbundenen (fully connected - FC) Schichten realisiert. Das RNN 310 ist veranschaulichend ein Langzeit-Kurzzeit-Speicher(LSTM)-RNN, welches zum Modellieren einer Abfolge von Werten verwendet werden kann. Wie gezeigt werden die Konfigurationsparameter {H} in das DNN 308 eingegeben, um eine Repräsentation zu erzeugen. Diese Repräsentation wird wiederum in das RNN 310 injiziert. Ein Trainingsalgorithmus 312 trainiert das Modell 306 gegen die Zeitreihen von teilgenauen Werten {At}. Nach dem Training produziert das RNN 310 eine modellierte Zeitreihe {At}*. Ein Optimierungsalgorithmus 314 kann das Modell 306 nach dem Training optimieren, um optimierte Konfigurationsparameter {H}* zu erzeugen. Wie gezeigt können die optimierten Konfigurationsparameter {H}* durch den Trainingsalgorithmus 304 verwendet werden zum Fortführen des Trainierens des Maschinenlernnetzes 302. Das Maschinenlernnetz 302 kann beispielsweise trainiert werden für Produktionsgebrauch oder kann trainiert werden zum Erzeugen zusätzlicher teilgenauer Werte {A1, A2, A3, ... , At} für zusätzliche Trainingsoptimierung.
  • Nehmen wir nun Bezug auf 4, wo die Rechenvorrichtung 100 im Gebrauch ein Verfahren 400 für optimiertes Maschinenlerntraining ausführen kann. Es versteht sich, dass die Operationen des Verfahrens 400 bei manchen Ausführungsformen durch eine oder mehrere Komponenten der Umgebung 200 der Rechenvorrichtung 100 durchgeführt werden können, wie in 2 gezeigt ist. Das Verfahren 400 beginnt in Block 402, in welchem die Rechenvorrichtung 100 mehrere Konfigurationsparameter {H1, H2, H3, ...} für den Trainingsalgorithmus 304 erzeugt. Der Trainingsalgorithmus 304 kann als ein beliebiger zum Training des Maschinenlernnetzes 302 verwendbarer Trainingsalgorithmus realisiert sein, wie etwa ein Gradientenabfall-, stochastischer Gradientenabfall- oder anderer gradientenbasierter Trainingsalgorithmus. Die Konfigurationsparameter H können somit einen beliebigen Parameter zum Abstimmen oder anderweitigen Konfigurieren des Betriebs des Trainingsalgorithmus 304 beinhalten, wie etwa eine Verlustfunktion, eine Aktualisierungsregel, eine Epochenanzahl, eine Losgröße, eine Lernrate, eine Lernzerfallsrate oder andere Konfigurationsparameter.
  • Die Rechenvorrichtung 100 kann jegliche passende Technik zum Erzeugen der Konfigurationsparameter {H} verwenden. Beispielsweise können die Konfigurationsparameter {H} zufällig erzeugt werden oder können auf vorbestimmten Anfangskonfigurationsparametern basieren. Wie unten weiter beschrieben wird, können die Konfigurationsparameter {H} zuvor durch die Rechenvorrichtung 100 bestimmte optimierte Konfigurationsparameter {H}* beinhalten und/oder auf diesen basieren. Bei manchen Ausführungsformen kann die Rechenvorrichtung 100 viele verschiedene Mengen von Konfigurationsparametern {H} zum parallelen Trainieren erzeugen, wie unten weiter beschrieben ist.
  • Nach Erzeugen der Konfigurationsparameter {H} geht das Verfahren 400 parallel zu mehreren Instanzen von Block 404 weiter. Obgleich als die Blöcke 404a, 404b parallel ausführend veranschaulicht, versteht sich, dass das Verfahren 400 bei manchen Ausführungsformen parallel zu viel mehr Instanzen (z. B. hunderte von Instanzen) von Block 404 weitergehen kann. Die Blöcke 404 können durch die Rechenvorrichtung 100 oder durch viele Rechenvorrichtungen 100 parallel ausgeführt werden, beispielsweise durch viele in einem verteilten Rechensystem arbeitende verteilte Rechenknoten.
  • In Block 404 führt die Rechenvorrichtung 100 Training unter Verwendung der Konfigurationsparameter {H} auf dem Maschinenlernnetz 302 durch. Die Rechenvorrichtung 100 führt mehrere Trainingsiterationen unter Verwendung des Trainingsalgorithmus 304 aus. Für jede Trainingsiteration t, erzeugt die Rechenvorrichtung 100 einen teilgenauen Wert At, der die Genauigkeit des unterliegenden Maschinenlernnetzes 304 bei dieser Trainingsiteration t angibt. Die Rechenvorrichtung 100 kann den Trainingsalgorithmus 304 parallel unter Verwendung von herkömmlichen Paralleltrainingstechniken durchführen, welche auf hunderte von Instanzen ausskalieren können. Da jede parallele Instanz des Blocks 404 paralleles Training durchführen kann, kann das Verfahren 400 somit Skalieren auf viele (z. B. tausende oder Millionen) von Instanzen und/oder Rechenknoten unterstützen. In Block 406 nimmt die Rechenvorrichtung 100 eine Zeitreihe von teilgenauen Werten {A1, A2, A3, ... , At} auf. Die Zeitreihen von teilgenauen Werten At geben die Konvergenz des Maschinenlernnetzes 302 auf genaue unter Verwendung der Konfigurationsparameter {H} erreichte Ergebnisse an. Da jede Menge von Konfigurationsparametern H unabhängig ist, kann jede Instanz der Blöcke 404, 406 unabhängig ausgeführt werden, um eine unabhängige Zeitreihe{A1, A2, A3, ... , At} zu erzeugen. Wie unten weiter beschrieben ist, können alle dieser Zeitreihen zum Trainieren des Modells 306 verwendet werden.
  • Nach parallelem Erzeugen und Aufnehmen mehrerer Zeitreihen {A1, A2, A3, ... , At} schreitet das Verfahren 400 zu Block 408 voran. In Block 408 erzeugt die Rechenvorrichtung 100 eine Repräsentation der Konfigurationsparameter {H} unter Verwendung des tiefen neuronalen Netzes (DNN) 308. Die Abhängigkeit zwischen Konfigurationsparametern {H} und teilgenauen Werten {At} ist hochgradig nichtlinear. Daher kann Verarbeiten der Konfigurationsparameter {H} mit dem DNN 308 eine optimale Repräsentation der Konfigurationsparameter {H} erzeugen. Bei manchen Ausführungsformen können die Konfigurationsparameter {H} in Block 410 mit mehreren vollständig verbundenen (FC) Schichten verarbeitet werden. Bei der veranschaulichenden Ausführungsform beinhaltet das DNN 308 fünf FC-Schichten, einschließlich vier verborgenen Schichten mit Dimensionen von 50, 25, 15 und fünf und eine Projektionsschicht der Größe 10. Jede FC-Schicht kann ReLu-Aktivierungen verwenden.
  • In Block 412 gibt die Rechenvorrichtung 100 die Repräsentation der Konfigurationsparameter {H} von der DNN 308 in ein rückgekoppeltes neuronales Netz (RNN) 310 ein. Das RNN 310 beinhaltet internen Speicher und kann somit verwendet werden zum Modellieren von Eingabeabfolgen. Bei manchen Ausführungsformen kann das RNN 310 in Block 414 als ein Langzeit-Kurzzeit-Speicher (LSTM) realisiert sein. Bei der veranschaulichenden Ausführungsform ist das RNN 310 ein LSTM mit einer verborgenen Größe von 10 und einer Zellengröße von 10.
  • In Block 416 trainiert die Rechenvorrichtung 100 das Modell 306 gegen die teilgenaue Zeitreihe {A1, A2, A3, ... , At}. Training ermöglicht es dem Modell 306, die Konvergenz des Maschinenlernnetzes 302 für die assoziierten Konfigurationsparameter {H} zu beschreiben und/oder vorherzusagen. Das Modell 306 wird mit dem Trainingsalgorithmus 312 trainiert, welcher als ein beliebiger zum Training des Modells 306 verwendbarer Trainingsalgorithmus realisiert sein kann, wie etwa ein Gradientenabfall-, stochastischer Gradientenabfall- oder anderer gradientenbasierter Trainingsalgorithmus. Bei der veranschaulichenden Ausführungsform verwendet der Trainingsalgorithmus 312 die L2-Verlustfunktion, die adaptive Momentenschätzung(Adam)-Aktualisierungsregel, 500 Epochen, eine Losgröße von 30, eine Lernrate von 4e-3 und einen Lernratenabfall von 0,995.
  • In Block 418 optimiert die Rechenvorrichtung 100 das trainierte Modell 306, um die optimierten Konfigurationsparameter {H}* zu bestimmen. Die optimierten Konfigurationsparameter {H}* können als eine Menge von Konfigurationsparametern {H1, H2, H3, ... } realisiert sein, die die Zeit t (d. h. die Anzahl von Trainingsiterationen) minimiert, die zum Erreichen einer vorbestimmten Genauigkeit At = Afixed erforderlich ist. Die Rechenvorrichtung 100 kann das trainierte Modell 306 unter Verwendung eines gradientenbasierten Optimierungsverfahrens optimieren. Bei manchen Ausführungsformen kann die Rechenvorrichtung 100 in Block 420 das Modell 306 unter Verwendung eines BFGS-Optimierungsalgorithmus optimieren. Beispielsweise kann die Rechenvorrichtung 100 einen BFGS-Algorithmus mit begrenztem Speicher ausführen, wie er in Richard Byrd et al., A Limited Memory Algorithm for Bound Constrained Optimization, 16 SIAM J. on Sci. Computing 1190 (1995) beschrieben ist.
  • In Block 422 bestimmt die Rechenvorrichtung 100, ob mit dem Trainingsoptimieren des Maschinenlernnetzes 30 weitergemacht wird. Die Rechenvorrichtung 100 kann beispielsweise bestimmen, das Training für eine vorbestimmte Anzahl von Iterationen, für einen vorbestimmten Zeitraum, bis eine vorbestimmte Leistung des Trainingsalgorithmus 304 erreicht ist oder für beliebige andere Kriterien fortzuführen. Falls die Rechenvorrichtung 100 bestimmt, mit dem Trainingsoptimieren des Maschinenlernnetzes 302 weiterzumachen, schleift das Verfahren 400 zum Block 402 zurück, um zusätzliche teilgenaue Zeitreihen {At} unter Verwendung der optimierten Konfigurationsparameter {H}* zu erzeugen. Wenn die Rechenvorrichtung 100 mit dem Analysieren zusätzlicher teilgenauer Zeitreihen {At} weitermacht, kann die Rechenvorrichtung 100 verbesserte optimierte Konfigurationsparameter {H}* erzeugen, die bessere Trainingsleistung liefern. Wenn die Rechenvorrichtung 100 bestimmt, nicht mit der Optimierung weiterzumachen, schreitet das Verfahren 400 zu Block 424 voran.
  • In Block 424 führt die Rechenvorrichtung 100 Training unter Verwendung der optimierten Konfigurationsparameter {H}* auf dem Maschinenlernnetz 302 durch. Durchführen von Training mit den optimierten Konfigurationsparametern {H}* kann es dem Trainingsalgorithmus 304 ermöglichen, schneller zu konvergieren und/oder dem Maschinenlernnetz 302 ermöglichen, genauere Ergebnisse zu produzieren. Nach dem Durchführen des Trainings ist das Verfahren 400 abgeschlossen und das trainierte Maschinenlernnetz 302 kann in Produktion verwendet oder anderweitig ausgeführt werden. Natürlich kann das Verfahren 400 mehrere Male ausgeführt werden, um die Konfigurationsparameter weiter zu optimieren und zusätzliches Training durchzuführen.
  • Es versteht sich, dass das Verfahren 400 bei manchen Ausführungsformen als vielfältige auf einem computerlesbaren Medium gespeicherte Anweisungen realisiert sein kann, welche durch den Prozessor 120, das E/A-Subsystem 122 und/oder andere Komponenten der Rechenvorrichtung 100 ausgeführt werden können, um die Rechenvorrichtung 100 zu veranlassen, das Verfahren 400 durchzuführen. Das computerlesbare Medium kann als eine beliebige Art von Medium realisiert sein, das zum Lesen durch die Rechenvorrichtung 100 fähig ist, einschließlich unter anderem der Speicher 124, die Datenablagevorrichtung 126, Firmwarevorrichtungen, andere Speicher- oder Datenablagevorrichtungen der Rechenvorrichtung 100, durch eine Peripherievorrichtung 130 der Rechenvorrichtung 100 lesbare portable Medien und/oder andere Medien.
  • BEISPIELE
  • Veranschaulichende Beispiele der hier offenbarten Technologien sind unten bereitgestellt. Eine Ausführungsform der Technologien kann eines oder mehrere der unten beschriebenen Beispiel und jede Kombination davon beinhalten.
  • Beispiel 1 beinhaltet eine Rechenvorrichtung zur Optimierung von Maschinenlerntraining, wobei die Rechenvorrichtung Folgendes umfasst: einen Netztrainer zum (i) Trainieren eines Maschinenlernnetzes mit einem Trainingsalgorithmus, wobei der Trainingsalgorithmus mit einem oder mehreren Konfigurationsparametern konfiguriert ist, und (ii) Aufnehmen einer Zeitreihe von teilgenauen Werten als Reaktion auf Trainieren des Maschinenlernnetzes, wobei jeder teilgenaue Wert eine Maschinenlernnetzgenauigkeit bei einer assoziierten Trainingsiteration angibt; einen Netzmodellierer zum (i) Eingeben des einen oder der mehreren Konfigurationsparameter in ein vorwärtsgekoppeltes neuronales Netz zum Erzeugen einer Repräsentation der Konfigurationsparameter und (ii) Eingeben der Repräsentation der Konfigurationsparameter in ein rückgekoppeltes neuronales Netz; einen Modelltrainer zum Trainieren des rückgekoppelten neuronalen Netzes und des vorwärtsgekoppelten neuronalen Netzes gegen die Zeitreihe von teilgenauen Werten; und einen Optimierer zum, als Reaktion auf Trainieren des rückgekoppelten neuronalen Netzes und des vorwärtsgekoppelten neuronalen Netzes, Optimieren des rückgekoppelten neuronalen Netzes und des vorwärtsgekoppelten neuronalen Netzes zum Bestimmen eines oder mehrerer optimierter Konfigurationsparameter.
  • Beispiel 2 beinhaltet den Gegenstand von Beispiel 1 und wobei das Maschinenlernnetz ein Faltungs-Neuronales-Netz umfasst.
  • Beispiel 3 beinhaltet den Gegenstand von einem der Beispiele 1 und 2 und wobei Optimieren des rückgekoppelten neuronalen Netzes und des vorwärtsgekoppelten neuronalen Netzes Bestimmen des einen oder der mehreren optimierten Konfigurationsparameter zum Minimieren der Trainingszeit zum Erreichen eines vorbestimmten Genauigkeitsniveaus umfasst.
  • Beispiel 4 beinhaltet den Gegenstand von einem der Beispiele 1-3 und wobei Optimieren des rückgekoppelten neuronalen Netzes und des vorwärtsgekoppelten neuronalen Netzes Optimieren des rückgekoppelten neuronalen Netzes und des vorwärtsgekoppelten neuronalen Netzes mit einem BFGS-Algorithmus umfasst.
  • Beispiel 5 beinhaltet den Gegenstand von einem der Beispiele 1-4 und wobei der Netztrainer ferner ausgelegt ist zum Trainieren des Maschinenlernnetzes mit mehreren parallelen Instanzen des Trainingsalgorithmus, wobei jede parallele Instanz des Trainingsalgorithmus mit einer anderen Menge von einem oder mehreren Konfigurationsparametern konfiguriert ist.
  • Beispiel 6 beinhaltet den Gegenstand von einem der Beispiele 1-5 und wobei der Netztrainer ferner zum Aufnehmen einer Zeitreihe von teilgenauen Werten für jede parallele Instanz des Trainingsalgorithmus ausgelegt ist.
  • Beispiel 7 beinhaltet den Gegenstand von einem der Beispiele 1-6 und wobei der Netztrainer ferner ausgelegt ist zum parallelen Trainieren des Maschinenlernnetzes mit dem Trainingsalgorithmus durch mehrere verteilte Rechenknoten, wobei der Trainingsalgorithmus von jedem Rechenknoten mit einer anderen Menge von einem oder mehreren Konfigurationsparametern konfiguriert ist.
  • Beispiel 8 beinhaltet den Gegenstand von einem der Beispiele 1-7 und wobei der Netztrainer ferner ausgelegt ist zum Trainieren des Maschinenlernnetzes mit dem Trainingsalgorithmus, wobei der Trainingsalgorithmus mit dem einen oder den mehreren optimierten Konfigurationsparametern konfiguriert ist.
  • Beispiel 9 beinhaltet den Gegenstand von einem der Beispiele 1-8 und wobei der Netztrainer ferner ausgelegt ist zum Aufnehmen einer Zeitreihe von teilgenauen Werten als Reaktion auf Trainieren des Maschinenlernnetzes mit dem mit dem einen oder den mehreren optimierten Konfigurationsparametern konfigurierten Trainingsalgorithmus.
  • Beispiel 10 beinhaltet den Gegenstand von einem der Beispiele 1-9 und wobei die Konfigurationsparameter eine Lernrate, eine Lernzerfallsrate, eine Verlustfunktion, eine Losgröße oder eine Epochenanzahl beinhalten.
  • Beispiel 11 beinhaltet den Gegenstand von einem der Beispiele 1-10 und wobei das vorwärtsgekoppelte neuronale Netz ein tiefes neuronales Netz einschließlich mehrerer vollständig verbundener Schichten umfasst.
  • Beispiel 12 beinhaltet den Gegenstand von einem der Beispiele 1-11 und wobei das tiefe neuronale Netz fünf vollständig verbundene Schichten umfasst.
  • Beispiel 13 beinhaltet den Gegenstand von einem der Beispiele 1-12 und wobei das rückgekoppelte neuronale Netz ein Langzeit-Kurzzeit-Speicher-Netz umfasst.
  • Beispiel 14 beinhaltet ein Verfahren zur Optimierung von Maschinenlerntraining, wobei das Verfahren die folgenden Schritte umfasst: Trainieren, durch eine Rechenvorrichtung, eines Maschinenlernnetzes mit einem Trainingsalgorithmus, wobei der Trainingsalgorithmus mit einem oder mehreren Konfigurationsparametern konfiguriert ist; Aufnehmen, durch die Rechenvorrichtung, einer Zeitreihe von teilgenauen Werten als Reaktion auf Trainieren des Maschinenlernnetzes, wobei jeder teilgenaue Wert eine Maschinenlernnetzgenauigkeit bei einer assoziierten Trainingsiteration angibt; Eingeben, durch die Rechenvorrichtung, des einen oder der mehreren Konfigurationsparameter in ein vorwärtsgekoppeltes neuronales Netz zum Erzeugen einer Repräsentation der Konfigurationsparameter; Eingeben, durch die Rechenvorrichtung, der Repräsentation der Konfigurationsparameter in ein rückgekoppeltes neuronales Netz; Trainieren, durch die Rechenvorrichtung, des rückgekoppelten neuronalen Netzes und des vorwärtsgekoppelten neuronalen Netzes gegen die Zeitreihe von teilgenauen Werten; und Optimieren, durch die Rechenvorrichtung als Reaktion auf Trainieren des rückgekoppelten neuronalen Netzes und des vorwärtsgekoppelten neuronalen Netzes, des rückgekoppelten neuronalen Netzes und des vorwärtsgekoppelten neuronalen Netzes zum Bestimmen eines oder mehrerer optimierter Konfigurationsparameter.
  • Beispiel 15 beinhaltet den Gegenstand von Beispiel 14 und wobei das Maschinenlernnetz ein Faltungs-Neuronales-Netz umfasst.
  • Beispiel 16 beinhaltet den Gegenstand von einem der Beispiele 14 und 15 und wobei Optimieren des rückgekoppelten neuronalen Netzes und des vorwärtsgekoppelten neuronalen Netzes Bestimmen des einen oder der mehreren optimierten Konfigurationsparameter zum Minimieren der Trainingszeit zum Erreichen eines vorbestimmten Genauigkeitsniveaus umfasst.
  • Beispiel 17 beinhaltet den Gegenstand von einem der Beispiele 14-16 und wobei Optimieren des rückgekoppelten neuronalen Netzes und des vorwärtsgekoppelten neuronalen Netzes Optimieren des rückgekoppelten neuronalen Netzes und des vorwärtsgekoppelten neuronalen Netzes mit einem BFGS-Algorithmus umfasst.
  • Beispiel 18 beinhaltet den Gegenstand von einem der Beispiele 14-17 und umfasst ferner Trainieren, durch die Rechenvorrichtung, des Maschinenlernnetzes mit mehreren parallelen Instanzen des Trainingsalgorithmus, wobei jede parallele Instanz des Trainingsalgorithmus mit einer anderen Menge von einem oder mehreren Konfigurationsparametern konfiguriert ist.
  • Beispiel 19 beinhaltet den Gegenstand von einem der Beispiele 14-18 und umfasst ferner Aufnehmen, durch die Rechenvorrichtung, einer Zeitreihe von teilgenauen Werten für jede parallele Instanz des Trainingsalgorithmus.
  • Beispiel 20 beinhaltet den Gegenstand von einem der Beispiele 14-19 und umfasst ferner paralleles Trainieren des Maschinenlernnetzes mit dem Trainingsalgorithmus durch mehrere verteilte Rechenknoten, wobei der Trainingsalgorithmus von jedem Rechenknoten mit einer anderen Menge von einem oder mehreren Konfigurationsparametern konfiguriert ist.
  • Beispiel 21 beinhaltet den Gegenstand von einem der Beispiele 14-20 und umfasst ferner Trainieren des Maschinenlernnetzes mit dem Trainingsalgorithmus durch die Rechenvorrichtung, wobei der Trainingsalgorithmus mit dem einen oder den mehreren optimierten Konfigurationsparametern konfiguriert ist.
  • Beispiel 22 beinhaltet den Gegenstand von einem der Beispiele 14-21 und umfasst ferner Aufnehmen, durch die Rechenvorrichtung, einer Zeitreihe von teilgenauen Werten als Reaktion auf Trainieren des Maschinenlernnetzes mit dem mit dem einen oder den mehreren optimierten Konfigurationsparametern konfigurierten Trainingsalgorithmus.
  • Beispiel 23 beinhaltet den Gegenstand von einem der Beispiele 14-22 und wobei die Konfigurationsparameter eine Lernrate, eine Lernzerfallsrate, eine Verlustfunktion, eine Losgröße oder eine Epochenanzahl beinhalten.
  • Beispiel 24 beinhaltet den Gegenstand von einem der Beispiele 14-23 und wobei das vorwärtsgekoppelte neuronale Netz ein tiefes neuronales Netz einschließlich mehrerer vollständig verbundener Schichten umfasst.
  • Beispiel 25 beinhaltet den Gegenstand von einem der Beispiele 14-24 und wobei das tiefe neuronale Netz fünf vollständig verbundene Schichten umfasst.
  • Beispiel 26 beinhaltet den Gegenstand von einem der Beispiele 14-25 und wobei das rückgekoppelte neuronale Netz ein Langzeit-Kurzzeit-Speicher-Netz umfasst.
  • Beispiel 27 beinhaltet eine Rechenvorrichtung, die einen Prozessor umfasst; und einen Speicher, der darin mehrere Anweisungen gespeichert hat, die, wenn sie von einem Prozessor ausgeführt werden, die Rechenvorrichtung veranlassen, das Verfahren nach einem der Beispiele 14-26 auszuführen.
  • Beispiel 28 beinhaltet ein oder mehrere maschinenlesbare Ablagemedien, die mehrere darauf gespeicherte Anweisungen umfassen, die, als Reaktion auf deren Ausführung veranlassen, dass eine Rechenvorrichtung das Verfahren nach einem der Beispiele 14-26 ausführt.
  • Beispiel 29 beinhaltet eine Rechenvorrichtung, die Mittel zum Durchführen des Verfahrens nach einem der Beispiele 14-26 umfasst.
  • Beispiel 30 beinhaltet eine Rechenvorrichtung zur Optimierung von Maschinenlerntraining, wobei die Rechenvorrichtung Folgendes umfasst: ein Mittel zum Trainieren eines Maschinenlernnetzes mit einem Trainingsalgorithmus, wobei der Trainingsalgorithmus mit einem oder mehreren Konfigurationsparametern konfiguriert ist; ein Mittel zum Aufnehmen einer Zeitreihe von teilgenauen Werten als Reaktion auf Trainieren des Maschinenlernnetzes, wobei jeder teilgenaue Wert eine Maschinenlernnetzgenauigkeit bei einer assoziierten Trainingsiteration angibt; ein Mittel zum Eingeben des einen oder der mehreren Konfigurationsparameter in ein vorwärtsgekoppeltes neuronales Netz zum Erzeugen einer Repräsentation der Konfigurationsparameter; ein Mittel zum Eingeben der Repräsentation der Konfigurationsparameter in ein rückgekoppeltes neuronales Netz; ein Mittel zum Trainieren des rückgekoppelten neuronalen Netzes und des vorwärtsgekoppelten neuronalen Netzes gegen die Zeitreihe von teilgenauen Werten; und ein Mittel zum Optimieren, als Reaktion auf Trainieren des rückgekoppelten neuronalen Netzes und des vorwärtsgekoppelten neuronalen Netzes, des rückgekoppelten neuronalen Netzes und des vorwärtsgekoppelten neuronalen Netzes zum Bestimmen eines oder mehrerer optimierter Konfigurationsparameter.
  • Beispiel 31 beinhaltet den Gegenstand von Beispiel 30 und wobei das Maschinenlernnetz ein Faltungs-Neuronales-Netz umfasst.
  • Beispiel 32 beinhaltet den Gegenstand von einem der Beispiele 30 und 31 und wobei das Mittel zum Optimieren des rückgekoppelten neuronalen Netzes und des vorwärtsgekoppelten neuronalen Netzes ein Mittel zum Bestimmen des einen oder der mehreren optimierten Konfigurationsparameter zum Minimieren der Trainingszeit zum Erreichen eines vorbestimmten Genauigkeitsniveaus umfasst.
  • Beispiel 33 beinhaltet den Gegenstand von einem der Beispiele 30-32 und wobei das Mittel zum Optimieren des rückgekoppelten neuronalen Netzes und des vorwärtsgekoppelten neuronalen Netzes ein Mittel zum Optimieren des rückgekoppelten neuronalen Netzes und des vorwärtsgekoppelten neuronalen Netzes mit einem BFGS-Algorithmus umfasst.
  • Beispiel 34 beinhaltet den Gegenstand von einem der Beispiele 30-33 und umfasst ferner ein Mittel zum Trainieren des Maschinenlernnetzes mit mehreren parallelen Instanzen des Trainingsalgorithmus, wobei jede parallele Instanz des Trainingsalgorithmus mit einer anderen Menge von einem oder mehreren Konfigurationsparametern konfiguriert ist.
  • Beispiel 35 beinhaltet den Gegenstand von einem der Beispiele 30-34 und umfasst ferner ein Mittel zum Aufnehmen einer Zeitreihe von teilgenauen Werten für jede parallele Instanz des Trainingsalgorithmus.
  • Beispiel 36 beinhaltet den Gegenstand von einem der Beispiele 30-35 und umfasst ferner ein Mittel zum parallelen Trainieren des Maschinenlernnetzes mit dem Trainingsalgorithmus durch mehrere verteilte Rechenknoten, wobei der Trainingsalgorithmus von jedem Rechenknoten mit einer anderen Menge von einem oder mehreren Konfigurationsparametern konfiguriert ist.
  • Beispiel 37 beinhaltet den Gegenstand von einem der Beispiele 30-36 und umfasst ferner ein Mittel zum Trainieren des Maschinenlernnetzes mit dem Trainingsalgorithmus, wobei der Trainingsalgorithmus mit dem einen oder den mehreren optimierten Konfigurationsparametern konfiguriert ist.
  • Beispiel 38 beinhaltet den Gegenstand von einem der Beispiele 30-37 und umfasst ferner ein Mittel zum Aufnehmen einer Zeitreihe von teilgenauen Werten als Reaktion auf Trainieren des Maschinenlernnetzes mit dem mit dem einen oder den mehreren optimierten Konfigurationsparametern konfigurierten Trainingsalgorithmus.
  • Beispiel 39 beinhaltet den Gegenstand von einem der Beispiele 30-38 und wobei die Konfigurationsparameter eine Lernrate, eine Lernzerfallsrate, eine Verlustfunktion, eine Losgröße oder eine Epochenanzahl beinhalten.
  • Beispiel 40 beinhaltet den Gegenstand von einem der Beispiele 30-39 und wobei das vorwärtsgekoppelte neuronale Netz ein tiefes neuronales Netz einschließlich mehrerer vollständig verbundener Schichten umfasst.
  • Beispiel 41 beinhaltet den Gegenstand von einem der Beispiele 30-40 und wobei das tiefe neuronale Netz fünf vollständig verbundene Schichten umfasst.
  • Beispiel 42 beinhaltet den Gegenstand von einem der Beispiele 30-41 und wobei das rückgekoppelte neuronale Netz ein Langzeit-Kurzzeit-Speicher-Netz umfasst.

Claims (25)

  1. Rechenvorrichtung zur Optimierung von Maschinenlerntraining, wobei die Rechenvorrichtung Folgendes umfasst: einen Netztrainer zum (i) Trainieren eines Maschinenlernnetzes mit einem Trainingsalgorithmus, wobei der Trainingsalgorithmus mit einem oder mehreren Konfigurationsparametern konfiguriert ist, und (ii) Aufnehmen einer Zeitreihe von teilgenauen Werten als Reaktion auf Trainieren des Maschinenlernnetzes, wobei jeder teilgenaue Wert eine Maschinenlernnetzgenauigkeit bei einer assoziierten Trainingsiteration angibt; einen Netzmodellierer zum (i) Eingeben des einen oder der mehreren Konfigurationsparameter in ein vorwärtsgekoppeltes neuronales Netz zum Erzeugen einer Repräsentation der Konfigurationsparameter und (ii) Eingeben der Repräsentation der Konfigurationsparameter in ein rückgekoppeltes neuronales Netz; einen Modelltrainer zum Trainieren des rückgekoppelten neuronalen Netzes und des vorwärtsgekoppelten neuronalen Netzes gegen die Zeitreihe von teilgenauen Werten; und einen Optimierer zum, als Reaktion auf Trainieren des rückgekoppelten neuronalen Netzes und des vorwärtsgekoppelten neuronalen Netzes, Optimieren des rückgekoppelten neuronalen Netzes und des vorwärtsgekoppelten neuronalen Netzes zum Bestimmen eines oder mehrerer optimierter Konfigurationsparameter.
  2. Rechenvorrichtung nach Anspruch 1, wobei das Maschinenlernnetz ein Faltungs-Neuronales-Netz umfasst.
  3. Rechenvorrichtung nach Anspruch 1, wobei Optimieren des rückgekoppelten neuronalen Netzes und des vorwärtsgekoppelten neuronalen Netzes Bestimmen des einen oder der mehreren optimierten Konfigurationsparameter zum Minimieren der Trainingszeit zum Erreichen eines vorbestimmten Genauigkeitsniveaus umfasst.
  4. Rechenvorrichtung nach Anspruch 3, wobei Optimieren des rückgekoppelten neuronalen Netzes und des vorwärtsgekoppelten neuronalen Netzes Optimieren des rückgekoppelten neuronalen Netzes und des vorwärtsgekoppelten neuronalen Netzes mit einem BFGS-Algorithmus umfasst.
  5. Rechenvorrichtung nach Anspruch 1, wobei der Netztrainer ferner ausgelegt ist zum Trainieren des Maschinenlernnetzes mit mehreren parallelen Instanzen des Trainingsalgorithmus, wobei jede parallele Instanz des Trainingsalgorithmus mit einer anderen Menge von einem oder mehreren Konfigurationsparametern konfiguriert ist.
  6. Rechenvorrichtung nach Anspruch 5, wobei der Netztrainer ferner zum Aufnehmen einer Zeitreihe von teilgenauen Werten für jede parallele Instanz des Trainingsalgorithmus ausgelegt ist.
  7. Rechenvorrichtung nach Anspruch 1, wobei der Netztrainer ferner ausgelegt ist zum parallelen Trainieren des Maschinenlernnetzes mit dem Trainingsalgorithmus durch mehrere verteilte Rechenknoten, wobei der Trainingsalgorithmus von jedem Rechenknoten mit einer anderen Menge von einem oder mehreren Konfigurationsparametern konfiguriert ist.
  8. Rechenvorrichtung nach Anspruch 1, wobei der Netztrainer ferner ausgelegt ist zum Trainieren des Maschinenlernnetzes mit dem Trainingsalgorithmus, wobei der Trainingsalgorithmus mit dem einen oder den mehreren optimierten Konfigurationsparametern konfiguriert ist.
  9. Rechenvorrichtung nach Anspruch 8, wobei der Netztrainer ferner ausgelegt ist zum Aufnehmen einer Zeitreihe von teilgenauen Werten als Reaktion auf Trainieren des Maschinenlernnetzes mit dem mit dem einen oder den mehreren optimierten Konfigurationsparametern konfigurierten Trainingsalgorithmus.
  10. Rechenvorrichtung nach Anspruch 1, wobei das vorwärtsgekoppelte neuronale Netz ein tiefes neuronales Netz einschließlich mehrerer vollständig verbundener Schichten umfasst.
  11. Rechenvorrichtung nach Anspruch 1, wobei das rückgekoppelte neuronale Netz ein Langzeit-Kurzzeit-Speicher-Netz umfasst.
  12. Verfahren zur Optimierung von Maschinenlerntraining, wobei das Verfahren die folgenden Schritte umfasst: Trainieren, durch eine Rechenvorrichtung, eines Maschinenlernnetzes mit einem Trainingsalgorithmus, wobei der Trainingsalgorithmus mit einem oder mehreren Konfigurationsparametern konfiguriert ist; Aufnehmen, durch die Rechenvorrichtung, einer Zeitreihe von teilgenauen Werten als Reaktion auf Trainieren des Maschinenlernnetzes, wobei jeder teilgenaue Wert eine Maschinenlernnetzgenauigkeit bei einer assoziierten Trainingsiteration angibt; Eingeben, durch die Rechenvorrichtung, des einen oder der mehreren Konfigurationsparameter in ein vorwärtsgekoppeltes neuronales Netz zum Erzeugen einer Repräsentation der Konfigurationsparameter; Eingeben, durch die Rechenvorrichtung, der Repräsentation der Konfigurationsparameter in ein rückgekoppeltes neuronales Netz; Trainieren, durch die Rechenvorrichtung, des rückgekoppelten neuronalen Netzes und des vorwärtsgekoppelten neuronalen Netzes gegen die Zeitreihe von teilgenauen Werten; und Optimieren, durch die Rechenvorrichtung als Reaktion auf Trainieren des rückgekoppelten neuronalen Netzes und des vorwärtsgekoppelten neuronalen Netzes, des rückgekoppelten neuronalen Netzes und des vorwärtsgekoppelten neuronalen Netzes zum Bestimmen eines oder mehrerer optimierter Konfigurationsparameter.
  13. Verfahren nach Anspruch 12, wobei Optimieren des rückgekoppelten neuronalen Netzes und des vorwärtsgekoppelten neuronalen Netzes Bestimmen des einen oder der mehreren optimierten Konfigurationsparameter zum Minimieren der Trainingszeit zum Erreichen eines vorbestimmten Genauigkeitsniveaus umfasst.
  14. Verfahren nach Anspruch 12, ferner umfassend Trainieren, durch die Rechenvorrichtung, des Maschinenlernnetzes mit mehreren parallelen Instanzen des Trainingsalgorithmus, wobei jede parallele Instanz des Trainingsalgorithmus mit einer anderen Menge von einem oder mehreren Konfigurationsparametern konfiguriert ist.
  15. Verfahren nach Anspruch 14, ferner umfassend Aufnehmen, durch die Rechenvorrichtung, einer Zeitreihe von teilgenauen Werten für jede parallele Instanz des Trainingsalgorithmus.
  16. Verfahren nach Anspruch 12, ferner umfassend paralleles Trainieren des Maschinenlernnetzes mit dem Trainingsalgorithmus durch mehrere verteilte Rechenknoten, wobei der Trainingsalgorithmus von jedem Rechenknoten mit einer anderen Menge von einem oder mehreren Konfigurationsparametern konfiguriert ist.
  17. Verfahren nach Anspruch 12, ferner umfassend Trainieren, durch die Rechenvorrichtung, des Maschinenlernnetzes mit dem Trainingsalgorithmus, wobei der Trainingsalgorithmus mit dem einen oder den mehreren optimierten Konfigurationsparametern konfiguriert ist.
  18. Verfahren nach Anspruch 17, ferner umfassend Aufnehmen, durch die Rechenvorrichtung, einer Zeitreihe von teilgenauen Werten als Reaktion auf Trainieren des Maschinenlernnetzes mit dem mit dem einen oder den mehreren optimierten Konfigurationsparametern konfigurierten Trainingsalgorithmus.
  19. Computerlesbares Ablagemedium oder mehrere computerlesbare Ablagemedien, die eine Vielzahl von Anweisungen umfassen, die, als Reaktion darauf, ausgeführt zu werden, eine Rechenvorrichtung veranlassen zum: Trainieren eines Maschinenlernnetzes mit einem Trainingsalgorithmus, wobei der Trainingsalgorithmus mit einem oder mehreren Konfigurationsparametern konfiguriert ist; Aufnehmen einer Zeitreihe von teilgenauen Werten als Reaktion auf Trainieren des Maschinenlernnetzes, wobei jeder teilgenaue Wert eine Maschinenlernnetzgenauigkeit bei einer assoziierten Trainingsiteration angibt; Eingeben des einen oder der mehreren Konfigurationsparameter in ein vorwärtsgekoppeltes neuronales Netz zum Erzeugen einer Repräsentation der Konfigurationsparameter; Eingeben der Repräsentation der Konfigurationsparameter in ein rückgekoppeltes neuronales Netz; Trainieren des rückgekoppelten neuronalen Netzes und des vorwärtsgekoppelten neuronalen Netzes gegen die Zeitreihe von teilgenauen Werten; und Optimieren, als Reaktion auf Trainieren des rückgekoppelten neuronalen Netzes und des vorwärtsgekoppelten neuronalen Netzes, des rückgekoppelten neuronalen Netzes und des vorwärtsgekoppelten neuronalen Netzes zum Bestimmen eines oder mehrerer optimierter Konfigurationsparameter.
  20. Computerlesbares Ablagemedium oder mehrere computerlesbare Ablagemedien nach Anspruch 19, wobei Optimieren des rückgekoppelten neuronalen Netzes und des vorwärtsgekoppelten neuronalen Netzes Bestimmen des einen oder der mehreren optimierten Konfigurationsparameter zum Minimieren der Trainingszeit zum Erreichen eines vorbestimmten Genauigkeitsniveaus umfasst.
  21. Computerlesbares Ablagemedium oder mehrere computerlesbare Ablagemedien nach Anspruch 19, ferner umfassend eine Vielzahl von Anweisungen, die als Reaktion darauf, ausgeführt zu werden, die Rechenvorrichtung veranlassen zum Trainieren des Maschinenlernnetzes mit mehreren parallelen Instanzen des Trainingsalgorithmus, wobei jede parallele Instanz des Trainingsalgorithmus mit einer anderen Menge von einem oder mehreren Konfigurationsparametern konfiguriert ist.
  22. Computerlesbares Ablagemedium oder mehrere computerlesbare Ablagemedien nach Anspruch 21, ferner umfassend eine Vielzahl von Anweisungen, die, als Reaktion darauf, ausgeführt zu werden, die Rechenvorrichtung veranlassen zum Aufnehmen einer Zeitreihe von teilgenauen Werten für jede parallele Instanz des Trainingsalgorithmus.
  23. Computerlesbares Ablagemedium oder mehrere computerlesbare Ablagemedien nach Anspruch 19, ferner umfassend eine Vielzahl von Anweisungen, die als Reaktion darauf, ausgeführt zu werden, die Rechenvorrichtung veranlassen zum parallelen Trainieren des Maschinenlernnetzes mit dem Trainingsalgorithmus durch mehrere verteilte Rechenknoten, wobei der Trainingsalgorithmus von jedem Rechenknoten mit einer anderen Menge von einem oder mehreren Konfigurationsparametern konfiguriert ist.
  24. Computerlesbares Ablagemedium oder mehrere computerlesbare Ablagemedien nach Anspruch 19, ferner umfassend eine Vielzahl von Anweisungen, die als Reaktion darauf, ausgeführt zu werden, die Rechenvorrichtung veranlassen zum Trainieren des Maschinenlernnetzes mit dem Trainingsalgorithmus, wobei der Trainingsalgorithmus mit dem einen oder den mehreren optimierten Konfigurationsparametern konfiguriert ist.
  25. Computerlesbares Ablagemedium oder mehrere computerlesbare Ablagemedien nach Anspruch 24, ferner umfassend eine Vielzahl von Anweisungen, die als Reaktion darauf, ausgeführt zu werden, die Rechenvorrichtung veranlassen zum Aufnehmen einer Zeitreihe von teilgenauen Werten als Reaktion auf Trainieren des Maschinenlernnetzes mit dem mit dem einen oder den mehreren optimierten Konfigurationsparametern konfigurierten Trainingsalgorithmus.
DE102018202497.9A 2017-02-19 2018-02-19 Technologien für optimiertes Maschinenlerntraining Pending DE102018202497A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15/436,841 2017-02-19
US15/436,841 US10963783B2 (en) 2017-02-19 2017-02-19 Technologies for optimized machine learning training

Publications (1)

Publication Number Publication Date
DE102018202497A1 true DE102018202497A1 (de) 2018-08-23

Family

ID=63045872

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102018202497.9A Pending DE102018202497A1 (de) 2017-02-19 2018-02-19 Technologien für optimiertes Maschinenlerntraining

Country Status (3)

Country Link
US (1) US10963783B2 (de)
CN (1) CN108460460A (de)
DE (1) DE102018202497A1 (de)

Cited By (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11139060B2 (en) 2019-10-03 2021-10-05 Rom Technologies, Inc. Method and system for creating an immersive enhanced reality-driven exercise experience for a user
US11264123B2 (en) 2019-10-03 2022-03-01 Rom Technologies, Inc. Method and system to analytically optimize telehealth practice-based billing processes and revenue while enabling regulatory compliance
US11270795B2 (en) 2019-10-03 2022-03-08 Rom Technologies, Inc. Method and system for enabling physician-smart virtual conference rooms for use in a telehealth context
US11282604B2 (en) 2019-10-03 2022-03-22 Rom Technologies, Inc. Method and system for use of telemedicine-enabled rehabilitative equipment for prediction of secondary disease
US11282599B2 (en) 2019-10-03 2022-03-22 Rom Technologies, Inc. System and method for use of telemedicine-enabled rehabilitative hardware and for encouragement of rehabilitative compliance through patient-based virtual shared sessions
US11282608B2 (en) 2019-10-03 2022-03-22 Rom Technologies, Inc. Method and system for using artificial intelligence and machine learning to provide recommendations to a healthcare provider in or near real-time during a telemedicine session
US11284797B2 (en) 2019-10-03 2022-03-29 Rom Technologies, Inc. Remote examination through augmented reality
US11295848B2 (en) 2019-10-03 2022-04-05 Rom Technologies, Inc. Method and system for using artificial intelligence and machine learning to create optimal treatment plans based on monetary value amount generated and/or patient outcome
US11309085B2 (en) 2019-10-03 2022-04-19 Rom Technologies, Inc. System and method to enable remote adjustment of a device during a telemedicine session
US11317975B2 (en) 2019-10-03 2022-05-03 Rom Technologies, Inc. Method and system for treating patients via telemedicine using sensor data from rehabilitation or exercise equipment
US11325005B2 (en) 2019-10-03 2022-05-10 Rom Technologies, Inc. Systems and methods for using machine learning to control an electromechanical device used for prehabilitation, rehabilitation, and/or exercise
US11328807B2 (en) 2019-10-03 2022-05-10 Rom Technologies, Inc. System and method for using artificial intelligence in telemedicine-enabled hardware to optimize rehabilitative routines capable of enabling remote rehabilitative compliance
US11337648B2 (en) 2020-05-18 2022-05-24 Rom Technologies, Inc. Method and system for using artificial intelligence to assign patients to cohorts and dynamically controlling a treatment apparatus based on the assignment during an adaptive telemedical session
US11348683B2 (en) 2019-10-03 2022-05-31 Rom Technologies, Inc. System and method for processing medical claims
US11404150B2 (en) 2019-10-03 2022-08-02 Rom Technologies, Inc. System and method for processing medical claims using biometric signatures
US11410768B2 (en) 2019-10-03 2022-08-09 Rom Technologies, Inc. Method and system for implementing dynamic treatment environments based on patient information
US11433276B2 (en) 2019-05-10 2022-09-06 Rehab2Fit Technologies, Inc. Method and system for using artificial intelligence to independently adjust resistance of pedals based on leg strength
US11445985B2 (en) 2019-10-03 2022-09-20 Rom Technologies, Inc. Augmented reality placement of goniometer or other sensors
US11471729B2 (en) 2019-03-11 2022-10-18 Rom Technologies, Inc. System, method and apparatus for a rehabilitation machine with a simulated flywheel
US11508482B2 (en) 2019-10-03 2022-11-22 Rom Technologies, Inc. Systems and methods for remotely-enabled identification of a user infection
US11596829B2 (en) 2019-03-11 2023-03-07 Rom Technologies, Inc. Control system for a rehabilitation and exercise electromechanical device
US11701548B2 (en) 2019-10-07 2023-07-18 Rom Technologies, Inc. Computer-implemented questionnaire for orthopedic treatment
US11756666B2 (en) 2019-10-03 2023-09-12 Rom Technologies, Inc. Systems and methods to enable communication detection between devices and performance of a preventative action
US11801423B2 (en) 2019-05-10 2023-10-31 Rehab2Fit Technologies, Inc. Method and system for using artificial intelligence to interact with a user of an exercise device during an exercise session
US11826613B2 (en) 2019-10-21 2023-11-28 Rom Technologies, Inc. Persuasive motivation for orthopedic treatment
US11830601B2 (en) 2019-10-03 2023-11-28 Rom Technologies, Inc. System and method for facilitating cardiac rehabilitation among eligible users
US11887717B2 (en) 2019-10-03 2024-01-30 Rom Technologies, Inc. System and method for using AI, machine learning and telemedicine to perform pulmonary rehabilitation via an electromechanical machine
US11904207B2 (en) 2019-05-10 2024-02-20 Rehab2Fit Technologies, Inc. Method and system for using artificial intelligence to present a user interface representing a user's progress in various domains
US11915816B2 (en) 2019-10-03 2024-02-27 Rom Technologies, Inc. Systems and methods of using artificial intelligence and machine learning in a telemedical environment to predict user disease states
US11915815B2 (en) 2019-10-03 2024-02-27 Rom Technologies, Inc. System and method for using artificial intelligence and machine learning and generic risk factors to improve cardiovascular health such that the need for additional cardiac interventions is mitigated
US11923065B2 (en) 2019-10-03 2024-03-05 Rom Technologies, Inc. Systems and methods for using artificial intelligence and machine learning to detect abnormal heart rhythms of a user performing a treatment plan with an electromechanical machine
US11923057B2 (en) 2019-10-03 2024-03-05 Rom Technologies, Inc. Method and system using artificial intelligence to monitor user characteristics during a telemedicine session
US11942205B2 (en) 2019-10-03 2024-03-26 Rom Technologies, Inc. Method and system for using virtual avatars associated with medical professionals during exercise sessions
US11955218B2 (en) 2019-10-03 2024-04-09 Rom Technologies, Inc. System and method for use of telemedicine-enabled rehabilitative hardware and for encouraging rehabilitative compliance through patient-based virtual shared sessions with patient-enabled mutual encouragement across simulated social networks
US11950861B2 (en) 2019-10-03 2024-04-09 Rom Technologies, Inc. Telemedicine for orthopedic treatment
US11955220B2 (en) 2019-10-03 2024-04-09 Rom Technologies, Inc. System and method for using AI/ML and telemedicine for invasive surgical treatment to determine a cardiac treatment plan that uses an electromechanical machine
US11955223B2 (en) 2019-10-03 2024-04-09 Rom Technologies, Inc. System and method for using artificial intelligence and machine learning to provide an enhanced user interface presenting data pertaining to cardiac health, bariatric health, pulmonary health, and/or cardio-oncologic health for the purpose of performing preventative actions
US11955221B2 (en) 2019-10-03 2024-04-09 Rom Technologies, Inc. System and method for using AI/ML to generate treatment plans to stimulate preferred angiogenesis
US11955222B2 (en) 2019-10-03 2024-04-09 Rom Technologies, Inc. System and method for determining, based on advanced metrics of actual performance of an electromechanical machine, medical procedure eligibility in order to ascertain survivability rates and measures of quality-of-life criteria
US11961603B2 (en) 2019-10-03 2024-04-16 Rom Technologies, Inc. System and method for using AI ML and telemedicine to perform bariatric rehabilitation via an electromechanical machine
US11957960B2 (en) 2019-05-10 2024-04-16 Rehab2Fit Technologies Inc. Method and system for using artificial intelligence to adjust pedal resistance

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117313789A (zh) * 2017-04-12 2023-12-29 渊慧科技有限公司 使用神经网络的黑盒优化
WO2020033645A1 (en) * 2018-08-09 2020-02-13 D5Ai Llc Companion analysis network in deep learning
EP3654114A1 (de) * 2018-11-16 2020-05-20 Maschinenfabrik Rieter AG Parametermanager, zentrale vorrichtung und verfahren zur anpassung von betriebsparametern in einer textilmaschine
CN109656145B (zh) * 2018-12-27 2022-08-02 美智纵横科技有限责任公司 电器及其控制方法和控制系统、服务器、电器控制装置
JP2020107012A (ja) * 2018-12-27 2020-07-09 ルネサスエレクトロニクス株式会社 演算処理装置および機械学習方法
US10860236B2 (en) * 2019-05-03 2020-12-08 EMC IP Holding Company LLC Method and system for proactive data migration across tiered storage
JP7202260B2 (ja) * 2019-06-07 2023-01-11 株式会社日立製作所 ハイパーパラメータ管理装置、ハイパーパラメータ管理システム及びハイパーパラメータ管理方法
CN110378464B (zh) * 2019-06-27 2021-11-26 苏州浪潮智能科技有限公司 人工智能平台的配置参数的管理方法和装置
US11556810B2 (en) 2019-07-11 2023-01-17 International Business Machines Corporation Estimating feasibility and effort for a machine learning solution
WO2021037869A1 (en) 2019-08-28 2021-03-04 Ventana Medical Systems, Inc. Assessing antigen retrieval and target retrieval progression quantitation with vibrational spectroscopy
CN114341989A (zh) 2019-08-28 2022-04-12 文塔纳医疗系统公司 使用振动光谱法评估样本固定持续时间和质量的系统和方法
JP2022546430A (ja) 2019-08-28 2022-11-04 ベンタナ メディカル システムズ, インコーポレイテッド 振動分光法によるバイオマーカー発現の無標識評価
US11669780B2 (en) 2019-11-06 2023-06-06 International Business Machines Corporation Asynchronous multiple scheme meta learning
US11631030B2 (en) * 2020-02-11 2023-04-18 International Business Machines Corporation Learning with moment estimation using different time constants
CN111401226B (zh) * 2020-03-13 2022-11-01 电子科技大学 一种辐射源快速识别方法
CN111753964A (zh) * 2020-06-29 2020-10-09 北京百度网讯科技有限公司 神经网络的训练方法和装置
CN111767989A (zh) * 2020-06-29 2020-10-13 北京百度网讯科技有限公司 神经网络的训练方法和装置
US11669755B2 (en) * 2020-07-06 2023-06-06 Adobe Inc. Detecting cognitive biases in interactions with analytics data
US11592984B2 (en) 2020-09-11 2023-02-28 Seagate Technology Llc Onboard machine learning for storage device

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9601109B2 (en) * 2013-12-06 2017-03-21 International Business Machines Corporation Systems and methods for accelerating hessian-free optimization for deep neural networks by implicit preconditioning and sampling
US10783900B2 (en) * 2014-10-03 2020-09-22 Google Llc Convolutional, long short-term memory, fully connected deep neural networks
GB2532075A (en) * 2014-11-10 2016-05-11 Lego As System and method for toy recognition and detection based on convolutional neural networks
US10133729B2 (en) * 2015-08-28 2018-11-20 Microsoft Technology Licensing, Llc Semantically-relevant discovery of solutions
US20170091615A1 (en) * 2015-09-28 2017-03-30 Siemens Aktiengesellschaft System and method for predicting power plant operational parameters utilizing artificial neural network deep learning methodologies
US10572800B2 (en) * 2016-02-05 2020-02-25 Nec Corporation Accelerating deep neural network training with inconsistent stochastic gradient descent
CN117829216A (zh) * 2016-05-20 2024-04-05 渊慧科技有限公司 渐进式神经网络
US10417566B2 (en) * 2016-05-22 2019-09-17 Microsoft Technology Licensing, Llc Self-learning technique for training a PDA component and a simulated user component
US9807037B1 (en) * 2016-07-08 2017-10-31 Asapp, Inc. Automatically suggesting completions of text
US10621486B2 (en) * 2016-08-12 2020-04-14 Beijing Deephi Intelligent Technology Co., Ltd. Method for optimizing an artificial neural network (ANN)

Cited By (46)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11904202B2 (en) 2019-03-11 2024-02-20 Rom Technolgies, Inc. Monitoring joint extension and flexion using a sensor device securable to an upper and lower limb
US11596829B2 (en) 2019-03-11 2023-03-07 Rom Technologies, Inc. Control system for a rehabilitation and exercise electromechanical device
US11541274B2 (en) 2019-03-11 2023-01-03 Rom Technologies, Inc. System, method and apparatus for electrically actuated pedal for an exercise or rehabilitation machine
US11471729B2 (en) 2019-03-11 2022-10-18 Rom Technologies, Inc. System, method and apparatus for a rehabilitation machine with a simulated flywheel
US11433276B2 (en) 2019-05-10 2022-09-06 Rehab2Fit Technologies, Inc. Method and system for using artificial intelligence to independently adjust resistance of pedals based on leg strength
US11957960B2 (en) 2019-05-10 2024-04-16 Rehab2Fit Technologies Inc. Method and system for using artificial intelligence to adjust pedal resistance
US11904207B2 (en) 2019-05-10 2024-02-20 Rehab2Fit Technologies, Inc. Method and system for using artificial intelligence to present a user interface representing a user's progress in various domains
US11801423B2 (en) 2019-05-10 2023-10-31 Rehab2Fit Technologies, Inc. Method and system for using artificial intelligence to interact with a user of an exercise device during an exercise session
US11328807B2 (en) 2019-10-03 2022-05-10 Rom Technologies, Inc. System and method for using artificial intelligence in telemedicine-enabled hardware to optimize rehabilitative routines capable of enabling remote rehabilitative compliance
US11942205B2 (en) 2019-10-03 2024-03-26 Rom Technologies, Inc. Method and system for using virtual avatars associated with medical professionals during exercise sessions
US11325005B2 (en) 2019-10-03 2022-05-10 Rom Technologies, Inc. Systems and methods for using machine learning to control an electromechanical device used for prehabilitation, rehabilitation, and/or exercise
US11139060B2 (en) 2019-10-03 2021-10-05 Rom Technologies, Inc. Method and system for creating an immersive enhanced reality-driven exercise experience for a user
US11978559B2 (en) 2019-10-03 2024-05-07 Rom Technologies, Inc. Systems and methods for remotely-enabled identification of a user infection
US11348683B2 (en) 2019-10-03 2022-05-31 Rom Technologies, Inc. System and method for processing medical claims
US11404150B2 (en) 2019-10-03 2022-08-02 Rom Technologies, Inc. System and method for processing medical claims using biometric signatures
US11410768B2 (en) 2019-10-03 2022-08-09 Rom Technologies, Inc. Method and system for implementing dynamic treatment environments based on patient information
US11309085B2 (en) 2019-10-03 2022-04-19 Rom Technologies, Inc. System and method to enable remote adjustment of a device during a telemedicine session
US11445985B2 (en) 2019-10-03 2022-09-20 Rom Technologies, Inc. Augmented reality placement of goniometer or other sensors
US11295848B2 (en) 2019-10-03 2022-04-05 Rom Technologies, Inc. Method and system for using artificial intelligence and machine learning to create optimal treatment plans based on monetary value amount generated and/or patient outcome
US11508482B2 (en) 2019-10-03 2022-11-22 Rom Technologies, Inc. Systems and methods for remotely-enabled identification of a user infection
US11515021B2 (en) 2019-10-03 2022-11-29 Rom Technologies, Inc. Method and system to analytically optimize telehealth practice-based billing processes and revenue while enabling regulatory compliance
US11515028B2 (en) 2019-10-03 2022-11-29 Rom Technologies, Inc. Method and system for using artificial intelligence and machine learning to create optimal treatment plans based on monetary value amount generated and/or patient outcome
US11284797B2 (en) 2019-10-03 2022-03-29 Rom Technologies, Inc. Remote examination through augmented reality
US11282608B2 (en) 2019-10-03 2022-03-22 Rom Technologies, Inc. Method and system for using artificial intelligence and machine learning to provide recommendations to a healthcare provider in or near real-time during a telemedicine session
US11264123B2 (en) 2019-10-03 2022-03-01 Rom Technologies, Inc. Method and system to analytically optimize telehealth practice-based billing processes and revenue while enabling regulatory compliance
US11756666B2 (en) 2019-10-03 2023-09-12 Rom Technologies, Inc. Systems and methods to enable communication detection between devices and performance of a preventative action
US11282599B2 (en) 2019-10-03 2022-03-22 Rom Technologies, Inc. System and method for use of telemedicine-enabled rehabilitative hardware and for encouragement of rehabilitative compliance through patient-based virtual shared sessions
US11961603B2 (en) 2019-10-03 2024-04-16 Rom Technologies, Inc. System and method for using AI ML and telemedicine to perform bariatric rehabilitation via an electromechanical machine
US11830601B2 (en) 2019-10-03 2023-11-28 Rom Technologies, Inc. System and method for facilitating cardiac rehabilitation among eligible users
US11887717B2 (en) 2019-10-03 2024-01-30 Rom Technologies, Inc. System and method for using AI, machine learning and telemedicine to perform pulmonary rehabilitation via an electromechanical machine
US11282604B2 (en) 2019-10-03 2022-03-22 Rom Technologies, Inc. Method and system for use of telemedicine-enabled rehabilitative equipment for prediction of secondary disease
US11270795B2 (en) 2019-10-03 2022-03-08 Rom Technologies, Inc. Method and system for enabling physician-smart virtual conference rooms for use in a telehealth context
US11915816B2 (en) 2019-10-03 2024-02-27 Rom Technologies, Inc. Systems and methods of using artificial intelligence and machine learning in a telemedical environment to predict user disease states
US11915815B2 (en) 2019-10-03 2024-02-27 Rom Technologies, Inc. System and method for using artificial intelligence and machine learning and generic risk factors to improve cardiovascular health such that the need for additional cardiac interventions is mitigated
US11923065B2 (en) 2019-10-03 2024-03-05 Rom Technologies, Inc. Systems and methods for using artificial intelligence and machine learning to detect abnormal heart rhythms of a user performing a treatment plan with an electromechanical machine
US11923057B2 (en) 2019-10-03 2024-03-05 Rom Technologies, Inc. Method and system using artificial intelligence to monitor user characteristics during a telemedicine session
US11317975B2 (en) 2019-10-03 2022-05-03 Rom Technologies, Inc. Method and system for treating patients via telemedicine using sensor data from rehabilitation or exercise equipment
US11955218B2 (en) 2019-10-03 2024-04-09 Rom Technologies, Inc. System and method for use of telemedicine-enabled rehabilitative hardware and for encouraging rehabilitative compliance through patient-based virtual shared sessions with patient-enabled mutual encouragement across simulated social networks
US11950861B2 (en) 2019-10-03 2024-04-09 Rom Technologies, Inc. Telemedicine for orthopedic treatment
US11955220B2 (en) 2019-10-03 2024-04-09 Rom Technologies, Inc. System and method for using AI/ML and telemedicine for invasive surgical treatment to determine a cardiac treatment plan that uses an electromechanical machine
US11955223B2 (en) 2019-10-03 2024-04-09 Rom Technologies, Inc. System and method for using artificial intelligence and machine learning to provide an enhanced user interface presenting data pertaining to cardiac health, bariatric health, pulmonary health, and/or cardio-oncologic health for the purpose of performing preventative actions
US11955221B2 (en) 2019-10-03 2024-04-09 Rom Technologies, Inc. System and method for using AI/ML to generate treatment plans to stimulate preferred angiogenesis
US11955222B2 (en) 2019-10-03 2024-04-09 Rom Technologies, Inc. System and method for determining, based on advanced metrics of actual performance of an electromechanical machine, medical procedure eligibility in order to ascertain survivability rates and measures of quality-of-life criteria
US11701548B2 (en) 2019-10-07 2023-07-18 Rom Technologies, Inc. Computer-implemented questionnaire for orthopedic treatment
US11826613B2 (en) 2019-10-21 2023-11-28 Rom Technologies, Inc. Persuasive motivation for orthopedic treatment
US11337648B2 (en) 2020-05-18 2022-05-24 Rom Technologies, Inc. Method and system for using artificial intelligence to assign patients to cohorts and dynamically controlling a treatment apparatus based on the assignment during an adaptive telemedical session

Also Published As

Publication number Publication date
US10963783B2 (en) 2021-03-30
US20180240010A1 (en) 2018-08-23
CN108460460A (zh) 2018-08-28

Similar Documents

Publication Publication Date Title
DE102018202497A1 (de) Technologien für optimiertes Maschinenlerntraining
US10810491B1 (en) Real-time visualization of machine learning models
DE202017007641U1 (de) Training von maschinellen Lernmodellen auf mehrere maschinelle Lernaufgaben
DE202017007517U1 (de) Aggregatmerkmale für maschinelles Lernen
DE112018005227T5 (de) Merkmalsextraktion mithilfe von multi-task-lernen
DE112016005536T5 (de) Bestimmen von reihenfolgen einer ausführung eines neuronalen netzes
DE112019002737T5 (de) Computersystemvorhersagemodelle mit maschinellem lernen
DE112020000584T5 (de) Verfahren für unüberwachte bild-zu-bild-übersetzung mit wenigen aufnahmen
CN110019151A (zh) 数据库性能调整方法、装置、设备、系统及存储介质
DE102019122935A1 (de) Verfahren und vorrichtungen zum zuweisen einer arbeitslast an einen beschleuniger unter verwendung von maschinenlernen
DE102020108374A1 (de) Verfahren und vorrichtung zur laufzeitmehrfachplanung von software, die in einem heterogenen system ausgeführt wird
DE202017107393U1 (de) Vorhersagen eines Suchmaschinen-Einordnungssignalwerts
DE112019005048T5 (de) Hyperparameteroptimierungsverfahren, -vorrichtung und -programm
Gao et al. Post: Device placement with cross-entropy minimization and proximal policy optimization
DE112021001566T5 (de) Ermitteln von abhängigkeiten multivariater zeitreihendaten
DE112013000966T5 (de) Vorrichtung, Programm und Verfahren zum Clustern einer Vielzahl von Dokumenten
DE112020004031T5 (de) Systembezogene selektive quantisierung für in der leistungsfähigkeit optimiertes verteiltes deep learning
DE102020110655A1 (de) Verfahren und vorrichtung zum verbessern der verwendung eines heterogenen systems, das software ausführt
DE112020002684T5 (de) Ein Mehrfachverfahrenssystem für optimale Vorhersagemodellauswahl
DE202020101664U1 (de) Rechnergestützte Graphenoptimierung
DE212021000487U1 (de) Aufgabenplanung zur Laufzeit durch Nachahmungslernen für heterogene Systeme mit vielen Kernen
DE112021005910T5 (de) Schnellere abdeckungskonvergenz mit automatischer testparameterabstimmung bei eingeschränkter zufallsverifikation
DE112016007411T5 (de) Fuzzy-eingabe für autoencoder
DE102019113874A1 (de) Hochpräzises niedrigbit-convolutional-neural-network
DE112019006317T5 (de) Implementierung eines mehrschichtigen neuronalen netzwerks unter verwendung einer einzigen physikalischen schicht aus analogen neuronen