machine-learning - 你应该在张量流中的超参数搜索期间设置随机种子数吗?
问题描述
鉴于像神经网络这样的算法是随机的,你应该在运行超参数搜索之前设置一个随机种子吗?如果在搜索最佳超参数时不设置随机种子,如何确保在训练模型时能够得到与具有最佳超参数的场景相同的结果?
有人说在 GPU 上运行时,无论如何我们都无法获得可重复的结果,但是在 CPU 上运行训练呢?
解决方案
“你应该在运行超参数搜索之前设置一个随机种子吗?”: 超参数搜索策略有很多,包括随机搜索、网格搜索、随机和网格的混合称为“从粗到细”、贝叶斯方法等。从图片的角度来看,这些策略广泛地探索了可行可能性的空间,其中一些然后尝试在较早的实验过程中发现的附近“好的”超参数组合。
“如果在搜索最佳超参数时不设置随机种子,如何确保在训练模型时能够获得与具有最佳超参数的场景相同的结果?” 您应该跟踪您探索的不同超参数组合(在上面的策略部分中描述),即使它们最初是在程序员设置的实际范围内随机选择的。我建议首先考虑随机性作为一种策略,然后单独考虑如何实现可重复性。是的,如果您一遍又一遍地应用相同的超参数,您可能会得到不同的结果,但从理论上讲,这应该比您在最初探索潜在超参数组合时发现的最差超参数集要好得多。
推荐阅读
- python - ValueError: x 必须具有 ndim 1 但具有 ndim 2 | ARIMA 模型和 plot_pacf
- java - 如何获得 HttpUrlConnection 完整响应
- reactjs - React Native: RenderItem in FlatList. How to map array stored in local state?
- grpc - gRPC 有效地将重复字段发送到服务器
- javascript - 我必须使 3 种颜色(红绿蓝)覆盖原始图像,但透明且垂直
- .net - 在我的项目中,我有两个表,一个是流,另一个是分支,分支页面上的 stream_id?
- javascript - 更新请求后如何触发useEffect重新渲染
- reactjs - 如何在反应(js)文件的sublimetext3中获取html标签自动完成?
- r - 如何在R中的一个图中打印不同的变量
- matplotlib - 带有分类数据的热图中的刻度位置(seaborn)