[python] Scikit-learn classifiers के लिए सबसे अधिक जानकारीपूर्ण विशेषताएं कैसे प्राप्त करें?



2 Answers

लार्समैन कोड की मदद से मैं बाइनरी केस के लिए इस कोड के साथ आया था:

def show_most_informative_features(vectorizer, clf, n=20):
    feature_names = vectorizer.get_feature_names()
    coefs_with_fns = sorted(zip(clf.coef_[0], feature_names))
    top = zip(coefs_with_fns[:n], coefs_with_fns[:-(n + 1):-1])
    for (coef_1, fn_1), (coef_2, fn_2) in top:
        print "\t%.4f\t%-15s\t\t%.4f\t%-15s" % (coef_1, fn_1, coef_2, fn_2)
Question

Liblinear और nltk जैसे मशीन लर्निंग पैकेज में क्लासिफायर एक विधि show_most_informative_features() प्रदान करते हैं, जो डिबगिंग सुविधाओं के लिए वास्तव में सहायक है:

viagra = None          ok : spam     =      4.5 : 1.0
hello = True           ok : spam     =      4.5 : 1.0
hello = None           spam : ok     =      3.3 : 1.0
viagra = True          spam : ok     =      3.3 : 1.0
casino = True          spam : ok     =      2.0 : 1.0
casino = None          ok : spam     =      1.5 : 1.0

मेरा सवाल यह है कि अगर विज्ञान-सीखने में वर्गीकरण के लिए कुछ ऐसा ही लागू किया जाता है। मैंने प्रलेखन की खोज की, लेकिन ऐसा कुछ भी नहीं मिला।

यदि अभी तक ऐसा कोई फ़ंक्शन नहीं है, तो क्या कोई व्यक्ति उन मानों को कैसे प्राप्त कर सकता है?

आपका बहुत बहुत धन्यवाद!




आदेश द्वारा महत्व सुविधाओं का ग्राफ बनाने के लिए आप ऐसा कुछ भी कर सकते हैं:

importances = clf.feature_importances_
std = np.std([tree.feature_importances_ for tree in clf.estimators_],
         axis=0)
indices = np.argsort(importances)[::-1]

# Print the feature ranking
#print("Feature ranking:")


# Plot the feature importances of the forest
plt.figure()
plt.title("Feature importances")
plt.bar(range(train[features].shape[1]), importances[indices],
   color="r", yerr=std[indices], align="center")
plt.xticks(range(train[features].shape[1]), indices)
plt.xlim([-1, train[features].shape[1]])
plt.show()



हमने हाल ही में एक लाइब्रेरी जारी की है ( https://github.com/TeamHG-Memex/eli5 ) जो ऐसा करने की अनुमति देती है: यह scikit-learn, बाइनरी / मल्टीक्लास मामलों से विविधता क्लासिफायरों को संभालती है, सुविधा मानों के अनुसार पाठ को हाइलाइट करने की अनुमति देती है , आईपीथन, आदि के साथ एकीकृत करता है।




Related