Pra*_*ngh 5 python machine-learning svm pandas scikit-learn
我了解如何使用随机状态将数据随机分成训练集和测试集。正如预期的那样,我的算法每次更改时都会给出不同的准确度。现在我必须在我的大学提交一份报告,我无法理解在那里提到的最终准确性。我应该选择我得到的最大精度吗?或者我应该用不同的 RandomStates 运行它,然后取其平均值?或者是其他东西?
最好的方法是采用平均准确度...但是,如果您根据特定的数据集分割训练模型以产生最佳分类(可能被认为是过度拟合),那么您可以采用最佳准确度,让我详细说明一下:
您可以训练模型进行几次迭代 测试和训练集的准确性会有所不同,但会呈上升趋势(准确性将会上升) 您可以训练模型进行多次迭代并仅在以下情况下更新权重这次迭代的准确性得到了提高,从而构建了最佳模型......
但是您应该小心观察测试集的准确性,以避免过度拟合,即当模型可以在训练集上以非常高的准确度进行预测,但在测试集上的准确度非常低时
开始时,模型将进行学习,(测试和训练)准确性都会提高,经过大量训练后,训练准确性将提高(或保持不变),但测试准确性将下降
你可以看看这个以进一步阅读
我建议你看看k-fold交叉验证,我认为这种方法最适合这种情况