Broadcasting
Termasuk bagian Data dan Plot dalam perjalanan Machine Learning di Coddy. Pelajaran 13 dari 60.
Model belajar lebih baik saat setiap fitur berada di sekitar 0. Jadi, kurangi setiap kolom dengan nilai rata-ratanya, lalu NumPy menyalin nilai rata-rata tersebut ke setiap baris:
Dalam kode, untuk tinggi dan berat tiga orang:
data = np.array([[170, 60],
[180, 80],
[160, 70]])
print(data - data.mean(axis=0))Ini mencetak:
[[ 0. -10.]
[ 10. 10.]
[-10. 0.]]Penyalinan itu disebut penyiaran. Tabel kini dipusatkan: setiap nilai menunjukkan seberapa jauh letaknya dari rata-rata kolomnya.
Rata-rata memiliki bentuk (2,): satu nilai untuk setiap kolom pada tabel (3, 2). Panjang lainnya akan menyebabkan error.
Tantangan
MudahAplikasi kebugaran memusatkan setiap tabel sebelum latihan. Kode awal memanggil center pada dua tabel, users (3 fitur) dan workouts (2), lalu mencetak hasilnya. Saat ini, center mengembalikan tabel tanpa perubahan.
Lengkapi center agar fungsi tersebut mengurangi nilai rata-rata setiap kolom dari kolom itu, untuk berapa pun jumlah kolomnya. Biarkan baris-baris di bawahnya tetap seperti semula.
Dengan dua pengguna dan dua latihan, outputnya akan terlihat seperti ini:
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.]Coba sendiri
import numpy as np
def center(table):
# Kembalikan table dengan rata-rata setiap kolom dikurangkan
# Tulis kodemu di bawah ini
return table
# Satu baris untuk setiap pengguna: usia, detak jantung saat istirahat, menit berolahraga per hari
users = np.array([[25, 62, 30],
[31, 70, 45],
[40, 58, 20],
[29, 66, 25]])
# Satu baris untuk setiap sesi olahraga: menit, kalori yang terbakar
workouts = np.array([[30, 240],
[45, 410],
[20, 150],
[60, 520],
[35, 300]])
# Jangan ubah baris-baris di bawah ini
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))
Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Data dan Plot
5Grafik Garis dan Scatter Plot
Label dan JudulScatter PlotBeberapa Garis dan LegendaWarna dan PenandaFigure dan SumbuRekap: Langkah Mingguan8Memfilter dan Mengurutkan
Memilih BarisMemfilter BarisMengurutkan NilaiKolom BaruRekap: Produk Teratas3Matematika Array
Operasi Matematika pada Seluruh ArrayStatistik RingkasanStatistik berdasarkan SumbuBroadcastingMasker BooleanUlasan: Nilai Ujian6Grafik untuk Data
Grafik BatangHistogramBeberapa Grafik dalam SatuGambar sebagai ArrayRangkuman: Laporan Curah Hujan9Mengelompokkan dan Membersihkan
Menghitung NilaiMengelompokkan DataBeberapa RingkasanNilai yang HilangRekap: Hasil SurveiLatihan sendiri: Compiler Python online