【问题标题】:Model accuracy starts low and improves after each epoch leading to a high epoch number. Is it bad to have a high epoch number?模型精度从低开始,并在每个 epoch 后提高,从而导致高 epoch 数。高纪元数不好吗?
【发布时间】:2020-07-06 17:09:56
【问题描述】:

我的模型一开始的准确度非常低,但在每个 epoch 之后它都会有所改善。在 45 个 epoch 之后,我得到了大约 0.9 的准确度,这需要相当长的时间。

我的数据集是 3430 张图片(48x48 像素),来自不同种类的花朵(总共 5 种类型,每种类型大约 650 张照片),我的模型如下所示:

model = keras.Sequential([
keras.layers.Flatten(input_shape=(48, 48, 3)),
keras.layers.Dense(512, activation='relu'),
keras.layers.Dense(5, activation='softmax')
])


model.compile(optimizer='adam',
             loss='sparse_categorical_crossentropy',
             metrics=['accuracy'])

model.fit(train_images, train_labels, epochs=45)

有没有办法提高初始精度,比如添加更多层、更改 keras 模型的类型或向数据集添加更多图像。即使模型精度不断提高,拥有大量 epoch 也很糟糕。 (对不起,如果我有任何错别字,英语不是我的主要语言) 提前致谢。

【问题讨论】:

    标签: python tensorflow keras deep-learning image-recognition


    【解决方案1】:

    不,您希望模型在训练开始并且权重是随机的时基本上没有预测能力,并且随着权重向最优值收敛,每个时期都会变得更好。它最终应该收敛到某个特定的损失值,这可以被认为是架构的预测极限。

    随机初始化权重的初始精度始终是任意的,这不是问题。

    【讨论】:

      猜你喜欢
      • 2018-12-10
      • 1970-01-01
      • 2020-08-06
      • 2021-10-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-10-20
      • 2020-01-29
      相关资源
      最近更新 更多