GridSearchCV के साथ gamma और C को एकसाथ ट्यून करना
पिछले अभ्यास में gamma का सबसे अच्छा मान 0.001 निकला था, जहाँ C का डिफ़ॉल्ट मान 1 था। इस अभ्यास में आप GridSearchCV का उपयोग करके C और gamma के सबसे अच्छे संयोजन की खोज करेंगे।
पिछले अभ्यास की तरह, 2-vs-not-2 digits डेटासेट पहले से लोड है, लेकिन इस बार इसे X_train, y_train, X_test, और y_test वैरिएबल्स में बाँटा गया है। हालाँकि क्रॉस-वैलिडेशन पहले से ही ट्रेनिंग सेट को हिस्सों में बाँटता है, फिर भी क्रॉस-वैलिडेशन के नतीजों की उचितता जाँचने के लिए एक अलग टेस्ट सेट सुरक्षित रखना अक्सर अच्छा विचार होता है।
यह अभ्यास पाठ्यक्रम का हिस्सा है
Python में Linear Classifiers
अभ्यास निर्देश
- ट्रेनिंग सेट पर
GridSearchCVचलाकर सबसे अच्छे हाइपरपैरामीटर्स खोजें। - पैरामीटर्स के सर्वोत्तम मान प्रिंट करें।
- उस टेस्ट सेट पर accuracy प्रिंट करें, जिसका उपयोग क्रॉस-वैलिडेशन प्रक्रिया के दौरान नहीं किया गया था।
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
# Instantiate an RBF SVM
svm = SVC()
# Instantiate the GridSearchCV object and run the search
parameters = {'C':[0.1, 1, 10], 'gamma':[0.00001, 0.0001, 0.001, 0.01, 0.1]}
searcher = GridSearchCV(svm, ____)
____.fit(____)
# Report the best parameters and the corresponding score
print("Best CV params", searcher.best_params_)
print("Best CV accuracy", searcher.best_score_)
# Report the test accuracy using these best parameters
print("Test accuracy of best grid search hypers:", searcher.score(____))