Wykresy reszt
Część sekcji Uczenie nadzorowane ścieżki Machine Learning w Coddy. Lekcja 14 z 58.
Dobry wynik może ukrywać niewłaściwy kształt. Ta linia uzyskuje wynik R kwadrat 0.82 dla rosnącego ciasta, a jednak jej błędy układają się w łuk:
Ten wykres po prawej to wykres reszt: każda reszta, czyli wartość rzeczywista minus przewidywana, w zestawieniu z jej przewidywaną wartością, z linią na poziomie 0:
residuals = y_test - pred
fig, ax = plt.subplots()
ax.scatter(pred, residuals)
ax.axhline(0, color="gray", linestyle="--")
plt.show()Reszty powinny rozpraszać się wokół 0 jak szum. Wzór oznacza, że model czegoś nie uwzględnia: w tym przypadku tego, że wzrost zwalnia.
Przy kilku cechach wykreśl reszty również względem każdej cechy: ta, której wykres tworzy łuk, ukrywa krzywą.
Wyzwanie
ŚredniSzkoła jazdy dopasowała prostą do 80 testów hamowania: speed_kmh i braking_m. Kod początkowy przechowuje przewidywania testowe w pred i opisuje wykres.
- Oblicz reszty.
- Nanieś je na wykres punktowy względem przewidywań, dodaj przerywaną szarą linię na poziomie 0, a następnie wyświetl wykres.
Czy prosta nie uwzględnia krzywizny? Po lewej stronie przewiduje nawet ujemną drogę hamowania.
Wykres dobrze dopasowanej prostej, sporządzony na podstawie innych danych, wygląda tak:
Coddy opisze Twój wykres.
Spróbuj swoich sił
import pandas as pd
import matplotlib.pyplot as plt
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LinearRegression
brakes = pd.read_csv("braking.csv")
X_train, X_test, y_train, y_test = train_test_split(brakes[["speed_kmh"]], brakes["braking_m"], test_size=0.25, random_state=0)
model = LinearRegression()
model.fit(X_train, y_train)
pred = model.predict(X_test)
fig, ax = plt.subplots()
ax.set_title("Braking Line Check")
ax.set_xlabel("Predicted braking distance (m)")
ax.set_ylabel("Residual (m)")
# Napisz swój kod poniżej
Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.
Wszystkie lekcje w sekcji Uczenie nadzorowane
1Twój pierwszy model
Uczenie się na przykładachZbiory treningowe i testoweDopasowywanie i przewidywanieOcena modeluPodsumowanie: Sortownik nasion4Regresja logistyczna
Przewidywanie „tak” lub „nie”Próg decyzyjnyWagi jako dowodyWiele klasPodsumowanie: filtr spamu2Najbliżsi sąsiedzi
Jak działa k-NNWybór kGranice decyzyjneSkalowanie dla sąsiadówPodsumowanie: sąsiedzi w zbiorze Wine5Ocena klasyfikatorów
Macierz pomyłekPrecyzja i czułośćWynik F1Niezrównoważone klasyKrzywe ROCPodsumowanie: test przesiewowy8Walidacja krzyżowa
Walidacja k-krotnaUczciwe porównywanie modeliPrzeszukiwanie siatkiPodsumowanie: naprawa deskorolki11Projekt: Gatunki pingwinów
Poznaj pingwinyPrzygotuj daneWybierz modelDopracuj zwycięski modelWdróż model3Regresja liniowa
Przewidywanie wartości liczbowychWiele cechPomiar błędówWykresy resztPodsumowanie: wypożyczanie rowerówPoćwicz samodzielnie: Kompilator Python online