Neural network 改进神经网络的学习

Neural network 改进神经网络的学习,neural-network,classification,conv-neural-network,validationerror,Neural Network,Classification,Conv Neural Network,Validationerror,如果我得到了图片中显示的训练和验证错误来改进我的神经网络,有人能帮助我如何处理分类吗?我试着提前停止训练,这样验证错误会更小,但仍然太高。我得到了62.45%的验证准确率,但这太低了。数据集是显示图像中某个位置的对象(不居中)的图像。如果我对相同数量的图像使用相同的网络,但显示的对象始终居中于主点,则验证精度为95%时效果更好 在实现神经网络时,可以寻找以下内容: 数据集问题: i) 检查您向网络提供的输入数据是否有意义,以及数据中是否存在过多噪音 ii)尝试传递随机输入,看看错误性能是否持续。

如果我得到了图片中显示的训练和验证错误来改进我的神经网络,有人能帮助我如何处理分类吗?我试着提前停止训练,这样验证错误会更小,但仍然太高。我得到了62.45%的验证准确率,但这太低了。数据集是显示图像中某个位置的对象(不居中)的图像。如果我对相同数量的图像使用相同的网络,但显示的对象始终居中于主点,则验证精度为95%时效果更好


在实现神经网络时,可以寻找以下内容:

  • 数据集问题

    i) 检查您向网络提供的输入数据是否有意义,以及数据中是否存在过多噪音

    ii)尝试传递随机输入,看看错误性能是否持续。如果确实如此,那么是时候对你的网络进行更改了

    iii)检查输入数据是否有适当的标签

    iv)如果输入数据未被洗牌,并以特定的标签顺序传递,则会对学习产生负面影响。因此,将数据和标签混合在一起是必要的

    v) 减小批次大小并确保批次不包含相同的标签

    vi)过多的数据扩充并不好,因为它具有正则化效果,并且当与其他形式的正则化(权重L2、退出等)结合时,可能会导致网络不匹配

    vii)数据必须按照数据要求进行预处理。例如,如果您正在训练网络进行人脸分类,那么没有背景或任何背景的图像人脸应该传递给网络进行学习

  • 实施问题

    i) 检查您的损失函数、重量初始化和梯度检查,以确保反向传播以适当的方式工作

    ii)借助可视化库(如Tensorboard),可视化各层的偏差、激活和重量

    iii)尝试使用动态学习率概念,其中学习率随一组设计的时间而变化

    iv)通过增加更多层或更多神经元来增加网络大小,因为这可能不足以捕获其标记的特征


  • 您必须精确地确定集合和类的大小。似乎您没有足够的数据覆盖所有职位。谢谢!所以我必须改变批量大小,对吗?我必须把它变小吗?根据我的班级规模,你们想在每堂课上放更多的图片吗?看来你们太适合了。尝试在每个类中放置多个位置的图像。一种方法是将图像左右翻转,以便获得两次数据。