首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何避免ML中的多参数调优?

如何避免ML中的多参数调优?
EN

Data Science用户
提问于 2022-06-29 17:17:42
回答 2查看 58关注 0票数 2

假设我开发了一个动态系统来预测一些特定股票的未来。随着时间的推移,火车将动态变化。为了更好地理解,请考虑下面的示例:

  • 第一轮: 列车组= 0: 150测试集= 150 : 152
  • 第二轮: 列车组= 1: 151测试集= 151 : 153
  • 第三轮: 列车组= 2: 152测试集= 152 : 154
  • 诸若此类。

对于每一轮,我使用一个RandomSearchCV来调优Random Forest的超参数,以使用特定的特性来预测某些股票的回报。我的重点是在这个问题中调整超参数。

正如我所提到的,我在每一轮中都会执行一个超参数调优,这需要花费大量的时间!(特别是当火车是巨大的),所以我正在寻找一种方法,以避免这个超参数调优每轮重复。我很想知道,科学家是如何进行超参数调整的(考虑到耗时的过程)?

我应该在第一轮之前只进行一次超参数调整吗?

EN

回答 2

Data Science用户

发布于 2022-06-30 09:27:31

一个好的超参数可以看作是一个具有一定变化的随机变量。我不会太担心找不到一个特定测试集的最佳参数。如果您确信某些参数应该有多个值,我将尝试不对所有测试集进行测试,而是使用一些步骤。请考虑,交叉验证“污染”您的评估。您肯定会在用于cv的数据上获得更乐观的度量评分。

想象一下,你有100倍的测试。您可以使用它们中的前10个用于cv,然后用前面步骤得到的最佳模型和超参数来评估接下来的10个测试n倍。这10倍会给你更现实的分数。然后重复捆绑(10 cv折叠+ 10评估折叠)。

另外,如果您确实使用了大小为2的测试集,那么您对超参数的估计可能会有太大的变化。你可以把它和更大的测试折叠尺寸进行比较。

票数 1
EN

Data Science用户

发布于 2022-06-30 07:29:54

自动化的超参数调整可以通过像PyGAD这样的遗传算法来完成。它将自动探索大量的随机场景,并得到最好的场景。

此外,您也不必完全应用学习过程:经过几次迭代或处理步骤之后,大多数学习过程都是完全相同的。

您可以寻找优化第一次迭代/步骤的方法,这需要更少的时间,然后通过测试几个完整的过程场景来检查超参数是否真的更好。

最后,计算能力也是至关重要的,您可以使用像纸空间这样的云服务来使用功能强大的GPU(如RTX5000 )来处理您的函数。

票数 0
EN
页面原文内容由Data Science提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://datascience.stackexchange.com/questions/112244

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档