Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
SYSTEM AND METHOD FOR DISCOVERING OPTIMISED COMBINATIONS OF CALCULATION FUNCTIONS
Document Type and Number:
WIPO Patent Application WO/2020/108748
Kind Code:
A1
Abstract:
The invention relates to a system (100) for discovering one or more optimised combination(s) of calculation functions (f1, f2,..., fN) for calculating features (m1, m2,..., mN) of an entity, comprising a learning reinforcement agent (200) which is designed to choose one or more combinations of calculation functions (f1, f2,..., fN) which are forwarded to a data preprocessing module (300), the data preprocessing module (300) being designed to calculate the features (m1, m2,..., mN) from the data of a training data set (320) by means of the selected calculation functions (f1, f2,..., fN) and to forward the features (m1, m2,..., mN) to a machine learning module (400) which is designed to analyse and/or to train the features (m1, m2,..., mN) and to forward the learning result to an evaluation module (440) which is designed to create an evaluation for the learning result and to forward said evaluation to the learning reinforcement agent (200) which is designed to again choose one or more combination(s) of calculation functions (f1, f2,..., fN) on the basis of said evaluation of the learning result.

Inventors:
KLOS HANS-HENNING (DE)
TOLKSDORF SCHIRIN (DE)
BAKAKEU NGASSAM ROMUALD JUPITER (DE)
PESCHKE JÖRN (DE)
Application Number:
PCT/EP2018/082849
Publication Date:
June 04, 2020
Filing Date:
November 28, 2018
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
SIEMENS AG (DE)
UNIV FRIEDRICH ALEXANDER ER (DE)
International Classes:
G06N3/00; G06N3/08; G06N20/00; G06N3/04; G06N5/04
Other References:
UDAYAN KHURANA ET AL: "Feature Engineering for Predictive Modeling using Reinforcement Learning", ARXIV.ORG, CORNELL UNIVERSITY LIBRARY, 201 OLIN LIBRARY CORNELL UNIVERSITY ITHACA, NY 14853, 21 September 2017 (2017-09-21), XP080822280
UDAYAN KHURANA ET AL: "Ensembles with Automated Feature Engineering", 15 July 2018 (2018-07-15), XP055606400, Retrieved from the Internet [retrieved on 20190717]
FATEMEH NARGESIAN ET AL: "Learning Feature Engineering for Classification", PROCEEDINGS OF THE TWENTY-SIXTH INTERNATIONAL JOINT CONFERENCE ON ARTIFICIAL INTELLIGENCE, 1 August 2017 (2017-08-01), California, US, pages 2529 - 2535, XP055606703, ISBN: 978-0-9992411-0-3, DOI: 10.24963/ijcai.2017/352
KHURANA UDAYAN ET AL: "Cognito: Automated Feature Engineering for Supervised Learning", 2016 IEEE 16TH INTERNATIONAL CONFERENCE ON DATA MINING WORKSHOPS (ICDMW), IEEE, 12 December 2016 (2016-12-12), pages 1304 - 1307, XP033055958, DOI: 10.1109/ICDMW.2016.0190
FARD S.M.H.; HAMZEH A.; HASHEMI S.: "Using reinforcement learning to find an optimal set of features", COMPUT MATH APPL, 2013, pages 1892 - 1904, XP028759742, DOI: doi:10.1016/j.camwa.2013.06.031
Attorney, Agent or Firm:
SIEMENS AKTIENGESELLSCHAFT (DE)
Download PDF:
Claims:
Patentansprüche

1. Ein System (100) zum Auffinden einer oder mehrerer opti mierter Kombination (en) von Berechnungsfunktionen (fl, f2, ..., fN) zur Berechnung von Merkmalen (ml, m2, ..., mN) einer Enti tät, umfassend einen Lernverstärkungs-Agenten (200), der dazu ausgebildet ist, eine oder mehrere Kombination von Berech nungsfunktionen (fl, f2, ..., fN) auszuwählen, welche an ein Datenvorverarbeitungsmodul (300) weitergegeben werden, wobei das Datenvorverarbeitungsmodul (300) ausgebildet ist, aus den Daten eines Trainingsdatensatzes (320) mittels der ausgewähl ten Berechnungsfunktionen (fl, f2, ..., fN) die Merkmale (ml, m2, ...,mN) zu berechnen und die Merkmale (ml, m2, ..., mN) an ein Maschinenlernmodul (400) weiterzugeben, welches dazu aus gebildet ist, die Merkmale (ml, m2, ..., mN) zu analysieren und/oder zu trainieren und das Lernergebnis an ein Bewer tungsmodul (440) weiterzugeben, das ausgebildet ist, eine Be wertung für das Lernergebnis zu erstellen und diese Bewertung an den Lernverstärkungs-Agenten (200) weiterzugeben, der aus gebildet ist auf Basis dieser Bewertung des Lernergebnisses erneut eine oder mehrere Kombination (en) von Berechnungsfunk tionen (fl, f2, ..., fN) auszuwählen.

2. Das System (100) nach Anspruch 1, dadurch gekennzeich net, dass das Bewertungsmodul (440) ausgebildet ist, die Be wertung für das Lernergebnis an ein Belohnungsmodul (500) weiterzugeben, das ausgebildet ist, die Bewertung durch eine Verstärkungsfunktion zu verstärken und/oder eine Belohnung zu erzeugen und die Bewertung und/oder Belohnung an den Lernver stärkungs-Agenten (200) weiterzugeben.

3. Das System (100) nach Anspruch 1 oder 2, dadurch gekenn zeichnet, dass der Lernverstärkungs-Agent (200) eine Daten bank (220) für die Bewertung von Zustands-Aktions-Paaren (s|a) bezogen auf die Auswahl von Aktionen (al, a2, ..., aN) für Zustände (sl, s2, ..., sN) einer Entität aufweist. 4. Das System (100) nach Anspruch 3, dadurch gekennzeich net, dass die Datenbank (220) als Qualitäts-Matrix ausgebil det ist für die Bewertung der Zustands-Aktions-Paare (s|a).

5. Das System (100) nach Anspruch 3, dadurch gekennzeich net, dass die Datenbank (220) als neuronales Netz ausgebildet ist und/oder durch Regeln erweiterbar ist.

6. Das System (100) nach einem oder mehreren der vorange henden Ansprüche, dadurch gekennzeichnet, dass das Maschinen lernmodul (400) ausgebildet ist, einen Algorithmus (420) aus dem überwachten Lernen und/oder dem unüberwachten Lernen und/oder dem verstärkenden Lernen zu verwenden.

7. Das System (100) nach einem oder mehreren der vorange henden Ansprüche 1 bis 6, dadurch gekennzeichnet, dass ein Trainingsmodus und ein Laufzeitmodus vorgesehen sind, wobei der Wechsel von dem Trainingsmodus in den Laufzeitmodus und/oder der Wechsel von dem Laufzeitmodus in den Trainings modus automatisch durchführbar ist.

8. Das System (100) nach einem oder mehreren der vorange henden Ansprüche 1 bis 7, dadurch gekennzeichnet, dass der Lernverstärkungsagent (200) ausgebildet ist, einen Initiali sierungsschritt durchzuführen zur Vorauswahl von Kombinatio nen von Aktionen (al, a2, ..., aN) ) .

9. Das System (100) nach einem oder mehreren der Ansprüche 1 bis 8, dadurch gekennzeichnet, dass der Lernverstärkungs- Agent (200) ausgebildet ist, die Auswahl der Berechnungsfunk tionen (fl, f2, ..., fN) in Abhängigkeit von Optimierungskrite rien wie der Auslastung und/oder der Rechengeschwindigkeit eines Endgerätes durchzuführen.

10. Ein Verfahren zum Auffinden von einer oder mehreren op timierten Kombination (en) von Berechnungsfunktionen (fl, f2, ..., fN) zur Berechnung von Merkmalen (ma, m2, ..., mN) einer En- tität unter Verwendung eines Lernverstärkungsagenten (200), umfassend :

(a) Auswahlen (S10) von einer oder mehreren Kombinati on (en) von Berechnungsfunktionen (fl, f2, ..., fN) von dem Lernverstärkungsagenten (200);

(b) Weitergeben (S20) der ausgewählten Berechnungsfunk tionen (fl, f2, ..., fN) von dem Lernverstärkungs agenten (200) an ein Datenvorverarbeitungsmodul (300) ;

(c) Berechnen (S30) von Merkmalen (ml, m2, ..., mN) aus den Daten eines Trainingsdatensatzes (320) mittels der ausgewählten Berechnungsfunktionen (fl, f2, ..., fN) in dem Datenvorverarbeitungsmodul (300);

(d) Weitergeben (S40) der Merkmale (ml, m2, ..., mN) von dem Datenvorverarbeitungsmodul an ein Maschinen lernmodul (400);

(e) Analysieren und/oder Trainieren (S50) der Merkmale (ml, m2, ..., mN) in dem Maschinenlernmodul (400);

(f) Weitergeben (S60) des Lernergebnisses des Maschi nenlernmoduls (400) an ein Bewertungsmodul (440);

(g) Erstellen (S70) einer Bewertung des Lernergebnisses in dem Bewertungsmodul (440);

(h) Weitergeben (S80) der Bewertung des Lernergebnisses an den Lernverstärkungs-Agenten (200);

(i) Auswählen (S90) von einer oder mehreren Kombinati on (en) von Berechnungsfunktionen (fl, f2, ..., fN) von dem Lernverstärkungsagenten (200) auf Basis der Bewertung des Lernergebnisses.

11. Das Verfahren nach Anspruch 10, dadurch gekennzeichnet, dass die Schritte S10 - S90 solange wiederholt werden, bis eine optimierte Kombination der Berechnungsfunktionen (fl, f2, ..., fN) gefunden wurde.

12. Das Verfahren nach Anspruch 10 oder 11, dadurch gekenn zeichnet, dass das Bewertungsmodul (440) die Bewertung an ein Belohnungsmodul (500) weitergibt, welches die Bewertung durch eine Verstärkungsfunktion verstärkt und/oder eine Belohnung erzeugt und die Bewertung und/oder Belohnung an den LV- Agenten (200) weitergibt. 13. Das Verfahren nach einem oder mehreren der Ansprüche 10 bis 12, dadurch gekennzeichnet, dass der Lernverstärkungs- Agent (200) eine Datenbank (220) für die Bewertung von Zu- stands-Aktions-Paaren (s|a) bezogen auf die Auswahl von Akti onen (al, a2, ..., aN) für Zustände (sl, s2, ..., sN) einer Enti- tät verwendet.

14. Das Verfahren nach einem oder mehreren der Ansprüche 10 bis 13, dadurch gekennzeichnet, dass die Datenbank (220) als Qualitäts-Matrix für die Bewertung der Zustands-Aktions-Paare (s|a) und/oder als neuronales Netz ausgebildet ist und/oder durch Regeln erweiterbar ist.

15. Das Verfahren nach einem oder mehreren der vorangehenden Ansprüche 10 bis 14, dadurch gekennzeichnet, dass ein Trai- ningsmodus und ein Laufzeitmodus vorgesehen sind, wobei der Wechsel von dem Trainingsmodus in den Laufzeitmodus und der Wechsel von dem Laufzeitmodus in den Trainingsmodus automa tisch durchgeführt wird.

Description:
Beschreibung

System und Verfahren zum Auffinden von optimierten Kombinati onen von Berechnungsfunktionen

Die Erfindung betrifft ein System und ein Verfahren zum Auf finden von optimierten Kombinationen von Berechnungsfunktio nen zur Berechnung von Merkmalen einer Entität mittels eines Lernverstärkungs-Agenten .

Für viele Maschinen-Lernverfahren (Machine Learning) , wie beispielsweise für einen Klassifizieren, der als eine Unter stützungsvektormaschine (Support Vector Machine) oder als ein „nächster Nachbar"-Algorithmus (Nearest Neighbour) ausgebil det sein kann, ist eine Vorverarbeitung ( Preprocessing) der Daten notwendig, um effiziente und leistungsfähige Ergebnisse zu erzielen. In dieser Vorverarbeitung wird ein eingegebener Datensatz auf Merkmale reduziert, welche als Eingabe für den Klassifizier dienen. Die Aufgabe des Klassifizierers ist es, Daten basierend auf erlernten Merkmalen in verschiedene Klas sen einzuordnen. Für Zeitreihen sind diese Merkmale bei spielsweise Mittelwerte, Minimal- bzw. Maximalwerte oder auch Frequenzspektren (Fast Fourier Transformation) . Bei Bilddaten können beispielsweise Eigenschaften wie Kontrast, Kantener kennung, Eckenerkennung als Merkmale verwendet werden. Um für eine spezifische Aufgabenstellung geeignete Merkmale auszu wählen, welche die wichtigsten Eigenschaften eines Trainings datensatzes zum Trainieren eines Maschinenlernmoduls wie bei spielsweise eines Klassifizierers beschreiben, ist allerdings Expertenwissen notwendig. Alternativ kann durch Ausprobieren manuell versucht werden, eine optimierte Auswahl an Merkmalen zu treffen. Durch die hohe Anzahl möglicher Merkmale und de ren Kombinationsmöglichkeiten ist die Anzahl möglicher Merk malskombinationen jedoch sehr hoch und es ist zeitintensiv, eine optimierte Auswahl von Merkmalen manuell zu finden.

Daher wählen Experten für Maschinenlernen diejenigen Merkmale für einen Datensatz einer bestimmten Entität bzw. Domain aus, die den Datensatz oder die Daten spezifisch für die jeweilige Entität beschreiben. Als Entität bzw. Domain wird hier ein bestimmtes Anwendungsgebiet bezeichnet, beispielsweise die Vorhersage von Wetterdaten, die Analyse des Verkehrsaufkom mens in einer Stadt, die Erkennung und Analyse von Bildstruk turen in der Mikroskopie, die Erfassung von Patientendaten oder die Überwachung einer Industrieanlage. Jede dieser Enti täten ist durch spezifische Merkmale gekennzeichnet.

Diese Merkmale können das Ergebnis von Berechnungsfunktionen darstellen oder sie entsprechen lediglich einem Messwert wie beispielsweise im Gesundheitswesen die Größe, das Gewicht, den Blutdruck eines Patienten. Die Merkmale werden typischer weise von Experten erstellt bzw. definiert, was als Merkmals planung bezeichnet wird. Es gibt dann eine Anzahl an ver schiedenen Merkmalen, die alle auf einen Eingabedatensatz an wendbar sind, und ein Experte wählt daraus die passenden Merkmale für eine bestimmte Aufgabenstellung manuell aus.

Für das Auswählen der passenden Merkmale aus dieser Anzahl an Merkmalen wird z.B. ein sogenannter „nächster Nachbar"- Algorithmus angewendet, und danach werden beispielsweise durch eine Hauptkomponentenanalyse diejenigen Merkmale be stimmt, die den größten Einfluss beispielsweise auf eine Klassifizierung oder andere Maschinenlernverfahren haben. Durch diese Berechnungsfunktionen werden die wichtigsten Merkmale bestimmt und die unwichtigen ausgeschieden.

Diese manuelle Vorgehensweise führt jedoch nicht zwangsläufig zu einer optimalen Auswahl von Merkmalen und kann sehr zeit intensiv sein, da ein Experte viele passende Merkmale ein stellen muss und erst im Test herausfindet, wie gut die je weiligen Merkmale für eine Klassifikation geeignet sind.

Ein durch Verstärkungslernen (Reinforcement Learning) entwi ckeltes Wissen (z.B. in Form einer Qualitäts-Werte-Matrix (Q- Matrix) zur Bewertung einer Auswahl von Berechnungsfunktionen für die Generierung von Merkmalen) ist auf andere Anwendungs- felder bzw. Domänen nur schwierig zu übertragen, da für ande re Domänen typischerweise andere spezielle komplexe Merkmale bzw. Berechnungsfunktionen entwickelt werden müssen, die oft mals aus vielen einzelnen Berechnungsschritten bestehen. So stellt die Klassifikation von Objekten auf Bildern eine ande re Herausforderung dar als die Klassifikation von Kunden auf der Basis ihres Kaufverhaltens oder die Fehleranalyse bei ei ner komplexen Industrieanlage.

Zur Optimierung der Auswahl gegebener Merkmale gibt es ver schiedene Kategorien von Berechnungsmethoden wie Filterfunk tionen, Hüllenfunktionen und integrierte Ansätze, wie bei spielsweise von Fard et al . beschrieben [Fard S.M.H., Hamzeh A. , Hashemi S., „Using reinforcement learning to find an op timal set of features", Comput Math Appl 2013, 1892-1904] . Darin werden Berechungsmethoden für Verstärkungslernen (Rein forcement Learning) dargestellt. Die Merkmalsauswahl wird als Markov-Entscheidungsmethode beschrieben und über die Suche nach passenden Merkmalen vergleichsweise effizient gelöst. Allerdings wird bei diesem Ansatz von bereits vorhandenen einfachen Merkmalen ausgegangen, wie beispielswiese Alter, Gewicht, Blutdruck im Gesundheitssektor, in denen gesucht wird. Wie diese Merkmale selbst bestimmt werden, wird bei diesem Ansatz nicht betrachtet. Des Weiteren werden auch kei ne Ketten von aufeinanderfolgenden Berechnungen für komplexe Merkmale behandelt.

Die der Erfindung zu Grunde liegende Aufgabe besteht nun da rin, ein Verfahren und ein System zur Auswahl von optimierten Merkmalen und Merkmalskombinationen, die die Eigenschaften einer Entität kennzeichnen, zu schaffen, das sich durch eine hohe Zuverlässigkeit und Genauigkeit auszeichnet.

Gemäß der vorliegenden Erfindung wird ein automatisiertes Verfahren vorgeschlagen, durch das eine optimierte Kombinati on von Merkmalen und eine optimierte Kombination von Zu standsketten gefunden werden kann. Diese Aufgabe wird hinsichtlich eines Systems durch die Merk male des Patentanspruchs 1, und hinsichtlich eines Verfahrens durch die Merkmale des Patentanspruchs 2 erfindungsgemäß ge löst. Die weiteren Ansprüche betreffen bevorzugte Ausgestal tungen der Erfindung.

Gemäß eines ersten Aspekts betriff die Erfindung ein System zum Auffinden einer oder mehreren optimierten Kombination (en) von Berechnungsfunktionen zur Berechnung von Merkmalen einer Entität, umfassend einen Lernverstärkungs-Agenten, der dazu ausgebildet ist, eine oder mehrere Kombination von Berech nungsfunktionen auszuwählen, welche an ein Datenvorverarbei- tungsmodul weitergegeben werden, wobei das Datenvorverarbei- tungsmodul ausgebildet ist, aus den Daten eines Trainingsda tensatzes mittels der ausgewählten Berechnungsfunktionen die Merkmale zu berechnen und die Merkmale an ein Maschinenlern modul weiterzugeben, welches dazu ausgebildet ist, die Merk male zu analysieren und/oder zu trainieren und das Lernergeb nis an ein Bewertungsmodul weiterzugeben, das ausgebildet ist, eine Bewertung für das Lernergebnis zu erstellen und diese Bewertung des Lernergebnisses an den Lernverstärkungs- Agenten weiterzugeben, der ausgebildet ist auf Basis dieser Bewertung des Lernergebnisses erneut eine oder mehrere Kombi nation (en) von Berechnungsfunktionen auszuwählen.

In einer vorteilhaften Weiterentwicklung ist das Bewertungs modul ausgebildet, die Bewertung für das Lernergebnis an ein Belohnungsmodul weiterzugeben, das ausgebildet ist, die Be wertung durch eine Verstärkungsfunktion zu verstärken

und/oder eine Belohnung zu erzeugen und die Bewertung

und/oder Belohnung an den Lernverstärkungs-Agenten weiterzu geben .

In einer weiteren Ausgestaltung weist der Lernverstärkungs- Agent eine Datenbank für die Bewertung von Zustands-Aktions- Paaren bezogen auf die Auswahl von Aktionen für Zustände ei ner Entität auf. Vorteilhaftweise ist die Datenbank als Qualitäts-Matrix aus gebildet für die Bewertung der Zustands-Aktions-Paare .

Weiterhin kann die Datenbank als neuronales Netz ausgebildet und/oder durch Regeln erweiterbar sein.

Vorteilhaftweise, ist das Maschinenlernmodul ausgebildet, ei nen Algorithmus aus dem überwachten Lernen (supervised learn- ing) und/oder dem unüberwachten Lernen (unsupervised learn- ing) und/oder dem verstärkenden Lernen (reinforcement learn- ing) zu verwenden.

In einer vorteilhaften Weiterbildung ist ein Trainingsmodus und ein Laufzeitmodus vorgesehen, wobei der Wechsel von dem Trainingsmodus in den Laufzeitmodus und/oder der Wechsel von dem Laufzeitmodus in den Trainingsmodus automatisch durch führbar ist.

In einer weiteren Ausgestaltung ist der Lernverstärkungsagent ausgebildet, einen Initialisierungsschritt durchzuführen zur Vorauswahl von Kombinationen von Funktionen.

Vorteilhaftweise, ist der Lernverstärkungs-Agent ausgebildet, die Auswahl der Funktionen in Abhängigkeit von Optimierungs kriterien wie der Auslastung und/oder der Rechengeschwindig keit eines Endgerätes durchzuführen.

Gemäß eines zweiten Aspekts betrifft die Erfindung ein Ver fahren zum Auffinden von einer oder mehreren optimierten Kom bination (en) von Berechnungsfunktionen zur Berechnung von Merkmalen einer Entität unter Verwendung eines Lernverstär kungsagenten, umfassend die folgenden Schritte:

Auswahlen von einer oder mehreren Kombination (en) von Berechnungsfunktionen von dem Lernverstärkungsagen ten; - Weitergeben der ausgewählten Berechnungsfunktionen von dem Lernverstärkungsagenten an ein Datenvorverar- beitungsmodul ;

- Berechnen von Merkmalen aus den Daten eines Trai

ningsdatensatzes mittels der ausgewählten Berech nungsfunktionen in dem Datenvorverarbeitungsmodul ;

- Weitergeben der Merkmale von dem Datenvorverarbei

tungsmodul an ein Maschinenlernmodul;

- Analysieren und/oder Trainieren der Merkmale in dem Maschinenlernmodul ;

- Weitergeben des Lernergebnisses des Maschinenlernmo duls an ein Bewertungsmodul;

- Erstellen einer Bewertung des Lernergebnisses in dem Bewertungsmodul ;

- Weitergeben der Bewertung des Lernergebnisses an den Lernverstärkungs-Agenten;

- Auswählen von einer oder mehreren Kombination (en) von Berechnungsfunktionen von dem Lernverstärkungsagenten auf Basis der Bewertung des Lernergebnisses.

In einer vorteilhaften Weiterentwicklung werden die Schritte des Verfahrens solange wiederholt, bis eine optimierte Kombi nation der Berechnungsfunktionen gefunden wurde.

Vorteilhaftweise, gibt das Bewertungsmodul die Bewertung die Bewertung an ein Belohnungsmodul weiter, das ausgebildet ist, das die Bewertung durch eine Verstärkungsfunktion zu verstär ken und/oder eine Belohnung zu erzeugen und die Bewertung und/oder Belohnung an den LV-Agenten weiterzugeben.

In einer weiteren Ausgestaltung verwendet der Lernverstär- kungs-Agent eine Datenbank für die Bewertung von Zustands- Aktions-Paaren bezogen auf die Auswahl von Aktionen für Zu stände einer Entität.

Vorteilhafterweise ist die Datenbank als Qualitäts-Matrix für die Bewertung der Zustands-Aktions-Paare und/oder als neuro nales Netz ausgebildet und/oder durch Regeln erweiterbar. In einer weiteren Ausgestaltung sind ein Trainingsmodus und ein Laufzeitmodus vorgesehen, wobei der Wechsel von dem Trai ningsmodus in den Laufzeitmodus und der Wechsel von dem Lauf zeitmodus in den Trainingsmodus automatisch durchgeführt wird .

Gemäß der vorliegenden Erfindung wird somit ein automatisier tes Verfahren vorgeschlagen, durch das eine optimierte Kombi nation von Merkmalen und in einem weiteren Schritt eine opti mierte Kombination von Merkmalsketten gefunden werden kann. Zusätzlich wird zu Beginn automatisch ein Initialisierungs schritt durchgeführt, in welchem Merkmalskombinationen, die zu keinem Ergebnis führen, aussortiert werden. Das automati sierte Verfahren beinhaltet die Durchführung des Initialisie rungsschrittes, den automatischen Wechsel in einen Trainings modus zum Auffinden der besten Kombinationen der optimierten Merkmalsketten mit anschließendem Training des Maschinenlern moduls und das automatisierte Umschalten in einen Laufzeitmo dus unter Verwendung eines trainierten Maschinenlernmoduls und der optimierten Merkmalsketten. Das Verfahren sieht au ßerdem einen erneuten automatischen Wechsel in den Trainings modus des Maschinenlernmoduls vor, wenn z.B. eine Veränderung der Entität, deren Merkmale beschrieben werden, in dem Ma schinenlernmoduls berücksichtigt werden sollen oder die Ver wendung der Merkmale sich geändert haben. Anschließend findet dann ein Wechsel in den Laufzeitmodus statt.

Nachfolgend wird die Erfindung anhand von in der Zeichnung dargestellten Ausführungsbeispielen näher erläutert.

Dabei zeigt:

Figur 1 eine schematische Darstellung eines Übergangs von einem Zustand einer Entität zu einem anderen Zu stand der Entität;

Figur 2 ein Blockdiagram zur Erläuterung eines Ausführungs beispiels des erfindungsgemäßen Systems; Figur 3 eine Darstellung der Verkettung von Zuständen einer Entität ;

Figur 4 eine weitere Darstellung der Verkettung von Zustän den einer Entität;

Figur 5 eine weitere Darstellung der Verkettung von Zustän den einer Entität;

Figur 6 ein Blockdiagram zur Erläuterung eines weiteren

Ausführungsbeispiels des erfindungsgemäßen Systems;

Figur 7 ein Flussdiagramm zur Erläuterung der einzelnen

Verfahrensschritte eines erfindungsgemäßen Verfah rens .

Zusätzliche Kennzeichen, Aspekte und Vorteile der Erfindung oder ihrer Ausführungsbeispiele werden durch die ausführliche Beschreibung in Verbindung mit den Ansprüchen ersichtlich.

Fig. 1 zeigt einen Zustand sl einer Entität, der durch eine Aktion a in einen anderen Zustand s2 der Entität überführt wird. Bei der Entität kann es sich um Maschinen und/oder In dustrieanlagen handeln, aber auch um chemisch-physikalische Prozesse, administrative Organisationsverfahren in der In dustrie, Forschung und/oder Verwaltung. Der Begriff Entität umfasst somit ein breites Spektrum von Anwendungsgebieten, angefangen bei einfachen Geräten bis hin zu komplexen Regel kreisläufen in verschiedenen Domänen wie Automotive, Chemie, Pharmazeutische Industrie, Patientenakten im Bereich

Healthcare, Produktion und Verkauf, Marketing, Kundenverhal ten, Meinungsumfragen, Wetterdaten, Börsenkurse, Klimaschutz, Erdbebenfrühwarnsysteme, Staumelder, etc. Wenn eine Entität durch Merkmale bzw. Zustände darstellbar ist, deren Auswahl bestimmbar ist, dann kann die vorliegende Erfindung für diese Entität eingesetzt werden. Bei den Aktionen a handelt es sich um Berechnungsfunktionen, wobei eine Aktion alle Arten von mathematischen Funktionen wie Mittelwerte, Minimal- und Maximalwerte, Fast Fourier Transformationen, Integral- und Differentialrechnungen, aber auch konvergente neuronale Netze, künstliche neuronale Netze und rückgekoppelte neuronale Netze umfassen kann.

Figur 2 zeigt ein erfindungsgemäßes System 100 zur Auswahl von optimierten Merkmalen m zur Charakterisierung einer Enti tät. In einem Lernverstärkungs-Agenten (LV) (Reinforcement Learning Agent) 200 werden Berechnungsfunktionen vordefiniert entsprechend einer jeweiligen Aufgabenstellung bzw. entspre chend der jeweiligen Entität bzw. diese Berechnungsfunktionen sind bereits vorhanden. Die Auswahl der Berechnungsfunktionen fl, f2, ... , fN werden als Aktionen al, a2, ... aN bezeichnet.

Der LV-Agent 200 umfasst und/oder hat Zugriff auf eine Quali täts-Matrix 220, die die Basis für die Auswahl einer Aktion a aus den Aktionen al, a2, ..., aN für jeden Zustand darstellt. Hierzu wird in einem Initialisierungsschritt geprüft, ob für die Kombination verschiedener Aktionen a (Berechnungsfunktio nen f) der Datentyp des Ausgangs einer ersten Aktion a* mit dem Datentyp des Eingangs für eine nachfolgende zweite Aktion a** zusammenpasst. Nur wenn der Ausgang einer ersten Aktion a* auch von einer ausgewählten nachfolgenden zweiten Aktion a** verarbeitet werden kann, d.h. nur wenn eine entsprechende Rechenoperation a* a** durchführbar ist, ist dieser Daten typ auch als Eingang für die ausgewählte nachfolgende zweite Aktion a** geeignet. Die Rechenoperationen können über eine Typisierung mit anschließender Ausnahmebehandlung oder bei interpretierenden Sprachen über eine entsprechende Ausnahme behandlung überwacht werden. Wenn ein Datentyp eines Ausgangs einer ersten Aktion a* nicht zu dem Eingang einer nachfolgen den Aktion a** passt, wird die ausgewählte zweite Aktion a** mit einem hohen Negativwert bewertet. Somit wird diese zweite Aktion a** für den Zustand s, der durch die Auswahl der ers ten Aktion a* bestimmt ist, nicht mehr ausgewählt. Nach dem Initialisierungsschritt findet ein automatischer Wechsel in den Trainingsmodus des LV-Agenten 200 statt. In der Figur 5 ist der Ablauf eines ersten Trainingsmodus zum Auffinden einer optimierten Merkmalskombination schematisch für die Anzahl von drei Merkmalen ml, m2, m3 dargestellt. Ei ne Aktion al ist aus der Sicht eines Maschinenlernmoduls 400 die Auswahl einer Berechnungsfunktion f wie beispielsweise die Berechnung eines Minimal- oder Maximalwertes, einer Fou rier Transformation und/oder eines Mittelwertes. Ein Merkmal m2 ist das Berechnungsergebnis einer Berechnungsfunktion f angewendet auf ein zuvor bestimmtes Merkmal ml und somit de finiert durch die Berechnungsergebnisse der ausgewählten Be rechnungsfunktionen fl, f2, ..., fN in einer bestimmten Reihen folge. In einer LV Umgebung 200 hingegen werden ausgewählten Berechnungsfunktionen als Zustände sl, s2 bezeichnet, die für den jeweiligen Anwendungsfall (Entität) definiert werden durch die Auswahl der ausgewählten Aktionen a. Es handelt sich somit um unterschiedliche Begrifflichkeiten, mit denen Berechnungsfunktionen jeweils in einer LV Umgebung und in ei nem Maschinenlernmodul bezeichnet werden.

Im Startzustand sl, der durch die „Leerlauf-Funktion" initia lisiert ist, wählt der LV-Agent 200 eine Aktion al aus. Im resultierenden Zustand s2 wird z.B. die Aktion a2 ausgewählt und im darauffolgenden Zustand s3 wird a3 ausgewählt. Nachdem die letzte Aktion aN ausgewählt wurde, wird die Reihenfolge der ausgewählten Aktionen al, a2, a3, ... , aN an ein Vorverar beitungsmodul 300 ( Pre-processing) übergeben. Im Vorverarbei tungsmodul 300 werden die zu den ausgewählten Aktionen al, a2, a3 zugehörigen Berechnungsfunktionen fl, f2, f3 in der gewählten Reihenfolge auf einen Trainingsdatensatz 320 ange wendet. Nach jeder Anwendung einer Berechnungsfunktion f wird das Berechnungsergebnis als Merkmal m ausgegeben und an die nächste Rechenoperation und gleichzeitig an das Maschinen lernmodul 400 weitergegeben. Die Berechnungsergebnisse der drei Berechnungsfunktionen fl, f2, f3, d.h. die Merkmale ml, m2, m3, werden jeweils als Eingang in das Maschinenlernmodul 400 übergeben. Um die ausgewählten Aktionen (Berechnungsfunk- tionen) al, a2, a3 (fl, f2, f3) bewerten zu können, wird das Maschinenlernmodul 400 mit den Merkmalen ml, m2, m3 des Vor verarbeitungsmoduls 300 trainiert. Das Maschinenlernmodul 400 kann zum Trainieren und/oder Analysieren einen Algorithmus 420 aus Bereichen des überwachten Lernens (supervised learn- ing) und/oder des unüberwachten Lernens (unsupervised learn- ing) und/oder des verstärkenden Lernens (reinforcement learn- ing) verwenden.

Mit einem gekennzeichneten Testdatensatz 340, der vorteilhaf terweise eine Teilmenge aus dem Trainingsdatensatz 320 dar stellt, wird das Lernergebnis des Maschinenlernmoduls 400 nach dem Training automatisch bewertet, indem das Maschinen lernmodul 400 das Ergebnis des Maschinenlernens, beispiels weise eine Klassifizierung, mit den Vorgaben aus dem Testda tensatz 340 vergleicht. Die Trefferquote des Lernergebnisses wird als Bewertung in einem Bewertungsmodul 440 ausgegeben.

Im Rahmen der Erfindung kann das Bewertungsmodul 440 auch als Teil des Maschinenlernmoduls 400 ausgebildet sein. Die Bewer tung wird im Rahmen dieser Erfindung verwendet, um automa tisch ein Belohnungssignal für den LV-Agenten 200 zu generie ren. Das kann durch eine eins-zu-eins Abbildung in einem Be lohnungsmodul 500 (Reward-Modul ) durchgeführt werden, wobei eine sehr hohe Bewertung anzeigt, dass eine hohe Zielerfül lung vorliegt. Der Begriff Zielerfüllung ist dabei im Rahmen des jeweiligen Anwendungsfalls bzw. der jeweiligen Entität zu verstehen. So kann sich die Bewertung sich auf eine hohe Bil derkennungsrate im Bereich von automatischer Bilderkennungs software oder eine genaue Wiedergabe des tatsächlichen Markt geschehens bei Aktienkursen beziehen.

Für das Belohnungssignal kann im Belohnungsmodul eine Ver stärkungsfunktion (z.B. eine Sigmoidfunktion oder eine Hyb- erbolfunktion tanh) verwendet werden. Erst nach dem Trainie ren und Testen des Maschinenlernmoduls 400 erhält der LV- Agent 200 das Belohnungssignal entweder direkt von dem Bewer tungsmodul 440 oder vom Belohnungsmodul 500 für die gesamte Berechnungssequenz aus den Berechnungsfunktionen fl, f2, f3. Dieses Belohnungssignal ordnet der der LV-Agent 200 allen Zu- stands-Aktions-Paaren (s|a) zu.

Um die Auswahl der Aktionen a bzw. der Berechnungsfunktionen f zu bewerten, ist es in einer Ausführungsform der Erfindung nicht erforderlich, dass in dem ersten durchgeführten Trai ningsmodus bereits ein Maschinenlernmodul 400 verwendet wird. In dem ersten durchgeführten Trainingsmodus wird eine Aussage zu den Unterschieden der verschiedenen Merkmalsketten getrof fen, beispielsweise mittels einer Hauptkomponentenanalyse .

Bei dem ersten durchgeführten Trainingsmodus ist eine Angabe der Qualität einer Berechnungsfunktionskette, d.h. einer Merkmalskette, beispielsweise durch eine Bewertungsangabe wie eine Genauigkeit, ausreichend.

In dem zweiten durchgeführten Trainingsmodus wird eine opti mierte Kombination von Berechnungsfunktionsketten bzw. Merk malsketten ausgewählt, wozu das Maschinenlernmodul 400 ver wendet wird, das ein Maschinenlernen durchführt. Die Merk malsketten sind in dem ersten Trainingsmodus hinsichtlich ih rer Qualität bewertet worden. In dem zweiten Trainingsmodus werden die verschiedenen Kombinationsmöglichkeiten von ver schiedenen Merkmalsketten bewertet, so dass nun ein Training auf einer höheren, komplexeren Ebene stattfindet. Das Ergeb nis des Maschinenlernens wird durch das Bewertungsmodul 440 bewertet, um bei der Auswahl der Kombination der Berechnungs funktionsketten (Merkmalsketten) die Qualität des Maschinen lernens zu berücksichtigen. Das erfindungsgemäße System 100 gibt jedoch in beiden Trainingsmodi eine Bewertung an.

Zum Trainieren des LV-Agenten 300 können verschiedene LV- Technologien verwendet werden, wie beispielsweise SARSA (l) . SARSA steht für „state-action-reward-state-action" und ist ein Algorithmus zum Erlernen einer Aktions-Werte-Funktion . Durch eine Aktualisierungs-Regel (Update) wird eine Belohnung anteilig auf die l-letzten Zustand-Aktions-Paare (s|a) ver teilt, wobei l die Anzahl der Zustände s bezeichnet, die vor einem Zielzustand sN berücksichtigt werden sollen. Somit wird die Auswahl der Berechnungsfunktionen (Aktionen) in Abhängig keit von den jeweiligen Zuständen s bewertet. Der Zielzustand sN, welcher die gesamte Berechnungsfunktionskette beinhaltet, hat die höchste Gewichtung und damit die größte Auswirkung auf die Aktualisierung der Bewertung.

Die Bewertung der Zustands-Aktions-Paare (s|a), d.h. wie op timal zu einem bestimmten Zustand s eine bestimmte Aktion a passt, wird in dem LV-Agenten 200 durch Q-Werte 220 für jedes Zustands-Aktions-Paar (s|a), beispielsweise in einer Matrix, gespeichert, und nach jedem Trainingszyklus aktualisiert. Der Q-Wert ist definiert als die maximale Summe aller Belohnun gen, die erreicht werden, wenn in einem Zustand s eine Aktion a ausgewählt wird mit der Annahme, dass bis zum Zielzustand sN immer die optimale Aktion gewählt wird. Durch den Berech tigungsnachweis (Eligibility Trace) wird ein Kurzzeitgedächt nis der Zustände s gespeichert in dem LV-Agenten 200. Die im Kurzzeitgedächtnis vorhandenen Zustände s werden bei der Ak tualisierung bei jedem Trainingszyklus anteilig berücksich tigt. Die Größe des Kurzzeitgedächtnisses wird durch die An zahl l der Zustände s bis zum Zielzustand sN definiert. So werden bei l = 3 die Q-Werte der letzten drei Zustands- Aktions-Paare (s|a) am Ende eines Trainingszyklus aktuali siert .

In Tabelle 1 ist eine Q-Werte Matrix schematisch dargestellt, in der jeweils ein Q-Wert (Bewertung) bei der Auswahl einer Aktion a einem Zustand s zugeordnet wird. Die Spalten der Q- Werte Matrix stellen die Aktionen a dar, die in den Zuständen s ausgeführt werden können. In den Zeilen sind die Zustände s aufgetragen. Die Information, welcher Zustand s durch welche Kombination der Aktionen a definiert ist, wird separat abge speichert. Jeder Zustand s beginnt mit dem Startzustand sl, welcher durch eine Null-Aktion gekennzeichnet ist. Gemäß der Tabelle beträgt der Q-Wert, die Aktion al im Zustand sl aus zuführen, 0,67.

Tabelle 1: Q-Werte-Matrix

In den Figuren 3 und 4 sind zwei Beispiele zur Definition der Zustände s dargestellt. In Figur 3 wird im Startzustand sl die Aktion al ausgewählt und es resultiert der Zustand s2. Anschließend wird für den Zustand s2 Aktion a2 gewählt und es folgt der Zustand s3. Durch Auswählen der Aktion a3 endet die dargestellte Sequenz im Zustand s4.

In Figur 4 wird für den Zustand s2 die Aktion a4 gewählt, was den Zustand s5 zur Folge hat, und durch Wählen der Aktion a3 ergibt sich der Zustand s6.

Ein Zustand s ist somit durch eine bestimmte Abfolge von Ak tionen a definiert.

Wie in Figur 5 dargestellt, gibt der „Leerlauf-Operator" aO eine Eingabe ohne eine Änderung als Ausgabe aus. Durch die Definition des „Leerlauf-Operator" aO kann jeder Zustand s durch einen Vektor 10 mit der jeweils gleichen Länge be schrieben werden. Für einen Zustand s, der nur wenige Aktio nen beinhaltet, kann mehrfach der „Leerlauf-Operator" aO ein gesetzt werden, um die vorgegebene Gesamtlänge des Vektors 10 zu erhalten. Der Startzustand sl wird immer durch den „Leer lauf-Operator" aO initialisiert, d.h. es wurden noch keine Aktionen ausgeführt, so dass er durch die Null-Aktion aO be schrieben ist. Der beispielhafte Zustand s4 ist durch ver schiedene Aktionen al, a6 und a2 entstanden. Die Anzahl der maximal möglichen Aktionen a in einem Zustand s und somit die maximale Länge einer Zustandskette 20 wird festgelegt. Die in Figur 3 dargestellte Zustandskette 20 ist eine Reihenfolge von Zuständen sl, s2, s3, s4, die durch Ak tionen a entstanden sind und daher durch diese definiert sind. Eine Zustandskette 20 ist durch den Zielzustand s4 ein deutig bestimmt, da dieser alle Aktionen a beinhaltet, die ausgeführt werden sollen. In Figur 4 ist eine andere Zu standskette 30 dargestellt, die eine Reihenfolge von Zustän den sl, s2, s5 und s6 beinhaltet. Der Zustand s6 ist hier der Zielzustand sN.

In einem anderen Ausführungsbeispiel können die Q-Werte von einem neuronalen Netz erlernt und gespeichert werden. Diese Variante wird vor allem bevorzugt, wenn die Dimension mögli cher Zustände s und Aktionen a sehr groß werden.

Für das Beispiel in Figur 15 wird für die gewählte Aktions kette al, a2, a3 wie folgt vorgegangen:

Die zur Aktion al zugehörige Berechnungsfunktion fl wird auf den Ursprungstrainingsdatensatz 420 angewendet.

Das Berechnungsergebnis wird als Merkmal ml in dem Ma schinenlernmodul 300 gespeichert.

Die zu der Aktion a2 zugehörige Berechnungsfunktion f2 wird auf den durch die Berechnungsfunktion fl geänderten Trainingsdatensatz 320 angewendet.

Das Berechnungsergebnis wird als Merkmal m2 zusätzlich zu dem Merkmal ml in dem Maschinenlernmodul 300 gespei chert .

Die zu der Aktion a3 zugehörige Berechnungsfunktion f3 wird auf den durch die Berechnungsfunktionen fl und f2 geänderten Trainingsdatensatz 320 angewendet.

Das Berechnungsergebnis wird als Merkmal m3 zusätzlich zu den Merkmalen ml und m2 in dem Maschinenlernmodul 300 gespeichert . Die Kombination der Merkmale ml, m2 und m3 wird durch das Maschinenlernmodul 300 trainiert und/oder analysiert und das Lernergebnis wird bewertet.

Entsprechend der Bewertung des Lernergebnisses wird die Kombination der Merkmale mit einer Belohnung versehen und die jeweiligen Q-Werte für die Zustands-Aktions- Paare (sl, al) -> ml, (s2, a2) -> m2 und (s3, a3) -> m3 werden berechnet.

Dieser Trainingszyklus wird solange wiederholt, bis die Q- Werte für die Zustands-Aktions-Paare (s|a) sich angleichen und konvergieren. In einer Weiterentwicklung der Erfindung, kann das Lernen (Trainieren) auch durch ein Abbruchkriterium beendet wurde. Danach können die optimierten Zustandsketten 20, 30 mittels der Bewertung durch die höchsten Q-Werte auto matisch ausgewählt werden.

In dem zweiten Trainingsmodus kann die optimale Kombination der Zustandsketten entsprechend gelernt werden, da für das Trainieren nur die Zustände s mit dem höchsten Q-Wert zur Verfügung gestellt werden.

In diesem zweiten Trainingsmodus ist es somit möglich, kom plexere Zustandsketten (Merkmalsketten) durch Verkettung von bereits optimierten Zustandsketten (Merkmalsketten) zu bilden und die optimale Kombination von optimierten Zustandsketten automatisiert zu finden. Darüber hinaus ist auch die Kombina tion von weiteren höheren Ordnungen von Zustandsketten mög lich.

Darüber hinaus gibt es auch die Möglichkeit, die Anzahl der Zustandsketten durch „Leerlauf-Ketten" im Vergleich zur defi nierten maximalen Länge zu verkürzen.

Wenn die Q-Werte konvergiert sind und/oder das Lernen (Trai nieren) durch ein Abbruchkriterium beendet wurde, wird die Zustandskettenkombination mit dem höchsten Q-Wert dauerhaft in dem Vorverarbeitungsmodul 300 eingestellt. Anschließend wird das System 100 automatisch von dem Trainingsmodus auf einen Laufzeitmodus umgestellt.

Figur 6 stellt das erfindungsgemäße System 100 in einem Lauf zeitmodus dar. Anstelle eines Trainingsdatensatzes 320 wird eine Signatur 360, die analysiert werden soll, in das Vorver arbeitungsmodul 300 eingegeben. Die Ergebnisse des Vorverar beitungsmoduls 300 - die Merkmalsketten - werden als Eingabe in das Maschinenlernmodul 400 eingegeben. Das Lernergebnis des Maschinenlernmoduls 400 kann eine Klassifizierung 460 darstellen mit der Angabe einer Wahrscheinlichkeit für jede Klasse der Klassifizierung. In einem Schwellenwertprüfmodul 480 wird die tatsächlich aufgetretene Wahrscheinlichkeit mit einer erwarteten Wahrscheinlichkeit verglichen. In dem

Schwellenwertmodul 480 ist ein Schwellenwert SW für die er wartete Wahrscheinlichkeit eingestellt. Werte oberhalb des Schwellenwertes SW entsprechen der Wahrscheinlichkeit der Klassifizierung gemäß der Erwartung (z.B. der Qualität des Produktes) und werden von dem Schwellenwertprüfmodul 480 an eine Wahrscheinlichkeits-Überschreitungseinheit 482 weiterge geben, die mit der Signatur 360 verbunden ist. Das erfin dungsgemäße Verfahren bleibt im Laufzeitmodus.

Unterschreitet die tatsächliche Wahrscheinlichkeit der Klas sifizierung nach einer gewissen Zeit dauerhaft diesen Schwel lenwert SW und tritt z.B. eine Veränderung bei der Entität auf, die in der Klassifizierung berücksichtigt werden soll, so gibt das Schwellenwertprüfmodul 480 dies an eine Schwel- lenwert-Unterschreitungseinheit 482 weiter, die mit dem Trai ningsdatensatz 320 verbunden ist. Das Training wird dann er neut durchgeführt und das System 100 wechselt von dem Lauf zeitmodus in den Trainingsmodus. Gibt es keine deutlich er kennbare Ursache für die Veränderung der Wahrscheinlichkeit bei der Klassifizierung, ist dies häufig auf ein Verände rungsprozesse bei der Entität zurückzuführen. Die Schwellen wertprüfung 480 kann somit auch zur Überwachung der Entität verwendet werden. Singuläre Veränderungen können als Anoma lien erkannt werden und z.B. einer Qualitätsprüfung unterzo- gen werden. Die Datensätze solcher Anomalien werden vorteil hafterweise gespeichert und in einem weiteren Training von dem Maschinenlernmoduls 300 zusätzlich gelernt.

Wenn der Trainingsmodus wiederholt werden muss, wechselt das System 100 automatisch in den Trainingsmodus und trainiert das Maschinenlernmodul 300 mit einem neuen Trainingsdatensatz 320 mit der bereits gelernten Q-Werte-Matrix und den opti mierten Zustandsketten. Der Wechsel in den Laufzeitmodus fin det nach Abschluss des Trainings des Maschinenlernmoduls 300 automatisch statt.

In einer Weiterentwicklung der Erfindung ist im Trainingsmo dus eine Optimierung der Vorverarbeitung in dem Vorverarbei tungsmodul 400 möglich, wenn eine Berechnungsfunktion f bei mehreren Zustandsketten 20, 30 an der ersten Stelle verwendet wird. Dann muss diese Berechnung nicht für jede Zustandskette 20, 30 erneut durchgeführt werden, sondern kann von dem Lern ergebnis einer vorherigen Zustandskette 20, 30 übernommen werden, wobei die Lernergebnisse in einem Zwischenspeicher gespeichert werden.

Da bestimmte Berechnungsfunktionen mit einen hohen Rechenauf wand verbunden sind, wie z.B. eine Fast Fourier Transformati on (FFT) , ist es sinnvoll, den Rechenaufwand bei der Bewer tung der Zustandskettenkombinationen, also bei der Beloh nungsfunktion, zu berücksichtigen. Die Auswahl von optimier ten Zustandsketten und die optimale Kombination von optimier ten Zustandsketten 20, 30 kann in Abhängigkeit von dem Be rechnungsaufwand durchgeführt werden, beispielsweise indem der Berechnungsaufwand bei der ausgewählten Zustandskette in der Belohnungsfunktion des Belohnungsmoduls 500 berücksich tigt wird. Dazu wird beispielsweise die Rechenzeit des Sys tems 100 für jede ausgewählte Zustandskette 20, 30 in der Be lohnungsfunktion berücksichtigt. So kann sich eine zeitinten sive Rechendauer negativ auf die Belohnung auswirken. Weiter hin kann die Auslastung des Systems 100 die Belohnungsfunkti on beeinflussen. Zusätzlich kann die optimierte Zustandsket- ten und die optimale Kombination von Zustandsketten 20, 30 für ein Endgerät optimiert werden, indem die Rechenleistung eines Endgerätes für die Vorverarbeitung der Daten verwendet wird und beispielsweise die Dauer und Auslastung der Vorver arbeitung in der Belohnungsfunktion berücksichtigt wird.

Gemäß des Verfahrens und des Systems der vorliegenden Erfin dung wird ein verstärkendes Lernen (Reinforcement Learning) eingesetzt, um automatisiert eine optimale Kombination von Zuständen s und Zustandsketten 20, 30 zu finden, die einen Datensatz charakterisieren.

In Figur 7 sind die Verfahrensschritte zum Auffinden von op timierten Merkmalsketten zur Beschreibung der Eigenschaften einer Entität dargestellt.

In einem Schritt S10 wird/werden eine oder mehrere Kombinati on (en) von Berechnungsfunktionen fl, f2, ..., fN von dem Lern verstärkungsagenten 200 ausgewählt.

In einem Schritt S20 werden ausgewählte Berechnungsfunktionen fl, f2, ..., fN von dem Lernverstärkungsagenten 200 an das Da- tenvorverarbeitungsmodul 300 weitergegeben.

In einem Schritt S30 werden Merkmale ml, m2, ..., mN aus den Daten eines Trainingsdatensatzes 320 mittels der ausgewählten Berechnungsfunktionen fl, f2, ..., fN in dem Datenvorverarbei- tungsmodul 300 berechnet.

In einem Schritt S40 werden die berechneten Merkmale ml, m2, ..., mN von dem Datenvorverarbeitungsmodul an das Maschinen lernmodul 400 weitergegeben.

In einem Schritt S50 werden die Merkmale ml, m2, ..., mN in dem Maschinenlernmodul 400 analysiert und/oder trainiert.

In einem Schritt S60 wird das Lernergebnis an das Bewertungs modul 440 weitergegeben. In einem Schritt S70 wird eine Bewertung des Lernergebnisses in dem Bewertungsmodul 440 erstellt.

In einem Schritt S80 wird die Bewertung des Lernergebnisses an den Lernverstärkungs-Agenten 200 weitergegeben.

In einem Schritt S90 wird/werden eine oder mehrere Kombinati on (en) von Berechnungsfunktionen fl, f2, ..., fN von dem Lern verstärkungsagenten 200 auf Basis der Bewertung des Lerner gebnisses ausgewählt.

Gemäß des Verfahrens und des Systems der vorliegenden Erfin dung werden Zustandsketten 20, 30 verwendet und keine einzel nen Zustände. Die beste Kombination von Zustandsketten 20, 30 für einen bestimmten Datensatz wird bestimmt. Dabei können auch komplexe Zustandsketten 20, 30 verwendet werden, die ma nuell nur schwierig oder mit einem sehr hohen Aufwand zu fin den wären. Dies schließt jedoch das Auffinden von einfachen Lösungen mit ein, falls diese zum gewünschten Optimierungs ziel führen, wie beispielsweise ein einzelner Zustand, der dann mittels eines „Null-Operators" beschrieben wird.

Zum Auffinden der optimierten Kombination der optimierten Zu standsketten 20, 30 können verschiedenen Kriterien verwendet werden, wobei diese Kriterien in der Belohnungsfunktion be rücksichtigt werden, wie beispielsweise eine geringe Berech nungsdauer .

Die Belohnung wird automatisch generiert. Die Bewertung des Maschinenlernmoduls 400 und/oder eine Hauptkomponentenanalyse und/oder die Berücksichtigung der Auslastung und/oder die Be rechnungsdauer und/oder eine Verstärkungsfunktion können als Basis für eine Belohnung verwendet werden, wobei die Auswahl der Zustandsketten einen direkten Einfluss auf die Qualität beispielsweise einer Klassifizierung oder einer Hauptkompo nentenanalyse haben. Die Initialisierung der Q-Werte-Matrix 220 oder einer Über gangsmatrix kann manuell vorgegeben werden. Dabei können be stimmte Regeln abgebildet werden. Wenn beispielsweise verhin dert werden soll, dass eine Berechnungsfunktion f während der Vorverarbeitung 300 zweimal hintereinander ausgeführt wird, kann in der Q-Matrix 220 ein hoher negativer Wert festgelegt werden .

Mit dem Verfahren gemäß der vorliegenden Erfindung kann zu verlässig eine optimierte Kombination von Zustandsketten 20, 30 gefunden werden, die für die Menge der betrachteten Zu stände zu einer maximalen Genauigkeit beispielsweise bei ei ner Klassifizierung führen, was bei einem manuellen Verfahren nicht garantiert ist. Eine Datentypprüfung im Initialisie rungsschritt des erfindungsgemäßen Verfahrens sortiert die Kombinationen, die nicht zueinander passen, aus.

Zudem erkennt das System 100 durch das Bewertungssignal auch Fehlerfälle, für die eine Durchführung des Trainings nicht möglich ist. Wenn beispielsweise das Maschinenlernmodul 400 das Training nicht durchführen konnte, da es Daten eines fal schen Datentyps als Eingang erhalten hat, wird dies durch ei ne negative Belohnung bewertet. Folglich vermeidet der LV- Agent 200 für einen bestimmten Zustand s diese Aktion a aus zuwählen .

Des Weiteren kann das erfindungsgemäße Verfahren für vielfäl tige Maschinenlernaufgaben angewendet werden. Die Q-Werte- Matrix 220 des LV-Agenten 200 kann für eine spezifische Auf gabenstellung vorinitialisiert und/oder für ähnliche Maschi nenlernprobleme vortrainiert werden. Eine vortrainierte Q- Werte-Matrix 220 kann für Maschinenlernaufgabenstellungen mit ähnlichen Dimensionen verwendet werden, so dass die initialen Werte der Q-Werte-Matrix 220 aus einer anderen Entität oder Domain stammen können. In diesem Fall ist zwar ein erneutes Trainieren des LV-Agenten 200 erforderlich, gleichwohl erge ben sich Vorteile wie eine schnellere Konvergenz und somit ein schnelleres Auffinden einer optimierten Lösung sowie die Weitergabe von domainübergreifenden Aufgabenstellungen. Hier durch kann der Zeit- und Rechenaufwand für neue Anwender re duziert werden.