DE112020000227T5 - Maschinelles lernen eines computermodells auf grundlage von korrelationenvon trainingsdaten mit leistungstrends - Google Patents

Maschinelles lernen eines computermodells auf grundlage von korrelationenvon trainingsdaten mit leistungstrends Download PDF

Info

Publication number
DE112020000227T5
DE112020000227T5 DE112020000227.6T DE112020000227T DE112020000227T5 DE 112020000227 T5 DE112020000227 T5 DE 112020000227T5 DE 112020000227 T DE112020000227 T DE 112020000227T DE 112020000227 T5 DE112020000227 T5 DE 112020000227T5
Authority
DE
Germany
Prior art keywords
computer
model
training
implemented
computerized
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
DE112020000227.6T
Other languages
English (en)
Inventor
Hanqing CHEN
Abhinandan KELGERE RAMESH
Ramani Routray
Robert Ip
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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE112020000227T5 publication Critical patent/DE112020000227T5/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/15Correlation function computation including computation of convolution operations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • G06F18/2148Generating training patterns; Bootstrap methods, e.g. bagging or boosting characterised by the process organisation or structure, e.g. boosting cascade
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • 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
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Computational Linguistics (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Computational Mathematics (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Health & Medical Sciences (AREA)
  • Algebra (AREA)
  • Debugging And Monitoring (AREA)
  • Feedback Control In General (AREA)

Abstract

Bereitgestellt werden Mechanismen zum Trainieren eines computerrealisierten Modells. Die Mechanismen führen mehrere Trainingsinstanzen des computerrealisierten Modells durch, wobei jede Trainingsinstanz des computerrealisierten Modells ein Training des computerrealisierten Modells unter Verwendung eines unterschiedlichen Trainingsdatensatzes aufweist, um eine unterschiedliche Instanz eines trainierten computerrealisierten Modells zu erzeugen. Die Mechanismen erzeugen nach jeder Trainingsinstanz computerrealisierte Modellergebnisse, indem die entsprechende Instanz des trainierten computerrealisierten Modells ausgeführt wird. Die Mechanismen zeichnen Unterschiede bei den Trainingsinstanzen des computerrealisierten Modells in Zusammenhang mit entsprechenden Bezeichnern der Instanzen des trainierten computerrealisierten Modells und entsprechenden computerrealisierten Modellergebnissen auf. Die Mechanismen analysieren die aufgezeichneten Unterschiede und die entsprechenden computerrealisierten Modellergebnisse und erzeugen eine Ausgabe, die eine Korrelation zwischen aufgezeichneten Unterschieden und entsprechenden computerrealisierten Modellergebnissen angibt.

Description

  • HINTERGRUND
  • Die vorliegende Erfindung bezieht sich im Allgemeinen auf eine verbesserte Datenverarbeitungsvorrichtung und ein verbessertes Datenverarbeitungsverfahren und im Besonderen auf Mechanismen zum Durchführen eines maschinellen Lernens eines Computermodells auf Grundlage von Korrelationen von Trainingsdaten mit Leistungstrends.
  • Ein Computermodell oder eine Computersimulation ist ein Computerprogramm, das entworfen wird, um zu simulieren, was in einer Situation geschehen könnte bzw. geschehen ist, indem ein Objekt oder System in der physischen Welt simuliert wird, wobei dieses Objekt oder System verschiedenen Arten zugehörig sein kann, wie z.B. biologischen Objekten/Systemen, Computerobjekten/-systemen, Umweltobjekten/-systemen, mechanischen Objekten/-systemen oder einem beliebigen anderen Objekt oder System, das in der physischen Welt vorhanden sein kann. Computermodelle oder Computersimulationen werden auf vielerlei Arten verwendet, z.B. in der Astronomie, der Ökonomie und in verschiedenen Bereichen der Wissenschaft wie z.B. der Physik und Biologie. Viele moderne Computermodelle oder Computersimulationen verwenden Trainingsoperationen auf Grundlage von Ansätzen eines maschinellen Lernens, um die Computermodelle oder Computersimulationen zu trainieren und das Verhalten des Objekts oder Systems korrekt vorherzusagen.
  • Maschinelles Lernen (ML) ist die wissenschaftliche Untersuchung von Algorithmen und Statistikmodellen, die Computersysteme verwenden, um ihre Leistung bei einer bestimmten Aufgabe immer weiter zu verbessern. ML-Algorithmen erzeugen ein mathematisches Modell von Beispieldaten, die auch als „Trainingsdaten“ bezeichnet werden, um Vorhersagen oder Entscheidungen zu treffen, ohne für die Durchführung der Aufgabe explizit programmiert zu sein. ML-Algorithmen werden bei den Anwendungen des Filterns von eMails, der Erkennung von Eindringlingen in Netzwerke und der Computer Vision verwendet, wo es nicht praktikabel ist, einen Algorithmus mit spezifischen Anweisungen zum Durchführen der Aufgabe zu entwickeln. Maschinelles Lernen ist eng mit der rechnergestützten Statistik verwandt, die den Schwerpunkt auf Vorhersagen unter Verwendung von Computern legt. Data Mining ist ein Fachgebiet innerhalb des maschinellen Lernens und konzentriert sich auf die explorative Datenanalyse anhand von unüberwachtem Lernen. Bei seiner Anwendung auf verschiedene Geschäftsprobleme wird maschinelles Lernen auch als prädiktive Analyse bezeichnet.
  • KURZDARSTELLUNG
  • Diese Kurzdarstellung wird bereitgestellt, um eine Auswahl von Konzepten in einer vereinfachten Form einzuführen, die in der ausführlichen Beschreibung hier näher beschrieben werden. Diese Kurzdarstellung ist nicht dazu gedacht, Schlüsselfaktoren oder wesentliche Merkmale des beanspruchten Gegenstands zu identifizieren, noch ist sie dazu gedacht, den inhaltlichen Umfang des beanspruchten Gegenstands zu beschränken.
  • Gemäß einem Aspekt wird ein Verfahren zum Trainieren eines computerrealisierten Modells in einem Datenverarbeitungssystem bereitgestellt. Das Verfahren weist ein Durchführen von mehreren Trainingsinstanzen des computerrealisierten Modells durch das Datenverarbeitungssystem auf, wobei jede Trainingsinstanz des computerrealisierten Modells ein Training des computerrealisierten Modells unter Verwendung eines unterschiedlichen Trainingsdatensatzes aufweist, um eine unterschiedliche Instanz eines trainierten computerrealisierten Modells zu erzeugen. Das Verfahren weist ferner ein Erzeugen von computerrealisierten Modellergebnissen nach jeder Trainingsinstanz auf, indem die entsprechende Instanz des trainierten computerrealisierten Modells ausgeführt wird. Zusätzlich weist das Verfahren ein Aufzeichnen von Unterschieden bei den Trainingsinstanzen des computerrealisierten Modells in Zusammenhang mit entsprechenden Bezeichnern der Instanzen des trainierten computerrealisierten Modells und entsprechenden computerrealisierten Modellergebnissen auf. Des Weiteren weist das Verfahren ein Analysieren der aufgezeichneten Unterschiede und der entsprechenden computerrealisierten Modellergebnisse durch das Datenverarbeitungssystem sowie ein Erzeugen einer Ausgabe, die eine Korrelation zwischen aufgezeichneten Unterschieden und entsprechenden computerrealisierten Modellergebnissen angibt, durch das Datenverarbeitungssystem auf.
  • Bei einer veranschaulichenden Ausführungsform weist ein Durchführen von mehreren Trainingsinstanzen des computerrealisierten Modells ein Ausführen einer ersten Trainingsoperation für das computerrealisierte Modell unter Verwendung einer ersten Version von Trainingsdaten und eines ersten Satzes von einem oder mehreren Hyperparametern, um eine erste trainierte Instanz des computerrealisierten Modells zu erzeugen, durch das Datenverarbeitungssystem sowie ein Ausführen einer zweiten Trainingsoperation für das computerrealisierte Modell unter Verwendung einer zweiten Version der Trainingsdaten und eines zweiten Satzes von einem oder mehreren Hyperparametern, um eine zweite trainierte Instanz des computerrealisierten Modells zu erzeugen, durch das Datenverarbeitungssystem auf. Indem verschiedene Instanzen des computerrealisierten Modells mit verschiedenen Versionen von Trainingsdaten und Hyperparametern trainiert werden, sind die veranschaulichenden Ausführungsformen in der Lage, Trends bei der Leistung von Computermodellen zu identifizieren und mit bestimmten Trainingsdatensätzen und Hyperparameter-Einstellungen und zu korrelieren.
  • Bei manchen veranschaulichenden Ausführungsformen weist ein Aufzeichnen von Veränderungen an den Trainingsinstanzen des computerrealisierten Modells ein Erzeugen einer ersten Erfassungsdatenstruktur, die einen ersten Bezeichner der ersten Trainingsoperation mit der ersten Version von Trainingsdaten und dem ersten Satz von einem oder mehreren Hyperparametern korreliert, durch das Datenverarbeitungssystem sowie ein Erzeugen einer zweiten Erfassungsdatenstruktur, die einen zweiten Bezeichner der zweiten Trainingsoperation mit der zweiten Version von Trainingsdaten und dem zweiten Satz von einem oder mehreren Hyperparametern korreliert, durch das Datenverarbeitungssystem auf. Bei manchen veranschaulichenden Ausführungsformen weist ein Erzeugen der computerrealisierten Modellergebnisse ein Erzeugen von ersten Modellergebnissen aus einem Ausführen der ersten Instanz des computerrealisierten Modells sowie ein Erzeugen von zweiten Modellergebnissen aus einem Ausführen der zweiten Instanz des computerrealisierten Modells auf, wobei ein Analysieren der aufgezeichneten Unterschiede und der entsprechenden computerrealisierten Modellergebnisse ein Durchführen von Analysen für die erste Erfassungsdatenstruktur, die zweite Erfassungsdatenstruktur, die ersten Modellergebnisse und die zweiten Modellergebnisse durch das Datenverarbeitungssystem aufweist, um Unterschiede zwischen der ersten Trainingsoperation und der zweiten Trainingsoperation zu identifizieren, die mit Unterschieden zwischen den ersten Modellergebnissen und den zweiten Modellergebnissen korrelieren. Auch diese Operationen dienen dazu, Unterschiede beim Training mit Unterschieden bei Modellergebnissen zu korrelieren, so dass eine geeignete Auswahl von Trainingsmerkmalen identifiziert werden kann, um eine gewünschte Leistung zu erreichen.
  • Bei manchen veranschaulichenden Ausführungsformen ist die zweite Version von Trainingsdaten eine modifizierte Version der ersten Version von Trainingsdaten. Auf diese Weise kann der Mechanismus der veranschaulichenden Ausführungsformen ermitteln, welche Veränderungen an der ersten Version von Trainingsdaten die Leistung des Computermodells verbessern oder verringern.
  • Bei manchen veranschaulichenden Ausführungsformen weist ein Erzeugen der Ausgabe des Weiteren ein Erzeugen von einer oder mehreren Empfehlungen zum Modifizieren eines Trainings des computerrealisierten Modells auf, um Trainingsdaten zu verbessern, indem auf Grundlage der aufgezeichneten Unterschiede und der entsprechenden computerrealisierten Modellergebnisse identifiziert wird, welche Veränderungen die Genauigkeit des computerrealisierten Modells erhöhen. Darüber hinaus werden bei manchen veranschaulichenden Ausführungsformen Computeroperationen automatisch ausgeführt, um die erzeugten einen oder mehreren Empfehlungen zu realisieren, wobei die Computeroperationen mindestens eines aufweisen eines Erhaltens von neuen Trainingsdaten, die Entitäten aufweisen, die in der einen oder den mehreren Empfehlungen als Entitäten angegeben werden, die ein Training des computerrealisierten Modells verbessern, eines Entfernens von Entitäten, die in der einen oder den mehreren Empfehlungen als Entitäten angegeben werden, die ein Training des computerrealisierten Modells verschlechtern, eines Modifizierens von mindestens einem Hyperparameter des computerrealisierten Modells oder eines Modifizierens eines Computermodell-Trainingswerkzeugs, das verwendet wird, um ein Training des computerrealisierten Modells durchzuführen. Auf diese Weise kann das Training eines Computermodells auf Grundlage der Trendanalyse, die durch die veranschaulichenden Ausführungsformen durchgeführt wird, automatisch verbessert werden.
  • Bei manchen veranschaulichenden Ausführungsformen werden Instanzen von Trainingsdaten, die zum Trainieren des computerrealisierten Modells verwendet werden, erfasst, so dass zum Trainieren des computerrealisierten Modells verwendete Trainingsdaten auf eine frühere Version von Trainingsdaten zurückgesetzt werden können. Wenn eine Veränderung beim Training eines Computermodells zu unerwünschten Leistungsveränderungen führt, können mit diesen Mechanismen somit die an dem Training vorgenommenen Veränderungen zurückgenommen werden, um ein optimales Training des Computermodells sicherzustellen und eine gewünschte Leistung zu erreichen.
  • Bei manchen veranschaulichenden Ausführungsformen weist die Analyse ein Durchführen einer Trendanalyse für die aufgezeichneten Unterschiede und die entsprechenden computerrealisierten Modellergebnisse auf. Diese Trendanalyse ermöglicht die Ermittlung von Projektionen von Veränderungen von Trainingsdaten und entsprechenden Veränderungen bei der Leistung, um dadurch Maßnahmen zum Modifizieren des Trainings eines Computermodells zu steuern und eine gewünschte oder optimale Leistung zu erreichen.
  • Bei manchen veranschaulichenden Ausführungsformen weisen die mehreren Trainingsinstanzen des computerrealisierten Modells ein Training von verschiedenen Kopien des computerrealisierten Modells durch verschiedene Entwickler des computerrealisierten Modells an einem oder mehreren Standorten auf, um verschiedene Teilsätze von Instanzen des trainierten computerrealisierten Modells zu erzeugen, und das Verfahren wird dabei über alle Teilsätze von Instanzen des trainierten realisierten Modells von den verschiedenen Entwicklern des computerrealisierten Modells hinweg durchgeführt. Mit den Mechanismen der veranschaulichenden Ausführungsformen kann somit das einzelne Training von Instanzen eines Computermodells, das durch mehrere verschiedene Modellentwickler durchgeführt wird, verwendet werden, um anderen Entwicklern dabei zu helfen, aus ihren eigenen Instanzen des Computermodells eine höhere Leistung zu erhalten.
  • Bei anderen veranschaulichenden Ausführungsformen wird ein Computerprogrammprodukt bereitgestellt, das ein computernutzbares oder -lesbares Medium mit einem computerlesbaren Programm aufweist. Wenn das computerlesbare Programm in einer Datenverarbeitungseinheit ausgeführt wird, veranlasst es die Datenverarbeitungseinheit, verschiedene Operationen sowie Kombinationen von Operationen durchzuführen, die weiter oben in Bezug auf eine oder mehrere der veranschaulichenden Ausführungsformen des Verfahrens dargelegt werden.
  • Bei einer weiteren veranschaulichenden Ausführungsform wird ein System/eine Vorrichtung bereitgestellt. Das System/die Vorrichtung kann einen oder mehrere Prozessoren und einen Arbeitsspeicher aufweisen, der mit dem einen oder den mehreren Prozessoren verbunden wird. Der Arbeitsspeicher kann Anweisungen aufweisen, die bei Ausführung durch den einen oder die mehreren Prozessoren den einen oder die mehreren Prozessoren veranlassen, verschiedene der Operationen sowie Kombinationen der Operationen durchzuführen, die weiter oben in Bezug auf die eine oder die mehreren veranschaulichenden Ausführungsformen des Verfahrens dargelegt werden.
  • Gemäß einem weiteren Aspekt wird ein Computerprogrammprodukt bereitgestellt, das ein computerlesbares Speichermedium mit einem darin gespeicherten computerlesbaren Programm aufweist, wobei das computerlesbare Programm bei Ausführung auf einem Datenverarbeitungssystem das Datenverarbeitungssystem veranlasst: mehrere Trainingsinstanzen des computerrealisierten Modells durchzuführen, wobei jede Trainingsinstanz des computerrealisierten Modells ein Training des computerrealisierten Modells unter Verwendung eines unterschiedlichen Trainingsdatensatzes aufweist, um eine unterschiedliche Instanz eines trainierten computerrealisierten Modells zu erzeugen; nach jeder Trainingsinstanz computerrealisierte Modellergebnisse zu erzeugen, indem die entsprechende Instanz des trainierten computerrealisierten Modells ausgeführt wird; Unterschiede in den Trainingsinstanzen des computerrealisierten Modells in Zusammenhang mit entsprechenden Bezeichnern der Instanzen des trainierten computerrealisierten Modells und entsprechenden computerrealisierten Modellergebnissen aufzuzeichnen; die aufgezeichneten Unterschiede und die entsprechenden computerrealisierten Modellergebnisse zu analysieren; und eine Ausgabe zu erzeugen, die eine Korrelation zwischen aufgezeichneten Unterschieden und entsprechenden computerrealisierten Modellergebnissen angibt.
  • Gemäß einem weiteren Aspekt wird eine Vorrichtung bereitgestellt, aufweisend: einen Prozessor; und einen mit dem Prozessor verbundenen Arbeitsspeicher, wobei der Arbeitsspeicher Anweisungen aufweist, die bei Ausführung durch den Prozessor den Prozessor veranlassen: mehrere Trainingsinstanzen des computerrealisierten Modells durchzuführen, wobei jede Trainingsinstanz des computerrealisierten Modells ein Training des computerrealisierten Modells unter Verwendung eines unterschiedlichen Trainingsdatensatzes aufweist, um eine unterschiedliche Instanz eines trainierten computerrealisierten Modells zu erzeugen; nach jeder Trainingsinstanz computerrealisierte Modellergebnisse zu erzeugen, indem die entsprechende Instanz des trainierten computerrealisierten Modells ausgeführt wird; Unterschiede in den Trainingsinstanzen des computerrealisierten Modells in Zusammenhang mit entsprechenden Bezeichnern der Instanzen eines trainierten computerrealisierten Modells und entsprechenden computerrealisierten Modellergebnissen aufzuzeichnen; die aufgezeichneten Unterschiede und die entsprechenden computerrealisierten Modellergebnisse zu analysieren; und eine Ausgabe zu erzeugen, die eine Korrelation zwischen aufgezeichneten Unterschieden und entsprechenden computerrealisierten Modellergebnissen angibt.
  • Diese und andere Merkmale und Vorzüge der hier offenbarten Lösung werden in der folgenden ausführlichen Beschreibung der Beispielausführungsformen der vorliegenden Erfindung beschrieben bzw. werden für den Fachmann hieraus ersichtlich.
  • Figurenliste
  • Bevorzugte Ausführungsformen der vorliegenden Erfindung werden nun lediglich beispielhaft und mit Blick auf die folgenden Zeichnungen beschrieben:
    • 1 ist ein Blockschaubild eines verteilten Datenverarbeitungssystems, in dem veranschaulichende Ausführungsformen der vorliegenden Erfindung realisiert werden;
    • 2 ist ein Blockschaubild eines Beispiel-Datenverarbeitungssystems, in dem veranschaulichende Ausführungsformen der vorliegenden Erfindung realisiert werden;
    • 3 ist ein Ablaufplan, der eine Beispieloperation eines Datenverarbeitungssystems zum Trainieren eines Computermodells gemäß einer veranschaulichenden Ausführungsform da rlegt;
    • 4 ist ein Beispielschema einer Dashboard-Darstellung von Trainingsinformationen gemäß einer veranschaulichenden Ausführungsform;
    • 5 ist ein Beispieldiagramm einer grafischen Darstellung von Trends des Trainings einer Kopie eines Computermodells gemäß einer veranschaulichenden Ausführungsform; und
    • 6 ist ein Beispielschema der tabellarischen Darstellung der Trainingsmodell- und Trainingsdatensatz-Merkmale gemäß einer veranschaulichenden Ausführungsform.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Die veranschaulichenden Ausführungsformen stellen Mechanismen zum Durchführen von maschinellem Lernen eines Computermodells auf Grundlage von Korrelationen von Trainingsdaten mit Leistungstrends bereit. Die vorliegende Lösung ist spezifisch auf eine Verbesserung von Computerwerkzeugen zum Trainieren von Computermodellen gerichtet, um dadurch die Leistung und Genauigkeit dieser Computermodelle auf Grundlage von Beobachtungen von Veränderungen von Trainingsdaten, Trainingswerkzeugen, Hyperparametern und dergleichen sowie die entsprechenden Trends bei der Leistung und Genauigkeit der Computermodelle auf Grundlage dieser Veränderungen zu verbessern. Auf diese Weise werden einem Training von Computermodellen Verbesserungen bereitgestellt, die wiederum zu einer verbesserten Leistung und Genauigkeit der Computermodelle führen.
  • Wie oben erwähnt, werden Computermodelle verwendet, um die Art und Weise, wie sich verschiedene Objekte oder Systeme als Reaktion auf bestimmte Reize verhalten, zu simulieren oder vorherzusagen oder um Analysen durchzuführen, um zu ermitteln, warum sich bestimmte Objekte oder Systeme auf die betreffende Art verhalten haben. Obwohl Computermodelle ein exzellentes Werkzeug zum Durchführen von Analysen und prädiktiven Modellierungen sind, ist ihre Leistung und Genauigkeit häufig von der Qualität des Trainings des Computermodells abhängig, die wiederum von den bestimmten Trainingsdaten abhängig ist, die zum Durchführen des Trainings verwendet werden.
  • Außerdem werden bei der modernen Computermodellierung solche Computermodelle häufig unter Verwendung einer ML-Trainingsoperation trainiert, bei der solche Trainingsdaten als eine Grundlage zum Modifizieren der Funktion des Computermodells verwendet werden, um die Leistung und Genauigkeit des Computermodells zu verbessern. Bei einer Art von ML-Ansatz, die mitunter auch als unüberwachtes maschinelles Lernen bezeichnet wird, verwendet das maschinelle Lernen somit Trainingsdaten, bei denen eine korrekte Ausgabe des Computermodells oder ein „Grundwissen“ a priori bekannt ist und die Basis bildet, mit der die tatsächliche Ausgabe des Computermodells verglichen wird, um zu ermitteln, wie gut das Computermodell funktioniert. Auf Grundlage des Unterschieds zwischen der Ausgabe des Computermodells und dem Grundwissen wird der Fehler des Computermodells ermittelt, und dem Computermodell zugehörige Betriebsparameter werden modifiziert, um diesen Fehler zu verringern. Dieser Prozess kann iterativ so lange durchgeführt werden, bis ermittelt wird, dass der Fehler bei oder unter einer zulässigen Toleranz liegt, z.B. einem Schwellenwert für einen Fehler oder Verlust in dem Modell.
  • Andere Arten des maschinellen Lernens, die mitunter auch als überwachtes maschinelles Lernen bezeichnet werden, beziehen Menschen wie z.B. Experten ein, die das Computermodell über die Genauigkeit oder Ungenauigkeit der von ihm erzeugten Ergebnisse und/oder über Modifikationen von Betriebsparametern informieren, die umzusetzen sind. So kann ein Experte (Subject Matter Expert, SME) zum Beispiel eine Ausgabe von einem Computermodell erhalten und von Hand Anpassungen der Betriebsparameter, Trainingsdaten oder dergleichen vornehmen und kann anschließend das Computermodell erneut ausführen, um festzustellen, ob eine Verbesserung der Leistung erreicht wird.
  • Dabei sollte klar sein, dass das Training dieser Computermodelle in hohem Maße von den verwendeten Trainingsdaten, den verwendeten Trainingswerkzeugen und den bestimmten Einstellungen der Betriebsparameter des Computermodells wie z.B. Hyperparametern des Computermodells abhängig ist, wobei es sich bei Hyperparametern um Betriebsparameter eines Computermodells handelt, die vor dem ML-Prozess festgelegt werden. Solche Hyperparameter werden oft auf Grundlage von Expertenwissen festgelegt und bleiben während eines ML-Trainingsprozesses unverändert.
  • Um zu versuchen, eine verbesserte Leistung und Genauigkeit von Computermodellen zu erhalten, können menschliche Entwickler, die mit dem Training des Computermodells befasst sind, Modifikationen an den Trainingsdaten, Trainingswerkzeugen, Hyperparametern und dergleichen vornehmen, damit das Modell nach Möglichkeit eine gewünschte Leistung oder Genauigkeit erreicht. Als Beispiel soll ein Szenario dienen, in dem ein menschlicher Entwickler ohne weitere Vorbereitung ein Computermodell trainiert und Erkenntnisse über dessen Betrieb gewinnt und Modifikationen an Trainingsdaten, Hyperparametern, Trainingswerkzeugen und dergleichen vornimmt, wobei dies möglicherweise mit Unterstützung von Experten erfolgt. Der Entwickler kann mehrere Werkzeuge und mehrere Arten von Hyperparametern verwenden und kann Trainingsdaten modifizieren, um verschiedene Ergebnisse zu erhalten. Während dieses Prozesses ermittelt der Entwickler, dass das Grundwissen fehlerhaft ist und erhält ein neues Grundwissen, d.h. eine neue Version der Trainingsdaten wird erhalten. Danach kehrt der Entwickler wieder zum Trainingsprozess zurück. Für jeden Trainingsdatensatz kann der Entwickler verschiedene Werkzeuge und verschiedene Hyperparameter anwenden und verschiedene Ergebnisse erhalten.
  • Ein Problem bei diesem Trainingsprozess besteht darin, die vorgenommenen Veränderungen zu erfassen und mit Unterschieden bei der Leistung und Genauigkeit des Computermodells zu korrelieren. Die Frage lautet also, wie der Entwickler die vorgenommenen Veränderungen und die Korrelation mit Veränderungen bei der Leistung und Genauigkeit des Computermodells verfolgt, um Anomalien, Trends usw. zu identifizieren und zu ermitteln, welche Veränderungen einer verbesserten oder verschlechterten Leistung und Genauigkeit des Computermodells entsprechen. Erschwert wird dieses Problem noch, wenn mehrere Instanzen desselben Computermodells auf verschiedene Entwickler verteilt werden, von denen jeder unabhängig solche Modifikationen und Trainings seiner eigenen, individuellen Instanzen des Computermodells durchführt.
  • Wenn ein Entwickler Veränderungen und Aktualisierungen beim Training eines Computermodells (im Folgenden einfach als „Modell“ bezeichnet) vornimmt, werden mit den Mechanismen der veranschaulichenden Ausführungsformen Hinzufügungen/Entfernungen/Modifikationen der Trainingsdaten, welche die Leistung und Genauigkeit des Computermodells beeinflussen, erfasst, z.B. welche Entitäten hinzugefügt wurden, welche Entitäten entfernt werden, welche Entitäten modifiziert werden. Analysen werden zusätzlich zu den erfassten Daten ausgeführt, um Trends bei den Trainingsdaten und bei der entsprechenden Leistung und Genauigkeit des Modells zu identifizieren. Dieser Prozess kann für wiederholte Trainingsdurchläufe mit dem Modell und für verschiedene Trainingsdatensätze, verschiedene Trainingswerkzeuge und verschiedene Hyperparameter-Einstellungen wiederholt werden. Zum Beispiel kann ein Entwickler das Computermodell täglich mit neuen Trainingsdaten ausführen und kann Aktualisierungen der Genauigkeiten des Computermodells erhalten, aus denen sich identifizierte Trends ergeben können, die mit den Veränderungen an den Trainingsdaten korreliert werden können.
  • Auf Grundlage der identifizierten Trends können die Mechanismen der veranschaulichenden Ausführungsformen Empfehlungen dazu erzeugen, wie die Trainingsdaten verbessert werden können, indem sie identifizieren, welche Veränderungen die Genauigkeit der Modelle verbessern, z.B. dass ein Hinzufügen von mehr Entitäten wie X die Genauigkeit des Modells verbessern wird. Solche Empfehlungen können dann zusammen mit Empfehlungen von Veränderungen, die nicht vorgenommen werden sollen, d.h. Veränderungen, die zu einer geringeren Genauigkeit oder Leistung des Modells geführt haben, an den Entwickler ausgegeben werden. Bei manchen veranschaulichenden Ausführungsformen können die durch die Mechanismen der veranschaulichenden Ausführungsformen erzeugten Empfehlungen verwendet werden, um automatisch nach anderen Trainingsdatensätzen in einem oder mehreren Trainingsdatensatz-Repositorys zu suchen, die Entitäten enthalten können, von denen ermittelt wird, dass sie die Genauigkeit und/oder Leistung des Computermodells verbessern. Bei manchen anderen Ausführungsformen können die automatisch identifizierten Trainingsdatensätze automatisch abgerufen und zum Trainieren des Computermodells verwendet werden. Dieser Prozess kann wiederholt werden, bis eine gewünschte Genauigkeit oder Leistung des Computermodells erreicht wird oder bis ermittelt wird, dass auf Grundlage der verfügbaren Trainingsdatensätze, Werkzeuge usw. keine weitere Verbesserung möglich ist.
  • Diese Erfassung und Korrelation zum Identifizieren von Trends, Anomalien usw. kann über verschiedene Computermodellinstanzen, verschiedene Entwickler und dergleichen hinweg durchgeführt werden. Somit kann ein erster Entwickler bei einem Kunden A unter Verwendung einer ersten Instanz des Computermodells seine eigenen, unabhängigen Veränderungen an Trainingsdatensätzen, an Betriebsparametern usw. vornehmen, und diese Informationen und Korrelationen mit der Leistung/Genauigkeit der ersten Computermodell-Instanz werden erfasst und an ein zentralisiertes Datenverarbeitungssystem gemeldet. Ein zweiter Entwickler bei einem Kunden B kann unter Verwendung einer zweiten Instanz des Computermodells seine eigenen, unabhängigen Veränderungen an Trainingsdatensätzen, an Betriebsparametern usw. vornehmen und diese Informationen und Korrelationen mit der Leistung/Genauigkeit der zweiten Computermodell-Instanz werden erfasst und an das zentralisierte Datenverarbeitungssystem gemeldet. Die Mechanismen der veranschaulichenden Ausführungsformen können Analysen aller gemeldeten Informationen sowohl für die erste als auch für die zweite Computermodell-Instanz durchführen und Trendinformationen erzeugen, die verwendet werden können, um Empfehlungen zum Verbessern der Leistung und Genauigkeit des Computermodells auszusprechen.
  • Bei manchen veranschaulichenden Ausführungsformen wird eine Versionserfassung für Trainingsdaten bereitgestellt, so dass bei Bedarf frühere Versionen von Trainingsdaten wiederhergestellt werden können. Das heißt, es wird eine Zuordnung der Trainingsdaten, die für eine Verwendung durch das Modell formatiert werden, zu den ursprünglich empfangenen Trainingsdaten beibehalten. Auf diese Weise können die ursprünglichen empfangenen Trainingsdaten mit den durch das Modell formatierten Trainingsdaten wiederhergestellt werden. Somit können die Mechanismen der veranschaulichenden Ausführungsformen eine Version von Trainingsdaten, die von einem Kunden erhalten wird, mit der Version von Daten korrelieren, die für eine Verarbeitung durch das Computermodell erzeugt wird, und können dem Kunden über das Erfassen des Versionsverlaufs Daten zurückgeben, so dass die frühere Version reproduziert werden kann.
  • Somit wird mit den Mechanismen der veranschaulichenden Ausführungsformen eine Computermethodik zum Trainieren eines computerrealisierten Modells bereitgestellt, wobei diese Computermethodik in einem Datenverarbeitungssystem realisiert wird, das spezifisch konfiguriert wird, um eine geordnete Kombination von computerspezifischen Operationen durchzuführen, um ein Computermodell zu trainieren und die an dem Training vorgenommenen Veränderungen zu erfassen sowie die an dem Training vorgenommenen Veränderungen mit Leistungs-/Genauigkeitskennzahlen zu korrelieren. Die Computermethodik stellt ferner computerspezifische Operationen bereit, die Trends in den erfassten Informationen identifizieren und die Analysen durchführen, um Empfehlungen zum Verbessern des Trainings des computerrealisierten Modells zu erzeugen und/oder die erzeugten Empfehlungen automatisch zu realisieren, um das Training des computerrealisierten Modells zu verbessern.
  • Bei einer veranschaulichenden Ausführungsform enthält die Computermethodik ein Durchführen von mehreren Trainingsinstanzen des computerrealisierten Modells durch das spezifisch konfigurierte Datenverarbeitungssystem, wobei jede Trainingsinstanz des computerrealisierten Modells ein Training des computerrealisierten Modells unter Verwendung eines unterschiedlichen Trainingsdatensatzes enthält, um eine von anderen Trainingsinstanzen des computerrealisierten Modells verschiedene Instanz eines trainierten computerrealisierten Modells zu erzeugen. Die Computermethodik enthält ferner ein Erzeugen von computerrealisierten Modellergebnissen nach jeder Trainingsinstanz, indem die entsprechende Instanz des trainierten computerrealisierten Modells ausgeführt wird. Zusätzlich enthält die Computermethodik ein Aufzeichnen von Unterschieden bei den Trainingsinstanzen des computerrealisierten Modells in Zusammenhang mit entsprechenden Bezeichnern der Instanzen eines trainierten computerrealisierten Modells und entsprechenden computerrealisierten Modellergebnissen durch das Datenverarbeitungssystem. Des Weiteren enthält die Computermethodik ein Analysieren der aufgezeichneten Unterschiede und der entsprechenden computerrealisierten Modellergebnisse durch das Datenverarbeitungssystem sowie ein Erzeugen einer Ausgabe, die eine Korrelation zwischen aufgezeichneten Unterschieden und entsprechenden computerrealisierten Modellergebnissen angibt, durch das Datenverarbeitungssystem.
  • Bei manchen veranschaulichenden Ausführungsformen führt die Computermethodik mehrere Trainingsinstanzen des computerrealisierten Modells mindestens durch, indem eine erste Trainingsoperation für das computerrealisierte Modell unter Verwendung einer ersten Version von Trainingsdaten und eines ersten Satzes von einem oder mehreren Hyperparametern durch das Datenverarbeitungssystem ausgeführt wird, um eine erste trainierte Instanz des computerrealisierten Modells zu erzeugen. Die Computermethodik führt ferner die mehreren Trainingsinstanzen des computerrealisierten Modells durch, indem eine zweiten Trainingsoperation für das computerrealisierte Modell unter Verwendung einer zweiten Version der Trainingsdaten und eines zweiten Satzes von einem oder mehreren Hyperparametern durch das Datenverarbeitungssystem ausgeführt wird, um eine zweite trainierte Instanz des computerrealisierten Modells zu erzeugen.
  • Bei manchen veranschaulichenden Ausführungsformen zeichnet die Computermethodik Veränderungen an den Trainingsinstanzen des computerrealisierten Modells mindestens auf, indem eine erste Erfassungsdatenstruktur, die einen ersten Bezeichner der ersten Trainingsoperation mit der ersten Version von Trainingsdaten und dem ersten Satz von einem oder mehreren Hyperparametern korreliert, durch das Datenverarbeitungssystem erzeugt wird, und indem eine zweite Erfassungsdatenstruktur, die einen zweiten Bezeichner der zweiten Trainingsoperation mit der zweiten Version von Trainingsdaten und dem zweiten Satz von einem oder mehreren Hyperparametern korreliert, durch das Datenverarbeitungssystem erzeugt wird. Bei manchen veranschaulichenden Ausführungsformen erzeugt die Computermethodik computerrealisierte Modellergebnisse mindestens, indem erste Modellergebnisse aus einem Ausführen der ersten Instanz des computerrealisierten Modells erzeugt werden, und erzeugt zweite Modellergebnisse, indem die zweite Instanz des computerrealisierten Modells ausgeführt wird. Bei solchen veranschaulichenden Ausführungsformen enthält die Analyse der aufgezeichneten Unterschiede und der entsprechenden computerrealisierten Modellergebnisse ein Durchführen von Analysen für die erste Erfassungsdatenstruktur, die zweite Erfassungsdatenstruktur, die ersten Modellergebnisse und die zweiten Modellergebnisse durch das Datenverarbeitungssystem, um Unterschiede zwischen der ersten Trainingsoperation und der zweiten Trainingsoperation zu identifizieren, die mit Unterschieden zwischen den ersten Modellergebnissen und den zweiten Modellergebnissen korrelieren.
  • Bei manchen veranschaulichenden Ausführungsformen ist die zweite Version von Trainingsdaten eine modifizierte Version der ersten Version von Trainingsdaten. Bei manchen veranschaulichenden Ausführungsformen erzeugt die Computermethodik die Ausgabe mindestens durch ein Erzeugen von Empfehlungen zum Modifizieren eines Trainings des computerrealisierten Modells, um Trainingsdaten zu verbessern, indem auf Grundlage der aufgezeichneten Unterschiede und der entsprechenden computerrealisierten Modellergebnisse identifiziert wird, welche Veränderungen die Genauigkeit des computerrealisierten Modells erhöhen. Bei manchen veranschaulichenden Ausführungsformen werden Computeroperationen automatisch ausgeführt, um die erzeugten einen oder mehreren Empfehlungen zu realisieren, wobei die Computeroperationen mindestens eines aufweisen eines Erhaltens von neuen Trainingsdaten, die Entitäten aufweisen, die in der einen oder den mehreren Empfehlungen als Entitäten angegeben werden, die ein Training des computerrealisierten Modells verbessern, eines Entfernens von Entitäten, die in der einen oder den mehreren Empfehlungen als Entitäten angegeben werden, die ein Training des computerrealisierten Modells verschlechtern, eines Modifizierens von mindestens einem Hyperparameter des computerrealisierten Modells oder eines Modifizierens eines Computermodell-Trainingswerkzeugs, das verwendet wird, um ein Training des computerrealisierten Modells durchzuführen.
  • Bei manchen veranschaulichenden Ausführungsformen enthält die Computermethodik ein Erfassen von Instanzen von Trainingsdaten, die zum Trainieren des computerrealisierten Modells verwendet werden, so dass zum Trainieren des computerrealisierten Modells verwendete Trainingsdaten auf eine frühere Version von Trainingsdaten zurückgesetzt werden können. Bei manchen veranschaulichenden Ausführungsformen enthält die Computermethodik ein Durchführen einer Trendanalyse für die aufgezeichneten Unterschiede und die entsprechenden computerrealisierten Modellergebnisse. Bei weiteren veranschaulichenden Ausführungsformen enthalten die mehreren Trainingsinstanzen des computerrealisierten Modells ein Training von verschiedenen Kopien des computerrealisierten Modells durch verschiedene Entwickler des computerrealisierten Modells an einem oder mehreren Standorten, um verschiedene Teilsätze von Instanzen des trainierten computerrealisierten Modells zu erzeugen, und wobei das Verfahren über alle Teilsätze von Instanzen des trainierten realisierten Modells von den verschiedenen Entwicklern des computerrealisierten Modells hinweg durchgeführt wird.
  • Mit den Mechanismen der veranschaulichenden Ausführungsformen wird somit ein automatisiertes Computerwerkzeug bereitgestellt, das Veränderungen beim Training einer Instanz eines Computermodells erfasst und mit Veränderungen bei der Leistung/Genauigkeit der Instanz des Computermodells korreliert. Das Computerwerkzeug führt automatische Trendanalysen für die erfassten Informationen aus, die für eine einzige Instanz eines Computermodells oder über mehrere Instanzen desselben Computermodells oder verschiedener Computermodelle hinweg, die verschiedenen Trainingsprozessen unterzogen werden, erfasst werden können. Die Trendanalysen identifizieren Trends bei den Arten von Veränderungen, die an dem Training von Computermodell-Instanzen vorgenommen werden, sowie die entsprechenden Veränderungen bei der Leistung/Genauigkeit der Computermodell-Instanzen, indem sie wiederum Arten von Veränderungen bei der Leistung/Genauigkeit in Bezug auf verschiedene Leistungs-/Genauigkeitsparameter möglicherweise korrelieren. Diese Arten von Veränderungen können zum Beispiel Hinzufügungen/Entfernungen/Modifikationen von bestimmten Arten von in den Trainingsdaten vorhandenen Entitäten, Arten von Veränderungen an Hyperparametern wie z.B. Erhöhungen/Minderungen von Parameterwerten, Veränderungen an verwendeten Trainingswerkzeugen usw. sein, so dass das automatisierte Datenverarbeitungswerkzeug der veranschaulichenden Ausführungsformen ermitteln kann, dass bestimmte Arten von Veränderungen an dem Training des Computermodells tendenziell zu bestimmten Arten von Veränderungen bei der Leistung/Genauigkeit des Computermodells führen, wenn es für eine Laufzeitverwendung eingesetzt wird.
  • Somit sollte klar sein, dass die vorliegende Erfindung gemäß bevorzugten Ausführungsformen spezifisch auf ein verbessertes Computerwerkzeug gerichtet ist, das spezifisch konfiguriert wird, um logische Strukturen zu enthalten und spezifische Computerprozesse auszuführen, um ein Problem in der Computerwissenschaft - das Training von Computermodellen - zu lösen. Das verbesserte Computerwerkzeug stellt Mechanismen bereit, die dem verbesserten Computerwerkzeug eine neue Funktionalität verleihen, die das Computerwerkzeug zuvor nicht hatte, und diese verbessert wiederum die Funktionalität der Computermodelle, die unter Verwendung der Mechanismen des verbesserten Computerwerkzeugs der vorliegenden Erfindung gemäß bevorzugten Ausführungsformen trainiert werden. Durch einen Betrieb des verbesserten Computerwerkzeugs wird somit die Leistung und Genauigkeit der Computermodelle verbessert.
  • Vor Beginn der ausführlicheren Erörterung der verschiedenen veranschaulichenden Ausführungsformen sollte erwähnt werden, dass sich in dieser Beschreibung der Begriff „Mechanismus“ auf Elemente der vorliegenden Erfindung bezieht, die verschiedene Operationen, Funktionen und dergleichen durchführen. Ein „Mechanismus, wie der Begriff hier verwendet wird, kann eine Realisierung der Funktionen oder Aspekte der veranschaulichenden Ausführungsformen in Gestalt einer Vorrichtung, einer Vorgehensweise oder eines Computerprogrammprodukts sein. Im Falle einer Vorgehensweise wird die Vorgehensweise durch eine(n) oder mehrere Einheiten, Vorrichtungen, Computer, Datenverarbeitungssysteme oder dergleichen realisiert. Im Falle eines Computerprogrammprodukts wird die Logik, für die Computercode oder Anweisungen stehen, der in oder auf dem Computerprogrammprodukt enthalten ist bzw. die in oder auf dem Computerprogrammprodukt enthalten sind, durch eine oder mehrere Hardware-Einheiten ausgeführt, um die Funktionalität zu realisieren oder die Operationen durchzuführen, die dem spezifischen „Mechanismus“ zugehörig sind. Die hier beschriebenen Mechanismen können somit als Spezial-Hardware, als Software, die auf Universal-Hardware ausgeführt wird, als Software-Anweisungen, die auf einem Medium gespeichert werden, so dass die Anweisungen jederzeit durch Spezial- oder Universal-Hardware ausführbar sind, als eine Vorgehensweise oder ein Verfahren zum Ausführen der Funktionen oder aber als eine Kombination aller oben erwähnten Optionen realisiert werden.
  • Die vorliegende Beschreibung und die Ansprüche können die Begriffe „ein/eine/eines“, „mindestens ein/eine/eines“ und „ein/eine/eines oder mehrere“ mit Blick auf bestimmte Merkmale und Elemente der veranschaulichenden Ausführungsformen verwenden. Dabei sollte klar sein, dass diese Begriffe und Wendungen aussagen sollen, dass in der jeweiligen veranschaulichenden Ausführungsform mindestens eines, womöglich jedoch auch mehrere der bestimmten Merkmale oder Elemente vorhanden ist. Die Begriffe/Wendungen sind daher nicht als Beschränkung der Beschreibung oder der Ansprüche auf ein einziges genanntes Merkmal/Element oder so zu verstehen, als müsste eine Mehrzahl von derartigen Merkmalen/Elementen vorhanden sein. Im Gegenteil erfordern diese Begriffe/Wendungen mindestens ein einziges Merkmal/Element, wobei die Möglichkeit besteht, dass eine Mehrzahl von solchen Merkmalen/Elementen innerhalb des inhaltlichen Umfangs der Beschreibung und der Ansprüche liegt.
  • Darüber hinaus sollte klar sein, dass die Verwendung des Begriffs „Engine“, wenn er hierin zum Beschreiben von Ausführungsformen und Merkmalen der Erfindung verwendet wird, nicht als Beschränkung auf eine bestimmte Realisierung zum Erreichen und/oder Durchführen der Aktionen, Schritte, Prozesse usw. gedacht ist, die der Engine zugeordnet werden können und/oder von der Engine durchgeführt werden. Eine Engine kann, ohne darauf beschränkt zu sein, Software, Hardware und/oder Firmware oder eine beliebige Kombination hiervon sein, welche die angegebenen Funktionen durchführt, z.B., ohne darauf beschränkt zu sein, jede Verwendung eines Universal- und/oder Spezial-Prozessors in Kombination mit geeigneter Software, die in einen maschinenlesbaren Arbeitsspeicher geladen und durch den Prozessor ausgeführt wird. Des Weiteren dient jede einer bestimmten Engine zugehörige Bezeichnung, sofern nicht anderweitig angegeben, lediglich zum Zwecke einer besseren Bezugnahme und ist nicht als Beschränkung auf eine spezifische Realisierung zu verstehen. Zusätzlich kann jede Funktionalität, die einer Engine zugeordnet ist, in gleicher Weise durch mehrere Engines durchgeführt werden, die in die Funktionalität einer weiteren Engine desselben oder eines anderen Typs eingebettet und/oder mit dieser kombiniert werden oder auf eine oder mehrere Engines verschiedener Konfigurationen verteilt werden.
  • Darüber hinaus sollte klar sein, dass die folgende Beschreibung eine Mehrzahl von verschiedenen Beispielen für verschiedene Elemente der veranschaulichenden Ausführungsformen verwendet, um Beispielrealisierungen der veranschaulichenden Ausführungsformen weitergehend zu veranschaulichen und um das Verständnis der Mechanismen der veranschaulichenden Ausführungsformen zu erleichtern. Diese Beispiele sind nicht als Beschränkung zu verstehen und bilden keine erschöpfende Darstellung der verschiedenen Möglichkeiten zum Realisieren der Mechanismen der veranschaulichenden Ausführungsformen. Für den Fachmann dürfte anhand der vorliegenden Beschreibung offensichtlich sein, dass es viele andere, alternative Realisierungen dieser verschiedenen Elemente gibt, die zusätzlich zu den oder anstelle der hier bereitgestellten Beispiele(n) verwendet werden können, ohne vom gedanklichen Wesensgehalt und inhaltlichen Umfang der vorliegenden Erfindung abzuweichen.
  • Bei der vorliegenden Erfindung kann es sich um ein System, ein Verfahren und/oder ein Computerprogrammprodukt handeln. Das Computerprogrammprodukt kann ein computerlesbares Speichermedium (oder -medien) mit darauf gespeicherten computerlesbaren Programmanweisungen enthalten, um einen Prozessor dazu zu veranlassen, Aspekte der vorliegenden Erfindung auszuführen.
  • Bei dem computerlesbaren Speichermedium kann es sich um eine physische Einheit handeln, die Anweisungen zur Verwendung durch eine Anweisungsausführungseinheit enthalten und speichern kann. Bei dem computerlesbaren Speichermedium kann es sich zum Beispiel um eine elektronische Speichereinheit, eine magnetische Speichereinheit, eine optische Speichereinheit, eine elektromagnetische Speichereinheit, eine Halbleiterspeichereinheit oder jede geeignete Kombination daraus handeln, ohne auf diese beschränkt zu sein. Zu einer nicht erschöpfenden Liste spezifischerer Beispiele des computerlesbaren Speichermediums gehören die Folgenden: eine tragbare Computerdiskette, eine Festplatte, ein RAM, ein ROM, ein löschbarer programmierbarer Nur-Lese-Speicher (EPROM bzw. Flash-Speicher), ein statischer Direktzugriffsspeicher (SRAM), ein tragbarer CD-ROM, eine DVD (Digital Versatile Disc), ein Speicher-Stick, eine Diskette, eine mechanisch kodierte Einheit wie zum Beispiel Lochkarten oder erhabene Strukturen in einer Rille, auf denen Anweisungen gespeichert sind, und jede geeignete Kombination daraus. Ein computerlesbares Speichermedium soll in der Verwendung hierin nicht als flüchtige Signale an sich aufgefasst werden, wie zum Beispiel Funkwellen oder andere sich frei ausbreitende elektromagnetische Wellen, elektromagnetische Wellen, die sich durch einen Wellenleiter oder ein anderes Übertragungsmedium ausbreiten (z.B. durch ein Lichtwellenleiterkabel geleitete Lichtimpulse) oder durch einen Draht übertragene elektrische Signale.
  • Hierin beschriebene computerlesbare Programmanweisungen können von einem computerlesbaren Speichermedium auf jeweilige Datenverarbeitungs-/Verarbeitungseinheiten oder über ein Netzwerk wie zum Beispiel das Internet, ein lokales Netzwerk, ein Weitverkehrsnetzwerk und/oder ein drahtloses Netzwerk auf einen externen Computer oder eine externe Speichereinheit heruntergeladen werden. Das Netzwerk kann Kupferübertragungskabel, Lichtwellenübertragungsleiter, drahtlose Übertragung, Leitwegrechner, Firewalls, Vermittlungseinheiten, Gateway Computer und/oder Edge-Server aufweisen. Eine Netzwerkadapterkarte oder Netzwerkschnittstelle in jeder Datenverarbeitungs-/Verarbeitungseinheit empfängt computerlesbare Programmanweisungen aus dem Netzwerk und leitet die computerlesbaren Programmanweisungen zur Speicherung in einem computerlesbaren Speichermedium innerhalb der entsprechenden Datenverarbeitungs-/Verarbeitungseinheit weiter.
  • Bei computerlesbaren Programmanweisungen zum Ausführen von Operationen der vorliegenden Erfindung kann es sich um Assembler-Anweisungen, ISA-Anweisungen (Instruction-Set-Architecture), Maschinenanweisungen, maschinenabhängige Anweisungen, Mikrocode, Firmware-Anweisungen, zustandssetzende Daten oder entweder Quellcode oder Objektcode handeln, die in einer beliebigen Kombination aus einer oder mehreren Programmiersprachen geschrieben werden, darunter objektorientierte Programmiersprachen wie Java™, Smalltalk, C++ o.ä. sowie herkömmliche prozedurale Programmiersprachen wie die Programmiersprache „C“ oder ähnliche Programmiersprachen. Die computerlesbaren Programmanweisungen können vollständig auf dem Computer des Benutzers, teilweise auf dem Computer des Benutzers, als eigenständiges Software-Paket, teilweise auf dem Computer des Benutzers und teilweise auf einem entfernt angeordneten Computer oder vollständig auf dem entfernt angeordneten Computer oder Server ausgeführt werden. In letzterem Fall kann der entfernt angeordnete Computer mit dem Computer des Benutzers durch eine beliebige Art Netzwerk verbunden sein, darunter ein lokales Netzwerk (Local Area Network, LAN) oder ein Weitverkehrsnetzwerk (Wide Area Network, WAN), oder die Verbindung kann mit einem externen Computer hergestellt werden (zum Beispiel über das Internet unter Verwendung eines Internet-Diensteanbieters). In einigen Ausführungsformen können elektronische Schaltungen, darunter zum Beispiel programmierbare Logikschaltungen, im Feld programmierbare Gatter-Anordnungen (FPGA) oder programmierbare Logikanordnungen (PLA, Programmable Logic Arrays) die computerlesbaren Programmanweisungen ausführen, indem sie Zustandsinformationen der computerlesbaren Programmanweisungen nutzen, um die elektronischen Schaltungen zu personalisieren, um Aspekte der vorliegenden Erfindung durchzuführen. Java und alle Marken und Logos auf Java-Grundlage sind Marken oder eingetragene Marken von Oracle und/oder seinen Tochtergesellschaften.
  • Aspekte der vorliegenden Erfindung sind hierin unter Bezugnahme auf Ablaufpläne und/oder Blockschaubilder von Verfahren, Vorrichtungen (Systemen) und Computerprogrammprodukten gemäß Ausführungsformen der Erfindung beschrieben. Es wird darauf hingewiesen, dass jeder Block der Ablaufpläne und/oder der Blockschaubilder sowie Kombinationen von Blöcken in den Ablaufplänen und/oder den Blockschaubildern mittels computerlesbarer Programmanweisungen ausgeführt werden können.
  • Diese computerlesbaren Programmanweisungen können einem Prozessor eines Universalcomputers, eines Spezialcomputers oder einer anderen programmierbaren Datenverarbeitungsvorrichtung bereitgestellt werden, um eine Maschine zu erzeugen, so dass die über den Prozessor des Computers bzw. der anderen programmierbaren Datenverarbeitungsvorrichtung ausgeführten Anweisungen ein Mittel zur Umsetzung der in dem Block bzw. den Blöcken des Ablaufplans und/oder des Blockschaubilds festgelegten Funktionen/Schritte erzeugen. Diese computerlesbaren Programmanweisungen können auch auf einem computerlesbaren Speichermedium gespeichert sein, das einen Computer, eine programmierbare Datenverarbeitungsvorrichtung und/oder andere Einheiten so steuern kann, dass sie auf eine bestimmte Art funktionieren, so dass das computerlesbare Speichermedium, auf dem Anweisungen gespeichert sind, ein Herstellungsprodukt aufweist, darunter Anweisungen, welche Aspekte der/des in dem Block bzw. den Blöcken der Ablaufpläne und/oder Blockschaubilder angegebenen Funktion/Schritts umsetzen.
  • Die computerlesbaren Programmanweisungen können auch auf einen Computer, eine andere programmierbare Datenverarbeitungsvorrichtung oder eine andere Einheit geladen werden, um das Ausführen einer Reihe von Prozessschritten auf dem Computer bzw. der anderen programmierbaren Vorrichtung oder anderen Einheit zu verursachen, um einen computerrealisierten Prozess zu erzeugen, so dass die auf dem Computer, einer anderen programmierbaren Vorrichtung oder einer anderen Einheit ausgeführten Anweisungen die in dem Block bzw. den Blöcken der Ablaufpläne und/oder Blockschaubilder festgelegten Funktionen/Schritte umsetzen.
  • Die Ablaufpläne und die Blockschaubilder in den Figuren veranschaulichen die Architektur, die Funktionalität und den Betrieb möglicher Ausführungen von Systemen, Verfahren und Computerprogrammprodukten gemäß verschiedenen Ausführungsformen der vorliegenden Erfindung. In diesem Zusammenhang kann jeder Block in den Ablaufplänen oder Blockschaubildern ein Modul, ein Segment oder einen Teil von Anweisungen darstellen, die eine oder mehrere ausführbare Anweisungen zur Ausführung der bestimmten logischen Funktion(en) aufweisen. In einigen alternativen Ausführungen können die in dem Block angegebenen Funktionen in einer anderen Reihenfolge als in den Figuren gezeigt stattfinden. Zwei nacheinander gezeigte Blöcke können zum Beispiel in Wirklichkeit im Wesentlichen gleichzeitig ausgeführt werden, oder die Blöcke können manchmal je nach entsprechender Funktionalität in umgekehrter Reihenfolge ausgeführt werden. Es ist ferner anzumerken, dass jeder Block der Blockschaubilder und/oder der Ablaufpläne sowie Kombinationen aus Blöcken in den Blockschaubildern und/oder den Ablaufplänen durch spezielle auf Hardware beruhende Systeme umgesetzt werden können, welche die festgelegten Funktionen oder Schritte durchführen, oder Kombinationen aus Spezial-Hardware und Computeranweisungen ausführen.
  • Wie oben erwähnt, stellt die vorliegende Erfindung gemäß bevorzugten Ausführungsformen ein verbessertes Computerwerkzeug zum Verbessern des Trainings von Computermodellen bereit, indem die Veränderungen, die über mehrere Trainingsinstanzen an dem Computermodell vorgenommen werden, erfasst und diese Veränderungen mit Veränderungen bei der Leistung/Genauigkeit des Computermodells korreliert werden. Für die erfassten Informationen werden Analysen ausgeführt, um Trends beim Training des Computermodells zu erfassen, z.B. eine bestimmte Veränderung bei einem oder mehreren Trainingsmerkmalen wie z.B. einer Art von Entität in den Trainingsdaten oder einem anderen Merkmal der Trainingsdaten selbst, eine Veränderung bei einem oder mehreren Hyperparametern, eine Veränderung bei dem bestimmten verwendeten Trainingsalgorithmus oder Trainingswerkzeug wie z.B. eine Konvergenzgeschwindigkeit des Trainings des Computermodells, ein Fehler-/Verlustwert des trainierten Computermodells oder andere Leistungs-/Genauigkeitskennzahlen.
  • Die Korrelationen von Veränderungen an den Trainingsmerkmalen mit Veränderungen bei der Leistung/Genauigkeit erzeugen Trendinformationen, mit denen Trainingsempfehlungen zum Trainieren des Computermodells bzw. von Kopien des Computermodells über mehrere Entwickler an einem oder mehreren Standorten hinweg erzeugt werden, wobei Kopien des Computermodells für bestimmte Verwendungszwecke trainiert werden; z.B. kann ein und dasselbe Computermodell wie z.B. ein Modell für Healthcare-Behandlungsempfehlungen durch verschiedene Entwickler zu verschiedenen Zwecken entwickelt werden, z.B. indem das Computermodell durch einen Entwickler trainiert wird, um Behandlungsempfehlungen für Patienten mit Prostatakrebs bereitzustellen, während eine weitere Kopie des Computermodells durch einen anderen Entwickler trainiert wird, um Behandlungsempfehlungen für Patienten mit Blasenkrebs bereitzustellen. Allerdings können ähnliche Trainingsempfehlungen verwendet werden, um auf Grundlage von identifizierten Trends bei den Trainingsmerkmalen und den entsprechenden Trends bei der Verbesserung der Leistung/Genauigkeit des Computermodells verschiedene Entwickler beim Training ihrer jeweiligen Kopien des Computermodells zu unterstützen.
  • Das verbesserte Computerwerkzeug der veranschaulichenden Ausführungsformen kann in vielen verschiedenen Arten von Datenverarbeitungsumgebungen verwendet werden. Um einen Kontext für die Beschreibung der spezifischen Elemente und Funktionalität der veranschaulichenden Ausführungsformen bereitzustellen, werden die 1 und 2 hier als Beispielumgebungen bereitgestellt, in denen veranschaulichende Ausführungsformen realisiert werden können. Dabei wird darauf verwiesen, dass die 1 und 2 lediglich Beispiele sind und keinerlei Beschränkung mit Blick auf die Umgebungen geltend machen oder implizieren sollen, in denen Ausführungsformen der vorliegenden Erfindung realisiert werden können. An den dargestellten Umgebungen können viele Änderungen vorgenommen werden, ohne vom gedanklichen Wesensgehalt und inhaltlichen Umfang der vorliegenden Erfindung abzuweichen.
  • 1 stellt eine schematische Darstellung einer veranschaulichenden Ausführungsform eines Datenverarbeitungssystems 100 dar, das eine Anforderungsverarbeitungs-Pipeline 108 in einem Computernetzwerk 102 realisiert, die bei manchen Ausführungsformen ein Cognitive-Computing-System wie z.B. ein Datenverarbeitungssystem zur Fragenbeantwortung (Question Answering, QA) sein kann, das eine QA-Pipeline 108 verwendet. Ein Beispiel für ein Cognitive-Computing-System, das als Teil des Datenverarbeitungssystems 100 verwendet werden kann, ist das Cognitive-Computing-System IBM Watson™, das von der International Business Machines (IBM) Corporation mit Sitz in Armonk, New York, erhältlich ist. Die in einem solchen Cognitive-Computing-System realisierten eigentlichen Computermodelle können in vielen verschiedenen Formen vorliegen und können zum Beispiel neuronale Netzwerke, Regressionsmodelle, Zeitreihenanalyse-Modelle, Trendanalyse-Modelle, Verhaltensmodelle, Simulationsmodelle oder eine beliebige andere Art von Computermodell-Verhaltensalgorithmen oder eine Computersimulation enthalten, die durch einen überwachten oder unüberwachten ML-Prozess trainiert wird, indem das Computermodell durch Anpassungen von Trainingsmerkmalen iterativ trainiert wird und indem Veränderungen bei der Leistung/Genauigkeit des trainierten Computermodells bzw. der trainierten Computersimulation ermittelt werden. IBM und Watson sind Marken der International Business Machines Corporation in den Vereinigten Staaten und in anderen Ländern.
  • Dabei sollte klar sein, dass die in 1 gezeigte Realisierung eines Cognitive-Computing-Systems lediglich als Beispiel dient, da Cognitive-Computing-Systeme Computermodelle verwenden, um ihre Cognitive-Computing-Operationen durchzuführen. Die vorliegende Erfindung ist jedoch vorzugsweise auf jede Realisierung anwendbar, bei der Computermodelle, Simulationen oder Verhaltensalgorithmen trainiert und verwendet werden, wozu auch Realisierungen zählen, die kein Cognitive-Computing-System bzw. keine entsprechende Pipeline 108 benötigen.
  • Zum Zwecke der vorliegenden Beschreibung soll das Datenverarbeitungssystem 100 ein Cognitive-Computing-System sein, das als ein QA-System realisiert wird, bei dem die Anforderungsverarbeitungs-Pipeline 108 als eine QA-Pipeline realisiert wird, die strukturierte und/oder unstrukturierte Anforderungen in Gestalt von Eingabefragen verarbeitet. Bei der Verarbeitung solcher strukturierter und/oder unstrukturierter Anforderungen werden ein oder mehrere trainierte Computermodelle verwendet, die für die bestimmte Realisierung des QA-Systems 100 und ihren vorgesehenen Zweck spezifisch sein können, z.B. ein Erzeugen von Behandlungsempfehlungen für Patienten mit Prostatakrebs, ein Auswerten von elektronischen Krankenakten, ein Durchführen einer Fahrzeugnavigation oder Kollisionsvermeidung, ein Bereitstellen von Empfehlungen zu Finanzprodukten/-dienstleistungen usw. Diese Computermodelle können unter Verwendung eines Trainingscomputersystems und eines oder mehrerer Trainingsdatensätze trainiert werden. Ein Beispiel für eine Frageverarbeitungsoperation, die in Verbindung mit den hier beschriebenen Grundsätzen verwendet werden kann, wird in der US-Patentschrift 2011/0125734 beschrieben, die hier in ihrer Gesamtheit zur Bezugnahme mit aufgenommen wird.
  • Wie in 1 gezeigt, wird das Datenverarbeitungssystem 100 wie z.B. das kognitive System 100 in einer oder mehreren Datenverarbeitungseinheiten 104A bis D realisiert (die einen oder mehrere Prozessoren und einen oder mehrere Arbeitsspeicher sowie unter Umständen beliebige andere, nach dem Stand der Technik bekannte Elemente einer Datenverarbeitungseinheit aufweisen, z.B. Busse, Speichereinheiten, Datenübertragungsschnittstellen und dergleichen), die mit dem Computernetzwerk 102 verbunden werden. Ausschließlich zum Zwecke der Veranschaulichung stellt 1 das kognitive System 100 als nur in der Datenverarbeitungseinheit 104A realisiert dar, wobei - wie oben erwähnt - das kognitive System 100 auch auf mehrere Datenverarbeitungseinheiten verteilt werden kann, z.B. auf eine Mehrzahl von Datenverarbeitungseinheiten 104A bis D. Das Netzwerk 102 enthält mehrere Datenverarbeitungseinheiten 104A bis D, die als Server-Datenverarbeitungseinheiten fungieren können, sowie 110 bis 112, die als Client-Datenverarbeitungseinheiten fungieren können, die über eine oder mehrere drahtgebundene und/oder drahtlose Datenübertragungsverbindungen miteinander und mit anderen Einheiten oder Komponenten Daten austauschen können, wobei jede Datenübertragungsverbindung eine(n) oder mehrere Leitungen, Router, Switches, Transmitter, Empfänger oder dergleichen aufweist. Bei manchen veranschaulichenden Ausführungsformen ermöglichen das kognitive System 100 und das Netzwerk 102 über ihre jeweiligen Datenverarbeitungseinheiten 110 bis 112 eine Frageverarbeitungs- und Antworterzeugungsfunktionalität für einen oder mehrere Benutzer des kognitiven Systems. Bei anderen Ausführungsformen können das kognitive System 100 und das Netzwerk 102 andere Arten von kognitiven Operationen bereitstellen, z.B., ohne darauf beschränkt zu sein, eine Anforderungsverarbeitungs- und kognitive Reaktionserzeugung, die abhängig von der gewünschten Realisierung viele verschiedene Formen annehmen kann, z.B. ein kognitiver Informationsabruf, eine Schulung/Anweisung von Benutzern, eine kognitive Bewertung von Daten oder dergleichen. Andere Ausführungsformen des kognitiven Systems 100 können mit Komponenten, Systemen, Teilsystemen und/oder Einheiten verwendet werden, die von den hier dargestellten abweichen.
  • Das kognitive System 100 wird konfiguriert, um eine Anforderungsverarbeitungs-Pipeline 108 zu realisieren, die von verschiedenen Quellen Eingaben empfängt. Die Anforderungen können in Form einer natürlichsprachlichen Frage, einer natürlichsprachlichen Anforderung von Informationen, einer natürlichsprachlichen Anforderung zur Durchführung einer kognitiven Operation oder dergleichen vorgelegt werden. Zum Beispiel empfängt das kognitive System 100 eine Eingabe von dem Netzwerk 102, von einem Korpus oder von Korpora von elektronischen Dokumenten 106, von Benutzern des kognitiven Systems und/oder von anderen Daten- sowie sonstigen in Frage kommenden Eingabequellen. Bei einer Ausführungsform werden einige oder alle Eingaben über das Netzwerk 102 an das System 100 weitergeleitet. Die verschiedenen Datenverarbeitungseinheiten 104A bis D in dem Netzwerk 102 enthalten Zugriffspunkte für Inhaltserzeuger und Benutzer des kognitiven Systems. Manche der Datenverarbeitungseinheiten 104A bis D enthalten Einheiten für eine Datenbank, in welcher das Korpus oder die Korpora von Daten 106 gespeichert wird bzw. werden (und die in 1 lediglich zum Zwecke der Veranschaulichung als eine getrennte Entität dargestellt wird). Teile des Korpus oder der Korpora von Daten 106 können auch in einer oder mehreren anderen, mit einem Netzwerk verbundenen Speichereinheiten, in einer oder mehreren Datenbanken oder in anderen Datenverarbeitungseinheiten bereitgestellt werden, die in 1 nicht ausdrücklich gezeigt werden. Bei verschiedenen Ausführungsformen enthält das Netzwerk 102 lokale Netzwerkverbindungen und entfernt angeordnete Verbindungen, so dass das kognitive System 100 in Umgebungen jedweder Größe betrieben werden kann, darunter auch lokale und globale Umgebungen wie z.B. das Internet.
  • Bei einer Ausführungsform erzeugt der Inhaltserzeuger in einem Dokument des Korpus oder der Korpora von Daten 106 Inhalt, der als Teil eines Korpus von Daten mit dem kognitiven System 100 verwendet wird. Das Dokument enthält jede Art von Datei, Text, Artikel oder Quelle von Daten, die bzw. der in dem kognitiven System 100 verwendet wird. Benutzer des kognitiven Systems greifen über eine Netzwerkverbindung oder eine Internetverbindung mit dem Netzwerk 102 auf das kognitive System 100 zu und geben Fragen/Anforderungen an das kognitive System 100 ein, die auf Grundlage des Inhalts in das Korpus oder den Korpora von Daten 106 beantwortet/verarbeitet werden. Bei einer Ausführungsform werden die Fragen/Anforderungen unter Verwendung von natürlicher Sprache gebildet. Das kognitive System 100 parst und interpretiert die Frage/Anforderung über die Pipeline 108 und stellt dem Benutzer des kognitiven Systems wie beispielsweise dem Benutzer 110 des kognitiven Systems eine Reaktion, die eine oder mehrere Antworten auf die gestellte Frage enthält, eine Reaktion auf die Anforderung, Ergebnisse einer Verarbeitung der Anforderung oder dergleichen bereit. Bei manchen Ausführungsformen stellt das kognitive System 100 Benutzern eine Reaktion in einer Rangliste von Kandidatenantworten/-reaktionen bereit, während bei anderen veranschaulichenden Ausführungsformen das kognitive System 100 eine einzige endgültige Antwort/Reaktion oder eine Kombination von endgültigen Antworten/Reaktionen sowie eine Rangliste von Kandidatenantworten/-reaktionen bereitstellt.
  • Das kognitive System 100 realisiert die Pipeline 108, die eine Mehrzahl von Stufen zum Verarbeiten einer Eingabefrage/-anforderung auf Grundlage von Informationen aufweist, die aus dem Korpus oder den Korpora von Daten 106 erhalten werden, wobei eine oder mehrere dieser Stufen eines oder mehrere Computermodelle realisieren können, um die Durchführung der entsprechenden Verarbeitung der Eingabefrage/-anforderung und/oder der Daten zu unterstützen, die aus dem Korpus oder den Korpora von Daten 106 erhalten werden. Die Pipeline 108 erzeugt auf Grundlage des Verarbeitens der Eingabefrage/-anforderung und des Korpus oder der Korpora von Daten 106 Antworten/Reaktionen auf die Eingabefrage oder -anforderung.
  • Wie bereits erwähnt, kann bei manchen veranschaulichenden Ausführungsformen das kognitive System 100 das kognitive IBM Watson™-System sein, das von der International Business Machines Corporation mit Sitz in Armonk, New York, erhältlich ist. Bei einer solchen veranschaulichenden Ausführungsform empfängt die Pipeline wie z.B. die Pipeline 108 des kognitiven IBM Watson™-Systems, z.B. das kognitive System 100, eine Eingabefrage oder -anforderung, die es dann parst, um die wichtigsten Merkmale der Frage/Anforderung zu extrahieren, anhand derer dann wiederum Abfragen formuliert werden, die auf das Korpus oder die Korpora von Daten 106 angewendet werden. Auf Grundlage der Anwendung der Abfragen auf das Korpus oder die Korpora von Daten 106 wird ein Satz von Hypothesen oder Kandidatenantworten/-reaktionen auf die Eingabefrage/- anforderung erzeugt, indem das Korpus oder die Korpora von Daten 106 auf Teile des Korpus oder der Korpora von Daten 106 (im Folgenden einfach als das Korpus 106 bezeichnet) durchsucht wird bzw. werden, die unter Umständen eine wertvolle Reaktion auf die Eingabefrage/-anforderung enthalten könnten (bei der es sich im Folgenden um eine Eingabefrage handeln soll). Die Pipeline 108 des kognitiven IBM Watson™-Systems führt anschließend eine Tiefenanalyse der Sprache der Eingabefrage sowie der Sprache durch, die in jedem der Teile des Korpus 106 verwendet wird, die bei der Anwendung der Abfragen gefunden werden, wobei verschiedene Reasoning-Algorithmen zum Einsatz kommen.
  • Die mit den verschiedenen Reasoning-Algorithmen erhaltenen Wertungen werden dann anhand eines statistischen Modells gewichtet, das ein Gesamtmaß an Vertrauen ermittelt, welches in diesem Beispiel die Pipeline 108 des kognitiven IBM Watson™-Systems 100 hinsichtlich des Beleges hat, dass die mögliche Kandidatenantwort aus der Frage folgt. Dieser Vorgang wird für jede der Kandidatenantworten wiederholt, um eine Rangliste von Kandidatenantworten zu erzeugen, die dann dem Benutzer vorgelegt werden kann, der die Eingabefrage gestellt hat, z.B. einem Benutzer der Client-Datenverarbeitungseinheit 110, oder aus der eine endgültige Antwort ausgewählt und dem Benutzer vorgelegt wird. Weitere Informationen zur Pipeline 108 des kognitiven IBM Watson™-Systems 100 können zum Beispiel der Website der IBM Corporation, den IBM Redbooks und Ähnlichem entnommen werden. Informationen zur Pipeline des kognitiven IBM Watson™-Systems finden sich zum Beispiel auch in Yuan et al., „Watson and Healthcare", IBM developerWorks, 2011, und in „The Era of Cognitive Systems: An Inside Look at IBM Watson and How it Works" von Rob High, IBM Redbooks, 2012.
  • Obwohl die Eingabe in das kognitive System 100 von einer Client-Einheit in Form einer natürlichsprachlichen Frage erfolgen kann, sind die veranschaulichenden Ausführungsformen, wie oben erwähnt, nicht darauf beschränkt. Vielmehr kann die Eingabefrage tatsächlich als jede geeignete Art von Anforderung formatiert oder strukturiert werden, die unter Verwendung einer Analyse einer strukturierten und/oder unstrukturierten Eingabe geparst und analysiert werden kann, darunter natürlichsprachliche Parsing- und Analysemechanismen eines kognitiven Systems wie z.B. IBM Watson™, um die Grundlage zu ermitteln, auf der eine kognitive Analyse durchgeführt werden soll, und um ein Ergebnis der kognitiven Analyse bereitzustellen. In dem Fall eines kognitiven Systems auf Healthcare-Grundlage kann diese Analyse zum Beispiel ein Verarbeiten von Krankenakten, medizinischen Leitfäden aus einem oder mehreren Korpora und dergleichen beinhalten, um ein Ergebnis eines Healthcare-orientierten kognitiven Systems bereitzustellen, z.B. eine Diagnose eines medizinischen Zustands eines Patienten, eine Hervorhebung von Anomalien bei einer medizinischen Bildgebung usw. In anderen Zusammenhängen wie z.B. bei einem System zur Fahrzeugnavigation und/oder Kollisionsvermeidung können von Kameras erfasste Bilder und dergleichen analysiert werden, um Objekte zu kategorisieren und geeignete Warnungen, Korrekturmaßnahmen wie z.B. eine Brems-/Lenkkontrolle usw. zu ermitteln. In Zusammenhang mit Finanzbewertungen können Risikoabschätzungen vorgenommen, Empfehlungen für Finanzprodukte/-dienstleistungen erzeugt werden oder dergleichen. Da eine große Zahl an kognitiven Operationen durchgeführt werden kann, ist es wenig sinnvoll, all diese Möglichkeiten hier aufzulisten. Vielmehr soll jede kognitive Operation, die durch ein computerrealisiertes Cognitive-Computing-System durchgeführt werden kann, als innerhalb des gedanklichen Wesensgehalts und inhaltlichen Umfangs der vorliegenden Erfindung liegend betrachtet werden.
  • Wie in 1 gezeigt, stellen die veranschaulichenden Ausführungsformen der vorliegenden Erfindung ein verbessertes Computerwerkzeug 150 bereit, das spezifisch auf ein Verbessern des Trainings von Computermodellen gerichtet ist, die für eine Laufzeitverwendung durch Ausführung in einem Datenverarbeitungssystem wie dem kognitiven System 100 aus 1 entwickelt werden können. Auch dies ist nur ein Beispiel, und die Computermodelle, Simulationen, Algorithmen und dergleichen, die trainiert werden und deren Training durch den Betrieb von einer oder mehreren der veranschaulichenden Ausführungsformen verbessert wird, sind nicht auf eine Verwendung mit Cognitive-Computing-Systemen beschränkt und können in jeder beliebigen Datenverarbeitungsanordnung realisiert werden, bei der Computermodelle, Simulationen und Algorithmen verwendet werden. Darüber hinaus sind die veranschaulichenden Ausführungsformen spezifisch auf ein verbessertes Computerwerkzeug zum Verbessern des Trainings von solchen Computermodellen, Simulationen, Algorithmen oder dergleichen gerichtet, und somit sind diese Computermodelle, Simulationen, Algorithmen oder dergleichen so beschaffen, dass sie unter Verwendung von einem oder mehreren Trainingsdatensätzen, Hyperparametern, Trainingswerkzeugen und dergleichen trainiert werden, wobei dies häufig iterativ erfolgen kann. Es sollte klar sein, dass das verbesserte Computerwerkzeug der veranschaulichenden Ausführungsformen eine(n) oder mehrere Datenverarbeitungseinheiten, Speichereinheiten, Arbeitsspeicher, Datenübertragungsschnittstellen und dergleichen aufweisen kann, die gemäß den Mechanismen der veranschaulichenden Ausführungsformen zusätzlich erweitert werden, um zum Realisieren des Datenverarbeitungssystems 150 zum Trainieren eines Computermodells logische Strukturen und Prozesse, die in spezialisierter Hardware realisiert werden, in Hardware ausgeführte Software oder jede beliebige Kombination aus spezialisierter Hardware und in Hardware ausgeführter Software zu enthalten.
  • Wie in 1 gezeigt, weist das Datenverarbeitungssystem 150 zum Trainieren eines Computermodells eine Engine 152 für die Trendanalyse von Trainingsdatensätzen, eine Engine 154 für die Trendanalyse von Trainingswerkzeugen, eine Engine 156 für die Trendanalyse von Computermodell-Hyperparametern, eine Engine 158 für die Korrelation von Modellergebnissen, eine Engine 160 für die Erfassung von Modellinstanzen, eine Datenbank 162 für die Erfassung von Computermodell-Trainingsinstanzen, eine Engine 164 für die entwicklerübergreifende Trendanalyse, eine Engine 166 für Trainingsempfehlungen, eine Engine 168 für die automatisierte Empfehlungsrealisierung und eine Engine 170 für die Erfassung von Trainingsdatensatz-Merkmalen auf. Jedes dieser Elemente des Datenverarbeitungssystems 150 zum Trainieren eines Computermodells kann als Hardware, als in Hardware ausgeführte Software oder als eine Kombination aus Hardware und Software realisiert werden. Die Elemente 152 bis 170 arbeiten zusammen, um die Zwecke eines Verbesserns des Trainings von Computermodellen durch die Identifikation von Trends beim Training der Computermodelle zu erreichen, indem sie Empfehlungen zum Verbessern des Trainings der Computermodelle erzeugen und bei manchen veranschaulichenden Ausführungsformen die empfohlenen Operationen für ein Verbessern des Trainings des Computermodells tatsächlich automatisch durchführen.
  • Die Engine 160 für die Erfassung von Modellinstanzen stellt Computerlogik und Computerlogik-Strukturen bereit, die notwendig sind, um Informationen von Entwicklerarbeitsstationen, anderen Server-Datenverarbeitungseinheiten oder dergleichen zu erhalten, die an einem Realisieren und Entwickeln des Computermodells durch einen iterativen Trainingsprozess beteiligt sind. Zum Beispiel können eine oder mehrere der Client-Datenverarbeitungseinheiten 110, 112 Kopien eines Computermodells verarbeiten, die auf einem oder mehreren der Server 104C, 104D ausgeführt werden. Die Client-Datenverarbeitungseinheiten 110, 112 und/oder die Server 104C, 104D können Computerschnittstellen, Trainingswerkzeuge und dergleichen bereitstellen, über die ein Benutzer wie z.B. ein Computermodell-Entwickler die Trainingsmerkmale angeben kann, z.B. welche Trainingsdatensätze verwendet werden sollen, die Einstellungen von Hyperparametern usw., die verwendet werden sollen, wenn eine Trainingsiteration einer Kopie des Computermodells durchgeführt wird. Beim Entwickeln der Kopien des auf einem oder mehreren der Server 104C, 104D ausgeführten Computermodells kann der Entwickler Veränderungen vornehmen und die Trainingsmerkmale der Kopien des Computermodells aktualisieren, z.B. indem er Hinzufügungen/Entfernungen/Modifikationen an den Trainingsdatensätzen vornimmt, die verwendet werden, um die entsprechende Kopie des Computermodells zu trainieren, so dass die Veränderungen die Leistung und Genauigkeit des Computermodells beeinflussen, indem er Einstellungen von Hyperparametern verändert, die verwendet werden, um die Kopien des Computermodells während des Trainings zu konfigurieren, oder dergleichen.
  • Die Engine 160 für die Erfassung von Modellinstanzen kann gemeinsam mit Agenten 172, 174 arbeiten, die in den Client-Datenverarbeitungseinheiten 110, 112 und/oder den Server-Datenverarbeitungseinheiten 104C, 104D, welche die Kopien des Computermodells ausführen, vorhanden sind und ausgeführt werden, wobei diese Agenten 172, 174 die betreffende Schnittstelle, das betreffende Trainingswerkzeug, die betreffende Trainingspipeline usw., die bzw. das durch den Entwickler verwendet wird, und/oder die Entwicklerumgebung überwachen können, um Veränderungen an Trainingsmerkmalen und die als Folge hiervon erzeugten entsprechenden Computermodell-Ergebnisse zu identifizieren, die Informationen zu Veränderungen an Trainingsmerkmalen zum Trainieren der Kopien der Computermodelle sowie die entsprechenden Trainingsergebnisse erfassen, die als Ergebnisse der Veränderungen an den Trainingsmerkmalen erzeugt werden. Die Agenten 172, 174 können erfasste Trainingsinformationen, z.B. Veränderungen an Trainingsmerkmalen und entsprechende Computermodell-Ergebnisse, dem Datenverarbeitungssystem 150 zum Trainieren eines Computermodells über die Engine 160 für die Erfassung von Modellinstanzen melden.
  • Es sollte klar sein, dass eine Ausführungsform auf Agenten-Grundlage nur eine mögliche Ausführungsform ist und dass die Mechanismen der veranschaulichenden Ausführungsformen nicht auf jene beschränkt sind, in denen Agenten in den Client-Datenverarbeitungseinheiten 110, 112 und/oder den Server-Datenverarbeitungseinheiten 104C, 104D bereitgestellt werden. Bei manchen veranschaulichenden Ausführungsformen können die Kopien der Computermodelle auf den Servern 104A bis 104D realisiert werden, auf denen das Cognitive-Computing-System 100 und/oder das Datenverarbeitungssystem 150 zum Trainieren eines Computermodells realisiert werden. Zum Beispiel können bei manchen Ausführungsformen mehrere Entwicklerumgebungen bereitgestellt werden, z.B. virtuell über virtuelle Maschinen oder dergleichen, auf denen Kopien des Computermodells in diesen verschiedenen Entwicklerumgebungen ausgeführt und trainiert werden können. In solchen Ausführungsformen sind keine Agenten erforderlich und ist eine direkte Überwachung von Entwicklerumgebungen möglich. Auch andere Realisierungen können verwendet werden, die jeden geeigneten Mechanismus für eine Übertragung von Trainingsinformationen an das Datenverarbeitungssystem 150 zum Trainieren eines Computermodells von Entwicklerumgebungen enthalten, ohne vom gedanklichen Wesensgehalt und inhaltlichen Umfang der vorliegenden Erfindung abzuweichen.
  • Beim Empfangen von Trainingsinformationen - entweder direkt von der Entwicklerumgebung, von den bereitgestellten Agenten 172, 174 oder über andere Datenübertragungsmechanismen, die für die bestimmte Realisierung spezifisch sind - werden die Trainingsinformationen mit einem Tag versehen oder anderweitig einer bestimmten Kopie eines Computermodells, Entwicklers oder dergleichen zugewiesen. Die Trainingsinformationen können zusätzlich Versionsinformationen oder andere Indikatoren aufweisen, die eine Trainingsinstanz der Kopie des Computermodells identifizieren. Zum Beispiel wird immer dann, wenn ein Entwickler eine neue Trainingsinstanz der Kopie des Computermodells initiiert, ein neuer Instanzbezeichner oder Versionsbezeichner erzeugt und der Trainingsinstanz zugewiesen. Somit können Trainingsinformationen Kopien des Computermodells und Trainingsinstanzen zugehörig sein, mit denen die Kopie des Computermodells trainiert wird.
  • Die Trainingsinformationen erfassen die während einer Trainingsinstanz verwendeten Trainingsmerkmale sowie die erzeugten Computermodell-Ergebnisse. Bei manchen veranschaulichenden Ausführungsformen können diese Trainingsmerkmale als die bestimmten Trainingsmerkmale gemeldet werden, z.B. der verwendete Trainingsdatensatz, das verwendete Trainingswerkzeug, die Hyperparameter-Einstellungen usw., die während der Trainingsinstanz verwendet werden, sowie die durch das Computermodell ausgegebenen Computermodell-Ergebnisse. Bei diesen veranschaulichenden Ausführungsformen werden alle relevanten Trainingsmerkmale gemeldet, und Veränderungen an diesen Trainingsmerkmalen gegenüber anderen Trainingsinstanzen werden bei nachgeordneten Analysen ermittelt, wie im Folgenden erläutert wird. Bei anderen veranschaulichenden Ausführungsformen werden nur Veränderungen an Trainingsmerkmalen gemeldet, wobei diese Veränderungen als Veränderungen gegenüber einer früheren Trainingsinstanz betrachtet werden, wie durch einen Vergleich der Trainingsinstanz-Indikatoren oder der Versionsindikatoren ermittelt werden kann.
  • Die über die Engine 160 für die Erfassung von Modellinstanzen empfangenen gemeldeten Trainingsinformationen werden verwendet, um entsprechende Einträge in der Datenbank 162 für die Erfassung von Computermodell-Trainingsinstanzen zu erzeugen. Die Einträge in der Datenbank 162 für die Erfassung von Computermodell-Trainingsinstanzen können auf jede beliebige Art indexiert werden, z.B. nach einem Bezeichner einer Kopie des Computermodells, nach einem Trainingsinstanz-Indikator, nach Trainingsmerkmalen und/oder dergleichen. Auf diese Weise können Veränderungen an Trainingsmerkmalen in der Datenbank 162 für die Erfassung von Computermodell-Trainingsinstanzen im Laufe der Zeit erfasst werden, wenn neue Einträge für jede Kopie des Computermodells und für jede Trainingsinstanz erzeugt und für eine Anwendung von verschiedenen Trendanalysen gespeichert werden, um Trends bei diesen erfassten Informationen zu identifizieren. Zum Beispiel können für verschiedene Trainingsinstanzen verschiedene Trainingsdatensätze identifiziert werden. Die verschiedenen Trainingsdatensätze können Spezifikationen dazu aufweisen, welche Entitäten in den Trainingsdatensätzen aus einem früheren Trainingsdatensatz hinzufügt, entfernt oder modifiziert werden, einen Bezeichner eines vollständig neuen verwendeten Trainingsdatensatzes wie z.B. zusätzliche Informationen zu dem neuen Trainingsdatensatz wie eine Quelle des Trainingsdatensatzes, Arten von Entitäten, die in dem neuen Trainingsdatensatz vorhanden sind, usw. In manchen Fällen können die Trainingsmerkmal-Informationen in einem Eintrag der Datenbank 162 für die Erfassung von Computermodell-Trainingsinstanzen einen Zeiger auf einen Trainingsdatensatz und/oder seine Metadaten enthalten, welche die Merkmale des Trainingsdatensatzes angeben, z.B. die Arten von in dem Trainingsdatensatz enthaltenen Entitäten und andere Merkmale, die mit anderen Trainingsdatensätzen verglichen werden können, um Unterschiede zwischen den Trainingsdatensätzen zu ermitteln.
  • Auf ähnliche Weise werden Veränderungen an Trainingsmerkmalen in Bezug auf die bestimmten verwendeten Trainingswerkzeuge und/oder Hyperparameter-Einstellungen erfasst, indem diese Trainingsmerkmale in Einträgen der Datenbank 162 für die Erfassung von Computermodell-Trainingsinstanzen gespeichert werden. Zum Beispiel kann die Identifikation des bestimmten Trainingswerkzeugs, z.B. zum Modifizieren von Trainingsparametern des Computermodells verwendete Algorithmen usw., in Zusammenhang mit dem Trainingsinstanz-Indikator gespeichert werden. Als ein weiteres Beispiel können die bestimmten Einstellungen von Hyperparametern in Einträgen gespeichert werden, die bestimmten Trainingsinstanzen in der Datenbank 162 für die Erfassung von Computermodell-Trainingsinstanzen entsprechen. Wie oben erwähnt, können die Einträge in der Datenbank 162 für die Erfassung von Computermodell-Trainingsinstanzen alternativ die tatsächlich vorgenommenen Veränderungen und nicht notwendigerweise die bestimmten verwendeten Werte speichern; anstatt zu speichern, dass Hyperparameter x gleich 3 ist, kann der Eintrag z.B. angeben, dass Hyperparameter X um 1 erhöht wurde, oder anstatt bei einem weiteren Beispiel eine Identität der bestimmten Arten von Entitäten in dem Trainingsdatensatz zu speichern, die hinzugefügt, entfernt, modifiziert wurden, kann der Eintrag in der Datenbank 162 angeben, dass Entitäten der Art A um 300 erhöht wurden, Entitäten der Art B um 50 verringert wurden und dergleichen.
  • Es dürfte klar sein, dass im Laufe der Zeit mehrere Trainingsinstanzen der Kopien des Computermodells erfasst werden können, wobei jede Trainingsinstanz des computerrealisierten Modells ein Training des computerrealisierten Modells unter Verwendung eines unterschiedlichen Trainingsdatensatzes, eines unterschiedlichen Trainingswerkzeugs und/oder unterschiedlicher Hyperparameter-Einstellungen beinhaltet, um eine Instanz eines trainierten computerrealisierten Modells zu erzeugen, die sich von anderen Trainingsinstanzen des computerrealisierten Modells unterscheidet. Die Computermethodik enthält ferner ein Erzeugen von computerrealisierten Modellergebnissen nach jeder Trainingsinstanz, indem die entsprechende Instanz des trainierten computerrealisierten Modells für Trainingsdaten eines Trainingsdatensatzes ausgeführt wird. Die erzeugten computerrealisierten Modellergebnisse und/oder Unterschiede bei erzeugten computerrealisierten Modellergebnissen gegenüber einer früheren Trainingsinstanz können ebenfalls in Zusammenhang mit dem Eintrag in der Datenbank 162 für die Erfassung von Computermodell-Trainingsinstanzen gespeichert werden.
  • Diese Informationen zu computerrealisierten Modellergebnissen werden zusammen mit den anderen Informationen zu Trainingsinstanzen über die Engine 160 für die Erfassung von Modellinstanzen empfangen. Die computerrealisierten Informationen zu Modellergebnissen und die anderen Informationen zu Trainingsmerkmalen oder - bei manchen Ausführungsformen - die Unterschiede dieser Arten von Informationen gegenüber einer früheren Trainingsinstanz werden in Zusammenhang mit entsprechenden Bezeichnern der Instanzen des trainierten computerrealisierten Modells aufgezeichnet.
  • Nachdem die Informationen zu Trainingsmerkmalen und die Ergebnisinformationen über die Engine 160 für die Erfassung von Modellinstanzen erhalten wurden und entsprechende Einträge in der Datenbank 162 für die Erfassung von Computermodell-Trainingsinstanzen gespeichert wurden, werden auf die aufgezeichneten Einträge in der Datenbank 162 für die Erfassung von Computermodell-Trainingsinstanzen verschiedene Analysen angewendet, um aufgezeichnete Unterschiede und die entsprechenden computerrealisierten Modellergebnisse zu analysieren. Auf Grundlage dieser Analysen werden Trends bei Veränderungen an Trainingsmerkmalen und ihren entsprechenden Veränderungen von Computermodell-Ergebnissen identifiziert, und eine entsprechende Ausgabe wird erzeugt, die eine Korrelation zwischen den aufgezeichneten Unterschieden und den entsprechenden computerrealisierten Modellergebnissen angibt.
  • Die Engine 152 für die Trendanalyse von Trainingsdatensätzen wendet Analysen an, die spezifisch konfiguriert werden und darauf gerichtet sind, Trends bei Veränderungen an Trainingsdatensätzen zu identifizieren und diese mit Trends bei Veränderungen von computerrealisierten Modellergebnissen zu korrelieren, z.B. Veränderungen bei Leistungs- und/oder Genauigkeitskennzahlen. Auf diese Weise identifiziert die Engine 152 für die Trendanalyse von Trainingsdatensätzen zum Beispiel Muster bei Veränderungen zwischen Trainingsinstanzen in Bezug auf Trainingsdatensatz-Merkmale, z.B. welche Arten von Entitäten hinzugefügt, entfernt oder modifiziert werden, welche Quellen von Trainingsdatensätzen verwendet werden, usw., um im Laufe der Zeit vorgenommene Änderungen zu identifizieren, die zu Verbesserungen/Minderungen bei Leistungs- und/oder Genauigkeitskennzahlen eines Computermodells führen. Zum Beispiel kann die Engine 152 durch eine Trendanalyse von Trainingsdatensätzen ermitteln, dass für eine bestimmte Kopie eines computerrealisierten Modells ein Erhöhen der Anzahl von medizinischen Bildern der Art A, die in dem Trainingsdatensatz vorhanden sind, zu einer um den Betrag X verbesserten Genauigkeit des Computermodells führt, wenn es darum geht, das Vorhandensein einer bestimmten Anomalie bei medizinischen Bildgebungsdaten eines Patienten vorherzusagen.
  • Auf ähnliche Weise wendet die Engine 154 für die Trendanalyse von Trainingswerkzeugen Analysen an, die spezifisch konfiguriert werden und darauf gerichtet sind, Trends bei Veränderungen an Trainingswerkzeugen zu identifizieren und diese mit Trends bei Veränderungen mit computerrealisierten Modellergebnissen zu korrelieren. Somit identifiziert die Engine 154 für die Trendanalyse von Trainingswerkzeugen zum Beispiel Muster bei Veränderungen zwischen Trainingsinstanzen in Bezug auf das bestimmte Trainingswerkzeug, das zum Durchführen des Trainings des Computermodells verwendet wird, d.h. welche Veränderungen an Computerwerkzeugen oder Algorithmen, die zum Durchführen des Trainings verwendet werden, z.B. ein Wechsel von Werkzeug A zu Werkzeug B, zu Verbesserungen/Minderungen bei Leistungs- und/oder Genauigkeitskennzahlen eines Computermodells führen. Zum Beispiel kann die Engine 154 durch eine Trendanalyse von Trainingswerkzeugen ermitteln, dass für eine bestimmte Kopie eines computerrealisierten Modells ein Verwenden von Trainingswerkzeug oder Algorithmus A anstelle von Trainingswerkzeug oder Algorithmus B zu einer um den Betrag X besseren Leistung/Genauigkeit des Computermodells führt.
  • Die Engine 156 für die Trendanalyse von Computermodell-Hyperparametern wendet Analysen an, die spezifisch konfiguriert werden und darauf gerichtet sind, Trends bei Veränderungen von Hyperparameter-Einstellungen eines Modells, die zum Trainieren eines Computers eines computerrealisierten Modells verwendet werden, zu identifizieren und diese mit Trends bei computerrealisierten Modellergebnissen zu korrelieren. Somit identifiziert die Engine 156 für die Trendanalyse von Computermodell-Hyperparametern zum Beispiel Muster bei Veränderungen zwischen Trainingsinstanzen in Bezug auf Hyperparameter-Einstellungen, um im Verlauf der Zeit vorgenommene Veränderungen zu identifizieren, die zu Verbesserungen/Minderungen bei Leistungs- und/oder Genauigkeitskennzahlen eines Computermodells führen. Zum Beispiel kann die Engine 156 durch eine Trendanalyse von Computermodell-Hyperparametern ermitteln, dass für eine bestimmte Kopie eines computerrealisierten Modells ein Erhöhen/Mindern/Modifizieren einer Einstellung eines Hyperparameters der Kopie des Computermodells zu einer um den Betrag X besseren Leistung/Genauigkeit des Computermodells führt.
  • Die Engine 158 für die Korrelation von Modellergebnissen korreliert die durch die verschiedenen Engines 152 bis 156 identifizierten Trends bei Trainingsmerkmalen mit Trends bei computerrealisierten Modellergebnissen. Somit werden Veränderungen an Trainingsmerkmalen Veränderungen bei computerrealisierten Modellergebnissen zugeordnet, wodurch mögliche Veränderungen an Trainingsmerkmale identifiziert werden, die zu verbesserten/geminderten computerrealisierten Modellergebnissen führen. Diese Korrelation kann in Bezug auf einzelne Kopien von Computermodellen über mehrere Trainingsinstanzen der Kopien von Computermodellen hinweg vorgenommen werden. Somit können diese Trends in Bezug auf eine erste Kopie des Computermodells identifiziert werden, und die verschiedenen Trends können in Bezug auf eine zweite Kopie des Computermodells identifiziert werden, wobei diese Engines 152 bis 158 und die entsprechenden Einträge in der Datenbank 162 für die Erfassung von Computermodell-Trainingsinstanzen verwendet werden.
  • Die durch die verschiedenen Engines 152 bis 158 ausgeführten Analysen werden zusätzlich zu den erfassten Daten in der Datenbank 162 ausgeführt, um Trends bei den Trainingsmerkmalen und der entsprechenden Leistung und Genauigkeit der Kopie des computerrealisierten Modells zu identifizieren. Dieser Prozess kann für wiederholte Trainingsdurchläufe mit dem computerrealisierten Modell und für verschiedene Trainingsdatensätze, verschiedene Trainingswerkzeuge und verschiedene Hyperparameter-Einstellungen wiederholt werden.
  • Somit werden bei einer veranschaulichenden Ausführungsform zum Beispiel mehrere Trainingsinstanzen des computerrealisierten Modells mindestens durchgeführt, indem eine erste Trainingsoperation für das computerrealisierte Modell unter Verwendung einer ersten Version von Trainingsdaten und eines ersten Satzes von einem oder mehreren Hyperparametern ausgeführt wird, um eine erste trainierte Instanz des computerrealisierten Modells zu erzeugen. Die mehreren Trainingsinstanzen des computerrealisierten Modells werden ferner durchgeführt, indem eine zweiten Trainingsoperation für das computerrealisierte Modell unter Verwendung einer zweiten Version der Trainingsdaten und eines zweiten Satzes von einem oder mehreren Hyperparametern durchgeführt wird, um eine zweite trainierte Instanz des computerrealisierten Modells zu erzeugen. Veränderungen an den Trainingsinstanzen des computerrealisierten Modells werden mindestens aufgezeichnet, indem eine erste Erfassungsdatenstruktur, z.B. ein Eintrag in der Datenbank 162, die einen ersten Bezeichner der ersten Trainingsoperation mit der ersten Version von Trainingsdaten und dem ersten Satz von einem oder mehreren Hyperparametern korreliert, erzeugt wird, und indem eine zweite Erfassungsdatenstruktur, die einen zweiten Bezeichner der zweiten Trainingsoperation mit der zweiten Version von Trainingsdaten und dem zweiten Satz von einem oder mehreren Hyperparametern korreliert, durch das Datenverarbeitungssystem erzeugt wird. Computerrealisierte Modellergebnisse werden mindestens erzeugt, in dem erste Modellergebnisse aus einem Ausführen der ersten Instanz des computerrealisierten Modells erzeugt werden, und indem zweite Modellergebnisse aus einem Ausführen der zweiten Instanz des computerrealisierten Modells erzeugt werden. Die Analyse der aufgezeichneten Unterschiede und der entsprechenden computerrealisierten Modellergebnisse enthält ein Durchführen von Analysen für die erste Erfassungsdatenstruktur, die zweite Erfassungsdatenstruktur, die ersten Modellergebnisse und die zweiten Modellergebnisse durch ein Computer die Module 152 bis 158, um Unterschiede zwischen der ersten Trainingsoperation und der zweiten Trainingsoperation zu identifizieren, die mit Unterschieden zwischen den ersten Modellergebnissen und den zweiten Modellergebnissen korrelieren
  • In manchen Fällen dieser veranschaulichenden Ausführungsform ist die zweite Version von Trainingsdaten eine modifizierte Version der ersten Version von Trainingsdaten. Zum Beispiel kann ein Entwickler das computerrealisierte Modell täglich mit neuen Trainingsdaten durchführen, bei denen es sich um eine neue Version einer früheren Version von Trainingsdaten handeln kann, wobei Entitäten in den Trainingsdaten hinzugefügt, entfernt oder anderweitig modifiziert werden, und kann Aktualisierungen der Genauigkeiten des computerrealisierten Modells erhalten, die zu identifizierten Genauigkeitstrends führen können, welche mit den Veränderungen an den Trainingsmerkmalen korreliert werden können. Auf ähnliche Weise kann ein solcher Versionsverlauf in Bezug auf bestimmte Hyperparameter-Einstellungen, verwendete Trainingswerkzeuge und dergleichen durchgeführt werden.
  • Die durch die verschiedenen Engines 152 bis 158 angewendeten Analysen können auf erfasste Trainingsmerkmal-Informationen und Leistungs-/Genauigkeitsinformationen für einzelne Kopien eines Computermodells angewendet werden. Die Engine 164 für die entwicklerübergreifende Trendanalyse kann daraufhin andere Analysen oder ähnliche wie die von den Engines 152 bis 158 verwendeten Analysen über mehrere Entwickler und mehrere Kopien des Computermodells hinweg anwenden. Zum Beispiel können mehrere Kopien desselben Computermodells auf verschiedene Entwickler verteilt werden, die trainierte Kopien des Computermodells für die bestimmten gewünschten Realisierungen und Zwecke des bestimmten Kunden entwickeln, der das Computermodell verwendet. Trends bei Trainingsmerkmalen und ihre entsprechenden Trends bei Leistung/Genauigkeit der Kopien des Computermodells können über die verschiedenen mehreren Kopien desselben Computermodells hinweg korreliert und analysiert werden, wodurch identifiziert wird, wie das Computermodell für verschiedene Entwicklerumgebungen und Entwickler auf verschiedene Veränderungen von Trainingsmerkmalen reagiert. Auf diese Weise wird eine Makroanalyse über mehrere Entwickler hinweg ermöglicht.
  • Auf Grundlage der identifizierten Trends können die Mechanismen der veranschaulichenden Ausführungsformen, entweder für eine einzige Kopie eines computerrealisierten Modells oder über mehrere Kopien des computerrealisierten Modells hinweg und möglicherweise über mehrere Entwickler hinweg, Trainingsempfehlungen erzeugen, die angeben, wie sich die Trainingsmerkmale verbessern lassen, und die dadurch die Leistung/Genauigkeit der resultierenden trainierten Kopien des Computermodells verbessern. Die Trainingsempfehlungen werden auf Grundlage einer Analyse der zuvor durch die verschiedenen Engines 152 bis 158 und möglicherweise durch die Engine 164 identifizierten Trends erzeugt, indem diese Trends analysiert werden, um zu identifizieren, welche Veränderungen an Trainingsmerkmalen die Leistung/Genauigkeit der Kopien des Computermodells erhöhen, z.B. dass ein Hinzufügen von mehr Entitäten wie X die Genauigkeit des Computermodells erhöhen wird, dass ein Entfernen von bestimmten Entitäten die Genauigkeit des Computermodells erhöhen wird, dass ein Einstellen eines Hyperparameter-Werts auf einen bestimmten Bereich oder Wert die Genauigkeit verbessern wird, oder dergleichen. In manchen Fällen können die Trainingsempfehlungen auf bestimmte Architekturen gerichtet sein, indem sie z.B. angeben, dass ein Computermodell mit einer Architektur A bessere Ergebnisse erbringt als Computermodelle mit einer Architektur B.
  • Die Trainingsempfehlungen können über eine oder mehrere grafische Benutzerschnittstellen (Graphical User Interfaces, GUIs), Dashboards oder dergleichen vorgelegt werden. Die GUIs oder Dashboards können grafische Darstellungen der durch die Analysen der veranschaulichenden Ausführungsformen identifizierten Trends, tabellarische Darstellungen solcher Trendinformationen oder eine beliebige andere Darstellung der Trendinformationen enthalten, die für die bestimmte Realisierung geeignet ist. Bei einer veranschaulichenden Ausführungsform enthalten die GUIs oder Dashboards eine Graphen-Darstellung der Trendinformationen, bei der Trainingsinstanzen als Punkte entlang eines Graphen dargestellt werden, die auswählbar sind, um ausführliche Informationen zu den bestimmten Trainingsmerkmalen zu erhalten, die bei der Trainingsinstanz verwendet werden. Zum Beispiel kann auf einer Achse die Leistung/Genauigkeit des Computermodells abgetragen werden, und auf einer weiteren Achse kann die Zeit abgetragen werden, so dass die Leistung/Genauigkeit des Computermodells über die Zeit dargestellt wird. Die Punkte des Graphen-Diagramms stellen die verschiedenen Trainingsinstanzen zu verschiedenen Zeitpunkten dar, die gemäß den erzeugten Computermodell-Ergebnissen, d.h. den Leistungs-/Genauigkeitskennzahlen, abgetragen werden. Obwohl einfache Beispiele aus zweidimensionalen Graphen bestehen, wird darauf hingewiesen, dass kompliziertere Realisierungen mehrdimensionale Graphen verwenden können, bei denen viele verschiedene Leistungs-/Genauigkeitskennzahlen abgetragen und verschiedene Trainingsmerkmale dargestellt werden.
  • Die Engine 166 für Trainingsempfehlungen kann diese GUIs, Dashboards oder dergleichen erzeugen und ausgeben und sie Entwicklern von Computermodellen vorlegen, so dass diese verstehen können, welche Veränderungen an den Trainingsmerkmalen der Trainingsprozesse ihrer Computermodelle vorgenommen werden können, um ihr Training zu verbessern und dadurch die resultierenden trainierten Computermodelle zu verbessern. Bei manchen veranschaulichenden Ausführungsformen kann zusätzlich oder alternativ zu der grafischen Darstellung der erfassten Trainingsinformationen die Engine 166 für Trainingsempfehlungen natürlichsprachliche oder andere durch einen Menschen lesbare Empfehlungen erzeugen, um Trainingsmerkmale für Trainingsinstanzen für Computermodelle zu modifizieren.
  • In manchen Fällen können die durch die Engine 166 für Trainingsempfehlungen erzeugten Empfehlungen auch Empfehlungen zu Veränderungen enthalten, die nicht vorgenommen werden sollten. Zum Beispiel kann die Engine 166 für Trainingsempfehlungen durch die Trainingsanalysen, die auf die empfangenen Trainingsinformationen angewendet werden, ermitteln, dass es ein Muster einer verringerten oder geringeren Leistung/Genauigkeit des Computermodells gibt, wenn bestimmte Arten von Veränderungen an Trainingsmerkmalen vorgenommen werden. Als ein Ergebnis dieser Trends kann die Engine 166 für Trainingsempfehlungen empfehlen, dass solche Veränderungen, die zu einer geringeren Genauigkeit oder Leistung des Computermodells führen, nicht durchgeführt werden sollten.
  • Bei manchen veranschaulichenden Ausführungsformen werden die durch die Engine 166 für Trainingsempfehlungen erzeugten Empfehlungen durch die Engine 168 für die automatisierte Empfehlungsrealisierung verwendet, um die Trainingsempfehlungen automatisch zu realisieren. Zum Beispiel können die Trainingsempfehlungen Empfehlungen aufweisen, Hyperparameter-Einstellungen zu modifizieren, indem Einstellungen der Hyperparameter erhöht/gemindert/modifiziert werden. Die Engine 168 für die automatisierte Empfehlungsrealisierung kann Hyperparameter-Einstellungen gemäß der Trainingsempfehlung automatisch modifizieren, um eine weitere Trainingsinstanz durchzuführen und die Computermodell-Ergebnisse zu verbessern, die durch das aktuell trainierte Computermodell erzeugt werden. Als ein weiteres Beispiel kann die Trainingsempfehlung bestimmte Trainingswerkzeuge angeben, die Computermodell-Ergebnisse tendenziell verbessern, und von dem verwendeten Trainingswerkzeug kann automatisch zu dem identifizierten Trainingswerkzeug gewechselt werden, das eine Leistung/Genauigkeit eines Computermodells verbessert.
  • Bei anderen veranschaulichenden Ausführungsformen kann die Trainingsempfehlung den Trainingsdatensatz selbst und die bestimmte Zusammensetzung des Trainingsdatensatzes modifizieren, z.B. welche Arten von Entitäten in dem Trainingsdatensatz enthalten sind, welche Mengen an verschiedenen Arten von Entitäten in dem Trainingsdatensatz vorhanden sind, bestimmte Quellen von Trainingsdaten, die verbesserte Computermodell-Ergebnisse bereitstellen, usw. Auf Grundlage der Empfehlung zu den Arten von Entitäten, die in dem Trainingsdatensatz enthalten sein sollten, den Mengen an Entitätsarten usw. werden diese Trainingsdatensatz-Merkmale als Suchkriterien für ein Durchführen einer automatischen Suche nach anderen Trainingsdatensätzen in einem oder mehreren Trainingsdatensatz-Repositorys verwendet, die Entitäten enthalten können, von denen ermittelt wird, dass sie die Genauigkeit und/oder Leistung des Computermodells verbessern, d.h. die den Suchkriterien und somit der Trainingsempfehlung entsprechen. Wenn zum Beispiel neue Trainingsdatensätze verfügbar gemacht werden, können ihre Merkmale bei der Engine 170 für die Erfassung von Trainingsdatensatz-Quellenmerkmalen registriert werden. Die automatisierte Suche kann durch diese Engine 170 für die Erfassung von Trainingsdatensatz-Quellenmerkmalen und das durch die Engine 170 für die Erfassung von Trainingsdatensatz-Quellenmerkmalen verwaltete Register durchgeführt werden.
  • Bei manchen veranschaulichenden Ausführungsformen können die automatisch identifizierten Trainingsdatensätze, die anhand der automatischen Suche automatisch identifiziert werden, durch die Engine 168 für die automatisierte Empfehlungsrealisierung automatisch abgerufen und zum Trainieren des Computermodells verwendet werden. Dieser Prozess kann so lange wiederholt werden, bis eine gewünschte Genauigkeit oder Leistung des Computermodells erreicht wird oder bis ermittelt wird, dass auf Grundlage der verfügbaren Trainingsdatensätze, Werkzeuge usw. keine weitere Verbesserung möglich ist, z.B. wenn ein Fehler oder Verlust des Computermodells gleich einem oder kleiner als ein vorgegebener Schwellenwert ist.
  • Wie oben erwähnt, kann jede Trainingsinstanz eines Computermodells zusammen mit den bestimmten Veränderungen an Trainingsmerkmalen und bestimmten erzeugten Computermodell-Ergebnissen erfasst werden. Bei manchen veranschaulichenden Ausführungsformen wird eine Versionserfassung der Trainingsdaten bereitgestellt, so dass bei Bedarf frühere Versionen von Trainingsdaten wiederhergestellt werden können. Bei manchen veranschaulichenden Ausführungsformen wird demnach über die verschiedenen Trainingsinstanzen hinweg eine Zuordnung der Trainingsdaten, die für eine Verwendung durch das Modell formatiert werden, zu den ursprünglich empfangenen Trainingsdaten beibehalten. Auf diese Weise können die ursprünglich empfangenen Trainingsdaten mit den durch das Modell formatierten Trainingsdaten wiederhergestellt werden. Somit können die Mechanismen der veranschaulichenden Ausführungsformen eine Version von Trainingsdaten, die von einem Kunden erhalten wird, mit der Version von Daten korrelieren, die für eine Verarbeitung durch das Computermodell erzeugt wird, und können dem Kunden über das Erfassen des Versionsverlaufs Daten zurückgeben, so dass die frühere Version reproduziert werden kann.
  • Obwohl sich die oben beschriebenen Beispielausführungsformen auf Trendanalysen beziehen, die auf ein einziges Computermodell angewendet werden - wenn auch potenziell darauf, dass verschiedene Kopien desselben Computermodells durch verschiedene Entwickler trainiert werden -, sollte doch klar sein, dass die veranschaulichenden Ausführungsformen nicht hierauf beschränkt sind. Vielmehr kann eine Trendanalyse und Erzeugung einer Trainingsempfehlung je nach der gewünschten Realisierung auch über verschiedene Computermodelle hinweg durchgeführt werden. Zum Beispiel kann ermittelt werden, dass Veränderungen bei Trainingsmerkmalen bei einem Computermodell ähnliche Auswirkungen auf das Training anderer Computermodelle haben kann, und somit können die Mechanismen der veranschaulichenden Ausführungsformen eine Computermodell-übergreifende Trendanalyse und Computermodell-übergreifende Trainingsempfehlungen erzeugen. In einem solchen Fall kann die Trendanalyse in Bezug auf verschiedene Einträge in der Datenbank 162 durchgeführt werden, die verschiedenen Computermodellen zugehörig sind.
  • Wie oben erwähnt, fußen die Mechanismen der veranschaulichenden Ausführungsformen auf der Computertechnologie und werden unter Verwendung von Logik realisiert, wie sie in solchen Rechen- oder Datenverarbeitungssystemen vorhanden ist. Diese Rechen- oder Datenverarbeitungssysteme werden entweder über Hardware, Software oder eine Kombination aus Hardware und Software spezifisch konfiguriert, um die verschiedenen oben beschriebenen Operationen zu realisieren. 2 wird somit als ein Beispiel für eine Art von Datenverarbeitungssystem bereitgestellt, in der Ausführungsformen der vorliegenden Erfindung realisiert werden können. Viele andere Arten von Datenverarbeitungssystemen können ebenfalls konfiguriert werden, um die Mechanismen der veranschaulichenden Ausführungsformen spezifisch zu realisieren.
  • 2 ist ein Blockschaubild eines Beispiel-Datenverarbeitungssystems, in dem veranschaulichende Ausführungsformen realisiert werden. Ein Datenverarbeitungssystem 200 ist ein Beispiel für einen Computer wie z.B. den Server 104 oder den Client 110 aus 1, in dem sich computernutzbarer Code oder computernutzbare Anweisungen befinden, welche die Prozesse für veranschaulichende Ausführungsformen der vorliegenden Erfindung realisieren. Bei einer veranschaulichenden Ausführungsform stellt 2 eine Server-Datenverarbeitungseinheit wie z.B. einen Server 104 dar, der ein kognitives System 100 und eine QA-System-Pipeline 108 realisiert, die so erweitert sind, dass sie die zusätzlichen Mechanismen der im Folgenden beschriebenen veranschaulichenden Ausführungsformen beinhalten.
  • In dem dargestellten Beispiel kann das Datenverarbeitungssystem 200 eine Hub-Architektur verwenden, die einen North Bridge & Memory Controller Hub (NB/MCH) 202 und einen South Bridge & Input/Output (I/O) Controller Hub (SB/ICH) 204 enthält. Die Verarbeitungseinheit 206, der Hauptarbeitsspeicher 208 und der Grafikprozessor 210 werden mit dem NB/MCH 202 verbunden. Der Grafikprozessor 210 kann über einen Accelerated Graphics Port (AGP) mit dem NB/MCH 202 verbunden werden.
  • In dem dargestellten Beispiel wird ein Adapter 212 für ein lokales Netzwerk (Local Area Network, LAN) mit dem SB/ICH 204 verbunden. Ein Audioadapter 216, ein Tastatur- und Mausadapter 220, ein Modem 222, ein Festwertspeicher (Read Only Memory, ROM) 224, ein Festplattenlaufwerk (Hard Disk Drive, HDD) 226, ein CD-ROM-Laufwerk 230, USB-Anschlüsse (Universal Serial Bus) und andere Datenübertragungsanschlüsse 232 sowie PCI/PCIe-Einheiten 234 werden über den Bus 238 und den Bus 240 mit dem SB/ICH 204 verbunden. Die PCI/PCIe-Einheiten können zum Beispiel Ethernet-Adapter, Erweiterungskarten und PC-Karten für Notebook Computer enthalten. PCI verwendet einen CardBus-Controller, PCle nicht. Der ROM 224 kann zum Beispiel ein Flash-BIOS (Binary Input/Output System) sein.
  • Das HDD 226 und das CD-ROM-Laufwerk 230 sind über den Bus 240 mit dem SB/ICH 204 verbunden. Das HDD 226 und das CD-ROM-Laufwerk 230 können zum Beispiel eine IDE-Schnittstelle (Integrated Drive Electronics) oder eine SATA-Schnittstelle (Serial Advanced Technology Attachment) verwenden. Eine Super-I/O(SIO)-Einheit 236 ist mit dem SB/ICH 204 verbunden.
  • In der Verarbeitungseinheit 206 wird ein Betriebssystem ausgeführt. Das Betriebssystem koordiniert verschiedene Komponenten innerhalb des Datenverarbeitungssystems 200 aus 2 und stellt deren Steuerung bereit. Als Client ist das Betriebssystem ein handelsübliches Betriebssystem wie Microsoft® Windows® 8. Ein objektorientiertes Programmiersystem wie z.B. das Java™-Programmiersystem kann gemeinsam mit dem Betriebssystem ausgeführt werden und Aufrufe an Java™-Programme oder -Anwendungen bereitstellen, die auf dem Datenverarbeitungssystem 200 ausgeführt werden.
  • Als Server kann das Datenverarbeitungssystem 200 zum Beispiel ein IBM® eServer™ System p-Computersystem sein, welches das Betriebssystem Advanced Interactive Executive (AIX®) oder das LINUX®-Betriebssystem ausführt. Das Datenverarbeitungssystem 200 kann ein symmetrisches Mehrprozessorsystem (Symmetric Multiprocessor, SMP) sein, das eine Mehrzahl von Prozessoren in der Verarbeitungseinheit 206 enthält. Alternativ kann ein Einzelprozessorsystem verwendet werden. IBM, eServer und AIX sind Marken der International Business Machines Corporation in den Vereinigten Staaten und in anderen Ländern. Microsoft, Windows, Windows NT und das Windows-Logo sind Marken der Microsoft Corporation in den Vereinigten Staaten und/oder anderen Ländern. Java und alle Marken und Logos auf Java-Grundlage sind Marken oder eingetragene Marken von Oracle und/oder seinen Tochtergesellschaften. Die eingetragene Marke Linux® wird gemäß einer Unterlizenz der Linux Foundation verwendet, dem alleinigen Lizenznehmer des weltweiten Markeninhabers Linus Torvalds.
  • Anweisungen für das Betriebssystem, das objektorientierte Programmiersystem und Anwendungen oder Programme befinden sich auf Speichereinheiten wie z.B. dem HDD 226 und werden zur Ausführung durch die Verarbeitungseinheit 206 in den Hauptarbeitsspeicher 208 geladen. Die Prozesse für veranschaulichende Ausführungsformen der vorliegenden Erfindung werden durch die Verarbeitungseinheit 206 unter Verwendung von computernutzbarem Programmcode durchgeführt, der sich in einem Arbeitsspeicher wie zum Beispiel dem Hauptarbeitsspeicher 208, dem ROM 224 oder in einer oder mehreren Peripherie-Einheiten 226 und 230 befindet.
  • Ein Bussystem wie z.B. der Bus 238 oder 240 aus 2 weist einen oder mehrere Busse auf. Das Bussystem kann selbstverständlich unter Verwendung einer beliebigen Art von Datenübertragungsstruktur oder -architektur realisiert werden, die eine Übertragung von Daten zwischen verschiedenen Komponenten oder Einheiten bereitstellt, die mit der Struktur oder Architektur verbunden werden. Eine Datenübertragungseinheit, wie z.B. der Modem 222 oder der Netzwerkadapter 212 aus 2 enthält eine oder mehrere Einheiten, die zum Übertragen und Empfangen von Daten verwendet werden. Ein Arbeitsspeicher kann z.B. der Hauptarbeitsspeicher 208, der ROM 224 oder ein Cache sein, wie er in dem NB/MCH 202 aus 2 vorhanden ist.
  • Der Fachmann weiß, dass die in den 1 und 2 dargestellte Hardware abhängig von der Realisierung variieren kann. Zusätzlich zu oder anstatt der in den 1 und 2 dargestellten Hardware können auch andere interne Hardware- oder Peripherie-Einheiten wie z.B. ein Flash-Arbeitsspeicher, ein gleichwertiger nicht flüchtiger Arbeitsspeicher oder optische Plattenlaufwerke und dergleichen verwendet werden. Außerdem können die Prozesse der veranschaulichenden Ausführungsformen auch auf ein anderes Mehrprozessor-Datenverarbeitungssystem als das oben erwähnte SMP-System angewendet werden, ohne vom gedanklichen Wesensgehalt und inhaltlichen Umfang der vorliegenden Erfindung abzuweichen.
  • Zudem kann das Datenverarbeitungssystem 200 in Gestalt einer Reihe verschiedener Datenverarbeitungssysteme vorliegen, z.B., ohne darauf beschränkt zu sein, Client-Datenverarbeitungseinheiten, Server-Datenverarbeitungseinheiten, ein Tablet Computer, ein Laptop Computer, ein Telefon oder eine anderweitige Datenübertragungseinheit, ein persönlicher digitaler Assistent (PDA) oder dergleichen. Bei manchen veranschaulichenden Beispielen kann das Datenverarbeitungssystem 200 eine tragbare Datenverarbeitungseinheit sein, die mit einem Flash-Arbeitsspeicher konfiguriert ist, um nicht flüchtigen Arbeitsspeicher zum Beispiel zum Speichern von Betriebssystemdateien und/oder durch einen Benutzer erzeugten Daten bereitzustellen. Im Wesentlichen kann das Datenverarbeitungssystem 200 jedes bekannte oder künftig entwickelte Datenverarbeitungssystem ohne architektonische Beschränkung sein.
  • 3 ist ein Ablaufplan, der eine Beispieloperation eines Datenverarbeitungssystems zum Trainieren eines Computermodells gemäß einer veranschaulichenden Ausführungsform darlegt. Wie in 3 gezeigt, startet die Operation, indem Trainingsinformationen für eine oder mehrere Trainingsinstanzen einer Kopie eines Computermodells von einer Entwicklerumgebung wie z.B. einer in einem Client/Server-Datenverarbeitungssystem realisierten Entwicklerumgebung empfangen werden (Schritt 310). Wie bereits erwähnt, kann dieses Erhalten von Trainingsinformationen durch die Verwendung von Agenten, die innerhalb oder in Verbindung mit der Entwicklerumgebung vorhanden sind und dort ausgeführt werden, direkt von der Entwicklerumgebung oder über einen beliebigen anderen geeigneten Mechanismus zum Erhalten solcher Daten von der Entwicklerumgebung erfolgen, in der ein Entwickler die Kopie des Computermodells trainiert.
  • Auf Grundlage der empfangenen Trainingsinformationen werden ein oder mehrere entsprechende Einträge für die Kopie des Computermodells in der Datenbank für die Erfassung von Computermodell-Trainingsinstanzen erzeugt (Schritt 320). Wie bereits erwähnt, kann der Eintrag auf Grundlage von einem oder mehreren unterschiedlichen Bezeichnern oder Indikatoren wie z.B. einem Trainingsinstanz-Indikator, einem Indikator für die Kopie des Computermodells und/oder dergleichen indexiert werden.
  • Für die Kopie des Computermodells können eine oder mehrere Trendanalysen auf die Einträge in der Datenbank für die Erfassung von Computermodell-Trainingsinstanzen angewendet werden, um Trends bei Trainingsmerkmalen zu identifizieren (Schritt 330). Zusätzlich werden eine oder mehrere Trendanalysen auf Einträge in der Datenbank für die Erfassung von Computermodell-Trainingsinstanzen über Kopien des Computermodells und/oder über verschiedene Kopien von verschiedenen Modellen hinweg angewendet, um über Computermodelle hinweg Trends bei Trainingsmerkmalen zu identifizieren (Schritt 340). Die identifizierten Trends bei Trainingsmerkmalen werden mit Trends bei Computermodell-Ergebnissen korreliert (Schritt 350).
  • Auf Grundlage der mit Trends bei Computermodell-Ergebnissen korrelierten Trends bei Trainingsmerkmalen werden eine oder mehrere Trainingsempfehlungen der Kopie des Computermodells erzeugt und an einen Entwickler oder einen anderen berechtigten Benutzer ausgegeben, der für eine Entwicklung einer Kopie des Computermodells verantwortlich ist (Schritt 360). Optional können die eine bzw. die mehreren Trainingsempfehlungen automatisch realisiert werden, indem entsprechende Computeroperationen durchgeführt werden, um Trainingsmerkmale gemäß der bzw. den Trainingsempfehlungen zu modifizieren (Schritt 370). Dies kann zum Beispiel ein Modifizieren von Einstellungen von Hyperparametern, ein Modifizieren von Inhalt von Trainingsdatensätzen, ein Erhalten von neuen Trainingsdatensätzen von bestimmten Trainingsdatensatz-Quellen, ein Modifizieren von verwendeten Trainingswerkzeugen oder dergleichen enthalten.
  • Die Kopie des Computermodells wird unter Verwendung einer oder mehrerer Trainingsempfehlungen trainiert, unabhängig davon, ob sie automatisch oder durch eine manuelle Modifikation auf Grundlage der Ausgabe der Trainingsempfehlung an den Entwickler realisiert wird (Schritt 380). Danach endet die Operation.
  • Wie oben beschrieben, beruhen die durch die Mechanismen der veranschaulichenden Ausführungsformen erzeugten Trainingsempfehlungen auf den Trendanalysen, die für die Trainingsmerkmale und die entsprechenden Computermodell-Ergebnisse durchgeführt werden. Die Ausgabe dieser Trainingsempfehlungen kann auf verschiedene Arten vorgelegt werden, z.B. als grafische Benutzerschnittstellen und Dashboards, bei denen die Trends als Graphen dargestellt werden, die eine Leistung/Genauigkeit eines Computermodells mit Trainingsmerkmalen verschiedener Trainingsinstanzen einer Kopie des Computermodells oder über mehrere Kopien des Computermodells oder verschiedener Computermodelle hinweg über die Zeit korrelieren. Bei manchen veranschaulichenden Ausführungsformen kann das Dashboard in einem tabellarischen Format dargestellt werden, bei dem eine oder mehrere Spalten der tabellarischen Ausgabe die Trends bei einer Leistung/Genauigkeit eines Computermodells darstellen, eine oder mehrere Spalten Trainingsmerkmal-Informationen darstellen und eine oder mehrere andere Spalten andere Arten von Informationen darstellen, die spezifisch für die Trainingsinstanz der Kopie des Computermodells sind.
  • 4 ist ein Beispieldiagramm einer Dashboard-Darstellung von Trainingsinformationen gemäß einer veranschaulichenden Ausführungsform. Wie in 4 gezeigt, liegt die Dashboard-Darstellung in Form einer Tabelle vor, bei der Zeilen der Tabellen verschiedene Computermodelle darstellen und Spalten die verschiedenen Trainingsinstanz-Informationen und Trendinformationen für die Trainingsinstanz darstellen. Die Spalte „Details“ enthält durch den Benutzer auswählbare Elemente, die bei Auswahl durch den Benutzer ausführliche Informationen zu den Trainingsdaten erzeugen, die zum Trainieren des betreffenden Modells verwendet werden. Die Spalte „Trend“ enthält durch den Benutzer auswählbare Elemente, die bei Auswahl durch den Benutzer eine Ausgabe erzeugen, die Trends beim Training des betreffenden Modells angeben.
  • 5 ist ein Beispieldiagramm einer grafischen Darstellung von Trends des Trainings einer Kopie eines Computermodells gemäß einer veranschaulichenden Ausführungsform. Wie in 5 gezeigt, weist die grafische Darstellung eine vertikale Achse, welche die Genauigkeit der Computermodell-Ausgabe darstellt, und eine horizontale Achse auf, die eine Zeitreihe darstellt. Die Punkte entlang der Linien stellen Trainingsinstanzen für die Kopie des Computermodells dar, wobei die Linien zwischen diesen Punkten die Trends bei der Computermodell-Leistung darstellen. Die Punkte in der grafischen Darstellung sind durch einen Benutzer auswählbar, so dass, wenn ein Benutzer den entsprechenden Punkt auswählt, eine Kombination aus der Trainingsdaten-Version, den Trainingswerkzeugen, den Hyperparametern und anderen Trainingsmerkmalen dargestellt werden kann, um durch den Entwickler betrachtet zu werden. Anhand dieser Darstellung der Trainingsmerkmale kann der Entwickler erkennen, welche Kombination von Trainingsmerkmalen zu Erhöhungen/Minderungen bei einer Leistung/Genauigkeit eines Computermodells führen können, welche Trainingsergebnisse zu anomalen Erhöhungen/Minderungen führen, und dergleichen. Wenn in der grafischen Darstellung ein Trendverlauf glatter und mit der gewünschten Leistung/Genauigkeit dargestellt wird, wie das in dem dargestellten Beispiel in Region 510 der Fall ist, kann der Entwickler die entsprechenden Trainingsmerkmale identifizieren und sie verwenden, um durch eine geeignete Einstellung der Trainingsmerkmale eine verbesserte Leistung/Genauigkeit des Computermodells zu erhalten.
  • 6 ist ein Beispieldiagramm der tabellarischen Darstellung der Trainingsmodell- und Trainingsdatensatz-Merkmale, wobei obige 5 den Genauigkeitstrend über eine Mehrzahl von Modellen hinweg darstellt. In 5 stellt somit jeder Punkt eine Computermodell-Instanz dar, wobei die Kante den Trend bei der Genauigkeit darstellt, z.B. zunehmend/abnehmend. Ausgehend davon, ob die Kurve in 5 ansteigt oder abfällt (wobei jede gepunktete Kante in 5 ein Modell ist), können Modellentwickler auf Trainingsmerkmale zurückgreifen, die für die Modellinstanz angegeben werden, die eine größere Genauigkeit bereitstellt. Jeder Punkt entlang der Kurve in dem in 5 gezeigten Graphen kann ihre eigene entsprechende Version der in 6 gezeigten tabellarischen Informationen aufweisen, die verwendet werden können, um die Trainingsmerkmale für die bestimmte Instanz des Computermodells anzugeben.
  • Somit wird mit den Mechanismen der veranschaulichenden Ausführungsformen ein verbessertes Computerwerkzeug zum Trainieren eines computerrealisierten Modells bereitgestellt, wobei dieses verbesserte Computerwerkzeug in einem Datenverarbeitungssystem realisiert wird, das spezifisch konfiguriert wird, um eine geordnete Kombination von computerspezifischen Operationen durchzuführen, um ein computerrealisiertes Modell zu trainieren und die an den Trainingsmerkmalen vorgenommenen Veränderungen zu erfassen sowie diese an den Trainingsmerkmalen vorgenommenen Veränderungen mit Veränderungen bei den Leistungs-/Genauigkeitskennzahlen zu korrelieren. Das verbesserte Computerwerkzeug stellt ferner computerspezifische Operationen bereit, die Trends in den erfassten Informationen identifizieren und die Analysen durchführen, um Empfehlungen zum Verbessern des Trainings des computerrealisierten Modells zu erzeugen und/oder die erzeugten Empfehlungen automatisch zu realisieren, um das Training des computerrealisierten Modells zu verbessern.
  • Wie oben erwähnt, sollte klar sein, dass die veranschaulichenden Ausführungsformen in Gestalt einer vollständig aus Hardware bestehenden Ausführungsform, einer vollständig aus Software bestehenden Ausführungsform oder in Gestalt einer Ausführungsform vorliegen können, die sowohl Hardware- als auch Software-Elemente enthält. Bei einer Beispielausführungsform werden die Mechanismen der veranschaulichenden Ausführungsformen in Software oder in Programmcode realisiert, wobei dies z.B. Firmware, speicherresidente Software, Mikrocode usw. enthält, ohne darauf beschränkt zu sein.
  • Ein zum Speichern und/oder Ausführen von Programmcode geeignetes Datenverarbeitungssystem enthält mindestens einen Prozessor, der über einen Datenübertragungsbus wie zum Beispiel einen Systembus direkt oder indirekt mit Arbeitsspeicherelementen verbunden wird. Die Arbeitsspeicherelemente können einen lokalen Arbeitsspeicher, der während der tatsächlichen Ausführung des Programmcodes verwendet wird, einen Massenspeicher und Cache-Arbeitsspeicher enthalten, die eine vorübergehende Speicherung von mindestens einem Teil des Programmcodes bereitstellen, um die Häufigkeit zu verringern, mit welcher Code während der Ausführung aus dem Massenspeicher abgerufen werden muss. Dabei kann es sich um verschiedene Arten von Arbeitsspeicher handeln, z.B. um einen ROM, PROM, EPROM, EEPROM, DRAM, SRAM, Flash-Arbeitsspeicher, Halbleiterspeicher und dergleichen, ohne darauf beschränkt zu sein.
  • Eingabe/Ausgabe- bzw. E/A-Einheiten (z.B., ohne darauf beschränkt zu sein, Tastaturen, Anzeigen, Zeigeeinheiten usw.) können entweder direkt oder über dazwischengeschaltete drahtgebundene oder drahtlose E/A-Schnittstellen und/oder - Controller oder dergleichen mit dem System verbunden werden. E/A-Einheiten können in vielerlei anderen Formen als herkömmliche Tastaturen, Anzeigen, Zeigeeinheiten und dergleichen vorliegen, zum Beispiel als Datenübertragungseinheiten, die über drahtgebundene oder drahtlose Verbindungen verbunden werden, wie z.B. Smartphones, Tablet Computer, Einheiten mit berührungsempfindlichem Bildschirm, Spracherkennungseinheiten und dergleichen. Jede bekannte oder künftig entwickelte E/A-Einheit ist als innerhalb des inhaltlichen Umfangs der veranschaulichenden Ausführungsformen zu verstehen.
  • Netzwerkadapter können ebenfalls mit dem System verbunden werden, um die Verbindung des Datenverarbeitungssystems mit anderen Datenverarbeitungssystemen oder mit entfernt angeordneten Druckern oder Speichereinheiten über dazwischengeschaltete private oder öffentliche Netzwerke zu ermöglichen. Modems, Kabelmodems und Ethernet-Karten sind nur einige der momentan verfügbaren Typen von Netzwerkadaptern für eine drahtgebundene Datenübertragung. Daneben können auch Netzwerkadapter auf Grundlage einer drahtlosen Datenübertragung verwendet werden, z.B. drahtlose 802.11-a/b/g/n-Datenübertragungsadapter, drahtlose Bluetooth-Adapter und dergleichen, ohne darauf beschränkt zu sein. Alle bekannten oder künftig entwickelten Netzwerkadapter sind als innerhalb des gedanklichen Wesensgehalts und inhaltlichen Umfangs der vorliegenden Erfindung liegend zu verstehen.
  • Die Beschreibung der vorliegenden Erfindung wurde zum Zwecke der Veranschaulichung und Erläuterung vorgelegt und ist mit Bezug auf die offenbarte Erfindung nicht als vollständig oder beschränkend zu verstehen. Der Fachmann weiß, dass zahlreiche Modifikationen und Abwandlungen möglich sind, ohne von Umfang und Geist der beschriebenen Ausführungsformen abzuweichen. Die Ausführungsform wurde ausgewählt und beschrieben, um die Grundsätze der Erfindung und die praktische Anwendung bestmöglich zu erläutern und um anderen Fachleuten die Möglichkeit zu geben, die Erfindung mit Blick auf verschiedene Ausführungsformen mit verschiedenen Modifikationen zu verstehen, wie sie für die jeweilige, in Erwägung gezogene Verwendung geeignet sind. Die hier verwendete Begrifflichkeit wurde gewählt, um die Grundsätze der Ausführungsformen, die praktische Anwendung oder technische Verbesserung gegenüber marktgängigen Technologien bestmöglich zu erläutern bzw. anderen Fachleuten das Verständnis der hier offenbarten Ausführungsformen zu ermöglichen.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Patentliteratur
    • US 2011/0125734 [0055]
  • Zitierte Nicht-Patentliteratur
    • Yuan et al., „Watson and Healthcare“, IBM developerWorks, 2011, und in „The Era of Cognitive Systems: An Inside Look at IBM Watson and How it Works“ von Rob High, IBM Redbooks, 2012 [0061]

Claims (30)

  1. Verfahren zum Trainieren eines computerrealisierten Modells in einem Datenverarbeitungssystem, aufweisend: Durchführen von mehreren Trainingsinstanzen des computerrealisierten Modells durch das Datenverarbeitungssystem, wobei jede Trainingsinstanz des computerrealisierten Modells ein Training des computerrealisierten Modells unter Verwendung eines unterschiedlichen Trainingsdatensatzes aufweist, um eine unterschiedliche Instanz eines trainierten computerrealisierten Modells zu erzeugen; Erzeugen von computerrealisierten Modellergebnissen nach jeder Trainingsinstanz, indem die entsprechende Instanz des trainierten computerrealisierten Modells ausgeführt wird; Aufzeichnen von Unterschieden bei den Trainingsinstanzen des computerrealisierten Modells in Zusammenhang mit entsprechenden Bezeichnern der Instanzen eines trainierten computerrealisierten Modells und entsprechenden computerrealisierten Modellergebnissen durch das Datenverarbeitungssystem; Analysieren der aufgezeichneten Unterschiede und der entsprechenden computerrealisierten Modellergebnisse durch das Datenverarbeitungssystem; und Erzeugen einer Ausgabe, die eine Korrelation zwischen aufgezeichneten Unterschieden und entsprechenden computerrealisierten Modellergebnissen angibt, durch das Datenverarbeitungssystem.
  2. Verfahren nach Anspruch 1, wobei das Durchführen von mehreren Trainingsinstanzen des computerrealisierten Modells aufweist: Ausführen einer ersten Trainingsoperation für das computerrealisierte Modell unter Verwendung einer ersten Version von Trainingsdaten und eines ersten Satzes von einem oder mehreren Hyperparametern durch das Datenverarbeitungssystem, um eine erste trainierte Instanz des computerrealisierten Modells zu erzeugen; und Ausführen einer zweiten Trainingsoperation für das computerrealisierte Modell unter Verwendung einer zweiten Version der Trainingsdaten und eines zweiten Satzes von einem oder mehreren Hyperparametern durch das Datenverarbeitungssystem, um eine zweite trainierte Instanz des computerrealisierten Modells zu erzeugen.
  3. Verfahren nach Anspruch 2, wobei ein Aufzeichnen von Veränderungen an den Trainingsinstanzen des computerrealisierten Modells aufweist: Erzeugen einer ersten Erfassungsdatenstruktur, die einen ersten Bezeichner der ersten Trainingsoperation mit der ersten Version von Trainingsdaten und dem ersten Satz von einem oder mehreren Hyperparametern korreliert, durch das Datenverarbeitungssystem; und Erzeugen einer zweiten Erfassungsdatenstruktur, die einen zweiten Bezeichner der zweiten Trainingsoperation mit der zweiten Version von Trainingsdaten und dem zweiten Satz von einem oder mehreren Hyperparametern korreliert, durch das Datenverarbeitungssystem.
  4. Verfahren nach Anspruch 3, wobei ein Erzeugen von computerrealisierten Modellergebnissen aufweist: Erzeugen erster Modellergebnisse aus einem Ausführen der ersten Instanz des computerrealisierten Modells; und Erzeugen von zweiten Modellergebnissen aus einem Ausführen der zweiten Instanz des computerrealisierten Modells und wobei ein Analysieren der aufgezeichneten Unterschiedene und der entsprechenden computerrealisierten Modellergebnisse ein Durchführen von Analysen für die erste Erfassungsdatenstruktur, die zweite Erfassungsdatenstruktur, die ersten Modellergebnisse und die zweiten Modellergebnisse durch das Datenverarbeitungssystem aufweist, um Unterschiede zwischen der ersten Trainingsoperation und der zweiten Trainingsoperation zu identifizieren, die mit Unterschieden zwischen den ersten Modellergebnissen und den zweiten Modellergebnissen korrelieren.
  5. Verfahren nach Anspruch 2, wobei die zweite Version von Trainingsdaten eine modifizierte Version der ersten Version von Trainingsdaten ist.
  6. Verfahren nach Anspruch 1, wobei ein Erzeugen der Ausgabe des Weiteren aufweist: Erzeugen von einer oder mehreren Empfehlungen zum Modifizieren eines Trainings des computerrealisierten Modells, um Trainingsdaten zu verbessern, indem auf Grundlage der aufgezeichneten Unterschiede und der entsprechenden computerrealisierten Modellergebnisse identifiziert wird, welche Veränderungen die Genauigkeit des computerrealisierten Modells erhöhen.
  7. Verfahren nach Anspruch 6, des Weiteren aufweisend: automatisches Ausführen von Computeroperationen, um die erzeugten einen oder mehreren Empfehlungen zu realisieren, wobei die Computeroperationen mindestens eines aufweisen eines Erhaltens von neuen Trainingsdaten, die Entitäten aufweisen, die in der einen oder den mehreren Empfehlungen als Entitäten angegeben werden, die ein Training des computerrealisierten Modells verbessern, eines Entfernens von Entitäten, die in der einen oder den mehreren Empfehlungen als Entitäten angegeben werden, die ein Training des computerrealisierten Modells verschlechtern, eines Modifizierens von mindestens einem Hyperparameter des computerrealisierten Modells oder eines Modifizierens eines Computermodell-Trainingswerkzeugs, das verwendet wird, um ein Training des computerrealisierten Modells durchzuführen.
  8. Verfahren nach Anspruch 1, des Weiteren aufweisend: Erfassen von Instanzen von Trainingsdaten, die zum Trainieren des computerrealisierten Modells verwendet werden, so dass zum Trainieren des computerrealisierten Modells verwendete Trainingsdaten auf eine frühere Version von Trainingsdaten zurückgesetzt werden können.
  9. Verfahren nach Anspruch 1, wobei das Analysieren ein Durchführen einer Trendanalyse für die aufgezeichneten Unterschiede und die entsprechenden computerrealisierten Modellergebnisse aufweist.
  10. Verfahren nach Anspruch 1, wobei die mehreren Trainingsinstanzen des computerrealisierten Modells ein Training von verschiedenen Kopien des computerrealisierten Modells durch verschiedene Entwickler des computerrealisierte Modells an einem oder mehreren Standorten aufweisen, um verschiedene Teilsätze von Instanzen des trainierten computerrealisierten Modells zu erzeugen, und wobei das Verfahren über alle Teilsätze von Instanzen des trainierten realisierten Modells von den verschiedenen Entwicklern des computerrealisierten Modells hinweg durchgeführt wird.
  11. Computerprogrammprodukt, aufweisend ein computerlesbares Speichermedium mit einem darauf gespeicherten computerlesbaren Programm, wobei das computerlesbare Programm bei Ausführung in einem Datenverarbeitungssystem das Datenverarbeitungssystem veranlasst: mehrere Trainingsinstanzen des computerrealisierten Modells durch das Datenverarbeitungssystem durchzuführen, wobei jede Trainingsinstanz des computerrealisierten Modells ein Training des computerrealisierten Modells unter Verwendung eines unterschiedlichen Trainingsdatensatzes aufweist, um eine unterschiedliche Instanz eines trainierten computerrealisierten Modells zu erzeugen; nach jeder Trainingsinstanz computerrealisierte Modellergebnisse zu erzeugen, indem die entsprechende Instanz des trainierten computerrealisierten Modells ausgeführt wird; Unterschiede bei den Trainingsinstanzen des computerrealisierten Modells in Zusammenhang mit entsprechenden Bezeichnern der Instanzen eines trainierten computerrealisierten Modells und entsprechenden computerrealisierten Modellergebnissen aufzuzeichnen; die aufgezeichneten Unterschiede und die entsprechenden computerrealisierten Modellergebnisse zu analysieren; und eine Ausgabe zu erzeugen, die eine Korrelation zwischen aufgezeichneten Unterschieden und entsprechenden computerrealisierten Modellergebnissen angibt.
  12. Computerprogrammprodukt nach Anspruch 11, wobei das computerlesbare Programm des Weiteren das Datenverarbeitungssystem veranlasst, mehrere Trainingsinstanzen des computerrealisierten Modells mindestens durchzuführen, indem: eine erste Trainingsoperation für das computerrealisierte Modell unter Verwendung einer ersten Version von Trainingsdaten und eines ersten Satzes von einem oder mehreren Hyperparametern ausgeführt wird, um eine erste trainierte Instanz des computerrealisierten Modells zu erzeugen; und eine zweite Trainingsoperation für das computerrealisierte Modell unter Verwendung einer zweiten Version der Trainingsdaten und eines zweiten Satzes von einem oder mehreren Hyperparametern ausgeführt wird, um eine zweite trainierte Instanz des computerrealisierten Modells zu erzeugen.
  13. Computerprogrammprodukt nach Anspruch 12, wobei das computerlesbare Programm des Weiteren das Datenverarbeitungssystem veranlasst, Veränderungen an den Trainingsinstanzen des computerrealisierten Modells mindestens aufzuzeichnen, indem: eine erste Erfassungsdatenstruktur erzeugt wird, die einen ersten Bezeichner der ersten Trainingsoperation mit der ersten Version von Trainingsdaten und dem ersten Satz von einem oder mehreren Hyperparametern korreliert; und eine zweite Erfassungsdatenstruktur erzeugt wird, die einen zweiten Bezeichner der zweiten Trainingsoperation mit der zweiten Version von Trainingsdaten und dem zweiten Satz von einem oder mehreren Hyperparametern korreliert.
  14. Computerprogrammprodukt nach Anspruch 13, wobei das computerlesbare Programm des Weiteren das Datenverarbeitungssystem veranlasst, computerrealisierte Modellergebnisse mindestens zu erzeugen, indem: erste Modellergebnisse aus einem Ausführen der ersten Instanz des computerrealisierten Modells erzeugt werden; und zweite Modellergebnisse aus einem Ausführen der zweiten Instanz des computerrealisierten Modells erzeugt werden und wobei ein Analysieren der aufgezeichneten Unterschiede und der entsprechenden computerrealisierten Modellergebnisse ein Durchführen von Analysen für die erste Erfassungsdatenstruktur, die zweite Erfassungsdatenstruktur, die ersten Modellergebnisse und die zweiten Modellergebnisse durch das Datenverarbeitungssystem aufweist, um Unterschiede zwischen der ersten Trainingsoperation und der zweiten Trainingsoperation zu identifizieren, die mit Unterschieden zwischen den ersten Modellergebnissen und den zweiten Modellergebnissen korrelieren.
  15. Verfahren nach Anspruch 12, wobei die zweite Version von Trainingsdaten eine modifizierte Version der ersten Version von Trainingsdaten ist.
  16. Computerprogrammprodukt nach Anspruch 11, wobei das computerlesbare Programm des Weiteren das Datenverarbeitungssystem veranlasst, die Ausgabe mindestens zu erzeugen, indem: eine oder mehrere Empfehlungen zum Modifizieren eines Trainings des computerrealisierten Modells erzeugt werden, um Trainingsdaten zu verbessern, indem auf Grundlage der aufgezeichneten Unterschiede und der entsprechenden computerrealisierten Modellergebnisse identifiziert wird, welche Veränderungen die Genauigkeit des computerrealisierten Modells erhöhen.
  17. Computerprogrammprodukt nach Anspruch 16, wobei das computerlesbare Programm die Datenverarbeitungseinheit des Weiteren veranlasst: Computeroperationen automatisch auszuführen, um die erzeugten einen oder mehreren Empfehlungen zu realisieren, wobei die Computeroperationen mindestens eines aufweisen eines Erhaltens von neuen Trainingsdaten, die Entitäten aufweisen, die in der einen oder den mehreren Empfehlungen als Entitäten angegeben werden, die ein Training des computerrealisierten Modells verbessern, eines Entfernens von Entitäten, die in der einen oder den mehreren Empfehlungen als Entitäten angegeben werden, die ein Training des computerrealisierten Modells verschlechtern, eines Modifizierens von mindestens einem Hyperparameter des computerrealisierten Modells oder eines Modifizierens eines Computermodell-Trainingswerkzeugs, das verwendet wird, um ein Training des computerrealisierten Modells durchzuführen.
  18. Computerprogrammprodukt nach Anspruch 11, wobei das computerlesbare Programm des Weiteren das Datenverarbeitungssystem veranlasst, Instanzen von Trainingsdaten, die zum Trainieren des computerrealisierten Modells verwendet werden, zu erfassen, so dass zum Trainieren des computerrealisierten Modells verwendete Trainingsdaten auf eine frühere Version von Trainingsdaten zurückgesetzt werden können.
  19. Computerprogrammprodukt nach Anspruch 11, wobei das computerlesbare Programm das Datenverarbeitungssystem des Weiteren veranlasst, die aufgezeichneten Unterschiede und die entsprechenden computerrealisierten Modellergebnisse mindestens zu analysieren, indem eine Trendanalyse für die aufgezeichneten Unterschiede und die entsprechenden computerrealisierten Modellergebnisse durchgeführt wird.
  20. Vorrichtung, aufweisend: einen Prozessor; und einen mit dem Prozessor verbundenen Speicher, wobei der Speicher Anweisungen aufweist, die bei Ausführung durch den Prozessor den Prozessor veranlassen: mehrere Trainingsinstanzen des computerrealisierten Modells durch das Datenverarbeitungssystem durchzuführen, wobei jede Trainingsinstanz des computerrealisierten Modells ein Training des computerrealisierten Modells unter Verwendung eines unterschiedlichen Trainingsdatensatzes aufweist, um eine unterschiedliche Instanz eines trainierten computerrealisierten Modells zu erzeugen; nach jeder Trainingsinstanz computerrealisierte Modellergebnisse zu erzeugen, indem die entsprechende Instanz des trainierten computerrealisierten Modells ausgeführt wird; Unterschiede bei den Trainingsinstanzen des computerrealisierten Modells in Zusammenhang mit entsprechenden Bezeichnern der Instanzen eines trainierten computerrealisierten Modells und entsprechenden computerrealisierten Modellergebnissen aufzuzeichnen; die aufgezeichneten Unterschiede und die entsprechenden computerrealisierten Modellergebnisse zu analysieren; und eine Ausgabe zu erzeugen, die eine Korrelation zwischen aufgezeichneten Unterschieden und entsprechenden computerrealisierten Modellergebnissen angibt.
  21. Vorrichtung nach Anspruch 20, wobei der Arbeitsspeicher Anweisungen aufweist, die bei Ausführung durch den Prozessor den Prozessor veranlassen, mehrere Trainingsinstanzen des computerrealisierten Modells mindestens durchzuführen, indem: eine erste Trainingsoperation für das computerrealisierte Modell unter Verwendung einer ersten Version von Trainingsdaten und eines ersten Satzes von einem oder mehreren Hyperparametern durch das Datenverarbeitungssystem ausgeführt wird, um eine erste trainierte Instanz des computerrealisierten Modells zu erzeugen; und eine zweite Trainingsoperation für das computerrealisierte Modell unter Verwendung einer zweiten Version der Trainingsdaten und eines zweiten Satzes von einem oder mehreren Hyperparametern durch das Datenverarbeitungssystem ausgeführt wird, um eine zweite trainierte Instanz des computerrealisierten Modells zu erzeugen.
  22. Vorrichtung nach Anspruch 21, wobei der Arbeitsspeicher des Weiteren Anweisungen aufweist, die bei Ausführung durch den Prozessor den Prozessor veranlassen, Veränderungen an den Trainingsinstanzen des computerrealisierten Modells mindestens aufzuzeichnen, indem: eine erste Erfassungsdatenstruktur, die einen ersten Bezeichner der ersten Trainingsoperation mit der ersten Version von Trainingsdaten und dem ersten Satz von einem oder mehreren Hyperparametern korreliert, durch das Datenverarbeitungssystem erzeugt wird, und eine zweite Erfassungsdatenstruktur, die zweiten Bezeichner der zweiten Trainingsoperation mit der zweiten Version von Trainingsdaten und dem zweiten Satz von einem oder mehreren Hyperparametern korreliert, durch das Datenverarbeitungssystem erzeugt wird.
  23. Vorrichtung nach Anspruch 22, wobei der Arbeitsspeicher Anweisungen aufweist, die bei Ausführung durch den Prozessor den Prozessor veranlassen, computerrealisierte Modellergebnisse mindestens zu erzeugen, indem: erste Modellergebnisse aus einem Ausführen der ersten Instanz des computerrealisierten Modells erzeugt werden; und zweite Modellergebnisse aus einem Ausführen der zweiten Instanz des computerrealisierten Modells erzeugt werden und wobei ein Analysieren der aufgezeichneten Unterschiede und der entsprechenden computerrealisierten Modellergebnisse ein Durchführen von Analysen für die erste Erfassungsdatenstruktur, die zweite Erfassungsdatenstruktur, die ersten Modellergebnisse und die zweiten Modellergebnisse durch das Datenverarbeitungssystem aufweist, um Unterschiede zwischen der ersten Trainingsoperation und der zweiten Trainingsoperation zu identifizieren, die mit Unterschieden zwischen den ersten Modellergebnissen und den zweiten Modellergebnissen korrelieren.
  24. Vorrichtung nach Anspruch 21, wobei die zweite Version von Trainingsdaten eine modifizierte Version der ersten Version von Trainingsdaten ist.
  25. Vorrichtung nach Anspruch 20, wobei der Arbeitsspeicher Anweisungen aufweist, die bei Ausführung durch den Prozessor den Prozessor veranlassen, mehrere Trainingsinstanzen die Ausgabe mindestens zu erzeugen, indem: eine oder mehrere Empfehlungen zum Modifizieren eines Trainings des computerrealisierten Modells erzeugt werden, um Trainingsdaten zu verbessern, indem auf Grundlage der aufgezeichneten Unterschiede und der entsprechenden computerrealisierten Modellergebnisse identifiziert wird, welche Veränderungen die Genauigkeit des computerrealisierten Modells erhöhen.
  26. Vorrichtung nach Anspruch 25, wobei der Arbeitsspeicher Anweisungen aufweist, die bei Ausführung durch den Prozessor den Prozessor veranlassen: Computeroperationen automatisch auszuführen, um die erzeugten einen oder mehreren Empfehlungen zu realisieren, wobei die Computeroperationen mindestens eines aufweisen eines Erhaltens von neuen Trainingsdaten, die Entitäten aufweisen, die in der einen oder den mehreren Empfehlungen als Entitäten angegeben werden, die ein Training des computerrealisierten Modells verbessern, eines Entfernens von Entitäten, die in der einen oder den mehreren Empfehlungen als Entitäten angegeben werden, die ein Training des computerrealisierten Modells verschlechtern, eines Modifizierens von mindestens einem Hyperparameter des computerrealisierten Modells oder eines Modifizierens eines Computermodell-Trainingswerkzeugs, das verwendet wird, um ein Training des computerrealisierten Modells durchzuführen.
  27. Vorrichtung nach Anspruch 20, wobei der Arbeitsspeicher Anweisungen aufweist, die bei Ausführung durch den Prozessor den Prozessor veranlassen: Instanzen von Trainingsdaten, die zum Trainieren des computerrealisierten Modells verwendet werden, zu erfassen, so dass zum Trainieren des computerrealisierten Modells verwendete Trainingsdaten auf eine frühere Version von Trainingsdaten zurückgesetzt werden können.
  28. Vorrichtung nach Anspruch 20, wobei der Arbeitsspeicher Anweisungen aufweist, die bei Ausführung durch den Prozessor den Prozessor veranlassen, die aufgezeichneten Unterschiede und die entsprechenden computerrealisierten Modellergebnisse mindestens zu analysieren, indem eine Trendanalyse für die aufgezeichneten Unterschiede und die entsprechenden computerrealisierten Modellergebnisse durchgeführt wird.
  29. Vorrichtung nach Anspruch 20, wobei verschiedene Kopien des computerrealisierten Modells durch verschiedene Entwickler des computerrealisierten Modells an einem oder mehreren Standorten trainiert werden und wobei die Vorrichtung über alle Teilsätze der Instanzen des trainierten realisierten Modells von den verschiedenen Entwicklern des computerrealisierten Modells hinweg ausführbar ist.
  30. Computerprogramm, aufweisend ein Programmcodemittel, das so gestaltet ist, dass es das Verfahren nach einem beliebigen der Ansprüche 1 bis 10 durchführt, wenn das Programm auf einem Computer ausgeführt wird.
DE112020000227.6T 2019-03-07 2020-02-28 Maschinelles lernen eines computermodells auf grundlage von korrelationenvon trainingsdaten mit leistungstrends Pending DE112020000227T5 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/295,062 2019-03-07
US16/295,062 US11809966B2 (en) 2019-03-07 2019-03-07 Computer model machine learning based on correlations of training data with performance trends
PCT/IB2020/051708 WO2020178687A1 (en) 2019-03-07 2020-02-28 Computer model machine learning based on correlations of training data with performance trends

Publications (1)

Publication Number Publication Date
DE112020000227T5 true DE112020000227T5 (de) 2021-09-02

Family

ID=72336425

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112020000227.6T Pending DE112020000227T5 (de) 2019-03-07 2020-02-28 Maschinelles lernen eines computermodells auf grundlage von korrelationenvon trainingsdaten mit leistungstrends

Country Status (6)

Country Link
US (2) US11809966B2 (de)
JP (1) JP7413392B2 (de)
CN (1) CN113557535A (de)
DE (1) DE112020000227T5 (de)
GB (1) GB2596438A (de)
WO (1) WO2020178687A1 (de)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11625642B2 (en) * 2018-04-22 2023-04-11 Trendalyze Inc. Method for converting nominal to ordinal or continuous variables using time-series distances
US20200303060A1 (en) * 2019-03-18 2020-09-24 Nvidia Corporation Diagnostics using one or more neural networks
US11562178B2 (en) * 2019-04-29 2023-01-24 Oracle International Corporation Adaptive sampling for imbalance mitigation and dataset size reduction in machine learning
US11573833B2 (en) * 2019-07-31 2023-02-07 EMC IP Holding Company LLC Allocating cores to threads running on one or more processors of a storage system
US20210233166A1 (en) * 2020-01-28 2021-07-29 David B. Coulter System and Method Of Lender, Borrower, and Employee Driven Enrollment
US11494703B2 (en) * 2020-02-26 2022-11-08 Opendoor Labs Inc. Machine learning model registry
US11568279B2 (en) * 2020-06-09 2023-01-31 Sap Se Anomaly detection for automated information technology processes
US20220139514A1 (en) 2020-11-03 2022-05-05 Nuance Communications, Inc. Communication System and Method
KR102493655B1 (ko) * 2020-12-01 2023-02-07 가천대학교 산학협력단 인공지능 모델 훈련 데이터셋의 관리방법
WO2022140433A1 (en) * 2020-12-22 2022-06-30 Nuance Communications, Inc. Ai platform system and method

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110125734A1 (en) 2009-11-23 2011-05-26 International Business Machines Corporation Questions and answers generation

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6879944B1 (en) 2000-03-07 2005-04-12 Microsoft Corporation Variational relevance vector machine
US7080052B2 (en) 2001-04-19 2006-07-18 International Business Machines Corporation Method and system for sample data selection to test and train predictive algorithms of customer behavior
AU2009251043A1 (en) 2009-01-07 2010-07-22 The University Of Sydney A method and system of data modelling
US8458074B2 (en) * 2010-04-30 2013-06-04 Corelogic Solutions, Llc. Data analytics models for loan treatment
US9454733B1 (en) 2012-08-15 2016-09-27 Context Relevant, Inc. Training a machine learning model
DE102013213397A1 (de) 2013-07-09 2015-01-15 Robert Bosch Gmbh Verfahren und Vorrichtung zum Bereitstellen von Stützstellendaten für ein datenbasiertes Funktionsmodell
JP2015087973A (ja) 2013-10-31 2015-05-07 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation 生成装置、生成方法、およびプログラム
US9886670B2 (en) 2014-06-30 2018-02-06 Amazon Technologies, Inc. Feature processing recipes for machine learning
US20160358099A1 (en) 2015-06-04 2016-12-08 The Boeing Company Advanced analytical infrastructure for machine learning
JP6703264B2 (ja) 2016-06-22 2020-06-03 富士通株式会社 機械学習管理プログラム、機械学習管理方法および機械学習管理装置
US20180025286A1 (en) 2016-07-25 2018-01-25 International Business Machines Corporation Detecting trends in evolving analytics models
US10832308B2 (en) 2017-04-17 2020-11-10 International Business Machines Corporation Interpretable rule generation using loss preserving transformation
US11113599B2 (en) 2017-06-22 2021-09-07 Adobe Inc. Image captioning utilizing semantic text modeling and adversarial learning
US11615208B2 (en) * 2018-07-06 2023-03-28 Capital One Services, Llc Systems and methods for synthetic data generation
CN109189767B (zh) 2018-08-01 2021-07-23 北京三快在线科技有限公司 数据处理方法、装置、电子设备及存储介质
US10528891B1 (en) * 2018-08-23 2020-01-07 SigOpt, Inc. Systems and methods for implementing an intelligent machine learning optimization platform for multiple tuning criteria
US11392859B2 (en) * 2019-01-11 2022-07-19 Microsoft Technology Licensing, Llc Large-scale automated hyperparameter tuning

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110125734A1 (en) 2009-11-23 2011-05-26 International Business Machines Corporation Questions and answers generation

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Yuan et al., „Watson and Healthcare", IBM developerWorks, 2011, und in „The Era of Cognitive Systems: An Inside Look at IBM Watson and How it Works" von Rob High, IBM Redbooks, 2012

Also Published As

Publication number Publication date
WO2020178687A1 (en) 2020-09-10
GB202112847D0 (en) 2021-10-27
US20200285899A1 (en) 2020-09-10
US20240020579A1 (en) 2024-01-18
US11809966B2 (en) 2023-11-07
JP7413392B2 (ja) 2024-01-15
CN113557535A (zh) 2021-10-26
JP2022522641A (ja) 2022-04-20
GB2596438A (en) 2021-12-29

Similar Documents

Publication Publication Date Title
DE112020000227T5 (de) Maschinelles lernen eines computermodells auf grundlage von korrelationenvon trainingsdaten mit leistungstrends
DE112018001996T5 (de) Systeme und verfahren zur modellgestützten kohortenauswahl
DE112019002206B4 (de) Knockout-autoencoder zum erkennen von anomalien in biomedizinischen bildern
DE202017106532U1 (de) Suche nach einer neuronalen Architektur
DE102016223193A1 (de) Verfahren und Vorrichtung zum Komplettieren eines Wissensgraphen
DE102014113870A1 (de) Identifizieren und Anzeigen von Beziehungen zwischen Kandidatenantworten
DE202017107393U1 (de) Vorhersagen eines Suchmaschinen-Einordnungssignalwerts
DE112018006345T5 (de) Abrufen von unterstützenden belegen für komplexe antworten
DE112017007530T5 (de) Entitätsmodell-erstellung
DE112018005725T5 (de) Daten-deidentifikation auf der grundlage eines erkennens von zulässigen konfigurationen für daten-deidentifikationsprozesse
DE102019004300A1 (de) Verwendung eines dynamischen speichernetzwerks zum verfolgen digitaler dialogzustände und erzeugen von antworten
DE112020003365T5 (de) Überwachte kreuzmodale wiedergewinnung für zeitreihen und text unter verwendung von multimodalen triplettverlusten
DE112018001290T5 (de) Verfahren zum Schätzen der Löschbarkeit von Datenobjekten
DE112020002669T5 (de) Automatische Gültigkeitsprüfung und Anreicherung von semantischen Beziehungen zwischen medizinischen Entitäten für die Arzneimittelforschzng
DE112020002129T5 (de) Deep-learning-ansatz für datenverarbeitungsspannen
DE112020005268T5 (de) Automatisches erzeugen von schema-annotationsdateien zum umwandeln von abfragen in natürlicher sprache in eine strukturierte abfragesprache
DE112020000545T5 (de) Deep-forest-modell-entwicklung und -training
DE112020000554T5 (de) Verfahren zum zugreifen auf datensätze eines stammdatenverwaltungssystems
DE112021002883T5 (de) Automatisierte rückmeldung und kontinuierliches lernen zur abfrageoptimierung
DE102021209171A1 (de) System zum wählen eines lernenden modells
DE112020001034T5 (de) Seltene fälle berücksichtigende trainingsdaten für künstliche intelligenz
DE112021005678T5 (de) Normieren von OCT-Bilddaten
DE102021124256A1 (de) Mobile ki
DE112018005620T5 (de) Auftragsverwaltung in einem datenverarbeitungssystem
DE112021003761T5 (de) Prädiktive modelle mit zerlegbaren hierarchischen ebenen, die konfiguriert werden, um interpretierbare resultate zu erzeugen

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R084 Declaration of willingness to licence