Eine Person wählt wiederholt die zwei ähnlichsten Elemente aus drei aus. Wie modelliere / schätze ich einen Wahrnehmungsabstand zwischen den Elementen?

8

Eine Person erhält drei Gegenstände, beispielsweise Bilder von Gesichtern, und wird gebeten, herauszufinden, welche der drei Gesichter am ähnlichsten sind. Dies wird sehr oft mit verschiedenen Kombinationen von Gesichtern wiederholt, wobei jedes Gesicht in vielen Kombinationen auftreten kann. Angesichts dieser Art von Daten möchte ich den Unterschied / die Ähnlichkeit zwischen den Gesichtern modellieren / schätzen, indem ich davon ausgehe, dass jedes Gesicht in einem 2D-Raum (oder 3D, 4d usw.) platziert werden kann, in dem der Abstand zwischen jedem Gesicht die Auswahl von widerspiegelt der Teilnehmer.

Was wäre eine gute (vielleicht sogar Standard-) Methode, dies zu modellieren / abzuschätzen?

Hinweise auf Modelle / Papiere und / oder Softwarepakete werden sehr geschätzt.

Rasmus Bååth
quelle
Ich persönlich glaube nicht, dass es bei solchen Aufgaben einen "Standard" gibt. Sie könnten eine vernünftige Ad-hoc- Formel für eine Distanzfunktion für Ihre Studie erfinden . Sie können sich auf einen oder beide Begriffe stützen: 1) "ähnliche" Elemente sind solche, die häufig von derselben Person ausgewählt werden; 2) "ähnliche" Gegenstände sind solche, die tendenziell gegenüber denselben gegnerischen Gegenständen ausgewählt werden.
ttnphns
Hmm, ich dachte, du könntest etwas Multinomiales tun, aber es ist noch nichts, was ich ausgearbeitet habe. Da ich dachte, dass dies ein ziemlich "natürlicher" Versuchsaufbau ist, hoffte ich, dass es bereits Literatur darüber geben könnte ...
Rasmus Bååth
Ich denke, eine mehrdimensionale Skalierung würde einer "Standard" -Methode nahe kommen, sofern es eine Standardmethode gibt. Die beobachtete Ähnlichkeit für jedes Stimuluspaar ist (möglicherweise eine gewisse Transformation von) der Häufigkeit, mit der diese beiden Stimuli als ähnlicher beurteilt werden als ein zufällig ausgewählter 3. Stimulus. Ein solches Modell schnell werden könnte und leicht, zB implementiert, MASS::isoMDS()in R.
Jake Westfall

Antworten:

7

Ein guter Ansatz für diese Art von Problem findet sich in Abschnitt 4 des Papiers The Bayesian Image Retrieval System, PicHunter von Cox et al. (2000). Die Daten sind eine Menge von ganzzahligen Ergebnissen wobei die Anzahl der Versuche ist. In Ihrem Fall gibt es 3 mögliche Ergebnisse pro Studie. Ich werde den Index des ausgelassenen Gesichts sein lassen. Die Idee ist, ein generatives Modell für das Ergebnis bei bestimmten Modellparametern zu postulieren und die Parameter dann anhand der maximalen Wahrscheinlichkeit zu schätzen. Wenn wir Gesichter und der Teilnehmer sagt, dass am ähnlichsten sind, ist das Ergebnis mit Wahrscheinlichkeit A1,...,ANNAi(X1,X2,X3)(X2,X3)A=1d ( X 2 , X 3 ) σ d ( x , y ) =

p(A=1 | X1,X2,X3)exp(d(X2,X3)/σ)
wobei der Abstand zwischen den Flächen 2 und 3 ist und ist ein Parameter für die Menge an "Rauschen" (dh wie konsistent die Teilnehmer sind). Da Sie eine Einbettung in den euklidischen Raum wünschen, wäre Ihr Abstandsmaß: wobei das (Unbekannte) ist ) Einbettung von Gesicht . Die Parameter dieses Modells sind und , die Sie aus Daten über die maximale Wahrscheinlichkeit abschätzen können. Das Papier verwendete den Gradientenanstieg, um das Maximum zu finden. d(X2,X3)σθxxθσ
d(x,y)=k(θxkθyk)2
θxxθσ

Das Modell in dem Papier war etwas anders, da das Papier bekannte Attribute der Bilder zur Berechnung der Entfernung verwendete und keine unbekannte Einbettung. Um eine Einbettung zu lernen, benötigen Sie einen viel größeren Datensatz, in dem jedes Gesicht mehrmals angezeigt wurde.

Dieses Grundmodell geht davon aus, dass alle Studien unabhängig sind und alle Teilnehmer gleich sind. Ein netter Vorteil dieses Ansatzes ist, dass Sie das Modell leicht so verschönern können, dass es Nichtunabhängigkeit, Teilnehmereffekte oder andere Kovariaten enthält.

Tom Minka
quelle
+1 Interessant. Denken Sie, man kann zuerst nach und dann eine Art PCA / mehrdimensionale Skalierung verwenden, um eine geeignete Einbettung von Punkten in einen niedrigdimensionalen euklidischen Raum zu finden, wenn man die Matrix der Abstände berücksichtigt? Oder ist es besser, Standorte im euklidischen Raum direkt zu schätzen? d
Amöbe
Bei begrenzten Datenmengen ist es besser, Standorte im euklidischen Raum direkt zu schätzen. Obwohl ich zustimme, ist es einfacher, zuerst nach zu lösen , da es bereits separate Tools für die logistische Regression und die mehrdimensionale Skalierung gibt. Ob die einfachere Methode gut genug ist, hängt davon ab, wie viele Daten Sie haben. Um schätzen zu können , müsste jedes Gesichtspaar in mehreren Versuchen zusammen auftreten. ddd
Tom Minka
1

Habe gedacht:

Ich denke, Eigengesichter sind eine anständige Möglichkeit, millionenschwere Räume in einige zehn Dimensionen umzuwandeln.

Prämisse:

Nehmen wir also an, Sie verwenden ein anständiges Eigengesichtstool oder eines, das:

  • führt eine Vorverarbeitung durch, um die entsprechenden Features auszurichten
  • geht angemessen mit Farben um
  • stellt sicher, dass die verwendeten Bilder alle dieselbe Größe haben

Dies bedeutet, dass Sie nicht so viele "Bilder" haben wie Vektoren mit einer Länge von O (n = 50) Elementen, wobei die Elemente Gewichte für jede Eigenfläche sind, aus der die Basis besteht.

Analyse:

Zuerst würde ich Vektoren mit 150 Elementen (Verkettung des Gewichts) als Eingaben und Vektoren mit 1 Elementen (Elemente mit der engsten Übereinstimmung) als Ausgaben erstellen. Wenn Element 1 und 2 am nächsten wären, wäre der Ausgabewert "12". Wenn die Elemente 1 und 3 am nächsten wären, wäre die Ausgabe "13". Wenn die Elemente 2 und 3 am nächsten wären, wäre die Ausgabe "23". Da es nur 3 eindeutige Ausgänge gibt, könnte ich sie Fall 1 für "12", Fall 2 für "13" und Fall 3 für "23" neu zuordnen.

Zweitens möchte ich so viele bedeutungslose Daten wie möglich wegwerfen. Dies bedeutet, dass ich versuchen würde, so etwas wie zufällige Wälder zu verwenden, um festzustellen, welche der ~ 150 Spalten nicht informativ waren. Es gibt auch eine "zufällige böse Zwillingsmethode", aber ich habe sie nicht so zur Hand, wie R es mir mit zufälligen Wäldern gibt. (Wenn Sie eine gute R-Bibliothek dafür kennen, lade ich Sie ein, sie in die Kommentare aufzunehmen).

Drittens kann nach meiner persönlichen Erfahrung eine zufällige Gesamtstruktur Sie bei anständigen Stichprobengrößen und einer anständigen Basis normalerweise auf die ~ 30 interessierenden Variablen reduzieren, selbst aus bis zu 15.000 Spalten. Hier müssen Sie die allgemeine Form der Antwort berücksichtigen.

Sie könnten ein Dutzend Arten von Transformationen dieser Variablen ausprobieren, um die reduzierten Eingaben den Ausgaben zuzuordnen:

  • Sie könnten eine RF der reduzierten Eingänge trainieren und sie als gut bezeichnen.
  • Sie könnten eine NN an den reduzierten Eingängen trainieren, wenn Sie eine reibungslosere Interpolation und Generalisierung als eine RF wünschen
  • Sie könnten eine Art lineare Transformation für die Eingänge verwenden
  • Es gibt ein paar Dutzend andere ML-Hämmer, mit denen man es schlagen kann, aber wenn man ein Hammer ist, sieht jedes Problem wie ein Nagel aus.

Weitere Gedanken:

  • Ich wäre gespannt, auf welche der Eigenflächen sich die reduzierten Mengen beziehen. Ich möchte nur diese Daten sehen und sie mit mir sprechen lassen.
  • Ich bin sehr gespannt auf Ihre Stichprobengröße und die Art Ihrer Variation. Wenn Sie sich 3 Zeilen ansehen, sind 150 Spalten nicht zu produktiv. Wenn Sie ein paar tausend Reihen haben, sind Sie vielleicht in guter Verfassung. Ein paar hundert Zeilen und Sie könnten durchschnittlich sein. Ich würde hoffen, dass Sie alle Variationsquellen in Bezug auf ethnische Zugehörigkeit, Gesichtsform und dergleichen berücksichtigt haben.
  • Haben Sie keine Angst, zuerst einfache Modelle durchzusehen. Sie können gut sein. Ihre Interpretation und Anwendbarkeit sind leicht zu bewerten. Ihre Ausführung kann mit wesentlich weniger Aufwand als komplexe und hochempfindliche Methoden getestet und bestätigt werden.

UPDATE:
Das Tool "Random Evil Twin" ist "Boruta". ( Link )

EngrStudent
quelle