Začněte nyníZačněte zdarma

Ladění velikosti okna

Chceš si sám ověřit, že optimální velikost okna pro datovou sadu arrhythmia je 50. Máš k dispozici datovou sadu jako pandas datový rámec s názvem arrh a chceš použít podmnožinu dat až do časového bodu t_now. Testovací data jsou dostupná jako X_test a y_test. Vyzkouším různé velikosti okna v rozsahu od 10 do 100, na každé okno natrénuješ klasifikátor naivní Bayes, vyhodnotíš jeho F1 skóre na testovacích datech a vybereme nejlépe fungující velikost okna. K dispozici máš také numpy jako np a funkce f1_score() je již naimportovaná. Na konec byl inicializován prázdný seznam accuracies, do kterého budeš ukládat přesnosti jednotlivých oken.

Toto cvičení je součástí kurzu

Designing Machine Learning Workflows in Python

Zobrazit kurz

Pokyny k cvičení

  • Definuj index posuvného okna o velikosti w_size končícího v t_now pomocí metody .loc().
  • Sestav X z posuvného okna odstraněním sloupce class. Tento sloupec ulož jako y.
  • Natrénuj klasifikátor naivní Bayes na X a y a použij ho k predikci štítků testovacích dat X_test.
  • Vypočítej F1 skóre těchto predikcí pro každou velikost okna a najdi nejlépe fungující velikost okna.

Interaktivní cvičení na vyzkoušení si v praxi

Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.

# 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)]
Upravit a spustit kód