我想使用神经网络实现图片分类。我想知道从图片中选择特征的方法以及要使用的隐藏单元或图层的数量。
现在我有一个想法,将图像的大小更改为 50x50 或更小,以便特征的数量更少,并且所有输入的大小都是恒定的。特征将是每个像素的 RGB 值。会不会很好或还有其他更好的方法吗?
此外,我决定使用 1 个隐藏层,其单元数是输入中的一半。我可以更改数字以获得更好的结果。还是我需要更多层?
我想使用神经网络实现图片分类。我想知道从图片中选择特征的方法以及要使用的隐藏单元或图层的数量。
现在我有一个想法,将图像的大小更改为 50x50 或更小,以便特征的数量更少,并且所有输入的大小都是恒定的。特征将是每个像素的 RGB 值。会不会很好或还有其他更好的方法吗?
此外,我决定使用 1 个隐藏层,其单元数是输入中的一半。我可以更改数字以获得更好的结果。还是我需要更多层?
50x50 图像特征矩阵是 2500 个具有 RGB 值的特征。您的神经网络可能会记住这一点,但很可能在其他图像上表现不佳。
因此这类问题更多是关于图像处理、特征提取。您的功能将根据您的要求而改变。请参阅有关图像处理和神经网络的类似问题
1层网络只适合线性问题,你确定你的问题是线性的吗?否则你将需要多层神经网络
神经网络成功学习了许多图像数据集,例如
并不是说您需要很多训练示例。通常一个隐藏层就足够了。但是很难确定“正确”的神经元数量。有时隐藏神经元的数量甚至应该大于输入的数量。当您使用 2 个或更多隐藏层时,您通常需要更少的隐藏节点并且训练会更快。但是当你有很多隐藏层时,很难在第一层训练权重。
一种专门为图像设计的神经网络是卷积神经网络。它们通常比多层感知器工作得更好,而且速度更快。