- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在使用
net = newfit(in,out,lag(j),{'tansig','tansig'});
生成一个新的神经网络。 验证检查次数
的默认值为6
。
我正在训练很多网络,这会花费很多时间。我想如果我的结果可以变得更快,那么即使我的结果不太准确也没关系。
我怎样才能训练得更快?
正如我所说,速度的提高可能会损失一点准确性。
最佳答案
只是为了扩展@mtrw回答,根据documentation ,当出现以下任何情况时,训练停止:
net.trainParam.epochs
net.trainParam.time
net.trainParam.goal
net.trainParam.min_grad
net.trainParam.mu_max
net.trainParam.max_fail
Epochs 和 time 约束允许设置训练持续时间的上限。
目标约束在性能(错误)低于它时停止训练,并且通常允许您调整时间/准确性权衡的级别:不太准确的结果以加快执行速度。
这类似于 min_grad(梯度告诉您“下降”的强度),如果梯度的大小小于 mingrad,则训练停止。可以理解的是,如果误差函数变化不大,那么我们就达到了一个平台期,我们可能应该停止训练,因为我们不会有太大的改善。
mu、mu_dec 和mu_max 用于控制权重更新过程(反向传播)。
max_fail 通常用于避免过度拟合,而不是用于加速。
我的建议是,将time 和epochs 设置为您的应用程序约束允许的最大值(否则结果会很差)。反过来,您可以控制目标 和min_grad 以达到所需的速度/准确性权衡水平。请记住,max_fails 不会让您获得任何时间,因为它主要用于确保良好的泛化能力。
关于matlab - 如何在 MATLAB 中更改 newfit() 的默认参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1735125/
我正在使用 net = newfit(in,out,lag(j),{'tansig','tansig'}); 生成一个新的神经网络。 验证检查次数 的默认值为6。 我正在训练很多网络,这会花费很多时间
我是一名优秀的程序员,十分优秀!