Tradiční přístup k odhalování podvodů
V tomto cvičení zkusíš odhalit podvodné transakce v našem datasetu kreditních karet takzvaným „starým způsobem". Nejdřív určíš prahové hodnoty pomocí základních statistik, abys odlišil podvodné transakce od legitimních. Pak tyto prahy použiješ na příznaky a podvody podle nich detebuješ. Jde o běžnou praxi v analytických týmech zaměřených na podvody.
Statistické prahy se obvykle stanovují na základě hodnot průměru pozorování. Začneme tím, že zjistíme, jestli se průměry příznaků liší mezi podvodnými a legitimními transakcemi. Na základě toho pak vytvoříš pravidla selského rozumu. Nakonec ověříš, jak dobře tato pravidla při detekci podvodů fungují.
pandas je již naimportován jako pd.
Toto cvičení je součástí kurzu
Detekce podvodů v Pythonu
Pokyny k cvičení
- Pomocí
groupby()seskupdfpodle sloupceClassa vypočítej průměr příznaků. - Vytvoř podmínku:
V1menší než -3 aV3menší než -5, která označí podezřelé transakce jako podvody. - Jako míru výkonnosti použij funkci
crosstabzpandasa porovnej takto označené podvody se skutečnými podvodnými případy.
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
# Get the mean for each group
____.____(____).mean()
# Implement a rule for stating which cases are flagged as fraud
df['flag_as_fraud'] = np.where(np.logical_and(______), 1, 0)
# Create a crosstab of flagged fraud cases versus the actual fraud cases
print(____(df.Class, df.flag_as_fraud, rownames=['Actual Fraud'], colnames=['Flagged Fraud']))