我有一个门控循环单元(GRU)模型,我制作了两个略有不同的版本。当我运行这两个版本时,版本1的验证均方误差(MSE)为0.0013,而版本2的为0.0015。这意味着版本1是更好的模型。但是,当我使用测试数据框运行model.evaluate(X_test,y_test)
时,版本1的MSE值为0.0027,而版本2的为0.0018。
我的问题是,哪个版本被认为更好,是验证MSE更好的版本,还是使用测试数据框进行预测时MSE更低的模型?
谢谢你。
回答:
首先,你不能在测试集上作弊,并选择模型以使其在测试上获得最佳结果。验证的目的是用于这个意图,而测试只是为了检查验证和测试是否彼此相符。
你没有提到训练、验证和测试数据集的大小。你使用的数据大小在训练、验证和测试中都需要足够大,以代表数据的真实分布。
另一方面,你抽样数据的方式应该确保这三个集合具有相同的分布。
最后但同样重要的是,你在比较两个结果时,MSE的差异约为0.0002。我认为这不足以让你做出哪个模型更好的判断。