[英]How to list all classification/regression/clustering algorithms in scikit-learn?
结合如何列出所有支持 predict_proba()和http://scikit-learn.org/stable/modules/classes.html#module-sklearn.base 的scikit-learn 分类器产生解决方案:
from sklearn.utils.testing import all_estimators
from sklearn import base
estimators = all_estimators()
for name, class_ in estimators:
if issubclass(class_, base.ClassifierMixin):
print(name)
或者使用任何其他基类:ClusterMixin、RegressorMixin、TransformerMixin。
作为更新的解决方案,sklearn 将模块更新为sklearn.utils.all_estimators 。 以下是导入所有回归模型的示例:
from sklearn.utils import all_estimators
estimators = all_estimators(type_filter='regressor')
all_regs = []
for name, RegressorClass in estimators:
try:
print('Appending', name)
reg = RegressorClass()
all_regs.append(reg)
except Exception as e:
print(e)
其中一些需要 init 参数(如 estimator)并且必须使用 try..except 忽略。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.