sap*_*ico 0 types python-2.7 random-forest scikit-learn grid-search
我有一些分类器是使用Grid Search创建的,其他分类器是直接创建为Random Forests 的。
随机森林返回 type sklearn.ensemble.forest.RandomForestClassifier,使用 gridSearch 创建的随机森林返回 type sklearn.grid_search.RandomizedSearchCV。
我正在尝试以编程方式检查估计器的类型(以确定是否需要best_estimator_对特征重要性使用),但似乎找不到这样做的好方法。
if type(estimator) == 'sklearn.grid_search.RandomizedSearchCV' 是我的第一个猜测,但显然是错误的。
的类型()函数不返回CLASSINFO,它返回一个类型的对象。因此,将相等性与这样的 classinfo 进行比较是行不通的。
您需要做的是使用isinstance(object, classinfo)来测试您的估算器的类型。
如果类型与 classinfo 匹配,则此函数返回 True,否则返回 False。
假设您创建了一个类型的估算器
sklearn.ensemble.forest.RandomForestClassifier
然后
isinstance(估算器,sklearn.ensemble.forest.RandomForestClassifier)
将返回 True,而
isinstance(估计器,sklearn.grid_search.RandomizedSearchCV)
会返回 False。
然后,您可以在诸如 if 语句之类的测试中使用该结果。
记得
导入sklearn
访问您可能需要测试的所有 scikit-learn 类信息。