धोखाधड़ी पकड़ने के पारंपरिक तरीके की जाँच
इस अभ्यास में आप हमारे क्रेडिट कार्ड डेटासेट में धोखाधड़ी के मामले "पुराने तरीके" से ढूँढने की कोशिश करेंगे। पहले आप सामान्य आँकड़ों का उपयोग करके थ्रेशहोल्ड वैल्यूज़ तय करेंगे, ताकि fraud और non-fraud को अलग किया जा सके। फिर, उन थ्रेशहोल्ड्स को अपनी फीचर्स पर लगाकर धोखाधड़ी डिटेक्ट करेंगे। धोखाधड़ी एनालिटिक्स टीमों में यह आम प्रैक्टिस है.
स्टैटिस्टिकल थ्रेशहोल्ड्स अक्सर ऑब्ज़र्वेशंस के mean वैल्यूज़ देखकर तय किए जाते हैं। इस अभ्यास की शुरुआत करते हैं यह जाँचकर कि क्या fraud और non-fraud मामलों में फीचर के means अलग हैं। फिर, आप उसी जानकारी से common-sense थ्रेशहोल्ड्स बनाएँगे। अंत में, आप देखेंगे कि धोखाधड़ी डिटेक्शन में इसका प्रदर्शन कैसा है.
pandas पहले से pd नाम से इम्पोर्ट किया जा चुका है.
यह अभ्यास पाठ्यक्रम का हिस्सा है
Python में Fraud Detection
अभ्यास निर्देश
groupby()का उपयोग करकेdfकोClassपर group करें और फीचर्स का mean प्राप्त करें.- एक कंडीशन बनाएँ:
V1-3 से छोटा औरV3-5 से छोटा हो — इसे fraud केस फ्लैग करने की शर्त के रूप में इस्तेमाल करें. - परफॉर्मेंस मापने के लिए,
pandasकीcrosstabफंक्शन का उपयोग करके हमारे फ्लैग किए गए fraud केसों की तुलना वास्तविक fraud केसों से करें.
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
# 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']))