machine-learning - 我们如何定义神经网络中的不良学习率?
问题描述
我正在尝试定义神经网络中不良学习率的正确定义,如下所示:
神经网络中的不良学习率是指您分配的学习率太低或太高,学习率太低,网络会花费太多时间来训练,但学习率太高,网络会变化太快,这可能会导致输出。
任何建议将不胜感激。
解决方案
我相信有效的学习率(alpha)取决于数据。你提到的关于低效学习率的观点是绝对正确的。因此,选择 alpha 没有硬性规定。让我列举一下我在决定 alpha 时采取的步骤:
- 您显然需要一个大的 alpha 以便您的模型快速学习
- 另请注意,大 alpha 会导致超出最小值,因此您的假设不会收敛
- 为了解决这个问题,你可以去学习率衰减。当您接近最小值并减慢学习速度时,这会降低您的学习率,以使您的模型不会超调。
有几种方法可以做到这一点:
- 阶跃衰减
- 指数衰减
- 线性衰减
您可以选择其中一个,然后训练您的模型。话虽如此,让我指出,在您获得最佳结果之前,您仍然需要进行一些试验和错误。
推荐阅读
- nginx - EFS 持久卷声明失败
- c# - Xamarin 使用动态资源形成边距
- html - iOS 电子邮件中未显示 Web 安全字体
- python - Pandas 根据工作日过滤数据框
- debugging - 谁创建了核心文件
- javascript - 有没有更好的方法来浓缩这些
- nlp - Vocab 大小为 20 的语言模型可接受的困惑度分数是多少
- firebase - Firebase 仅显示两个 URL 之一的 index.html
- java - Spring通过构造函数注入一个初始化的模拟
- python - 如何使用 python 在 GCP 中获取负载均衡器的 https/backend_request_count 指标?