Reproduzieren der linearen Diskriminanzfigur nach Fisher

9

Viele Bücher illustrieren die Idee der linearen Diskriminanzanalyse von Fisher anhand der folgenden Abbildung (diese stammt aus Mustererkennung und maschinelles Lernen , S. 188)

Ich frage mich, wie ich diese Figur in R (oder in einer anderen Sprache) reproduzieren kann. Unten ist meine anfängliche Anstrengung in R eingefügt. Ich simuliere zwei Gruppen von Daten und zeichne lineare Diskriminanten unter Verwendung von abline() function. Irgendwelche Vorschläge sind willkommen.

%Vor%

MEINE (UNFINISHIERTE) ARBEIT

Ich habe meine aktuelle Lösung eingefügt. Die Hauptfrage ist, wie das Dichtediagramm entsprechend der Entscheidungsgrenze gedreht (und verschoben) wird. Irgendwelche Vorschläge sind immer noch willkommen.

%Vor%     
Andrej 21.11.2015, 13:59
quelle

1 Antwort

4

Grundsätzlich müssen Sie die Daten entlang der Richtung des Klassifikators projizieren, ein Histogramm für jede Klasse grafisch darstellen und dann das Histogramm so drehen, dass seine x-Achse parallel zum Klassifikator ist. Einige Versuche und Fehler beim Skalieren des Histogramms sind erforderlich, um ein schönes Ergebnis zu erhalten. Hier ist ein Beispiel, wie man es in Matlab macht, für den naiven Klassifikator (Unterschied der Klasse bedeutet). Für den Fisher-Klassifikator ist es natürlich ähnlich, Sie verwenden nur einen anderen Klassifikator w . Ich habe die Parameter von Ihrem Code geändert, so dass die Handlung der von Ihnen gegebenen ähnelt.

%Vor%

    
Itamar Katz 22.11.2015, 10:04
quelle