我有一个网络,其输出是一个大向量(比方说~2000)。地面实况输出非常稀疏和二进制——在 2000 个值中,大多数值为 0,只有少数为 1。澄清一下,每个样本在不同位置都有 1,存在一些不均匀的可能性在任何给定的神经元处为 1。
我很确定,如果我运行这个网络,它会很快找到输出全 0 的简单解决方案并留在那里。
您如何建议轻推网络以避免这种微不足道的解决方案?
我想以某种方式对样本进行加权,以使每个样本都赋予等于 1 的神经元较高的权重。这似乎很难有效地实现。如何在 tensorflow/keras 中轻松高效地实现这一点?
另一个想法是将所有 0 设置为以 0.5 为中心的随机值,并在网络训练时将它们慢慢减少到零。
其他想法?