Heim > Backend-Entwicklung > Python-Tutorial > Beispiele für die Hauptfaktoranalyse in Python

Beispiele für die Hauptfaktoranalyse in Python

WBOY
Freigeben: 2023-06-10 08:46:36
Original
635 Leute haben es durchsucht

In den Bereichen Datenanalyse und maschinelles Lernen ist die Hauptkomponentenanalyse (PCA) ein häufig verwendeter Algorithmus zur linearen Dimensionsreduktion. PCA reduziert die Dimensionalität der Daten, indem die Hauptkomponenten der Daten ermittelt werden, wodurch die Interpretierbarkeit und Recheneffizienz der Daten verbessert wird. In diesem Artikel werden die Prinzipien und Anwendungen von PCA anhand eines Python-Beispiels veranschaulicht.

Zuerst müssen wir Python-bezogene Bibliotheken wie Numpy, Matplotlib, Pandas, Sklearn usw. importieren.

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
from sklearn.preprocessing import StandardScaler
from sklearn.decomposition import PCA
Nach dem Login kopieren

Als nächstes laden wir die Daten. Hier verwenden wir den Iris-Datensatz, einen Standardklassifizierungs- und Clustering-Datensatz, der drei Irisarten umfasst. Wir verwenden die Funktion read_csv() in der Pandas-Bibliothek, um diesen Datensatz zu lesen:

data = pd.read_csv('iris.csv')
Nach dem Login kopieren

Jetzt müssen wir die Daten normalisieren. Da PCA auf der Grundlage der Kovarianzmatrix der Daten berechnet wird, werden Größe und Reihenfolge der Kovarianzmatrix durch das Ausmaß der Variation in den Daten bestimmt. Daher müssen wir den Bereich aller Features auf die gleiche Größe normalisieren, bevor wir eine PCA-Analyse durchführen. Wir können den StandardScaler von sklearn verwenden, um eine Standardisierung zu erreichen.

scaler = StandardScaler()
data_scaled = scaler.fit_transform(data)
Nach dem Login kopieren

Als nächstes können wir die cov()-Methode in Numpy verwenden, um die Kovarianzmatrix der Daten zu berechnen, die als Eingabe für den PCA-Algorithmus dient.

cov_matrix = np.cov(data_scaled.T)
Nach dem Login kopieren

Jetzt können wir die PCA-Klasse verwenden, um die Hauptkomponenten der Daten zu finden. Wir können die Anzahl der zu behaltenden Hauptkomponenten festlegen. Normalerweise entscheiden wir uns dafür, eine kleinere Anzahl von Hauptkomponenten als die Anzahl der ursprünglichen Merkmale beizubehalten. In diesem Beispiel behalten wir zwei Hauptkomponenten bei.

pca = PCA(n_components=2)
principal_components = pca.fit_transform(data_scaled)
Nach dem Login kopieren

Jetzt können wir matplotlib verwenden, um die Ergebnisse der PCA darzustellen. Das resultierende Diagramm wird in einem zweidimensionalen Koordinatensystem angezeigt, wobei die unterschiedliche Farbe jeder Iris die Art anzeigt, zu der sie gehört. In dieser Grafik können wir verschiedene Arten von Irisblüten sehen, die sich in verschiedene Richtungen ausbreiten.

plt.figure(figsize=(8,6))
plt.scatter(principal_components[:,0], principal_components[:,1], c=data['species'])
plt.xlabel('Principal Component 1')
plt.ylabel('Principal Component 2')
plt.show()
Nach dem Login kopieren

Anhand dieses Beispiels können wir das Funktionsprinzip und die Anwendung der Hauptfaktoranalyse sehen. PCA ist eine sehr nützliche Technik, die in vielen Bereichen wie Datenvisualisierung, Rauschfilterung, Merkmalsextraktion und Datenkomprimierung eingesetzt werden kann. Daher ist PCA ein unverzichtbares Werkzeug im Bereich Datenanalyse und maschinelles Lernen.

Das obige ist der detaillierte Inhalt vonBeispiele für die Hauptfaktoranalyse in Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage