建立CNN模型时,转换数据的顺序是否重要?

时间:2019-12-18 20:57:29

标签: python keras

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

为清楚起见:如果我的y_train的形状为100x1,其中所有正情绪为0-50,负情绪为50-100,则与每个偶数索引具有正情绪且奇数索引具有负数时相比,结果是否会有所不同否定的?

2 个答案:

答案 0 :(得分:0)

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

答案 1 :(得分:0)

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