Machine learning 在我的模型过度拟合之前,最好的纪元数是多少?

Machine learning 在我的模型过度拟合之前,最好的纪元数是多少?,machine-learning,keras,neural-network,Machine Learning,Keras,Neural Network,下面是我在Keras中运行的一个神经网络模型的图像。你可以看到MAE值与#的年代对比。通过观察这幅图,我认为最好的纪元数是280个,那么模型就太过合适了,对吗?我很想听听你的意见 我有一个500个样本数据集,我将其拆分为80/20,并使用了4倍。模型的设置如下所示: model = keras.Sequential([ keras.layers.Dense(64, activation='relu'), ##pay attention here. Added the "k

下面是我在Keras中运行的一个神经网络模型的图像。你可以看到MAE值与#的年代对比。通过观察这幅图,我认为最好的纪元数是280个,那么模型就太过合适了,对吗?我很想听听你的意见

我有一个500个样本数据集,我将其拆分为80/20,并使用了4倍。模型的设置如下所示:

 model = keras.Sequential([
      keras.layers.Dense(64, activation='relu'), ##pay attention here. Added the "keras.layers"
      keras.layers.Dense(64, activation='relu'),
      keras.layers.Dense(1)
    ])

你不能有固定数量的历元,你可以使用keras callback ModelCheckpoint(在训练过程中保存最好的模型)和Earlystoping(在模型没有超过历元的情况下跟踪丢失、acc、val_丢失和val_acc停止训练)。所以你不需要找到最好的年代数。您可以给出这些回调将处理的所有事件的最大次数,例如模型应训练多长时间以及训练期间的最佳模型


阅读有关回调的内容

理论上没有最佳数字。你应该通过反复试验找到它。不同型号的产品各不相同。