Menu
CoddyTech

Anpassung nach der Methode der kleinsten Quadrate

Teil des Abschnitts Statistik für ML der Machine Learning-Journey von Coddy. Lektion 36 von 64.

Das Erraten von Geraden könnte ewig dauern. np.polyfit(x, y, 1) findet auf einmal die beste: die Gerade mit der kleinsten Summe der quadrierten Residuen. Hier ist die Schneehöhe während eines Sturms:

hours = np.array([1, 2, 3, 5, 6])
depth = np.array([14, 22, 35, 52, 61])
slope, intercept = np.polyfit(hours, depth, 1)
print(np.round(slope, 2), np.round(intercept, 2))

Das gibt 9.5 4.5 aus: etwa 9,5 cm mehr Schnee pro Stunde und 4,5 cm zur Stunde 0. Keine andere Linie verfehlt die Punkte weniger:

Schneehöhe im Verhältnis zu den Stunden als fünf Punkte, mit drei Linien: zwei gestrichelte Schätzungen mit Summen der quadrierten Residuen von 159 und 18 sowie die dicke polyfit-Linie mit 6,5

Die 1 steht für eine gerade Linie, und x kommt zuerst. Das ist lineare Regression, das erste Modell, das du in Abschnitt 3 trainierst.

challenge icon

Aufgabe

Mittel

Ein Drohnenhersteller möchte wissen, welches Maß die Flugzeit am besten vorhersagt. drones.csv enthält 15 Flüge: payload_g, wind_kmh und flight_min. Der Starter lädt die Datei und definiert ssr(x, y, slope, intercept).

  1. Passe für jede Spalte in columns die Gerade an, die flight_min anhand dieser Spalte vorhersagt.
  2. Gib ihre Gleichung und SSR wie unten aus: Steigung mit 3 Dezimalstellen, Achsenabschnitt und SSR mit 2.
  3. Gib die Spalte mit dem kleineren SSR aus.

Für eine weitere Drohne:

payload_g: flight_min = -0.001 * payload_g + 21.55, SSR 164.94
wind_kmh: flight_min = -0.481 * wind_kmh + 28.13, SSR 9.1
Better predictor: wind_kmh

Probier es selbst

import numpy as np
import pandas as pd


# Gibt die Summe der quadrierten Residuen der Geraden slope * x + intercept zurück (Lektion 35)
def ssr(x, y, slope, intercept):
    return ((y - (slope * x + intercept)) ** 2).sum()


drones = pd.read_csv("drones.csv")
columns = ["payload_g", "wind_kmh"]

# Schreibe deinen Code unten
quiz iconTeste dich selbst

Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.

Alle Lektionen in Statistik für ML

Übe selbstständig: Online-Python-Compiler