【发布时间】:2020-05-02 04:27:17
【问题描述】:
我正在从事一个二值图像分类项目,我通过特征提取使用迁移学习。我用 ResNet50 的输出训练了一个 Logistic 回归模型(通过丢弃它的最后一层并使用它最后一层后面的激活作为特征)。
在加载逻辑回归模型的测试期间,我得到了这个 ModuleNotFoundError。 下面的代码展示了我是如何加载我已经在 ResNet50 模型的激活上训练过的逻辑回归模型的。
model_logistic_regression = pickle.load(open(MODEL_PATH, "rb"))
这里的 MODEL_PATH 包含预训练逻辑回归模型的目录。
编辑:此逻辑回归模型由 GridSearchCV 通过以下代码创建:
model = GridSearchCV(LogisticRegression(max_iter = 100000), params, cv = 3, # cv means cross validation
n_jobs = N_JOBS)
# db["features"] contains the activations (unrolled) from ResNet50 and db["labels"] contains the corresponding output labels
model.fit(db["features"], db["labels"])
最后使用以下代码将模型写入磁盘:
f = open(MODEL_PATH, "wb")
f.write(pickle.dumps(model.best_estimator_))
f.close()
【问题讨论】:
标签: python scipy pickle logistic-regression gridsearchcv