Randomized search
# Call GridSearchCV
grid_search = GridSearchCV(clf, param_grid)
# Fit the model
grid_search.fit(X, y)
ऊपर दिए गए पिछले अभ्यास के कोड स्निपेट में, आपने देखा होगा कि पहली पंक्ति चलने में ज्यादा समय नहीं लेती, जबकि .fit() कॉल को चलने में कई सेकंड लगे।
ऐसा इसलिए है क्योंकि वास्तविक ग्रिड सर्च .fit() ही करता है, और हमारे मामले में ग्रिड में कई अलग-अलग संयोजन थे। जैसे-जैसे हाइपरपैरामीटर ग्रिड बड़ा होता है, ग्रिड सर्च धीमा होता जाता है। इस समस्या को हल करने के लिए, हर एक संयोजन आज़माने के बजाय, हम ग्रिड में रैंडमली इधर-उधर कूदकर अलग-अलग संयोजन आज़मा सकते हैं। थोड़ी संभावना है कि हम सबसे अच्छा संयोजन चूक जाएँ, लेकिन हम काफी समय बचाएँगे, या फिर उसी समय में और ज्यादा हाइपरपैरामीटर ट्यून कर पाएँगे।
scikit-learn में, आप यह RandomizedSearchCV का उपयोग करके कर सकते हैं। इसका API GridSearchCV जैसा ही है, बस इसमें आपको तय मानों की जगह एक पैरामीटर distribution देना होता है, जिससे यह सैंपल कर सके। आइए, इसे अब आज़माते हैं! आपके लिए पैरामीटर डिस्ट्रीब्यूशन तैयार है, साथ में clf नाम का एक रैंडम फॉरेस्ट क्लासिफायर भी।
यह अभ्यास पाठ्यक्रम का हिस्सा है
Marketing Analytics: Python में Customer Churn की भविष्यवाणी
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
# Import RandomizedSearchCV