Menyetel ukuran jendela
Anda ingin memeriksa sendiri bahwa ukuran jendela optimal untuk himpunan data aritmia adalah 50. Anda diberikan himpunan data tersebut sebagai data frame pandas bernama arrh, dan ingin menggunakan subset data hingga waktu t_now. Data uji Anda tersedia sebagai X_test, y_test. Anda akan mencoba sejumlah ukuran jendela, dari 10 hingga 100, melakukan fit pengklasifikasi naive Bayes pada tiap jendela, menilai skor F1-nya pada data uji, lalu memilih ukuran jendela dengan kinerja terbaik. Anda juga memiliki numpy sebagai np, dan fungsi f1_score() telah diimpor. Terakhir, sebuah list kosong bernama accuracies telah diinisialisasi untuk Anda menyimpan akurasi dari tiap jendela.
Latihan ini adalah bagian dari kursus
Merancang Alur Kerja Machine Learning di Python
Petunjuk latihan
- Definisikan indeks dari jendela geser berukuran
w_sizeyang berhenti dit_nowmenggunakan metode.loc(). - Bentuk
Xdari jendela geser dengan menghapus kolomclass. Simpan kolom tersebut sebagaiy. - Lakukan fit pengklasifikasi naive Bayes pada
Xdany, lalu gunakan untuk memprediksi label dari data ujiX_test. - Hitung skor F1 dari prediksi ini untuk setiap ukuran jendela, dan temukan ukuran jendela dengan kinerja terbaik.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
# Loop over window sizes
for w_size in wrange:
# Define sliding window
sliding = arrh.____[____:t_now]
# Extract X and y from the sliding window
X, y = sliding.____('class', ____), sliding[____]
# Fit the classifier and store the F1 score
preds = GaussianNB().fit(____, ____).____(X_test)
accuracies.append(____(____, ____))
# Estimate the best performing window size
optimal_window = ____[np.____(accuracies)]