【发布时间】:2021-07-22 19:08:49
【问题描述】:
我目前正在一个更大的数据集上训练我的第一个神经网络。我已将我的训练数据拆分为几个 .npy 二进制文件,每个文件都包含 20k 个训练样本的批次。我正在从 npy 文件中加载数据,应用一些简单的预处理操作,然后在循环中多次应用 partial_fit 方法开始训练我的网络:
for i in range(50):
nnmodel.partial_fit(X_tr,Y_tr)
我已经读过,常规的 .fit() 方法不能训练多批次,但 partial_fit 相反应该能够做到。我的第一次训练运行总是很好。损失正在减少,我得到了很好的拟合结果,所以我使用joblib.dump 方法保存了我的模型。
对于下一次调用,我再次使用完全相同的脚本,从 .npy 文件中加载我的数据(无论我提供相同批次还是另一个批次都无关紧要),预处理它,这次加载我的 pre使用joblib.load 训练模型,然后再次开始执行partial_fit 循环。
我在第二次运行中总是得到的是所有迭代的持续损失,无论我使用什么数据集,错误都不再减少:
Iteration 51, loss = 3.93268978
Iteration 52, loss = 3.93268978
Iteration 53, loss = 3.93268978
Iteration 54, loss = 3.93268978 ...
我在这里做错了什么? 已经谢谢了!
【问题讨论】:
标签: python machine-learning scikit-learn