见到paper实验里写的这种,无论他其他的部分写的多好,反正我看到了就会给打个strong reject。
因为这属于学术不端,本质上是information leaking,相当于在得到结果的时候预先使用了test set的信息。在你得到训练好的模型之前,你是不允许使用test set的任何信息的。(当然把test set accuracy 在代码里打印出来其实是可以的,但你要确保这个信息绝不参与对训练好的模型的选择)你都能在训练过程中找到”test set表现最好的那个epoch"了,这和直接把test set加入train set得到一个overfit的东西,有什么区别呢?
正确的做法是使用validation set上表现最好的那个epoch,放到test set上去看结果。
女王:求求题主放过我,我可不敢有什么政绩。。。