Logistic regression और feature selection
इस अभ्यास में आप L1 रेग्युलराइज़ेशन का उपयोग करके मूवी रिव्यू सेंटिमेंट डेटासेट पर feature selection करेंगे। X_train और y_train में आपके लिए features और targets पहले से लोड हैं.
हम scikit-learn के GridSearchCV() का उपयोग करके C के सबसे अच्छे मान की खोज करेंगे, जिसे आपने प्रीरेक्विज़िट कोर्स में कवर किया था.
यह अभ्यास पाठ्यक्रम का हिस्सा है
Python में Linear Classifiers
अभ्यास निर्देश
- ऐसा लॉजिस्टिक रिग्रेशन ऑब्जेक्ट बनाइए जो L1 रेग्युलराइज़ेशन का उपयोग करे.
- वह
Cका मान खोजिए जो cross-validation error को न्यूनतम करे. - इस
Cके लिए चुनी गई features की संख्या प्रिंट कीजिए.
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
# Specify L1 regularization
lr = LogisticRegression(solver='liblinear', ____)
# Instantiate the GridSearchCV object and run the search
searcher = GridSearchCV(lr, {'C':[0.001, 0.01, 0.1, 1, 10]})
searcher.fit(X_train, y_train)
# Report the best parameters
print("Best CV params", searcher.best_params_)
# Find the number of nonzero coefficients (selected features)
best_lr = searcher.best_estimator_
coefs = best_lr.____
print("Total number of features:", coefs.size)
print("Number of selected features:", np.count_nonzero(coefs))