Kom igångKom igång gratis

Optimera tröskelvärdet

Du har hört att standardvärdet 0,5 maximerar accuracy i teorin, men vill undersöka hur det fungerar i praktiken. Därför provar du ett antal olika tröskelvärden för att se vilken accuracy du uppnår, och på så sätt hitta det bäst presterande tröskelvärdet. Du upprepar sedan samma experiment för F1-poängen. Är 0,5 det optimala tröskelvärdet? Och är det optimala tröskelvärdet för accuracy detsamma som för F1? Ta reda på det! Du har en scores-matris tillgänglig, skapad genom att poängsätta testdata. De sanna etiketterna för testdata finns också tillgängliga som y_test. Dessutom är två numpy-funktioner förinstallerade: argmin() och argmax(), som returnerar indexet för det minsta respektive det största värdet i en array, tillsammans med måtten accuracy_score() och f1_score().

Den här övningen är en del av kursen

Att designa maskininlärningsflöden i Python

Visa kurs

Övningsinstruktioner

  • Skapa ett intervall av tröskelvärden som innehåller 0.0, 0.25, 0.5, 0.75 och 1.0.
  • Använd dubbel listförståelse för att lagra prediktionerna för varje tröskelvärde i intervallet ovan. Kom ihåg att du kan hämta etiketter från en scores-matris med ett tröskelvärde thr med hjälp av [s[1] > thr for s in scores].
  • Iterera igenom listan och beräkna accuracy för varje tröskelvärde. Upprepa sedan för F1-poängen.
  • Använd antingen argmin() eller argmax() för att hitta det optimala tröskelvärdet för accuracy respektive F1.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

# Create a range of equally spaced threshold values
t_range = ____

# Store the predicted labels for each value of the threshold
preds = [[____ > thr for s in scores] for ____ in ____]

# Compute the accuracy for each threshold
accuracies = [____(____, ____) for p in preds]

# Compute the F1 score for each threshold
f1_scores = [____(____, ____) for p in preds]

# Report the optimal threshold for accuracy, and for F1
print(t_range[____(accuracies)], t_range[____(f1_scores)])
Redigera och kör kod