在阅读周志华教授西瓜书《机器学习》时遇到一个问题:
P28 2.2.4 调参与最终模型
中在中间偏下部分有一段内容:
在模型评估与选择过程中由于需要留出一部分数据进行评估测试,事实上我们只使用了一部分数据训练模型。因此,在模型完成选择后,学习算法和参数配置已选定,此时应该用数据集 $D$ 重新训练模型。这个模型在训练过程中使用了所有 $m$ 个样本,这才是我们最终提交给用户的模型。
没有理解的是,既然已经确定了模型的选择以及参数的配置,那么重新训练又有什么意义呢??
在阅读周志华教授西瓜书《机器学习》时遇到一个问题:
P28 2.2.4 调参与最终模型
中在中间偏下部分有一段内容:
在模型评估与选择过程中由于需要留出一部分数据进行评估测试,事实上我们只使用了一部分数据训练模型。因此,在模型完成选择后,学习算法和参数配置已选定,此时应该用数据集 $D$ 重新训练模型。这个模型在训练过程中使用了所有 $m$ 个样本,这才是我们最终提交给用户的模型。
没有理解的是,既然已经确定了模型的选择以及参数的配置,那么重新训练又有什么意义呢??
你的疑问是合理的。在这里,"重新训练"的目的是为了在确定的模型和参数配置下,使用全部的数据集进行训练,以确保模型的性能和准确性。
在模型选择和参数配置确定后,虽然可以使用这些设置来对新的数据进行预测,但是这个过程并没有考虑到数据集的分布和特性。也就是说,我们可能只是恰好选择了在训练集上表现良好的模型和参数配置,但在真实的新数据上,这个模型和参数配置可能并不理想。
通过使用全部的数据集进行重新训练,我们可以更好地捕捉到数据的分布和特性,从而优化模型的参数,使其在新的、未见过的数据上表现更好。这也是为什么在机器学习中,我们通常会进行交叉验证、调整超参数等步骤,并在最终确定模型后,使用全部的数据进行重新训练。
总的来说,"重新训练"的目的是为了优化模型的性能,确保它在新的、未见过的数据上能够有更好的表现。虽然这个过程可能会花费更多的时间和计算资源,但它对于机器学习模型的性能和准确性是非常重要的。