我知道,如果学习率太高,您将在神经网络中获得NaN。但是我很好奇为什么您获得的NaN具有较高的学习率,而并非具有较低的学习率。谁能告诉我?
学习率用于计算对权重进行的调整。如果大于1,则调整会随着时间而增长,而不是越来越小。举例说明:您距离目标1米;您的学习率为3,因此您朝1 * 3 = 3米迈进并过冲;现在您距目标2米,您距2 * 3 = 6米又距目标4米...。依此类推。
1 * 3 = 3
2 * 3 = 6
这样,您最终可以溢出重量值。可能您的特定实现通过将NaN分配给权重值而不是抛出错误来解决该问题。