Menu
CoddyTech

Distribusi Sampling

Termasuk bagian Statistik untuk ML dalam perjalanan Machine Learning di Coddy. Pelajaran 21 dari 64.

Sesi video memiliki kemencengan ke kanan: sebagian besar berlangsung beberapa menit, beberapa berlangsung selama dua jam. Namun, rata-rata dari 1000 sampel yang masing-masing terdiri dari 40 sesi membentuk kurva lonceng:

Dua histogram pada satu grafik. Sesi individual berwarna abu-abu menumpuk di dekat 0 menit dengan ekor panjang hingga 120. Rata-rata dari 40 sesi membentuk kurva lonceng biru yang sempit di sekitar rata-rata populasi sebesar 30 menit

Histogram dari banyak rata-rata sampel disebut distribusi sampling. Dengan cukup banyak nilai di setiap sampel, bentuknya menyerupai kurva lonceng yang berpusat pada rata-rata populasi, bahkan untuk data yang menceng:

means = sample_means(sessions, 40, 1000)  # fungsimu dari Sample Means Vary
ax.hist(means, bins=12)

Itulah teorema limit pusat. Teorema ini membuat rata-rata dapat diprediksi: rata-rata error model pada kumpulan data uji juga kira-kira berdistribusi normal.

challenge icon

Tantangan

Sedang

6000 ukuran file di drive cloud dalam files (MB) memiliki kemencengan ke kanan: banyak dokumen, sedikit video. Program membaca ukuran sampel; kode awal memiliki sample_means dan dua grafik.

  1. Dapatkan 500 rata-rata sampel dengan ukuran tersebut.
  2. Cetak rata-rata dikurangi median untuk file, lalu untuk rata-rata sampel (2 desimal).
  3. Buat histogram file pada axs[0] dan rata-rata sampel pada axs[1], gunakan bins=12, lalu tampilkan.

Untuk drive lain dan 60:

Files: mean - median = 25.28 MB
Sample means: mean - median = 0.55 MB

Dua histogram berdampingan. Semua File: batang pertama yang tinggi dan ekor panjang yang tipis ke kanan. Rata-rata Sampel: kurva lonceng yang simetris

Lalu Coddy menampilkan setiap grafik. Selisih yang mendekati 0 berarti kemencengannya sudah hilang.

Coba sendiri

import numpy as np
import matplotlib.pyplot as plt

size = int(input())

# Jangan ubah baris-baris di bawah ini: ukuran dalam MB setiap file di drive
rng = np.random.default_rng(21)
files = np.round(rng.random(6000) ** 4 * 300 + 5, 2)


# Fungsimu dari Sample Means Vary: rata-rata dari count sampel
def sample_means(data, size, count):
    means = []
    for i in range(count):
        sample = rng.choice(data, size=size, replace=False)
        means.append(sample.mean())
    return np.array(means)


fig, axs = plt.subplots(1, 2)
axs[0].set_title("All Files")
axs[0].set_xlabel("File size (MB)")
axs[1].set_title("Sample Means")
axs[1].set_xlabel("Mean file size (MB)")

# Tulis kodemu di bawah ini
quiz iconUji dirimu

Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.

Semua pelajaran di Statistik untuk ML

Latihan sendiri: Compiler Python online