Rozgłaszanie
Część sekcji Dane i wykresy ścieżki Machine Learning w Coddy. Lekcja 13 z 60.
Modele uczą się lepiej, gdy każda cecha ma wartość w pobliżu 0. Dlatego od każdej kolumny odejmujesz jej średnią, a NumPy kopiuje średnie do każdego wiersza:
W kodzie, dla wzrostu i wagi trzech osób:
data = np.array([[170, 60],
[180, 80],
[160, 70]])
print(data - data.mean(axis=0))To wyświetla:
[[ 0. -10.]
[ 10. 10.]
[-10. 0.]]To kopiowanie to rozgłaszanie. Tabela jest teraz wycentrowana: każda wartość pokazuje, jak bardzo odbiega od średniej swojej kolumny.
Średnie mają kształt (2,): jedną wartość na każdą kolumnę tabeli (3, 2). Każda inna długość powoduje błąd i zatrzymanie działania.
Wyzwanie
Łatwycenter dla dwóch tablic: users (3 cechy) i workouts (2), a następnie wyświetla wyniki. Obecnie center zwraca tablicę bez zmian.
Uzupełnij center, tak aby odejmowała średnią każdej kolumny od wartości w tej kolumnie, niezależnie od liczby kolumn. Pozostaw poniższe wiersze bez zmian.
Dla dwóch użytkowników i dwóch treningów wynik wyglądałby tak:
Centered users:
[[-6. 7. -5.]
[ 6. -7. 5.]]
Column means after centering: [0. 0. 0.]
Centered workouts:
[[-10. -90.]
[ 10. 90.]]
Column means after centering: [0. 0.]Spróbuj swoich sił
import numpy as np
def center(table):
# Zwróć table po odjęciu średniej od każdej kolumny
# Napisz swój kod poniżej
return table
# Jeden wiersz na użytkownika: wiek, tętno spoczynkowe, minuty ćwiczeń dziennie
users = np.array([[25, 62, 30],
[31, 70, 45],
[40, 58, 20],
[29, 66, 25]])
# Jeden wiersz na trening: minuty, spalone kalorie
workouts = np.array([[30, 240],
[45, 410],
[20, 150],
[60, 520],
[35, 300]])
# Nie zmieniaj poniższych wierszy
print("Centered users:")
print(center(users))
print("Column means after centering:", np.round(center(users).mean(axis=0), 2))
print("Centered workouts:")
print(center(workouts))
print("Column means after centering:", np.round(center(workouts).mean(axis=0), 2))
Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.
Wszystkie lekcje w sekcji Dane i wykresy
4Przekształcanie danych
Zmiana kształtu tablicŁączenie tablicLiczby losowePodsumowanie: symulacja rzutu kostką2Tablice NumPy
Tworzenie tablicKształt i rozmiarZakresy liczbIndeksowanie i wycinaniePodsumowanie: siatka temperatur5Wykresy liniowe i punktowe
Etykiety i tytułyWykresy punktoweWiele linii i legendyKolory i znacznikiRysunki i osiePodsumowanie: tygodniowa liczba kroków8Filtrowanie i sortowanie
Wybieranie wierszyFiltrowanie wierszySortowanie wartościNowe kolumnyPodsumowanie: najlepsze produkty3Operacje matematyczne na tablicach
Operacje matematyczne na całych tablicachStatystyki podsumowująceStatystyki według osiRozgłaszanieMaski logicznePodsumowanie: wyniki egzaminów6Wykresy danych
Wykresy słupkoweHistogramyKilka wykresów na jednymObrazy jako tablicePodsumowanie: raport o opadach9Grupowanie i czyszczenie
Zliczanie wartościGrupowanie danychKilka podsumowańBrakujące wartościPowtórka: wyniki ankietyPoćwicz samodzielnie: Kompilator Python online