मॉडल पैरामीटर ट्यून करना
अब समय है कि आप अपने मॉडल पर अलग-अलग पैरामीटर आज़माएँ और देखें कि यह कितना अच्छा परफॉर्म करता है!
पिछले अभ्यास में आपने जो create_model() फंक्शन बनाया था, वह उपयोग के लिए तैयार है.
क्योंकि RandomizedSearchCV ऑब्जेक्ट को फिट करना बहुत समय लेगा, इसलिए जो परिणाम आपको मिलने चाहिए थे वे show_results() फंक्शन में प्रिंट कर दिए गए हैं.
आप चाहें तो सब कुछ बना लेने के बाद कंसोल में स्वयं random_search.fit(X,y) चलाकर जाँच सकते हैं कि यह काम करता है, लेकिन संभव है कि अभ्यास टाइमआउट हो जाए (तो यदि आप यह ट्राई करें, पहले अपना कोड कॉपी कर लें, नहीं तो आपकी प्रोग्रेस खो सकती है!).
जब आप अपना KerasClassifier ऑब्जेक्ट बनाते हैं, तब वैकल्पिक epochs और batch_size पैरामीटर देने की ज़रूरत नहीं है, क्योंकि आप उन्हें रैंडम सर्च में params के रूप में पास कर रहे हैं और यह पहले से काम कर रहा है.
यह अभ्यास पाठ्यक्रम का हिस्सा है
Keras के साथ डीप लर्निंग परिचय
अभ्यास निर्देश
tensorflow.kerasscikit_learn wrappers सेKerasClassifierइम्पोर्ट करें.KerasClassifierबनाते समय अपनेcreate_modelफंक्शन का उपयोग करें.activationके लिए'relu'और'tanh'सेट करें;batch_sizeके लिए 32, 128, और 256;epochsके लिए 50, 100, और 200; औरlearning_rateके लिए 0.1, 0.01, और 0.001 सेट करें.- अपना कन्वर्ट किया हुआ
modelऔर चुने हुएparamsपास करें जब आप अपनाRandomizedSearchCVऑब्जेक्ट बनाते हैं.
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
# Import KerasClassifier from tensorflow.keras scikit learn wrappers
from tensorflow.keras.wrappers.____ import ____
# Create a KerasClassifier
model = KerasClassifier(build_fn = ____)
# Define the parameters to try out
params = {'activation': [____, ____], 'batch_size': [____, ____, ____],
'epochs': [____, ____, ____], 'learning_rate': [____, ____, ____]}
# Create a randomize search cv object passing in the parameters to try
random_search = RandomizedSearchCV(____, param_distributions = ____, cv = KFold(3))
# Running random_search.fit(X,y) would start the search,but it takes too long!
show_results()