【发布时间】:2018-04-02 23:43:22
【问题描述】:
这或多或少是一个普遍的问题,在我的反向传播算法的实现中,我从一些“大”学习率开始,然后在我看到错误开始增长后降低它,而不是缩小。 我可以在错误增长一点之后(StateA)或在它即将增长之前(StateB,回滚到以前的“成功”状态)来降低这个速率
所以问题是从数学的角度来看什么更好? 还是我需要执行两个并行测试,假设尝试从 StateA 点学习,然后从 StateB 点学习,两者都降低了学习率,并比较哪个降低得更快?
顺便说一句,我没有尝试上一段的方法。只有在我写这个问题时才会想到它。在当前算法的实现中,我继续从 StateA 学习,学习率降低,假设学习率的降低相当小,如果我不小心只遇到局部最小值,我会回到先前的方向到全局最小值
【问题讨论】:
标签: machine-learning neural-network backpropagation gradient-descent supervised-learning