【问题标题】:Error in Cholesky decomposition when using Bayesian Optimization [closed]使用贝叶斯优化时 Cholesky 分解出错
【发布时间】:2021-12-15 13:34:27
【问题描述】:

所以,我一直在使用贝叶斯优化 (rBayesianOptimization) 来调整基于交叉验证性能指标的机器学习模型的超参数。经过几次贝叶斯优化迭代后,我偶尔会遇到以下错误:

Error in chol.default(x = Sig): the leading minor of order XXX is not positive definite.

不幸的是,我无法共享我的数据集以获得可重现的示例,并且问题的出现有些不规律(我还没有查明究竟是什么导致了问题)。看来,在这些情况下,协方差矩阵为高斯过程生成了我指定的核,导致它不是正定的。

这是什么原因造成的,如何处理?

【问题讨论】:

  • 请发minimal reproducible example (您是自行回答的事实并不意味着它是可选的)。
  • 您好,感谢您的来信。我很乐意发布我的示例,但不幸的是,我无法分享我的数据集。它对我来说不规律地发生,我现在没有时间去搜索再次发生这种情况的公共数据集。我知道others ran into the same issue 带有上述软件包,并希望提供我的解决方案。

标签: r machine-learning optimization hyperparameters


【解决方案1】:

此错误似乎是在拟合 Gaussian process 时引起的,这是贝叶斯优化的基础。问题是使用指定内核生成的协方差矩阵不是正定的。我很想知道在哪些情况下会发生这种情况(我观察到这是在一组类似的参数连续测试几次之后发生的)。我可以通过从默认内核(指数)切换到 matern 来避免这个错误,这可以通过在贝叶斯优化调用中添加以下参数来完成:

kernel = list(type = "matern", nu = 5/2)

【讨论】:

    猜你喜欢
    • 2023-01-13
    • 2019-09-14
    • 1970-01-01
    • 1970-01-01
    • 2019-09-22
    • 1970-01-01
    • 2020-08-03
    • 2014-02-21
    • 2019-09-26
    相关资源
    最近更新 更多