Přirozená míra úspěšnosti
V tomto cvičení opět pracuješ s daty o transakcích kreditními kartami. Příznaky a štítky jsou podobné jako v předchozí kapitole a data jsou silně nevyvážená. Máš k dispozici příznaky X a štítky y, obojí jako numpy pole.
Nejdřív prozkoumej, jak časté jsou v datasetu podvody, abys zjistil/a, jaká je „přirozená přesnost", kdybychom vše označili jako legitimní transakci. Je důležité pochopit, jakou úroveň přesnosti je potřeba „překonat", abys dosáhl/a lepší predikce než při nicnedělání. V dalších cvičeních sestavíme první klasifikátor náhodného lesa pro detekci podvodů, který bude sloužit jako „základní" model, jenž se budeme snažit postupně vylepšovat.
Toto cvičení je součástí kurzu
Detekce podvodů v Pythonu
Pokyny k cvičení
- Spočítej celkový počet pozorování pomocí délky pole štítků
y. - Spočítej legitimní transakce v datech pomocí list comprehension na
y—yje NumPy pole, takže.value_counts()zde nelze použít. - Vypočítej přirozenou přesnost jako podíl legitimních transakcí a celkového počtu pozorování.
- Vypiš výsledné procento.
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
# Count the total number of observations from the length of y
total_obs = ____
# Count the total number of non-fraudulent observations
non_fraud = [i for ____ ____ ____ if i == 0]
count_non_fraud = non_fraud.count(0)
# Calculate the percentage of non fraud observations in the dataset
percentage = (float(____)/float(____)) * 100
# Print the percentage: this is our "natural accuracy" by doing nothing
____(____)