是否有一种简单的方法来检查模型实例是否解决了scikit-learn库中的分类或回归任务?
答案 0 :(得分:4)
使用sklearn.base.is_classifier
和/或is_regressor
:
from sklearn.base import is_classifier, is_regressor
from sklearn.linear_model import LinearRegression
from sklearn.ensemble import RandomForestRegressor
from sklearn.ensemble import RandomForestClassifier
models = [LinearRegression(), RandomForestClassifier(), RandomForestRegressor()]
for m in models:
print(m.__class__.__name__, is_classifier(m), is_regressor(m))
输出:
# model_name is_classifier is_regressor
LinearRegression False True
RandomForestClassifier True False
RandomForestRegressor False True
答案 1 :(得分:1)
我猜您问这个是因为您有一个序列化的模型,其类型未知。打开文件并执行
mlType = type(variable_name)
其中variable_name是反序列化模型的句柄。
输出例如
class 'sklearn.linear_model.base.LinearRegression'