1
私はいくつかの予測モデルを作成しており、そこに何があるのか、どのように予測タスクを実行しているのかを見るために異なる種類の回帰変数をベンチマークしたいと考えています。Sklearns回帰分析器をすべてインポートするには
これは、kaggle kernelによって作成者の本質的に手作業で手作業で手動で分類器(約10)をインポートし、ベンチマークすることでインスピレーションを受けました。
sklearn
に回帰変数の包括的なリストを見つけるのが難しいので、私はimport
文を自動化しようとしています。自動的に私が使用できるクラスのリストを返します。
from importlib import import_module
import sklearn
def all_regressors():
regressors=[]
for module in sklearn.__all__:
try:
regressors.extend([cls for cls in import_module(f'sklearn.{module}').__all__ if 'Regress' in cls ])
except:
pass
regressors.append(sklearn.svm.SVR)
return regressors
print(all_regressors())
しかし、私だけではなく、クラスよりも、文字列として名前を取り戻す:
['RandomForestRegressor', 'ExtraTreesRegressor', 'BaggingRegressor',
'GradientBoostingRegressor', 'AdaBoostRegressor',
'GaussianProcessRegressor', 'IsotonicRegression', 'ARDRegression',
'HuberRegressor', 'LinearRegression', 'LogisticRegression',
'LogisticRegressionCV', 'PassiveAggressiveRegressor',
'RandomizedLogisticRegression', 'SGDRegressor', 'TheilSenRegressor',
'RANSACRegressor', 'MultiOutputRegressor', 'KNeighborsRegressor',
'RadiusNeighborsRegressor', 'MLPRegressor', 'DecisionTreeRegressor',
'ExtraTreeRegressor', <class 'sklearn.svm.classes.SVR'>]
がどのように私は、実際のクラスを取得することができます
私は動的にクラスをインポートしようとした
?