सर्वोत्तम पैरामीटर खोजने के लिए GridSearchCV
इस अभ्यास में आप हमारे मॉडल को कम "रैंडम" तरीके से ट्यून करेंगे, और यह काम करने के लिए GridSearchCV का उपयोग करेंगे.
GridSearchCV के साथ आप यह तय कर सकते हैं कि विकल्पों को किस परफॉर्मेंस मेट्रिक पर स्कोर करना है। क्योंकि फ्रॉड डिटेक्शन में हमारा मुख्य फोकस जितने अधिक फ्रॉड केस पकड़ना है, आप अपने मॉडल सेटिंग्स को बेहतरीन Recall स्कोर पाने के लिए ऑप्टिमाइज़ कर सकते हैं। अगर आप फॉल्स पॉज़िटिव्स कम करने की चिंता भी करते हैं, तो आप F1-score पर ऑप्टिमाइज़ कर सकते हैं — यह आपको Precision और Recall के बीच अच्छा बैलेंस देता है।
GridSearchCV पहले से sklearn.model_selection से इम्पोर्ट किया गया है, तो आइए इसे आज़माएँ!
यह अभ्यास पाठ्यक्रम का हिस्सा है
Python में Fraud Detection
अभ्यास निर्देश
- पैरामीटर ग्रिड में बताइए कि आप 1 और 30 ट्री ट्राई करना चाहते हैं, और
giniवentropyस्प्लिट क्राइटेरियन भी ट्राई करना चाहते हैं. - मॉडल के रूप में सिंपल RandomForestClassifier परिभाषित करें; मॉडलों की तुलना करने के लिए
random_stateको 5 ही रखें. scoringऑप्शन ऐसा सेट करें कि यह recall के लिए ऑप्टिमाइज़ करे.- ट्रेनिंग डेटा
X_trainऔरy_trainपर मॉडल फिट करें और मॉडल के लिए सर्वश्रेष्ठ पैरामीटर प्राप्त करें.
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
# Define the parameter sets to test
param_grid = {'n_estimators': [____, ____], 'max_features': ['auto', 'log2'], 'max_depth': [4, 8], 'criterion': ['____', '____']
}
# Define the model to use
model = ____(random_state=5)
# Combine the parameter sets with the defined model
CV_model = GridSearchCV(estimator=model, param_grid=param_grid, cv=5, scoring='____', n_jobs=-1)
# Fit the model to our training data and obtain best parameters
CV_model.fit(____, ____)
CV_model.____