Gaußsche Prozesse: Verwendung von GPML für mehrdimensionale Ausgaben


13

Gibt es eine Möglichkeit, eine Gaußsche Prozessregression für mehrdimensionale Ausgaben (möglicherweise korreliert) mithilfe von GPML durchzuführen ?

Im Demo-Skript konnte ich nur ein 1D-Beispiel finden.

Eine ähnliche Frage zum Lebenslauf, die sich mit mehrdimensionalen Eingaben befasst.


Ich ging ihr Buch durch, um zu sehen, ob ich etwas finden konnte. Im 9. Kapitel dieses Buches (Abschnitt 9.1) haben sie diesen Fall mehrerer Ausgaben erwähnt. Sie haben ein paar Möglichkeiten erwähnt, um damit umzugehen: Eins - unter Verwendung eines korrelierten Rauschprozesses und Zwei - Cokriging (Korrelierter Prior).

Ich weiß immer noch nicht, wie ich diese Ideen in das GPML-Framework integrieren kann.


Gibt es auch andere GP-Bibliotheken / Frameworks, die eine mehrdimensionale Ausgabe unterstützen?


"Vorhersage strukturierter Daten" befasst sich mit der Verwendung von SVMs im Fall einer Klasse (Kernel-Dichteschätzung) auf gemeinsamen Kerneln zwischen Eingabe und Ausgabe. Da beide Kernel-Maschinen sind, sollte dieser Ansatz funktionieren. Ich fand ein Papier, in dem etwas Ähnliches erwähnt wurde. datamin.ubbcluj.ro/tr/2011/sogp.pdf Meine Versuche, strukturierte Lernalgorithmen anzupassen, waren ziemlich miserabel, daher bin ich mir nicht sicher, wie sich das aufbaut.
Jessica Collins

Antworten:


7

Ich glaube, dass Twin Gaussian Processes genau das ist, wonach Sie suchen. Ich kann das Modell nicht besser beschreiben als die Zusammenfassung des Papiers selbst, also werde ich es einfach kopieren und einfügen:

Wir beschreiben Zwillings-Gauß-Prozesse (TGP) 1, eine generische strukturierte Vorhersagemethode, die Gaußsche Prozessprioren (GP) [2] sowohl für Kovariaten als auch für multivariate Antworten verwendet und die Ergebnisse schätzt, indem die Kullback-Leibler-Divergenz zwischen zwei GP, die als Normalverteilungen über endliche Indexsätze von Training und modelliert sind, minimiert wird Testbeispiele, wobei das Ziel hervorgehoben wird, dass ähnliche Eingaben ähnliche Wahrnehmungen erzeugen sollten und dies im Durchschnitt zwischen ihren Randverteilungen gelten sollte. TGP erfasst nicht nur die Interdependenzen zwischen Kovariaten wie bei einem typischen GP, ​​sondern auch die zwischen Antworten, sodass Korrelationen zwischen Ein- und Ausgängen berücksichtigt werden. TGP wird mit vielversprechenden Ergebnissen für die Rekonstruktion von 3D-Posen von Menschen aus Monokular- und Multikamera-Videosequenzen im kürzlich eingeführten HumanEva-Benchmark veranschaulicht. Hier erreichen wir durchschnittlich 5 cm Fehler pro 3D-Marker für gemeinsam trainierte Modelle, die Daten von mehreren Personen und mehreren Aktivitäten verwenden. Die Methode ist schnell und automatisch: Sie erfordert keine Handarbeit der anfänglichen Pose, der Kamerakalibrierungsparameter oder der Verfügbarkeit eines 3D-Körpermodells für menschliche Probanden, die zum Training oder Testen verwendet werden.

Die Autoren haben großzügig Code- und Beispieldatensätze für den Einstieg bereitgestellt.


Willkommen auf der Website, @caoy. Würde es Ihnen etwas ausmachen, ein paar Informationen darüber zu geben, was sich unter diesem Link befindet? Auf diese Weise könnten die Leser wissen, ob es sich lohnt, sie zu verfolgen, und dies würde bedeuten, dass hier im Falle eines zukünftigen Linkrot noch etwas Wertvolles vorhanden ist.
Gung - Reinstate Monica

@gung, thx, hoffe das Abstract macht den Job.
Yanshuai Cao

@caoy ... Können Sie bitte den prädiktiven Verteilungsmittelwert und die Varianz der Ausgaben in Twin-Gauß-Prozessen erläutern?
Sandipan Karmakar

3

Kurze Antwort Die Regression für mehrdimensionale Ausgaben ist etwas schwierig und nach meinem derzeitigen Kenntnisstand nicht direkt in der GPML-Toolbox enthalten.

Lange Antwort Sie können Ihr mehrdimensionales Ausgabe-Regressionsproblem in drei verschiedene Teile aufteilen.

  1. Ausgaben sind nicht miteinander verknüpft - Regressieren Sie die Ausgaben einfach einzeln wie das Demoskript für 1d case.
  2. Ausgaben sind verwandt, kennen aber die Beziehung zwischen ihnen nicht - Sie möchten im Grunde die inneren Beziehungen zwischen den Ausgaben lernen. Wie in dem Buch erwähnt, ist CoKriging ein guter Anfang. Es gibt andere Software als GPML, mit der Sie direkt Cokriging durchführen können, z. ooDace
  3. Ausgaben sind miteinander verbunden und Sie kennen die Beziehung zwischen ihnen - Führen Sie eine regelmäßige Kokrigierung durch, aber Sie können harte Einschränkungen zwischen den Ausgaben anwenden, indem Sie entweder die Einschränkungen im Optimierer anwenden (während Sie die logarithmische Grenzwahrscheinlichkeit minimieren), wie von Hall & Huang 2001 oder Wenden Sie die Beziehungen in der vorherigen Funktion an, wie von Constantinescu & Anitescu 2013 angegeben .

Ich hoffe, es hilft :)


2

Dies ist ein Modul von scikit-learn, das für mich überraschend gut funktioniert hat:

http://scikit-learn.org/stable/auto_examples/gaussian_process/plot_gp_regression.html

# Instanciate a Gaussian Process model
gp = GaussianProcess(corr='cubic', theta0=1e-2, thetaL=1e-4, thetaU=1e-1,
                     random_start=100)

# Fit to data using Maximum Likelihood Estimation of the parameters
gp.fit(X, y)

# Make the prediction on the meshed x-axis (ask for MSE as well)
y_pred, MSE = gp.predict(x, eval_MSE=True)
sigma = np.sqrt(MSE)

1

Ich suchte nach Gaußschen Prozessen mit mehreren Ausgängen und fand viele Möglichkeiten, damit umzugehen, wie Faltungsmethode, Modellierungsmethode mit gemischten Effekten und die neuesten Twin Gaußschen Prozesse (TGP).

Ich habe Zweifel am Konzept der Twin Gaussian Processes (TGP). Kann mir jemand dabei helfen?

In TGP ermitteln die Autoren die vorhergesagte Ausgabe (y^) Minimieren der KL-Divergenz zwischen Eingang und Ausgang umgekehrt. Aber im Allgemeinen suchen wir nach der prädiktiven Verteilung der Ausgabe, dhp(y|y)(μ,σ2). Eine Sache, die hier zu beachten ist, dass die prädiktive Varianz dhσ2, yspielt keine Rolle darin. Im Fall von TGP ist die vorhergesagte Ausgabey^ ist der gleiche wie der Mittelwert der prädiktiven Verteilung von y?

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.