Zum Inhalt springen

Verständnis der Standardabweichung in Python und Machine Learning

Maschinelles Lernen ist eine Grundlage der modernen Technologie. Python, mit seiner lesbaren Syntax und umfangreichen Bibliotheken, ist eine bevorzugte Sprache für ML. Die Standardabweichung ist ein wichtiges statistisches Maß zum Verständnis der Datenvariabilität. Dieser Artikel erklärt die Standardabweichung und zeigt, wie man sie in Python berechnet.

Was ist die Standardabweichung?

Die Standardabweichung ist ein Maß dafür, wie stark eine Menge von Daten um ihren Mittelwert streut. Sie ist die Quadratwurzel der Varianz, welche den Durchschnitt der quadrierten Abweichungen vom Mittelwert darstellt. Die Standardabweichung ist ein essentielles Werkzeug in der Statistik und im Machine Learning, da sie uns hilft, die Verteilung der Daten zu verstehen. Es ist wichtig, zwischen der Stichprobenstandardabweichung (berechnet aus einer Teilmenge der Daten) und der Populationsstandardabweichung (berechnet aus dem gesamten Datensatz) zu unterscheiden.

Berechnung der Standardabweichung in Python

Python verfügt über eine Vielzahl von Bibliotheken, die die Berechnung der Standardabweichung erleichtern. Die Bibliothek statistics bietet Funktionen zur Berechnung der Standardabweichung, wie stdev() für Stichprobendaten und pstdev() für Populationsdaten. Auch die Bibliothek numpy wird häufig für Berechnungen im Zusammenhang mit der Standardabweichung verwendet.

Um die Standardabweichung in Python zu berechnen, müssen wir zunächst die erforderlichen Bibliotheken importieren und unseren Datensatz definieren:

import statistics and numpy in a Python project

python
import statistics
import numpy as np

data = [10, 20, 30, 40, 50]

Mit dem Modul statistics können wir sowohl die Stichproben- als auch die Populationsstandardabweichung berechnen:

calculate standard deviation of a list of numbers using statistics module in Python

python
sample_std = statistics.stdev(data)
pop_std = statistics.pstdev(data)

print(f"Sample std: {sample_std}")
print(f"Population std: {pop_std}")

Ebenso stellt numpy die Funktion std() bereit. Standardmäßig berechnet sie die Populationsstandardabweichung. Um die Stichprobenstandardabweichung zu erhalten, verwenden Sie den Parameter ddof=1:

calculate standard deviation of a list of numbers using numpy module in Python

python
np_pop_std = np.std(data)
np_sample_std = np.std(data, ddof=1)

print(f"Numpy population std: {np_pop_std}")
print(f"Numpy sample std: {np_sample_std}")

Machine Learning und Standardabweichung

Die Standardabweichung ist ein wichtiges Werkzeug im Machine Learning. Beim überwachten Lernen kann die Standardabweichung helfen, die Streuung der Zielvariable zu verstehen. Beim unüberwachten Lernen kann sie uns helfen, die Verteilung der Daten zu verstehen.

Betrachten wir beispielsweise ein Machine-Learning-Problem, bei dem wir den Preis eines Hauses basierend auf seinen Merkmalen wie Anzahl der Schlafzimmer, Badezimmer und der Wohnfläche vorhersagen möchten. In diesem Fall können wir die Standardabweichung der Preisvariable berechnen, um ihre Streuung zu verstehen. Eine hohe Standardabweichung zeigt an, dass die Hauspreise erheblich variieren, während eine niedrige Standardabweichung darauf hindeutet, dass die Preise relativ stabil sind.

In der Praxis wird die Standardabweichung häufig für die Merkmalskalierung verwendet. Der StandardScaler aus scikit-learn standardisiert Merkmale, indem er den Mittelwert entfernt und auf eine Varianz von 1 (Standardabweichung von 1) skaliert:

Standardize features using scikit-learn

python
from sklearn.preprocessing import StandardScaler
import numpy as np

features = np.array([[1, 2], [3, 4], [5, 6]])
scaler = StandardScaler()
scaled_features = scaler.fit_transform(features)

print(scaled_features)

Fazit

Python ist ein leistungsstarkes Werkzeug für das Machine Learning, und die Standardabweichung ist ein wichtiges statistisches Maß, das uns helfen kann, die Verteilung von Daten zu verstehen. In diesem Artikel haben wir die Standardabweichung detailliert untersucht und gezeigt, wie sie mit den Python-Bibliotheken statistics und numpy berechnet sowie in Machine-Learning-Workflows mit scikit-learn angewendet werden kann. Wir hoffen, dass dieser Artikel Ihnen geholfen hat, die Standardabweichung in Python und im Machine Learning besser zu verstehen.

Finden Sie das nützlich?

Dual-run-Vorschau — vergleichen Sie mit den Symfony-Routen live.