我仍在 Tensorflow 中训练卷积神经网络模型,以从面部图像中识别年龄组。我正在使用 Adience 3D(正面使用 3D 模型——它可能不是好的数据)数据集,其中有四层用于训练,一层用于测试。
我目前正在使用三个 Conv-Conv-Pool 层集,第一个的 Conv 层使用 32 个 5x5 大小的过滤器,第二个和第三个使用 64 个 3x3 大小的过滤器,最重要的是,一个具有扁平输入的 Dense 层,然后是 Dropout 层,将密集层的输出丢弃 20%,然后到 logits 层。
我使用每通道标准化((A - np.mean(A)) / np.std(A)64x64x3 输入中每个 64x64 数组的方法)对裁剪后的彩色图像进行了标准化。
目前我正在使用 Batch Size 64 和 100 步对其进行训练,以便每 100 步评估一次权重,虽然目前我没有看到太大的改进,但我可以看到它从 100 步增加到 500 步(0.27 到 0.35) ,在下降到第 600 级之前,然后再次上升到第 800 级(0.30 - 0.34)。
这是我必须更改图层结构的标志吗?
关于这一点,我应该何时更改我的层结构/超参数,如训练步骤、批量大小、过滤器大小等,以及如何更改?