-
Technisches Gebiet
-
Die vorliegende Erfindung betrifft allgemein Verfahren zum Erstellen von nicht parametrischen, datenbasierten Funktionsmodellen, insbesondere basierend auf Gauß-Prozessen.
-
Stand der Technik
-
In Steuergeräten von Kraftfahrzeugen sind üblicherweise Steuergerätefunktionen realisiert, die von dem Steuergerät zur Ausführung seiner spezifischen Steuerfunktionen benötigt werden. Den Steuergerätefunktionen liegen üblicherweise Modelle zugrunde, die eine Modellierung des Systemverhaltens ermöglichen, insbesondere des Verhaltens eines zu steuernden Verbrennungsmotors. Derartige Funktionsmodelle werden häufig anhand von Kennlinien oder Kennfeldern beschrieben, die durch aufwändige Applikationsverfahren an die zu modellierende Steuergerätefunktion angepasst werden. Aufgrund des hohen Applikationsaufwands zur Anpassung der Funktionsmodelle ist der gesamte Entwicklungsaufwand sehr hoch. Zudem gestatten komplexe Prozesse, wie beispielsweise Verbrennungsprozesse in einem Verbrennungsmotor, lediglich eine näherungsweise Erstellung des physikalischen Funktionsmodells, die unter Umständen für die zu realisierenden Steuergerätefunktionen nicht ausreichend genau ist.
-
Daher wird beispielsweise in der Druckschrift
DE 10 2010 028 266 A1 vorgeschlagen, das Funktionsmodell in Form eines nicht parametrischen, datenbasierten Modells zu realisieren. Dabei wird die Berechnung der Ausgangsgröße unter Anwendung eines Bayes-Regressionsverfahrens ermittelt. Insbesondere ist vorgesehen, die Bayes-Regression als Gauß-Prozess oder Sparse-Gauß-Prozess zu realisieren.
-
Offenbarung der Erfindung
-
Erfindungsgemäß sind ein Verfahren zum Erstellen eines nicht parametrischen, datenbasierten Funktionsmodells mithilfe von Trainingsdaten gemäß Anspruch 1 sowie die Vorrichtung und das Computerprogramm gemäß den nebengeordneten Ansprüchen vorgesehen.
-
Weitere vorteilhafte Ausgestaltungen sind in den abhängigen Ansprüchen angegeben.
-
Gemäß einem ersten Aspekt ist ein Verfahren zum Ermitteln eines nicht parametrischen Funktionsmodells mit bereitgestellten Trainingsdaten vorgesehen. Die Trainingsdaten enthalten eine Anzahl von durch eine oder mehrere Eingangsgrößen definierten Messpunkten mit jeweils zugeordneten Ausgangswerten einer oder mehreren Ausgangsgrößen. Das Verfahren umfasst die folgenden Schritte:
- – Bereitstellen von variierenden Messunsicherheitswerten für einen Teil der oder alle Messpunkte der Trainingsdaten; und
- – Ermitteln des nicht parametrischen Funktionsmodells gemäß einem Algorithmus, der von den Messpunkten der Eingangsgrößen, den jeweils zugeordneten Ausgangswerten der einen oder den mehreren Ausgangsgröße und den jeweils zugeordneten Messunsicherheitswerten abhängt.
-
Nicht parametrische, datenbasierte Funktionsmodelle werden üblicherweise unter einer Modellannahme erstellt, wonach die Messunsicherheit bzw. das Messrauschen für alle Messpunkte der Trainingsdaten gleich ist. Das heißt, der konkrete Messfehler für jeden Messpunkt entspringt der normalverteilten Zufallsgröße mit einer Standardabweichung, die für jeden Messpunkt gleichermaßen gilt. Ein auf diese Weise erstelltes Funktionsmodell resultiert in einer Funktion, deren Funktionswerte an den Messpunkten von den Ausgangswerten der Trainingsdaten an den Messpunkten abweichen können. In der Praxis sind jedoch Ausgangsgrößen bekannt, auf die die obige Annahme hinsichtlich der Messunsicherheit aufgrund von Stellgeber- oder Bauteiltoleranzen oder Messungenauigkeiten in bekannter Weise nicht zutrifft. Dies führt dazu, dass sich das unter diesen Annahmen erstellte Funktionsmodell nicht für alle Messpunke optimal ist.
-
Es ist daher vorgesehen, die Messunsicherheit der Messpunkte der Trainingsdaten durch Messunsicherheitswerte anzupassen. Das heißt, das Erstellen des nicht parametrischen, datenbasierten Funktionsmodells erfolgt anhand von Trainingsdaten, deren Messpunkte jeweils variabel mit einem individuellen Messunsicherheitswert beaufschlagt werden können. Dadurch kann erreicht werden, dass die Messunsicherheit individuell an die Messunsicherheit der Messpunkte der Trainingsdaten angepasst werden kann.
-
Weiterhin können die Messunsicherheitswerte in Form einer von der bzw. Ausgangsgrößen und/oder von einer oder mehreren der Eingangsgrößen bestimmten Messunsicherheitsfunktion bereitgestellt werden.
-
Insbesondere können die Messunsicherheitswerte der Messunsicherheitsfunktion proportional zu dem Ausgangswert der einen oder den mehreren Ausgangsgrößen bereitgestellt werden.
-
Gemäß einer Ausführungsform kann das nicht parametrische, datenbasierte Funktionsmodell als Gauß-Prozessmodell oder als Sparse-Gauß-Prozessmodell ermittelt werden.
-
Weiterhin können die Messunsicherheitswerte der Messunsicherheitsfunktion durch einen heteroscedastischen Gaußprozess bestimmt werden.
-
Insbesondere kann die Durchführung des heteroscedastischen Gaußprozesses ein Optimierungsproblem enthalten, das beispielsweise mithilfe einer Monte Carlo Integration, einer MAP-Schätzung oder einer Variationsmethode gelöst wird.
-
Gemäß einer Ausführungsform kann die Durchführung des heteroscedastischen Gaußprozesses folgende Schritte aufweisen:
- a) Erstellen eines ersten Gaußprozessmodells basierend auf den bereitgestellten Trainingsdaten;
- b) Schätzen jeweils eines Messunsicherheitswerts für die Messpunkte der Trainingsdaten;
- c) Ermitteln eines zweiten Gaußprozessmodells basierend auf den bereitgestellten Trainingsdaten und den zugeordneten Messunsicherheitswerten;
- d) Ermitteln eines kombinierten Gaußprozessmodells basierend auf den Messunsicherheitswerten, die sich an den Messpunkten der Trainingsdaten aus dem zweiten Gaußprozessmodell ergeben.
-
Weiterhin kann die Durchführung der Schritte b)–d) des heteroscedastischen Gaußprozesses iterativ durchgeführt werden, wobei die Schätzung des jeweiligen Messunsicherheitswertes bei jeder Iteration basierend auf den zuletzt erhaltenen kombinierten Gaußprozessmodell vorgenommen wird.
-
Das nicht parametrische, datenbasierte Funktionsmodell kann mithilfe einer Kovarianzmatrix definiert werden, wobei die Kovarianzmatrix mit einer Diagonalmatrix beaufschlagt wird, deren Diagonalmatrizenwerte den Messunsicherheitswerten entweder entsprechen oder proportional zu diesen sind.
-
Gemäß einem weiteren Aspekt ist eine Vorrichtung, insbesondere Recheneinheit, zum Ermitteln eines nicht parametrischen, datenbasierten Funktionsmodells mit bereitgestellten Trainingsdaten vorgesehen, wobei die Trainingsdaten eine Anzahl von durch eine oder mehrere Eingangsgrößen definierten Messpunkten mit jeweils zugeordneten Ausgangswerten einer Ausgangsgröße enthalten, wobei die Vorrichtung ausgebildet ist, um:
- – variierende Messunsicherheitswerte für einen Teil der oder alle Messpunkte der Trainingsdaten bereitzustellen; und
- – das nicht parametrische, datenbasierte Funktionsmodell gemäß einem Algorithmus zu ermitteln, der von den Messpunkten der Eingangsgrößen, den jeweils zugeordneten Ausgangswerten der Ausgangsgröße und den jeweils zugeordneten Messunsicherheitswerten abhängt.
-
Gemäß einem weiteren Aspekt ist ein Computerprogramm vorgesehen, das ausgebildet ist, um alle Schritte des obigen Verfahrens auszuführen.
-
Kurzbeschreibung der Zeichnungen
-
Bevorzugte Ausführungsformen der vorliegenden Erfindung werden nachfolgend anhand der beigefügten Zeichnungen näher erläutert. Es zeigen:
-
1 ein Flussdiagramm zur Veranschaulichung des Verfahrens zum Ermitteln eines Funktionsmodells mit Messpunkten von Trainingsdaten mit variablen Messunsicherheiten;
-
2 ein Flussdiagramm zur Veranschaulichung des Verfahrens zum Ermitteln eines Funktionsmodells unter Berücksichtigung automatisch bestimmter Messunsicherheitswerte mithilfe eines heteroscedastischen Gaußprozesses und einer MAP-Schätzung;
-
3 eine Testfunktion mit einer variablen Messunsicherheit;
-
4 ein Diagramm zur Veranschaulichung eines Vergleichs eines Modellierungsfehlers für das obige Verfahren sowie alternativer Ansätze; und
-
5 ein Diagramm zur Veranschaulichung eines Funktionswerteverlaufs eines Standard Gaußprozesses mit stationärem Rauschen und eines heteroscedastischen Gaußprozesses für eine beispielhafte Ausgangsfunktion.
-
Beschreibung von Ausführungsformen
-
1 zeigt ein Flussdiagramm zur Veranschaulichung des Verfahrens zum Erstellen eines nicht parametrischen, datenbasierten Funktionsmodells unter Berücksichtigung von variierenden Messunsicherheiten der Messpunkte der Trainingsdaten.
-
Die Verwendung von nicht parametrischen, datenbasierten Funktionsmodellen basiert auf einem Bayes-Regressionsverfahren. Die Grundlagen der Bayes-Regression sind beispielsweise in C. E. Rasmusen et al., „Gaussian Processes for Machine Learning", MIT Press 2006, beschrieben. Die Bayes-Regression ist ein datenbasiertes Verfahren, das auf einem Modell basiert. Zur Erstellung des Modells sind Messpunkte von Trainingsdaten sowie zugehörige Ausgangsdaten einer Ausgangsgröße erforderlich. Das Modell wird erstellt, indem Stützstellendaten die den Trainingsdaten ganz oder teilweise entsprechen oder aus diesen generiert werden, verwendet werden. Weiterhin werden abstrakte Hyperparameter bestimmt, die den Raum der Modellfunktionen parametrisieren und effektiv den Einfluss der einzelnen Messpunkte der Trainingsdaten auf die spätere Modellvorhersage gewichten.
-
Die abstrakten Hyperparameter werden durch ein Optimierungsverfahren bestimmt. Eine Möglichkeit für ein solches Optimierungsverfahren besteht in einer Optimierung einer Marginal Likelihood p(Y|H, X). Die Marginal Likelihood p(Y|H, X) beschreibt die Plausibilität der gemessenen y-Werte der Trainingsdaten dargestellt als Vektor Y gegeben die Modellparameter H und die x-Werte der Trainingsdaten. Im Modelltraining wird p(Y|H, X) maximiert, indem geeignete Hyperparameter gesucht werden, mit denen die Daten besonders gut erklärt werden können. Zur Vereinfachung der Berechnung wird der Logarithmus von p(Y|H, X) maximiert, da der Logarithmus die Stetigkeit der Plausibilitätsfunktion nicht verändert.
-
Das Optimierungsverfahren sorgt dabei automatisch für einen Trade-off zwischen Modellkomplexität und Abbildungsgenauigkeit des Modells. Zwar kann mit steigender Modellkomplexität eine beliebig hohe Abbildungsgenauigkeit der Trainingsdaten erreicht werden, dies kann jedoch gleichzeitig zu einer Überanpassung des Modells an die Trainingsdaten und damit zu einer schlechteren Generalisierungseigenschaft führen.
-
Als Ergebnis der Erstellung des nicht parametrischen Funktionsmodells erhält man:
wobei v einem normierten Modellwert (Ausgangswert) an einem normierten Testpunkt u (Eingangsgrößenvektor der Dimension D), x
i einer Stützstelle der Stützstellendaten, N der Anzahl der Stützstellen der Stützstellendaten, D der Dimension des Eingangsdaten-/Trainingsdatenraums/ Stützstellendatenraums, sowie l
d, σ
n und σ
f den Hyperparametern aus dem Modelltraining entsprechen. Der Vektor Q
y ist eine aus den Hyperparametern und den Trainingsdaten berechnete Größe.
-
In einer alternativen Schreibweise gilt: v = f(u) = k(u, X)(K + σ 2 / nI)–1Y bzw. v = f(u) = k(u, X)(K + R)–1Y, wobei X eine Matrix der Messpunkte der Eingangsdaten, Y einen Vektor der Ausgangsdaten zu den Messpunkten, K eine Kovarianzmatrix der Messpunkte X der Trainingsdaten, I eine Einheitsmatrix, R eine Diagonalmatrix mit N Einträgen und die Einträge Ri,i der Diagonalmatrix die Rauschvarianz an der i-ten Stützstellen xi der Stützstellendaten repräsentieren. Weiterhin entspricht k(u, X) einer Kovarianzfunktion.
-
Die Hyperparameter des Gauß-Prozessmodells werden in bekannter Weise ermittelt, wobei des Weiteren eine Angabe über die Rauschvarianzmatrix R vorgegeben werden muss.
-
Das Verfahren startet mit Schritt S1, in dem Trainingsdaten in Form von Messpunkten X und entsprechenden Ausgangswerten der zu modellierenden Ausgangsgröße Y bereitgestellt werden. Die Trainingsdaten können beispielsweise mithilfe eines Prüfstand ermittelt werden.
-
In Schritt S2 wird die Ausgangsgröße Y hinsichtlich ihrer Messunsicherheit bewertet. Dazu werden die Eingangsgrößen X hinsichtlich ihrer Messunsicherheiten analysiert. Die Messunsicherheiten können durch Sensortoleranzen, insbesondere des Sensors zur Erfassung der Ausgangsgröße, sowie durch Stellgeber- und Bauteiltoleranzen, die den Einfluss einer Eingangsgröße von dem Gewünschten abweichen lassen, hervorgerufen werden.
-
In Schritt S3 werden diese Unsicherheiten in einer Messunsicherheitsfunktion M(X, Y) beschrieben. Der Funktionswert der Messunsicherheitsfunktion M ist hoch bei großen Messunsicherheiten und niedriger bei geringeren Messunsicherheiten. Liegt beispielsweise eine Messunsicherheit für den Ausgangswert der Ausgangsgröße Y vor, die im Wesentlichen monoton mit dem Betrag des Ausgangswerts ansteigt, so kann die Messunsicherheitsfunktion M(X, Y) = |y| angenommen werden. Die Annahme der Messunsicherheitsfunktion kann durch einen Benutzer erfolgen.
-
Es ist zweckmäßig, die Messunsicherheit M(X, Y) lediglich als Funktion der Ausgangsgröße Y zu beschreiben. Zum Einen ist die Vorgabe von Messunsicherheiten für einzelne Messpunkte aufgrund der üblichen hohen Anzahl der Messpunkte nicht individuell möglich, zum Anderen beinhaltet eine Toleranz der Ausgangsgröße bereits die Stellgeber- und Bauteiltoleranzen, die für die Eingangsgrößen gelten.
-
Grundsätzlich gilt, dass die Vorgehensweise nicht auf wertproportionale Messunsicherheiten beschränkt ist, sondern Modellannahmen getroffen werden können, bei denen für jeden der Messpunkte der Trainingsdaten ein separater Funktionswert M(X, Y) der Messunsicherheitsfunktion angegeben werden kann. Entsprechend der obigen Formel kann der Funktionswert der Messunsicherheitsfunktion anstelle des Einheitsvektors als Multiplikationsmatrizenfaktor für die Varianz σn 2 angesehen werden, mit der jeder der Messpunkte der Trainingsdaten beaufschlagt wird. Es gilt: v = f(u) = k(u, X)(K + σ 2 / nM(X, Y))–1Y
-
In Schritt S4 werden nun ausgehend von diesem modifizierten, zugrunde liegenden Modell die Hyperparameter σf, σn und ld ermittelt und gemeinsam mit den Trainingsdaten bzw. den Stützstellendaten beim Sparse-Gauß-Prozess mit ausgewählten Trainingsdaten bzw. Stützstellendaten an ein Steuergerät übermittelt.
-
Alternativ können die Messunsicherheiten auch automatisch mithilfe eines heteroscedastischen Gaußprozesses, d.h. einem Gaußprozess für Trainingsdaten mit lokal variablem Rauschverhalten ermittelt werden. Ein heteroscedastischer Gaußprozess ist beispielsweise aus
Lázaro-Gredilla et al., „Variational Heteroscedastic Gaussian Process Regression", International Conference on Machine Learning (ICML) 2011 und
Le, Smola, et al., "Heteroscedastic Gaussian Process Regression", International Conference on Machine Learning (ICML) 2005 bekannt.
-
Tatsächlich kann bei der Optimierung (aufgrund der großen Parameterzahl) nicht für jeden Messpunkt x eine eigene Rauschvarianz geschätzt werden. Der heteroscedastische Gaußprozess sieht vor, dass eine lokal variable Rauschfunktion r(x) eingeführt wird, der den Skalar σn 2 ersetzt:
-
Für v = f(u) = k(u, X)(K + R)–1Y, gilt R = r(xi)I
-
Die Rauschfunktion r(x) wird durch eine Approximation ermittelt.
-
Die zu Grunde liegende Idee ist es, einen zweiten Gaußprozess g(x) als Messunsicherheitsfunktion für das ortsabhängige Rauschen zu verwenden: g(x) ~ GP(μ0, kg(x, x'))
-
Dieser Gaußprozess bildet jeden Punkt x des Eingangsraums auf das zugehörige (ortsabhängige) Rauschniveau ab. Physikalisch bedingt kann es nur positive Rauschniveaus geben, ein GP kann jedoch methodenbedingt auch negative Ausgaben liefern. Um positives Rauschen zu garantieren, verwendet man daher nicht direkt g(x) für die Rauschniveaumodellierung, sondern parametrisiert das Rauschniveau r(x) beispielsweise mit r(x) = exp(g(x)) (vgl. Lázaro-Gredilla. Die Hyperparameter des Rauschmodells müssen anschließend aus den Daten gelernt werden.
-
Als Stützpunkte zur Ermittlung des Rauschmodells kann man die Messpunkte der Trainingsdaten verwenden, die auch zur Erstellung des Funktionsmodells verwendet werden. Die Verwendung von virtuellen Messpunkten, wie beim Sparse-Gaußprozess, ist jedoch ebenfalls denkbar.
-
Heteroscedastische Gaußprozesse sind flexibler als Standard-Gaußprozesse. Jedoch ist das zugrundeliegende Optimierungsproblem meist nicht mehr analytisch lösbar und muss daher numerisch berechnet werden, z.B. mittels Monte Carlo Integration, beispielsweise bekannt aus Goldberg et al.: Regression with input-dependent noise, NIPS 1998, MAP-Schätzung beispielsweise bekannt aus Kersting et al., „Most likely heteroscedastic Gaussian process regression", ICML 2007 oder die Variationsmethode, beispielsweise bekannt aus Lázaro-Gredilla et al., „Variational Heteroscedastic Gaussian Process Regression", International Conference on Machine Learning (ICML) 2011.
-
Exemplarisch sei hier die Vorgehensweise nach Kersting in Verbindung mit dem Flussdiagramm der 2 beschrieben. Hier wird zunächst in Schritt S11 ein Standard-Gaußprozess G1 auf den Trainingsdaten (xi, yi), i = 1, ..., N mit R = σn 2I trainiert. Dies erfolgt in bekannter Weise.
-
Das so ermittelte Gaußprozessmodel G1 wird dann in Schritt S12 verwendet, um ein empirisches Rauschniveau an den Messpunkten xi der Trainingsdaten vorherzusagen. Hierzu wird für xi mit zugehöriger Ausgabe yi das logarithmierte Rauschniveau (Messunsicherheitswert) zi = log(var[yi, G1(xi)]) als Messunsicherheitsfunktion errechnet.
-
Anschließend wird in Schritt S13 ein zweites Gaußprozessmodell G2 für das Rauschniveau trainiert. Als Trainingsdaten für das zweites Gaußprozessmodell G2 kann man die Messpunkte (xi, zi), i = 1, ..., N der Trainingsdaten verwenden.
-
Anschließend wird in Schritt S14 ein kombiniertes Gaußprozessmodell G3 ermittelt. Hierfür verwendet man zunächst das zweite Gaußprozessmodell G2, um die Rauschniveaus r(xi) vorherzusagen. Diese werden dann vor der Optimierung anstelle von σ 2 / nI auf die Hauptdiagonale der Kovarianzmatrix K addiert.
-
Stellt man in Schritt S15 fest, dass das kombinierte Gaußprozessmodell G3 in etwa dem ersten Gaußprozessmodell G1 = G3 entspricht (Alternative: Ja), kann das Training beendet werden. Andernfalls (Alternative: Nein) wird zu Schritt S12 unter der Annahme G3 = G1 zurückgesprungen.
-
Während sich das Training deutlich vom Standard-Verfahren zur Durchführung des Gaußprozesses unterscheidet, entspricht die Vorhersage des Mittelwerts bis auf eine kleine Anpassung dem Standard. Statt f(x) = k(x, X)(K + σ 2 / nI)–1Y ergibt sich f(x) = k(x, X)(K + R)–1Y für die Mittelwertvorhersage. Die Veränderung betrifft nur diesen einen Faktor und kann in den Modellparametern „versteckt“ werden.
-
3 zeigt eine beispielhafte Testfunktion für eine Eingangsgröße x und eine Ausgangsgröße y (Kurve K) mit einer dazugehörigen variablen Messunsicherheit (Toleranzkurven T1, T2). Die Testfunktion definiert die Messpunkte x der Trainingsdaten und die entsprechende Ausgangsgröße y.
-
Bei Modellierung dieser Testfunktion mithilfe eines Gaußprozessmodells erhält man einen mittleren Fehler F, der in 4 als Kurve MU im Vergleich zu weiteren Ansätzen dargestellt ist. Die weiteren Ansätze entsprechen zum einen einem herkömmlichen Gaußprozessmodell (Kurve GP), bei dem lediglich die Standardabweichung σ 2 / nI als Messunsicherheit verwendet wird, und zum anderen einem weiteren Modell (Kurve LOG) einer Log-Transformation für die Messunsicherheit. Man erkennt eine deutliche Reduzierung des Fehlers F bei Anwendung einer variablen Messunsicherheitsfunktion M(X, Y) auf die berücksichtigte Standardabweichung
-
5 zeigt für eine Ausgangsfunktion sinc(x) + sinc2(x)·(rand(1) – 0.5) einen Funktionswerteverlauf eines Standard-Gaußprozesses mit stationärem Rauschen (Kurve SGP), der das lokal unterschiedliche Rauschniveau nicht angemessen abbildet. Beispielhaft sind obere und untere Rauschniveaugrenzen (Kurven URN, ORN) als +/–2 Standardabweichungen dargestellt. Das Resultat des heteroscedastischen Gaußprozesses (Kurve VHGP) erkennt die höhere Varianz der Messpunkte im Bereich von x = [–1; 1] (hohes Rauschniveau) und den Abfall außerhalb dieses Bereichs (niedrigeres Rauschniveau).
-
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
-
- DE 102010028266 A1 [0003]
-
Zitierte Nicht-Patentliteratur
-
- C. E. Rasmusen et al., „Gaussian Processes for Machine Learning“, MIT Press 2006 [0026]
- Lázaro-Gredilla et al., „Variational Heteroscedastic Gaussian Process Regression“, International Conference on Machine Learning (ICML) 2011 [0038]
- Le, Smola, et al., “Heteroscedastic Gaussian Process Regression”, International Conference on Machine Learning (ICML) 2005 [0038]
- Goldberg et al.: Regression with input-dependent noise, NIPS 1998 [0045]
- Kersting et al., „Most likely heteroscedastic Gaussian process regression“, ICML 2007 [0045]
- Lázaro-Gredilla et al., „Variational Heteroscedastic Gaussian Process Regression“, International Conference on Machine Learning (ICML) 2011 [0045]