【发布时间】:2016-10-21 15:24:20
【问题描述】:
我使用双向 RNN 来检测不平衡发生的事件。正类比负类少 100 倍。 虽然没有使用正则化,但我可以在训练集上获得 100% 的准确率,在验证集上获得 30% 的准确率。 我打开 l2 正则化,结果在训练集上也只有 30% 的准确率,而不是更长时间的学习和验证集上的 100% 准确率。
我在想也许我的数据太小了,所以为了实验,我将训练集与我之前没有使用过的测试集合并。情况与我使用 l2 正则化的情况相同,但我现在没有。我在训练+测试和验证上获得了 30% 的准确率。
在上述实验中使用了 128 个隐藏单元和 80 个时间步长 当我将隐藏单元的数量增加到 256 个时,我可以再次在训练+测试集上过拟合以获得 100% 的准确率,但在验证集上仍然只有 30%。
我确实尝试了很多超参数选项,但几乎没有结果。可能是加权交叉熵导致了这个问题,在给定的实验中,正类的权重为 5。虽然尝试更大的权重,但结果通常更差,准确率约为 20%。
我尝试了 LSTM 和 GRU 单元,没有区别。
我得到的最好结果。我尝试了 2 个具有 256 个隐藏单元的隐藏层,大约需要 3 天的计算时间和 8GB 的 GPU 内存。我得到了大约 40-50% 的准确率,然后它再次开始过度拟合,而 l2 正则化打开但没有那么强。
在这种情况下有什么通用的指导方针吗?我找不到任何东西。
【问题讨论】:
-
您的问题可能更适合stats.stackexchange.com
标签: deep-learning recurrent-neural-network lstm bidirectional