Die Rolle von Eigenwerten in PCA
mit Julia, mit MultivariateStats …
Was sind Eigenwerte?
Eigenwerte können als Maß für das Ausmaß der Variation in den Daten betrachtet werden, die durch jede Hauptkomponente erklärt wird.
Bei den Daten handelt es sich normalerweise um eine Matrix oder eine lineare Transformation der Daten.
Bei der Hauptkomponentenanalyse (PCA) werden Eigenwerte verwendet, um die relative Bedeutung jeder Hauptkomponente zu bestimmen.
Wie werden Eigenwerte berechnet?
Sie werden berechnet, indem die Gleichung Av = λv gelöst wird, wobei A die Matrix, v ein Vektor ungleich Null und λ ein Skalarwert ist, der als Eigenwert bezeichnet wird . Der Vektor v heißt Eigenvektor der Matrix A. Die Eigenwerte einer Matrix A sind die Skalare λ, für die die Gleichung Av = λv eine von Null verschiedene Lösung hat.
Die Lösung besteht darin, die Eigenwerte und Eigenvektoren der Matrix A zu finden. Die Eigenwerte sind die Lösungen der charakteristischen Gleichung |A — λI| = 0, wobei I die Identitätsmatrix ist. Sobald die Eigenwerte gefunden sind, können die Eigenvektoren gefunden werden, indem die Gleichung Av = λv für jeden Eigenwert gelöst wird. Die Eigenvektoren sind die von Null verschiedenen Lösungen dieser Gleichung und werden auch als Eigenvektoren von A bezeichnet.
Die erste Hauptkomponente hat den höchsten Eigenwert und die zweite Hauptkomponente hat den zweithöchsten Eigenwert usw.
Die Hauptkomponenten sind die Eigenvektoren der Kovarianzmatrix der Daten.
Schauen wir uns ein Beispiel an
using MultivariateStats, Plots, StatsPlots, DataFrames, CSV;
data = CSV.read("Pizza.csv",DataFrame)
first(data,8)
Die Elemente im obigen Datensatz sind unten aufgeführt:
- Marke – Pizzamarke (Klassenbezeichnung)
- id – der analysierten Probe
- mois – Wassermenge pro 100 Gramm pro Probe
- prot – Proteinmenge pro 100 Gramm pro Probe
- Fett – Fettmenge pro 100 Gramm pro Probe
- Asche – Aschemenge pro 100 Gramm pro Probe
- Natrium – Natriummenge pro 100 Gramm pro Probe
- Kohlenhydrate – Menge an Kohlenhydraten pro 100 Gramm pro Probe
- cal – Kalorienmenge pro 100 Gramm pro Probe
matrix = Array(data[:, 3:9])'
matrix'
M = fit(PCA, matrix;pratio=1, maxoutdim=3)
In Julia pratio=1wird es als Option in der fitFunktion verwendet. Dies bezieht sich auf den Anteil der Gesamtvarianz, der durch die ersten kHauptkomponenten erklärt werden sollte, wobei kes sich um die Anzahl der Dimensionen in den transformierten Daten handelt. In diesem Fall pratio=1wird der PCA-Algorithmus so ausgeführt, dass die ersten kHauptkomponenten 100 % der Gesamtvarianz in den Daten erklären.
Es werden 3 Hauptkomponenten hergestellt.
Transponierte einer Matrix
q = projection(M)'
Die Transponierte einer Matrix ist eine neue Matrix, bei der die Zeilen und Spalten der ursprünglichen Matrix vertauscht werden. Im Fall der Projektionsmatrix wird die Transponierte auch als Moore-Penrose-Pseudoinverse der Matrix bezeichnet. Die Transponierte der Projektionsmatrix wird verwendet, um die Hauptkomponenten der Daten zurück auf den Originalraum zu projizieren und so eine Annäherung an die Originaldaten zu erhalten.
Grundstücke
using Plots
h = plot(q[1,:], q[2,:], seriestype=:scatter, label=label="")
plot!(xlabel="PC1", ylabel="PC2", framestyle=:box)
title!("Principal Components")
T = principalvars(M) ./ tvar(M) * 100
PC1 bei 78,01 erklärt den größten Teil der Varianz anhand des Prozentsatzes der Gesamtvarianz, der durch jede Komponente erklärt wird, was auch durch das Diagramm unten erklärt wird.
plot(T)
plot!(ylabel="Percentage")
title!("Variance by principal component")
Eigenwerte spielen eine entscheidende Rolle bei der Hauptkomponentenanalyse (PCA). PCA ist eine Technik zur Dimensionsreduktion, die verwendet wird, um einen Satz korrelierter Variablen in einen Satz unkorrelierter Variablen, sogenannte Hauptkomponenten, umzuwandeln. Die Hauptkomponenten sind lineare Kombinationen der ursprünglichen Variablen, und die Eigenwerte der Korrelations-/Kovarianzmatrix der Daten werden verwendet, um die relative Bedeutung jeder Hauptkomponente zu bestimmen.
Eigenwerte können als Maß für das Ausmaß der Variation in den Daten betrachtet werden, die durch jede Hauptkomponente erklärt wird.
Eigenwerte können auch bei MDS oder mehrdimensionaler Skalierung eine Rolle spielen, da bei dieser Technik häufig eine niedrigdimensionale Projektion der Daten gefunden wird, die die größte Varianz bewahrt.
M = fit(MDS, matrix; distances=false)
plot(M)
title!("MDS Plot")
PCA (Principal Component Analysis) ist ein unbeaufsichtigter Lernansatz, der zum Analysieren und Verstehen von Mustern in Daten ohne gekennzeichnete Ausgabe oder Zielvariable verwendet wird. Es wird verwendet, um Muster und Beziehungen in den Daten zu identifizieren und die Dimensionalität der Daten zu reduzieren und gleichzeitig so viele Informationen wie möglich beizubehalten. Das Ziel von PCA besteht darin, neue Variablen, sogenannte Hauptkomponenten, zu finden, die lineare Kombinationen der ursprünglichen Variablen sind und so viel Varianz wie möglich in den Daten erfassen . Eigenwerte spielen bei der PCA eine wichtige Rolle, da sie zur Bestimmung des von jeder Hauptkomponente erfassten Varianzbetrags verwendet werden.
Ich hoffe, Ihnen hat der Artikel gefallen!
Vernetzen Sie sich auf Linkedin oder Github oder folgen Sie mir für weitere Artikel zu Julia, Python oder R und angewandten Statistiken.

![Was ist überhaupt eine verknüpfte Liste? [Teil 1]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)



































