如何在减少可训练参数数量的同时提高模型的准确性、精确度和召回率?

问题描述 投票:0回答:0

我有一个模型,其中包含 2400 张图像的训练数据集和 850 张图像的测试数据集,由两类组成 - 火灾图像和非火灾图像。该模型已经具有 93.9% 的准确率、94% 的准确率和 97% 的召回率。不能通过添加或删除图像来修改数据集。

模型共有 14 层,包括 pooling、dropout 和‘Softmax’输出层。共有三个卷积层,每个层都有一个池化层和一个丢弃层。除了最后一层使用 Softmax 之外,每一层都使用 Rectified Linear Unit (Relu) 作为激活函数。该模型共有 646,818 个可训练参数。

第一层是一个卷积层,它采用大小为(64x64x3)的彩色输入图像,这是根据比较各种大小的经验结果选择的。输入大小可以增加到 (128x128x3) 而不会显着影响 FPS。该层有 16 个过滤器,内核大小为 (3, 3)。在随后的两个卷积层中的每一个中,输入特征都加倍,同时保持内核大小不变。接下来是一个扁平层和两个密集层,每个层有 256 和 128 个神经元。最后一层是一个密集层,有两个神经元作为输出预测层。

该模型使用带有卷积层和密集层的 dropout。通常,dropout 仅用于密集层,但据观察,当 dropout 也用于卷积层时,神经网络的整体结果有所改善。卷积层使用 0.5 的标准 dropout 值,随后的密集层使用 0.2 的 dropout 值。这是因为过度拟合通常发生在神经网络的初始层。

为了更好地说明我的模型的架构,我附上了一张图片。

我试过了

CNN 模型 1

但是过拟合了

image-processing deep-learning computer-vision conv-neural-network image-classification
© www.soinside.com 2019 - 2024. All rights reserved.