【问题标题】:How to choose the hyperparameters and strategy for neural network witg small dataset?小数据集的神经网络如何选择超参数和策略?
【发布时间】:2019-03-21 14:24:40
【问题描述】:

我目前正在做语义分割,但是我的数据集非常小,

我只有大约 700 张带有数据增强的图像,例如,翻转可以

制作 2100 张图片。

不确定它是否足以完成我的任务(四个语义分割

类)。

我想使用批量归一化和小批量梯度下降

真正让我头疼的是,如果批量太小,

批量归一化效果不佳,但批量较大,

似乎相当于全批梯度下降

我想知道#of 样本和批次之间是否存在标准比率之类的东西 尺寸?

【问题讨论】:

    标签: deep-learning batchsize


    【解决方案1】:

    让我首先解决您问题的第二部分“具有小数据集的神经网络的策略”。您可能希望在较大的数据集上采用预训练网络,并使用较小的数据集微调该网络。例如,参见this tutorial。

    其次,您询问批次的大小。实际上,较小的批次将使算法像经典随机梯度下降一样在最优值附近徘徊,其标志是损失的噪声波动。而对于较大的批量大小,通常会有一个更“平滑”的走向最优的轨迹。无论如何,我建议您使用具有动量的算法,例如Adam。这将有助于您的训练收敛。

    启发式地,批量大小可以保持在您的 GPU 内存可以容纳的范围内。如果 GPU 内存量不足,则减少批大小。

    【讨论】:

    • 是的,第一部分我还有一个问题,听说有人冻结了预训练的网络,我不明白他们为什么这样做,没有微调整个模型给更好的结果?其次,我很欣赏这个建议,我会使用它!感谢您提供良好的反馈!
    • 冻结预训练网络的某些部分是所谓的迁移学习。另一方面,微调确实允许修改权重。这两种方法都可以接受,具体取决于上下文。
    • 好的,我知道了,非常感谢。
    猜你喜欢
    • 2017-05-16
    • 2018-09-20
    • 2012-05-15
    • 2020-09-29
    • 2012-11-21
    • 1970-01-01
    • 2013-07-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多