我目前正在尝试创建一个CNN,但是在确定要使用哪些参数时遇到了问题。选择过滤器大小,过滤器数量和卷积层数只是没有点击我。我找到或给出的所有资源只是说'查看你的数据集'并确定它们,这些都没有帮助。
我有一个包含大约40000个实例和500个类的数据集。我在Tensorflow-gpu上使用keras。目前我正在使用6个1D卷积层,并使用tanh激活,并使用relu和softmax进行2个密集层。每2个转换层后我会进行最大池化。我有两个辍学(在我的密集层之间和之后),每个都设置为.4。根据我目前的过滤器尺寸和数量,我的准确率达到了35%左右,但根据目前的研究,我预计接近80%。
我不一定要找人确切地告诉我我应该插入到我的模型中的数字或配置,而只是一些关于如何开始确定这些值的指导。到目前为止,我真的只是猜测和检查。另外,我不确定这些值应该如何相互关联:我应该将每层的过滤器数量加倍吗?我应该多久重复一次过滤器尺寸?等
我已经查看了有关堆栈溢出的其他问题,所有带答案的问题似乎都告诉人们尝试更简单的模型或者基于keras示例来完成他们的工作,这对我的情况不起作用。
答案 0 :(得分:1)
更多数据。
我在这里的第一个倾向是你没有足够的训练样例。您有 500 类和40000个示例,平均每个类 80 示例。那当然假设你有平衡的课程,我打赌不是这样的。 只是不打算。