【问题标题】:Does order of the traning data matter when building a CNN model?构建 CNN 模型时,训练数据的顺序是否重要?
【发布时间】:2019-12-18 20:57:29
【问题描述】:

我正在查看位于 here 的 Keras CNN 示例,我看到输入数据具有随机打乱的正面和负面情绪训练样本。我想知道 CNN 是否对训练数据的排序敏感。

为了清楚起见:如果我的 y_train 的形状为 100x1,其中 0-50 表示所有正面情绪,50-100 表示负面情绪,与每个偶数指数都具有正面情绪而奇数指数具有否定的?

【问题讨论】:

    标签: python keras


    【解决方案1】:

    从理论上讲,对于最后一个时期,如果后半部分样本仅是正样本,则您的模型可能对正样本有轻微的偏差。然而,这就是 Keras 的 fit() 函数具有 shuffle 功能的原因,因此它对每个 epoch 的训练样本进行混洗,以确保没有偏差,并且您的模型可以在不同的批次上进行训练,从许多不同的角度查看您的问题。除非你有理由相信你不应该这样做,否则我绝对会推荐它。

    【讨论】:

      【解决方案2】:

      在批量训练神经网络时打乱数据可能对模型的性能至关重要。在数据科学 stackexchange 上提供了有关此主题的更详细讨论 here。 我只想补充一点,例如,当您进行交叉验证时,改组通常有利于评估您的模型。在每个训练测试折叠中,您都希望有随机样本,这样您就可以确保您的模型可以很好地泛化。

      【讨论】:

        猜你喜欢
        • 2018-06-06
        • 1970-01-01
        • 1970-01-01
        • 2020-10-22
        • 1970-01-01
        • 2021-11-02
        • 1970-01-01
        • 1970-01-01
        • 2021-09-29
        相关资源
        最近更新 更多